RS485 Problem

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

RS485 Problem

 · 
Posted: 15.08.2018 - 09:55  ·  #1
Ich habe hier ein komisches Problem und kann es noch nicht eingrenzen, evtl. hat Jemand von euch eine Idee.

Ich habe eine RS485 Kommunikation die ohne Probleme läuft, ich hatte die ganze Zeit bei der Programmierung einen RS485 auf USB Adapter an dem Bus hängen, der einfach die Daten mitgelesen hat. Das läuft ohne Probleme.

Jetzt habe ich diesen USB-Adapter rausgenommen und es funktioniert nichts mehr. Die Kommunikation mit den Bus-Teilnehmern versagt und kommt nicht mehr in Gang, blöderweise sehe ich ohne diesen USB-Adapter auch nicht was auf dem Bus los ist.

Sobald ich aber den USB Adapter aufstecke funktioniert sofort wieder alles, er hängt dann nur am Bus, ich muß ihn nicht mal an den PC hängen ein einfaches anklemmen den beiden Drähten A/B reicht völlig aus.

Hat Jemand von euch schon mal sowas komisches erlebt oder hat eine Idee?

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

Re: RS485 Problem

 · 
Posted: 15.08.2018 - 10:20  ·  #2
Hab es rausgefunden, die Geräte brauchen zum sauberen Betrieb den FAILSAFE.

Ich wollte den Dipschalter beim letzten Design schon abändern und nur die beiden TERMs drauf lassen. Da angeblich der TI SN65HVD12 bereits intern einen FaiLSafe haben soll (lt. Datenblatt)

Hatte mir dann aber gedacht: "...egal ich lass es mal lieber drauf..."

Wie man jetzt gesehen hat, zum Glück :-)

Wahrscheinlich hat der USB Adapter die Leitungen direkt über einen Widerstand auf GND gezogen, deswegen ging es wohl mit diesen ohne Probleme.

Also am besten immer den Failsafe mit reinmachen, egal was das Datenblatt sagt ;-)

Thorsten
You must be logged in or your permissions are to low to see this Attachment(s).
Thomas.AC
Benutzer
Avatar
Gender: n/a
Age: 43
Posts: 308
Registered: 07 / 2013
Subject:

Re: RS485 Problem

 · 
Posted: 24.08.2018 - 19:47  ·  #3
Etwas mehr Info für alle Interessierten.
Quote
Da angeblich der TI SN65HVD12 bereits intern einen FaiLSafe haben soll (lt. Datenblatt)

Die Dinger haben keine failsafe Widerstände, sondern interpretieren bereits ein Differenzsignal von OV als logisch "1".
Der Standard verlangt, dass erst ein positives Differenzsignal von 200mV als "1" zu erkennen ist.

Wenn alle Busteilnehmer den SN65HVD12 verwenden, dann müsste die Kommunikation auch ohne failsafe Widerstände klappen.

Deine failsafe Widerstände von 3k3 sind übrigens zu schwach um sicher 200mV zu erzeugen.

Alternativ kann man vor dem Senden die DE (drive enable) Leitung für die Dauer von mindestens einem Byte aktivieren oder jedes Datentelegramm mit Dummy Bytes beginnen. Aber das ist natürlich alles mehr Aufwand im Busprotokoll.
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: RS485 Problem

 · 
Posted: 25.08.2018 - 12:48  ·  #4
Quote by Thomas.AC

Etwas mehr Info für alle Interessierten.
Quote
Da angeblich der TI SN65HVD12 bereits intern einen FaiLSafe haben soll (lt. Datenblatt)

Die Dinger haben keine failsafe Widerstände, sondern interpretieren bereits ein Differenzsignal von OV als logisch "1".
Der Standard verlangt, dass erst ein positives Differenzsignal von 200mV als "1" zu erkennen ist.

Wenn alle Busteilnehmer den SN65HVD12 verwenden, dann müsste die Kommunikation auch ohne failsafe Widerstände klappen.

Hallo Thomas,
ok dann habe ich das wohl falsch bei dem Datenblättern und AppNotes verstanden.

Quote by Thomas.AC

Deine failsafe Widerstände von 3k3 sind übrigens zu schwach um sicher 200mV zu erzeugen.

Alternativ kann man vor dem Senden die DE (drive enable) Leitung für die Dauer von mindestens einem Byte aktivieren oder jedes Datentelegramm mit Dummy Bytes beginnen. Aber das ist natürlich alles mehr Aufwand im Busprotokoll.


hmm in vielen der App-Notes von TI wird von einer Leitungs Impd./Widerstand von 27,8 Ohm ausgegangen. Die rechnen dann so:

Code
3,3V – 5% Toler. = 3,135V
VAB = VIT + V Noise =  200mV + 50mV noise = 250mV = 0,25V
            3,135 V
RFS = ( ------------- + 1 )  x 27,8 Ohm =  376 Ohm Bei der Annahme von 27,8 Ohm für die Leitung
              0,25 V


Ich gehe aus der Erfahrung in der Vergangenheit aber nicht mit 27,8 Ohm für Leitung ins Rennen, meiner Erfahrung nach im Feld, ist dieser Wert deutlich zu niedrig. Ich habe viele Probleme im Feld mit diesen niedrigen Werten gehabt. Erst als ich über 2,2 – 3,5 kOhm gekommen bin, haben die Probleme auf vielen der Leitungen aufgehört.

Ich gehe da von folgender Rechnung aus:

Code
            3,135 V
RFS = ( ------------- + 1 )  x 240 Ohm =  3249,6 Ohm gew. 3300 Ohm
              0,25 V


Gruß
Thorsten
Thomas.AC
Benutzer
Avatar
Gender: n/a
Age: 43
Posts: 308
Registered: 07 / 2013
Subject:

Re: RS485 Problem

 · 
Posted: 02.09.2018 - 10:21  ·  #5
Danke für deine ausführliche Antwort. Letztlich müssen irgendwie mindestens 200 mV beim Empfänger vorhanden sein. Und das scheint bei deinen Netzen auch der Fall zu sein. Also, alles richtig gemacht.
Gruß
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: 15 · Cache Hits: 14   96   110 · Page-Gen-Time: 0.020686s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI