Forum: Mikrocontroller und Digitale Elektronik CAN-Bus elektronisch diagnostizieren


von Matthias P. (matthias_p993)


Lesenswert?

Hallo Leute!
Einie Fragen zum CAN-Bus:
1.:
Kann ich irgendwie elektronisch ermessen, ob beim Vorhandensein mehrerer 
CANs im Fahrzeug zum Beispiel ein CAN-Lo und ein CAN-Hi zusammengehören? 
Ich will verhindern, dass auf einem Stecker CAN-Hi von Bus 1 mit CAN-Lo 
von Bus 2 "verheiratet" wird und es so zu Fehlern kommt. Nehmen wir an, 
von 10 Bussen sind bei zweien die beiden Partner über Kreuz getauscht. 
Ließe sich das irgendwie ermessen?

2.:
Kann ich elektronisch irgendwie mit einfachen Mitteln ausmessen, ob ein 
CAN elektrisch i.O. ist oder nicht? Müsste ich die Lo- und Hi-Pegel 
elektrisch miteinander vergleichen und dann auswerten?

Sind Basics, aber jeder fängt ja mal klein an!

Lieben Dank für alle Antworten!

LG,
Euer Matse

von kyrk (Gast)


Lesenswert?

Ist das Low oder High Speed CAN? Pegels sind vermutlich bisschen anders.

1. Vermutlich wirst du früher oder später in bestimmten signalen BZ oder 
CRC Fehlers sehen. Da wird der E2E absicherung dann greifen. Oder es 
wird gar nicht mehr richtig kommuniziert.

2. CAN H und CAN L mit Osszci messen und angucken? Groundshift messen, 
könnte eventuell ein Hinweis geben?

Ich meine es gibt auch CAN Conformance tests. Bin mir nicht sicher ob 
die öffentlich irgendwo beschrieben sind. Aber eventuell da könnte etwas 
drin sein was du umsetzten könntest.

von pegel (Gast)


Lesenswert?

Auf yt gibt es einen Autoschrauber der alle Fehlermöglichkeiten des CAN 
Bus mit dem Oszi erklärt.

von ich (Gast)


Lesenswert?

CAN ist differenziell, deshalb ist CAN-H und CAN-L gleich nur mit 
entgegengesetztem Potential. Ein zweikanaliger Oszilloskop wäre das 
Messgerät deiner Wahl.

https://www.me-systeme.de/de/support/grundlagen/can-bus-grundlagen

von Matthias P. (matthias_p993)


Lesenswert?

Hallo Leute!
Oh, ich habe mich nicht komplett ausgedrückt. Ich will nicht 
messtechnisch sondern elektronisch auswerten, ob ein CAN korrekt 
elektronisch arbeitet oder ob bei mehreren Bussen Quervertausche 
existieren.

Kann ich das mit einem Opamp als Komparator lösen?

Danke für die Antworten und LG,
Euer Matse

von Wolfgang (Gast)


Lesenswert?

Matthias P. schrieb:
> Ich will nicht messtechnisch sondern elektronisch auswerten, ob ein
> CAN korrekt elektronisch arbeitet oder ob bei mehreren Bussen
> Quervertausche existieren.

Jedes DSO ist heutzutage elektronisch. Die Hochzeiten der 
dampfgetriebenen Oszis sind vorbei.

von Alex G. (dragongamer)


Lesenswert?

Denke mal er will ein möglichst einfaches Diagnosegerät allein für diese 
Aufgabe bauen das kein externes, großes Oszilloskop benötigt...

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


Lesenswert?

Matthias P. schrieb:
> Ich will verhindern, dass auf einem Stecker CAN-Hi von Bus 1 mit CAN-Lo
> von Bus 2 "verheiratet" wird und es so zu Fehlern kommt.
Wie sollte denn sowas passieren? Und warum sollte eine Verbindung von 2 
unterschiedlichen CanH da besser sein?

> Kann ich das mit einem Opamp als Komparator lösen?
Eher nein, weil der das Protokoll nicht decodieren kann.

> Ich will nicht messtechnisch sondern elektronisch auswerten, ob ein CAN
> korrekt elektronisch arbeitet oder ob bei mehreren Bussen Quervertausche
> existieren.
Dann solltest du zuerst mal kontrollieren, ob du solche Verbindungen 
messtechnisch und z.B. mit dem Oszi visuell erfassen kannst. Wenn 
das zuverlässig geht, dann kannst du drüber nachdenken, den Messaufbau 
zu vereinfachen. Und wenn du Glück hast, kannst du dieses 
Messverfahren bis auf 1 Komparator reduzieren. Wenn nicht, dann liegt 
der Fall komplexer...

von Matthias P. (matthias_p993)


Lesenswert?

Hallo Leute!
Alex Ge hat es schon genau erfasst.

Ich rüste im Hobby in Fahrzeuge originale Zusatzausstattungen nach und 
da kommt es vor, dass nachgerüstete Steuergeräte mehrere Fahrzeug-CANs 
anzapfen um Botschaften auszutauschen.

Ein Steuergerät hat zum Beispiel einen Antriebs-CAN ins Fahrzeug und 
einen Sub-CAN für eine externe Baugruppe an diesem Steuergerät. Nun 
liegen auf dem Steuergerät also an dem Stecker zwei CANs.

Da ich dazu die Kabelbäume dann selber baue ist es schon vorgekommen, 
dass ich zum Beispiel CAN 1 Lo mit CAN 2 Hi und CAN 1 Hi mit CAN 2 Lo 
verheiratet habe ohne das nun direkt zu merken.

Mit dem Multimeter ist das zuerst einmal nicht zu sehen weil die Pegel 
für CAN Lo und Hi ja korrekt sind.

Meine Idee war nun, dass ich mir eine kleine Testbox bauen könnte, die 
einfach die Pegel vergleicht und eben feststellt, dass wenn Hi- und 
Lo-Pegel bis auf die Phasenlage nicht gleich sind wohl ein 
Kombinationsfehler vorliegen müsse.

Das ich die Sache mit einem Oszilloskop messen kann ist klar. Aber wie 
könnte das elektronisch gehen?

Meine Idee war, die beiden CAN-Teile von ihrem jeweiligen DC-Offset zu 
befreien, dann beide Signale zu vergleichen da sie bis auf die 
Phasenlage gleich sein müssen und falls das nicht so wäre mittels eines 
Integrators bei einer bestimmten Dauer an Signaldifferenz eine Lampe 
angehen zu lassen.

Dann würde bei kurzen Pegeldifferenzen wie etwa 
Signalflankenunterschieden auf den einzelnen CAN-Teilen der Komparator 
vielleicht zwar ansprechen aber der Integrator noch kein Ausgangssignal 
haben. Erst, wenn längere Zeit Lo nicht zu Hi passte, würde das ein 
Ergebnis geben.

Vielleicht denke ich aber auch viel zu Kompliziert. Deswegen meine 
Frage, ob das auch einfacher elektronisch effizienter gehen könnte ...

LG,
Euer Matse

von Karl (Gast)


Lesenswert?

Das beschriebene Problem mit den vertauschten Kabeln kann man durch 
Messung des Widerstandes zwischen canh und canl erkennen.

von georg (Gast)


Lesenswert?

Matthias P. schrieb:
> dass wenn Hi- und
> Lo-Pegel bis auf die Phasenlage nicht gleich sind wohl ein
> Kombinationsfehler vorliegen müsse.

Was immer du unter Phasenlage verstehst - L ist immer der 
entgegengesetzte logische Zustand von H (und logischerweise umgekehrt). 
Invertierst du ein Signal und vergleichst es mit dem andern, so muss das 
Ergebnis "fast" immer "gleich" sein, fast bezieht sich auf die kurze 
Zeit der Flankenwechsel. Ob die Signale zusammengehören, kannst du also 
mit einem Inverter, einem Komparator oder XOR-Gatter und einer LED 
feststellen.

Georg

von Karl (Gast)


Lesenswert?

georg schrieb:
> Was immer du unter Phasenlage verstehst - L ist immer der
> entgegengesetzte logische Zustand von H (und logischerweise umgekehrt).
> Invertierst du ein Signal und vergleichst es mit dem andern, so muss das
> Ergebnis "fast" immer "gleich" sein, fast bezieht sich auf die kurze
> Zeit der Flankenwechsel. Ob die Signale zusammengehören, kannst du also
> mit einem Inverter, einem Komparator oder XOR-Gatter und einer LED
> feststellen.
>
> Georg

Das ist sehr kurz gesprungen. Was ist bei Busruhe? Was mit groundshift 
von 7v etc.

von Wolfgang (Gast)


Lesenswert?

Karl schrieb:
> Das ist sehr kurz gesprungen. Was ist bei Busruhe? Was mit groundshift
> von 7v etc.

Gleichspannung wird wohl ein Hochpass zuverlässig abtrennen. Gegen die 
Umschaltspikes sollte ein Tiefpass helfen. Beides zusammen dürfte das 
Signal schon mal deutlich diagnosefreundlicher machen.

Bei Busruhe auf beiden fraglichen Bussen, wird es so oder so schwierig, 
Zuordnungsfehler zu diagnostizieren.

von Achtung Achtung Achtung (Gast)


Lesenswert?

Ich sach nur von hinten durch die Brust ins Auge.

von Harald (Gast)


Lesenswert?

Matthias P. schrieb:
> Kann ich irgendwie elektronisch ermessen, ob beim Vorhandensein mehrerer
> CANs im Fahrzeug zum Beispiel ein CAN-Lo und ein CAN-Hi zusammengehören?
> Ich will verhindern, dass auf einem Stecker CAN-Hi von Bus 1 mit CAN-Lo
> von Bus 2 "verheiratet" wird und es so zu Fehlern kommt. Nehmen wir an,
> von 10 Bussen sind bei zweien die beiden Partner über Kreuz getauscht.
> Ließe sich das irgendwie ermessen?

Irgendwie scheint der Ansatz grundsätzlich falsch zu sein, denn bei 
einem komplexen CAN-Netzwerk mit 10 Bussen (und vermutlich entsprechende 
Anzahl Teilnehmer) muss es bei der Verdrahtung schon eindeutig zugehen. 
Z.B. durch die Wahl von verpolsicheren Steckverbindern, 
unterschiedlichen Polzahlen und/oder Farbmarkierungen sollte es zu 
derartigen Szenarien überhaupt nicht kommen dürfen.

Wie muss man sich das angenommene Szenario vorstellen? Da kommt jemand 
mit ner Rolle weißer Litze und verdrahtet alles irgendwie in 
Einzeladermanier Wild-West? Und dann kommt der elektronische Tester und 
bügelt die Fehler aus? Für mich kaum vorstellbar in dem genannten 
Rahmen.

Bei einer Vertauschung geht ja eben nichts mehr, das kann man ja relativ 
schnell an der Status-LED oder dem Verhalten des Teilnehmers ausmachen. 
Falls möglich kann man dann durch Reduktion der Komponenten langsam 
sehen, wo es hakt.

Vielleicht kannst Du ja nochmal für Aufklärung sorgen, in welchen 
Szenarien der kleine Helfer überhaupt angedacht ist.

von Bernd K. (prof7bit)


Lesenswert?

Du hast doch auf beiden Seiten Steckverbindungen. Bau doch einfach ein 
Gerät an das beide Enden des Kabels angeschlossen werden und Dir dann 
sofort sagen kann ob das ganze Kabel in Ordnung ist oder nicht. Noch 
bevor Du es am Fahrzeug oder sonstwo anstöpselst und mit dem fehlerhaft 
konfektionierten Kabel noch nen Schaden produzierst.

: Bearbeitet durch User
von Matthias P. (matthias_p993)


Lesenswert?

Hallo Leute,
ein bischen Prozesssteuerung um die Diskussion nicht in unnütze Dinge 
entlaufen zu lassen:

Ich habe eindeutig erfragt, wie ich das bei mir vorliegende Problem so 
einfach wie möglich elektronisch erfassen und auswerten kann, nicht 
messtechnisch. Ein Multimeter oder ein DSO stehen zwar zur Verfüung, 
aber nicht für diese Aufgabe.

Die Randbedingungen dafür sind vielfältiger Natur, hierfür jedoch völlig 
belang- und bedeutungslos. Ich habe eine präzise Anforderung gestellt 
was ich machen möchte und benötige genau nur zu diesem Vorhaben Tipps.

Damir erübrigen sich sämtliche Fragen nach der Art, ob ich am Prozess 
etwas ändern kann oder nicht. Ich kann es nicht und deswegen stehe ich 
vor dem Problem das ich hier angefragt habe. Ich kann die Art der 
Verkabelungsentstehung nicht ändern und ich kann auch nicht auf einer 
oder der anderen Seite beliebig Steuergeräte ab- und ankoppeln. Deswegen 
will ich ja so eine Box haben damit ich genau das nicht machen muss und 
triviale Fehler deren Ursachen ich aber nicht beeinflussen kann gleich 
erkenne. Was muss oder was nicht muss spielt ebenfalls nicht die 
geringste Rolle. Es ist so wie es ist, ob mir das nun gefällt oder 
nicht.

Ich würde es begrüßen, dazu Tipps und Ideen zu erhalten, auf die ich 
noch nicht gekommen bin!

Vielen Dank dafür!

LG,
Euer Matse

: Bearbeitet durch User
von Matthias P. (matthias_p993)


Lesenswert?

Was ich noch vergaß:
ich baue nicht alle Kabelbäume selbst ... ;-)

von chris (Gast)


Lesenswert?

Heisst das, du willst es umbeding mit einem uC lösen , da DMM zu langsam 
?
Schick rs232 (software mit OC oder hw mit diode) auf einen Can bus und
lese gleichzeitig die anderen Busse ob dieses Signal ankommt.

von pegel (Gast)


Lesenswert?

Man könnte jede der 4 Leitungen durch einen Fenster-Komperator schicken 
und durch logische Verknüpfung der Ausgänge und ein FF eine LED 
ansteuern um an deren Helligkeit den Zustand der Leitungen im Betrieb 
abzuschätzen.
Bleibt aber bei der einfachen Variante ein Ratespiel.

Sonst bleibt mit einem µC Busfehler zu analysieren.

Ich denke am Ende wird es auf ein 4 Kanal DSO hinaus laufen.
Damit siehst du alles auf einen Blick mit Hilfe von
NI (natürliche Intelligenz).

von Esmu P. (Firma: privat) (max707)


Lesenswert?

Matthias P. schrieb:
> Ich habe eindeutig erfragt, wie ich das bei mir vorliegende Problem so
> einfach wie möglich elektronisch erfassen und auswerten kann, nicht
> messtechnisch. Ein Multimeter oder ein DSO stehen zwar zur Verfüung,
> aber nicht für diese Aufgabe.

Beitrag "Re: CAN-Bus elektronisch diagnostizieren"

von georg (Gast)


Lesenswert?

Matthias P. schrieb:
> Ich habe eine präzise Anforderung gestellt
> was ich machen möchte und benötige genau nur zu diesem Vorhaben Tipps

Dann musst du halt zu einem Forum gehen, in dem Antworten erst 
veröffentlicht werden, nachdem du sie geprüft und freigegeben hast. Am 
besten ein eigenes.

Es tut mir leid, dass ich dich mit einem Vorschlag zur Lösung belästigt 
habe, kommt nicht wieder vor.

Georg

von Karl (Gast)


Lesenswert?

Karl schrieb:
> Das beschriebene Problem mit den vertauschten Kabeln kann man durch
> Messung des Widerstandes zwischen canh und canl erkennen.

Zu einfach?

von Matthias P. (matthias_p993)


Lesenswert?

Hm, schwierig, der CAN hat im Auto bisweilen ganz schön viele Splices 
... Da sind doch immer dann die beiden mit 120 Ohm terminiert, die vom 
Stern die beiden längsten Abgänge bilden, richtig?

Müsste ich dann ungefähr 60 Ohm messen?

von Karl (Gast)


Lesenswert?

Can wird normalerweise nicht im Stern verlegt sondern ist ein linearer 
Bus. Kurze stichleitungen sind ok.

Genau am Anfang und am Ende sind Terminierungen. Zusammen 60 Ohm.

von Thomas F. (igel)


Lesenswert?

Karl schrieb:
> Can wird normalerweise nicht im Stern verlegt sondern ist ein linearer
> Bus.

Die Realität im Fahrzeug sieht anders aus.

> Genau am Anfang und am Ende sind Terminierungen. Zusammen 60 Ohm.
Nur in Original-Kabelbaum, meist aber in irgendwelchen Steuergeräten.
Der TO baut eigene Zusatz-Kabelbäume, so habe ich ihn verstanden. In 
diesen darf dann kein weiterer Terminator vorhanden sein. So lassen sich 
seine neuen Kabelbäume (mit Zusatz-Steuergerät) dann wohl nicht 
vermessen.

von Matthias P. (matthias_p993)


Lesenswert?

Hallo Leute.
Danke für Eure ganzen Antworten. Ich baue bzw. lasse die Kabelbäume nach 
originalen Mustern bauen, also Kabellängen, Splicepositionen, das ist 
alles wie in der jeweiligen Serie.

Und natürlich, alles in 0,35mm² orange-blau/grün/rot/braun/schwarz als 
Twisted-Pair korrekt verdrilled.

CAN als solcher scheint mittlerweile elektrisch erheblich robust 
geworden zu sein. An Steuergeräten sind manchmal 10cm Leitung nicht 
verdrillt, und so in Serie. Und es funktioniert absolut zuverlässig und 
einwandfrei...

Aber gut, ich habe viele Ideen was ich jetzt machen kann. Dann will ich 
mal...

LG und danke an alle,
Euer Matse

von Karl (Gast)


Lesenswert?

Er erweitert die Kabelbäume, oder? Folglich müssen die Widerstände im 
Fahrzeug vorhanden sein.

Der Rest geht auch nur wenn das ganze mit dem Bordnetz verbunden ist.

Mir egal. Der to hat langsam genug Auswahl an Mist.

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.