RS485 Terminierung

pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

RS485 Terminierung

 · 
Posted: 24.11.2012 - 14:55  ·  #1
Hallo Leute,

ich bin da auf ein merkwürdiges Problem gestoßen.

Ich habe eine Leiterplatte erstellt, die bei einer RS485 Verbindung ohne Modbus scheinbar fehlerlos läuft, auch mit meinem Abschlusswiderstand von 120R. Aber sobald ich genau an den selben Board eben das ganze mit dem Modbus RTU/ASCII laufen lasse, bekomme ich nur noch Müll über meine Schnittstelle! Aber nur so lange ich den 120R Abschlusswiderstand einschalte, nehme ich diesen raus, läuft alles? Anbei mal einen Auschnitt aus dem Layout, hat Jemand eine Idee woran das liegen könnte? Eigentlich müsste es bei einem Problem doch dann immer auftreten oder?

Gruß
Thorsten
Attachments
EingangsLayout
Filename: EingangRS485.jpg
Filesize: 312.01 KB
Title: EingangsLayout
Information: EingangsLayout
Download counter: 103
SchaltungRS485
Filename: SchaltRS485.jpg
Filesize: 76.14 KB
Title: SchaltungRS485
Download counter: 118
Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 307
Registered: 07 / 2003
Subject:

Re: RS485 Terminierung

 · 
Posted: 25.11.2012 - 14:49  ·  #2
Hallo Thorsten,

da hast du recht, das Problem müßte eigentlich immer auftreten.

Was sagt Dein Oszi?
Bei welche Baudrate?
Wird's bei Baudratenverringerung besser?

http://users.skynet.be/DCI_Site/tekening/figuur2.gif
Hast Du auch Pull-up und Pull-down Widerstände (R1, R3) vorgesehen?

Gruß
Mathias
Avra
Schreiberling
Avatar
Gender:
Location: Belgrade, Serbia
Age: 53
Homepage: rs.linkedin.com/in…
Posts: 653
Registered: 07 / 2002
Subject:

Re: RS485 Terminierung

 · 
Posted: 25.11.2012 - 20:46  ·  #3
Read whole section 3.3 Electrical Interfaces and compare your setup with it. Are only your master and last node properly terminated? What is the total cable length? Did you use proper cable or ethernet cable (read my comment here)? Have you checked your grounding? Have you checked pull-up/pull-down as Mathias has already said?

I am not sure I understood everything but this reminds me of commissioning one factory in 2001 when we had a similar problem. We have checked everything by the book, and it simply didn't work. Then we tried without resistor termination on one end and everything was working well. During the following week we have tried to fix it, but couldn't make a single step of progress. We suspected bad grounding, but it was part of other company's work and they refused to check it. At the end we had to finish our work and we passed final acceptance test without terminating resistor. It was working like that since 2001 without problems (maybe because it was running at just 9600bps). I will also mention that it was some IPC32 ASCII RS485 protocol and not MODBUS (although similar to it). I am not advocating this as a solution, but just as a last resort if you run out of all other options.
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: RS485 Terminierung

 · 
Posted: 10.12.2012 - 10:30  ·  #4
Quote by Mathias

Hallo Thorsten,

da hast du recht, das Problem müßte eigentlich immer auftreten.

Was sagt Dein Oszi?
Bei welche Baudrate?
Wird's bei Baudratenverringerung besser?

http://users.skynet.be/DCI_Site/tekening/figuur2.gif
Hast Du auch Pull-up und Pull-down Widerstände (R1, R3) vorgesehen?

Gruß
Mathias


Hallo,

der Fehler tritt bei 30cm bis 500m auf, GND wird als SignalGND mitgeführt.

Failsafe (PullUp/PullDown) wird nicht benötigt (MAX 487CSA+), da immer
ein Masterbaustein die Leitung treibt.

Das Oszi-Bild sieht absolut ok aus, Signalspannung liegt bei 4V bei Terminierung geht diese um 0,5v runter, aber solange diese über 2V ist sollte das Signal ok sein.
Die Pegel sehen absolut ok aus, es geht nur der Ausschlag um 0,5V runter, der Rest bleibt identisch. Keine ungewöhnlichen PEAKs oder sonst was.

Getestet habe ich 9600, 19200 und 57600 bei 8/n/1, überall das selbe.

Ich werde das ganze Heute Abend mal etwas erweitern:
Ich hänge einen USART RS485 Analyser an die Leitungen und lasse die Telegramme mal mitschreiben, weiterhin werde ich mal eine andere Schnittstelle verwenden, im Moment nutze ich das FTDI-USB auf RS485-Kabel, nicht das da irgendwo Mist passiert.

@AVRA;
Can i Debug the Telegramm-Buffer from the Modbus-Driver, so i can write the Input- and the Output-Telegramm to the other Ser-Port?

Gruss
Thorsten
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: RS485 Terminierung

 · 
Posted: 11.12.2012 - 00:05  ·  #5
Hallo Leute :)
Quote by pvs-deck

Ich werde das ganze Heute Abend mal etwas erweitern:
Ich hänge einen USART RS485 Analyser an die Leitungen und lasse die Telegramme mal mitschreiben, weiterhin werde ich mal eine andere Schnittstelle verwenden, im Moment nutze ich das FTDI-USB auf RS485-Kabel, nicht das da irgendwo Mist passiert.

Oh Mann was für eine Zeitverschwendung!
Es läuft, so wie es schon die ganze Zeit hätte laufen müssen!

Ich habe Heute Abend zum testen ein "ProFace GP2300-Touchpanel" mit der RS485 Schnittstelle direkt mit meiner Steuerung verbunden, das Touch läuft als ModBus-Master, es lief sofort ohne auch nur einen Fehler / CRC-Fehler!! :love:

Danach habe ich einen meiner (RICHTIGEN) RS232-Ports frei gemacht und über einen RS232/485-Wandler (Expert EX9520) angeschlossen und was soll ich sagen! Es läuft sofort, mit und ohne Terminierung, bei 9600-57600 Baud getestet.

Das glaubt mir keiner...........ich habe ich die ganze Zeit von FTDI das USB-RS485-WE Kabel genutzt. Das lief auf meinem Windows XP auch die ganze Zeit ohne Probleme mit und ohne Terminierung.
Seit einigen Monaten habe ich ein Windows 7 64bit System, mit dem ich arbeite. Ich denke das hat was damit zu tun. Auf jedenfall kommt immer wieder Müll in den Rechner von der Steuerung, evtl. ist es der Treiber, oder irgendwas mit der Hardware. Und es tritt nur bei Modbus und mit Terminierung auf.

Also Leute wundert euch nicht und spart euch die Zeit, das FTDI-Kabel ist eine günstige Lösung, aber Finger weg von der Terminierung, dieses abschwächen von 0,5V scheint hier für Probleme zu sorgen.

Trotzdem vielen Dank für die Hilfen :)

Gruss
Thorsten
Avra
Schreiberling
Avatar
Gender:
Location: Belgrade, Serbia
Age: 53
Homepage: rs.linkedin.com/in…
Posts: 653
Registered: 07 / 2002
Subject:

Re: RS485 Terminierung

 · 
Posted: 14.12.2012 - 13:43  ·  #6
Hello Thorsten,

I am glad that you have found the problem to be with some Win7/64 + FTDI combination. Strange but good to note for the future. Thanks for sharing!
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 16 · Cache Hits: 15   105   120 · Page-Gen-Time: 0.035283s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI