CANopen FD
Tipps für die Geräte- und Netzwerkauslegung
Eine höhere Übertragungsrate und mehr Nutzdaten pro Nachricht – mit diesem Ziel wurde das klassische CAN-Protokoll um die FD-Version erweitert. Für Entwickler stellt sich nun die Frage nach dem idealen Design entsprechender Geräte und Netzwerke.
Seit 2015 ist das CAN-FD-Protokoll in der ISO 11898-1 standardisiert. Diese Norm enthält allerdings keine Anforderungen an die Hersteller von Geräten. Sie ist vielmehr ausschließlich für Chip-Hersteller gedacht, die das CAN-FD-Protokoll in Silizium gießen wollen. Das gleiche gilt für die Norm ISO 11898-2, welche die Treiberbausteine beschreibt. Die internationale Anwender- und Herstellervereinigung CAN in Automation (CiA) gibt deshalb allgemeine Empfehlungen für die Entwicklungen von CAN-FD-Schnittstellen und CAN-FD-Netzwerken heraus (CiA 601). Diese mehrteilige Dokumentenreihe ist teilweise noch im Entwurfs-Status. Darüber hinaus enthält die CANopen-FD-Spezifikation (CiA 1301) einige Empfehlungen zur Einstellung des Bit-Timings.
Noch ist die Auswahl der ‚kleinen‘ Mikrocontroller mit integrierten CAN-FD-Controllern gering. Dies wird sich aber demnächst ändern. Da in industriellen Anwendungen eine hohe Interoperabilität gefordert ist – insbesondere in ‚offenen‘ Netzwerken –, sollte der Geräte-Entwickler darauf achten, dass der gewählte CAN-FD-Controller mit einer von der CiA empfohlenen Frequenz betrieben werden kann – also 20, 40 oder 80 MHz.
Auch ansonsten sollte der Mikrocontroller den Empfehlungen von CiA 601-2 entsprechen – insbesondere was die Breite der Bit-Timing-Register angeht. In ISO 11898-1 ist nur eine geringe Breite von bis zu 80 Time-Quanta gefordert, die für eine robuste Datenübertragung nicht immer ausreicht. Denn es gilt: Aus je mehr Time-Quanta ein Bit besteht, umso geringer wird der unvermeidbare Quantisierungsfehler. Um viele Time-Quanta einzustellen, braucht es also ein breites Register. Konkret empfiehlt CiA 601-2 für die Arbitrierungs-Bitrate eine Einstellung von 256 Time-Quanta für TSEG1 (vor dem Abtastzeitpunkt) und von 128 Time-Quanta für TSEG2 (nach dem Abtastzeitpunkt). Für die schnelle Phase des CAN-FD-Frames – die Datenphase – sollte der Controller eine maximale Einstellung von 32 (TSEG1) beziehungsweise 16 Time-Quanta (TSEG2) ermöglichen.
Um Wartung und Fehlerbeseitigung zu erleichtern, empfiehlt CiA 601-2 nicht zuletzt die Nutzung von Interrupt-Vektoren für Warnungen und entdeckte Fehler. Dazu zählen unter anderem die lesbaren Fehlerzähler für empfangene und gesendete Frames.

Profile für J1939-Netzwerke
Der Verein CAN in Automation (CiA) hat die CiA 406-J- und CiA 410-J-Spezifikationen herausgegeben, die die Abbildung der CANopen-Profile für Drehwinkelgeber beziehungsweise Neigungssensoren für J1939-Netzwerke spezifizieren.
Die geeigneten Bausteine
Bei der Wahl des Transceivers ist es generell ratsam, sich immer für Bausteine zu entscheiden, die für 5 MBit/s qualifiziert sind. Sie weisen eine deutlich bessere Symmetrie auf (siehe ISO 11898-2) und geben dem System-Entwickler mehr Spielraum bei der Netzwerk-Topologie. Mit anderen Worten: Er kann mehr ‚Klingeln‘ auf seinen Leitungen erlauben. Der Steckverbinder muss die gleiche Impedanz aufweisen wie der Transceiver (nominal 120 Ω). Diese ist über den gesamten erlaubten Temperaturbereich und auch über die spezifizierte Lebensdauer (Stichwort: Alterungseffekte) des Gerätes zu garantieren.
Der Index kennzeichnet eindeutig das Pärchen aus Arbitrierungs- beziehungsweise nominaler und Daten-Bitrate; die aufgeführten Bitraten-Paare müssen unterstützt werden, andere sind optional.
© CiAZusätzlich sollte der Geräte-Entwickler dafür Sorge tragen, dass die Verzögerungszeiten zwischen dem Ausgangssignal und dem Eingangssignal des CAN-FD-Controllers möglichst gering sind. Dabei ist zu berücksichtigen, dass die internen Multiplexer im Mikrocontroller sowie die einzelnen Pins bereits relevante Verzögerungen erzeugen können. Vor allem bei hohen Bitraten – derzeit bis zu 5 MBit/s – kann es passieren, dass man bei langsamen CAN-FD-Schnittstellen kein stabiles Signal zum Abtastzeitpunkt hat. Die Folge sind dann Fehler-Frames, welche die Übertragung des CAN-Datenframes abbrechen. Die Sendung wird zwar automatisch wiederholt; da es sich aber um einen systematischen Designfehler handelt, erfolgt dies solange, bis das Gerät in den Bus-off-Zustand geht.
Bei einer geforderten galvanischen Trennung zwischen CAN-FD-Controllern und -Transceivern sollte der Geräte-Entwickler sehr schnelle Bausteine wählen. darüber hinaus ist darauf zu achten, dass es keine zusätzliche Asymmetrie bezüglich der fallenden und steigenden Flanken gibt. Eine Maßnahme ist die parallele Führung der TxD- und der RxD-Leitungen; dies gilt sowohl für die Busleitungen (CAN-H und CAN-L) als auch für eventuell abgewinkelte Stecker. Man bedenke: Jede Ungenauigkeit beim Geräte-Design muss der Systemintegrator ausbügeln. Das bedeutet, ihm bleibt weniger ‚Marge‘ für Ungenauigkeiten in der Netzwerk-Auslegung zur Verfügung.
Um dem Anwender möglichst viele Freiheitsgrade zu geben, sollte das CAN-open-FD-Gerät schließlich alle in der CAN-FD-Spezifikation (CiA 1301) empfohlenen Bitraten unterstützen. Bei Übertragungsraten von 1 MBit/s und höher empfiehlt die Spezifikation CiA 601-2, die in den CAN-FD-Controllern implementierte Transmitter-Loop-Delay-Kompensation zu aktivieren. Mit dieser Funktion misst der Controller die Verzögerung zwischen der gesendeten Flanke zwischen FDF-Bit und res-Bit (rezessive-zu-dominant) in jedem Datenframe und kompensiert diese, sodass der Controller die ‚richtigen‘ Bits miteinander vergleicht. Theoretisch könnte man diese Kompensation auch errechnen und konfigurieren.
Die Wahl der Abtastzeitpunkte
Eine der Hauptaufgaben des Systementwicklers ist die Wahl der beiden Bitraten für die Arbitrierungs- und Datenphase. Dazu zählt auch die Wahl der Abtastzeitpunkte. Diese sind dann in allen Geräten einzustellen. Um diese Aufgabe zu erleichtern, gab es in der klassischen CANopen-Spezifikation (CiA 301) entsprechende Empfehlung für vorgegebene Datenraten (von 20 kBit/s bis 1 MBit/s). Diese gelten auch weiterhin für CANopen-FD. Allerdings sind jetzt noch ein paar Regeln hinzugekommen:
Entsprechend den allgemeinen Empfehlungen in CiA 601-3 (wird im Herbst 2018 veröffentlicht) sollte in der Arbitrierungs- und in der Daten-Phase das Time-Quantum (die atomare Zeiteinheit im Netzwerk) die gleiche Länge haben und zudem möglichst klein sein. Auf jeden Fall müssen alle Geräte in der Arbitrierungsphase genau zum gleichen Zeitpunkt den Bitwert (beispielsweise 80 % bei 500 kBit/s) ermitteln. Bisher gab es einen Abtastbereich – beispielsweise 85 % bis 90 % bei 500 kBit/s.
Auf der zurückliegenden Hannover Messe zeigten mehrere Hersteller die Interoperabilität ihrer CANopen-FD-Software und demonstrierten die schnellere Übertragung am Beispiel von Grafikdateien.
© CiAAuch in der Datenphase müssen alle Geräte zum exakt gleichen Zeitpunkt das Bit abtasten (beispielweise 75 % bei 2 MBit/s). Diesbezüglich gilt es, den Empfehlungen der CANopen-FD-Spezifikation (CiA 1301) zu folgen. Neben der Kombination von 500 kBit/s (Arbitrierungsphase) und 2 MBit/s (Datenphase) müssen CAN-open-FD-Geräte die folgenden Bitraten unterstützen: 1/5 MBit/s, 250 kBit/s / 1 MBit/s und 250 kBit/s / 2 MBit/s (weitere Kombinationen von Bitraten sind optional).
Der Systementwickler ist nicht zuletzt für die Auslegung der Netzwerk-Topologie und der Kabel verantwortlich. Beides ist sehr anwendungsspezifisch, da die Einsatzgebiete von CANopen-FD vom Schaltschrank bis hin zu eingebetteten Maschinensteuerungen und tief eingebetteten Rückgrat-Bussystemen in Geräten reichen. Aus allgemeinen nachrichten-technischen Erwägungen heraus ist eine Daisy-Chain-Bustopologie zu bevorzugen. Je nach Anwendung benötigt man aber mitunter kurze unabgeschlossene Stichleitungen. Dies führt in der Regel zu unerwünschten Reflexionen auf den Leitungen und kann schließlich darin resultieren, dass es kein stabiles Signal zum Abtastzeitpunkt in der Datenphase gibt. Abhilfe schafft dann eine Änderung der Verkabelung in Richtung optimale Bustopologie, das heißt mit Stichleitungen im Bereich von wenigen Zentimetern.
Die Robustheit, also die Störanfälligkeit der Übertragung, hängt stark vom geforderten Temperaturbereich ab. Vor allem Kabel – genauer gesagt: das Isolationsmaterial – können stark temperaturabhängig sein. Eine PVC-Ummantelung ist nicht empfehlenswert, da bei diesen Leitungen die Impedanz abhängig von der Temperatur extrem sinken kann. Dies führt zu Reflexionen und damit zu einem unstabilen Signal.
In der Spezifikation CiA 601-5 werden die Kabelparameter und ihre Messung beschrieben, damit die Datenblätter der Hersteller vergleichbarer werden. Es wird jedenfalls keine dedizierte CAN-FD-Kabel-Spezifikation geben, da die Anwendungsanforderungen zu unterschiedlich sind.
Zusammenfassend lässt sich festhalten: Da die Teilnehmer in der Datenphase nicht synchronisiert sind, resultiert die maximale Netzwerk-Länge nur aus den Designregeln der Arbitrierungsphase. Diesbezüglich gibt es keinen Unterschied zu klassischen CAN-open-Netzwerken. Bei der Auswahl der CANopen-FD-Geräte muss der Systementwickler vor allem darauf achten, dass die voreingestellten Abtastzeitpunkte für die gewünschten Bitraten (Arbitrierungsphase und Datenphase) in allen Geräten identisch sind.
Autor:
Holger Zeltwanger ist Vorsitzender von CAN in Automation (CiA).












