Forum: Mikrocontroller und Digitale Elektronik RS485 Bus: Fehlerdiagnose


von Pepe (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
habe mehrere ADM483 an einem Half-Duplex-Bus hängen.
( Siehe Schaltplan )
Über die Enable-Leitungen wählt der Master jeweils
den Slave aus, schickt seine Anfrage zum Slave,
nimmt die Enable-Leitung wieder zurück und wartet
dann 20ms auf die Antwort vom Slave.

Jetzt mein Problem:
Habe gelegentlich mal defekte Ausgangsstufen bei den ADMs, die
sich während des Betriebs beim Kunden einfach verabschieden.
( Warum die defekt werden, kann ich nicht sagen )

Habe ich mal dieses Problem verabschieden sich immer gleich
einige weitere Treiber, bis ich alle defekten Ausgangstreiber
ausgetauscht habe.

Insgesamt habe ich 6 Busse mit jeweils max. 25 Slaves.
Die Slaves können frei auf den Bussen vom Kunden
verteilt werden. Somit gestaltet sich die Fehlerdiagnose wirklich
schwierig.

Wie kann ich alle defekten ADMs rausfinden, ohne dass ich mir alle
Slaves vom Kunden zurückschicken lasse ?
( Findet der Kunde irgendwie garnicht witzig :-) )

Pepe.

von Sascha W. (sascha-w)


Lesenswert?

Hallo,

sind die Stromversorgungen des Slaves miteinander verbunden?

RS485 verwendet man doch eher zur Überbrückung "größerer" Entfernungen - 
wieso gehen dann wieder Leitungen vom Master extra zu jedem Slave ohne 
irgendwelche Treiber?

Sascha

von Pepe (Gast)


Lesenswert?

Die Entfernungen sind < 50cm. RS485 wurde damals
wegen der Busfähigkeit genommen.

Die Slaves hängen über die Busverteiler-Leiterplatten
an den gleichen Spannungsversorgung.

von Sascha W. (sascha-w)


Lesenswert?

werden die Slaves gelegentlich vom Bus getrennt oder hängen die immer 
dran?

Evl. ein Softwarefehler der sporadisch dafür sorgt das mehrere auf 
einmal senden? Die Dinger liefern ja doch allerhand Ausgangsstrom und 
die kurzen Leitungen im Bus sorgen nicht nennenswert für Widerstand.

Sascha

von Pepe (Gast)


Lesenswert?

Die Slaves werden regelmäßig getrennt.
Die Kontaktierung ist so gelöst, dass eigentlich
zuerst die Versorgungsspannungen, dann die RS485 Kontakte
( die ADMs haben einen PullDown auf der Enable-Leitung )
und dann erst die Slave-Enable-Leitung kommen.

Diesen Softwarefehler hatten wir schon. War keine schöne Geschichte...

Mittlerweile ist es so gelöst, dass die Slaves immer ihre
Seriennummer bei jeder Antwort mitschicken und der Master
überprüft, ob der richtige Slave geantwortet hat.
Sollte die falsche Serial zurückkommen, gibts eine Meldung.
Ist bisher aber noch nichts aufgefallen.

Pepe

von Sascha W. (sascha-w)


Lesenswert?

Pepe schrieb:
> Die Slaves werden regelmäßig getrennt.
> Die Kontaktierung ist so gelöst, dass eigentlich
> zuerst die Versorgungsspannungen, dann die RS485 Kontakte
> ( die ADMs haben einen PullDown auf der Enable-Leitung )
> und dann erst die Slave-Enable-Leitung kommen.
ist denn zu beobachten das der Defekt nach dem verbinden eines Slaves 
auftritt?

> Diesen Softwarefehler hatten wir schon. War keine schöne Geschichte...
>
> Mittlerweile ist es so gelöst, dass die Slaves immer ihre
> Seriennummer bei jeder Antwort mitschicken und der Master
> überprüft, ob der richtige Slave geantwortet hat.
> Sollte die falsche Serial zurückkommen, gibts eine Meldung.
> Ist bisher aber noch nichts aufgefallen.
Wenn zwei gleichzeitig senden ist es eigentlich eher unwarscheinlich das 
überhaupt sinnvolle Daten empfangen werden, dann eher noch FrameErrors.

Sascha

von Purzel H. (hacky)


Lesenswert?

Halbduplex mit extra enable Leitungen ist murks. Die RS485 Treiber 
ueberstehen gegeneinander zu arbeiten. Ich wuerde auf ein EMV Problem 
tippen.

von Pepe (Gast)


Lesenswert?

@hacky:
Ich muss aber wissen an welchem Einsteckplatz die Slaves stecken und
der Bediener kann die Slaves leider bunt mischen. Somit bleibt
leider nur die Möglichkeit über eine weitere Leitung...

@Sascha:
Könnte sein, dass ich mein Problem gefunden habe.
Beim Einstecken der Slaves gibt es manchmal eine kurze Spannungspitze
 < 100ns von bis zu 13V auf der Versorgung der ADMs.
( Absolute Max VCC = 6V laut Datenblatt!!!)
Hab einen L293 auf den Slaves als Übeltäter ausgemacht.
Kann an dessen VCC-Pin die Spitze messen, wenn keine 5V
Versorgung anliegen.

Werd mir jetzt mal Gedanken zu den 24V machen bzw. Absicherung von 
VCC(TVS)...

Danke,
Pepe.

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
Noch kein Account? Hier anmelden.