CANopen · CiA 301 · CiA 419 · PDO · SDO · NMT · Gebäudeautomation · 10 Min. Lesezeit

CANopen in der Gebäudeautomation: Objektverzeichnis, PDO, SDO und CiA 419 HVAC-Profil

CANopen ist die Anwendungsschicht, die auf dem CAN-Bus läuft und von CAN in Automation (CiA) als CiA 301 standardisiert wurde. Sie definiert, wie Geräte ihre Daten beschreiben (Objektverzeichnis), wie Prozesswerte mit hoher Geschwindigkeit ausgetauscht werden (PDO), wie Parameter während der Inbetriebnahme gelesen und geschrieben werden (SDO) und wie das Netzwerk verwaltet wird (NMT) – plus gerätespezifische Profile wie CiA 419 für HLK-Systeme, die genau festlegen, welche Objekte ein Kühler oder eine Lüftungsanlage bereitstellen muss.

CANopen Objektverzeichnis

Jedes CANopen-Gerät verfügt über ein Objektverzeichnis (OD) – eine strukturierte Tabelle aller Parameter und Prozesswerte, die das Gerät unterstützt. Jeder Eintrag wird über einen 16-Bit-Index (0x0000–0xFFFF) und einen 8-Bit-Subindex (0x00–0xFF) adressiert. Der Hersteller stellt das OD in einer Electronic Data Sheet (EDS)-Datei bereit – einer Textdatei im INI-Format, die von Konfigurierungswerkzeugen geladen wird, um zu wissen, welche Objekte das Gerät unterstützt.

IndexObjektBeschreibung
0x1000GerätetypPflicht – identifiziert das implementierte CiA-Geräteprofil (z. B. 0x00190191 = CiA 419 HVAC)
0x1001FehlerregisterPflicht — Bitfeld der aktiven Fehlerkategorien (Kommunikation, gerätespezifisch usw.)
0x1008Hersteller GerätenameOptional — lesbare Gerätemodellzeichenfolge
0x1017Heartbeat-Zeit des ProduzentenHeartbeat-Zykluszeit in ms — 0 deaktiviert Heartbeat
0x1018IdentitätsobjektHersteller-ID, Produktcode, Revision, Seriennummer (Subindizes 1–4)
0x1400–0x15FFRPDO-KommunikationsparameterCOB-ID, Übertragungstyp und Inhibit-Zeit für jeden Receive PDO
0x1600–0x17FFRPDO-Mapping-ParameterWelche OD-Objekte sind in jedes RPDO abgebildet (Index, Sub-Index, Bitlänge)
0x1800–0x19FFTPDO-KommunikationsparameterCOB-ID, Übertragungstyp, Ereignis-Timer für jedes Sende-PDO
0x1A00–0x1BFFTPDO-AbbildungsparameterWelche OD-Objekte sind in jedes TPDO verpackt
0x2000–0x5FFFHerstellerspezifische ObjekteGerätespezifische Prozesswerte — Kältemaschinentemperaturen, Alarmcodes, Sollwerte
0x6000–0x9FFFCiA-GeräteprofilobjekteStandardisierte Profilobjekte (CiA 419 HVAC: 0x6000–0x67FF)

PDO — Prozessdatenobjekte

PDOs sind der Echtzeit-Datenaustauschmechanismus in CANopen — schnelle, überheadarme CAN-Frames, die bis zu 8 Byte Prozessdaten ohne zusätzlichen Protokoll-Overhead jenseits des CAN-Frames transportieren. Ein Transmit-PDO (TPDO) sendet Daten von einem Gerät an das Netzwerk; ein Receive-PDO (RPDO) akzeptiert Daten, die von einem Master oder einem anderen Gerät geschrieben wurden.

Das PDO-Mapping definiert, welche Objektverzeichniseinträge in ein PDO gepackt werden. Beispielsweise könnte ein Kältemaschinen-TPDO1 die Vorlauftemperatur (0x6010:01, 16 Bit), Rücklauftemperatur (0x6010:02, 16 Bit), Kompressor-Betriebsstatus (0x6020:01, 8 Bit) und Alarmstatus (0x6030:01, 8 Bit) packen — insgesamt 6 Byte in einem einzelnen CAN-Frame, der alle 1 Sekunde gesendet wird.

PDO-Übertragungstypen — Tabelle nach CiA 301

Transmission type (object 0x1800:02 for TPDO1):

  Type 0:   Acyclic, synchronous — PDO sent after SYNC only if data changed
  Type 1–240: Cyclic, synchronous — PDO sent every N SYNC messages
              Example: type 10 = send PDO every 10th SYNC telegram
  Type 254: Event-driven, manufacturer-specific — sent on internal event
  Type 255: Event-driven, profile-specific — sent when data changes
            (most common for building automation — avoids fixed polling)

TPDO1 event timer (object 0x1800:05):
  Value in ms — maximum time between PDO transmissions even if no change
  Example: 5000 ms = resend TPDO1 every 5 seconds regardless
  Use 0 to disable the timer (rely on event trigger only)

Inhibit time (object 0x1800:03):
  Minimum time between two TPDO1 transmissions in 100µs steps
  Example: 1000 = 100ms minimum between sends — prevent bus flooding

SDO — Service Data Objects

SDOs werden für Konfiguration und Parameterzugriff verwendet — Lesen oder Schreiben eines beliebigen Objektverzeichniseintrags mittels eines bestätigten Handshakes. Im Gegensatz zu PDOs (Feuer-und-Vergessen) garantieren SDO-Übertragungen die Zustellung und geben den gelesenen Wert oder eine Bestätigung des Schreibvorgangs zurück. Der SDO-Zugriff ist langsam (mehrere CAN-Frames pro Lese-/Schreibvorgang) und wird während der Inbetriebnahme verwendet, nicht für zyklische Prozessdaten.

SDO Lese-/Schreibbeispiel — PCAN-View manueller Frame

SDO Read (Initiate Upload) — read object 0x6010:01 (supply water temp)
  COB-ID: 0x600 + node ID  (example: node 3 → 0x603)
  DLC: 8
  Data: 40 10 60 01 00 00 00 00
        |  |     |
        |  |     Sub-index: 0x01
        |  Index low byte: 0x10
        Command specifier: 0x40 (Initiate Upload Request)

SDO Response from device:
  COB-ID: 0x580 + node ID  (example: node 3 → 0x583)
  Data: 4B 10 60 01 E8 03 00 00
        |           |
        |           Value: 0x03E8 = 1000 → ÷10 = 100.0°C? No → check EDS
        Command: 0x4B = 4-byte, expedited (2 meaningful bytes)

SDO Write — set temperature setpoint object 0x6011:01 to 45°C (0x01C2 = 450 × 0.1°C)
  COB-ID: 0x600 + node ID
  DLC: 8
  Data: 2B 11 60 01 C2 01 00 00
        |  |     |  |
        |  |     Sub-index: 0x01
        |  Index: 0x6011
        Command: 0x2B (Write 2 bytes, expedited)

NMT — Netzwerkmanagement-Zustandsmaschine

Der NMT-Master (typischerweise das CANopen-Gateway oder die SPS) steuert den Betriebszustand aller Knoten im Netzwerk. Nach dem Einschalten wechseln die Knoten automatisch in den Zustand Pre-Operational — PDOs sind inaktiv, aber der SDO-Zugriff für die Konfiguration ist verfügbar. Der NMT-Master sendet einen Broadcast-Befehl, um alle Knoten in den Zustand Operational zu versetzen und den PDO-Austausch zu aktivieren.

NMT-ZustandPDOs aktivSDO aktivHinweise
InitialisierungNeinNeinGerät startet hier beim Einschalten, wechselt automatisch
Vor-OperationalNeinJaPDO-Mappings konfigurieren, Knotenparameter per SDO setzen
In BetriebJaJaNormaler Betriebszustand — PDOs und SDOs beide aktiv
GestopptNeinNeinWartungszustand — keine Kommunikation außer NMT

Das Heartbeat-Protokoll (CiA 301) ersetzt den älteren Node-Guarding-Mechanismus. Jeder Knoten sendet in einem konfigurierbaren Intervall (typischerweise 1000 ms) einen Heartbeat-Frame. Der NMT-Master überwacht den Heartbeat-Empfang — wenn ein Knoten keine Heartbeats mehr sendet, erkennt der Master den Knotenausfall und kann einen Alarm im Gebäudeautomationssystem auslösen.

CiA 417 Aufzugs- und CiA 419 HVAC-Geräteprofile

CiA-Geräteprofile standardisieren das Objektverzeichnis-Layout für bestimmte Gerätetypen und gewährleisten die Interoperabilität zwischen Geräten verschiedener Hersteller. Zwei Profile sind für die Gebäudeautomation direkt relevant: CiA 417 für Aufzugsanlagen und CiA 419 für HVAC-Systeme.

CiA 419 ObjektIndexBeschreibung
Zulufttemperatur0x6010:01INT16, Einheit 0,01°C — durch 100 teilen für °C-Wert
Ablufttemperatur0x6010:02INT16, Einheit 0,01°C — Zonenrückluft/Abluft
Außenlufttemperatur0x6010:05INT16, Einheit 0,01°C — Umgebungssensorwert
Temperatursollwert0x6011:01INT16, Einheit 0,01°C — vom Master beschreibbar zur Sollwertregelung
Lüfterdrehzahlsollwert0x6020:01UINT16, Einheit 0,01% — 0–10000 = 0–100% Drehzahlbefehl
Tatsächliche Lüfterdrehzahl0x6020:02UINT16, Einheit 0,01 % — tatsächlicher Lüfterausgangsprozentsatz
Ventilpositionsollwert0x6030:01UINT16, Einheit 0,01 % — Heiz-/Kühlventilbefehl
Tatsächliche Ventilposition0x6030:02UINT16, Einheit 0,01 % — Ventilpositionsrückmeldung
Betriebsart0x6040:01UINT8 — 0=Aus, 1=Heizen, 2=Kühlen, 3=Auto, 4=nur Lüfter
Alarmstatus0x6050:01UINT32-Bitfeld — jedes Bit repräsentiert einen spezifischen Alarmcode

CANopen-Gateways zu BACnet, Modbus und KNX

Die meisten Gebäudeautomationssysteme (KNX, BACnet, Modbus) können nativ kein CANopen sprechen – ein Protokoll-Gateway vermittelt zwischen den Feldbuswelten. Drei Gateway-Familien sind weit verbreitet.

GatewayProtokolleHinweise
Ixxat CANopen GatewayCANopen ↔ Modbus TCP/RTUÜber Web-UI konfigurierbar – CANopen-OD-Objekte auf Modbus-Holding-Register abbilden; unterstützt bis zu 127 CANopen-Knoten
Anybus X-gateway CANopen–BACnetCANopen ↔ BACnet IPHMS Networks – BACnet-Objektzuordnung über Anybus Configuration Manager; in großen BMS-Integrationen eingesetzt
EMS Electronic CANopen–KNXCANopen ↔ KNX TPBildet CANopen PDO/SDO-Objekte auf KNX-Gruppenadressen ab; Konfiguration über ETS6-Plugin
Weinzierl BAOS CANopen BridgeCANopen ↔ KNX IPKNX-IP-Routing mit CANopen-Master-Funktion; wird in Schaltschrank-Gateways eingesetzt

Fordern Sie vor der Bestellung eines Gateways stets die EDS-Datei vom Gerätehersteller an. Ohne die EDS können Sie nicht feststellen, welche Objektindizes das Gerät unterstützt und ob es ein standardisiertes CiA-Profil implementiert oder nur herstellerspezifische Objekte verwendet. Manche Kältemaschinen legen nur eine Teilmenge der CiA-419-Objekte offen und benötigen herstellerspezifische Objekte für Alarmcodes.

Benötigen Sie die Integration von CANopen-Geräten in Ihr GLT?

Wir konfigurieren und liefern CANopen-zu-KNX-, CANopen-zu-BACnet- und CANopen-zu-Modbus-Gateways mit vollständigem Objektwörterbuch-Mapping, EDS-basierter Inbetriebnahme und PDO-Konfiguration für HLK-Systeme.

Angebot anfordern →
Lade ...
Zum Seitenanfang