Hallo,
Mein RTB2004 kann leider kein CAN Bus auslesen(zusatz $$). Ich bräuchte
jedoch eine Möglichkeit irgendwie einen Trigger zu setzen, sobald eine
Nachricht auf dem Bus liegt.. Was gäbe es da für Möglichkeiten?
Der Can bus bei uns im Labor zeigte immer ein regelmäßiges Muster,
obwohl keine Daten gesendet wurden. ?! Müsste bei inaktivität nicht ein
konstanter Ruhepegel zu beobachten sein?
Kenne mich nicht mit CAN aus, aber gibt es da ein Time-Ereignis, auf
dessen Länge man triggern kann?
Z.B. kann man den DMX Start sehr gut mit Trigger "Falling Edge" +
"Timeout > 80µs" triggern.
Phil schrieb:> Müsste bei inaktivität nicht ein> konstanter Ruhepegel zu beobachten sein?
Versuchst du evtl. einen CAN-Bus mit nur einem Gerät zu messen?
Eine Gerät schickt eine Nachricht unter Umständen so lange immer wieder,
bis diese von einem Anderen mit einem Ack bestätigt wird. Wenn kein
anderer Busteilnehmer da ist ewig, wenn nicht irgendwo ein
Abbruchkriterium festgelegt ist...
Random .. schrieb:> Kenne mich nicht mit CAN aus, aber gibt es da ein Time-Ereignis,> auf> dessen Länge man triggern kann?> Z.B. kann man den DMX Start sehr gut mit Trigger "Falling Edge" +> "Timeout > 80µs" triggern.
Ich habe versucht auf die Länge zu triggern, bzw wenn diese
unterschritten wird, wenn daten ankommen-ohne Erfolg
Volker S. schrieb:> Phil schrieb:>> Müsste bei inaktivität nicht ein>> konstanter Ruhepegel zu beobachten sein?>> Versuchst du evtl. einen CAN-Bus mit nur einem Gerät zu messen?>> Eine Gerät schickt eine Nachricht unter Umständen so lange immer wieder,> bis diese von einem Anderen mit einem Ack bestätigt wird. Wenn kein> anderer Busteilnehmer da ist ewig, wenn nicht irgendwo ein> Abbruchkriterium festgelegt ist...
Leider nicht, es sind mehrere Teilnehmer am Bus. Daher verstehe ich
nicht woher dieses wiederholende Muster zu sehen ist.
Phil schrieb:> Ich habe versucht auf die Länge zu triggern, bzw wenn diese> unterschritten wird, wenn daten ankommen-ohne Erfolg
Hast du versucht auf Pausen zu triggern?
(erste Flanke nach Pause von >>5Bit Länge)
Phil schrieb:> Leider nicht, es sind mehrere Teilnehmer am Bus. Daher verstehe ich> nicht woher dieses wiederholende Muster zu sehen ist.
Wie oft kommen denn die Nachrichten so ungefähr?
(Passende Zeitablenkung einstellen und Oszi einfach anhalten)
Phil schrieb:> Leider nicht, es sind mehrere Teilnehmer am Bus. Daher verstehe ich> nicht woher dieses wiederholende Muster zu sehen ist.
Nimm doch einfach einen Teilnehmer nach dem andern vom Bus. Dann kannst
du feststellen, welcher da immer wieder mal sendet...
Mir gehts darum auf die allererste Nachricht auf dem BUS zu triggern.
Die Teilnehmer abknüpfen kann/darf ich leider nicht. Zusätzlich ist an
dem Bus eine CAN Box die auch alles aufzeichnet und die zeigt rein gar
nichts von diesem "Ruhe Muster".
Phil schrieb:> Mir gehts darum auf die allererste Nachricht auf dem BUS zu triggern.
Was stören dich dann irgendwelche zyklischen Protokolle?
> eine CAN Box die auch alles aufzeichnet und die zeigt rein gar nichts> von diesem "Ruhe Muster".
Vielleicht sendet die das ja selber. Oder sie ist so konfiguriert, dass
sie dieses Telegramm ignoriert, usw.
Wenn da zyklisch was läuft, dann sollte es auf jeden Fall recht einfach
sein, darauf zu triggern...
Soweit ich das Problem verstanden habe, soll herausgefunden werden,
welcher CAN frame nach einer Busruhe als erstes auf dem Bus liegt.
Während der Busruhe liegen auf dem CAN nur rezessive Bits.
Ich würde einfach den Trigger auf dominantes Level setzen und dann einen
single shot für den Trigger einstellen.
Das Oszi wartet dann auf den Trigger und hält genau Beginn ersten Frame
fest.
Nach dem "Start of Frame" kommt der Identifier. Der sollte sich dann
ganz gut ablesen lassen. Ggf mit einem Curser über den Frame wandern und
dabei auf die Zeit schauen. Dabei ggf auch Bitstuffing beachten und evtl
vorhandene Stuffbits herausstreichen.
Wenn der Identifier ermittelt ist, sollte auch der Absender bekannt
sein.
Ich würd mir nen USB-CAN-Dongle für kleines Gelod besorgen
(Fischl/USBtin zum Beispiel) und auf dem PC mitloggen. Brauchst Du eh
früher oder später wenn Du ernsthaft mit CAN rummachen willst.
Phil schrieb:> Mein RTB2004 kann leider kein CAN Bus auslesen(zusatz $$). Ich bräuchte> jedoch eine Möglichkeit irgendwie einen Trigger zu setzen, sobald eine> Nachricht auf dem Bus liegt..
Ein kleiner Logikanalysator, der CAN kann, kostet vielleicht 6€. Warum
brauchst du dafür ein Oszi, dass da etwas hilflos davor steht.
Wolfgang schrieb:> Ein kleiner Logikanalysator, der CAN kann, kostet vielleicht 6€.
Kaum zu glauben und vermutlich nicht wahr. Wo gibt es den zu kaufen?
Hm,
was ich noch nicht verstehe, ob dein Problem gewerblich oder privat ist!
Gewerblich: Sorry kauf dir die Erweiterung bei R&S und fertig!
Privat: Warum ist das so wichtig? Wenn Müll auf dem CAN-Bus liegt, wird
den jeder Teilnehmer ignorieren!
Ich hatte hier auch die Aufgabe wenn Taster gedrückt, wann ist das auf
dem CAN-Bus?
Also RTM3000 mit allen Optionen ausgepackt, alle 4 Kanäle aufgeweckt und
los geht es!
Oder wenn du die erste Nachricht auf dem Bus sehen willst, kauf dir die
entsprechenden Tools, meine Tools arbeiten zeigen mir alles was auf dem
Bus relevant ist, NMT/PDOs/SDOs werden entsprechend angezeigt und fertig
ist die Laube. Wenn ich eine besondere Bedingung tracen muss gebe ich
das den Menschen mit der weichen Ware und ich bekomme einen Monitor der
exakt auf dieses Event auslöst...
Wo willst du hin?
Busruhe in Kfz Steuergeräten is natürlich echt fies! Aber das ist
wirklich gewerblich, also raus mit den €€€!
mfg
Gast
Bernd schrieb:> Kaum zu glauben und vermutlich nicht wahr. Wo gibt es den zu kaufen?
Irgendwo hast du natürlich Recht. Für die <6€ bekommst du nur die
Hardware, die dafür sorgt, dass die 8 Signalkanäle abgetastet werden und
im PC landen. Das Aufzeichnen, Triggern, Dekodieren und Darstellen muss
der PC und die darauf laufende Software leisten (und tut es auch ;-)