Kategorie: AVR Atmega Projekte
Zugriffe: 25444

CAN-Bus Analyzer I ( CAN-Bus Finder)


Projektstand:
Januar 2009 - Prototyp der Hardware wurde erfolgreich auf einer Lochrasterkarte aufgebaut. Mittels Testprogramm wurden alle Hardwarefunktionen erfolgreich getestet. Somit muss nur noch ein bisschen Software :-) geschrieben werden.

Allgemeines:
Der CAN-Bus (Controller Area Network) ist ein Datenbus, welcher in der heutigen Fahrzeugen nicht mehr wegzudenken ist. Entwickelt wurde er von Bosch in den 80er Jahren. Mit dem ISO-Standard ISO 11898 wurde das Protokoll für die Anwendung im PKW international standardisiert.

CAN ist das derzeit am häufigsten eingesetzte Kfz-Bussystem für Low-Speed und Highspeed Anwendungen.
Meistens kommen mehrere CAN-Busse mit unterschiedlichen Baudraten im PKW zum Einsatz:


Beim CAN-Bus erfolgt die Datenübertragung auf einer Zwei-Draht-Leitung (CAN-High und CAN-Low) Leitung, deren gemeinsamer Bezugspunkt die Masse Leitung ist. Üblicherweise sind diese 2 Leitungen auch miteinander verdrillt (Twisted Pair) wodurch eine besserer EMV erreicht wird. Ein weiteres Merkmal des CAN-Busses ist, dass keine Geräte (man spricht hier von CAN-Knoten) direkt addressiert werden, sondern eine CAN-Message aus einem Identifier (Message ID) und bis zu 8 Datenbytes besteht. z.B. (LEN gibt die Anzahl der Datenbytes an)
ID LEN Datenbytes Kommentar
351 8 00 00 00 00 00 00 00 00 Message in der die Geschwindigkeitinformation bei VW-Fahrzeugen enthalten ist

Dies sollte mal als kurze Einführung reichen. Weitere Informationen zum CAN-Bus sind unten bei den Links zu finden.

Kurzbechreibung:
Der CAN-Bus-Analyzer erkennt automatisch das Format des CAN-Bus Protokolls ( 11-Bit Identifier oder 29-Bit Identifier und die aktuelle Baudrate) und protokolliert die CAN-Messages via RS232-Schnittstelle an den PC. Ebenso wird immer die letzte Empfangene CAN-Message auf dem optionalen LCD anzgezeigt (empfohlen wird ein 2x24 Zeichen Textdisplay HD44780 kompatibel). Ebenso ist die Hardware in der Lage, CAN-Bus Messages selbst zu versenden (dies sollte man aber aus Sicherheitsgründen beim Motor-CAN nicht machen)
Kenndaten der Hardware:

Hauptzweck der Schaltung ist es, in Fahrzeugen den CAN-Bus zu lokalisieren und zum analysieren der CAN-Messages

Software:
noch in der Mache :-)
Compiler: CodeVision AVR C

Programmierung:
Die Programmierung erfolgt via ISP Schnittstelle mit den üblichen Programmieradaptern, bzw. mit dem STK500 Entwicklungskit oder mittels JTAG-Interface

Fusesettings für den Atmel Prozessor:
- kommt noch

Schaltplan:

Schaltplan vom CAN-Bus Analyzer

Bilder vom Prototypen Aufbau:

Bild vom Schaltungsaufbau auf Lochraster Leiterplatte


Leiterbahnunterseite vom Testaufbau:
Bild von der Leiterbahnunterseite vom Aufbau



Beispiel einer emfpangener Testmessage mit der CAN-ID 110 und 8 Datenbytes:
Anzeiger einer empfangener CAN-Message im Display