Forum: Mikrocontroller und Digitale Elektronik CAN-BUS Interface


von Marvin (Gast)


Lesenswert?

Hallo liebe Community,

Ich habe vor, ein CAN-BUS Inteface zu bauen.

Mein Fahrzeug: Einen VW Golf 5 GTI.

Das Interface soll folgende Features besitzen:
• Bestimmte Daten (ID'S noch unbekannt) aus dem CAN-BUS lesen
• Eigene Daten an andere Geräte im CAN-BUS senden (z.B. an die 
Multifunktionsanzeige)
• Werte in einem Speicher speichern (auch nach entfernen der 
Spannungsversorgung, z.B. SD-Karte)

Eventuelle zukünftige Features:
• Größe sollte möglichst einer Zigarettenschachtel ähneln (der erste 
Entwurf ist natürlich erstmal egal)
• Umsetzung von Experiment auf einer selbst geätzten bzw. in Auftrag 
gegeben Platine


Zu meinen Vorkenntnissen (1= schlecht, 5 = gut):
• Visual Basic für Softwareprogrammierung auf Windows-Computern (.net) 
-> 3,5
• Arduino-"C" -> 2
• CAN-BUS -> 1

Momentan Verfügbare Hardware
• Arduino Uno v3
• SUB-D Kabel mit OBD-Stecker zum Verbinden mit dem CAN-BUS am Auto
• CAN-Shield für den Arduino 
(http://www.exp-tech.de/Shields/CAN-BUS-Shield.html)

Ich bin für JEDE Hilfe Dankbar, denn mit diesem Thema werde ich mich 
intensiv befassen.
Habe natürlich schon das ein oder andere in Erfahrung gebracht, aber um 
z.B. mit einem Mikrocontroller ein Speicher zu beschreiben, fehlen mir 
noch Kenntnisse.

Würde mich freuen, wenn mich dort jemand unterstützen könnte, auch für 
evtl. weitere User ein bestimmt nicht ganz uninteressantes Thema.
Zum Verständnis her bekomm ich solche Sachen im Grunde relativ schnell 
ins Köpfchen.

Wie gesagt, für jeden Ansatz bin ich Dankbar und bedanke mich bereits im 
Voraus.


Viele Grüße,
Marvin

von St. D. (st_d)


Lesenswert?

Ich würde ein Teensy 3.1 nehmen, anstatt Arduino Uno. Die Kleine hat 
eine integrierte CAN Controller. Es gibt ich glaube auch CAN 
Transceiver/SD-Karten-Breakout und Bibliotheken dafür.

von Thomas F. (igel)


Lesenswert?

Marvin schrieb:
> • Eigene Daten an andere Geräte im CAN-BUS senden (z.B. an die
> Multifunktionsanzeige)

Du kannst nicht einfach Daten an die MFA senden, da dies andere 
Steuergeräte bereits tun. Sendest du eigenen Kram, kommt es zu 
Datenkollisionen.

> SUB-D Kabel mit OBD-Stecker zum Verbinden mit dem CAN-BUS am Auto

Damit hast du lediglich eine Verbindung zum Diagnose-CAN, der legidlich 
zum Gateway geht. Dein Auto verfügt aber über vier weitere CAN-Busse, an 
die du per Stecker nicht drankommst.

> Visual Basic für Softwareprogrammierung auf Windows-Computern (.net)

Das nützt dir nicht viel. Mein Eindruck, Dir fehlt noch viel 
Grundlagenwissen.

von Marvin (Gast)


Lesenswert?

Thomas Forster schrieb:
> Du kannst nicht einfach Daten an die MFA senden

Ich habe ein fertiges Modul in meinem Auto verbaut, welches (meines 
Erachtens) nur über den CAN-BUS angeschlossen ist. Dieses Modul erstellt 
in meiner MFA ein neues Menü, wo ich Drehzahl usw. ablesen kann.

> Das nützt dir nicht viel. Mein Eindruck, Dir fehlt noch viel
Grundlagenwissen.

Das werde ich mir schnellst möglich aneignen. Daran soll es nicht 
scheitern.
Irgendwann muss man ja halt mal damit anfangen.

> Damit hast du lediglich eine Verbindung zum Diagnose-CAN

Das wusste ich z.B. noch nicht. Das heißt, dass es nicht über den OBD 
stecker geht, sondern nur wenn ich z.b. den CAN-BUS am Radio-Stecker 
abgreife, richtig?

@ St. D:
Mit welcher IDE bzw. Oberfläche wird der Teensy 3.1 programmiert?
klingt schon mal viel versprechend


Danke bereits dafür!

von Thorsten (Gast)


Lesenswert?

Hallo Marvin!

Ich plane ein ähnliches Projekt für meinen Ford Fiesta, zumindest 
erstmal das Auslesen der Daten über die OBD2-Schnittstelle.

Als Controller hab ich das Olimexino STM-32 Entwicklungsboard ins Auge 
gefasst. Das bietet schon eine CAN-Schnittstelle.
Programmieren kann man das über irgend so eine MAPLE-Umgebung. Das 
scheint irgendwie in die Richtung Arduino zu gehen.
Ich werde das ganze allerdings mit C oder C++ realisieren.

Zeitlich habe ich erst im August wieder Raum. Vielleicht kann man sich 
ja mal über Erfahrung austauschen. ;-)

von Flo246 (Gast)


Lesenswert?

Hi,

ich habe zwar auch nicht so viel Ahnung auf dem Gebiet, aber an deiner 
Stelle würde ich alle Parameter und Codes zunächst mal mit VCDS oder 
ähnlichem auslesen und diese Drucken,Speichern etc.

Ich dachte auch mal ich spiel etwas am CAN Bus rum und hinterher war ich 
4-Std bei VW und hab die Karre neu Codieren lassen...weil alles gehupt 
und geblinkt hat...anlass dazu war ein defektes ESP Steuergerät welches 
ich selbst gewechselt habe und neu codieren wollte...mir jedoch die 
entsprechenden codes gefehlt haben..

PS: Bevor du an deinem Auto herumspielst, kauf dir ein paar platinen und 
schicke von diesen aus irgendwelche Daten hin und her und lass über lcd 
ausgeben etc. Da auto unter umständen teuer werden kann!


MFG

FLO

von Frank K. (fchk)


Lesenswert?


von Marvin (Gast)


Lesenswert?

Hi Thorsten :)

Der Austausch hört sich doch schonmal gut an :)
klar, hier mal meine Email: sauthoff-marvin[@]web.de

Ja, das Olimexino STM-32 ist bestimmt auch ne gute Sache, nur ich hatte 
den Arduino halt schon und das CAN-Shield geschenkt bekommen..mal sehen, 
das muss man nämlich auch in C programmieren.

@Frank:
Danke schon mal dafür!
Da kann man sich wohl echt gut die Grundkenntnisse her holen.

Danke Jungs ;)

von Frank K. (fchk)


Lesenswert?

Marvin schrieb:

> @Frank:
> Danke schon mal dafür!
> Da kann man sich wohl echt gut die Grundkenntnisse her holen.

Diese Sachen sind aus dem Selbststudienprogramm von VW für die Techniker 
im Werk und in den Vertragswerkstätten. Das gibts auch auf deutsch, aber 
das habe ich nicht so schnell gefunden.

fchk

von Andreas A. (andruinoo)


Lesenswert?

Hallo Leute,

hat es jemand hingekriegt einen Arduino Can-Bus Adapter zu realisieren 
oder gibt es irgendwelche News zu diesem Projekt?

Stehe gerade vor dem selbem Projekt und würde mich freuen wenn es Tipps 
gibt.

Gruß

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.