Arduino Expansion RS485 120 Ohm Terminierung

Hallo,

ich habe ein RS485 Netzwerk aufgebaut. Jetzt meine Frage bezüglich dem Abschlußwiderstand (120 Ohm) am Ende der Linie:
Wie man aus der Schematic sehen kann, ist da schon ein 120 Ohm Widerstand zwischen A und B aufgelötet. Wird trotzdem noch ein Abschlußwiderstand benötigt? Leitungslänge ca. 300m. Baudrate 19200. 5 Teilnehmer. Vielen Dank schon mal im voraus!

Die 120 Ohm sind auf der rechten Seite (R7)

Bei fünf Teilnehmern bleibt der erste Teilnehmer original/unverändert.
Beim letzten Teinehmer sollte die Speisung der Buslinie (2 x 2.2k Widerstände) entfallen. R7 bleibt drin.
Bei den drei mittleren Teilnehmern entfällt die Speisung der Buslinie und der 120R Widerstand.
Soweit mein Verständnis von RS485 wenn der Bus linienförmig und nicht sternförmig aufgebaut ist.

Gruß, Peter

Das bedeutet, ich müsste bei den mittleren Teilnehmern die Widerstände auslöten. Wieso werden die Platinen dann so produziert?

Schau dir bitte die div. Beispiele im Internet an wie RS485 vekabelt wird.

lifa2013:
Das bedeutet, ich müsste bei den mittleren Teilnehmern die Widerstände auslöten. Wieso werden die Platinen dann so produziert?

Die Platinen werden wohl so produziert weil man die Widerstände zur Funktion braucht.
Man könnte die Widerstände weglassen und der Kunde lötet sie bei Bedarf rein, oder man baut sie gleich ein und wenn sie stören lötet der Kunde sie aus.
Bei nur zwei Teilnehmern wird es wohl auch so wie es ist funktionieren, aber bei mehreren ????

Jetzt könnte man natürlich verschiedene Versionen dieser Platinen herstellen, was den Kunden der das Prinzip nicht kennt sicherlich verwirren wird.
Oder man könnte Jumper auf die Platinen packen mit denen man die Widerstände zu- und abschalten kann. Dann eine Beschreibung dazu und man wäre fein raus, aber das kostet dann wohl zu viel für solch billige Massenware.

Ok, dann werde ich sie auslöten und mal sehen was passiert. Alle Arduinos werden von einem externen Netzteil (12V) über das Buskabel (Cat5) versorgt. Soll ich noch zusätzlich den Schirm bei jedem Teilnehmer auf Masse ziehen?

Welches Expansion RS485 hast du denn?

Mein Problem bestand darin, dass die Kommunikation mit dem ersten Slave sehr gut geklappt hat. Bei den weiteren dauerte die Antwortzeit sehr lange. Wenn der Kontakt hergestellt war, klappte es auch. Aber jeder Erstkontakt dauert mehrere Sekunden. Die Wartezeit kommt dann wohl von den Widerständen (BIAS 2,2 kOhm)?

@skorpio
Eigentlich wollte ich das Shield von DFROBOT (V5) einsetzen. Die werden aber leider nicht mehr produziert. Gibt nur noch die Version V7 ohne RS485.

Dieses hier
http://www.miniinthebox.com/de/io-erweiterungs-schild-v5-xbee-sensor-schild-fuer-arduino-rs485-arbeiten-mit-amts-arduino-boards_p903344.html

Aber ich möchte in Zukunft die Bauteile die gepostet hast einsetzen.

So ein Rotes Shield hab ich auch, aus dem miniinthebox Link.
Hier gibts die wohl noch:
http://nicegear.co.nz/arduino-shields/dfrobot-io-expansion-shield-for-arduino-v5/

Ich hab MAX485 Chip und so ein Modul aus meinem letzten Post.
Zum testen kann man so ein Modul wohl nehmen aber wenn man die auf ne Platine löten will, verbrauchts schon viel platz. Deswegen die MAX485.

@skorpio

Und du hast für dein Projekt auch die Widerstände ausgelötet?

Ein weiterer Punkt (wie schon oben erwähnt) :
Bei großen Leitungslängen kann es durch den Spannungsabfall zu größeren Potentialdifferenzen zwischen den Busteilnehmern kommen, die die Kommunikation behindern. Das kann durch Mitführen der Masseleitung verbessert werden.

Kann ich als Masseleitung den Schirm auf Masse ziehen?

Eigentlich haben schon alle Teilnehmer durch die gemeinsame Versorgung von einem externen Netzteil eine gemeinsame Masse.

Hab da nix ausgelötet.
Ich bin ja kein Elektriker, keine Ahnung ob das Masse mitführen verbessert. Denke eher nicht. Ich weiß nur dass man Masse mitführen muss, damit die kommunikation funktioniert.
Hier hast was zu lesen:
http://forum.arduino.cc/index.php?topic=206317.0

hi,

das mit der schirmung würde mich auch interessieren. davon abgesehen, daß ja nicht alle stecker oder buchsen dafür geeignet wären, es gibt ja auch welche rein aus plastik, da hängt die schirmung in der luft.
ich hab' aber jetzt mit metall-steckern und -buchsen nachgemessen, da hab ich bei einem 15m-kabel 0 ohm widerstand. sollte also gehen mit masse mitführen.

die frage bleibt, wie es optimal wäre:
masse an schirmung, aber nicht als versorgung.
masse an schirmung als versorgung für die clients (und einsparen einer der 8 leitungen).
erde an schirmung.
nichts an schirmung.

alles natürlich unter dem gesichtspunkt der störungsfreien RS485-verbindung.

daß die massen "irgendwie" verbunden sein müssen, ist klar...

gruß stefan

Den Kabelschirm würde ich einseitig an dem RS485 Modul auf Masse klemmen bei dem auch alle Widerstände drin bleiben.
Alternativ kann man den Schirm auch einseitig Erden, dann aber nicht mit Masse verbinden.

Die 120 Ohm Widerstände am Anfang und Ende der RS485 Linie dienen dazu Reflektionen an den Kabelenden zu reduzieren.
Üblicherweise entspricht der Wert dieser Widerstände dem Wellenwiderstand der verwendeten Leitung.
Der Wellenwiderstand ist vom Kabeltyp abhängig und beträgt bei cat 5 etwa 100 Ohm.

Wenn man nun bei fünf Modulen den 120 Ohm Widerstand drin lässt ergibt sich bei Paralleschaltung ein Widerstand von 24 Ohm.
Dieser Widerstand belastet die Treiber IC's möglicherweise so stark, dass eine sichere Übertragung nicht mehr funktioniert.

Ich hoffe die 300m Kabel werden nicht so verlegt, dass zwischen den Teilnehmern größere Potentialunterschiede entstehen können ( z.B. im Freien ). Sonst sind beim nächsten Gewitter die Probleme schon vorprogrammiert :0 :0

Wie weit ist der positive oder negative Einfluß die Speisung der Buslinie (2 x 2.2k Widerstände) bei jedem Teilnehmer beizubehalten?

Wieso sind die Widerstände für die Speisung der Buslinie so unterschiedlich? 2,2 k, 1k, 470 Ohm.......?

lifa2013:
Wie weit ist der positive oder negative Einfluß die Speisung der Buslinie (2 x 2.2k Widerstände) bei jedem Teilnehmer beizubehalten?

Ich kann das pauschal nicht beantworten.
Wahrscheinlich ergibt sich ein negativer Einfluss mit steigender Anzahl der Busteilnehmer.
Es ist durchaus möglich dass fünf Busteilnehmer mit eingebauten 2,2k noch funktionieren.
Probiere es einfach aus. Lass auch die 120 Ohm erst mal drin.
Klemm die 5 Teilnehmer mit kurzen Kabeln (jeweils nicht kürzer als 1m und verdrillte Adern) zusammen und schau ob es funktioniert.
Wenn es nicht klappt würde ich zuerst bei den 3 Teilnehmern in der Mitte die 120 Ohm rausnehemen und nochmal probieren.
Ein Testskech der alle paar Sekunden ein Datenpaket auf den Bus sendet hilft dabei sicherlich. Gerne auch mal mit höheren Baudraten (bis 115200) testen, dann lassen sich mögliche Probleme leichter erkennen.

lifa2013:
Wieso sind die Widerstände für die Speisung der Buslinie so unterschiedlich? 2,2 k, 1k, 470 Ohm.......?

Das hängt wohl zum Teil an der möglichen Treiberleistung der Verwendeten IC's und ihrer maximalen Baudrate.
Es gibt RS485 Treiber die 30, 60 oder 120 Teinehmer am Bus zulassen und 1, 5, 10 oder 20 Mbps können.

Vielen Dank für die vielen Infos. Nach dem entfernen der Widerstände funktionierte die Kommunikation problemfrei.

Ich habe mir dann noch zusätzlich ein paar RS485 TTL Baustein von Ebay ( http://www.ebay.de/itm/MAX485-Module-TTL-Switch-Schalter-to-RS-485-Module-RS485-5V-Modul-CP12006-A33-/271412383786?pt=Wissenschaftliche_Geräte&hash=item3f3170502a ) besorgt, die ich dann als Master einsetzte. Die funktionierten aber nur ein paar Tage und dann gab es Probleme mit der Kommunikation (Die Fehler kündigten sich durch das dauerhafte Flackern der RX an). Nach dem Tausch der Schnittstelle (neue) ging es wieder problemlos. Ich hatte von 15 Stücken nur 5 Stück die dauerhaft funktionieren. Hatte von euch schon mal wer solche Troubles?

Ich hatte mal am Mac so ein Modul mit nem UNO getestet, da hats einmal nach verbrannt gerochen, daraufhin hab ich den Chip angefasst und den Finger verbrannt. Der PC hatte dann ein Kernel Panic nach dem reboot gezeigt.
Sobald ich den UNO vom USB getrennt hatte, machte der PC immer ein reboot.

ich hab' mir mal ein gulasch gekocht, da hat's auch nach verbrannt gerochen, daraufhin hab' ich den topf angefasst und die finger verbrannt.
ich hatte panik.

ein reboot hat's nicht gebracht, das gulasch war hin.

Gut dass es Frauen gibt, da braucht man wenigstens beim gulasch nicht die Finger verbrennen.