CAN, CAN FD, CAN XL - Was sind die Unterschiede?

14 Juli 2024 um 22:00
Ixxat
CAN, CAN FD, CAN XL - Was sind die Unterschiede
CAN, CAN FD und CAN XL sind Weiterentwicklungen von CAN, die Datenraten und Nachrichtengrößen verbessern, um den Anforderungen moderner Automobil- und Industrieanforderungen gerecht zu werden.

CAN (Controller Area Network), CAN FD (CAN with Flexible Data-Rate) und CAN XL sind drei Varianten des CAN-Bussystems, das häufig in der Automobil- und Industrieautomation eingesetzt wird. 

Das klassische CAN wurde in den 1980er Jahren entwickelt und ist weit verbreitet in der Automobilindustrie zur Vernetzung von Steuergeräten (ECUs) aber auch in industriellen Anwendungen. Hierbei kommen oft auch höhere Protokolle zum Einsatz, welche auf CAN basieren, wie z. B. CANopen, DeviceNet oder SAE J1939. 

Beim klassischen CAN werden datenraten bis zu 1 Mbit/s unterstützt und es können maximal 8 Byte pro Nachricht übertragen werden.

 

Classic CAN message

 

Speziell im Automotive-Bereich wuchs der Bedarf größere Datenmengen übertragen zu können. Aus diesem Grund wurde 2012 von Bosch eine erweiterte Version des bekannten „klassischen“ CAN vorgestellt, bei welchem die verwendbare Datenrate sowie die Nutzdatenlänge deutlich erweitert wurde. Auf der anderen Seite wurden bewährte Konzepte von CAN beibehalten: Die Arbitrierung anhand Nachrichten-ID, ereignisgesteuerter Versand von Nachrichten und das Quittieren von empfangenen Nachrichten durch das Acknowledgement-Bit.

Im Gegensatz zum klassischen CAN ermöglicht CAN FD die Übertragung von bis zu 64 Byte pro Nachricht. Während der bei der Übertragung der Daten kann CAN FD hierbei auf eine höhere Bitrate von bis zu 5 Mbit/s (in einigen Fällen sogar bis zu 8 Mbit/s) umschalten.

 

CAN FD message

 

Der Haupt-Einsatzbereich von CAN FD liegt derzeit im Automotive-Umfeld, in industriellen Anwendungen ist es derzeit selten zu finden. 

Ein Mischbetrieb (ohne zusätzliche Gateways) zwischen klassischen CAN-Knoten und CAN-FD-Knoten ist nicht möglich, da der klassische CAN-Knoten auf die CAN-FD-Nachricht mit dem Senden eines Error-Frame reagieren würde. Nach dem Durchlaufen der Fehlerzustände (Fehleraktiv/Fehlerpassiv/Bus-Off) würde der klassische Teilnehmer nach einer kurzen Zeit seine Kommunikation vollständig einstellen.

CAN XL ist eine neue Version des Controller Area Network (CAN), die kurz nach der Einführung von CAN FD auf den Markt kommt. Diese Entwicklung spiegelt auch die schnellen Fortschritte in der Automobilelektronik wider. Besonders wichtig ist hier der Einfluss von Automotive Ethernet und IP-Technologien, die die Art und Weise, wie in Fahrzeugen kommuniziert wird, stark verändern. 

Funktionsprinzip und Grundstruktur von CAN XL entsprechen derer von CAN FD. 
Jedoch dient der Identifier fortan lediglich als Prioritäts-ID für die Arbitrierung. Für die Adressierung wird ein 32-Bit Acceptance Field (AF) eingeführt, das Bestandteil des Control Field ist. 

Während die Arbitrierungsrate mit <1 Mbit/s unverändert bleibt, macht die Datenrate mit bis zu 20 Mbit/s einen weiten Sprung nach vorne. Mit der erweiterten Datenfeldgröße von bis zu 2.048 Byte können nun auch erstmalig Ethernet Frames innerhalb einer CAN-Nachricht übertragen werden.

 

CAN XL message

 

Durch Einführung eines neuen SDT (Service Data Unit Type) Feldes kann nun auch auf das nächste, höher liegende Protokoll hingewiesen werden. Hiermit können die Nutzdaten in Abhängigkeit des SDT-Feldes unterschiedlich interpretiert werden. Darüber hinaus kann mit Hilfe des neuen VCID-Feldes (Virtual CAN Network ID) ein physisches CAN XL-Netzwerk in mehrere logische Netzwerke unterteilt werden. Durch das 8 Bit große Feld, können so bis zu 256 verschiedene logische Netzwerke auf CAN XL betrieben werden.


Zusammengefasst, während der klassische CAN für grundlegende Netzwerkanforderungen konzipiert wurde, bieten CAN FD und CAN XL erweiterte Fähigkeiten in Bezug auf Datenrate und Datenlänge, um den wachsenden Bedarf an höherer Datenübertragung und größeren Datenpaketen in modernen Automobil- und Industrieanwendungen zu bewältigen.

 

Abbreviations