Autosteuerung über CAN-Bus?
Hallo,
hab da mal gesehen, dass man mit dem CAN-Bus in einem PKW ziemlich viel anstellen kann.
Ist es rein theoretisch möglich, dass ich mir die entsprechenden Signale auslese, die zum Beispiel zum Steuern von Fernlicht usw. benötigt werden, und ich diese dann über den Laptop wiederhole, um so mein Auto zu steuern?
Ich denke da hald schon wieder weiter, dass ich mir wie im Tesla einen "Bordcomputer" basteln möchte.
Würde mir da meinen eigenen Tacho usw programmieren.
6 Stimmen
2 Antworten
Gewisse Dinge kannst du steuern. Anforderungen zum Aufblenden vom Fernlicht kommen über die Fahrzeugbusse, auch Hupe, Blinker, Wischwasser, die Radiobedienung vom Lenkrad, alles geschieht recht offen über Fahrzeugbussysteme (nicht nur CAN, sondern auch LIN und Ethernet). Weitestgehend harmlose Dinge halt.
Was normalerweise nicht klappen dürfte, wenn der Fahrzeughersteller seine Hausaufgaben gemacht hat: Bremsen, Gas geben, Lenken.
Dafür musst du normalerweise dich erst schrittweise durch die einzelnen Fahrzeugsteuergeräte hacken, bis du am tatsächlich steuernden Punkt angekommen bist.
Also für die Bremse musst du irgendwann die Software an dem Steuergerät verändern, welches das ESP ausführt.
Für das Lenkrad kannst du theoretisch in heutigen PKWs auf die Stellmotoren für selbstlenkende Parksysteme gehen.
Für Gas geben musst du den Motor direkt knacken.
Theoretisch ist das komplette Fernsteuern also denkbar, aber nicht praktikabel. Einzelne Funktionen gehen aber problemlos.
Als jemand der schon mit Fahrzeugnetzwerken professionell gearbeitet hat, habe ich mir zum Beispiel natürlich schon den Spaß gegönnt auf Distanz die Scheibenwischwasserpumpen zu starten, während jemand anders gerade am Auto werkelt.
Für erste Erfolge würde ich dir raten dich auf einen CAN im Komfort-Bereich auf zu klemmen, da ist meiner Erfahrung nach bei allen Herstellern noch vorrangig offene Kommunikation direkt in CAN-Botschaften zu sehen: Knöpfchen drücken und eine zyklische Botschaft verändert an einer oder zwei Stellen den Wert.
Bei allem, was Antrieb und Fahrerassistenzsysteme angeht, wenn das überhaupt noch per CAN angeschlossen ist, kannst du offen eigentlich nur Daten mitlesen. Für die ganzen Steuerbefehle musst du in höhere Protokolle einsteigen, bei aktuellsten Fahrzeuggenerationen kommt dazu noch das Thema Verschlüsselung, aber dann sind diese Segmente sowieso per Ethernet oder Flexray angebunden und du kommst mit einem einfachen elektrischen Abgriff nicht sehr weit.
Im Multimediabereich wird auf die einfache CAN-Botschaft auch ganz oft ein höheres Protokoll drüber gelegt um komplexere Inhalte, die mehr als 8 bzw. 64(CAN-FD) Byte umfassen, darzustellen. Das wird dann schon sehr individuell, je nach Fahrzeughersteller.
Alles klar, dann werd ich mich heute mal mit der Radiosteuerung und dem Tacho auseinandersetzen.
Mal sehen was alles möglich ist.
Ich arbeite im Sonderfahrzeugbau und habe für unsere Fahrzeuge ein sehr umfangreiches Diagnose/Service-werkzeug.
Einige Komponenten sind im CanBus eingebunden aber nicht auslesbar um sie dennoch zu Parametrierung (Nummerierung zuweisen damit das Fahrzeug was mit anfangen kann) muss man einen Binär Code in den CAN-Bus einspielen.
Als Diagnose Hardware verwenden wir einen CAN to USB sandler namens "ixxat usb-to-can" zusammen mit einer Firmeneigenen Software und Diagnose Kabelstrang mit denen ich mich auch direkt auf Steuergeräte drauf hängen kann.
Cool cool.
Danke für deine ausführliche Antwort.
Ich hoffe ich kann mir was kleines basteln, und wenns nur ein Party-Gag ist, dass das Auto verrückt spielt :D
Oha. Danke für die ausführliche Antwort.
Ich werde da mal ein paar Dinge ausprobieren.
Vielen Dank Dir. :D