Was ist CAN-Bus?
CAN steht für Controller Area Network. Der CAN-Bus ist ein serielles Kommunikationssystem, das es elektronischen Steuergeräten und anderen Geräten ermöglicht, über dasselbe Netzwerk miteinander Daten auszutauschen, ohne dass dafür ein zentraler Computer erforderlich ist.
Die Technologie wurde ursprünglich von Bosch entwickelt, um die Verkabelung und Kommunikation zwischen elektronischen Steuergeräten in Fahrzeugen effizienter zu gestalten.
Ein modernes Fahrzeug kann Dutzende, in manchen Fällen sogar mehr als hundert elektronische Steuergeräte enthalten.
Motorsteuergerät, Getriebesteuergerät, ABS-/ESC-System, Airbag-Steuergerät, Kombiinstrument, Klimasteuerung, Body Control Module und Fahrerassistenzsysteme tauschen kontinuierlich Informationen miteinander aus.
Würde jedes Steuergerät über separate Leitungen direkt mit allen anderen Modulen verbunden, entstünde eine äußerst komplexe elektrische Architektur.
Der CAN-Bus ermöglicht es dagegen, dass mehrere Steuergeräte dasselbe Kommunikationsnetzwerk gemeinsam nutzen.
Warum wurde CAN-Bus entwickelt?
Mit der zunehmenden Zahl elektronischer Systeme in Fahrzeugen stieg auch die Menge an Informationen, die zwischen den Steuergeräten ausgetauscht werden mussten.
Die Motordrehzahl wird beispielsweise nicht ausschließlich vom Motorsteuergerät benötigt.
Dieselbe Information kann auch von folgenden Systemen genutzt werden:
- Automatikgetriebesteuerung
- Kombiinstrument
- Stabilitätskontrolle
- Geschwindigkeitsregelanlage
- Fahrerassistenzsysteme
Über das CAN-Netzwerk kann das Motorsteuergerät diese Information auf dem Bus bereitstellen, sodass andere Steuergeräte dieselbe Nachricht verwenden können.
Dadurch reduziert sich der Bedarf an separaten Datenleitungen zwischen einzelnen elektronischen Systemen.
CAN-Technologie kann somit:
- Den Verkabelungsaufwand reduzieren
- Die elektrische Fahrzeugarchitektur vereinfachen
- Einen schnellen Datenaustausch zwischen Steuergeräten ermöglichen
- Die Fehlerdiagnose unterstützen
- Die Integration neuer elektronischer Funktionen erleichtern
Wie funktioniert CAN-Bus?
CAN basiert nicht auf klassischen Geräteadressen im herkömmlichen Sinn.
Anstatt Daten direkt an einen bestimmten Empfänger zu senden, übertragen die Geräte Nachrichten auf das gemeinsame Netzwerk.
Jede Nachricht besitzt einen Identifier, also eine Kennung.
Dieser Identifier beschreibt, welche Art von Information die Nachricht enthält, und spielt gleichzeitig eine wichtige Rolle bei der Priorisierung im Netzwerk.
Eine Nachricht kann beispielsweise die Motordrehzahl enthalten, eine andere die Raddrehzahlen und eine weitere den Lenkwinkel.
Grundsätzlich können alle geeigneten Teilnehmer im Netzwerk die Nachricht physikalisch empfangen.
Jedes Steuergerät entscheidet anschließend anhand seiner Softwarekonfiguration, welche Nachrichten verarbeitet werden sollen.
CAN verwendet daher eine nachrichtenbasierte Broadcast-Kommunikationsarchitektur.
Was sind CAN High und CAN Low?
Bei der weit verbreiteten High-Speed-CAN-Physik erfolgt die Kommunikation üblicherweise über zwei Leitungen:
CAN High (CAN-H)
CAN Low (CAN-L)
Diese beiden Leitungen bilden gemeinsam ein differentielles Signal.
Der Empfänger betrachtet dabei nicht nur die Spannung einer einzelnen Leitung, sondern wertet die Spannungsdifferenz zwischen beiden Leitungen aus.
Vorteil der differentiellen Übertragung
Die elektrische Umgebung eines Fahrzeugs ist vergleichsweise störanfällig.
Zündsysteme, Elektromotoren, Lichtmaschinen, Relais, Leistungselektronik und andere elektrische Verbraucher können elektromagnetische Störungen verursachen.
Wirken ähnliche Störungen gleichzeitig auf CAN-H und CAN-L, bleibt die Differenz zwischen beiden Signalen weitgehend erhalten.
Dadurch ist die differentielle Signalübertragung gegenüber elektromagnetischen Störungen robuster als viele einfachere einseitige Signalverfahren.
Was sind dominante und rezessive Bits?
In der CAN-Kommunikation werden neben den klassischen digitalen Zuständen 0 und 1 die Begriffe dominant und rezessiv verwendet.
Grundsätzlich gilt:
Dominantes Bit = Logisch 0
Rezessives Bit = Logisch 1
Eine wichtige Eigenschaft des CAN-Busses besteht darin, dass ein dominantes Bit ein rezessives Bit überstimmen kann.
Dieses Verhalten bildet die Grundlage des Arbitration-Mechanismus, der eingesetzt wird, wenn mehrere Steuergeräte gleichzeitig senden möchten.
Wie funktioniert CAN-Arbitration?
Mehrere Steuergeräte in einem CAN-Netzwerk können gleichzeitig versuchen, eine Nachricht zu senden.
In diesem Fall muss entschieden werden, welche Nachricht zuerst übertragen wird.
CAN verwendet dazu einen Mechanismus namens bitweise Arbitration.
Während ein Gerät seinen Identifier sendet, überwacht es gleichzeitig den Zustand des Datenbusses.
Sendet ein Steuergerät ein rezessives Bit, erkennt auf dem Bus jedoch ein dominantes Bit, weiß es, dass eine andere Nachricht eine höhere Priorität besitzt, und beendet seine Übertragung.
Das Steuergerät mit der höheren Priorität setzt die Übertragung fort.
Wie wird die Nachrichtenpriorität bei CAN bestimmt?
Bei CAN besitzt ein numerisch kleinerer Identifier während der Arbitration eine höhere Priorität.
Der Grund dafür liegt darin, dass bei kleineren Identifier-Werten dominante Bits früher auftreten.
In einer entsprechend ausgelegten Netzwerktopologie können beispielsweise Nachrichten aus Brems- oder Sicherheitssystemen mit hoher Priorität versehen werden.
Ein wichtiger Vorteil dieses Verfahrens besteht darin, dass die höher priorisierte Nachricht ohne vollständige Kollision oder Datenverlust weiter übertragen werden kann.
Woraus besteht ein CAN-Nachrichtenrahmen?
CAN-Daten werden innerhalb eines definierten Nachrichtenrahmens übertragen.
Ein klassischer CAN-Datenrahmen umfasst mehrere wichtige Felder.
Identifier
Der Identifier bestimmt die Art der Nachricht und ihre Priorität bei der Arbitration.
Classical-CAN-Systeme können entweder einen 11-Bit-Standard-Identifier oder einen 29-Bit-Extended-Identifier verwenden.
Control Field
Das Control Field enthält Informationen über den Aufbau der Nachricht und die Menge der übertragenen Nutzdaten.
Data Field
Im Data Field befinden sich die eigentlichen Anwendungsdaten.
Bei Classical CAN kann eine einzelne Nachricht maximal 8 Byte Nutzdaten enthalten.
CRC
Die Cyclic Redundancy Check (CRC) dient dazu zu erkennen, ob eine Nachricht während der Übertragung beschädigt wurde.
ACK
Der ACK-Mechanismus ist Teil der Bestätigung, dass die Nachricht von mindestens einem geeigneten Teilnehmer im Netzwerk korrekt empfangen wurde.
Ein CAN-Rahmen enthält darüber hinaus weitere Felder wie Start of Frame, End of Frame und zusätzliche Steuerinformationen.
Wie funktioniert die Fehlererkennung beim CAN-Bus?
Einer der Gründe für die weite Verbreitung von CAN in Fahrzeugen und industriellen Anwendungen ist die leistungsfähige Fehlererkennung.
Das CAN-Protokoll verwendet mehrere Mechanismen gleichzeitig.
Dazu gehören:
- CRC-Prüfung
- Bit Monitoring
- Bit-Stuffing-Prüfung
- Überprüfung des Frame-Formats
- ACK-Prüfung
Erkennt ein Steuergerät während der Übertragung einen Fehler, können entsprechende Fehlermechanismen im Netzwerk aktiviert werden.
Was sind Error Active, Error Passive und Bus Off?
CAN-Controller erkennen nicht nur Kommunikationsfehler.
Sie führen außerdem Fehlerzähler, um zu verhindern, dass ein defekter Teilnehmer das gesamte Netzwerk dauerhaft beeinträchtigt.
Mit zunehmender Zahl von Fehlern kann ein Gerät in verschiedene Fehlerzustände wechseln.
Error Active
Das Gerät kommuniziert weiterhin normal und kann erkannte Fehler aktiv signalisieren.
Error Passive
Erreicht der Fehlerzähler einen bestimmten Wert, wird die Fähigkeit des Geräts, Fehler aktiv im Netzwerk zu melden, eingeschränkt.
Bus Off
Verursacht ein Teilnehmer zu viele Übertragungsfehler, kann sich der CAN-Controller vollständig vom Bus trennen.
Dieser Mechanismus trägt dazu bei, zu verhindern, dass ein fehlerhaftes Steuergerät die Kommunikation des gesamten CAN-Netzwerks dauerhaft stört.
Warum werden Abschlusswiderstände im CAN-Bus verwendet?
High-Speed-CAN-Netzwerke verfügen an beiden physikalischen Enden des Busses normalerweise über jeweils einen 120-Ohm-Abschlusswiderstand.
Da beide 120-Ohm-Widerstände elektrisch parallel wirken, lässt sich bei einer geeigneten Widerstandsmessung zwischen CAN-H und CAN-L typischerweise ein Wert von etwa 60 Ohm messen.
Die Hauptaufgabe der Abschlusswiderstände besteht darin, Signalreflexionen auf der Übertragungsleitung zu reduzieren.
Bei höheren Datenraten darf die Verkabelung nicht nur als einfache elektrische Verbindung betrachtet werden, sondern muss als Übertragungsleitung ausgelegt sein.
Eine fehlerhafte Terminierung kann zu folgenden Problemen führen:
- Kommunikationsfehler
- Verschlechterung der Signalintegrität
- Sporadische CAN-Störungen
- Ausfall einzelner Steuergeräte aus dem Netzwerk
Daher gehört die Prüfung der Abschlusswiderstände zu den häufigen Schritten bei der Diagnose von CAN-Netzwerken.
Welche Datenrate erreicht CAN-Bus?
Die Datenrate eines CAN-Netzwerks hängt von Anwendung und Netzwerkauslegung ab.
In gängigen High-Speed-Anwendungen kann Classical CAN Datenraten von bis zu 1 Mbit/s erreichen.
Nicht jedes Netzwerk innerhalb eines Fahrzeugs muss mit derselben Geschwindigkeit arbeiten.
Netzwerke für Antriebsstrangsysteme mit hohem Kommunikationsbedarf können beispielsweise anders ausgelegt sein als Netzwerke für Karosserieelektronik mit geringerem Bandbreitenbedarf.
Mit zunehmender Leitungslänge kann die maximal mögliche Datenrate reduziert werden müssen.
Der Grund dafür liegt in der Signallaufzeit, die Einfluss auf Arbitration und Bit-Timing hat.
Was ist CAN FD?
Mit zunehmender Datenmenge in modernen Fahrzeugen wurden einige Einschränkungen von Classical CAN deutlicher.
Um diesem Bedarf zu begegnen, wurde CAN FD — CAN with Flexible Data-Rate entwickelt.
Einer der wichtigsten Vorteile von CAN FD besteht darin, dass innerhalb eines einzelnen Frames deutlich mehr Daten übertragen werden können.
Während Classical CAN maximal 8 Byte Nutzdaten unterstützt, kann CAN FD bis zu 64 Byte pro Frame übertragen.
CAN FD ermöglicht außerdem höhere Bitraten während der Datenphase einer Nachricht.
Die Arbitration kann weiterhin mit der nominalen CAN-Bitrate erfolgen, während während der Datenphase in geeigneten Netzwerken auf eine höhere Datenrate gewechselt werden kann.
Dadurch lässt sich die Effizienz insbesondere in modernen Fahrzeugarchitekturen steigern, in denen größere Softwaredaten, Sensordaten und umfangreichere Datenpakete übertragen werden müssen.
Sind CAN-Bus und OBD-II dasselbe?
Nein.
CAN-Bus und OBD-II (On-Board Diagnostics II) können miteinander verbunden sein, stellen aber nicht dieselbe Technologie dar.
CAN ist ein Kommunikationsnetzwerk zwischen elektronischen Steuergeräten.
OBD-II ist dagegen ein standardisiertes Diagnosesystem beziehungsweise ein standardisierter Rahmen für den Zugriff auf Fahrzeugdiagnosedaten.
In modernen Fahrzeugen kann die OBD-II-Kommunikation über CAN erfolgen.
Wird ein Diagnosegerät an die OBD-Schnittstelle angeschlossen, kann es daher über das CAN-Netzwerk mit bestimmten Steuergeräten kommunizieren.
Das CAN-Netzwerk eines Fahrzeugs dient jedoch nicht ausschließlich der Diagnose.
Steuergeräte tauschen auch während des normalen Fahrbetriebs kontinuierlich CAN-Nachrichten aus.
Welche Symptome können CAN-Bus-Fehler verursachen?
Da der CAN-Bus viele elektronische Steuergeräte miteinander verbindet, können Kommunikationsfehler sehr unterschiedliche Symptome verursachen.
Mögliche Anzeichen sind:
- Mehrere Warnleuchten leuchten gleichzeitig auf
- Bestimmte Steuergeräte sind mit einem Diagnosegerät nicht erreichbar
- Im Kombiinstrument erscheinen Warnungen aus verschiedenen Systemen
- Elektronische Systeme fallen vorübergehend aus
- Kommunikationsbezogene DTCs werden gespeichert
Ein CAN-Fehler bedeutet nicht automatisch, dass ein Steuergerät selbst defekt ist.
Mögliche Ursachen sind unter anderem:
- Kabelunterbrechungen
- Kurzschlüsse
- Korrosion oder Oxidation an Steckverbindungen
- Fehlerhafte Terminierung
- Probleme mit Spannungsversorgung oder Masse
- Defektes Steuergerät
Daher erfordern CAN-Störungen systematische elektrische Messungen und eine strukturierte Netzwerkanalyse.
Was ist der Unterschied zwischen CAN-Bus und LIN?
LIN (Local Interconnect Network) ist eine Kommunikationstechnologie für kostengünstigere Anwendungen mit geringerer Datenrate als CAN.
LIN wird häufig für Systeme eingesetzt wie:
- Elektrische Fensterheber
- Sitzverstellungen
- Außenspiegel
- Klimaanlagen-Aktuatoren
- Einfache Karosserieelektronik
Diese Anwendungen benötigen üblicherweise keine hohe Bandbreite.
CAN wird dagegen häufig in Systemen eingesetzt, die höhere Leistung und Zuverlässigkeit erfordern, darunter Motorsteuerung, Getriebe, Bremssysteme und komplexere elektronische Funktionen.
In modernen Fahrzeugen müssen CAN und LIN keine direkten Alternativen sein. Beide Technologien können innerhalb derselben Fahrzeugarchitektur für unterschiedliche Aufgaben gleichzeitig eingesetzt werden.
Was ist der Unterschied zwischen CAN-Bus und FlexRay?
FlexRay wurde für Fahrzeuganwendungen entwickelt, die höhere Datenraten und deterministische Kommunikation erfordern.
Die Technologie wurde insbesondere in bestimmten komplexen Fahrwerks- und Steuerungssystemen eingesetzt.
FlexRay ist jedoch komplexer und in der Regel teurer als CAN.
Mit der Weiterentwicklung von CAN FD und der zunehmenden Verbreitung von Automotive Ethernet verändert sich auch die Verteilung verschiedener Netzwerktechnologien in modernen Fahrzeugarchitekturen.
Was ist der Unterschied zwischen CAN-Bus und Automotive Ethernet?
Moderne Fahrzeuge erzeugen durch Kameras, Radarsensoren, Fahrerassistenzsysteme, hochauflösende Infotainmentsysteme und zentrale Rechenplattformen immer größere Datenmengen.
Der Bandbreitenbedarf solcher Systeme kann weit über den Möglichkeiten klassischer CAN-Netzwerke liegen.
Daher gewinnt Automotive Ethernet in modernen Fahrzeugarchitekturen zunehmend an Bedeutung.
Das bedeutet jedoch nicht, dass CAN vollständig verschwinden wird.
CAN und CAN FD eignen sich weiterhin sehr gut für Steuerungsnachrichten, Sensordaten und viele Formen der Kommunikation zwischen Steuergeräten.
In zukünftigen Fahrzeugarchitekturen werden CAN, CAN FD, Ethernet und weitere Kommunikationstechnologien voraussichtlich gemeinsam eingesetzt, wobei jede Technologie unterschiedliche Aufgaben übernimmt.
Wie wird CAN-Bus in Elektrofahrzeugen eingesetzt?
CAN ist nicht auf Fahrzeuge mit Verbrennungsmotor beschränkt.
Auch Elektrofahrzeuge benötigen einen umfangreichen Datenaustausch zwischen ihren elektronischen Steuerungssystemen.
Beispiele sind:
- Batteriemanagementsystem (BMS)
- Wechselrichter
- Elektromotorsteuerung
- Fahrzeugsteuergerät
- Ladesystem
- Thermomanagementsystem
Diese Systeme können kontinuierlich Informationen miteinander austauschen.
Batterie-SOC, Temperaturen, zulässige Lade- und Entladeleistung sowie verschiedene Systemzustände können über CAN oder andere Fahrzeugnetzwerke übertragen werden.
Daher bleibt CAN auch in Elektrofahrzeugen eine wichtige Kommunikationsinfrastruktur.
Welche Vorteile bietet CAN-Bus?
Zu den wichtigsten Vorteilen der CAN-Technologie gehören:
- Gemeinsame Nutzung eines Kommunikationsnetzes durch mehrere Steuergeräte
- Reduzierung der Verkabelungskomplexität
- Priorisierung von Nachrichten durch Arbitration
- Leistungsfähige Fehlererkennung
- Störungsresistente differentielle Kommunikation
- Fehlermanagement zur Begrenzung der Auswirkungen defekter Teilnehmer
- Breite Unterstützung in Automobil- und Industriesystemen
Diese Eigenschaften gehören zu den wichtigsten Gründen dafür, dass CAN seit Jahrzehnten in der Fahrzeugelektronik eingesetzt wird.
Welche Grenzen hat CAN-Bus?
Obwohl CAN ein äußerst erfolgreiches Kommunikationssystem ist, besitzt es angesichts der steigenden Datenanforderungen moderner Fahrzeuge gewisse Grenzen.
Das 8-Byte-Datenfeld und die begrenzte Bandbreite von Classical CAN reichen für moderne Sensoren mit sehr hohem Datenaufkommen nicht aus.
Informationen wie Kamerabilder oder große Mengen an Radardaten lassen sich über Classical CAN nicht effizient übertragen.
In großen Fahrzeugnetzwerken werden außerdem korrekte Netzwerktopologie, Terminierung, Leitungslänge und Timing zunehmend wichtig.
Daher wird CAN in modernen Fahrzeugen normalerweise nicht allein eingesetzt.
Stattdessen bildet es gemeinsam mit Technologien wie LIN, CAN FD und Automotive Ethernet einen Teil der umfassenden Fahrzeugkommunikationsarchitektur.
Die Zukunft des CAN-Busses
Die Fahrzeugelektronik entwickelt sich von traditionellen Architekturen mit vielen voneinander unabhängigen Steuergeräten zunehmend in Richtung zentralisierter und zonaler elektronischer Architekturen.
Neue Fahrzeuggenerationen setzen verstärkt auf leistungsfähige Zentralrechner, zonale Steuergeräte und Hochgeschwindigkeits-Ethernet-Netzwerke.
Trotz dieser Entwicklung verschwindet CAN nicht aus der Fahrzeugelektronik.
CAN FD erweitert die klassische CAN-Architektur um höhere Datenkapazitäten, während CAN-basierte Kommunikation weiterhin in zahlreichen Steuerungsanwendungen eingesetzt wird.
CAN-Technologie ist zudem nicht auf den Automobilbereich beschränkt. Sie kommt auch in industrieller Automatisierung, mobilen Arbeitsmaschinen, Landmaschinen, medizinischen Geräten und zahlreichen Embedded-Systemen zum Einsatz.
Durch die vergleichsweise einfache Verkabelungsstruktur, die Priorisierung von Nachrichten, robuste Fehlerkontrolle und ein über Jahrzehnte gewachsenes Ökosystem bleibt CAN-Bus eine der wichtigsten Kommunikationstechnologien moderner mechatronischer Systeme.