Hallo zusammen Ich bastle gerade an meinem ersten Versuch vom RS485-Bus. Folgendes Setup habe ich: Rapsi->Addon-Board Raspicomm [1] -> 10cm TelefonDraht -> TI SN75176 -> TTL Serial auf Teensy 3.1 auf Serial1. Teensy und Raspi und RaspiComm haben die Gleiche Spannungsregeler und gleicher GND. SN75176 ist auch gegroundet. Serial läuft auf Raspi und auf Teensy mit 57600 bps. Ein Ticket (10 Byte) vom Raspi kann ich erfolgreich dem Teensy schicken. Siehe Bild IMG_0138.JPG. Die Differentialspannung ist prima, die Frequenz ist innerhalb 2%. Wenn ich nun vom Teensy über SN75176 schicke, sinkt die Differentialspannung auf ca 1.2 V. Dies scheint für den MAX RS485 auf dem RaspiComm zu wenig zu sein und "sieht" nichts logisches". siehe IMG_0151.JPG Hinweis: Gemessen wurde A und B gegen GND vom SN75176, der GND ist der gleiche für alle gelisteten Bauteile. Ich habe sämtliche Datenblätter und Schemata durchgeschaut und leider nichts gefunden, was mir Anhalt geben könnte. Es gibt im Web etliche "Case Studies" wie man das Signal auf A-B optimiert, leider habe ich kein case zu meinem Fall gefunden. A-B- werden auf dem raspicom gegen 5V, resp. GND ohmig gezogen und terminiert. Kann es sein, dass der billige SN75176 mit seinen unitLoads hier die Differentialspannung vermiest? Was könnte ich noch messen? [1] RaspiComm Schema: http://www.amescon.com/media/3444/RaspiComm_rev5.pdf
@ Markus Zelg (zelg) >Ein Ticket (10 Byte) vom Raspi kann ich erfolgreich dem Teensy schicken. >Siehe Bild IMG_0138.JPG. Die Differentialspannung ist prima, die >Frequenz ist innerhalb 2%. >Wenn ich nun vom Teensy über SN75176 schicke, sinkt die >Differentialspannung auf ca 1.2 V. Ist zwar wenig, reicht aber für RS485. Dort braucht man nur knapp über +/-200mV. >A-B- werden auf dem raspicom gegen 5V, resp. GND ohmig gezogen und >terminiert. Mit welchem Wert? >Kann es sein, dass der billige SN75176 mit seinen unitLoads hier die >Differentialspannung vermiest? Nein. >Was könnte ich noch messen? Kann es sein, dass der empfangende SN75176 beim 2. Versuch noch auf Senden steht? Dann arbeiten 2 Sender gegeneinander.
Falk B. schrieb: >>A-B- werden auf dem raspicom gegen 5V, resp. GND ohmig gezogen und >>terminiert. > > Mit welchem Wert? 560R (siehe Link zum Rapsicom vom TO) Markus Z. schrieb: > 10cm TelefonDraht -> TI SN75176 Sind zwischen 75176 und der Leitung noch Widerstände dazwischen, so wie auf dem Rapsicom, oder auch Pullup/Pulldowns? Oder geht der direkt auf die "Leitung"? Falk B. schrieb: > ...der empfangende SN75176 beim 2. Versuch noch auf Senden steht? Das könnte es sein. Hier ist der Rapsicom der Empfänger, der hat zwar keinen 75176, sondern ein MAX3140 drin, so nen Kombiteil UART + RS485 + Schnickschnack. Ist aber egal. Die Richtungsumschaltung (DE) ist auf dem Rapsicom über /RTS verdrahtet. Die gilt es tatsächlich zu prüfen. Denn weiterhin würde passen, dass auf der Leitung zwar noch Differenzspannung von 1.2V zu sehen ist. Der Rapsicom hat aber 2x47R in Reihe, so dass dahinter, also direkt am Transceiver der offensichtlich noch aktiver Treiber alles schön festhält. Dort wird der Differentpegel dann nur noch minimal sein, so dass nix "logisches" ankommt.
Laengerfristig wuerd ich mich vom 75176 trennen, denn der zieht zuviel fuer sich selbst. Etwa 40mA fuer nichts. Waehrend modernere Chips mit 0.4mA dabei sind.
Matz K. schrieb: > Die Richtungsumschaltung (DE) ist auf dem > Rapsicom über /RTS verdrahtet. Die gilt es tatsächlich zu prüfen. Danke, ja das wird es sein. Auf dem RaspiComm sehe ich NIX ankommen, d.h. der MAX will immer noch senden. 17 für 15 schrieb: >Laengerfristig wuerd ich mich vom 75176 trennen Klar! Ist nur so schneller Griff in die Kiste zu Hause... Ich möchte MAX487 einsetzen. Melde mich, wenn ich gemessen habe, resp. verstanden habe, wie der MAX auf recv. zu schalten ist.
Hallo zusammen Problem teilweise gelöst. IMG_0177.JPG zeigt wie der TI SN75176 korrekt auf Senden geschaltet wird. IMG_0178.JPG zeigt wie der MAX korrekt die Richtungsumschaltung (DE) setzt. Der Bus läuft soweit stabil über 10 cm Testdraht. Mich wundert einfach, warum das Signal vom MAX geschwächt ist, gegenüber dem TI-Chip. Annahme: Der Endwiderstand (auf RaspiComm fest verdrahtet) ist nicht optimal (aber innerhalb der EIA-485 Spez) für den MAX ausgelegt. Kann mir jemand das bestätigen? Hinweis zu den Bildern: Die 10ms Reaktionszeit des Teensy 3.1 ergibt sich auf Grund eines
1 | delay(10); |
aus Testzwecken und wird später auf unter 2ms optimiert.
Hallo Markus, Matz K. schrieb: > Sind zwischen 75176 und der Leitung noch Widerstände dazwischen, so wie > auf dem Rapsicom, oder auch Pullup/Pulldowns? Oder geht der direkt auf > die "Leitung"? Kannst Du diese Frage noch beantworten? Oder die Vermutung bestätigen, dass der 75176 direkt raus geht, ohne was dazwischen? Ich habe mir nochmal die Schaltung vom Rapsicomm angesehen. Und dann erklärt sich die Sache: Der MAX geht dort mit 2x 47R (R17, R20) in Serie raus auf die Leitung. Dahinter ist noch einen Parallelwiderstand von 120R (R19). Das ist der Spannungsteiler, der das Ausgangssignal des MAX herunterteilt! Von dem 75176 auf der anderen Seite nehmen wir an, dass er direkt auf die Leitung ballert. Deshalb ist dessen Pegel auf der Leitung ungebremst. Gruß Matz
Matz K. schrieb: > Der MAX geht dort mit 2x 47R (R17, R20) in Serie raus auf die Leitung. Wenn man eine Quelle mit 50 Ohm Innenwiderstand an eine Leitung mit 50 Ohm Wellenwiderstand anschliesst, wird die Spannung halbiert - das ist der Preis für die Anpassung. Georg
Georg schrieb: > Wenn man eine Quelle mit 50 Ohm Innenwiderstand an eine Leitung mit 50 > Ohm Wellenwiderstand anschliesst, wird die Spannung halbiert - das ist > der Preis für die Anpassung. Im Prinzip richtig. Diese Leitungstheorie greift aber erst so richtig bei Übertragungsspektren mit Wellenlängen die kleiner sind als die Kabellänge, oder umgekehrt: wenn die Kabellänge größer als die Wellenlänge ist. Markus schrieb es zwar nicht, den Oszillogrammen ist aber zu entnehmen, dass er etwa mit 56 kBaud arbeitet und (derzeit) 10 cm Leitung dazwischen hat. Bei 10 cm Leitung wird die Leitungstheorie bei etwa 3 GHz interessant. Wenn TO Markus aber längere Kabel dazwischen hängen möchte, dann sollte man sauber anpassen. D'accord.
:
Bearbeitet durch User
Matz K. schrieb: > Georg schrieb: >> Wenn man eine Quelle mit 50 Ohm Innenwiderstand an eine Leitung mit 50 >> Ohm Wellenwiderstand anschliesst, wird die Spannung halbiert - das ist >> der Preis für die Anpassung. > > Im Prinzip richtig. Diese Leitungstheorie greift aber erst so richtig > bei Übertragungsspektren mit Wellenlängen die kleiner sind als die > Kabellänge, oder umgekehrt: wenn die Kabellänge größer als die > Wellenlänge ist. Das stimmt schon so, was Georg schrieb. Er hätte höchstens noch dazu schreiben sollen, dass diese Leitung auch einen 50 Ohm Abschlusswiderstand hat. Allerdings sollte das der Normalfall sein. Dann halbiert sich die Spannung auch bei 0 Hz. Gruß Dietrich
Dietrich L. schrieb: > Das stimmt schon so, was Georg schrieb. Er hätte höchstens noch dazu > schreiben sollen, dass diese Leitung auch einen 50 Ohm > Abschlusswiderstand hat. Allerdings sollte das der Normalfall sein. Dann > halbiert sich die Spannung auch bei 0 Hz. Der differenzielle Innenwiderstand von RS485 Treibern entspricht nicht notwendigerweise der Leitungsimpedanz. Eine Halbierung wär eher Zufall. SN75176B: High ist 4V bei 20mA, 3V bei 90mA. => R(diff) = 15 Ohm. Low ist 0,9V bei 20mA, 1,5V bei 80mA. => R(diff) = 10 Ohm.
:
Bearbeitet durch User
Matz K. schrieb: > Markus schrieb es zwar nicht, den Oszillogrammen ist aber zu entnehmen, > dass er etwa mit 56 kBaud arbeitet und (derzeit) 10 cm Leitung > dazwischen hat. Ja, die 57600 Baud sind korrekt. Sowohl der MAX wie der SN halten sich an diesen Speed ziemlich genau (gemessen mit dem Oszi bei reinzoomen) Ja, aktuell habe ich testhalber 10cm Leitung. Die Busleitung wird am Ende mit ca 40 Teilnehmern gegen 50m sein. Der MAX ist ziemlich genau in der Mitte. Was bedeutet das für die Terminierung? Da muss ich wohl den RaspiComm die Terminierung der BusLeitung weg nehmen und diesen bei den Knoten am SN vornehmen. Korrekt? Soll ich den Parallelwiderstand von 120R (R19) auf dem RaspiComm belassen oder entfernen? Was ist eure Expertise?
Auf dem Rapsicom die 120R entfernen (da der Rapsicom in der Mitte der Leitung hängen soll). An beiden Enden der Bus-Leitung dann je 100 ... 120R dran. Und jeden Transceiver - wie das auch schon auf dem Rapsicomm realisiert ist - mit 2x 47R ... 56R in Serie an den Bus klemmen mit möglichst kurzer (oder keiner) Stichleitung Das sollte schon mal ein guter Startingpoint sein für 57kBaud und 50m. Wenn Du die Werte genauer haben willst, dann musst Du die Leitung ausmessen (es sei denn Du kennst den Wellenwiderstand).
Matz K. schrieb: > Das sollte schon mal ein guter Startingpoint sein für 57kBaud und 50m. Besten Dank. Ich habe verstanden, dass die 56Baud über 50m realistisch sind, wenn ich der Terminierung von Matz K folge. Ich habe vor den Bus schrittweise zu erweitern und zwischendurch die Signalstabilität mit dem KO auszumessen. Das mit dem Wellenwiderstand habe ich natürlich absolut nicht verstanden. ich werd mich mal schlau machen. Danke fürs Stichwort.
Matz K. schrieb: > Und jeden Transceiver - wie das auch schon auf dem Rapsicomm realisiert > ist - mit 2x 47R ... 56R in Serie RS485 mit sowohl Serien- wie auch Parallelterminierung? Wozu? Zumal zwar die SN75176 Varianten einen ziemlich niedrigen Innenwiderstand haben, deren sparsamere Alternativen aber einen deutlich höheren. The RS-485 Design Guide: http://www.ti.com/lit/an/slla272b/slla272b.pdf
:
Bearbeitet durch User
A. K. schrieb: > SN75176 Varianten einen ziemlich niedrigen Innenwiderstand haben Ist mir bewusst. Ich möchte eigentlich auf den MAX487 wechseln. Das heisst die Topologie wäre dann so was: [Terminierung]-[node 1: MAX487] --- [node n+1: MAX487] --- [RaspiComm mit MAX3140] --- [node x+1: MAX487] --- [node max.50: MAX487] - [Terminierung] über ca. 50m, linear, 3-drahtig mit gemeinsamen GND, mind. 57kBaud. Wie würde die Terminierung dann aussehen?
@Markus Zelg (zelg) >Wie würde die Terminierung dann aussehen? So wie überall! https://www.mikrocontroller.net/articles/RS-485#Weitere_Hinweise
Habe mich kurz eingelesen zum Thema Wellenwiderstand. Ja, somit ergibt sich der Serienwiderstand ziemlich klar, es sei denn ich wechsle grundsatzlich den Baustein/Prozessor zu einem viel schneller schaltenden.
@Markus Zelg (zelg)
>Ja, somit ergibt sich der Serienwiderstand ziemlich klar,
Nö, denn RS485 wird so gut wie NIE mit Serienterminierung betrieben,
eigentlich IMMER mit Parallelterminierung an beiden Busenden!
Markus Z. schrieb: > Ja, somit ergibt sich der Serienwiderstand ziemlich klar, Serienterminierung ist nur bei einer unidirektionalen 2-Punkt Verbindung brauchbar. Anzapfungen zwischendrin sehen Müll. In einem normalen RS485 Netz ist ein (Angst-) Serienwiderstand nicht erforderlich. Sehr wohl aber die Terminierungen an den Enden.
:
Bearbeitet durch User
Hier ein Versuch eure Information wider zu geben. Braucht es die grünen Widerstände auch? Ich dachte schon. Die Max links und Max rechts sind die letzten im Bus, in der Leitung "hängen" dann noch weitere Maxen...
A. K. schrieb: > Serienterminierung ist nur bei einer unidirektionalen 2-Punkt Verbindung > brauchbar. Anzapfungen zwischendrin sehen Müll. Die Serienterminierung ist bei den Empfängern eigentlich keine, denn diese lauschen in diesem Fall mit ihrem hochohmigen Eingangen auf der Leitung. Und dann fällt der Serienwiderstand nicht ins Gewicht. Damit sehen die Empfänger schon scharf. Aber irgendwo hat A.K. recht, wenn ich noch mal drüber nachdenke (wie gut dass wir das Forum haben), dann ist der Serienwiderstand einfach nur unnütz. Man kann einige funktionierende Sauereien ohne Anpassung und ohne Terminierung machen, aber das würde in einen anderen Thread passen. Wie schon Falk B. schrieb: > 56k7 Baud sind ein Witz Du wirst auf die Serienwiderstände verzichten können. Nun sind sie halt mal im Rapsicom drin. Schaden tun sie auch nicht. Der Pegel sollte ausreichen. Und bei 50m Kabel wird es mit 57kBaud im Zweifel auch ohne Endwiderstände laufen. Du siehst also: die Kiste wird laufen. Mach Dir keinen Kopf. Den Grund für Deine Pegelunterschiede haben wir auch gefunden; das was Du gemessen hast enspricht also voll den Erwartungen. -- Während meines Posts gerade reingekommen: Markus Z. schrieb: > Braucht es die grünen Widerstände auch? Nein. Das ist unnötige Belastung. Wenn ordentliche Terminierung, dann nur 1x mit Wellenwiderstand an jedem Ende. Fertig. Die 47 Serienwiderstände haben wir ja auch schon wegdiskutiert. Da habe ich nicht verstanden, warum die Du auf dem Rapsicom nun rausgemacht hast (steth auf der Skizze) und beiden anderen welche rein machst.
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.