Hallo Zusammen, zuerst einmal: 1) Ich bin leider keine Elektrofachkraft - vielleicht wäre dann diese Frage nicht notwendig 2) Ich habe viel gegooglet und auch hier im Forum gelesen 3) und Youtube-Videos zu RS485 geschaut Trotzdem habe ich leider keine Antwort auf eine grundlegende RS485 Verständnisfrage gefunden: Wann kommt woher Spannung auf den Bus? Erstmal die eine Frage: Von Woher kommt Spannung auf den Bus? Gibt es nur eine einzelne Spannungsquelle auf dem Bus (dann wahrscheinlich der Master) oder mehrere (dann alle Busteilnehmer)? Und dann noch die wichtigere Frage: Wann "kommt" Spannung auf den Bus? Ist dauerhaft Spannung auf dem Bus, oder nur, wenn Kommunikation stattfindet? Ich hoffe, die Fragen sind verständlich. Schonmal danke für eure Antworten! Viele Grüße Philipp
Philipp schrieb: > nur eine einzelne Spannungsquelle auf dem Bus (dann wahrscheinlich der > Master) oder mehrere (dann alle Busteilnehmer)? Jeder Teilnehmer muss die Spannung auf dem Bus zum Kommunizieren verändern können. Alle Slaves hören zu, der Master spricht einen Slave an, geht auf zuhören und der angesprochene Slave antwortet durch Änderung der Spannungsdifferenz zwischen A und B. Philipp schrieb: > Wann "kommt" Spannung auf den Bus? > Ist dauerhaft Spannung auf dem Bus, oder nur, wenn Kommunikation > stattfindet? Gegen Masse ist dauerhaft eine Spannung auf dem Bus durch Bias-Widerstände in jedem Slave. Wenn Kommunikation stattfindet, wird diese Spannung von dem "sprechenden" Gerät verändert.
Sebastian R. schrieb: > egen Masse ist dauerhaft eine Spannung auf dem Bus durch > Bias-Widerstände in jedem Slave. Bild dazu: - https://en.wikipedia.org/wiki/RS-485
Philipp schrieb: > Hallo Zusammen, > > zuerst einmal: > 1) Ich bin leider keine Elektrofachkraft - vielleicht wäre dann diese > Frage nicht notwendig Normalerweise kann eine Elektrofachkraft gerade so, an einem guten Tag, einen Lichtschalter anschließen. Natürlich werden alle Kabel zu kurz abgeschnitten und alles mit dem Hammerstil in die Dose gehämmert. Aber die Lampe leuchtet ab und zu. Von diesem Thema hier verstehen die sicher nichts.
:
Bearbeitet durch User
Hallo Sebastian, danke für deine Antwort! Sebastian R. schrieb: > Jeder Teilnehmer muss die Spannung auf dem Bus zum Kommunizieren > verändern können. Alle Slaves hören zu, der Master spricht einen Slave > an, geht auf zuhören und der angesprochene Slave antwortet durch > Änderung der Spannungsdifferenz zwischen A und B. Das Grundlegende Schema, wie Master und Slaves über den Bus kommuniziert wird, ist mir soweit bekannt. Aus deiner Antwort entnehme ich, dass die Busteilnehmer selbst keine Spannung auf den Bus geben, sondern die Spannung von einer externen Quelle kommt und die Busteilnehmer diese Spannung lediglich ändern? Hintergrund der Frage ist, dass ich ein Endgerät habe, das partout nicht Modbus mit mir sprechen will - ich habs mit mehreren Mastern versucht. Zwischen A und B liegen an diesem Endgerät 3,3V an. Das hat mich stutzig gemacht, deswegen will ich nun die physische Ebene der Kommunikation besser verstehen. Sebastian R. schrieb: > Gegen Masse ist dauerhaft eine Spannung auf dem Bus durch > Bias-Widerstände in jedem Slave. Mal wieder eine "Nicht-Elektriker" Frage dazu: Du sprichst von einer Spannung gegen die Masse. Ist denn auf dem eigentlichen Bus (A und B) dauerhaft eine Spannung, oder nur wenn kommuniziert wird? Danke & Grüße Philipp
Philipp schrieb: > Erstmal die eine Frage: Von Woher kommt Spannung auf den Bus? Vom gerade sendenden Teilnehmer. Philipp schrieb: > Ist dauerhaft Spannung auf dem Bus, oder nur, wenn Kommunikation > stattfindet? Ein vernünftiger RS485-Bus hat Bias-Widerstände, die dafür sorgen, dass ein sauberer Ruhepegel (i.d.R. High) da ist, wenn niemand sendet. Der Bus ist nicht dafür gedacht, die Teilnehmer zu versorgen, das musst Du anderweitig lösen, z.B. mit einem 4adrigen Kabel für RS485-A/B, GND und Versorgungsspannung. Sebastian R. schrieb: > Gegen Masse ist dauerhaft eine Spannung auf dem Bus durch > Bias-Widerstände in jedem Slave. Die Bias-Widerstände sollten tunlichst nur bei einem Busteilnehmer (idealerweise dem Master) vorhanden sein, weil man sonst mit jedem weiteren Teilnehmer immer mehr die Ausgangstreiber quält, bis gar nichts mehr geht. Ein brauchbarer Wert für einen 5V-Bus mit beidseitiger 120-Ohm-Terminierung ist 680 Ohm.
Philipp schrieb: > Wann kommt woher Spannung auf den Bus? Immer vom Sender. Philipp schrieb: > Wann "kommt" Spannung auf den Bus? Nur wenn jemand sendet. > Ist dauerhaft Spannung auf dem Bus, > oder nur, wenn Kommunikation stattfindet? Sebastian R. schrieb: > Gegen Masse ist dauerhaft eine Spannung auf dem Bus durch > Bias-Widerstände in jedem Slave. Ja, der Ruhepegel, nicht mal unbedingt ein Stopbit sondern oft 'illegal'. Man braucht ihn auf jeden Fall wenn keine dritte Leitung Masse verbindet.
Hallo, danke für die Antworten! Ich fasse zur Kontrolle nochmal mein bisheriges Verständnis zusammen: - Es gibt nicht eine einzelne Spannungsquelle für den Bus, sondern jeder Busteilnehmer "gibt" die Spannung auf den Bus - Das tun die Teilnehmer nur, wenn sie senden - Das würde für mich auch bedeuten, dass, wenn der Bus offen ist bzw. ein Teilnehmer noch gar nicht verdrahtet ist, keine Spannung an diesem Teilnehmer zwischen A und B messbar sein sollte? (Siehe meine Beobachtung mit den dauerhaften 3,3V an dem Endgerät, bei dem ich Kommunikationsprobleme habe). Michael B. schrieb: > Ja, der Ruhepegel, nicht mal unbedingt ein Stopbit sondern oft > 'illegal'. Man braucht ihn auf jeden Fall wenn keine dritte Leitung > Masse verbindet. Ich habe bisher immer nur mit 2-Draht gearbeitet. Hier wirds für mich nochmal spannend - zum Ruhepegel finde ich beim recherchieren wenig brauchbares. Dieser Ruhepegel ist keine Spannung zwischen A und B (würde ja den Feststellungen oben widersprechen)? So wie ich das aus einem ABB Handbuch verstehe, geht es da wieder um die Bias-Widerstände. Ich bastle keinen Controller zusammen sondern verwende einen "fertigen" Modbus-Master, wo diese Funktionalität ja bereits verbaut sein sollte. Nochmals danke für euren Input, eure Antworten haben mir schon viel geholfen! Es wundert mich immer noch, dass ich bei meiner bisherigen Recherche keine Antwort auf die scheinbar einfache Frage "wann kommt von wo Spannung auf den Bus" gefunden habe... Viele Grüße Philipp
:
Bearbeitet durch User
Philipp schrieb: > Nochmals danke für euren Input, eure Antworten haben mir schon viel > geholfen! Es wundert mich immer noch, dass ich bei meiner bisherigen > Recherche keine Antwort auf die scheinbar einfache Frage "wann kommt von > wo Spannung auf den Bus" gefunden habe... warscheinlich weil die KI noch nicht gelernt hat das umzusetzen in "welche Signalpegel liegen bei RS485 auf dem Bus".
Philipp schrieb: > Es wundert mich immer noch, dass ich bei meiner bisherigen Recherche > keine Antwort auf die scheinbar einfache Frage "wann kommt von wo > Spannung auf den Bus" gefunden habe Weil der ganze Rest der Welt weiss, dass ein Punkt immer eine Spannung (die wird nämlich gegenüber einem anderen Punkt gemessen) hat, auch eine Wolke gegenüber der Erde. Die Frage ist eher, wie belastbar die Spannung ist. So eine elektrostatische Spannung auf einer Plastikoberfläche halt eher wenig. Ein Starkstromkabel eher mehr. Und wenn ein Starkstromkabel an beiden Enden nicht angeschlossen ist liegt jeder Leiter trotzdem auf einer Spannung z.B. gegenüber Erde aber es wird kein Strom fliessen wenn man ihn verbindet, z.B. erdet sondern die Spannungsdifferenz zwischen beiden wird schnellstens zusammenbrechen. Es gibt kein Kabel 'ohne Spannung', es gibt nur eine Spannungsdifferenz von 0 zwischen 2 Leitern, und da Bias-Widerstände bei RS485 oft gehen Masse der angeschlossenen Geräte gehen, ist die Differenz wenn keiner sendet oft 0 und liegt damit im illegalen Bereich. Erst wenn einer sendet wird von ihm eine positive bzw. negative Differenzspannung aufgelegt.
> Es wundert mich immer noch, dass ich bei meiner bisherigen > Recherche keine Antwort auf die scheinbar einfache Frage "wann kommt von > wo Spannung auf den Bus" gefunden habe... Na ja, du hast u. a. bei Youtube recherchiert, wie du sagst. IMHO ist das eine Informationsquelle der Art, wie sie Hauisfrauen nutzen, wenn sie Tipps für Hefeteig suchen. SCNR. In Wikipedia siehst du Bilder der Transmitter und eine Tabelle mit den Buszuständen. Außerdem wird gesagt, dass die Amplitude der Transmitter knapp unter der Betriebsspannung liegt. Alle diese Informationen zusammengenommen erlauben nur einen Schluss: Solange Spannung da ist, kommt sie (wenn alles in Ordnung ist) in jedem Moment immer von einem einzigen Transmitter. Solange dieser eine Transmitter seinen Ausgang nicht freiwillig hochohmig schaltet und dies allen anderen vorher mitteilt, darf kein anderer Spannung auf den Bus geben. Gut, der WP-Autor hätte das explizit sagen können. Aber eigentlich ist es ja nach seiner Beschreibung klar.
Beitrag #7541206 wurde vom Autor gelöscht.
Michael B. schrieb: > Ja, der Ruhepegel, nicht mal unbedingt ein Stopbit sondern oft > 'illegal'. Was für ein Schwachsinn. Ein Stopbit bezeichnet ein Zeitfenster nach der Übertragung der Daten. Hier geht es um den Ruhepegel, der logisch dem Pegel während des Stopbits entspricht. Der Ruhepegel muss innerhalb der Spezifikation liegen. Was ist daran illegal?
Philipp schrieb: > Das würde für mich auch bedeuten, dass, wenn der Bus offen ist bzw. ein > Teilnehmer noch gar nicht verdrahtet ist, keine Spannung an diesem > Teilnehmer zwischen A und B messbar sein sollte? Kommt darauf an. Wenn Bias-Widerstände vorhanden sind, sorgen die wie gesagt für den Ruhepegel. Philipp schrieb: > Dieser Ruhepegel ist keine Spannung zwischen A und B (würde ja den > Feststellungen oben widersprechen)? Dir fehlen wirklich massiv Grundlagen. Die Bias-Widerstände ziehen A auf High-Pegel (meistens 5V) und B auf Low-Pegel (GND), was natürlich zu einer entsprechenden Differenz zwischen A und B führt. Diese Differenz fällt aber bei einem sauber terminierten Bus geringer aus, weil Bias- und Terminierungswiderstände einen Spannungsteiler bilden. Der Standard schreibt mindestens 200mV vor. Philipp schrieb: > Ich bastle keinen Controller zusammen sondern verwende einen "fertigen" > Modbus-Master, wo diese Funktionalität ja bereits verbaut sein sollte. Mit einem Oszilloskop und einem Logic Analyzer sollte man das Problem eingrenzen können, aber ich glaube, dafür brauchst Du jemanden vor Ort, der sich damit auskennt.
Rainer W. schrieb: > Michael B. schrieb: >> Ja, der Ruhepegel, nicht mal unbedingt ein Stopbit sondern oft >> 'illegal'. > > Was für ein Schwachsinn. Ein Stopbit bezeichnet ein Zeitfenster nach der > Übertragung der Daten. > Hier geht es um den Ruhepegel, der logisch dem Pegel während des > Stopbits entspricht. > Der Ruhepegel muss innerhalb der Spezifikation liegen. Was ist daran > illegal? Gehirn zu Hause vergessen ? Einfach mal rumstänkern wollen ohne Sachverstand ? Illegal ist ein Pegel, wenn er weder der logischen 1 noch der logischen 0 zugeordnet ist. Und RS485 definiert eine Differenz >0.2V als 1 und eine <-0.2V als 0. Liegt die Spannung beider Leitung weniger auseinander, z.B. 0V, ist das ein illegaler Zustand. Klug wäre, die Leitung durch die Bias Widerstände nicht auf den Wert des Startbits, sondern den Wert des Stopbits zu legen, damit eine neginnende Kommunikation unmittelbar synchronisiert. Bei zumindest 55 Ohm sind dafür aber 3.7mA oder 645 Ohm an 5V und GND nötig. Die üblichen bias-Widerstände sind viel grösser, 4k7 oder 10k, so dass nicht mal die Parallelschaltung aller dafür reicht. Sie dienen nur der Übermittlung eines Potentialbezugs bei nicht-vorhandener GND Verbindung und gehen meist bei A und B an GND.
Michael B. schrieb: > Und RS485 definiert eine Differenz >0.2V als 1 und eine <-0.2V als 0. > Liegt die Spannung beider Leitung weniger auseinander, z.B. 0V, ist das > ein illegaler Zustand. Eben - das Bias-Netzwerk wurde genau erfunden, um einen definierten Zustand sicherzustellen, auch wenn gerade niemand auf den Bus sendet.
Rainer W. schrieb: > Eben - das Bias-Netzwerk wurde genau erfunden, um einen definierten > Zustand sicherzustellen, auch wenn gerade niemand auf den Bus sendet. DAS TUT ES ABER NICHT . Offenkundig bist du trotz 3-maliger Wiederholung inkl. Zahlen recht begriffsstutzig..
:
Bearbeitet durch User
Michael B. schrieb: > Rainer W. schrieb: >> Eben - das Bias-Netzwerk wurde genau erfunden, um einen definierten >> Zustand sicherzustellen, auch wenn gerade niemand auf den Bus sendet. > > DAS TUT ES ABER NICHT . Wenn man es vermurkst, natürlich nicht. Michael B. schrieb: > Die üblichen bias-Widerstände sind viel grösser, 4k7 oder 10k Das mag vielleicht auf irgendwelchen Chinamodulen üblich sein, die bei Leuten mit ein paar cm Buslänge und daher ohne Terminierung auf dem Schreibtisch betrieben werden. Wenn man einen ernsthaften Bus betreiben will, muss man es schon richtig machen: Hmmm schrieb: > Ein brauchbarer Wert für einen 5V-Bus mit beidseitiger > 120-Ohm-Terminierung ist 680 Ohm.
Hmmm schrieb: > Wenn man einen ernsthaften Bus betreiben will, muss man es schon richtig > machen: > > Hmmm schrieb: >> Ein brauchbarer Wert für einen 5V-Bus mit beidseitiger >> 120-Ohm-Terminierung ist 680 Ohm. Oder bei Wikipedia: https://de.wikipedia.org/wiki/EIA-485#/media/Datei:Rs485-bias-termination.svg
Michael B. schrieb: > DAS TUT ES ABER NICHT . Dietrich L. schrieb: > Oder bei Wikipedia: > https://de.wikipedia.org/wiki/EIA-485#/media/Datei:Rs485-bias-termination.svg Was tut es nicht? Wenn man das Netzwerk an 5V anschließt, entsteht zwischen A und B eine Potentialdifferenz von über 400mV. Michael B. schrieb: > Klug wäre, die Leitung durch die Bias Widerstände nicht auf den Wert des > Startbits, sondern den Wert des Stopbits zu legen, damit eine neginnende > Kommunikation unmittelbar synchronisiert. Sehr kluge Idee. So macht man das gewöhnlich. Nur Leute die nicht verstanden haben, dass es bei RS485 mit den Signalzuordnungen "A" und "B" munter durcheinander geht, kommen auf die Idee, den Bus auf Startbit-Pegel vorzuspannen.
:
Bearbeitet durch User
Rainer W. schrieb: > Wenn man das Netzwerk an 5V anschließt, entsteht zwischen A und B eine > Potentialdifferenz von über 400mV. Nicht ganz, es sind gut 200mV, am anderen Ende sollte ja ebenfalls ein Abschlusswiderstand sitzen.
Für 24V findest du hier einen Schaltplan, wie ein aktiver Terminator funktioniert: https://www.ramser-elektro.at/shop/hydrothyr-5-und-zubehoer/aktiver-modbus-abschlusswiderstand-modbus-bias-modul/
Fred R. schrieb: > Für 24V findest du hier einen Schaltplan, wie ein aktiver Terminator > funktioniert: > https://www.ramser-elektro.at/shop/hydrothyr-5-und-zubehoer/aktiver-modbus-abschlusswiderstand-modbus-bias-modul/ Auch dort ist der obere Biaswiderstand viel zu groß, um genügend Strom durch den Abschlusswiderstand fließen zu lassen. Ein der Spezifikation entsprechender Pegel wird nicht erreicht. Vielleicht sollte man einfach einmal jemand zu Wort kommen lassen, der sich mit Modbus auskennt (s. Kap. 3.1 RS485 Bus Verdrahtung (Modbus RTU) auf S.6). https://www.ics-schneider.de/wp-content/uploads/2021/12/Bedienungsanleitung_VA_5xx_Modbus_RTU_Slave_Installation.pdf
:
Bearbeitet durch User
Rainer W. schrieb: > Auch dort ist der obere Biaswiderstand viel zu groß, um genügend Strom > durch den Abschlusswiderstand fließen zu lassen. Ein der Spezifikation > entsprechender Pegel wird nicht erreicht. Doch, das passt. Du hast bloss übersehen, dass das Ding mit 24V versorgt wird.
Rolf schrieb: > In Wikipedia siehst du Bilder der Transmitter und eine Tabelle mit den > Buszuständen. Wikipedia war meine erste Recherchequelle. Wenn man sich mit dem Thema bereits auskennt, kann man aus diesen Informationen sicherlich meine Frage beantworten. Hmmm schrieb: > Dir fehlen wirklich massiv Grundlagen. Ja, das habe ich gemeint mit "ich bin keine Elektrofachkraft". Ich war zwar damals Jahrgangsbester im Physik-LK, aber das bringt für solche praktischen Fragestellungen wenig - bzw. ist einiges Wissen wohl auch einfach nicht mehr da :) Hmmm schrieb: > Die Bias-Widerstände ziehen A auf High-Pegel (meistens 5V) und B auf > Low-Pegel (GND), was natürlich zu einer entsprechenden Differenz > zwischen A und B führt. Daraus schließe ich, dass ich durch einfaches Messen der Spannung zwischen A- und B Ausgang eines Endgeräts im offenen oder Ruhezustand nicht schließen kann, ob es korrekt funktioniert - dazu müsste ich dann genauer wissen, wie das Gerät intern aufgebaut ist. An den Endgeräten, die ich auf dem Schreibtisch zur Verfügung habe, habe ich nachgemessen. Hier war sowohl im offenen als auch im Ruhezustand jeweils 0V zwischen A und B. Hmmm schrieb: > Mit einem Oszilloskop und einem Logic Analyzer sollte man das Problem > eingrenzen können, aber ich glaube, dafür brauchst Du jemanden vor Ort, > der sich damit auskennt. Zu dieser Einschätzung komme ich nun auch. Die 3,3V, die im offenen Zustand an dem Endgerät, mit dem ich nicht kommunizieren konnte, waren mein erster Strohhalm zur weiteren Fehlersuche...
Bei RS485 definiert sich ein logisches Bit aber über den unterschied von einer Spannungsdifferenz der differentiellen Leitungen. Da ist der Ruhepegel erstmal vollkommen egal.
Gustav G. schrieb: > über über den unterschied von > einer Spannungsdifferenz Das wäre die 2. Ableitung der Spannungsdifferenz.
Philipp schrieb: > Daraus schließe ich, dass ich durch einfaches Messen der Spannung > zwischen A- und B Ausgang eines Endgeräts im offenen oder Ruhezustand > nicht schließen kann, ob es korrekt funktioniert - dazu müsste ich dann > genauer wissen, wie das Gerät intern aufgebaut ist. Die RS-485-Spezifikation erlaubt für einen Empfänger (also einen Transceiver mit inaktivem Sender) einen Widerstand von höchstens ca. 12 kΩ; für den genauen Zusammenhang zwischen Spannung und Strom siehe die Grafik. Das ist ein "Unit Load"; moderne Chips haben oft 1/8 UL. Du kannst also zwischen den Pins alles mögliche messen. Ob ein Treiber korrekt funktioniert, kannst du nur messen, wenn er aktiv ist. > Zwischen A und B liegen an diesem Endgerät 3,3V an. Das könnte ein Kurzschluss zur Stromversorgung sein (schlecht), oder einfach nur ein schwacher Pull-Up-Widerstand (OK). Wie weit kann dein Treiber diese Spannung ändern? (Das kannst du nur mit einem Oszilloskop herausfinden.)
Hmmm schrieb: > Interessant wäre noch, um welche Geräte es überhaupt geht. Als Master verwende ich verschiedene USB-RS485 Bridges, mit denen ich bisher immer erfolgreich Modbus "gesprochen" habe. Das Endgerät ist ein Ultraschall-Wasserzähler: https://www.thomsen-messtechnik.com/at600.htm Ich bin mit dem Hersteller im Kontakt, um die Kommunikation herzustellen. Die dauerhaften 3,3V waren eine erste Beobachtung, mit denen ich die Fehlersuche gestartet habe. Diese haben mich zu der Frage dieses Threads geführt :) Clemens L. schrieb: > Du > kannst also zwischen den Pins alles mögliche messen. > > Ob ein Treiber korrekt funktioniert, kannst du nur messen, wenn er aktiv > ist. Danke für dieses Fazit. Und dieses Messen kann nur mit einem Oszilloskop erfolgen, für dessen korrekte Bedienung man wiederum viel Erfahrung braucht. Schonmal danke für eure schnelle Hilfe, schön, ein so aktives Forum zu haben.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.