Rs485 ein Rätsel?!

Gast #5699320
Lesenswert?

Hallo
Ich verstehe irgendwie die RS485 nicht glaube ich.
Also ich habe mir einige Thermometer Module gebaut (Avr, SN75176 und 
Stepdown auf Platine)
Diese Platinen 5 Stück davon habe ich mit je 4 Leitungen verbunden Vcc 
Gnd Rs485 + und Rs485 -
Auf dem Bus liegen 24V als Versorgung. Jedes Modul hat einen 5v 
Stepdown.

Als Daten verwende ich 9600 Seriell. Alle Teilnehmer sind auf Empfang 
und warten darauf antworten zu dürfen. Erst dann schalten sie den 75176 
auf senden, senden 8 byte und gehen dann wieder auf empfangen.

Ich habe zwei 120 Ohm Endwiderstände. Leitungen da noch auf dem 
Schreibtisch unter 1 Meter

Soweit sogut. Es funktioniert aber nur wenn der PC USB RS485 Mit 
angeschlossen und am USB hängt. Trenne ich die erbindung zum PC kommen 
keine Signale mehr durch.

Ich habe auch schon widerstände von Vcc und Gnd zum Bus versucht weil 
das in vielen Beispielen gemacht wird aber leider auch ohne Erfolg.

Habt ihr eine Idee was ich da Falsch machen könnte?
Gast #5699325
Lesenswert?

Du hast die RS485 Massse vergessen. Solange es über usb verbunden ist, 
ist es über die Usb Masse verbunden. Steckst du ab fehlt in deinem 
System der Massebezug. Auch wenn es rs485 ist, so ist die Common Mode 
Range eines RS485 Transceivers nicht sehr groß. Zieh eine 
masseverbindung nach ...
Persönliche Seite #5699333
Lesenswert?

Reiner schrieb:
> Soweit sogut. Es funktioniert aber nur wenn der PC USB RS485 Mit
> angeschlossen und am USB hängt. Trenne ich die erbindung zum PC kommen
> keine Signale mehr durch.

Was für Signale sollen denn da "durchkommen", wenn Du den RS485-Master 
entfernst?

Deine Geräte warten darauf, daß ihnen jemand etwas sendet - dieser 
Jemand ist Dein PC. Wenn der nicht da ist ...
Gast #5699339
Lesenswert?

Danke schon mal für die Antworten.
Also Masse habe ich doch dadurch das ich alle Geräte aus einem 
Gemeinsamen 24V Netz versorge?
Welche Daten da noch durchkommen sollen habe ich vergessen zu erzählen. 
Ein Avr hat ein Display und fragt die anderen ab. Also es gib einen 
"Master".

ge-nka schrieb:
> Bias-Widerstände einsetzen?

Das habe ich schon versucht leider ohne erfolg. Versucht habe ich 470Ohm 
und 4,7k Weil das Internet da sehr großzügig ist von 300 Ohm bis 10K 
habe ich schon alles gesehen.
Gast #5699345
Lesenswert?

Reiner schrieb:
> Also Masse habe ich doch dadurch das ich alle Geräte aus einem
> Gemeinsamen 24V Netz versorge?

Kommt darauf an, was der DC/DC zur Erzeugung der 5V mit der Masse macht.

Reiner schrieb:
> Jedes Modul hat einen 5v
> Stepdown.

Es gibt solche DCDC-Wandler mit Potentialtrennung (da geht der 
Massebezug verloren) und welche ohne Potentialtrennung (da bleibt er 
erhalten).

Ansonsten kann ich nur empfehlen, was auch andere schon gesagt haben: 
mach eine Skizze von deinem Netzwerk: damit wird das Problem viel klarer 
als mit deiner Beschreibung in Textform.
#5699349
Lesenswert?

Klingt für mich alles danach daß Du den USB RS485 Adapter vom USB
trennst aber nicht vom Bus. Der wird nicht Tristate sein wenn er
stromlos ist.
Vermutlich geht einfach alles an Datensignal über die Schutzdioden
auf dem Treiber des Adapters flöten und versorgt den Converter Chip
im Adapter.
Gast #5699364
Lesenswert?

Die Stepdown leiten Masse durch habe ich grade nochmal durchgemessen. 
Wenn ich den USB Wandler vom PC abziehe oder aus dem Rs485 oder beides 
macht keinen unterschied. Ich habe noch einen 75176 mit nur einer Led am 
Ausgang gebaut, Normal leuchtet diese und geht aus im Takt wenn Daten 
übertragen werden. Trenne ich die Verbindung zum PC geht sie aus und 
geht an wenn Daten gesendet werden. Irgendwie inventiert?!
Moderator (Firma: Titel) Persönliche Seite #5699372
Lesenswert?

Reiner schrieb:
> Trenne ich die Verbindung zum PC
Wo trennst du die Verbindung zum PC? Nimmst du den Teinehmer weg vom 
RS485 Bus, oder steckst du nur den USB aus und lässt den Teilnehmer ohne 
Stromversorgung am RS485 Bus? (wurde zwar schon gefragt, aber noch nicht 
beantwortet...)

Und falls du ein Messgerät dein Eigen nennst: welche Spannungen has du 
denn im "OK"-Fall und im Fehlerfall an den Datenleitungen gegen Masse?
Gast #5699383
Lesenswert?

Ein Schaltbild gibt es nicht. Ich kann es nur beschreiben.
Im Ok fall habe ich 5,06v und 4,82v auf dem Bus während keine Daten 
unterwegs sind.
Ohne Usb 4,62v und 4,86v.

Ich trenne Die zwei Busleitungen vom Usbstick. Es gibt dann nur noch die 
von mir gebauten Teilnehmer.
Es gibt keine Verbindung Masse von meinen Geräten zu Masse Pc.
#5699392
Lesenswert?

Moin,

Reiner schrieb:
> Ein Schaltbild gibt es nicht. Ich kann es nur beschreiben.

Keine Arme, keine Kekse.

Haeng' ein Scope dran, guck' dir die Signale an.
Wenn's mit drangehaengtem Scope auch wieder funktioniert, wirds schon 
was mit Masse zu tun haben.
Wenn nicht, wirst du schon irgendwelche Unterschiede auf dem Scope 
erkennen, wenn der PC-USB Adapter dranhaengt oder nicht.

Gruss
WK
Gast #5699400
Lesenswert?

Und auch mit dem Usb Stick in einem 5v Netzteil funktioniert es.
Also irgendwie muss es wohl mit der Versorgung Zutun haben.
Also doch Bias? Welche Widerstände würdet ihr da vorschlagen?
470Ohm und 4,7K habe ich schon versucht
Moderator (Firma: Titel) Persönliche Seite #5699401
Lesenswert?

Reiner schrieb:
> Im Ok fall habe ich 5,06v und 4,82v auf dem Bus während keine Daten
> unterwegs sind.
> Ohne Usb 4,62v und 4,86v.
Die absolute Spannung scheint mir in beiden Fällen zu hoch und die 
Differenz zu gering. Eigentlich ist erst eine Differenz >300mV ein 
gültiger Pegel.

Welche Transceiver verwendest du denn? Wie sind die versorgt? Welcher 
treibt denn da eine solch hohe Spannung auf den Bus?

Jetzt wirds dann tatsächlich langsam Zeit für den öfters geforderten 
Schaltplan...
Gast #5699409
Lesenswert?

Reiner schrieb:
> Im Ok fall habe ich 5,06v und 4,82v auf dem Bus während keine Daten
> unterwegs sind.
> Ohne Usb 4,62v und 4,86v.

Das klingt für mich nach einem prinzipiellen Fehler in deinem Busaufbau. 
der SN75176 ist ein 5V Typ. Wenn du nun schon Experimente mit einem Bias 
Netzwerk + Bus Abschluss gemacht hast. Denn ansonsten müsste sich ja 
hier im Bus open Fall ca. 2.5V +/- 0.2V für A/B einstellen.
Also scheint hier irgendwas kräftig A&B in eine Richtung zu ziehen.
Gast #5699426
Lesenswert?

Als Treiber verwende ich SN75LBC176
Die Hohe Spannung war der Passende Hinweis. Dankeschön :)
Ich habe erst nur meinen Master mit dem Usb Stick vermessen und hatte ca 
200mV auf dem Bus Dann habe ich sie nacheinander zugesteckt und bei 
einem hatte ich dann wieder 4,v. Wenn man diesen raus lässt klappt die 
Verbindung auch ohne den Usb Stick.
Also vermutlich ein defekter Treiber.

Dankeschön ;)

Und ja ich werde noch einen Schaltplan machen
Moderator (Firma: Titel) Persönliche Seite #5699432
Lesenswert?

Reiner schrieb:
> Ich habe erst nur meinen Master mit dem Usb Stick vermessen und hatte ca
> 200mV auf dem Bus
Auch das ist zu wenig, da ist noch was faul!

Der SN75LBC176 treibt am Ausgang normalerweise eine Differenzspannung 
von größer 1,5V!

Und du hast ganz speziell Glück, dass er mit sich deiner 
Differenzspannung von 0,2V am Eingang zufrieden gibt. Der 
RS485-Standard verlangt da mindestens(!) 0,3V für einen gültigen Pegel.
Gast #5699442
Lesenswert?

Aber mehr gibt es ja in dem Bus nicht. Dann müssten ja schon alle 
Treiber fehlerhaft sein? oder wodurch wird das beeinflusst?
Ich habe ja jetzt im Bus nur 5 Identische Treiber und zwei 120 Ohm's am 
ende.
Alles über 5v Versorgt (Ich habe eben zum testen die Stepdown raus 
genommen und alles zusammen am Labornetzteil)
Auf dem Usb wandler sitzt auch schon so ein Treiber da ich den Original 
mal gebraten hatte.
Ausschießen kann ich aber Fehlerhafte Treiber nicht weil ich die aus 
China bestellt habe und recht wenig dafür bezahlt habe.
Gast #5699450
Lesenswert?

Wie sehen Deine Signale aus?
Wie sehen die Betriebsspannungen aus?
Was ist mit Deinen Enable-Signalen?
Gibt es Kurzschlüsse oder Unterbrechungen?
Ist alles richtig verschaltet? (Überprüft mittels Schaltplan!!!)
Gast #5699461
Lesenswert?

Die Signale sind Sauber 5v aus einem AVR
Betriebsspannung ein Gutes Analoges Labornetzteil 5v Nahezu perfekt
Enable Signale werden nur gesetzt wenn jemand sendet. Die 0,2v Sind 
gemessen als keine Daten übertragen wurden. Also kein Master aktiv.
Kurzschlüsse und Fehler ich hoffe nicht ;) es Funktioniert jetzt ja auch 
wieder wie es sollte. Nur sind die Pegel nicht da wo sie sein sollten.
Moderator (Firma: Titel) Persönliche Seite #5699475
Lesenswert?

Reiner schrieb:
> Enable Signale werden nur gesetzt wenn jemand sendet.
Da haben wir den "Messfehler"...

Reiner schrieb:
> Die 0,2v Sind gemessen als keine Daten übertragen wurden. Also kein
> Master aktiv.
Du solltest natürlich schon die aktiven Signale bei einer Übertragung 
messen und angeben, denn die Übertragung geht ja schief, und nicht der 
Ruhezustand, oder?
Ich war bisher davon ausgegangen, dass der Bus auch ohne Übertragung vom 
"Master aller Master" aktiv gehalten und getrieben wird, dass also 
immmer 1 Teilnehmer aktiv auf dem Bus ist.
Wenn das nicht der Fall ist, dann solltest du den Bus mit Widerständen 
auf definierte Pegel "vorspannen".

Reiner schrieb:
> Funktioniert jetzt ja auch wieder wie es sollte.
Mir würde das nicht reichen.
> Nur sind die Pegel nicht da wo sie sein sollten.
Wo sollten sie denn sein, wenn auf dem Bus kein Transceiver treibt?
Gast #5699485
Lesenswert?

Lothar M. schrieb:
>> Funktioniert jetzt ja auch wieder wie es sollte.
> Mir würde das nicht reichen.

Hmm ist ein Defekter Bustreiber nicht Grund genug?
Nein der Bus ist die meiste Zeit ohne einen Aktiven Master.

Lothar M. schrieb:
> dann solltest du den Bus mit Widerständen
> auf definierte Pegel "vorspannen".

Wir würde ich das anstellen? Über Bias?

Ich muss noch viel Lernen glaube ich ...
Moderator (Firma: Titel) Persönliche Seite #5699490
Lesenswert?

Reiner schrieb:
> Nein der Bus ist die meiste Zeit ohne einen Aktiven Master.
Dann läuft da ja nie was los, weil alle bis zum Sanktnimmerleinstag 
warten,
denn Reiner schrieb:
>>> Alle Teilnehmer sind auf Empfang und warten darauf antworten zu dürfen.
Irgendwer muss doch die Hosen anhaben und die Abfrage starten...

Reiner schrieb:
> Wir würde ich das anstellen? Über Bias?
Ja. Neben den beiden Busabschlusswiderständen noch 2 hochohmigere, die 
den floatenden Bus auf ca, 2,5V ziehen, und trotzdem mehr als 300mV 
Spannungsabfall an den Abschlusswiderständen erzeugen, damit die 
Eingangstreiber nicht dauernd hin- und herschalten.
Gast #5699496
Lesenswert?

Reiner schrieb:
> Lothar M. schrieb:
>> dann solltest du den Bus mit Widerständen
>> auf definierte Pegel "vorspannen".

Wieso?

Sobald der Master senden möchte, wird er vorher enabled. Damit stimmt 
der Pegel auf dem Bus (d.h. ca. +2,5...+3V) und er kann mit dem Senden 
beginnen. Danach darf die Spannung wieder auf 0V abfallen. Erst wenn nun 
ein Slave antworten möchte, muss er vorher (mittels enable) wieder für 
die Spannung auf dem Bus sorgen.
#5699518
Lesenswert?

szung schrieb:
> Wieso?
>
> Sobald der Master senden möchte, wird er vorher enabled. Damit stimmt
> der Pegel auf dem Bus (d.h. ca. +2,5...+3V) und er kann mit dem Senden
> beginnen. Danach darf die Spannung wieder auf 0V abfallen. Erst wenn nun
> ein Slave antworten möchte, muss er vorher (mittels enable) wieder für
> die Spannung auf dem Bus sorgen.

Du brauchst aber einen definierten Ruhepegel, wenn keiner sendet. Denn 
der Empfänger ist ja üblicherweise ein UART, und der braucht zum Starten 
eine passende Flanke bei Beginn des Startbits. Ist der Ruhepegel falsch, 
fehlt diese Flanke.
Gast #5699533
Lesenswert?

Lothar M. schrieb:
> Dann läuft da ja nie was los, weil alle bis zum Sanktnimmerleinstag
> warten,

Das ist korrekt. Eine handvoll Sensoren warten auf ein Signal mit 
Identifikation, Daraufhin antwortet der Teilnehmer mit seinen Daten. 
Dann ist wieder Ruhe.
Der Master schaltet das Senden aus damit eventuell auch ein Zweiter 
Master die Daten abfragen könnte.
Moderator (Firma: Titel) Persönliche Seite #5699534
Lesenswert?

Dietrich L. schrieb:
> Du brauchst aber einen definierten Ruhepegel, wenn keiner sendet. Denn
> der Empfänger ist
... im Differenzspannungsbereich zwischen -200V..+200mV nicht definiert. 
Und wenn da jetzt irgendeine Störeinkopplung auf diesen floatenden Bus 
kommt, dann zappeln die Ausgänge der Empfänger beliebig vor sich hin- 
und her. Und der dahinter kommende UART-Eingang meint ab&zu, ein 
Startbit zu erkennen. Kuriose Effekte sind dadurch vorprogrammiert.

Reiner schrieb:
> Der Master schaltet das Senden aus damit eventuell auch ein Zweiter
> Master die Daten abfragen könnte.
Mal generell: wie fängst du denn da eine mögliche Kollision ab? Was 
passiert, wenn beide Master "zufällig" mal ziemlich zeitgleich den Bus 
benutzen wollen?
Gast #5699548
Lesenswert?

Name H. schrieb:
> Nochwas. Schmeiss die 75176 raus.

Deswegen habe ich schon die SN75LBC176 Die sind recht genügsam.
Aber für andere Ideen bin ich offen

Lothar M. schrieb:
> Mal generell: wie fängst du denn da eine mögliche Kollision ab?

Garnicht. Wenn keine Antwort kommt wird einfach nochmal angefragt. Das 
könnte ich ggf noch durch eine Zufallszeit verbinden. Aber Multimaster 
ist erstmal noch nicht

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren