
Eine kurze Rückblende: 1986 kündigte Bosch auf einem SAE-Kongress in Detroit das CAN-Protokoll an. Zwei Jahre später lieferten Intel und Philips Semiconductors (heute: NXP) Stand-alone-CAN-Controller. Nach weiteren drei Jahren verließen die ersten mit einem CAN-Netzwerk ausgerüsteten S-Klasse-Fahrzeuge von Mercedes die Werkshallen. Heute befinden sich in fast allen Pkw mehrere CAN-Netzwerke, die zwischen 30 und 200 elektronische Steuergeräte verbinden. Jährlich werden mehr als drei Milliarden CAN-Schnittstellen verbaut.
CAN-Netzwerke wurden von Beginn auch in anderen Industrien eingesetzt: Pioniere waren die Aufzugsbranche, die Medizintechnik und der Textilmaschinenbau. Im Jahre 1992 gründeten sechs Firmen und zwei Privatpersonen den eingetragenen Verein CAN in Automation (CiA), der sich die Weiterentwicklung und Vermarktung des CAN-Protokolls auf die Fahnen geschrieben hat. Derzeit hat der Verein weltweit über 750 Mitglieder. In den folgenden Jahren übernahm er hauptsächlich die Pflege und Weiterentwicklung der CANopen-Spezifikationen. CANopen umfasst die auf dem CAN-CC-Protokoll basierenden höhere Protokolle (application layer) und sogenannte Geräte- und Anwendungsprofile, mit denen es möglich ist, interoperable Produkte zu entwickeln. Es gibt CANopen-Geräteprofile für Ein-/Ausgabe-Module (CiA 401), elektrische und hydraulische Antriebe (CiA 402 bzw. CiA 408), Drehgeber (CiA 406), Neigungssensoren (CiA 410) sowie Container-Traversen (CiA 444), um nur einige wenige zu nennen. Einige Branchen haben Anwendungsprofile entwickelt, die sämtliche Gewerke-Schnittstellen spezifizieren. Dazu zählen unter anderem Aufzugssteuerungen (CiA 417), Abfallsammelfahrzeuge (CiA 422) und Unterwasser-Öl-und-Gas-Systeme (CiA 443). Insgesamt umfassen die CANopen-Spezifikationen mehr als 20.000 DIN-A4-Seiten.
Die 2. Generation: CAN FD
Im Jahre 2012 startete Bosch auf Wunsch einiger PKW-Hersteller die Entwicklung des CAN-FD-Protokolls. Drei Jahre später wurde es mit Verbesserungen in die Norm ISO11898-1 aufgenommen. Im Vergleich zum CAN-CC-Datenrahmen-Telegramm (data frame), welches Datenlängen bis zu 8 Byte unterstützt, hat es ein erweitertes Datenfeld von bis zu 64 Byte. Die aus dem CAN-CC-Protokoll bekannten Remote-Frames, mit denen ein Teilnehmer von einem anderen Datenframes anfordern kann, gibt es im CAN-FD-Protokoll nicht.
Außerdem kann im CAN-FD-Datenframe nach der Buszuteilung (bus arbitration) auf eine höhere Bitrate umgeschaltet werden, da nur noch ein Netzteilnehmer senden darf und eine In-Bitzeit-Abtastung nicht mehr notwendig ist. Realistische Bitraten von 2MBit/s sind auch in Mehrpunkt-Netzwerken (multi-drop networks) mit sogenannten CAN-FD-Transceivern über einen Temperaturbereich von -40 bis +125°C erreichbar. Bei Punkt-zu-Punkt-Verbindungen kann man sogar Bitraten bis 5MBit/s erzielen. CAN-FD-Transceiver wurden erstmals in der Norm ISO11898-2 standardisiert.
Die nach der CAN-SIC-Transceiver-Spezifikation (signal improvement capability) implementierten integrierten Schaltkreise können das im Wesentlichen durch die Netzwerktopologie verursachte Klingeln auf den Leitungen unterdrücken. Mit ihnen sind deshalb realistische Bitraten von bis zu 8 MBit/s möglich, selbst wenn hybride Netzwerktopologien mit mehreren Teilnehmern verwendet werden.

Die höheren Protokolle CANopen (genormt in EN50325-4) und J1939-21 (wird vor allem in Nutzfahrzeugen eingesetzt) wurden entsprechend weiterentwickelt, um die Vorteile des CAN-FD-Protokolls zu nutzen. Die Ergebnisse: CANopen-FD (CiA 1301) und J1939-17/22. Diese auf CAN-FD-basierenden höheren Protokolle haben noch keine hohe Marktdurchdringung erreicht. Erste Gerätehersteller und Anwender haben jedoch CANopen-FD-Netzwerke realisiert und einige Nutzfahrzeuge (einschließlich Baumaschinen) verwenden J1939-17/22-Netzwerke. Der CiA hat bereits einige Profil-Spezifikationen an die CANopen-FD-Protokolle angepasst. Anders sieht es bei den PKWs aus. Fast alle marktrelevanten Fahrzeughersteller migrierten in den letzten Jahren schrittweise von CAN-CC- zu CAN-FD-Netzwerken. Selbstverständlich nur dort, wo längere Frames und höhere Bitraten notwendig waren, also vor allem im Motormanagement (drive-train).
Die 3. Generation: CAN XL
Kaum war die zweite Generation des CAN-Protokolls in trockenen Tüchern, begannen CiA-Mitglieder auf Wunsch von Volkswagen, die dritte Generation zu spezifizieren. Ziele waren, die maximale Datenfeldlänge auf 2048 Byte zu erhöhen und die Bitrate auf minimal 10MBit/s zu steigern. Die ersten Treffen fanden Ende 2018 statt und Anfang 2024 wurden die entsprechenden ISO-Normen veröffentlicht. ISO11898-1 standardisierte nun alle drei CAN-Protokoll-Generationen und sämtliche CAN-Rahmentelegramme:
- CBFF (classic base frame format): CAN-CC-Daten-Telegramm mit 11Bit-IDs (identifier)
- CEFF (classic extended frame format): CAN-CC-Daten-Telegramm mit 29Bit-IDs
- RF (remote frame): CAN-CC-Anforderungstelegramme mit 11- bzw. 29Bit-IDs
- FBFF (FD base frame format): CAN-FD-Daten-Telegramm mit 11Bit-IDs
- FEFF (FD extended frame format): CAN-FD-Daten-Telegramm mit 29Bit-IDs
- XLFF (XL frame format): CAN-XL-Daten-Telegramm mit 11Bit-Prioritäts-ID und 32Bit-Akzeptanzfeld
- EF (error frame): Fehlertelegramm
- OF (overload frame): Überlasttelegramm
Im CAN-XL-Protokoll wurden Busarbitrierung und Dateninhaltskennzeichnung separiert. Das 11Bit-Prioritätsfeld (priority field) wird für die Buszuteilung (Sendeerlaubnis) genutzt und das 32Bit-Akzeptanzfeld (acceptance field) identifiziert den Inhalt des Datenfeldes. Bisher nutzte man für beide Zwecke die 11Bit- oder 29Bit-IDs.
Zusätzlich wurde das 8Bit-SDT-Feld (service data type field) eingeführt, das dem Empfänger mitteilt, welches höhere Protokoll verwendet wird. Somit kann man auf dem gleichen CAN-XL-Netzwerk verschiedene Anwendungen betreiben. Die SDT-Werte werden vom CiA zugeteilt. Auch Werte für das Transportieren von Ethernet-Frames und TCP/IP-Segmenten sind definiert. CAN-XL fungiert dann als robustes und zuverlässiges Transportmittel von Ethernet-basierenden Nachrichten.
Ein weiteres Novum ist das 8Bit-VCID-Feld (Virtual CAN network IDentifier). Mit diesem vom Systementwickler eindeutig zugeordneten Wert kann der Empfänger erkennen, welchem virtuellen Netzwerk das Datenframe zugeordnet ist. So ist es möglich mehrere Anwendungen mit dem gleichen höheren Protokoll zu unterscheiden. Dadurch eignet sich das CAN-XL-Protokoll auch für Rückgrat-Netzwerke (backbone network).

Mehr Sicherheit und Echtzeitfähigkeit
Das CAN-XL-Ökosystem (ecosystem) wird noch weiter ausgebaut. Im CiA wird beispielsweise für die Datensicherungssicht (data link layer) die optionale Unterschicht (sublayer) CANsec diskutiert. Sie soll hardware-implementierbar sein und das CAN-XL-Protokoll gegen Cyberangriffe schützen. Zusätzlich will die Organisation eine optionale Frame-Fragmentierung spezifizieren. Sie soll lange CAN-XL-Frames automatisch in kleine Häppchen zerlegen, die beim Empfänger automatisch wieder zusammengefügt werden, was die Echtzeitfähigkeit verbessert.
Mit CAN-SIC-XL-Transceivern sind im FAST-Mode Bitraten bis zu 20MBit/s möglich. Im Gegensatz zu allen anderen Transceiver-Arten wird keine NRZ-Kodierung (non-return-to-zero), sondern eine PWM-Kodierung (pulse-width modulation) verwendet. Die Umschaltung von der NRZ-kodierten Arbitrierungsphase zur PWM-kodierten Datenphase erfolgt in zwei Schritten. Am Ende des CAN-XL-Frames wird wieder zurück geschaltet. In mehreren CiA-Plugfests wurde dies mit verschiedenen Netzwerktopologien erfolgreich getestet. Bei Verwendung des FAST-Modes muss allerdings die automatische Wiederholung von fehlerhaften Datenframes abgeschaltet werden und in der Arbitrierungsphase sind maximal 667kBit/s erreichbar anstatt der sonst üblichen 1MBit/s. Man kann selbstverständlich die Transceiver im SIC-Mode betreiben, dann besteht zwar weiterhin die Einschränkung auf 667kBit/s, aber man kann dann sogar CAN-FD- und CAN-XL-Knoten im Netzwerk parallel nutzen. Die automatische Wiederholung von fehlerhaften Datenframes ist dabei aber aktiv.
Die folgenden Transceiver-Arten sind in ISO11898-2:2024 standardisiert:
- HS (high-speed): Sie unterstützen Bitraten bis 1MBit/s.
- FD: Sie eignen sich für Bitraten über 1MBit/s; abhängig von ihrer Symmetrie-Fähigkeit und vom Netzwerkdesign sind 2MBit/s und mehr erreichbar.
- SIC: Sie haben eine dynamische Impedanz und können das so genannte Klingeln auf den Netzwerkleitungen unterdrücken; mit ihnen sind Bitraten bis zu 8MBit/s möglich.
- SIC XL: Im FAST-Mode mit PWM-kodierten Bits erreicht man abhängig von der Netzwerkauslegung bis zu 20MBit/s.
SIC-XL-Transceiver sind noch im Prototypenstatus. Alle anderen erwähnten Transceiver-Arten sind in der Serienproduktion und werden in großen Stückzahlen eingesetzt.
Definition der Begrifflichkeiten
Die Einführung der dritten CAN-Generation macht es endgültig notwendig, die Begriffe klar zu definieren und auch in Datenblättern und Produktbeschreibungen zu verwenden. Spricht man von CAN, meint man alle drei Protokollgeneration. Für die einzelnen Generationen sollte zukünftig klar zwischen CAN CC (1. Generation), CAN FD (2. Generation) und CAN XL (3. Generation) unterschieden werden. Für die Transceiver gilt entsprechendes; sie sind allerdings nicht an eine bestimmte CAN-Protokoll-Generation gebunden. Nur CAN-XL-Transceiver im FAST-Mode benötigen einen CAN-XL-Controller, der entsprechend konfiguriert ist. Die Skalierbarkeit der physikalischen Übertragung ist für alle drei CAN-Protokollgenerationen in gewissem Rahmen gegeben und ein wesentliches Merkmal. So lassen sich CAN-Netzwerke optimal an Anforderungen bezüglich Topologie und Datendurchsatz anpassen.
In den Normen ISO11898-1:2024 und ISO11898-2:2024 wurden weitere Begriffe vereinheitlicht und neu definiert, um Missverständnisse und Fehlinterpretationen zu minimieren. Deshalb appelliert der CAN in Automation e.V. an alle diese aktuellen Begrifflichkeiten zu nutzen. Entsprechend dem international genormten OSI-Modell (open systems interconnection), ist eine Nachricht (message) ein Term der Anwendungsschicht, ein Segment (segment) gehört zur Transportschicht und ein Paket (packet) zur Netzwerkschicht. Die Datensicherungsschicht überträgt Rahmentelegramme (frame). Auch hier gilt: eine einheitliche Nutzung der Begriffe erleichtert das Lernen und Verstehen.