Forum: Mikrocontroller und Digitale Elektronik Welche Widerstände bei RS485


von Ralf P. (Gast)


Lesenswert?

Hallo,

welche widerstände sollte man den Bausteinen z.B. MAX485 an den
Datenleitungen wählen, lt. Datenblatt muss nur 1x Widerstand zwischen a
und B-Leitung am Ende des Busses ran, andere sagen 1x von + nach A, von
A nach B und von B an GND, ich habe hier Werte 100k und 1k zwischen A
und B.

Was nehmt Ihr, also meine längste Leitung ist 20m....

Ralf

: Gesperrt durch Moderator
von Addy (Gast)


Lesenswert?

Hi,

verwende + --> A und B --> - jeweils 10k und A <-> B 1k, und das je
Seite, als 500R Gesamtwiderstand. Länge auch so ca. 20m

Funktioniert bis jetzt auch mit hoher Geschwindigkeit ohne Probleme.
Ich benutze die SLN76156. (Genaue Bezeichnung weis ich grad net sollte
aber hinkommen;-))

Grüße
Addy

von karadur (Gast)


Lesenswert?

Hallo

an die Enden der Leitung gehören jeweils 120R.
Um eine Failsafebeschaltung zu erhalten kommen dann nochmal z.B. 10k
von + nach A und 10k von B nach GND, das verhindert Fehler an den
Empfängern wenn die Sender abgeschaltet sind.

von Klopfer (Gast)


Lesenswert?

Ähem, hier herrscht wohl etwas Verwirrung, da es hier wieder zwei
verschiedene Antworten bezüglich des Abschlusswiderstandes gibt.

Also:
a) Der Widerstand "zwischen" den Anschlüssen A und B nennt sich
Terminierungswiderstand, und dieser gehört nicht zum Chip, sondern zum
Kabel. Der dämpft nämlich Reflexionen an den Kabelenden und sollte etwa
dem Wellenwiderstand des Kabels entsprechen. Meistens sind das 100 Ohm
(Flachbandkabel oder auch Cat3/Cat5), kann auch etwas höher liegen,
z.B. 120 Ohm, eben Kabelabhängig. So sehr kritisch ist es bei RS485
aber noch nicht. 500 Ohm ist aber zu hoch, außer die Eingangsimpedanz
des Empfängers ist schon recht niederohmig, sodaß die dann parallel zum
Widerstand wieder 100-120 Ohm ergibt.
Die Länge des Kabels ist für den Wert des Widerstandes ohne Belang.

b) Wenn Du den MAX485 nimmst, sind die zusätzlichen
Failsafe-Widerstände (10K zwischen +/A und GND/B) nicht erforderlich,
der Chip hat interne FailSafe-Funktionalität. FailSafe bedeutet, daß
auch bei offenem Eingang (also kein Kabel angeschlossen bzw. Sender
off) der Ausgang dem Empfängers trotzdem einen definierten Zustand
liefert.
Bei anderen Chips braucht man die Widerstände vielleicht, da hilft nur
ein Blick ins Datenblatt, ob der Receiver selbst schon FailSafe ist
oder nicht.

von Ralf P. (Gast)


Lesenswert?

Hallo,

ich habe den SN75176 hier, ich kann ersehen, ob der auch die
"Aussenwiderstände" braucht...

Gruss
Ralf

von Ralf P. (Gast)


Lesenswert?

Hallo,

Hier klappt nix, ich dachte, wenn ich 2x AVR mit RS232 lauffähig habe,
klappt es auch mit RS485, klar, ich muss den Sender auf Sendung
schalten und den Empfänger definiert auf Empfang stellen, ich habe
alles geprüft usw.

Einer sagt nun : Das RS485 ist recht kompliziert, andere sagen, es gibt
kein festes Protokoll, wichtig ist nur der Betrieb Multimaster usw...

Ralf

von Gast (Gast)


Lesenswert?

RS485 ist eigentlich recht easy. Wie bei rs232 muß man natürlich die
geschwindigkeit und anz. der stopp bits kennen (z.b. 8n2 bei dmx). ein
120 ohm terminator pro kabelende und das wars (kabellänge 100m). ich
verwende den max485. quarz vorhanden ????

von Thorsten F. (thorsten)


Lesenswert?

ralf,

ich weiß nicht inwieweit du deine rs232 kommunikation dem bus angepasst
hast.
kleine "stolperfalle": du muss am sender so lange warten, bis
wirklich alle bits von der UART auf den bus gesendet wurden.
(TXC bit abfragen)

das problem hatte ich z.b. als ich das 1. mal mit rs485 zu tun hatte.

mittlerweile läuft ein kleiner bus (1 master, 2 slaves) mit den SN75176
treibern und an den leitungsenden jeweils 120 Ohm.

gruß

von Ralf P. (Gast)


Lesenswert?

Hallo,

in wie fern angepasst, ich nutze BASCOM und 16MHz-Quarz, die eine
Baugruppe sendet nur, die andere empfängt nur, mir RS232
Direkt-Verbindung läuft alles astrein...

Gruss

von Thorsten F. (thorsten)


Lesenswert?

ich habe keine ahnung von bascom, aber stell dir mal vor:

du schaltest den rs485 treiber deines masters auf senden,
du schickst der UART das datenbyte,
du schaltest den rs485 treiber wieder auf empfangen?!
(kann ich mangels quellcode schlecht sagen)

ergebnis -> der sender wird abgeschaltet bevor die UART mit dem senden
fertig ist -> kommt nix vernünftiges auf den bus.

poste doch mal n bisschen code

gruß

von Ralf P. (Gast)


Lesenswert?

Hallo,

also der Sender ist ständig auf Senden, der Empfänger ständig auf
Empfang....

Der Sender sendet mit Print "test"

Der Empfänger signalisiert keinen Empfang, ohne die RS485-Geschichte
dazwischen läuft es...

Gruss

von olfi (Gast)


Lesenswert?

Ich nehme an Du hast zum Test derzeit nur einige cm Leitung, da brauchst
Du dir wenig Sorgen um die Terminierung zu machen.

Wie steuerst Du den 75176 an? Mit dem µC oder hast Du DE und RE fest
verdrahtet?
Hast Du mal gemessen ob wirklich die Daten auf dem Bus liegen?
Wenn Du kein Osko hast lege statisch am Eingang (DI) einmal 0 und
einmal 1 an.

Gruß, olfi

von Ralf P. (Gast)


Lesenswert?

Hallo,

ich hbae DE und RE verbunden und dann fest auf GND bzw. 5V
geschaltet...

Gruss

von olfi (Gast)


Lesenswert?

Und wenn du logisch 0 und dann 1 an DI des Senders anlegst? Kannst Du an
den Anschlüssen A und B nun die entsprechende Spannung messen?

von Frank G. (frank_g759)


Lesenswert?

Hallo,
ich habe zwei RS485 to Ethernet Converter über Powerlan laufen. 
Konfiguration wie folgt.
SDM630, A und B auf Converter.
Von  Converter über Netzwerkkabel auf PowerLan in Steckdose.
Im Gartenhaus (ca.25m Entfernung)
Steckdose PowerLan über Netzwerkkabel auf Converter und von da aus von A 
u. B auf Kommunikationskabel Wechselrichter PV-Anlage.
Wie und in welcher Größe muss ich da die Widerstände setzen?
Habe 120 Ohm zwischen A u. B auf beiden Convertern. 390 Ohm jeweils
zwischen A und +5V und B gegen GND und das auch am Anfang wie am Ende. 
Bringt das überhaupt was, oder nützt das nix, wenn die RS485-Strecke 
über das 220VNetz geführt wird? Ich habe keine Ahnung davon, muss es 
aber irgendwie am Laufen halten.
Kann jemand helfen?

von Stefan F. (Gast)


Lesenswert?

Frank G. schrieb:
> Habe 120 Ohm zwischen A u. B auf beiden Convertern.

Gut, beide Enden des Kabel müssen terminiert werden.

> 390 Ohm jeweils zwischen A und +5V und B gegen GND

Da bin ich viel mehr Ohm gewohnt.

> und das auch am Anfang wie am Ende.

Die sollten nur einmal vorhanden sein. So belastest du den Bus zu stark. 
Funktioniert er noch?

> wenn die RS485-Strecke über das 220VNetz geführt wird

Ich dachte du hast Ethernet über PowerLan getunnelt. Was hat denn nun 
deine RS485 Leitung damit zu tun? Zeichne mal auf, was du gemacht hast. 
Bilder sprechen mehr als Worte. Zeichne die gesamte Strecke vom Sender 
bis zum Empfänger.

Und nächstes mal bitte eine neue Diskussion beginnen, wenn sie nicht die 
vorhandene fortsetzt.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Frank G. schrieb:
> Hallo,
> ich habe zwei RS485 to Ethernet Converter über Powerlan laufen.
> Konfiguration wie folgt.
> SDM630, A und B auf Converter.
Bitte fang für ein KOMPLETT NEUES Thema einen NEUEN Thread an.

Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.