CAN und CANopen

In modernen Maschinen und Fahrzeugen müssen Steuerung, Sensoren, Antriebe und Bedienelemente ständig miteinander reden. Würde man jedes Gerät einzeln zur Steuerung verdrahten, entstünde ein Kabelbaum, der bei jeder Erweiterung neu gezogen werden müsste. CAN löst das mit einem einzigen Leitungspaar, an dem alle Teilnehmer hängen. CANopen baut darauf auf und sorgt dafür, dass Geräte verschiedener Hersteller dieselbe Sprache sprechen.

Dieser Beitrag zeigt, wie der CAN-Bus physikalisch arbeitet, wie eine CAN-Botschaft aufgebaut ist und sich ohne Kollision durchsetzt, und wie CANopen daraus ein praxistaugliches Automatisierungssystem macht — bis hin zur Inbetriebnahme und Fehlersuche im realen Netz.

Vorwissen

  • Serielle Schnittstellen (RS232, RS485)
  • Feldbus-Grundlagen
  • Zahlensysteme: binär und hexadezimal

Lernziele

Nach diesem Beitrag kannst du:

  • erklären, warum ein Bussystem die klassische Einzelverdrahtung ersetzt und wo CAN eingesetzt wird
  • den physikalischen Aufbau eines CAN-Netzes beschreiben und die Bedeutung der Abschlusswiderstände begründen
  • den Ablauf der bitweisen Arbitrierung erklären und elektrotechnisch herleiten, warum der niedrigere Identifier gewinnt
  • die Aufgabe von CANopen gegenüber CAN abgrenzen und das Objektverzeichnis als Kern verstehen
  • die wichtigsten CANopen-Kommunikationsobjekte (PDO, SDO, EMCY) und NMT-Zustände den richtigen Aufgaben zuordnen
  • typische Fehler in einem CAN-Netz systematisch eingrenzen und mit dem Multimeter prüfen

1. Warum ein Bus statt vieler Einzelleitungen

Stell dir eine Anlage mit einer Steuerung und zwanzig Sensoren und Aktoren vor. Klassisch bekommt jedes Gerät seine eigene Leitung zur Steuerung — bei digitalen Signalen je eine Ader pro Signal, dazu Versorgung und Masse. Das wird schnell unübersichtlich, teuer und fehleranfällig. Jede nachträgliche Erweiterung bedeutet neue Adern, neue Klemmen, neue Dokumentation.

Ein Bussystem dreht das Prinzip um: Alle Teilnehmer hängen an derselben gemeinsamen Leitung und teilen sich diese. Jede Nachricht enthält eine Kennung, sodass jeder Teilnehmer selbst entscheidet, ob eine Botschaft für ihn bestimmt ist. Statt sternförmiger Einzelverbindungen gibt es eine durchgehende Leitung, an die man weitere Geräte einfach anhängt.

CAN — kurz für Controller Area Network — wurde ursprünglich für das Kraftfahrzeug entwickelt, um den wachsenden Kabelbaum in den Griff zu bekommen. Heute steckt CAN in praktisch jedem Auto, aber ebenso in Baumaschinen, Aufzügen, medizinischen Geräten und in der Industrieautomatisierung. Seine Stärken: robust gegen Störungen, einfache Verdrahtung, kein zentraler Verwalter nötig und ein eingebautes Verfahren, das wichtige Nachrichten zuerst durchlässt.

CAN regelt allerdings nur, wie Daten über die Leitung gehen — nicht, was die Datenbytes bedeuten. Genau diese Lücke füllt CANopen, das wir ab Kapitel 4 betrachten.

Eine bestehende Anlage mit klassischer Einzelverdrahtung soll um mehrere Sensoren erweitert werden. Worin liegt der entscheidende Vorteil eines Bussystems in dieser Situation?

  • a) Neue Teilnehmer werden an die vorhandene gemeinsame Leitung angehängt, ohne dass je Gerät eigene Adern zur Steuerung gezogen werden müssen
  • b) Die Signale werden schneller übertragen als bei jeder Einzelleitung
  • c) Ein Bussystem kommt grundsätzlich ohne Spannungsversorgung der Geräte aus
  • d) Jeder Teilnehmer erhält automatisch eine eigene galvanisch getrennte Leitung

Richtig: a)

Der Kern des Busgedankens ist die gemeinsam genutzte Leitung, an die Teilnehmer angehängt werden — Erweiterungen brauchen keine neuen Einzeladern zur Steuerung (a). Die reine Übertragungsgeschwindigkeit (b) ist nicht der ausschlaggebende Punkt und hängt von der Bitrate ab. Versorgung (c) ist weiterhin nötig. Eigene getrennte Leitungen je Teilnehmer (d) wären das Gegenteil eines Busses.

Warum genügt der reine CAN-Standard nicht, um Geräte verschiedener Hersteller in einer Automatisierungsanlage zusammenarbeiten zu lassen?

  • a) CAN überträgt zu langsam für industrielle Anwendungen
  • b) CAN kann grundsätzlich nur zwei Teilnehmer verbinden
  • c) CAN benötigt für jeden Hersteller eine eigene physikalische Leitung
  • d) CAN legt nur die Übertragung der Daten fest, nicht die Bedeutung der übertragenen Inhalte

Richtig: d)

CAN definiert die Übertragung (Pegel, Rahmen, Buszugriff), aber nicht, wie ein Datenbyte zu interpretieren ist (d). Ohne eine gemeinsame Vereinbarung darüber bleibt unklar, was ein Wert bedeutet — diese Vereinbarung liefert CANopen. Die Geschwindigkeit (a) und die Teilnehmerzahl (b) sind nicht das Problem; eine eigene Leitung je Hersteller (c) widerspricht dem Busprinzip.

2. CAN-Bus: Aufbau und Übertragung

Der CAN-Bus besteht im Kern aus zwei verdrillten Adern: CAN_H und CAN_L. Die Information steckt nicht im Pegel einer einzelnen Ader gegen Masse, sondern in der Differenzspannung zwischen beiden Adern. Das ist der Grund für die hohe Störfestigkeit: Eine eingekoppelte Störung trifft beide Adern nahezu gleich und hebt sich in der Differenz weitgehend auf.

Die physikalische Schicht des schnellen CAN (High-Speed-CAN) ist in der EN ISO 11898 festgelegt. Dort sind die beiden Buszustände definiert:

  • rezessiv (logisch 1): CAN_H und CAN_L liegen nahe beieinander, die Differenz ist annähernd 0 V
  • dominant (logisch 0): die Adern werden auseinandergezogen, die Differenz beträgt rund 2 V

Die Begriffe dominant und rezessiv sind bewusst gewählt: Treibt ein Teilnehmer dominant, während ein anderer rezessiv lässt, setzt sich der dominante Zustand durch. Dieses Verhalten ist die physikalische Grundlage für das Buszugriffsverfahren in Kapitel 3.

Abschlusswiderstände und Topologie

Ein CAN-Netz ist als Linie aufgebaut: eine durchgehende Stammleitung, von der die Teilnehmer über möglichst kurze Stichleitungen abzweigen. An beiden Enden der Stammleitung sitzt je ein Abschlusswiderstand von 120 Ω. Diese Widerstände verhindern Signalreflexionen am Leitungsende, die sonst die Botschaften verfälschen würden.

Weil beide 120-Ω-Widerstände aus Sicht der Adern parallel liegen, misst man über einen intakten, spannungsfreien Bus etwa 60 Ω — ein einfacher und sehr nützlicher Prüfwert, auf den wir in Kapitel 6 zurückkommen.

CAN-Linientopologie mit Abschlusswiderständen CAN_H CAN_L 120 Ω 120 Ω Knoten 1 Knoten 2 Knoten 3 kurze Stichleitungen zu den Teilnehmern

Bitrate und Leitungslänge

Bei CAN hängen Bitrate und maximal mögliche Leitungslänge zusammen. Der Grund liegt im Buszugriffsverfahren: Während eines bestimmten Bits muss der Pegel von einem Ende des Busses bis zum anderen und im Arbitrierungsfall wieder zurück gelangen, damit alle Teilnehmer dosen Buszustand sehen. Je höher die Bitrate, desto kürzer ist die Zeit pro Bit — und desto kürzer darf die Leitung sein.

Die Laufzeit auf der Leitung lässt sich grob abschätzen:

t = l / v

  • t … Signallaufzeit in Sekunden
  • l … Leitungslänge in Meter
  • v … Ausbreitungsgeschwindigkeit auf der Leitung, ca. 2·10^8 m/s

Als praktische Orientierung haben sich folgende Richtwerte etabliert (gerundete Erfahrungswerte, keine exakten Grenzen):

Bitrate typische max. Buslänge
1 Mbit/s ca. 40 m
500 kbit/s ca. 100 m
250 kbit/s ca. 250 m
125 kbit/s ca. 500 m
50 kbit/s ca. 1000 m

Wichtig dabei: Diese Längen ergeben sich nicht aus der Leitung allein. Auch die internen Laufzeiten von CAN-Controller und Transceiver sowie die Busankopplung gehen in das Zeitbudget pro Bit ein. Werden sie übersehen, kann es trotz formal passender Leitungslänge zu sporadischen, schwer auffindbaren Bitfehlern kommen. Deshalb sind die Tabellenwerte als konservative Richtwerte zu verstehen.

Die Faustregel: Wer eine lange Leitung braucht, muss mit der Bitrate heruntergehen — und umgekehrt. Stichleitungen bleiben dabei immer so kurz wie möglich, weil auch sie Reflexionen verursachen können.

Gelöstes Beispiel

Auf einem CAN-Bus von 250 m Länge soll abgeschätzt werden, wie lange ein Signal von einem Ende zum anderen braucht.

Gegeben: l = 250 m; v = 2·10^8 m/s

Gesucht: Signallaufzeit t in µs

Lösungsweg:

  1. Schritt 1 — Werte in die Formel einsetzen: t = l / v = 250 m / (2·10^8 m/s)
  2. Schritt 2 — Ausrechnen: t = 1,25·10^-6 s

Ergebnis: t = 1,25 µs. Bei 250 kbit/s dauert ein Bit 4 µs — die einfache Laufzeit liegt also deutlich darunter, was die Buslänge plausibel macht.

Übungen

Wie lange braucht ein Signal auf einer 40 m langen Leitung (v = 2·10^8 m/s)?

t = 40 / (2·10^8) = 0,2 µs

Ein Bus ist 100 m lang. Berechne die einfache Signallaufzeit.

t = 100 / (2·10^8) = 0,5 µs

Bei 500 kbit/s dauert ein Bit 2 µs. Wie groß ist das Verhältnis von Bitdauer zur einfachen Laufzeit aus Übung 2?

2 µs / 0,5 µs = 4 — die Bitdauer ist viermal so lang wie die Laufzeit.

Über einen spannungsfrei geschalteten, intakten Bus werden 60 Ω gemessen. Welchen Wert hat jeder der beiden Abschlusswiderstände, wenn sie gleich groß sind?

Zwei gleiche Widerstände parallel ergeben 60 Ω → jeder einzelne 120 Ω.

Ein Techniker misst über den spannungsfreien Bus 120 Ω statt der erwarteten 60 Ω. Was lässt sich daraus schließen?

Statt zwei sind offenbar nur ein Abschlusswiderstand wirksam (120 Ω) — ein Abschluss fehlt oder ist unterbrochen.

Ein CAN-Netz arbeitet zuverlässig, bis ein Techniker einen der beiden Abschlusswiderstände entfernt. Womit ist nun zu rechnen?

  • a) Der Bus arbeitet schneller, weil der Widerstand wegfällt
  • b) Die Differenzspannung kehrt sich um
  • c) Reflexionen am offenen Leitungsende verfälschen die Signale und führen zu Übertragungsfehlern
  • d) Nichts, Abschlusswiderstände sind rein optional

Richtig: c)

Abschlusswiderstände unterdrücken Reflexionen am Leitungsende; fehlt einer, entstehen Reflexionen und damit Fehler (c). Die Geschwindigkeit (a) ändert sich nicht, und die Polarität der Differenz (b) bleibt erhalten. Optional (d) sind sie ausdrücklich nicht.

Welcher Buszustand entspricht der logischen 0 und setzt sich gegen den anderen durch?

  • a) der dominante Zustand
  • b) der rezessive Zustand
  • c) beide Zustände sind gleichwertig
  • d) das hängt von der Bitrate ab

Richtig: a)

Der dominante Zustand (Differenz ≈ 2 V) entspricht logisch 0 und überschreibt den rezessiven Zustand (a). Rezessiv (b) ist logisch 1 und unterliegt. Eine Gleichwertigkeit (c) gäbe es das Verfahren nicht her, und die Bitrate (d) ist dafür ohne Belang.

Warum darf bei 1 Mbit/s die Buslänge nur etwa 40 m betragen, bei 125 kbit/s aber rund 500 m?

  • a) Bei hoher Bitrate steigt der Leitungswiderstand stark an
  • b) Bei niedriger Bitrate sind keine Abschlusswiderstände nötig
  • c) Die Ausbreitungsgeschwindigkeit auf der Leitung sinkt mit steigender Bitrate
  • d) Höhere Bitrate bedeutet kürzere Bitdauer, sodass das Signal in der verfügbaren Zeit nur eine kürzere Strecke sicher durchlaufen kann

Richtig: d)

Mit steigender Bitrate sinkt die Bitdauer; das Signal muss aber innerhalb eines Bits über die Leitung gelangen, also bleibt weniger Strecke (d). Der Leitungswiderstand (a) ist nicht die Ursache, Abschlüsse (b) bleiben immer nötig, und die Ausbreitungsgeschwindigkeit (c) ist eine Materialeigenschaft und ändert sich nicht mit der Bitrate.

3. Die CAN-Botschaft und das Buszugriffsverfahren

Daten werden bei CAN in Botschaften (Frames) übertragen. Ein Datenframe enthält im Wesentlichen:

  • einen Identifier, der die Botschaft kennzeichnet und zugleich ihre Priorität bestimmt
  • einige Steuerbits, unter anderem die Angabe, wie viele Datenbytes folgen
  • bis zu 8 Datenbytes Nutzdaten
  • eine CRC-Prüfsumme zur Fehlererkennung
  • ein Bestätigungsbit (ACK), mit dem empfangende Teilnehmer den korrekten Empfang quittieren

Wichtig: Der Identifier ist keine Geräteadresse, sondern eine Kennung der Botschaft selbst. Jeder Teilnehmer entscheidet anhand des Identifiers, ob ihn diese Nachricht interessiert. Es gibt den Standard-Frame mit 11-Bit-Identifier und den Extended-Frame mit 29-Bit-Identifier — letzterer bietet deutlich mehr Kennungen, ist aber etwas länger.

Buszugriff: alle dürfen, keiner kollidiert zerstörend

CAN kennt keinen zentralen Master, der den Teilnehmern das Senden zuteilt. Jeder Teilnehmer darf senden, sobald der Bus frei ist — das ist das Multi-Master-Prinzip. Was passiert aber, wenn zwei Teilnehmer gleichzeitig loslegen?

Hier greift die Arbitrierung — die Aushandlung des Buszugriffs Bit für Bit. Während des Sendens hört jeder Teilnehmer gleichzeitig auf dem Bus mit und vergleicht, ob das, was auf dem Bus tatsächlich anliegt, mit dem übereinstimmt, was er selbst gerade sendet. Verglichen wird Bit für Bit, beginnend mit dem Identifier.

Der entscheidende Punkt ist elektrotechnisch: Ein dominantes Bit (0) überschreibt ein rezessives Bit (1). Der Bus verhält sich dabei wie eine UND-Verknüpfung — dieses Wired-AND-Verhalten bedeutet, dass der Bus dominant ist, sobald auch nur ein einziger Teilnehmer dominant treibt, egal wie viele andere rezessiv lassen. Das liegt an der Verschaltung der Sendestufen: Rezessiv heißt „nicht aktiv treiben“, dominant heißt „aktiv auf 0 ziehen“. Wer aktiv zieht, gewinnt gegen den, der nur lässt.

Daraus folgt das ganze Verfahren: Sendet ein Teilnehmer ein rezessives Bit (1), sieht aber auf dem Bus ein dominantes (0), weiß er, dass ein anderer mit höherer Priorität sendet. Er zieht sich sofort zurück und wird zum Empfänger — ohne dass eine Botschaft zerstört wird. Der Teilnehmer mit dem niedrigeren Identifier setzt sich durch, weil eine 0 an früherer Stelle den Bus dominant zieht. Niedriger Identifier bedeutet also höhere Priorität.

Bitweise Arbitrierung (Identifier-Anfang, vereinfacht) Knoten A (ID beginnt 0 0 1 0 …) Knoten B (ID beginnt 0 0 1 1 …) Bus-Pegel (dominant gewinnt) 0 0 0 0 0 0 1 1 1 0 1 0 gleiche Bits A treibt 0, B treibt 1 Bus wird 0 (dominant) A sieht eigene 0 = Bus → sendet weiter (gewinnt) B sieht 0 statt eigener 1 → zieht sich zurück rot = dominant (0) blau = rezessiv (1)

Zwei Knoten beginnen exakt gleichzeitig zu senden. Wie wird entschieden, welcher den Bus behält, ohne dass eine Botschaft verloren geht?

  • a) Durch bitweisen Vergleich des Identifiers: Wer ein dominantes Bit sendet, während er ein rezessives erwartet hätte, gewinnt, der andere zieht sich zurück
  • b) Beide brechen ab und versuchen es nach einer Zufallszeit erneut
  • c) Der zuletzt eingeschaltete Knoten hat Vorrang
  • d) Eine zentrale Steuerung teilt den Buszugriff zu

Richtig: a)

Die Arbitrierung vergleicht den Identifier Bit für Bit; der Knoten mit dem dominanten Bit an der entscheidenden Stelle setzt sich durch, der andere wird Empfänger (a). Ein Abbruch beider mit Zufallswartezeit (b) beschreibt ein anderes Verfahren. Reihenfolge des Einschaltens (c) spielt keine Rolle, und eine zentrale Zuteilung (d) gibt es bei CAN nicht.

Warum bedeutet ein niedrigerer Identifier eine höhere Priorität?

  • a) Niedrige Zahlen werden von der Steuerung bevorzugt einsortiert
  • b) Niedrige Identifier haben mehr Datenbytes
  • c) Weil eine 0 an einer frühen Stelle den Bus dominant zieht und damit den Konkurrenten mit der 1 verdrängt
  • d) Das ist reine Konvention ohne technischen Hintergrund

Richtig: c)

Ein niedriger Identifier enthält an früherer Stelle eine 0; diese dominante 0 zieht den Bus und verdrängt den Konkurrenten mit der rezessiven 1 (c). Es ist also kein reines Sortieren (a), hat nichts mit der Datenmenge zu tun (b) und ist gerade keine willkürliche Konvention (d), sondern folgt direkt aus dem Wired-AND-Verhalten.

Ein Sensor und ein Display nutzen dieselbe Botschaft mit dem Identifier für „Temperatur-Istwert“. Wie ist das bei CAN möglich?

  • a) Der Identifier is die Adresse des Displays, der Sensor sendet gezielt dorthin
  • b) CAN sendet jede Botschaft automatisch doppelt
  • c) Das ist nicht möglich, jede Botschaft hat genau einen Empfänger
  • d) Der Identifier kennzeichnet den Inhalt der Botschaft; jeder interessierte Teilnehmer kann sie gleichzeitig auswerten

Richtig: d)

Der Identifier benennt den Inhalt, nicht einen Empfänger — daher können mehrere Teilnehmer dieselbe Botschaft gleichzeitig verwerten (d). Eine Zieladresse (a) ist es gerade nicht, eine Doppelsendung (b) findet nicht statt, und die Annahme genau eines Empfängers (c) widerspricht dem inhaltsbezogenen Prinzip.

4. Von CAN zu CANopen

CAN sorgt zuverlässig dafür, dass Datenbytes heil von einem Teilnehmer zu den anderen kommen. Was diese Bytes bedeuten, lässt der Standard offen. Ein Antrieb von Hersteller A und ein Sensor von Hersteller B könnten beide CAN sprechen und sich trotzdem nicht verstehen — so wie zwei Menschen, die zwar dasselbe Telefon benutzen, aber unterschiedliche Sprachen sprechen.

CANopen is eine solche gemeinsame Sprache. Es ist ein auf CAN aufgesetztes Protokoll, das festlegt, wie Geräte ihre Daten organisieren, wie sie angesprochen werden und wie der Datenaustausch abläuft. Damit lassen sich Geräte verschiedener Hersteller in einem Netz kombinieren.

Das Objektverzeichnis

Das Herzstück jedes CANopen-Geräts ist das Objektverzeichnis. Man kann es sich als geordnete Tabelle aller Daten und Einstellungen eines Geräts vorstellen: Messwerte, Sollwerte, Parameter, Statusinformationen. Jeder Eintrag hat eine feste Adresse aus Index (vierstellig hexadezimal, z. B. 0x6041) und bei Bedarf einem Subindex.

Bestimmte Indexbereiche sind genormt — etwa der Bereich für Kommunikationsparameter. Dadurch weiß ein Master von vornherein, an welcher Stelle er bei jedem normgerechten Gerät bestimmte Informationen findet. Will man von einem Gerät einen Wert lesen oder einen Parameter setzen, spricht man genau diesen Index/Subindex an.

Geräteprofile, EDS-Datei und Node-ID

Damit sich gleichartige Geräte einheitlich verhalten, gibt es Geräteprofile — etwa für Antriebe oder Ein-/Ausgabemodule. Sie legen fest, an welchen Indizes typische Funktionen liegen.

Zu jedem Gerät liefert der Hersteller eine EDS-Datei (Electronic Data Sheet). Sie beschreibt das Objektverzeichnis des Geräts maschinenlesbar, sodass ein Engineering-Werkzeug die verfügbaren Objekte kennt, ohne dass man sie von Hand eintippt.

Schließlich braucht jeder Teilnehmer eine eindeutige Node-ID (Knotennummer). Sie unterscheidet die Geräte im Netz und geht in die Identifier der Botschaften ein. Zwei Geräte mit derselben Node-ID im selben Netz sind ein klassischer Inbetriebnahmefehler — dazu mehr in Kapitel 6.

Ein Antrieb und ein E/A-Modul verschiedener Hersteller sollen im selben Netz zusammenarbeiten. Welche Aufgabe übernimmt dabei CANopen, die CAN allein nicht leistet?

  • a) Es erhöht die Übertragungsgeschwindigkeit auf dem Bus
  • b) Es legt fest, wie die Daten organisiert, adressiert und ausgetauscht werden, sodass die Bedeutung der Werte eindeutig ist
  • c) Es ersetzt die physikalische Zweidrahtleitung durch eine schnellere
  • d) Es vergibt automatisch die Abschlusswiderstände

Richtig: b)

CANopen definiert die Bedeutung und Organisation der Daten (Objektverzeichnis, Profile, Kommunikationsregeln), was CAN offenlässt (b). Die Geschwindigkeit (a) und die Physik (c) bleiben Sache von CAN, und Abschlusswiderstände (d) sind reine Hardware.

Was beschreibt der Index 0x6041 in einem CANopen-Gerät?

  • a) die Node-ID des Geräts
  • b) die Bitrate des Busses
  • c) eine bestimmte Adresse im Objektverzeichnis, an der ein definierter Wert steht
  • d) die Länge der Stichleitung

Richtig: c)

Ein Index adressiert einen Eintrag im Objektverzeichnis (c). Die Node-ID (a) und die Bitrate (b) sind eigene Größen, und die Stichleitungslänge (d) ist eine physikalische Eigenschaft der Verdrahtung, kein Objekteintrag.

Wozu dient die vom Hersteller mitgelieferte EDS-Datei?

  • a) Sie enthält die Firmware des Geräts
  • b) Sie legt die Abschlusswiderstände fest
  • c) Sie ersetzt die Node-ID
  • d) Sie beschreibt das Objektverzeichnis des Geräts maschinenlesbar, damit das Engineering-Werkzeug die verfügbaren Objekte kennt

Richtig: d)

Die EDS-Datei dokumentiert das Objektverzeichnis maschinenlesbar (d). Sie ist keine Firmware (a), hat mit der Hardware-Terminierung (b) nichts zu tun und ersetzt keine Node-ID (c).

5. CANopen im Betrieb: Kommunikationsobjekte und Zustände

Wenn ein CANopen-Netz arbeitet, laufen verschiedene Arten von Botschaften über den Bus. Die wichtigsten für die Praxis:

  • PDO (Process Data Object): der schnelle Austausch von Prozessdaten im laufenden Betrieb — etwa Istwerte und Sollwerte. PDOs sind kurz und werden ohne großen Verwaltungsaufwand verschickt, oft ereignis- oder zeitgesteuert.
  • SDO (Service Data Object): der gezielte Zugriff auf das Objektverzeichnis, um einzelne Parameter zu lesen oder zu schreiben. SDOs nutzt man vor allem bei Konfiguration und Inbetriebnahme, sie sind langsamer, aber gesichert.
  • EMCY (Emergency Object): die Störungsmeldung. Erkennt ein Gerät einen internen Fehler — etwa einen Sensorabriss, Übertemperatur oder einen Spannungsfehler — sendet es ein EMCY-Telegramm mit einem Fehlercode. Für die Fehlersuche ist das oft der erste Hinweis, was im Gerät schiefläuft.

Daneben gibt es das SYNC-Objekt, ein vom Netz ausgesendetes Taktsignal, mit dem mehrere Geräte ihre Aktionen synchron ausführen können — etwa mehrere Achsen, die gemeinsam einen Wert übernehmen.

Die NMT-Zustandsmaschine

Wie sich ein CANopen-Gerät verhält, hängt von seinem Betriebszustand ab. Das NMT (Network Management) steuert diese Zustände:

  • Pre-Operational: Das Gerät ist hochgelaufen und über SDO erreichbar — man kann es konfigurieren, aber es tauscht noch keine Prozessdaten aus.
  • Operational: Der volle Betrieb. Jetzt laufen auch die PDOs, das Gerät arbeitet im Prozess mit.
  • Stopped: Das Gerät ist weitgehend stillgelegt und reagiert nur noch auf grundlegende Netzwerkkommandos.

Nach dem Einschalten geht ein Gerät selbsttätig in Pre-Operational. Von dort schaltet ein NMT-Kommando es nach Operational — erst dann fließen Prozessdaten.

NMT-Zustände eines CANopen-Geräts Einschalten Pre-Operational Operational Stopped Start (NMT) Pre-Op (NMT) Stop Stop In Operational laufen die PDOs; in Pre-Operational ist das Gerät über SDO konfigurierbar.

Überwachung: Heartbeat und Node Guarding

Damit der Ausfall eines Teilnehmers auffällt, überwacht sich ein CANopen-Netz selbst. Beim Heartbeat sendet jedes Gerät regelmäßig ein Lebenszeichen; bleibt es aus, gilt der Knoten als gestört. Das ältere Node Guarding arbeitet umgekehrt mit Abfragen durch den Master. In beiden Fällen ist das Ziel dasselbe: einen ausgefallenen oder abgehängten Teilnehmer schnell erkennen.

Ein CANopen-Antrieb ist hochgelaufen, lässt sich per SDO konfigurieren, tauscht aber noch keine Prozessdaten (PDOs) aus. In welchem Zustand befindet er sich höchstwahrscheinlich?

  • a) Pre-Operational
  • b) Operational
  • c) Stopped
  • d) Bus-Off

Richtig: a)

Im Zustand Pre-Operational ist das Gerät über SDO erreichbar, PDOs laufen aber noch nicht (a). In Operational (b) würden die PDOs laufen, in Stopped (c) reagiert das Gerät kaum noch, und Bus-Off (d) ist ein Fehlerzustand der Übertragung, kein NMT-Zustand.

Ein Gerät meldet während des Betriebs eine Übertemperatur. Über welches Kommunikationsobjekt teilt es diese Störung typischerweise mit?

  • a) über ein PDO
  • b) über ein SDO
  • c) über das SYNC-Objekt
  • d) über ein EMCY-Telegramm

Richtig: d)

Gerätestörungen wie Übertemperatur werden über das Emergency-Objekt (EMCY) gemeldet (d). PDOs (a) transportieren reguläre Prozessdaten, SDOs (b) dienen dem Parameterzugriff, und SYNC (c) ist ein Taktsignal.

Wozu dient der Heartbeat in einem CANopen-Netz?

  • a) Er taktet die synchrone Übernahme von Sollwerten
  • b) Er ist das regelmäßige Lebenszeichen eines Geräts, dessen Ausbleiben einen ausgefallenen Teilnehmer erkennen lässt
  • c) Er überträgt die Nutzdaten im schnellen Zyklus
  • d) Er stellt die Bitrate automatisch ein

Richtig: b)

Der Heartbeat ist ein regelmäßiges Lebenszeichen; bleibt es aus, gilt der Knoten als gestört (b). Die synchrone Übernahme (a) leistet SYNC, Nutzdaten (c) transportieren PDOs, und die Bitrate (d) wird fest eingestellt, nicht über den Heartbeat.

Warum nutzt man zur Parametrierung eines Geräts bei der Inbetriebnahme bevorzugt SDO und nicht PDO?

  • a) Weil PDO grundsätzlich keine Daten übertragen kann
  • b) Weil SDO schneller ist als PDO
  • c) Weil SDO gezielt und gesichert einzelne Objekte im Objektverzeichnis liest und schreibt
  • d) Weil PDO im laufenden Betrieb nicht erreichbar ist

Richtig: c)

SDO ist der vorgesehene, gesicherte Weg, einzelne Objekte gezielt zu lesen und zu schreiben — ideal für die Konfiguration (c). PDOs übertragen sehr wohl Daten (a), nur eben Prozessdaten im Betrieb. SDO ist gerade nicht schneller als PDO (b), und PDOs sind im Betrieb durchaus erreichbar (d).

6. Fehlersuche und Praxis im CAN-Netz

Ein CAN-Netz läuft entweder zuverlässig oder macht durch sporadische, schwer greifbare Fehler Ärger. Die gute Nachricht: Die meisten Probleme lassen sich auf wenige typische Ursachen zurückführen.

Häufige Fehlerquellen

  • Fehlende oder falsche Abschlusswiderstände: Fehlt ein 120-Ω-Abschluss oder sitzt ein dritter mitten im Netz, kommt es zu Reflexionen und sporadischen Fehlern.
  • Unterschiedliche Bitraten: Stellt ein Teilnehmer eine andere Bitrate ein als der Rest, kann er nicht teilnehmen und stört unter Umständen das ganze Netz.
  • Doppelte Node-ID: Zwei Geräte mit derselben Knotennummer führen zu widersprüchlichen Botschaften und Fehlern.
  • CAN_H und CAN_L vertauscht: Eine an einem Teilnehmer verdrehte Verdrahtung verhindert die korrekte Differenzauswertung.

Messen mit dem Multimeter

Der einfachste und wirksamste erste Test: Bus spannungsfrei schalten und den Widerstand zwischen CAN_H und CAN_L messen. Bei einem korrekt terminierten Netz mit zwei 120-Ω-Abschlüssen ergibt das rund 60 Ω.

  • Etwa 60 Ω: Terminierung in Ordnung.
  • Etwa 120 Ω: Nur ein Abschluss wirksam — einer fehlt oder ist unterbrochen.
  • Sehr hoher Wert: Leitungsunterbrechung oder kein Abschluss.
  • Deutlich unter 60 Ω: Zu viele Abschlusswiderstände oder ein Kurzschluss.

Diese eine Messung deckt einen großen Teil der Verdrahtungs- und Terminierungsfehler auf, bevor man überhaupt ein Diagnosewerkzeug anschließt.

Error Frames und Bus-Off

CAN erkennt Übertragungsfehler selbst. Stellt ein Teilnehmer einen Fehler fest, sendet er einen Error Frame, der die fehlerhafte Botschaft für alle ungültig macht — die Botschaft wird anschließend wiederholt. Jeder Knoten führt interne Fehlerzähler. Häufen sich die Fehler bei einem Teilnehmer über ein bestimmtes Maß, schaltet er sich selbst vom Bus ab. Dieser Zustand heißt Bus-Off. Ein Gerät, das immer wieder in Bus-Off geht, ist ein deutlicher Hinweis auf ein hocheffektives Hardware- oder Verdrahtungsproblem an genau dieser Stelle.

Diagnose-Vorgehen

Bewährt hat sich eine feste Reihenfolge: erst die Verdrahtung sichtprüfen (CAN_H/CAN_L, Schirmung), dann spannungsfrei die 60 Ω messen, anschließend Bitrate und Node-IDs aller Teilnehmer abgleichen und zuletzt mit einem Diagnosewerkzeug die Botschaften und eventuelle EMCY-Meldungen mitlesen. Vom Einfachen zum Aufwändigen — das spart Zeit.

Über den spannungsfrei geschalteten Bus misst ein Techniker zwischen CAN_H und CAN_L etwa 120 Ω. Was ist die wahrscheinlichste Ursache?

  • a) Beide Abschlusswiderstände sind in Ordnung
  • b) Es ist nur ein Abschlusswiderstand wirksam, der zweite fehlt oder ist unterbrochen
  • c) Es liegt ein Kurzschluss zwischen den Adern vor
  • d) Die Bitrate ist falsch eingestellt

Richtig: b)

Zwei parallele 120-Ω-Abschlüsse ergeben 60 Ω; werden 120 Ω gemessen, ist nur einer wirksam (b). Bei intakter Terminierung (a) wären es 60 Ω, ein Kurzschluss (c) ergäbe einen sehr niedrigen Wert, und die Bitrate (d) lässt sich mit einer Widerstandsmessung gar nicht beurteilen.

Ein Teilnehmer geht im Betrieb wiederholt in den Zustand Bus-Off. Was sagt das aus?

  • a) Das Gerät arbeitet einwandfrei und schont nur den Bus
  • b) Der gesamte Bus ist dauerhaft zerstört
  • c) Bei diesem Teilnehmer häufen sich Übertragungsfehler so stark, dass er sich selbst abschaltet — ein Hinweis auf ein Hardware- oder Verdrahtungsproblem an dieser Stelle
  • d) Das ist der normale Ruhezustand jedes Knotens

Richtig: c)

Bus-Off tritt ein, wenn die internen Fehlerzähler eines Knotens einen Schwellwert überschreiten — meist wegen eines lokalen Problems (c). Einwandfreier Betrieb (a) und ein normaler Ruhezustand (d) sind es nicht, und der restliche Bus (b) kann durchaus weiterlaufen.

Ein neu eingebundenes Gerät nimmt nicht am Datenaustausch teil, und es treten vermehrt Fehler im ganzen Netz auf. Welche Ursache solltest du zuerst prüfen, bevor du ein Diagnosewerkzeug anschließt?

  • a) ob die EDS-Datei die neueste Version hat
  • b) ob das Gerät ein passendes Geräteprofil verwendet
  • c) ob das SYNC-Objekt aktiviert ist
  • d) ob Bitrate und Node-ID des neuen Geräts zum Netz passen und die Verdrahtung CAN_H/CAN_L korrekt ist

Richtig: d)

Eine abweichende Bitrate, eine doppelte Node-ID oder vertauschte Adern sind die häufigsten und am schnellsten prüfbaren Ursachen für genau dieses Fehlerbild (d). EDS-Version (a) und Geräteprofil (b) erklären keine netzweiten Übertragungsfehler, und SYNC (c) ist hier nicht das Problem.

Abschlusstest

Aufgabe 1: Berechne die einfache Signallaufzeit auf einem 500 m langen CAN-Bus.

Gegeben: l = 500 m; v = 2·10^8 m/s

Gesucht: t in µs

Lösungsweg:

t = l / v = 500 / (2·10^8) = 2,5·10^-6 s

Ergebnis: t = 2,5 µs

Aufgabe 2: Bei 125 kbit/s dauert ein Bit 8 µs. Wie groß ist das Verhältnis von Bitdauer zur einfachen Laufzeit aus Aufgabe 1?

Gegeben: Bitdauer = 8 µs; Laufzeit = 2,5 µs

Gesucht: Verhältnis

Lösungsweg:

8 µs / 2,5 µs = 3,2

Ergebnis: Die Bitdauer ist das 3,2-Fache der Laufzeit.

Aufgabe 3: Über den spannungsfreien, intakten Bus werden 60 Ω gemessen. Welchen Wert hat jeder der beiden gleich großen Abschlusswiderstände?

Gegeben: Gesamtwiderstand 60 Ω, zwei gleiche Widerstände parallel

Gesucht: Einzelwiderstand R

Lösungsweg:

Bei zwei gleichen parallelen Widerständen gilt R_ges = R/2 → R = 2 · R_ges = 2 · 60 Ω

Ergebnis: R = 120 Ω je Abschluss

Aufgabe 4: Ein Techniker misst über den spannungsfreien Bus 40 Ω. Wie viele 120-Ω-Abschlusswiderstände sind vermutlich parallel wirksam?

Gegeben: R_ges = 40 Ω; Einzelwiderstand 120 Ω

Gesucht: Anzahl n

Lösungsweg:

Bei n gleichen parallelen Widerständen gilt R_ges = R/n → n = R / R_ges = 120 / 40

Ergebnis: n = 3 — es ist ein Abschluss zu viel im Netz.

Worin liegt der grundlegende Unterschied zwischen CAN und CANopen?

  • a) CAN ist für Fahrzeuge, CANopen ausschließlich für Gebäudetechnik
  • b) CAN regelt die Übertragung der Daten, CANopen legt deren Bedeutung und Organisation fest
  • c) CAN ist digital, CANopen analog
  • d) CAN ist ein Hersteller, CANopen ein anderer

Richtig: b)

CAN definiert die Übertragung, CANopen setzt als Anwendungsschicht darauf auf und regelt die Bedeutung der Daten (b). Die übrigen Aussagen sind sachlich falsch: keine reine Anwendungstrennung (a), beide sind digital (c), und es handelt sich nicht um Hersteller (d).

Eine Botschaft mit niedrigerem Identifier setzt sich in der Arbitrierung durch. Was ist die elektrotechnische Ursache?

  • a) Niedrige Zahlen werden softwareseitig vorsortiert
  • b) Niedrige Identifier werden mit höherer Spannung gesendet
  • c) Der Master teilt niedrigen Identifiern mehr Zeit zu
  • d) Ein dominantes Bit (0) zieht den Bus und überschreibt ein rezessives (1) nach dem Wired-AND-Prinzip

Richtig: d)

Das dominante Bit zieht den Bus aktiv auf 0 und verdrängt den Konkurrenten mit der rezessiven 1 (d). Es ist keine Softwaresortierung (a), keine Spannungsfrage im Sinne unterschiedlicher Sendepegel (b) und keine Zuteilung durch einen Master (c), den es bei CAN nicht gibt.

Welche Aussage zu den Abschlusswiderständen trifft zu?

  • a) Sie sitzen an beiden Enden der Stammleitung, je 120 Ω, und ergeben über den intakten Bus rund 60 Ω
  • b) Es genügt ein einziger Widerstand in der Mitte des Netzes
  • c) Sie sind nur bei niedrigen Bitraten erforderlich
  • d) Sie ersetzen die Schirmung der Leitung

Richtig: a)

Je ein 120-Ω-Abschluss an beiden Enden, parallel rund 60 Ω (a). Ein einzelner Widerstand in der Mitte (b) terminiert die Enden nicht, die Abschlüsse sind unabhängig von der Bitrate nötig (c), und mit der Schirmung (d) haben sie nichts zu tun.

Ein Gerät ist über SDO erreichbar, sendet aber keine PDOs. In welchem NMT-Zustand ist es?

  • a) Operational
  • b) Stopped
  • c) Pre-Operational
  • d) Bus-Off

Richtig: c)

In Pre-Operational ist das Gerät über SDO konfigurierbar, PDOs laufen noch nicht (c). In Operational (a) würden PDOs laufen, in Stopped (b) reagiert es kaum, und Bus-Off (d) ist ein Übertragungs-Fehlerzustand.

Welche Information stellt der Identifier einer CAN-Botschaft bereit?

  • a) die Zieladresse des Empfängers
  • b) die Bitrate des Busses
  • c) die Kennung des Botschaftsinhalts und zugleich die Priorität
  • d) die Anzahl der angeschlossenen Knoten

Richtig: c)

Der Identifier kennzeichnet den Inhalt der Botschaft und bestimmt über die Arbitrierung die Priorität (c). Eine Zieladresse (a) ist es ausdrücklich nicht; Bitrate (b) und Knotenzahl (d) stehen nicht im Identifier.

Ein Gerät meldet per EMCY einen Fehlercode. Was ist damit gemeint?

  • a) eine reguläre Prozessdatenübertragung
  • b) ein Taktsignal zur Synchronisation
  • c) ein Befehl zum Wechsel des NMT-Zustands
  • d) eine Störungsmeldung des Geräts, etwa bei Übertemperatur oder Sensorabriss

Richtig: d)

EMCY ist die Störungsmeldung eines Geräts bei internen Fehlern (d). Prozessdaten (a) laufen über PDO, das Taktsignal (b) ist SYNC, und NMT-Kommandos (c) sind eine eigene Botschaftsart.

Warum darf bei 1 Mbit/s die Buslänge nur rund 40 m betragen?

  • a) Die kurze Bitdauer lässt nur eine kurze Strecke zu, die das Signal in der verfügbaren Zeit sicher durchläuft
  • b) Der Leitungswiderstand wird sonst zu groß
  • c) Die Abschlusswiderstände vertragen keine hohe Bitrate
  • d) Bei 1 Mbit/s sind keine Stichleitungen erlaubt

Richtig: a)

Hohe Bitrate bedeutet kurze Bitdauer, also bleibt weniger Zeit für die Signallaufzeit und damit weniger Länge (a). Der Leitungswiderstand (b) ist nicht der begrenzende Faktor, Abschlüsse (c) sind bitratenunabhängig, und Stichleitungen (d) sind nicht generell verboten, sondern nur kurz zu halten.

Welche Größen stellt ein Techniker beim Einbinden eines neuen CANopen-Geräts zuerst ein?

  • a) Index und Subindex
  • b) PDO-Mapping und SYNC-Intervall
  • c) Node-ID und Bitrate
  • d) Heartbeat und CRC

Richtig: c)

Node-ID und Bitrate müssen zum Netz passen und werden zuerst eingestellt (c). Index/Subindex (a) adressieren Objekte, PDO-Mapping (b) folgt später bei der Parametrierung, und der CRC (d) wird vom Protokoll automatisch gebildet.

Über den spannungsfreien Bus werden statt 60 Ω nur 40 Ω gemessen. Was ist die wahrscheinlichste Ursache?

  • a) ein fehlender Abschlusswiderstand
  • b) eine Leitungsunterbrechung
  • c) eine vertauschte Bitrate
  • d) ein zusätzlicher, dritter Abschlusswiderstand im Netz

Richtig: d)

Drei parallele 120-Ω-Widerstände ergeben 40 Ω — also ein Abschluss zu viel (d). Ein fehlender Abschluss (a) ergäbe 120 Ω, eine Unterbrechung (b) einen hohen Wert, und die Bitrate (c) wirkt sich auf eine Widerstandsmessung nicht aus.

Was bewirkt ein Error Frame auf dem CAN-Bus?

  • a) Er schaltet den ganzen Bus dauerhaft ab
  • b) Er erhöht die Bitrate kurzfristig
  • c) Er erklärt die gerade laufende fehlerhafte Botschaft für ungültig, sodass sie wiederholt wird
  • d) Er vergibt eine neue Node-ID

Richtig: c)

Ein Error Frame macht die fehlerhafte Botschaft ungültig und führt zur Wiederholung (c). Eine dauerhafte Abschaltung (a) wäre Bus-Off, die Bitrate (b) bleibt unverändert, und Node-IDs (d) vergibt kein Error Frame.

Welche Rolle spielt das Objektverzeichnis in einem CANopen-Gerät?

  • a) Es ist die geordnete Tabelle aller Daten und Parameter des Geräts, adressiert über Index und Subindex
  • b) Es speichert die Schirmung der Leitung
  • c) Es ersetzt die Abschlusswiderstände
  • d) Es legt die Buslänge fest

Richtig: a)

Das Objektverzeichnis ist die zentrale, geordnete Datentabelle des Geräts mit Index/Subindex-Adressierung (a). Mit Schirmung (b), Terminierung (c) oder Buslänge (d) hat es nichts zu tun.

Bei der Fehlersuche fällt eine der beiden Datenleitungen durch einen Masseschluss auf. Womit ist im Netz zu rechnen?

  • a) Das Netz arbeitet unverändert weiter, da die zweite Leitung alles übernimmt
  • b) Die differenzielle Auswertung ist gestört, weil die Pegel verzerrt werden; es kommt zu Übertragungsfehlern oder Totalausfall der Kommunikation
  • c) Die Bitrate verdoppelt sich automatisch
  • d) Alle Teilnehmer wechseln selbsttätig in den Zustand Operational

Richtig: b)

CAN wertet die Differenz zwischen CAN_H und CAN_L aus. Liegt eine Ader über einen Masseschluss fest, verschiebt sich der Pegel dieser Ader und die Differenzbildung wird gestört — je nach Schwere kommt es zu gehäuften Fehlern bis zum Stillstand der Kommunikation (b). Eine einzelne Ader kann die Differenzübertragung nicht allein tragen (a), die Bitrate (c) ist davon unberührt, und ein NMT-Zustandswechsel (d) wird dadurch nicht ausgöst.

Glossar

CAN
Controller Area Network, ein serielles Zweidraht-Bussystem zur störfesten Datenübertragung zwischen mehreren gleichberechtigten Teilnehmern.
CANopen
auf CAN aufgesetztes Protokoll, das die Bedeutung und Organisation der Daten festlegt und so Geräte verschiedener Hersteller zusammenarbeiten lässt.
CAN_H / CAN_L
die beiden Adern des CAN-Busses; die Information liegt in der Spannungsdifferenz zwischen ihnen.
dominant / rezessiv
die beiden Buszustände: dominant entspricht logisch 0 (Differenz ≈ 2 V) und überschreibt den rezessiven Zustand, rezessiv entspricht logisch 1 (Differenz ≈ 0 V).
Abschlusswiderstand
120-Ω-Widerstand an jedem Ende der Stammleitung, der Reflexionen verhindert; über den intakten, spannungsfreien Bus misst man rund 60 Ω.
Arbitrierung
bitweises Verfahren des Buszugriffs, bei dem sich der Teilnehmer mit dem niedrigeren Identifier zerstörungsfrei durchsetzt.
Identifier
Kennung einer CAN-Botschaft, die ihren Inhalt benennt und zugleich ihre Priorität festlegt; keine Geräteadresse.
Multi-Master
Prinzip, bei dem jeder Teilnehmer ohne zentrale Vergabe senden darf, sobald der Bus frei ist.
Objektverzeichnis
geordnete Tabelle aller Daten und Parameter eines CANopen-Geräts, adressiert über Index und Subindex.
EDS-Datei
Electronic Data Sheet, maschinenlesbare Beschreibung des Objektverzeichnisses eines Geräts.
Node-ID
eindeutige Knotennummer, die ein Gerät im CANopen-Netz kennzeichnet.
PDO
Process Data Object, schneller Austausch von Prozessdaten im laufenden Betrieb.
SDO
Service Data Object, gesicherter Zugriff auf einzelne Einträge des Objektverzeichnisses, vor allem bei Konfiguration.
EMCY
Emergency Object, Störungsmeldung eines Geräts bei internen Fehlern wie Übertemperatur oder Sensorabriss.
SYNC
Taktsignal im Netz, mit dem mehrere Geräte ihre Aktionen synchron ausführen.
NMT
Network Management, steuert die Betriebszustände Pre-Operational, Operational und Stopped eines Geräts.
Heartbeat
regelmäßiges Lebenszeichen eines Geräts; sein Ausbleiben weist auf einen ausgefallenen Teilnehmer hin.
Bus-Off
Fehlerzustand, in dem sich ein Knoten nach zu vielen Übertragungsfehlern selbst vom Bus abschaltet.

Scroll to Top