Migration von CAN-Netzen zu CAN FD Daten auf Zack

Das Bussystem CAN FD punktet mit flexiblen Datenraten von bis zu 10 Mbit/s. Hilfreiche Tipps für die Umsetzung erhalten Sie hier.

Bild: iStock, macgyverhh
12.02.2019

Im Vergleich zum traditionellen CAN-Protokoll punktet der neue Standard CAN FD mit flexiblen Datenraten von bis zu 10 Mbit/s. Und das Beste: Die Umrüstung von CAN auf CAN FD ist günstig, unkompliziert und je nach Anwendung sehr variabel durchführbar.

Anfang der 1980er-Jahre entwickelte Bosch zusammen mit dem Chiphersteller Intel das serielle Bussystem CAN (Controller Area Network) für die Automobilindustrie – ein schnelles und robustes Bussystem, das sich auch in anderen Branchen bewährt hat. Vor drei Jahren wurde dann das leistungsstärkere CAN-FD-Protokoll (CAN mit flexibler Datenrate) standardisiert. Einer der Gründe dafür war, dass die Automobilhersteller sich eine höhere Leistungsfähigkeit für den CAN-Bus gewünscht hatten, unter Wahrung einer abwärtskompatiblen CAN-Kommunikation.

Das Resultat ist CAN FD mit echtzeitfähiger Busarbitrierung, Ereignissteuerung, 11- und 29-Bit-Identifier, Multimasterfähigkeit, geringem Energiebedarf, großer Robustheit gegenüber Störungen und der Möglichkeit, existierende Topologien zu nutzen. Durch das abwärtskompatible Design lassen sich CAN-Applikationen einfach auf die leistungsfähigere CAN-FD-Kommunikation umstellen oder als Standard in neuen Applikationen einsetzen.

Die Idee hinter CAN FD

Die Übertragung einer CAN-Nachricht lässt sich grob in drei Phasen unterteilen: Busarbitrierung, Datenübertragung und Bestätigung. In allen Phasen werden die Bits mit einer identischen Bitrate übertragen, wobei alle Busteilnehmer diese kontinuierlich nachsynchronisieren, um Phasenrauschen und -drift der unabhängigen lokalen Oszillatoren zu kompensieren. Dies ist insbesondere während der Arbitrierungs- und Bestätigungsphase notwendig, da mehrere Knoten gleichzeitig auf dem Bus senden und jeder einzelne Knoten sein gesendetes Bit mit den Bits anderer Busteilnehmer vergleichen können muss. Diese Eigenschaft bestimmt die physikalischen Grenzen für die maximal mögliche Bitrate auf dem CAN-Bus und für die Kabellänge.

Die Idee hinter dem neuen CAN-FD-Protokoll besteht darin, während der Datenübertragungsphase mit einer zweiten – in der Regel deutlich höheren – Bitrate zu senden. Außerdem wird in dieser Phase die Nachsynchronisation ausgesetzt, da es dann zwangsläufig nur noch einen Sender auf dem Bus geben kann. Dadurch ist CAN FD ein Protokoll mit flexibler und höherer maximaler Datenrate, für dessen Anwendung die bestehende Verdrahtung nicht modifiziert werden muss.

Wesentlich höhere Nettodatenrate

Die flexible Bitrate in der Datenübertragungsphase brachte dem Protokoll den Namenszusatz FD (Flexible Data Rate) ein, mit Datenraten von bis zu 10 Mbit/s in Abhängigkeit von der Netztopologie und anderen physikalischen Faktoren. Auch die Anzahl der maximal möglichen Nutzdaten einer Nachricht wurde auf 64 Bytes erhöht, wodurch sich das Verhältnis zwischen Protokoll- und Nutzdaten erheblich verbessert.

Bei Bitraten im Verhältnis von 1:8 zwischen Arbitrierungs- und Datenphase ergibt sich – in Abhängigkeit von der Zahl der gesendeten Bytes in der Datenphase – eine Verdoppelung bis hin zu einer Verneunfachung der Nettodatenrate. Dank dieser Leistungssteigerung müssen bestehende CAN-Applikationen nicht zwingend durch Industrial-Ethernet-Protokolle ersetzt werden, wodurch sich Investitionen in die Infrastruktur, das Produkt und die Technologie einsparen lassen. Entscheidend ist dabei, welche Anforderungen sich langfristig aus der Applikation ergeben.

Klassische CAN-Konzepte beibehalten

Das CAN-FD-Protokoll ist so angelegt, dass klassische CAN-Konzepte in der Arbitrierungs- und Bestätigungsphase sowie bei der Fehlerbehandlung beibehalten werden können. Um auch in der längeren Datenphase die gleiche Robustheit gegenüber Kommunikationsfehlern zu erreichen, wird statt der üblichen 15-Bit-Prüfsumme eine 17-Bit- (Nachrichten mit bis zu 16 Bytes Nutzdaten) oder eine 21-Bit-Prüfsumme (Nachrichten mit mehr als 16 Bytes Nutzdaten) verwendet.

Weggefallen ist bei CAN FD die Möglichkeit, Remote Transmission Requests (RTR) zu übertragen. Zur Gewährleistung der Abwärtskompatibilität wird RTR jedoch von CAN-FD-Controllern im CAN-Protokoll nach wie vor unterstützt. Somit lässt sich in Anwendungen mit CAN-Kommunikation auch dann CAN-FD-Hardware einsetzen, wenn zunächst noch das CAN-Protokoll genutzt werden soll. Vor diesem Hintergrund ist eine frühzeitige Umstellung auf CAN-FD-Hardware zu empfehlen, da diese auf einer zukunftsfähigen Technologie basiert und nur geringfügig teurer ist.

Installation optimal nutzen

CAN FD punktet vor allem bei der Übertragung größerer Datenmengen. Beispielsweise verkürzt sie die Downloadzeit bei der Aktualisierung von Firmware. Auch das Echtzeitverhalten verbessert sich, da die Latenz bei unverändertem Protokoll geringer ist und sich die Bitrate in der Datenphase erhöht. Die damit einhergehende reduzierte Buslast verbessert wiederum die Erweiterbarkeit von Systemen, beispielsweise wenn aufgrund der aktuellen Buslast ein weiterer CAN-Bus benötigt würde.

Durch die Erhöhung der Nutzdaten lässt sich bei Prozessdaten mit mehr als acht Datenbytes die Datenkonsistenz sehr einfach herstellen, da der Controller die Daten jetzt in einer CAN-FD-Nachricht versenden kann. CAN-Busse, die bereits an ihrer physikalischen Grenze betrieben werden, lassen sich mit CAN-FD verlängern, da die Reduktion der Arbitrierungs-Bitrate und die höhere Bitrate in der Datenphase zu einer identischen beziehungsweise höheren Nettodatenrate führen.

Geringer Umrüstungsaufwand

Soll ein bestehendes CAN-System auf CAN FD umgestellt werden, ohne das Protokoll zu ändern, ist es neben der CAN-FD-fähigen Hardware lediglich nötig, die höhere Bitrate in der Datenphase des CAN-FD-Protokolls festzulegen. Bei einem Verhältnis zwischen Arbitrierungs- zu Datenphase-Bitrate von 1:4 und einem Protokoll, das hauptsächlich auf Nachrichten mit acht Datenbytes basiert, verbessert sich der Durchsatz um mehr als den Faktor zwei - beziehungsweise die Latenzzeiten halbieren sich.

Ist ein größerer Leistungszuwachs gewünscht, muss beim Migrieren auf CAN FD das Protokoll so angepasst werden, dass mehr als acht Datenbytes zum Einsatz kommen. Bei der Nutzung der vollen Datenbreite von 64 Byte erhöht sich der Datendurchsatz bereits um das Fünffache, und bei einer weiteren Steigerung des Bitratenverhältnisses auf 1:8 um mehr als das Neunfache.

Transceiver nach ISO-Standard

Da moderne Mikrocontroller bereits über eine oder mehrere CAN-FD-Schnittstellen verfügen, lassen sich neue Hardware-Entwicklungen vergleichsweise einfach mit CAN FD umsetzen. Dabei akzeptiert CAN FD bis zu einem bestimmten Verhältnis der Arbitrierungs- und Datenphase-Bitraten die gleiche Oszillatortoleranz wie CAN. Es empfiehlt sich, für CAN FD einen nach ISO 11898-2:2016 spezifizierten Transceiver einzusetzen, da dessen Vorteile auch denjenigen Kunden zugutekommen, die ausschließlich CAN nutzen. Vorhandene Designs lassen sich durch inzwischen verfügbare Stand-Alone-Controller oder mittels eines FPGA-IP-Cores wie dem esdACC einfach um CAN FD erweitern.

Migrieren mit CAN-FD-Hardware

Soll ein CAN-System komplett auf CAN FD umgestellt werden, hängt der Migrationsaufwand stark von der verwendeten API ab. Wenn die API unverändert auch für CAN-FD-Hardware einsetzbar ist, kann eine Migration in drei Schritten erfolgen:

  • Alle Busteilnehmer erhalten über die CAN-FD-Schnittstellen zunächst das CAN-Protokoll.

  • Alle Teilnehmer nutzen in der Datenphase eine höhere Bitrate, was bei unverändertem Protokoll sofort zu einer verringerten Latenz und Busauslastung beziehungsweise zu einem erhöhten Durchsatz führt.

  • Der Datendurchsatz wird nochmals erhöht, was die Datenkonsistenz bei mehr als 8-Byte-Nutzdaten sowie die Implementierung von Protokollen, zum Beispiel im Security- und Safety-Bereich, verbessert. Letzteres lässt sich bei lediglich 8-Byte-Nutzdaten schwer oder gar nicht realisieren.

Sukzessive Migration

Bei der Migration eines CAN-Netzes auf CAN FD besteht stets die Möglichkeit, die Busteilnehmer sukzessive gegen Busteilnehmer mit CAN-FD-Controllern auszutauschen. Aufgrund der Abwärtskompatibilität kann zunächst weiterhin das CAN-Protokoll verwendet werden.

Ergibt sich zu einem späteren Zeitpunkt der Wunsch nach mehr Busbandbreite und geringerer Latenz, stellt der Systemintegrator die Applikation wie oben beschrieben um. Dabei bleibt die Option erhalten, jederzeit wieder zum ursprünglichen Ausgangszustand mit klassischem CAN zu wechseln. Schließlich bleibt die Verdrahtung unverändert bestehen. Eine komplette Umstellung auf CAN FD kann erst zu dem Zeitpunkt erfolgen, wenn alle Busteilnehmer das CAN-FD-Protokoll unterstützen. Ist das nicht der Fall, interpretiert der CAN-Controller ansonsten die CAN-FD-Nachrichten als Protokollfehler.

Firmen zu diesem Artikel
Verwandte Artikel