Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

RS485 seriële communicatie, beste instellingen

Pagina: 1
Acties:

Vraag


  • ericplan
  • Registratie: Mei 2006
  • Laatst online: 07:58

ericplan

5180 Wp PV

Topicstarter
Mijn vraag
Wat zijn de beste instellingen voor seriële communicatie op een korte lijn (< 0,8 meter) met een RS484 <-> USB dongle en 4 Finder Modbus kWh-meters.
Op dit moment staat het ingesteld op
Baudrate: 19200
Bit: 8
Stopbit: 1
Parity: Even

De verbinding werkt soms wel, soms niet. Vaak wel als ik maar 1 kWh-meter poll, zeker niet als ik ze in Node Red tegelijk poll. De meters hebben elk een eigen uniek ID

Aan beide kanten kan ik alle instellingen wijzigen, deze instellingen komen uit een tijd dat ik dat niet kon bij één device.

Relevante software en hardware die ik gebruik
Node Red op een Odroid C4 met Ubuntu 20.04. Alle software is up to date.
...

Wat ik al gevonden of geprobeerd heb
Gespeeld met diverse setting in Node Red wat betreft Time Out en Queue delay, maar ik weet niet goed wat ik aan het doen ben.

Doel is om met één inject enkele registers in de vier kWh-meters uit te lezen.

A'dam PVOutput

Alle reacties


  • NESFreak
  • Registratie: December 2009
  • Laatst online: 21-11 16:20
Zijn je pullups / is je terminatie in orde?

  • jeroen3
  • Registratie: Mei 2010
  • Laatst online: 23:25
Er valt weinig in te stellen. Je kunt de snelheid veranderen, that's about it.

Wat belangrijker is zijn je afsluitweerstanden. Zitten die juist?

  • SimplyMe
  • Registratie: Maart 2001
  • Laatst online: 16-09 08:31

SimplyMe

Geestelijk Prettig Labiel

Instellingen moeten natuurlijk op elk device het zelfde staan ingesteld.

Daarnaast moet je denk ik goed kijken of je 2 of 4-draads RS485 gebruikt.
Daarnaast is het inderdaad van belangrijk dat je de juiste afsluitweerstanden gebruikt.

Verder kan je niet in 1 call alle 4 je devices tegelijkertijd uitlezen.
Je zal eerst device 1 moeten afvragen en daar op het antwoord wachten, dan device 2 enzo.


[Toevoeging]
Wikipedia: RS-485

Hier staat wat leuke info mbt de weerstanden.

Daarnaast is het lezen van de documentatie van de leverancier van je modbus device ook wel van belang.
En vergis je niet MB-Bus en ModBus zijn niet het zelfde.


Toevoeging 2.
Als je de beschiking heb over een windows omgeving zou je wellicht een modbus master kunnen gebruiken en eens kijken of het aan je software ligt van je linux omgeving.

https://sourceforge.net/projects/modrssim2/

[ Voor 41% gewijzigd door SimplyMe op 09-06-2022 14:24 . Reden: [Toevoeging] ]


  • ericplan
  • Registratie: Mei 2006
  • Laatst online: 07:58

ericplan

5180 Wp PV

Topicstarter
@Allen

Dank voor de antwoorden zover.
Het gaat om tweedraads RS485. Geprobeerd met en zonder afsluitweerstanden, maar het resultaat is min of meer gelijk. Soms werkt het, soms niet.

@SimplyMe Alle devices hebben dezelfde instelling. Als het goed is zorgt Node Red voor de queuing en kan je met 1 opdracht meerdere devices tegelijk pollen.

De default instelling van de meters was 19200, 8,N,2. Zou het helpen om op alle devices, ook de RS485 USB-stick, de parity op N te zetten en het aantal stopbits op 2?

Heeft het verlagen van de snelheid zin, ook al zijn alle devices geschikt voor 19200?

A'dam PVOutput


  • NESFreak
  • Registratie: December 2009
  • Laatst online: 21-11 16:20
  • Snelheid verlagen kan zeker helpen.
  • Parity moet zowel op de master als slaves op het zelfde staan. Op alle apparaten moet (m.u.v. het adres) de configuratie exact gelijk zijn. Parity voegt trouwens een extra bit toe waar het mis kan gaan met bijvoorbeeld framing. Modbus pakketten hebben een crc die al gecheckt word.
  • mogelijk hebben de slaves die extra stopbit nodig om het uart interrupt te verwerken?
  • modbus gebruikt timeouts om framing te doen. Kijk of je wat extra vertraging in de instellingen van je master kunt toevoegen.
  • Probeer communicatie met de hand vanaf een andere pc met een tool zoals hierboven al gezegd, of (welke ik zelf gebruik) qmodmaster.
  • Als je een oscilloscoop hebt, probeer dan te kijken wat er op de bus gebeurt

[ Voor 17% gewijzigd door NESFreak op 10-06-2022 11:33 ]


  • W.Wonderland
  • Registratie: Maart 2006
  • Laatst online: 18-11 18:51
Ik weet niet welk type Finder Modbus meters dit zijn maar er zijn Finder en Iskra meters welke "minder goed" ontworpen zijn. Met "minder goed" bedoel ik dat bij het terugsturen van de data de bits een fixed tijd actief (onafhankelijk van baudrate) aangestuurd worden en niet constant afhankelijk van de baudrate.
Finder en Iskra zijn op de hoogte (ontwerpkeuze) en geven aan dat er 10-duizenden verkocht zijn en het bijna altijd voldoet.
Als je een DSO (scoop) hebt kan je het direct aan de datalijnen zien.
Het is dus mogelijk dat de USB dongle in ontvangst stand de (foutieve) signaal niveaus van de kWh meter net niet goed interpreteert.
Als dit het probleem is kan je het volgende doen:
1) Plaatsen van de afsluitweerstanden aan beide uiteinden van de string.
2) De baudrate VERHOGEN!, de fixed aanstuurtijd van de bits zorgt juist bij de lage baudrates ervoor dat een klein gedeelte aangestuurd wordt. Als je naar 57600 of 115200 gaat zou het direct kunnen werken.
3) RS485 stick wijzigen (er zijn devices waarbij je "preload" kan inschakelen (pullup/pulldown op A/B lijn)

Uiteraard moeten de settings van alle devices gelijk zijn (op adres na). (default: 1-start, 8-data, 1-even parity, 1-stop)

  • SimplyMe
  • Registratie: Maart 2001
  • Laatst online: 16-09 08:31

SimplyMe

Geestelijk Prettig Labiel

Wat misschien ook kan zijn is dat er 1 device tussen zit die een issue geeft.

Lukt het met 1 device wel?
Lukt het met alle 4 devices afzonderlijk?

Anders met 1 beginnen en dan elke keer 1 device toe voegen en kijken wanneer het fout gaat.


Over de afsluitweerstanden.
Deze hoeven alleen aan het begin en einde van de bus.
Dus niet elk device.

Stel je master is de eerste op de bus ( is vaak zo) dan zitten daar de afsluit weerstanden.
Verder is pas device 4 (als dit de laatste is) waar ook weerstanden moeten komen.

  • NESFreak
  • Registratie: December 2009
  • Laatst online: 21-11 16:20
W.Wonderland schreef op donderdag 9 juni 2022 @ 21:20:

2) De baudrate VERHOGEN!, de fixed aanstuurtijd van de bits zorgt juist bij de lage baudrates ervoor dat een klein gedeelte aangestuurd wordt. Als je naar 57600 of 115200 gaat zou het direct kunnen werken.
Oh wow, dat moet je ook maar net weten. Klinkt als een mislukt 'automatic direction control' circuit. Ik vertrouwde drivers die dat claimen te kunnen al niet.

  • aawe mwan
  • Registratie: December 2002
  • Nu online

aawe mwan

Wat ook leuk is:

Weet je zeker dat je 8 databits gebruikt in combinatie met een paritybit?

Meer algemeen gebruikt men 8 databits zonder (=None) parity of 7 databits met (=Even/Oneven) parity.

[ Voor 3% gewijzigd door aawe mwan op 10-06-2022 07:49 ]

„Ik kan ook ICT, want heel moeilijk is dit niet”


  • ramonlambal
  • Registratie: November 2007
  • Laatst online: 12-11 17:15
Voor korte afstanden idd hoge baudrates gebruiken. Ik gebruik super veel rs485/modbus op het werk, en gebruik eigenlijk altijd 115200, met N, 8,1, dat word door de meeste apparatuur ondersteund.
Wél netjes je kabel gedaisychained?
Als het dan allemaal nog niet niet fatsoenlijk werkt zou ik naar een betere usb converter kijken, bijv eentje die kan quen enzo. Goedkope controllers geven bij mij altijd gezeik

  • ericplan
  • Registratie: Mei 2006
  • Laatst online: 07:58

ericplan

5180 Wp PV

Topicstarter
@allen
Dank voor de reacties. Uiteraard alles nog een keer gecontroleerd en ik denk dat de foutmeldingen zijn opgelost door in Node Red de instellingen voor de Device Node op RTU-BUFFERD te zetten. Het stond op RTU. Ik krijg geen foutmeldingen meer, niet bij een single device, niet bij meerdere devices. Ook geen problemen met elke 5 secondes de vier devices pollen.

Helaas zijn deze instellingen niet erg goed gedocumenteerd. Het gaat, als ik goed begrijp, met deze instellingen om een serial buffered line. Maar wat ik dus niet weet of ik werkelijk het probleem heb opgelost, of dat ik er alleen geen last meer van heb. (een regenjas helpt wel tegen de regen, maar zorgt niet dat het droog wordt)

De reacties van jullie geven een mooie checklist wat je allemaal kan/moet nalopen bij een rammelende RS485.

@W.Wonderland Het gaat hier om meters uit de Finder 7M-reeks. Drie stuks 1-fase en 1 3-fase kWh-meter. Helaas geen scoop ter beschikking, hoewel die tegenwoordig, tot m'n verbazing, zeer betaalbaar zijn.

@ramonlambal Suggesties voor een goed merk usb<->rs485 stick? Heb nu drie verschillende, met wisselend resultaat.

A'dam PVOutput


  • ramonlambal
  • Registratie: November 2007
  • Laatst online: 12-11 17:15
Ik gebruik het professioneel dus probeer zoveel mogelijk van usb weg te blijven,sorry. Buffering is zeker iets wat zou kunnen helpen, dit doen de betere hardware rs485 kaarten ook, dus als je probleem nu is opgelost, prima toch?
Pagina: 1