EP Basics: CAN und CAN FD Flexibler Datenbus: CAN FD kann mehr als nur Automotive

Von Bernd Westhoff *

Anbieter zum Thema

Die Datenübertragungstechnik Controller Area Networking mit flexiblen Datenraten, kurz CAN FD, ist nicht auf Anwendungen in der Automobiltechnik beschränkt – und hat Vorteile gegenüber RS232 oder RS485.

Netzwerker: Die umfangreiche RA-Baureihe von Renesas enthält auch Modelle mit integrierten CAN-Schnittstellen. Variante RA6M5 beherrscht darüber hinaus CAN-FD.
Netzwerker: Die umfangreiche RA-Baureihe von Renesas enthält auch Modelle mit integrierten CAN-Schnittstellen. Variante RA6M5 beherrscht darüber hinaus CAN-FD.
(Bild: Renesas Electronics)

Aufgrund höherer Bandbreitenanforderungen im Automobilbereich wurde die CAN-Spezifikation (Controller Area Networking) für flexible Datenraten, kurz CAN FD, erweitert. In den 80er Jahren von Bosch definiert, wurde eine Aktualisierung erforderlich, die auch für Nicht-Automotive-Anwendungen von großem Nutzen ist. CAN hat gegenüber serieller Standardkommunikation wie RS232 oder RS485 wichtige Vorteile: Dazu zählen höhere Über­tragungsgeschwindigkeit, integrierte Fehler­erkennung, robuste Kommunikation und geringere Kosten.

Die wichtigsten Treiber der Automobilindustrie sind es, die Verkabelung im Fahrzeug und damit die Kosten zu reduzieren. CAN nutzt Twisted-Pair-Kabel, die einfacher zu verlegen sind als umfangreiche Kabelbäume – die zudem auch viel schwerer sind. Damit sich CAN und CAN FD mit hohen Datenraten nutzen lassen, ist der Einsatz von Abschlusswiderständen nötig. Ein großer Pluspunkt ist, dass sich das System leicht um weitere Knoten erweitern lässt.

Bildergalerie
Bildergalerie mit 6 Bildern

Nachricht mit höchster Priorität kommt durch

CAN und CAN FD verfügen über sehr zuverlässige Fehlerprüfungsmechanismen. Bitstuffing und Überwachung arbeiten auf Schicht 1, Frame Check, Acknowledgement und Cyclic Redundancy Check auf Schicht 2 des OSI-Modells. Beim Bitstuffing wird nach fünf aufeinanderfolgenden High oder Low Bits ein alternierendes Bit hinzugefügt. Wenn sechs aufeinanderfolgende Bits mit demselben Level erkannt werden, muss etwas falsch sein. Die Bitüberwachung analysiert jede gesendete Nachricht. Bei einer Abweichung (außer im Arbitrierungs- oder Bestätigungsfeld) wird ein Fehler erkannt. Ein großer Vorteil ist, dass Fehler sehr zeitnah entdeckt werden. Die zyklischen Redundanzprüfungen sind bei CAN und CAN FD aufgrund der verschiedenen Datenlängen unterschiedlich implementiert. Frame-Fehler (manchmal auch Format- oder Formfehler genannt) verwenden vordefinierte Werte, die auf der Empfängerseite identisch sein müssen. Jede Nachricht muss bestätigt werden. Diese drei Fehlerkontrollmechanismen funktionieren weitgehend auf Nachrichtenebene.

Mit ihren verschiedenen Fehlerprüfungen arbeiten CAN und CAN FD sind sehr robust und zuverlässig. Während der Übertragung einer Nachricht gehen keine Daten verloren und Nachrichtenkollisionen werden ver­hindert. Jeder Knoten wartet eine Zeit der Inaktivität ab, bevor er sendet. Wenn zwei Nachrichten gleichzeitig gesendet werden, erkennt der Sender, welche Nachricht die höhere Priorität hat und deaktiviert die Nachricht mit der niedrigeren Priorität. Im Vergleich zu Ethernet, wo beide Nachrichten angehalten und später gesendet werden, kommt bei CAN die Nachricht mit der höchsten Priorität durch.

CAN FD: Hohe Geschwindigkeit und geringe Latenzzeit

CAN unterstützt Datenraten bis zu 1 MBit/s. Bei CAN FD lässt sich die Datenrate für den Steuer- und Datenbereich in Abhängigkeit vom maximalen Takt des CAN-FD-Controllers erhöhen. Die Rate für die Arbitrierungsphase bleibt bei maximal 1 MBit/s.

Die Latenzzeit für CAN ist kleiner als 145 µs, für CAN FD mit 8 MBit/s und 8 Byte Daten kleiner als 58 µs. Kurze Datenframes haben einen Vorteil in Bezug auf die Latenzzeit. Das gesamte Paket wird schneller übertragen sowie schneller dekodiert, was die Reaktionszeit wesentlich reduziert. Bei höheren Übertragungsraten auf CAN FD ist dieser Effekt noch größer. Beispielsweise im Vergleich zur TCP/IP-Kommunikation, die für große Datenmengen ausgelegt ist, sind die Pakete relativ groß und damit steigt die Latenzzeit. Das bedeutet, dass CAN FD, abhängig von der Datenmenge, potentiell kürzere Reaktionszeiten hat als die TCP/IP-Kommunikation mit 10 oder 100 MBit/s. CAN FD weist eine bessere Gesamtechtzeitleistung mit rechtzeitiger Fehlererkennung auf.

Beim Einsatz der Technik sind jedoch einige Einschränkungen zu beachten: Hinsichtlich der Anzahl der Knoten gibt es theoretisch keine Begrenzung, da jede Nachricht an einen anderen Knoten gesendet werden kann. Praktisch verursacht jeder Knoten jedoch Signalreflexionen auf dem Bus. Die Übertragungsqualität ist abhängig vom CAN-Transceiver und der Implementierung auf der physikalischen Schicht. Dies ist auch der Grund für die Geschwindigkeitsbegrenzung bei großen Entfernungen. Übliche Werte sind maximal 25 Knoten bei CAN und maximal 8 Knoten bei CAN FD.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Anwendungsbeispiele außerhalb von Automotive

Wegen der zuvor beschriebenen umfassenden Vorteile eignet sich CAN FD auch für den Einsatz außerhalb von Automobilanwendungen, für die es ursprünglich entwickelt wurde. CAN und CAN FD kommen bereits in vielen Branchen zum Einsatz, darunter Gebäudeautomatisierung (Aufzüge und Fahrstühle, Zugangskontrolle, Lichtsteuerung, sichere Türöffner, Klimatisierung), Auto­mobil-Ersatzteilmarkt (Flottenverfolgung, Fahrzeugverfolgung, Protokollierung für vorausschauende Wartung, Telematik, Versicherung, Blackbox, Medizinische Geräte), Industrie (Industrielle Antriebe, Schaltschrank), Consumer (Spielautomaten) oder auch Robotik (zwischen Host und vernetzten Antrieben). Ein Anwendungsfall für MCUs mit zwei CAN-FD-Controller-Einheiten in Kombination mit TrustZone und Security ist eine Steuereinheit in der Gebäudeautomatisierung, die sichere von nicht sicheren Bereichen trennt. Ein CAN-FD-Controller kann für die sichere Seite eingesetzt werden, um kritische Komponenten wie Türöffner, Schiebetüren oder ID-Kartenleser zu steuern. Der zweite CAN FD kann für nicht kritische Bereiche in der Gebäudeautomation genutzt werden, etwa Lichtschalter, Glühbirnen oder Türen im Inneren des Gebäudes.

Ein weiterer Anwendungsfall für duale CAN-FD-Einheiten ist die Gateway-Funktionalität, z. B. für große Gebäudeautomatisierungssysteme, in großen Schaltschränken, Kommunikationserweiterungsmodulen usw. Es gibt viele verschiedene Anwendungsfälle für MCUs mit integrierten CAN-FD-Controllern, z. B. für Aktoren, Sensoren, Steuerungen usw. CAN FD eignet sich sehr gut für hohe Sicherheits- und Zuverlässigkeitsanforderungen, zum Beispiel in Robotern, Aufzügen und Transportsystemen, aber auch in der Medizin und im Gesundheitswesen. Die hohen Anforderungen an die Zuverlässigkeit in der Automobilindustrie sind in diesen Anwendungsfällen sehr vorteilhaft.

Unterschiede zwischen klassischem CAN und CAN FD

Die in der Bosch-Spezifikation beschriebenen Protokolle CAN und CAN FD verwenden beide die gleiche physikalische Übertragungsschicht. Die Version CAN FD erweitert zunächst das herkömmliche CAN-Protokoll. Das bedeutet, dass es mit bestehenden CAN-2.0B-Netzwerken kompatibel ist. Es gibt zwei Versionen des herkömmlichen CAN, CAN 2.0A und CAN 2.0B. Es ist nicht möglich, CAN 2.0A (sowie die älteren Versionen) und CAN 2.0B / CAN FD auf demselben Bus zu ver­wenden, da Übertragungsfehler auftreten können. Der Grund dafür sind die 29-Bit-Nachrichten-Identifier, die CAN 2.0A nicht verarbeiten kann, für die aber CAN 2.0B und CAN FD erweitert wurden.

CAN 2.0B nutzt keine erweiterten 29-Bit-Frames und wird auch als CAN 2.0B passiv bezeichnet. Es kann gleichzeitig mit CAN 2.0A zum Einsatz kommen. CAN 2.0A wird auch als Basis- oder Standard-CAN bezeichnet. Es nutzt 11- Bit-Nachrichten-Identifier und entspricht der ISO11519. CAN 2.0B wird als Full CAN bezeichnet. Es verwendet 11-Bit- und/ oder 29-Bit-Message-Identifier und erfüllt ISO11898 (-1: Data Link Layer, -2: Physical Layer für High-Speed CAN, -3: Physical Layer für Low-Speed Fault Tolerant CAN, -2 und -3 sind nicht Teil der Bosch-Spezifikation). CAN FD und CAN 2.0B können auf demselben Bus eingesetzt werden. Die Datenstruktur von CAN ist bei allen Erweiterungen die gleiche. Der Unterschied liegt im größeren Datenbereich bei CAN FD mit maximal 64 Byte im Vergleich zu maximal 8 Byte bei CAN, sowie in der höheren Übertragungsrate für den Steuer- und Datenbereich von CAN FD.

Die physikalische und die Data-Link-Schicht (Level 1 und Level 2 im OSI-Modell) sind in der CAN/CAN-FD-Norm definiert. Sie bilden die Grundlage für Industrievarianten auf höheren Schichten, aber auch für unterschiedliche Implementierungen auf der physikalischen Schicht. Die häufigste Implementierung der physikalischen Schicht ist die Verwendung von Standard-Transceivern mit 5 V über Twisted-Pair-Kabel. Es gibt auch andere Varianten der physikalischen Schicht mit Eindraht-CAN-Transceivern oder Vari­anten für physikalische Schichten mit niedrigem Stromverbrauch und niedriger Geschwindigkeit.

Übergeordnete Protokolle mit CAN oder CAN FD

CAN oder CAN FD bilden die Datenlink­ebene für Protokolle der höheren Schicht, die in den folgenden branchenspezifischen Fällen zum Einsatz kommen.

DeviceNet: Das von der ODVA spezifizierte „DeviceNet“ ist ein Protokoll der Anwendungsschicht, das CAN sowohl auf der Datenverbindung als auch auf der physikalischen Schicht nutzt. Der Grund dafür ist, dass CAN dem herkömmlichen RS485 überlegen ist. Die Hauptanwendungen liegen in der Fabrikautomation.

CANOpen: Im „CANOpen“-Standard bildet Full CAN die Datenverbindungsschicht, bei „CANopen FD“ ist es CAN FD. Beide werden von CiA mit unterschiedlichen Ausprägungen spezifiziert:„CANopen“ (CiA 301) basiert auf klassischem CAN für allgemeine Embedded-Echtzeit-Steuerung, „CANopen FD“ (CiA 1301), basierend auf CAN FD und CAN XL für Embedded-Echtzeitsteuerungen mit erweiterten Funktionen, J1939-Profil für herkömmliches CAN und CAN FD für kommerzielle Straßenfahrzeuge, Isobus-Profil auf der Basis von herkömmlichem CAN für land- und forstwirtschaftliche Maschinen basierend auf J1939 und schließlich NMEA2000-Profil auf der Basis von klassischem CAN für maritime Anwendungen basierend auf J1939

TTTCAN: Time Triggered CAN erweitert das bestehende CAN-Protokoll um eine zeitgesteuerte Nachrichtenübermittlung. Dies ermöglicht die Übertragung von Nachrichten in definierten Zeitintervallen. Damit können mehrere Master Nachrichten mit dem CAN-Arbitrierungsprinzip in dem Zeitabschnitt übertragen, der jedem Master zugewiesenen ist. Dadurch lässt sich das Echtzeitverhalten noch weiter verbessern.

Unter dem Strich lässt sich CAN für verschiedene physikalische Schichten einsetzen. Die gängigste Variante ist eine 5-V-Twisted-Pair-Verkabelung mit Differenzsignalen. Sie wird mit Standard-Transceivern in Kombination mit einer MCU mit integrierter CAN-Controller-IP implementiert. Die anderen Varianten sind Protokolle auf höheren Ebenen, die die physikalische und/oder die Data-Link-Schicht von CAN nutzen. Dies sind z. B. CANopen oder DeviceNet.

Viele Mikrocontrollern der RA-Familie von Renesas haben einen CAN-2.0B-Controller integriert. Dazu zählen die RA2-Serie mit den Gruppen RA2L1, RA2A1; die RA4-Serie mit den Gruppen RA4M1, RA4M2, RA4M3, RA4E1, RA4W1 sowie die RA6-Serie mit den Gruppen RA6T1 und RA6E1. Darüber hinaus verfügt die RA6-Serie über zwei CAN-2.0B-Controller in den Gruppen RA6M1, RA6M2, RA6M3 und RA6M4. Die RA6T2-Gruppe integriert entweder einen CAN-FD- oder CAN-2.0B-Controller und die RA6M5-Gruppe zwei CAN-FD- oder CAN-2.0B-Controller. Alle künftigen RA-Bausteine werden sowohl CAN als auch CAN FD unterstützen.

CAN-(FD-)Implementierung in RA-Controllern von Renesas

Die Renesas RA-MCUs basieren auf Arm Cortex-M-Cores mit TrustZone und einer Secure Crypto Engine für hohe Security-Anforderungen in vernetzten Anwendungen. Das „Flexible Software Package“ (FSP) bietet hocheffiziente CAN- und CAN-FD-Treiber, die sich mit Konfigurationswerkzeugen einfach konfigurieren lassen. Es ist sehr einfach, Protokolle auf höherer Ebene zu integrieren, die CAN oder CAN FD mit der gemeinsamen API verwenden.

Die auf den RA-MCUs eingesetzte IP zur Integration von CAN FD ist vollständig konform mit CAN-FD ISO 11898-1 (2015). Der RA6T2 mit einem CAN-FD-Controller unterstützt bis zu 5 Mbit/s für die Datenphase und der RA6M5 mit zwei CAN-FD-Controllern bis zu 8 Mbit/s auf jedem Kanal. Der RA6M5 eignet sich ideal als Host mit umfangreichen Anschlussmöglichkeiten in einem Access Panel, einem Kommunikationsmodul oder in einem Gateway, um CAN2.0B ↔ CAN2.0B, CAN2.0B ↔ CAN FD oder CAN FD ↔ CAN FD zu kombinieren. Der RA6T2 ist der optimale Aktuator mit umfangreichen Timer-Funktionen zur Steuerung von Motoren in indus­triellen Antriebsanwendungen.

Die RA-Implementierung umfasst zwei Empfangs-FIFO-Buffer sowie einen gemeinsamen FIFO, der als Empfangs- oder Sende-FIFO pro Einheit konfigurierbar ist. Der FIFO-RAM ist ein ECC-RAM mit Error Correction Code für höhere Zuverlässigkeit in Safety-Anwendungen.

Die RA-Mikrocontroller-Familie eignet sich sehr gut als Plattform für CAN- und CAN-FD-Anwendungen. Sie umfasst mittlerweile über 201 Bausteine im Bereich von 48 MHz bis 240 MHz. Die MCUs der RA-Familie bieten branchenführende Spezifikationen für den Leistungsverbrauch, eine sehr breite Palette an Kommunikationsoptionen und erstklassige Security-Optionen, einschließlich der Arm TrustZone-Technologie. Das FSP von Renesas unterstützt alle RA-Bausteine und enthält hocheffiziente Treiber und Middleware, die die Implementierung von Kommunikations- und Security-Funktionen erleichtern. Die GUI des FSP vereinfacht und beschleunigt den Entwicklungsprozess. Es ermöglicht die flexible Nutzung von Legacy-Code sowie die einfache Kompatibilität und Skalierbarkeit mit anderen Bausteinen der RA-Familie. Entwickler, die das FSP einsetzen, haben außerdem Zugang zum umfangreichen Partnernetzwerk von Renesas ebenso wie dem umfassenden Arm-Ecosystem, das eine breite Palette von Tools für eine schnellere Markteinführung bietet.

CAN hat große Vorteile in Bezug auf Kosten, Flexibilität und Robustheit, die auch für Anwendungen außerhalb des Automotive-Bereichs auf vielen Gebieten von großem Nutzen sind. Mit der CAN-FD-Erweiterung für höhere Datenraten wird das Feld noch breiter. Dieser Artikel befasst sich mit den Grundlagen von CAN und CAN FD, auch unter dem Aspekt verschiedener Anwendungsimplementierungen, die verschiedene physikalische Schichten oder Protokolle höherer Schichten mit CAN als Data Link Layer nutzen. Die Renesas RA-Mikrocontrollerfamilie ist die perfekte Wahl als Plattform für CAN- und CAN-FD-Anwendungen.

* Bernd Westhoff ... IoT Product Marketing in der IoT and Infrastructure Business Unit, Renesas Electronics

(ID:48228450)