Forum: Mikrocontroller und Digitale Elektronik CAN-Bus per PC anzapfen / wie? wo(mit)?


von Daniel (Gast)


Lesenswert?

hallo!
ich hab mal ne absolute anfängerfrage:
mit welcher hardware kann ich von einem x86-pc aus den CAN-bus anzapfen
und auslesen?
ne API in C für linux noch dazu und die sache wäre perfekt =)

geplantes "projekt" wäre die grafische aufbereitung von pkw-daten,
also geschwindigkeit, drehzahl etc.
wie siehts da eigentlich mitm tüv aus, also stichwort sicherheit? ich
greife ja dadurch nicht in den CANbus ein sondern lese ihn blos aus...

danke für die anworten
~

von Tom (Gast)


Lesenswert?

Suchmaschinen kennst Du?

Falls nein, bist Du falsch im Internet.


Zu Linux gibt es jedenfalls eine Reihe Projekte dafür.

von Jens (Gast)


Lesenswert?

Such mal nach Vektor Informatik und/oder Canoe.

von Ratber (Gast)


Lesenswert?

@Daniel


***
wie siehts da eigentlich mitm tüv aus, also stichwort sicherheit? ich
greife ja dadurch nicht in den CANbus ein sondern lese ihn blos aus...
***


Von der Seite her wääre das ok aber du könntest eventuell mit deinem
Selbstbau den Bus stören und dann wäre eine Beeinträchtigung schon
möglich so das es wieder ärger middem TüV geben könnte.

Oder zu häufige Abfragen die den Betrieb einschränken könnnen.


usw.

usw.

von daniel (Gast)


Lesenswert?

@tom
suchmaschinen sind mir sehr wohl bekannt, genauso wie n netter
umgangston; ich meine sagen zu können dass ich lang genug im internet
unterwegs bin um behaupten zu können dass ich weiß wo ich was wie
finde, nur sachen bei denen ich kompletter neuling bin fallen mir
leider leider nicht immer die passenden suchbegriffe ein, aber dafür
gibts ja foren wie das hier und nette leute wie dich die einem gerne
auskunft geben.

an die anderen:
danke für die antworten, hab zwar ca 50 seiten die google ausgespuckt
hat durchgesehen, nur da gings um selber zusammengelötetes zeug, und
das is mir n bisschen zu heiß =) - hatte wohl die falschen
suchbegriffe...

von Juergen (Gast)


Lesenswert?

Hi,

Fa. Vector ist fuer den Anfang wohl etwas heftig und extrem teuer.
Versuchs mal unter http://www.peak-system.com ,
spez. unter http://www.peak-system.com/products/dongl-1.htm

Juergen

von tobias hofer (Gast)


Lesenswert?


von Daniel (Gast)


Lesenswert?

ok.. die frage nach dem womit und wie wäre schon mal geklärt... bleibt
nur noch die frage wo ich mich da reinklinken kann..
afaik haben die neueren radios alle nen CAN-port, kann ich mich da
einfach zwischenschalten?

von Schmittchen (Gast)


Lesenswert?

In modernen PKWs sind inzw. mehrere CAN-Busse verlegt, um einerseits
nicht unnötige Informationen an Steuergeräte (SG) zu liefern, die diese
garnicht benötigen (senkt die Busauslastung), und andererseits um die
Störmöglichkeiten (Softwarebugs, physikalischer Bus...) zu verringern.
Diese Busse werden durch ein Gateway miteinander verbunden, das die
interessanten Informationen eines Quellbusses auf einen/mehrere andere
Zielbusse routet. (Geschwindigkeit und Drehzahl sind z.B. solche Infos,
die jeden Bus/SG 'interessieren').

Die Informationen werden (wie bei CAN üblichh) nicht zielgerichtet
verschickt, sondern einfach auf den Bus 'rausgebrüllt' (broadcast).
(D.h. z.B. Geschwindigkeit wird nicht vom Motor-SG ans Radio geschickt,
sondern nur ungerichtet bekanntgegeben. Den den's interessiert, nimmt
sich die Info vom Bus). Oder umgekehrt muß das Radio nicht ständig
nachfragen, wie schnell die Karre denn gerade fährt, sondern erfährt
dies 'automatisch' indem es jede Can-Botschaft auswertet, in der die
Geschwindkeitsinfo steckt. (das Bedenken aus einem obigen Beitrag ist
also unbegründet -> keine Einschränkung durch zuhäufige 'Abfragen').
Anderes Beispiel für Broadcast...: Tür meldet: "Beifahrertür
geöffnet!" und nicht "Bitte Innenlicht anschalten, bitte
Türbeleuchtung Beifahrertür einschalten, bitte ...".

Alle SGs verschicken ihre Meßwerte/Parameter usw. nicht nur einmal,
sondern zyklisch. D.h. auch wenn ein SG kurz mal 'unpässlich' :) ist,
oder irgendwann mal von der Batterie kurz abgeklemmt wäre, so ist dieses
spätestens nach einigen hundert Millisekunden wieder komplett auf dem
aktuellen Stand.

Soweit ist das bei allen Fahrzeugen gleich. Nur welche CanId welche
Informationen/Signale trägt, legt jeder Hersteller unterschiedlich
fest. Ist ja auch klar, denn die Ausstattungen/Konzepte der
verschiedenen Marken ist ja auch unterschiedlich.

Jetzt darfst du (Daniel) 'nur' noch die Bedeutung der vielen
Informationen auf dem Bus auswerten. D.h. Busmonitor dranhängen (wie,
welche wurde ja oben schon gesagt), und mitprotokollieren, was denn da
alles so übertragen wird. Wenn du dann die ca. 1000 verschiedenen
'Signale' enträtselt hast, dann kannst du dir einen schönen,
übersichtlichen Boardcomputer bauen :). Ohne die Bedeutung der
Bit/Bytes zu kennen, bringt dir das garnix.


Eine komplett andere (theoretische) Möglichkeit wäre es die Daten per
Diagnose (CAN/KWP oder K-Line) abzufragen. Das wäre dann so ein
Frage/Antwort-Spielchen. Allerdings bekommst du dann immer nur einen
Parameter genannt, und viele Werte werden auch nur bei stehendem
Fahrzeug übermittelt. Dafür gibts im Inet auch einige Tabellen, was wie
abgefragt werden muß (Stichwort: ODB).

> afaik haben die neueren radios alle nen CAN-port, kann ich mich da
einfach zwischenschalten?
Such mal in deinem Fahrzeug den Diagnosesteckeranschluß, dort sollte
zumindest ein DiagnoseCAN aufgelegt sein (der ein 'best-of' an
ausgesuchten Signalen liefert). Wenn du ein Vorserienfahrzeug hast :)
dann liegen dort üblicherweise alle Can-Busse.

Soviel zur Theorie. Jetzt ein praktischer Tip: Bau es, wenn du wirklich
genau weißt was du da machst (Can-Terminierung, EMV, Verhalten deiner
Hardware bei allen Betriebsparametern (Temperatur, Spannung usw.),
nicht daß deine prächtig (im Stand) funktionierende Hardware plötzlich
bei ner Bodenwelle im Hochsommer und Unterspannung den Dienst quittiert
und den CAN-Bus 'lehmlegt'. Vielleicht reicht auch einfach nur
'Unterspannung...'.
Also wie immer: 'Kids don't do this @home'.

Schmittchen.

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.