Hallo liebe Mikrocontroller Gemeinde, ich bin auf der Suche nach einem experten was die RS485 Signalpegel angeht. Ich möchte gerne das Display von meinem Wohnmobil (Infomationen über Batteriespannungen, Tankinhalte, Beleuchtung und Wasserpumpe schalten) gegen eine Raspberry Pi 5 mit Display und TTL_to_RS485 wechseln um die Information zu erweitern und besser anzuzeigen. Laut Internet ist das alte Display über eine RS485 Verbindung mit der Wohnmobilsteuerung verbunden. Den Datenstring habe ich auch schon aufgeschlüsselt. Leider sind die Signalpegel unterschiedlich (siehe Bilder). Die Kabellänge beträgt 5m und hat im Original keine Abschlusswiederstände. Auf den beiden Bildern erkennt man den Datenstring vom Master (die ersten 5Byte) und die Daten von der Steuerung (die hinteren 20 Byte). Bei dem Bild "Wohnmobilsteuerung mit TTL_to_Rs485" kommt der Datenstring vom Master nicht sauber an. Ich hoffe das alles verständlich ist und aus den Bildern die richtigen Rückschlüsse gezogen werden können Lieben Gruß Tola-Emma
Kann es sein, dass Du am Anfang den Treiber eingeschaltet hast und somit die Gegenstelle störst?
Hallo, hast du eine Masseleitung mit dem RS485 mitgeführt? Auch zum Oszi-Ground? Der negative Haken da am Ende sieht komisch aus. Kannst du ein Schema-Schaltplan mit Kabellängen, jeweils genutzten Massepunkten, DCDC usw. erstellen? Dabei auch einzeichnen, woher das Oszi seinen Groundbezug her hat. Notfalls muss die Versorgung des R-PI eben in der Nähe des Aktuator-Steuergeräts abgegriffen und mit durch die Bude entlang des RS485 geführt werden. mfg mf
:
Bearbeitet durch User
Zwei Dinge: 1. Du brauchst ein Bias-Netzwerk, dass den roten Pegel auf high zieht, wenn keiner sendet. Dieses war offenbar im originalen Display, aber nun fehlt es. 2. Ein "richtiger" RS-485-Knoten würde beide Pegel aktiv treiben können, während er aktiv ist. Der neue Knoten treibt allerdings nur "rot runter, blau hoch", nicht andersrum. Daher sind die Flanken seeeehr rund, viel länger als eine Bitzeit, und damit unbrauchbar. Das ist offenbar die "Sparschaltung", wo die Sende-Empfangs-Umschaltung als Sendeleitung verwendet wird. Abhilfe sollte auch dagegen ein starkes Bias-Netzwerk schaffen. In etwa so: rot über 560 Ohm nach 5V, blau über 560 Ohm nach Masse. Zwischen den Leitungen 150 Ohm. (Werte angelehnt an https://de.wikipedia.org/wiki/EIA-485)
Hallo Hmmm, ich schicke von der Raspberry Pi das Signal(FF 00 00 00 FF) immer wieder los und auf dem Oziloskop wird das Signal so angezeigt und der Slave (Wohnmobilsteuerung) kommt nur selten eine Antwort und die ist auch nicht immer korrekt. Hallo Achim, die Verbindung zwischen Steuerung und Display sind 4 Adern (+12VDC, Masse, A, B). An dem TTL_to_RS485 Modul habe ich Masse, A und B angeklemmt. Der Testaufbau hat nur 40cm Leitung und in der Mitte habe ich das Oziloskop mit Ground an Masse angeschlossen. Gruß Tola-Emma
Deine Signale schauen schon sehr verschliffen aus. Ist der Bus am jedem Ende mit 120 Ohm abgeschlossen? Vielleicht hast du einen Teilnehmer entfernt der den Widerstand integriert hatte. Schau dir mal hier die Signale an. https://www.profibus.felser.ch/signale.html
Ich würde an Deiner Stelle erstmal auf einen vernünftigen USB-RS485-Konverter mit FT232 umstellen.
Mario schrieb: > ich schicke von der Raspberry Pi das Signal(FF 00 00 00 FF) immer wieder > los und auf dem Oziloskop wird das Signal so angezeigt ... Wo siehst du in Wohnmobilsteuerung_mit_TTL_to_RS485.png ein 0xFF 0x00 0x00 0x00 0xFF? Kein Wunder, dass das Wohnmobil da nichts versteht. Wie sieht denn das Signal auf dem Bus aus, wenn du das Wohnmobil erstmal abklemmst? Sollen die Zeichen, die du mit dem RaspPi sendest, die Datenausgabe vom Wohnmobil anstoßen oder plappert das von sich aus vor sich hin? Wie werden bei deinem Aufbau die RS485-Sender aktiviert?
:
Bearbeitet durch User
Hallo Uwe, da ich an der RS485 Seite vom TTL_to_RS485 Konverter die Verbindung aufgebaut habe müsste ich doch das BIAS Netzwerk mit 12V beschalten und kannst Du mir sagen welche Widerstände ich dort benötige. Gruß Tola-Emma
Mario schrieb: > habe müsste ich doch das BIAS Netzwerk mit 12V beschalten Nee. 5V. Ein Pullup an +5V, ein Pulldown an GND und dazwischen einen Abschlusswiderstand. https://de.wikipedia.org/wiki/EIA-485 Siehe Zeichnung "Bias-Netzwerk"
Mario schrieb: > ich schicke von der Raspberry Pi das Signal(FF 00 00 00 FF) immer wieder > los und auf dem Oziloskop wird das Signal so angezeigt und der Slave > (Wohnmobilsteuerung) kommt nur selten eine Antwort und die ist auch > nicht immer korrekt. Vermutlich liegt es an Deiner RasPi-Schnittstelle. Wie koppelst Du denn den Pi an die Wohnmobilsteuerung? Vermutlich brauchst Du da nur einen passenden Adapter, der die erforderlichen Pegel liefern kann. Gute RS485 Boards haben die passenden Pullup-, Pulldown- und Abschlußwiderstände integriert, da muß man nix machen. Die haben auch eine Spannungsversorgung für die RS485-Seite, so daß die erforderlichen Pegel erreicht werden.
:
Bearbeitet durch User
Die Signale auf den Bildern sehen wie TTL-Pegel aus und nicht wie RS485. Letzterer arbeitet differentiell, d.h. die Unterscheidung zwischen 0 und 1 erfolgt mittels Umpolung. Die absolute Spannung spielt dabei keine Rolle, zuverlässige Erkennung ist schon ab ca. 0,2V gegeben. Die Signale im Eingangspost sind jedoch, bis auf Störungen, durchweg im positiven Bereich.
Icke ®. schrieb: > Die absolute Spannung spielt dabei keine Rolle, Unsinn. Der Common Mode Bereich der Eingänge muss auf jeden Fall eingehalten werden.
OK, speziell für Erbsenzähler korrigiere/ergänze ich: Die absolute Spannung spielt, anders als bei TTL, für die Signalerkennung keine Rolle, darf aber die spezifizierten Werte nicht überschreiten.
Hans schrieb: > Gute RS485 Boards haben die passenden Pullup-, Pulldown- und > Abschlußwiderstände integriert, da muß man nix machen. Die haben auch > eine Spannungsversorgung für die RS485-Seite, so daß die erforderlichen > Pegel erreicht werden. Abgesehen vom "bias network" ist natürlich beim RS485-Betrieb ein zeitlich passendes Umschalten vom Sende- auf Empfangsbetrieb erforderlich. Am einfachsten geht das, wenn man eine UART mit entsprechender Hardwareunterstützung dafür verwendet; die UART des Pi aber scheint das nicht zu können. Hier muss also ein zusätzlicher GPIO-Pin verwendet und passend angesteuert werden, was nicht trivial ist, denn die Umschaltung muss so schnell wie möglich erfolgen, nachdem das Stopbit des letzten zu sendenden Bytes das UART-Schieberegister verlassen hat. Wenn man nicht auf Registerebene mit der UART kommuniziert, sondern den beliebten Schichtkuchen aus Library, Skriptsprache und Betriebssystemtreibern verwendet, ist das ein eher auswegloses Unterfangen. Eine USB-Seriell-Bridge wie der FT232 aber enthält diese RS485-Unterstützung in Hardware und ist hier daher eindeutig zu bevorzugen, am besten in Form eines fertig aufgebauten USB-RS485-Adapters. Was die Spannungsversorgung betrifft: Sofern der RS485-Wandler nicht galvanisch von der UART getrennt ist, ist die unkritisch, der Treiber benötigt lediglich 5V.
Hallo Ihr Lieben, ich habe noch einen USB_TO_RS485 (https://www.reichelt.de/de/de/shop/produkt/raspberry_pi_-_usb-rs485-schnittstelle_ch340c-242783). An diesem habe ich einen 100Ohm Widerstand angeschlossen(hatte leider keinen 120Ohm) und diesen mit der Wohnmobilsteuerung verbunden(Kabellänge 20cm). Den Abgriff für das Oziloskop ist direkt am Widerstand abgenommen und die Masse vom GROUND(0V) der Wohnmobilsteuerung. Hierzu habe ich ein Bild eingestellt. Der eingekreiste Bereich ist das Mastersignal (xFFx00x00x00xFF)vom USB Adapter und der Rest kommt aus der Wohnmobilsteuerung (Hex-Antwort). Aber auch hier kommt das Sendesignal nicht sauber rüber. Ist der USB-Adapter nicht der richtige?
Mario schrieb: > Aber auch hier kommt das Sendesignal nicht sauber rüber. Wieso? Weil der Decoder Deines Oszilloskops damit nicht zurecht kommt? Andere mal die Zeitbasis.
Beitrag #7854743 wurde vom Autor gelöscht.
Mario schrieb: > Den Abgriff für das Oziloskop ist direkt am Widerstand abgenommen Wenn du die beiden Signale mal nicht immer so ineinander quetschen würdest, könnte man die Pegel deutlich besser ablesen. > An diesem habe ich einen 100Ohm Widerstand angeschlossen(hatte leider > keinen 120Ohm) Hast du dir einmal ausgerechnet, wie groß der Unterschied wäre?` Welchen Wert haben deine Bias Widerstände und was für Spannungen erwartest du auf den beiden Busleitungen, wenn beide Seiten ihren Sender abgeschaltet haben?
:
Bearbeitet durch User
Hallo Ihr Lieben, wenn ihr meint das die Sendesignale nur auf dem Oziloskop nicht richtig konvertiert wird ist mir dieses eigendlich egal. Nun habe ich den USB-Adapter jetzt mit der RasperryPI verbunden und die Schnittstelle zum Senden angepasst. Wenn ich dieses Signal (xffx00x00x00xff) nur alle 12 Sekunden senden kommt eine Antwort der Wohnmobilsteuerung, aber mir ist aufgefallen das die B Leitung beim Sende eine höhere Spannung hat als die Antwort der Wohnmobilsteuerung. Sende ich das Signal einmal 1 der Sekunde bekomme ich keine Antwort von der Wohnmobilsteuerung. Mit dem originalen Display werden alle 100ms ein Signal ausgelöst und die Antwort kommt auch immer.
Hallo, noch einen Nachtrag. In meiner RaspberryPI kommt folgender Wert auf der Empfangsseite: b'\xfe\xff\xff\xf9' Normalerweise sollte dort "b'\xff\x00\x00\x00\xff'" stehen. Lieben Gruß Tola-Emma
Mario schrieb: > kommt eine Antwort der Wohnmobilsteuerung, aber mir ist aufgefallen das > die B Leitung beim Sende eine höhere Spannung hat als die Antwort der > Wohnmobilsteuerung. Nochmal: Der Empfänger wertet die DIFFERENZ aus. Guck dir den Aufbau eines RS485-Empfängers an.
Auch der neue Adapter hat kein passendes Bias-Netzwerk. Wir brauchen neben "blau größer als rot" auch "rot größer als blau". Das sieht man jedoch nicht. Du brauchst ein Bias-Netzwerk, was rot nach oben (in Richtung 5V) und blau nach unten (in Richtung Ground) zieht. Weil bei RS-485 die Differenzspannung ausgewertet wird, und diese deutlich positiv und negativ sein muss.
Mario schrieb: > In meiner RaspberryPI kommt folgender Wert auf der Empfangsseite: > b'\xfe\xff\xff\xf9' Um das festzustellen braucht man keinen Raspberry Pi. Wenn du dir dein Wohnmobilsteuerung_mit_USB_to_RS485_100Ohm__an_RaspberryPI_1Sek.png ansiehst, könntest du erkennen, dass während der Übertragung der 0x00er das blaue Signal IMMER über dem roten liegt. Das kann nicht funktionieren. Kannst du dir mit deinem Oszi direkt die Differenz der beiden Kanäle anzeigen lassen? Liest du auch Fragen?
:
Bearbeitet durch User
Hallo Uwe, hast Du eine Ahnung ob ich die 5V und GND von den GPIO der Raspberry nehmen kann oder sollte ich diese direkt aus meiner USB Versorgungsbuchse nehmen. Den 100 Ohm Wiederstand ersetze ich dann gegen die BIAS-Wiederstände aus deiner oberen Beschreibung? Lieben Gruß Mario
Ich glaube, der rote Ausgang ist defekt. Hat keine Kraft mehr, ein ordentliches Signal zu liefern.
Mario schrieb: > hast Du eine Ahnung ob ich die 5V und GND von den GPIO der Raspberry > nehmen kann oder sollte ich diese direkt aus meiner USB > Versorgungsbuchse nehmen. Im besten Fall vom Transceiver. Wenn der keine galvanische Trennung zum USB hat, dann auch gern vom USB oder von der GPIO-Leiste des Raspberry oder vom 5V-Netzteil, was den Raspberry speist. Alles identisch. Sherlock 🕵🏽♂️ schrieb: > Ich glaube, der rote Ausgang ist defekt. Hat keine Kraft mehr, ein > ordentliches Signal zu liefern. In der Tat. Um 18:16 Uhr sah es noch gut aus, danach ist irgendwas kaputt (oder kurzgeschlossen oder Widerstand geändert oder so).
Uwe schrieb: > oder kurzgeschlossen Kurzschluss kann ausgeschlossen werden, denn im markierten Abschnitt hat die rote Linie gute Pegel.
Hallo Rainer, sorry hatte die Frage übersehen!!! Die Spannungen A und B bei beim Original Display und Wohnmobilsteuerung mit ausgeschalteten Display (keine Signale) betrugen die Spannung: A= 88,8 mV B= 4,401 V Nach meiner Messung existieren keine Abschlusswiderstände. Lieben Gruß Mario
Hallo Uwe, um 18:16 war dort nicht die Raspberry an dem USB Adapter angeschlossen sondern mein Handy von dem ich die Signale über den USB Adapter gesendet habe.
Mario schrieb: > Spannungen A und B bei beim Original Display und Wohnmobilsteuerung mit > ausgeschalteten Display (keine Signale) betrugen die Spannung: > A= 88,8 mV > B= 4,401 V A und B ist nicht ganz eindeutig, aber die gängige Definition der Transceiver-Hersteller ist A = non-inverting und B = inverting, in dem Fall müsste in Ruhelage A auf High- und B auf Low-Pegel sein.
Mario schrieb: > Die Spannungen A und B bei beim Original Display und Wohnmobilsteuerung > mit ausgeschalteten Display (keine Signale) betrugen die Spannung: > A= 88,8 mV > B= 4,401 V Das deutet auf eine Verwechslung von A und B hin. Wenn ich Wikipedia (https://de.wikipedia.org/wiki/EIA-485) und TI-Datenblatt (https://www.ti.com/lit/ds/symlink/sn65hvd3082e.pdf?ts=1743498914859&ref_url=https%253A%252F%252Fwww.mouser.at%252F) richtig verstehe, ist A (auch + genannt, "nichtinvertierend") im Ruhezustand High B (auch - genannt, "invertierend") im Ruhezustand Low Ruhezustand heißt, dass der Controller high an RX und TX hat.
Rainer W. schrieb: > Nochmal: Der Empfänger wertet die DIFFERENZ aus. > Guck dir den Aufbau eines RS485-Empfängers an. Ist wahrscheinlich zwecklos. Der Mann will einfach nicht verstehen, wie ein RS485-Bus funktioniert. Und das Gros der Helfer hier wohl auch nicht.
Der hat definitiv bereits einen 120R Widerstand eingebaut. Außerdem werden da die 5V auch rauf gelegt! Dient also gleichzeitig als passiver Abschluss!
Ate E. schrieb: > Außerdem werden da die 5V auch rauf gelegt! Dann sollte sich der Pegel auch vernünftig in Richtung 5V bewegen, wenn der Master sendet. Um festzustellen, welche Seite die Leitung irgendwo hin zieht, kann man vorübergehend einen kleinen Widerstand in die Leitung hängen und sieht dann, von welcher Seite ein Pegel kommt und wer gerade die Last darstellt.
Hallo ihr Lieben, ich habe heute nochmal das alte Display(Master) und die Wohnmobilsteuerung(Slave) zusammengebaut und das Oziloskop angeschlossen. Wenn ich die Leitungen A und B zwischen Master und Slave kommt eine Fehlermeldung am Display. Wenn ich den Anschluss am Ozilokop vertausche damit A High ist und B low ist. werden die Werte falsch angezeigt. Meine Vermutung ist das die B Leitung High und A Leitung Low sein muss. Die Informationen wie die Daten Aussehen habe ich von diesem Link herausgezogen: https://github.com/class142/ne-rs485/blob/master/spec.md
Mario schrieb: > Wenn ich die Leitungen A und B zwischen Master und Slave kommt eine > Fehlermeldung am Display. Wenn ich den Anschluss am Ozilokop vertausche > damit A High ist und B low ist. werden die Werte falsch angezeigt. > Meine Vermutung ist das die B Leitung High und A Leitung Low sein muss. Du siehst aber schon, dass Du Deinen UART-Decoder auf B gehängt hast, der also (sofern die Bezeichnung der üblichen Definition entspricht) das invertierte Signal auswertet, oder?
Hmmm schrieb: > Du siehst aber schon, dass Du Deinen UART-Decoder auf B gehängt hast, Was gefällt dir daran nicht? High-Pegel für die Datenbits bei 0xFF in Wohnmobilsteuerung_mit_alten_Display__A_high__B_low_.png hört sich eigentlich nicht so verkehrt an. Aber bei diesen zusammengequetschten und überlagerten Oszillogrammen guckt man sich die Augen aus und kriegt einen Knoten ins Hirn.
:
Bearbeitet durch User
Rainer W. schrieb: > Hmmm schrieb: >> Du siehst aber schon, dass Du Deinen UART-Decoder auf B gehängt hast, > > Was gefällt dir daran nicht? Wenn das Signal auf der mit B beschrifteten Ader richtigrum ist (Ruhepegel high), ist es mit Sicherheit falschrum, wenn er seinen USB-RS485-Konverter dranhängt. Der erwartet nämlich i.d.R. auf A das nicht-invertierte Signal. Hätte er längst testen können, indem er den einfach mal zum Lauschen dranhängt, während die Kommunikation der Original-Geräte läuft Rainer W. schrieb: > High-Pegel für die Datenbits bei 0xFF in > Wohnmobilsteuerung_mit_alten_Display__A_high__B_low_.png hört sich > eigentlich nicht so verkehrt an. Dachte ich auch zuerst, aber das soll ja der nicht funktionierende Fall sein, wenn ich seine Ausführungen richtig verstanden habe. Rainer W. schrieb: > Aber bei diesen zusammengequetschten > und überlagerten Oszillogrammen guckt man sich die Augen aus und kriegt > einen Knoten ins Hirn. Ja. Es wäre auch hilfreich, wenn er mal Fotos der Komponenten (mit lesbarer Beschriftung) und eine Zeichnung davon, was er wie angeschlossen hat, beifügen würde.
:
Bearbeitet durch User
Hmmm schrieb: > Ja. Es wäre auch hilfreich, wenn er mal Fotos der Komponenten (mit > lesbarer Beschriftung) und eine Zeichnung davon, was er wie > angeschlossen hat, beifügen würde. Ich werde morgen mal versuchen euch ein paar Fotos der Komponenten zukommen zu lassen.
Mario schrieb: > Wenn ich den Anschluss am Ozilokop vertausche > damit A High ist und B low ist. werden die Werte falsch angezeigt. Die Zuordnung der Buchstaben A und B zu den Leitungen ist nicht eindeutig, hat also nicht wirklich eine Bedeutung - manche Leute machen es so, andere anders. Entscheidend ist die Polarität vom Start-Bit. Daran kannst du dich immer orientieren und musst dann deinen Dekoder so anschließen/einstellen, dass er das richtig versteht.
Mario schrieb: > Meine Vermutung ist das die B Leitung High und A Leitung Low sein muss. Du hast den RS485-Bus noch immer nicht verstanden. RS485 arbeitet differentiell, d.h. es gibt kein HIGH oder LOW, weil der Empfänger die Leitungen A und B nicht über deren Bezug zu GND auswertet, sondern den logischen Pegel danach bestimmt, welche Polarität zwischen ihnen anliegt. Plus an A und Minus an B wird als logisch "1" interpretiert, Minus an A und Plus an B, als logisch "0". Es ist für die Funktion prinzipiell gar nicht erforderlich, zwischen Sender und Empfänger die Masse mitzuführen! Dies wird zwar häufig empfohlen, dient aber lediglich der Vermeidung unzulässiger Gleichtaktspannungen oder wegen der EMV. Schau dir das Bild mit der vereinfachten Prinzipdarstellung an. Es zeigt den Zustand bei logisch "1", der bei richtiger BIAS-Vorspannung auch Ruhezustand des Busses sein soll (den Widerstand habe ich nur für die Krümelkacker eingezeichnet, die ansosnsten monieren würden, daß die LEDs ohne ihn sofort kaputt gehen :P). Mit Plus an A und Minus an B leuchtet die obere LED für logisch "1". Jetzt drehe die Spannungsquelle um, sodaß Minus an A und Plus an B liegt. Nun leuchtet die untere LED für logisch "0". Es spielt dabei keine Rolle, wie hell die LEDs leuchten, sie müssen nur so hell sein, daß das Leuchten noch zu erkennen ist. Genau nach diesem Prinzip arbeitet der RS485-Bus. Für stabile Funktion muß der Bus jedoch korrekt terminiert sein (an jedem Ende 120 Ohm). Noch viel wichtiger ist aber die richtige Vorspannung mit BIAS-Widerständen. Bei 2-Draht RS485 darf immer nur ein Gerät senden, deswegen schalten sich die Treiber hochohmig, wenn das Gerät gerade nicht sendet, damit ein anderes Gerät den Bus übernehmen kann. Wenn kein Gerät sendet, sind alle Treiber hochohmig und der Bus hängt in der Luft. In dieser Situation nimmt die Spannung bzw. Polarität zufällige Werte an und somit ist auch der logische Zustand zufällig. Dies kann zu erheblichen Störungen oder totaler Fehlfunktion führen. Die EMpänger (bzw. deren nachgeordnete Logik) erwarten nämlich als Startkondition ein logisch "1" (Plus an A, Minus an B). Ohne Vorspannung könnte rein zufällig aber auch gerade logisch "0" anliegen. Und wenn der Bus floatet, d.h. seinen Zustand aufgrund von Einstreuungen ständig ändert, bekommt die nachfolgende Logik eine sinnlose Folge von Nullen und Einsen serviert. Mit entsprechend unabsehbaren Folgen. Bevor du weiter rumstocherst, solltest du sicherstellen, daß der Bus physisch korrekt aufgebaut ist, also BIAS und Terminierung stimmen. Das Oszi braucht nur einen Kanal, denn es gibt ja auch nur ein Signal, die Differenz zwischen A und B. Es macht keinerlei Sinn, A und B gegen Masse getrennt darzustellen. Verbinde GND des Oszis mit B und die Spitze mit A. Dazu ist natürlich galvanische Trennung des Oszis und der Schaltungsmasse erforderlich. Eine böse Stolperfalle existiert allerdings noch. Wie schon weiter oben angesprochen, ist die Bezeichnung der Leitungen mit A und B nicht eindeutig, weil sich nicht alle Hersteller daran halten! Je nachdem könnte A auch die invertierte Leitung sein und B die nichtinvertierte. Ja, das ist ziemlich gemein. Man sollte also ins Datenblatt schauen, welche Definition der Hersteller benutzt. Manchmal stehen da z.B. solche Angaben drin wie "A+" oder "A-". Weitaus häufiger kommt in der Praxis die Definition A+ vor, sprich Plus an A (nichtinvertierte Leitung). Entscheidend ist aber immer die Polarität, nicht der Buchstabe!!
Wow, danke, super erklärt. Ich würde gern 10 Pluspunkte vergeben. Kleine Ergänzung zur Oszimessung gegen Masse: Messung beider Leitungen gegen Ground kann helfen, Gleichtaktprobleme zu bewerten. Idealerweise würde das Oszi einen berechneten Kanal A minus B anzeigen können, dann wird die Interpretation leichter, und an diesen Kanal dann den UART-Decoder hängen.
Icke ®. schrieb: > Es macht keinerlei Sinn, A und B gegen Masse > getrennt darzustellen. Verbinde GND des Oszis mit B und die Spitze mit > A. Dazu ist natürlich galvanische Trennung des Oszis und der > Schaltungsmasse erforderlich. Gefährliches Halbwissen Sobald der USB-Seriell-Wandler am PC angeschlossen ist, ist Gnd bei den meisten mit PE verbunden. Genauso ist bei vielen Oszis der Gnd der Eingänge mit PE verbunden. Einen Kurzschluss zwischen B und Gnd will keiner. Heutige Oszis können aus den Signalen A gegen Gnd und B gegen Gnd selber die Differenz ausrechnen und anzeigen - genau aus o.g. Grund. Außerdem würde sich der Treiber für die B-Leitung bedanken, wenn er das ganze Oszi potentialmäßig mit der Änderung vom B-Signal durch die Gegend schleifen soll.
:
Bearbeitet durch User
Rainer W. schrieb: > Sobald der USB-Seriell-Wandler am PC angeschlossen ist, ist Gnd bei den > meisten mit PE verbunden. Genauso ist bei vielen Oszis der Gnd der > Eingänge mit PE verbunden. Genau deswegen schrieb ich "galvanische Trennung". Für mich heißt galvanische Trennung, es gibt (außer der gewollten am Tastkopf) keine galvanische Verbindung, auch nicht über PE. Kann man mit Trenntrafo oder Batteriebetrieb realisieren. Somit gibts auch keinen Kurzschluß oder Potentialprobleme. Rainer W. schrieb: > Heutige Oszis können aus den Signalen A gegen Gnd und B gegen Gnd selber > die Differenz ausrechnen und anzeigen Wenn man ein solches besitzt, wäre das eine Alternative. Die überlagerte Darstellung beider Leitungen ist aber nicht sinnvoll.
Icke ®. schrieb: > Kann man mit Trenntrafo oder > Batteriebetrieb realisieren. Somit gibts auch keinen Kurzschluß oder > Potentialprobleme. Die galvanische Trennung mit einem Trenntrafo ändert nichts daran, dass der Treiber dann das komplette Oszi und den halben Trafo mit durch die Gegen schleifen muss. Ab gewissen Frequenzen wird das - vorsichtig ausgedrückt - LÄSTIG.
Mario schrieb: > einen USB_TO_RS485 > (https://www.reichelt.de/de/de/shop/produkt/raspberry_pi_-_usb-rs485-schnittstelle_ch340c-242783). Obacht: bei diesen Chinaböllern ist der GND nicht herausgeführt. Das musst du selber machen. Denn auch wenn RS485 nur 2 Signalleitungen hat, bezieht sich doch jede einzelne davon auf diesen gmeinsamen GND.
Icke ®. schrieb: > Wenn man ein solches besitzt, wäre das eine Alternative. Wenn es um differentielle Signale geht, ist das die einzig vernünftige Alternative (oder ein entsprechender Tastkopf). Auch besitzt nicht jeder einen Trenntrafo aus der Zeit der Röhrentechnik oder ein Oszi mit Batteriebetrieb. Aber der TO verrät leider auch nicht, was er da aufgebaut hat und was er an Geräten/Hilfsmitteln zur Verfügung hat.
Es driftet leicht ins Off-topic, aber es gibt USB-Oszis mit galvanischer Trennung, hobbytauglicher Preis, leider nur zwei Kanäle, OWON VDS1022i. Bin zufrieden damit.
Lothar M. schrieb: > Denn auch wenn RS485 nur 2 Signalleitungen hat, > bezieht sich doch jede einzelne davon auf diesen gmeinsamen GND. Jetzt geht das wieder los. Die Aussage gilt prinzipiell nur innerhalb der Senderschaltung. Wenn du zwei batteriebetriebene Geräte ausschließlich mit A und B verbindest, funktioniert der Bus genauso, obwohl der Empfänger keinerlei Verbindung zum GND des Senders hat. Weil der Empfänger eben nur die Differenz zwischen A und B auswertet und die Signale NICHT auf GND bezieht. DAS ist das Prinzip von RS485! Und daß GND von vielen Entwicklern aus Gründen der Störsicherheit mitgeführt mit, ändert daran gar nichts. Aus starkstromtechnischer Sicht ist die Verbindung von entfernten Geräten über (PE-verbundenes) GND wegen der auftretenden Potentialunterschiede eigentlich ein NoGo. Wenn die Potentialunterschiede ausreichend groß sind und keine Maßnahmen zur Strombegrenzung getroffen werden, schmilzt dir deine GND-Leitung im Extremfall sogar weg. Ich habe sowas tatsächlich schon gesehen. Nicht bei RS485, aber bei Kupfer-Netzwerkkabeln, wo die Mantelisolierung angeschmolzen war.
Rainer W. schrieb: > Auch besitzt nicht jeder einen Trenntrafo aus der Zeit der Röhrentechnik > oder ein Oszi mit Batteriebetrieb. Och, sogar mein uralter RFT EO174A kann über Batterie oder externe 12V betrieben werden :P Rainer W. schrieb: > Ab gewissen Frequenzen wird das - vorsichtig > ausgedrückt - LÄSTIG. Mag sein, aber die Wohnmobilsteuerung wird wohl nicht mit MHz arbeiten.
Icke ®. schrieb: > Jetzt geht das wieder los. Die Aussage gilt prinzipiell nur innerhalb > der Senderschaltung. Sie gilt auch prinzipiell für jeden Empfänger. Der hat nämlich einen Gleichtaktbereich. Wenn der verlassen wird, macht der Empfängerbaustein Käse. > Weil der Empfänger eben nur die Differenz zwischen A und B auswertet und > die Signale NICHT auf GND bezieht. DAS ist das Prinzip von RS485! Genauso wie eine H-Brücke "im Prinzip" mit 4 Mosfets realisiert wird, und doch "in der Realität" laufend irgendwelche Anfänger mit der Ansteuerung der Highside auf die Nase fallen. Wie auch immer: alle mir bekannten und erfolgreichen RS422/RS485/CAN/DMX/LVDS/uswusf-Hersteller empfehlen, den GND mitzuführen. Ich wünsche allen viel Glück, die das nicht tun. Sie brauchen es.
:
Bearbeitet durch Moderator
Icke ®. schrieb: > Jetzt geht das wieder los. Die Aussage gilt prinzipiell nur innerhalb > der Senderschaltung. Wenn du zwei batteriebetriebene Geräte > ausschließlich mit A und B verbindest, funktioniert der Bus genauso, > obwohl der Empfänger keinerlei Verbindung zum GND des Senders hat. Hör doch auf mit deinen Spezialfällen. Sobald die Geräte NICHT galvanisch getrennt sind, muss man darauf achten - fertig. Icke ®. schrieb: > Mag sein, aber die Wohnmobilsteuerung wird wohl nicht mit MHz arbeiten. Aber mit 38.4kBd Datenraten und dann sollen die Pulse noch halbwegs rechteckförmig sein. Also müssen entsprechend Oberwellen auch noch heil rüber kommen.
:
Bearbeitet durch User
Lothar M. schrieb: > Sie gilt auch prinzipiell für jeden Empfänger. Der hat nämlich einen > Gleichtaktbereich. Wenn der verlassen wird, macht der Empfängerbaustein > Käse. Nope. Guten RS485-Komponenten mit isolierten Transceivern ist die Gleichtaktspannung auf den Leitungen gegen GND so ziemlich egal, solange die nicht die Isolierung durchschlägt. Ich rede von vollständig isolierten, also auch mit galvanischer Trennung der Betriebsspannung. Ja, die sind nicht billig. Siehe auch: https://www.all-electronics.de/wp-content/uploads/migrated/article-pdf/126076/ejl09-11-i-016.pdf > Wie auch immer: alle mir bekannten und erfolgreichen > RS422/RS485/CAN/DMX/LVDS/uswusf-Hersteller empfehlen, den GND > mitzuführen. Ich wünsche allen viel Glück, die das nicht tun. Sie > brauchen es. Da muß ich wohl unverschämtes Glück haben, denn ich betreue mehrere Anlagen, wo KEIN GND mitgeführt wird, über teilweise mehr als einen Kilometer Entfernung. Die dürften also gar nicht funktionieren, tun es aber trotzdem seit Jahrzehnten. Ausfälle gab es in dieser Zeit schon, allerdings immer nach Blitzeinschlägen auf dem Gelände.
Lothar M. schrieb: > Obacht: bei diesen Chinaböllern ist der GND nicht herausgeführt. Das stimmt allerding. Der GND wird über die USB Buchse gebildet -> Suboptimal Bei anderen Chinaböllern sieht das weit besser aus.
Rainer W. schrieb: > Hör doch auf mit deinen Spezialfällen. > > Sobald die Geräte NICHT galvanisch getrennt sind, muss man darauf achten > - fertig. Nochmal zum Verständnis, es geht NICHT um die Störsicherheit oder Toleranz gegen unliebsame Spannungen. Es geht um die Aussage, daß sich die Pegel der Leitungen A und B auf GND beziehen und dieses deshalb mitzuführen ist. Das stimmt eben so nicht!
Icke ®. schrieb: > denn ich betreue mehrere Anlagen, wo KEIN GND mitgeführt wird Da fahren dann über mehr als einen km die wie erwähnt "prinzipiell" reichenden 2 verdrillten Leitungen? Ohne jeglichen Schirm, der dann doch wieder "irgendwie" einen Massebezug herstellt? Nehmen wir einfach mal sowas simples wie das isolierte Interface PSM-ME-RS232/RS485-P von Phoenix: https://product-download.phoenixcontact.com/7909055?response-content-disposition=inline;%20filename%3D%22db_de_psm_me_rs232_rs485_p_100274_de_08.pdf%22&Expires=1743680849&Signature=RqPR372JfTx-kPjYxNU-4QbScAkzZfOYhZFmb0Vpba1GcyA8wiPsPK~6xgPua4fY5BgZDnZXjdoadvCNh65IM75hKZ6Q1PmxrNeHOsmXrXySJd7oaGZzVLqs-pmi-ZSXTrGBwluyYUmOTxCq~IKt79cKky4LVTKGrbWVERu4WVDoAZKyctn05DV5s41fgkQy6qSyKfiiakC8bEWNYO4a3Ze5H4JK5B~4iDFBhau2hQpve-OQAy103dWUle6yM9Yy68UYzJMPGX-nHDFYBgXoJH5Rs213mu5ZiF4F7YW4MOUS2OBAiYob0DSnmjMHwjDrc2Sng7bw8xqpQCU0bsiNpg__&Key-Pair-Id=K1I2N54A7B0GD Dort wird im Bild 13 geschrieben, dass der GND nicht zwingend nötig sei, der Schirm aber auf beiden Seiten aufgelegt sein müsse. Und dieser verbundene Schirm stellt über den Widerstand rechts unten im Bild 6 den nötigen Potentialbezug her. > Da muß ich wohl unverschämtes Glück haben Ich würde an deiner Stelle mal den Lottoschein ausfüllen. Das sollte dort genauso gut funktionieren.
:
Bearbeitet durch Moderator
Hallo Ihr lieben, auch ich muss mich bei "Icke" bedanken für die tolle Bescheibung!!! Und ja ich tue mich schwer mit der Differenzspannung, da bei mir im Kopf immer ein GND/ Masse verwendet wurde, deshalb bin ich ja froh das es solche Experten gibt die einem helfen, den man kann nicht alles wissen. Ich habe jetzt ein paar Fotos von den Bauteilen und dem Blockschaltbild der WoMo Steuerung beigefügt und mit roten Kreisen makiert wo die Anschlüsse für die RS485 und 12V der Displayversorgung angeschlossen ist. Eine Genaue Beschreibung welcher PIN für was ist gibt es nicht, deshalb habe ich dieses mit einem Stift aufgeschrieben G=GND, +=12VDC, A, B( A und B nur geschätzt um die Verbindung korrekt zu verbinden. Mein Oziloskop ist von PICO "PicoScope 2204A" und wird mit dem PC/Laptop über USB angeschlossen, ist also kein eigenständiges Gerät. Ausserdem habe ich mir heute nochmal einen anderen USB Converter bei Amazon bestellt um besser die BIAS-Widerstände zu realisieren (https://www.amazon.de/dp/B07XZ3PV8T) Ich hoffe das dieser Converter für meine Bedürfnisse passt. [Mod: Lebenslauf aus Link entfernt]
:
Bearbeitet durch Moderator
Lothar M. schrieb: > Dort wird im Bild 13 geschrieben, dass der GND nicht zwingend nötig sei, > der Schirm aber auf beiden Seiten aufgelegt sein müsse. Und dieser > verbundene Schirm stellt über den Widerstand rechts unten im Bild 6 den > nötigen Potentialbezug her. Ganz genau, da steht wörtlich "GND wird empfohlen, ist aber nicht zwingend erforderlich". Deine Aussage oben.. Lothar M. schrieb: > Denn auch wenn RS485 nur 2 Signalleitungen hat, > bezieht sich doch jede einzelne davon auf diesen gmeinsamen GND. ..impliziert jedoch, daß GND für den Betrieb erforderlich wäre, weil sich die Signalleitungen darauf beziehen. Was aber eben nur endgeräteintern zutrifft, nicht aber für die Übertragungsstrecke. Der typische RS485 Einsteiger kann (und wird) dies falsch verstehen und annehmen, daß GND wie bei RS232 verbunden sein muß. Die Frage der Abschirmung/Störsicherheit hat damit gar nichts zu tun, sondern ist ein eigenes Problem. Ich stelle doch gar nicht in Frage, daß dafür Maßnahmen getroffen werden müssen. Ich halte jedoch die Lösung mit vollständig isolierten Transceivern für deutlich besser als das Durchverbinden des GND vom Sender zum Empfänger. > Da fahren dann über mehr als einen km die wie erwähnt "prinzipiell" > reichenden 2 verdrillten Leitungen? Ohne jeglichen Schirm, der dann doch > wieder "irgendwie" einen Massebezug herstellt? Die Strecken gehen über hausinterne Verkabelung und mehrere Schaltschränke sowie Erdkabel nach draußen zu Säulen mit RFID-Lesern (weitere Leser hängen hausintern am selben Bus). Der Leser wird vor Ort von einem schutzisolierten Netzteil ohne PE stromversorgt und der Bus ist nur mit A und B angeschlossen. Da das Lesergehäuse aus Plastik besteht, hat es ebenfalls keinen Kontakt zu GND. Lediglich die Schirme der Kabel sind wohl geerdet, was ich aber nicht beschwören kann, da nicht meine Baustelle. Ist jedoch sehr wahrscheinlich, da die gesamte Anlage elektrotechnisch hochprofessionell gebaut wurde. > Ich würde an deiner Stelle mal den Lottoschein ausfüllen. Das sollte > dort genauso gut funktionieren. Leider nicht, hab ich probiert.
Rainer W. schrieb: > Sobald der USB-Seriell-Wandler am PC angeschlossen ist, ist Gnd bei den > meisten mit PE verbunden. Genauso ist bei vielen Oszis der Gnd der > Eingänge mit PE verbunden. Was verstehs Du an Rainer W. schrieb: > Dazu ist natürlich galvanische Trennung des Oszis und der >> Schaltungsmasse erforderlich. nicht. Er hat doch eindeutig geschrieben, daß beide Systeme, also das Bussystem und der Oszi, galvanisch getrennt sein müssen und demzufolge auch keine gemeinsame GND haben. Wie man das am Ende realisiert steht doch auf einem ganz anderen Blatt.
Icke ®. schrieb: > Och, sogar mein uralter RFT EO174A kann über Batterie oder externe 12V > betrieben werden :P Wir hatten seinerzeit den Oszi (EO213 oder die diversen Oszis sowj. Bauart) mittels Teufelsschwanz angeschlossen, damit wir potentialfrei messen konnten. Hat bestens funktioniert und die Leute sind auch nicht trotz getrenntem PE reihenweise umgefallen. Trenntrafos waren meist nicht verfügbar und zum Mitschleppen bei Serviceeinsätzen auch viel zu schwer.
Icke ®. schrieb: > Die dürften also gar nicht funktionieren, tun es > aber trotzdem seit Jahrzehnten. weil sie vom dem zu befürchtenten Ungemach nichts wissen ;-)
Icke ®. schrieb: > Das stimmt eben so nicht! Natürlich nicht, wenn du die RS485-Schnittstellen bei allen, bis auf maximal einen Bus-Teilnehmern galvanisch trennst. Solange der TO nicht verrät, was bei im für Bus-Treiber verbaut sind oder wie es bei ihm mit einer möglichen galvanischen Trennung aussieht, hilft diese Diskussion herzlich wenig weiter. Das Messen ist dann noch ein anderes Thema.
:
Bearbeitet durch User
Mario schrieb: > auch ich muss mich bei "Icke" bedanken für die tolle Bescheibung! Keine Ursache. Der Vollständigkeit halber noch ein erweitertes Prinzipschaltbild, das die Funktion des Sendetreibers und der BIAS-Widerstände veranschaulicht. Rt sind die Terminierungswiderstände, die an jedem Ende des Busses (und nur dort) installiert sein sollten. Rb+ und Rb- sorgen für die Vorspannung des Busses, wenn kein Treiber aktiv ist. Ihre Werte sind von der Versorgungsspannung abhängig. Eine sichere Auswertung des Signals erfordert mindestens 200mV Pegel, zur Sicherheit kann man auf 300mV gehen. Die Terminierungswiderstände Rt liegen schaltungstechnisch parallel zueinander und die BIAS-Widerstände Rb+ und Rb- in Reihe dazu. Zweimal Rt á 120 Ohm parallel ergibt 60 Ohm, sodaß 5mA Strom durch die Kombi fließen müssen, um 300mV Pegel zu erzeugen. Bei 5V Betriebsspannung müßten die BIAS-Widerstände demzufolge rechnerisch jeweils 470 Ohm haben (470+470+60=1000, 5V/1000Ohm=5mA). Bei anderen Spannungen müssen sie entsprechend angepaßt werden, sollten aber nicht zu klein ausfallen, damit die Sendetreiber nicht unnötig dagegen arbeiten müssen. Diese legen einem Umschalter ähnlich die positive Betriebsspannung oder Masse (die Masse der Treiberschaltung!) dem logischen Pegel entsprechend an die Leitungen A und B. Mit dem "High Z-Schalter" trennt der Treiber seine Verbindung zum Bus, wenn er nicht sendet. Würden die BIAS-Widerstände fehlen, wäre der Bus über die Terminierungswiderstände quasi kurzgeschlossen und die Differenzspannung zwischen A und B gleich Null. In diesem Anschauungsbeispiel würde dann keine der LEDs leuchten und der logische Pegel wäre nicht definiert. Ähnlich verhält es sich in realen Empfängerschaltungen, die aus Komparatoren bestehen, welche die 200mV Mindestspannung benötigen, um stabil zu schalten. Natürlich darf das BIAS-Netzwerk nur an einer Stelle des Busses aktiv sein, im Gegensatz zu den Terminierungswiderständen dafür an beliebiger Stelle. Manche RS485 Devices haben neben der Terminierung auch das BIAS schaltbar an Bord, sodaß es nicht extern bereitgestellt werden muß.
:
Bearbeitet durch User
Icke ®. schrieb: > ..impliziert jedoch, daß GND für den Betrieb erforderlich wäre, weil > sich die Signalleitungen darauf beziehen. Was aber eben nur > endgeräteintern zutrifft, nicht aber für die Übertragungsstrecke. Man kann es auch andersrum beschreiben: Wenn GND auf beiden Seiten in etwa das gleiche Potential hat (+- 5 bis 10V), dann braucht man keinen GND mitführen. Z.B. weil irgendein Gerät doch einen Erdbezug herstellt. Wenn beide GND floatend sind, werden sie sich aufeinander einpendeln. Wenn GND1 floatend ist und GND2 nicht, dann wird sich GND1 auf GND2 einpendeln. Probleme gibt es natürlich nur, wenn beide GND mehr als etwa 10V (abhängig vom Treiber) auseinander sind oder wenn z.B. kapazitive Einkopplungen den (free floatenden) GND verschieben. Bei Galvanischer Entkopplung gilt das gleiche, nur dass die galvanische Entkopplung auf einer (oder beiden) Seite(n) für einen floatenden GND sorgt.
:
Bearbeitet durch User
Lothar M. schrieb: > Obacht: bei diesen Chinaböllern ist der GND nicht herausgeführt. Mich wundert, dass die das nach gefühlt 10 Jahren immer noch nicht verbessert haben. Wie so vielen anderen Murks auch. Mag sein, dass man GND nicht immer braucht, aber wenn doch, dann will und darf ich nicht an meinen Arbeitsgeräten (Laptop) herum fummeln. Und an der Steckdose habe ich formell als Softwareentwickler auch nichts verloren (unabhängig davon, dass ich das in der Berufsausbildung gelernt habe).
:
Bearbeitet durch User
Mario schrieb: > Und ja ich tue mich schwer mit der Differenzspannung, da bei mir im Kopf > immer ein GND/ Masse verwendet wurde, deshalb bin ich ja froh das es > solche Experten gibt die einem helfen, den man kann nicht alles wissen. Was Icke wortreich ausgeführt hat, hat bloss für Dich keinerlei praktische Relevanz. Ja, es ist ein differentielles Signal. Nein, man sollte deshalb nicht GND weglassen, auch wenn es häufig gutgeht. Und Du kannst weiterhin gegen GND messen, wie Du es bisher gemacht hast. Die absoluten Spannungspegel sind zwar nicht so wichtig (innerhalb des erlaubten Gleichtaktbereichs sind mindestens 200mV Differenz zwischen A und B standardkonform), aber da aus den Treiber-Ausgängen i.d.R. Vcc- und GND-Pegel rauskommen, sind krumme Spannungen schon einen genaueren Blick wert, gerade bei so kurzen Leitungen. Dein Hauptproblem dürfte wie gesagt ganz woanders liegen: Deinen Screenshots nach decodierst Du den RS485-Traffic auf der B-Ader, die nach der gängigen Definition der Transceiverhersteller die invertierte ist. Wenn Du Deinen USB-RS485-Konverter anschliesst, muss daher mit ziemlicher Sicherheit dessen A-Ader (auch "A+", "RS485+" o.dgl. genannt) dort angeschlossen werden, wo für Dich aktuell B ist, und umgekehrt. Ausprobieren kannst Du das am besten, indem Du das Original-Bedienteil angeschlossen lässt und zusätzlich (!) den USB-RS485-Konverter anklemmst, aber nur mitlauschen lässt, ohne von dort Daten zu senden.
Hmmm schrieb: > Dein Hauptproblem dürfte wie gesagt ganz woanders liegen Exakt. Das GND Potential ist hier nicht das Problem.
Bruno V. schrieb: > Bei Galvanischer Entkopplung gilt das gleiche, nur dass die galvanische > Entkopplung auf einer (oder beiden) Seite(n) für einen floatenden GND > sorgt. Das mußt du näher erklären. Wenn beide Enden nur über Erdpotential (PE) verbunden sind und ansonsten keinerlei galvanische Verbindung besteht, wie kommt das Floaten zustande?
Icke ®. schrieb: > Wenn beide Enden nur über Erdpotential (PE) > verbunden sind ... sind sie nicht galvanisch getrennt.
Könnt ihr das GND Thema nicht woanders wiederkäuen? Das hilft im Fall des Threads nämlich kein bisschen.
Vielleicht mal ein Wiki starten mit den ganzen Möglichkeiten, Vor- und Nachteilen. Da kann jeder seine Verschaltung darstellen und erläutern.
Sherlock 🕵🏽♂️ schrieb: > Wie so vielen anderen Murks auch. Niemand wird gezwungen den "Murks" aus China zu kaufen - ist halt so schön billig und Geiz ist ja bekanntlich geil. Sherlock 🕵🏽♂️ schrieb: > Mag sein, dass man > GND nicht immer braucht, aber wenn doch, dann will und darf ich nicht an > meinen Arbeitsgeräten (Laptop) herum fummeln. Dann nimmt man eben einen passenden Adapter mit den entsprechenden Anschlüssen. Aber auch dann muß man aufpassen weil selbst die GND bei weit entfernten Geräten einen signifikanten Potentialunterschied haben können. Der Ausgleichsstrom fließt dann halt über die GND-Leitung mit allen bekannten Auswirkungen.
Gerade erst entdeckt, es gibt das passende Wiki schon: https://www.mikrocontroller.net/articles/RS-485 Gern Schaltbilder einfügen, mit und ohne Ground usw. Dann könnten wir hier beim Thema bleiben.
Hmmm schrieb: > Wenn Du Deinen USB-RS485-Konverter anschliesst, muss daher mit > ziemlicher Sicherheit dessen A-Ader (auch "A+", "RS485+" o.dgl. genannt) > dort angeschlossen werden, wo für Dich aktuell B ist, und umgekehrt. > > Ausprobieren kannst Du das am besten, indem Du das Original-Bedienteil > angeschlossen lässt und zusätzlich (!) den USB-RS485-Konverter > anklemmst, aber nur mitlauschen lässt, ohne von dort Daten zu senden. Ich habe die Bauteile mit einander verbunden und den USB RS485 Converter zum lesen der Daten angeklemmt und die Daten werden nur korrekt angezeigt wenn A und B am Converter vertauscht sind. Mit ist aufgefallen das die Signale am Oziloskop verändert haben wenn ich den Converter angeschlossen habe. ...Converter0 = Bauteile angeschlossen und nicht eingeschaltet und USB Converter nicht eingesteckt (Ruhesignal hat sich die Spannung verändert). ...Converter1 = Bauteile angeschlossen und eingeschaltet und USB Converter nicht eingesteckt(Ruhesignal Spannung geht langsam auf die Spannung vom Converter). ...Converter2 = Bauteile angeschlossen und eingeschaltet und USB Converter eingesteckt(Ruhesignal High geht sofort auf den Spannungslevel vom Converter und die Low Ruheleitung geht kurzzeitig in den Minusbereich)
Mario schrieb: > Ich habe die Bauteile mit einander verbunden und den USB RS485 Converter > zum lesen der Daten angeklemmt und die Daten werden nur korrekt > angezeigt wenn A und B am Converter vertauscht sind. Also wie vermutet, der Hersteller der Wohnmobilsteuerung hat eine andere Vorstellung von A und B, wenn die Zuordnung von ihm stammt. Mario schrieb: > Mit ist aufgefallen > das die Signale am Oziloskop verändert haben wenn ich den Converter > angeschlossen habe. Schalte mal am USB-RS485-Konverter die Terminierung ab, sofern möglich. Der Abschlusswiderstand bildet mit den Bias-Widerständen im Display oder der Steuerung einen Spannungsteiler. Das ist nicht weiter schlimm, solange die Differenz mindestens 200mV beträgt, aber wenn der Hersteller auch keine Terminierung verbaut hat, lass sie einfach weg.
:
Bearbeitet durch User
Mario schrieb: > Ich habe ... Warum hast du immer noch nicht auf die Taste "Rechenkanäle" gedrückt und die Differenz berechnet (siehe Benutzerhandbuch Kapitel 5.21 Rechenkanäle)? Damit könntest du genau das sehen, was auch der RS485-Empfänger wahr nimmt. Mario schrieb: > Mit ist aufgefallen das die Signale am Oziloskop verändert haben wenn > ich den Converter angeschlossen habe. Und WAS hat sich geändert? Wahrscheinlich ist der Eingang des Konverters irgendwie beschaltet. Das sollte dem Schaltplan des Konverters zu entnehmen sein. Mario schrieb: > (Ruhesignal High geht sofort auf den Spannungslevel > vom Converter und die Low Ruheleitung geht kurzzeitig in den > Minusbereich) Es ist keine gute Idee, im laufenden Betrieb die Masseverbindung zu unterbrechen bzw. herzustellen, wenn Potentialdifferenzen bestehen. Das sieht so aus, als ob dort ein Kondensator in einer Leitung ist, der sich erst umladen muss, wenn der Treiber abschaltet.
:
Bearbeitet durch User
Hmmm schrieb: > Schalte mal am USB-RS485-Konverter die Terminierung ab, sofern möglich. > > Der Abschlusswiderstand bildet mit den Bias-Widerständen im Display oder > der Steuerung einen Spannungsteiler. Das ist nicht weiter schlimm, > solange die Differenz mindestens 200mV beträgt, aber wenn der Hersteller > auch keine Terminierung verbaut hat, lass sie einfach weg. Zur Zeit ist kein Widerstand eingesetzt, da der USB Converter keinen hat. Rainer W. schrieb: > Warum hast du immer noch nicht auf die Taste "Rechenkanäle" gedrückt und > die Differenz berechnet (siehe Benutzerhandbuch Kapitel 5.21 > Rechenkanäle)? > Damit könntest du genau das sehen, was auch der RS485-Empfänger wahr > nimmt. Was für ein Benutzerhandbuch meinst Du? Rainer W. schrieb: > Es ist keine gute Idee, im laufenden Betrieb die Masseverbindung zu > unterbrechen bzw. herzustellen, wenn Potentialdifferenzen bestehen. > Dein Konverter ist wohl nicht galvanisch getrennt. Ich habe keine Verbindung getrennt wehrend des Betriebes.
Mario schrieb: > Zur Zeit ist kein Widerstand eingesetzt, da der USB Converter keinen > hat. Dann scheinen sehr hochohmige Bias-Widerstände verbaut zu sein. Aber kein Grund zur Sorge, die Kommunikation scheint ja auch störungsfrei zu klappen. Was mich aber irritiert, ist die in Ruhelage auf 0V runtergezogene Leitung. Was für einen Konverter hast Du da genau im Einsatz?
:
Bearbeitet durch User
Rainer W. schrieb: > Warum hast du immer noch nicht auf die Taste "Rechenkanäle" gedrückt und > die Differenz berechnet (siehe Benutzerhandbuch Kapitel 5.21 > Rechenkanäle)? Meintest Du die Differenz High-Low ( Bei mir B-A)?
Hmmm schrieb: > Was mich aber irritiert, ist die in Ruhelage auf 0V runtergezogene > Leitung. Was für einen Konverter hast Du da genau im Einsatz? Zur Zeit verwende ich diesen von Reichelt: https://www.reichelt.de/de/de/shop/produkt/raspberry_pi_-_usb-rs485-schnittstelle_ch340c-242783) Hast Du einen besser geeigneten? Mein Problem ist das ich das Display gegen die Raspberry Pi tauschen möchte und die Signale verkehrt herum ankommen oder gesendet werden, da die Steuerung "A" und "B" getauscht sind. Nach meiner Logik muss der Konverter doch die Signale in dem Spannungspegel auch gedreht werden. Vieleicht ist es auber auch schon zu Spät am Abend für solche gedanken.
Mario schrieb: > Zur Zeit verwende ich diesen von Reichelt Den hätte ich schon wegen der fehlenden GND-Klemme nicht genommen. Mario schrieb: > Hast Du einen besser geeigneten? Mit diesem habe ich gute Erfahrungen gemacht: https://www.reichelt.de/de/de/shop/produkt/usb_2_0_konverter_a_stecker_auf_rs-485-122187 Den darin verbauten FT232 setze ich seit vielen Jahren ein, der macht einfach stressfrei seinen Job und hat für RS485 eine tadellos funktionierende TX/RX-Umschaltung. Mario schrieb: > Mein Problem ist das ich das Display gegen die Raspberry Pi tauschen > möchte und die Signale verkehrt herum ankommen oder gesendet werden, da > die Steuerung "A" und "B" getauscht sind. Das ist doch kein Hindernis, einfach richtigrum anschliessen. Du hast hier kein technisches Problem, das war einfach nur die von den Herstellern nicht einheitlich gehandhabte Bezeichnung von A und B.
Mario schrieb: > Was für ein Benutzerhandbuch meinst Du? Das zu deinem Picoscope. Wahrscheinlich findest du die wesentlichen Infos, mangels speziellem Handbuch für die Version 7, bei der Vorgängerversion https://www.picotech.com/download/manuals/PicoScope6SoftwareUsersGuide-de.pdf Mario schrieb: > Meintest Du die Differenz High-Low ( Bei mir B-A)? Genau diese Funktion. > Rechenkanaele.png Wenn du für das "B-A"-Signal jetzt noch die 0-Linie sinnvoll auf das Gitter verschiebst, könntest du sogar sehen, wie kritisch die Drifterei des A Pegels ist, d.h. wo der 0-Pegel liegt und wie es mit dem 200mV-Fenster aussieht. Du könntest dieses Fenster sogar mit zwei Cursorn sichtbar machen, so dass du auf einen Blick erkennen kannst, ob das Signal noch im zulässigen Bereich bleibt. Schön ist die Drifterei auf jeden Fall nicht und du solltest besser noch klären, was da mit A komisch läuft. Eine schlecht angeschlossene Leitung kannst du ausschließen?
:
Bearbeitet durch User
Mario schrieb: > Zur Zeit verwende ich diesen von Reichelt: > https://www.reichelt.de/de/de/shop/produkt/raspberry_pi_-_usb-rs485-schnittstelle_ch340c-242783) Naja, wer billig kauft, kauft halt zweimal. Zu diesem Teil hätte ich auch kein Vertrauen und das nicht weil der GND fehlt. Das Teil von Hmmmm mach da einen deutlich besseren Eindruck und scheint ja nach seinen Erfahrungen auch zu funktionieren. Wenn man die Zeit rechnet die jetzt schon verdattelt hast, ist das Teil von Hmmmm aber locker drin.
Hmmm schrieb: > Mit diesem habe ich gute Erfahrungen gemacht: > > https://www.reichelt.de/de/de/shop/produkt/usb_2_0_konverter_a_stecker_auf_rs-485-122187 > > Den darin verbauten FT232 setze ich seit vielen Jahren ein, der macht > einfach stressfrei seinen Job und hat für RS485 eine tadellos > funktionierende TX/RX-Umschaltung. Habe ich gerade bestellt!!! Hmmm schrieb: > Das ist doch kein Hindernis, einfach richtigrum anschliessen. Du hast > hier kein technisches Problem, das war einfach nur die von den > Herstellern nicht einheitlich gehandhabte Bezeichnung von A und B. Das Problem was ich sehe ist das die Daten aus der Steuerung verkehrt herum (A-B) herauskommen. Wenn ich den USB- Converter die Anschlüsse vertausche bekomme ich das richtige Ergebnis aus der WoMo-Steuerung. Soweit so gut, sende ich jetzt aber ein Signal aus dem USB-Converter in die Steuerung, werden die Signale wieder gedreht und es kommen die falschen Daten in die Steuerung. Korrigiert mich wenn ich einen Gedankenfehler habe. Außerdem muss ich das "alte Display" abklemmen, da dieses sonst alle 100ms ein Pin (Daten) gesendet werden und ich nicht mit der Raspberry Pi auch meine Befehle senden kann.
Mario schrieb: > Soweit so gut, sende ich jetzt aber ein Signal aus dem USB-Converter in > die Steuerung, werden die Signale wieder gedreht und es kommen die > falschen Daten in die Steuerung. Nein. Mario schrieb: > Korrigiert mich wenn ich einen Gedankenfehler habe. Sei hiermit getan. Die A/B-Zuordnung gilt immer für Treiber und Empfänger, alles andere wäre absurd. Mario schrieb: > Außerdem muss ich das "alte Display" abklemmen, da dieses sonst alle > 100ms ein Pin (Daten) gesendet werden Ja. Wenn aber auch bei abgeklemmtem Display noch vernünftige Ruhepegel da sind, sitzen die Bias-Widerstände in der Steuerung, und Du kannst das Display ohne weiteres durch den RPi mit Konverter ersetzen. Falls nicht, wäre das auch kein Beinbruch, denn dieser Konverter führt neben GND auch die 5V vom USB raus, ggf. könntest Du also zwei Bias-Widerstände mit auf die Klemmen legen.
Mario schrieb: > Das Problem was ich sehe ist das die Daten aus der Steuerung verkehrt > herum (A-B) herauskommen. Woran machst du fest, was richtig herum ist? Das Startbit muss richtig rum auf den Leitungen liegen - fertig. Alles andere ist Schall und Rauch. Offensichtlich funktioniert doch deine Wohnmobilsteuerung mit dem alten Display und solange deine Signale prinzipiell anders aussehen, d.h. sich die Polarität vom Idle-Zustand oder vom Startbit im Differenzsignal davon unterscheiden, hast du etwas vertauscht angeschlossen. Falls der Decoder die Daten der funktionierenden Kommunikation nicht richtig erkennt, ist er falsch konfiguriert.
:
Bearbeitet durch User
Hallo Ihr Lieben, ES HAT FUNKTIONIERT!!! Ich habe mir den USB-RS485 Converter von DIGITUS angeschaft und GND mit 470 OHM an RS485- verbunden, genauso wie den 470 Ohm Widerstand mit 5V und RS485+ verbunden. Den 120 Ohm Widerstand habe ich erst einmal weggelassen da die ursprünglichen Signalpegel auch keinen hatte. Hiermit möchte ich mich bei allen Bedanken die mich so TOLL unterstützt und weitergebildet haben. Ohne euch hätte ich noch Wochenlang gegrübelt und verzweifelt. DANKE!!!!
Mario schrieb: > Ich habe mir den USB-RS485 Converter von DIGITUS angeschaft und GND mit > 470 OHM an RS485- verbunden, genauso wie den 470 Ohm Widerstand mit 5V > und RS485+ verbunden. Das solltest Du allerdings nur tun, wenn die Bias-Widerstände bisher im (jetzt demontierten) Display sassen. Ansonsten sitzen die jetzt parallel zu den bereits vorhandenen und könnten die Treiber unnötig belasten. Mal rein interessehalber: Was kannst Du mit der eigenen Displayeinheit mehr anstellen als mit der serienmässigen?
Hmmm schrieb: > Das solltest Du allerdings nur tun, wenn die Bias-Widerstände bisher im > (jetzt demontierten) Display sassen. Ansonsten sitzen die jetzt parallel > zu den bereits vorhandenen und könnten die Treiber unnötig belasten. Ich hatte die Widerstände eingesetzt und hatte gesehen das die Spannungspegel sehr ähnlich gegenüber dem alten Display war und deshalb habe ich auch die Terminierung weggelassen. Werde diese aber nochmal entfernen und schauen ob die Signale immer noch sauber gelesen werden. Hmmm schrieb: > Mal rein interessehalber: Was kannst Du mit der eigenen Displayeinheit > mehr anstellen als mit der serienmässigen? In dem alten Display konnte ich mir immer nur einen Wert zur Zeit anschauen (Spannung Fahrzeugbatterie, Spannung Boardbatterie, Wassertank, Abwassertank, Innentemperatur). Meine Überlegung ist mit der Raspberry Pi und einem 7 Zoll Display alle Informationen auf einer Seite gleichzeitig anzuzeigen. Außerdem kann ich die Anlage beliebig erweitern wie z.B. Gasflaschenfüllstand, Kühlschranktemperatur,... Hier gibt es dann keine Grenzen.
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.