CX805x - Embeddet-PCs für CANopen und CAN

BECKHOFF Feldbuskomponenten

Dokumentation zu

CX8050, CX8051 - Embedded-PCs für CANopen und CAN

CX8050: CANopen-Master oder CAN-Master

CX8051: CANopen-Slave

Version: 1.0.0
Datum: 29.07.2015


Hinweise zur Dokumentation

Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs- und Automatisierungstechnik, das mit den geltenden nationalen Normen vertraut ist.
Zur Installation und Inbetriebnahme der Komponenten ist die Beachtung der nachfolgenden Hinweise und Erklärungen unbedingt notwendig.

Das Fachpersonal hat sicherzustellen, dass die Anwendung bzw. der Einsatz der beschriebenen Produkte alle Sicherheitsanforderungen, einschließlich sämtlicher anwendbaren Gesetze, Vorschriften, Bestimmungen und Normen erfüllt.

Disclaimer

Diese Dokumentation wurde sorgfältig erstellt. Die beschriebenen Produkte werden jedoch ständig weiter entwickelt.
Deshalb ist die Dokumentation nicht in jedem Fall vollständig auf die Übereinstimmung mit den beschriebenen Leistungsdaten, Normen oder sonstigen Merkmalen geprüft.
Falls sie technische oder redaktionelle Fehler enthält, behalten wir uns das Recht vor, Änderungen jederzeit und ohne Ankündigung vorzunehmen.
Aus den Angaben, Abbildungen und Beschreibungen in dieser Dokumentation können keine Ansprüche auf Änderung bereits gelieferter Produkte geltend gemacht werden.

Marken

Beckhoff®, TwinCAT®, EtherCAT®, Safety over EtherCAT®, TwinSAFE®, XFC® und XTS® sind eingetragene und lizenzierte Marken der Beckhoff Automation GmbH.
Die Verwendung anderer in dieser Dokumentation enthaltenen Marken oder Kennzeichen durch Dritte kann zu einer Verletzung von Rechten der Inhaber der entsprechenden Bezeichnungen führen.

Patente

Die EtherCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP1590927, EP1789857, DE102004044764, DE102007017835
mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

Die TwinCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP0851348, US6167425 mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

Copyright

© Beckhoff Automation GmbH & Co. KG.
Weitergabe sowie Vervielfältigung dieses Dokuments, Verwertung und Mitteilung seines Inhalts sind verboten, soweit nicht ausdrücklich gestattet.
Zuwiderhandlungen verpflichten zu Schadenersatz. Alle Rechte für den Fall der Patent-, Gebrauchsmuster- oder Geschmacksmustereintragung vorbehalten.


Allgemeine Sicherheitshinweise

BECKHOFF Automation: Vorwort

Sicherheitshinweise

Sicherheitsbestimmungen

Beachten Sie die folgenden Sicherheitshinweise und Erklärungen!
Produktspezifische Sicherheitshinweise finden Sie auf den folgenden Seiten oder in den Bereichen Montage, Verdrahtung, Inbetriebnahme usw.

Haftungsausschluss

Die gesamten Komponenten werden je nach Anwendungsbestimmungen in bestimmten Hard- und Software-Konfigurationen ausgeliefert. Änderungen der Hard-, oder Software-Konfiguration, die über die dokumentierten Möglichkeiten hinausgehen sind unzulässig und bewirken den Haftungsausschluss der Beckhoff Automation GmbH & Co. KG.

Qualifikation des Personals

Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs-, Automatisierungs- und Antriebstechnik, das mit den geltenden Normen vertraut ist.

Erklärung der Symbole

In der vorliegenden Dokumentation werden die folgenden Symbole mit einem nebenstehenden Sicherheitshinweis oder Hinweistext verwendet. Die Sicherheitshinweise sind aufmerksam zu lesen und unbedingt zu befolgen!

GEFAHR 		Akute Verletzungsgefahr!
Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, besteht unmittelbare Gefahr für Leben und Gesundheit von Personen!

WARNUNG 		Verletzungsgefahr!
Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, besteht Gefahr für Leben und Gesundheit von Personen!

VORSICHT 		Schädigung von Personen!
Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, können Personen geschädigt werden!

Achtung 		Schädigung von Umwelt oder Geräten
Wenn der Hinweis neben diesem Symbol nicht beachtet wird, können Umwelt oder Geräte geschädigt werden.

Hinweis 		Tipp oder Fingerzeig
Dieses Symbol kennzeichnet Informationen, die zum besseren Verständnis beitragen.


CX805x - Ausgabestände der Dokumentation

BECKHOFF CX805x: Vorwort

Ausgabestände der Dokumentation

Version Kommentar
1.0.0
  • Vorwort aktualisiert
  • Kapitel 1-Sekunden-USV hinzugefügt
  • Kapitel Betriebssystem hinzugefügt
0.5.0
  • Vorläufige Version

Image Version CX8050

Firmware Beschreibung
Build 2241
  • Erste Version

Image Version CX8051

Firmware Beschreibung
Build 2241
  • Erste Version


CX80xx - Systemübersicht

CX80xx bezeichnet eine Gerätefamilie von programmierbaren Steuerungen mit ARM-basierter 32-Bit-CPU, die sowohl zur Abarbeitung von SPS-Programmen dienen, als auch die Funktion als Slave-Teilnehmer eines übergeordneten Feldbussystems erfüllen. Im Vergleich zu den nicht-programmierbaren EtherCAT-Kopplern der EK-Serie, die lediglich als Gateway zwischen dem entsprechenden Feldbussystem und den angeschlossenen EtherCAT-Klemmen fungieren, ist der CX80xx programmierbar und in der Lage, ein eigenes Steuerungsprogramm abzuarbeiten.

Die Geräte der Baureihe CX80xx stellen eine Weiterentwicklung der bekannten und bewährten 16-Bit-Microcontroller-basierten Busklemmen-Controllern der BC- und BX-Serien dar; hin zu leistungsfähigeren 32-Bit-Prozessoren. Wie bei den BC/BX ist auch beim CX80xx sichergestellt, dass bei Unterbrechung des übergeordneten Feldbussystems die Steuerung und das lokale Programm weiterhin abgearbeitet werden. Somit können die CX80xx-Geräte als dezentrale Steuerung verwendet werden. Wahlweise sind Busklemmen (K-Bus) oder EtherCAT-Klemmen (E-Bus) anschließbar; der CX80xx erkennt in der Hochlaufphase automatisch, welches Klemmensystem angeschlossen ist. Beim Einsatz von EtherCAT ergeben sich weitere Möglichkeiten, wie die Realisierung verschiedener Topologien, die Einbindung weiterer Bussysteme, wie CANopen, PROFIBUS und PROFINET, und – mit den EtherCAT-Box-Modulen – die Verbindung in die IP67-Welt.

Die Programmierung und Inbetriebnahme der CX80xx-Geräte erfolgt, wie bei allen CX-Produkten, über die Ethernet-Schnittstelle, die sich natürlich auch zur Verbindung der Steuerung mit einem regulären Netzwerk nutzen lässt. Teilweise verfügen die Embedded-PCs über weitere Ethernet-Schnittstellen mit Switch-Funktionalität, sodass eine linienförmige „Daisy-Chain“-Topologie kostensparend, ohne zusätzliche Hardware, aufgebaut werden kann. Die weiteren Anschlüsse auf der niedrigen Steckebene sind feldbusspezifisch. Unter der Klappe auf der oberen Gehäuseebene befinden sich eine tauschbare Knopfzellenbatterie für Datum und Uhrzeit, eine Reihe von DIP-Schaltern zur Einstellung von Funktionsmodi, ein Slot für MicroSD-Flash-Speicherkarten sowie ein USB-Anschluss Typ B. Die Geräte sind, dank geringer elektrischer Leistungsaufnahme, lüfterlos.

Als Betriebssystem kommt Microsoft Windows CE zum Einsatz. Da kein Bildschirmanschluss vorhanden ist, kann nur per Netzwerk auf das Betriebssystem und seinen „virtuellen“ Bildschirm zugegriffen werden. Wie bei allen anderen Beckhoff-Geräten erfolgen die Systemkonfiguration und die Programmierung der SPS-Funktionalität mittels der TwinCAT-Software. Auf dem CX80xx-Zielgerät befindet sich dazu eine vorinstallierte TwinCAT-SPS-Laufzeitumgebung. Sämtliche für den Betrieb des Gerätes benötigte Software, vom Betriebssystem über die TwinCAT-Dateien bis hin zu Anwenderdateien und -daten, wird auf der MicroSD-Flash-Karte gespeichert. Das vereinfacht den Tausch im Servicefall. Der Zugriff auf die Kartendaten kann auch über handelsübliche Kartenleser erfolgen. Die Größe der MicroSD-Flash-Karte (z. B. 512 MB) ist, je nach Anwendung und Umfang der zu speichernden Daten, wählbar.

Die CX80xx-Gerätefamilie verfügt über eine integrierte, kapazitive 1-Sekunden-USV, die bei Wegfall der Versorgungsspannung noch ausreichend Energie zur Verfügung stellt, um persistente Daten zu speichern. Damit ist der spannungsausfallsichere Erhalt wichtiger Daten ohne Batteriepufferung möglich.

Mit einem leistungsstarken und dennoch stromsparenden 32-Bit-ARM-Prozessor, EtherCAT als I/O-Bus sowie TwinCAT PLC mit umfangreichen SPS-Bibliotheken, stellen die Embedded-Controller der Serie CX80xx leistungsfähige Steuerungen mit Slave-Feldbusanschluss dar, die sehr flexibel einsetzbar sind.

Feldbus-Interface

Die Varianten der Serie CX80xx unterscheiden sich durch die unterschiedlichen Feldbusschnittstellen. Verschiedene Ausführungen decken die wichtigsten Feldbussysteme ab:

  • CX8010: EtherCATSlave
  • CX8030: PROFIBUS DP Master
  • CX8031: PROFIBUS DP Slave
  • CX8050: CAN Master
  • CX8051: CANopen Slave
  • CX8080: RS232/485
  • CX8090: Ethernet (RT-Ethernet, EAP, ModbusTCP, TCP/IP, UDP/IP, Web Services)
  • CX8091: BACnet IP/OPC UA
  • CX8093: PROFINET RT Device (Slave)
  • CX8095: Ethernet/IP Slave
  • CX8097: Sercos III Slave

Programmierung

Programmiert werden die CX80xx-Controller nach der leistungsfähigen IEC 61131-3 Norm. Wie auch bei allen anderen Beckhoff Steuerungen ist die Automatisierungssoftware TwinCAT Grundlage für die Parametrierung und Programmierung. Dem Anwender stehen also die gewohnten TwinCAT Werkzeuge, wie z. B. SPS-Programmieroberfläche, System Manager und TwinCAT Scope zur Verfügung.

Konfiguration

Die Konfiguration erfolgt ebenfalls mit TwinCAT. Über den System Manager können das Feldbusinterface und die Echtzeit-Uhr konfiguriert und parametriert werden. Alle angeschlossenen Geräte und Busklemmen können vom System Manager ausgelesen werden. Die Konfiguration wird nach der Parametrierung auf den CX gespeichert. Diese erstellte Konfiguration kann auch wieder ausgelesen werden.


CX805x - Einführung

BECKHOFF CX805x: Produktübersicht

CX8050, CX8051 - Einführung

Die Grundausstattung des CX80xx enthält eine 512 MB MicroSD-Karte. Eine Feldbusschnittstelle, ein Ethernet Interface, sowie eine K-Bus bzw. E-Bus Schnittstelle gehören zur Basisausstattung.

Die kleinste zu verwendende Task-Zeit ist 1 ms (empfohlen wird eine Task-Zeit von 10 ms bis 50 ms für die I/O Daten, weitere Tasks können auch langsamer gestellt werden). Bei Verwendung kleiner Zykluszeiten ist die gesamte Systemauslastung zu beachten. Ist die Zykluszeit zu klein gewählt können Web-Visualisierung und Remote-Desktop sehr langsam arbeiten oder TimeOuts verursachen. Der Anwender ist selbst dafür verantwortlich sein System so zu projektieren und zu konfigurieren, dass es nicht überlastet wird.

CX8050

Der CX8050 ist eine Steuerung mit CANopen-Master-Schnittstelle. Neben der Funktion eines CANopen-Masters ist auch wahlweise eine CAN-Layer-2-Kommunikation möglich. Wahlweise können K-Bus- oder E-Bus-Klemmen angereiht werden; der CX8050 erkennt in der Hochlaufphase automatisch, welches System angeschlossen ist. Programmiert wird die Steuerung über das Ethernet-Interface.

CX8051

Der CX8051 ist eine Steuerung mit CANopen-Slave-Schnittstelle. Die CANopen-Adresse wird über zwei Drehwahlschalter eingestellt. Der CX8051 verfügt über eine automatische Erkennung der Baudrate. Wahlweise können K-Bus- oder E-Bus-Klemmen angereiht werden; der CX8051 erkennt in der Hochlaufphase automatisch, welches System angeschlossen ist. Programmiert wird die Steuerung über das Ethernet-Interface.


CX805x - Technische Daten

BECKHOFF CX805x: Produktübersicht

Technische Daten

Technische Daten | CX8050 | CX8051
Prozessor | 32 Bit, 400 MHz, ARM9
Interner Arbeitsspeicher | 64 MB RAM (intern, nicht erweiterbar)
Betriebssystem | Microsoft Windows CE 6.0
Web-base Management | ja
Flash-Speicher | MicroSD-Karte (ATP) 512 MByte (optional 1, 2, 4 GB)
Schnittstellen | 1 x USB-Device (hinter der Frontklappe) 1 x RJ45 Ethernet, 10/100 MBit/s (ADS over TCP/IP) 1 x D-Sub RS485 CAN
Protokolle | CANopen-Master oder CAN-Master | CANopen-Slave
Interface für I/O-Klemmen | K-Bus oder E-Bus, automatische Erkennung
Prozessdaten am K-Bus | max. 2 kByte Eingangsdaten max. 2 kByte Ausgangsdaten
Diagnose LED | 1 x Power, 1 x TC-Status, 2 x Bus-Status
Uhr | interne, batteriegepufferte Uhr (RTC) für Zeit und Datum (Batterie wechselbar)
Betriebssystem | Microsoft Windows CE
Steuerungssoftware | TwinCAT-PLC-Runtime (ab Version 2.11 R3)
Programmierung | TwinCAT PLC
Programmiersprachen | IEC 61131-3
Online Change | Ja
Up/Download-Code | Ja/Ja
Spannungsversorgung | 24 VDC (-15 %/+20 %)
USV | 1-Sekunden-USV
Stromversorgung für I/O-Klemmen (K-Bus oder E-Bus) | max. 2 A
Stromlast Powerkontakt | max. 10 A
Max. Verlustleistung | 3,0 W (einschließlich der Systemschnittstellen)
Spannungsfestigkeit | 500 V (Versorgung/interne Elektronik)
Abmessungen (B x H x T) | 64 mm x 100 mm x 73 mm
Gewicht | ca. 180 g
Zulässige Umgebungstemperatur im Betrieb | 0° C ... +55° C
Zulässige Umgebungstemperatur bei Lagerung | -25° C ... +85° C
Einbaulage | siehe Kapitel Einbaulagen
Relative Feuchte | 95% ohne Betauung
Vibrations-/Schockfestigkeit | gemäß EN 60068-2-6 / EN 60068-2-27
EMV-Festigkeit/Aussendung | gemäß EN 61000-6-2/EN 61000-6-4
Schutzart | IP20


CX805x - Technische Daten - CAN

BECKHOFF CX805x: Produktübersicht

Technische Daten - CAN

Technische Daten CAN | CX8050 | CX8051
Anzahl der Slaves | - | 4 (davon 3 virtuelle)
Anzahl der PDOs pro Slave | 16 Rx und 16 Tx PDOs
Businterface | D-Sub 9-polig
Baudrate | max. 1 MBaud
Autobaud | - | Ja
Galvanische Trennung | Ja
Protokoll |
CANopen Slave | - | Ja
CAN (virtueller Slave) | - | 3 (siehe virtuelles CANopen Device)
ADS Interface | ja (nur über Ethernet)
Dienste |
CAN Layer 2 | Ja | Nein
CAN 2.0A | Ja | nach CANopen
CAN 2.0B | Ja, nur über das CAN-Interface nutzbar | Nein
Diagnose/Status/Alarm |
TC LED | Ja, grün/rot
BF LED | Ja, grün/rot
DIA LED | Ja, grün/rot
Diagnosemeldungen | Ja


CX80xx - MicroSD-Karten

In der Grundausstattung enthält der CX80xx eine MicroSD-Karte mit 512 MB. Sie können ihn als Option mit größeren Karten (bis 4 GB) bestellen.

Die verwendeten Karten sind SLC-Speicher mit erweiterten Temperaturbereich für Industrielle Anwendungen. Verwenden Sie ausschließlich von Beckhoff freigegebene MicroSD-Karten.

Beispiel für eine MicroSD-Karte:

Bestellbezeichnung | Kapazität | Beschreibung
CX1900-0123 | 1 GB | MicroSD-Karte (SLC-Speicher ) mit erweitertem Temperaturbereich für Industrielle Anwendungen anstelle der 512 MB Karte (Bestelloption)
CX1900-0125 | 2 GB
CX1900-0127 | 4 GB
CX1900-0122 | 512 MB | MicroSD-Karte (SLC-Speicher) mit erweitertem Temperaturbereich für Industrielle Anwendungen als Ersatzteil.
CX1900-0124 | 1 GB
CX1900-0126 | 2 GB
CX1900-0128 | 4 GB

Weitere Informationen: http://www.beckhoff.de/CX8000


CX80xx - Abmessungen

BECKHOFF CX80xx: Montage und Verdrahtung

Abmessungen

Die folgenden Zeichnungen zeigen die Abmessungen der Embedded-PCs CX80xx.

Abmessungen

Zeichnungen in verschiedenen CAD-Formaten finden Sie unter: http://www.beckhoff.de/german/download/cx1000.htm


CX80xx - Tragschienenmontage

BECKHOFF CX80xx: Montage und Verdrahtung

Tragschienenmontage

Aufrasten auf die Tragschiene

Der CX80xx kann einfach auf die Tragschiene aufgerastet werden. Dazu wird der Block einfach frontal auf die Tragschiene aufgesetzt und leicht angedrückt bis die rechte Seite eingerastet ist. Die wird durch ein vernehmliches Klicken angezeigt. Mit einem Schraubendreher wird dann die Arretierung auf der linken Seite nach oben gedrückt wodurch sich die Arretierung dreht und ebenfall hörbar einrastet.

Achtung 		Beschädigungen vermeiden!
Keine Gewalt oder zu großen Druck auf die Baugruppe ausüben!

Zulässige Einbaulagen und Mindestabstände

Einbaulage bei bis zu 55°C

Achtung 		Zulässige Einbaulage und Mindestabstände einhalten!
Das auf eine Hutschiene montierte CPU-Modul darf nur bis Umgebungstemperaturen von 55°C betrieben werden. Die Einbaulage muss so gewählt werden, dass die Kühlung durch die Lüftungsöffnungen in vertikaler Richtung möglich ist. Die Bilder zeigen die erlaubte sowie die eingeschränkte Einbaulagen.

Beim Einbau ist ein Freiraum von jeweils 30 Millimetern oberhalb und unterhalb einer CX80xx Gerätekombination erforderlich, um eine ausreichende Belüftung des CPU-Grundmoduls und des Netzteils zu erreichen.

Aufgrund der hohen Leistung und der kompakten Bauform des CX80xx-Systems kann es zu einer erhöhten Wärmeentwicklung kommen. Diese Wärme wird durch ein passives Lüftungssystem abgeführt. Dieses System erfordert allerdings eine korrekte Einbaulage. Lüftungsöffnungen befinden sich auf der Gehäuseunter- und Gehäuseoberseite. Daher muss das System waagerecht montiert werden. Auf diese Weise kommt ein optimaler Luftstrom zustande.

Einbaulagen mit eingeschränktem Temperaturbereich bis 45°C

Andere Einbaulagen sind erlaubt bei einem Temperaturbereich bis 45°C.


CX80xx - Spannungsversorgung

BECKHOFF CX80xx: Montage und Verdrahtung

Spannungsversorgung

WARNUNG 		Verletzungsgefahr durch Stromschlag und Beschädigung des Gerätes möglich!
Setzen Sie den CX80xx in einen sicheren, spannungslosen Zustand,
bevor Sie mit der Montage, Demontage oder Verdrahtung beginnen!

Dieses Netzteil ist mit einer E/A-Schnittstelle ausgestattet, die den Anschluss der Beckhoff Busklemmen ermöglicht. Die Stromversorgung erfolgt über die oberen Federkraftklemmen mit der Bezeichnung 24 V und 0 V.

Die Versorgungsspannung versorgt das CX System und über den Klemmbus und die Busklemmen mit einer Spannung von 24 VDC ( -15 %/+20%). Die Spannungsfestigkeit des Netzteils beträgt 500 V. Da der Klemmbus (K- und E-Bus) nur Daten weiterleitet, ist für die Busklemmen eine weitere Spannungsversorgung notwendig. Dies erfolgt über die Powerkontakte, die keine Verbindung zur Spannungsversorgung besitzen. An den Powerkontakten dürfen nur 24 V DC angeschlossen werden, die maximale Strombelastung der Powerkontakte beträgt 10 A.

Anforderungen an das Netzteil (24 V)

Um in allen Fällen den Betrieb der CPU (CX80xx-Modul) und des Klemmenstrangs zu gewährleisten muss das Netzteil 2,0 A bei 24 V liefern.

LED

Bei ordnungsgemäßem Anschluss des Netzteils und eingeschalteter Spannungsversorgung leuchten die beiden oberen LEDs im Klemmenprisma grün auf. Die linke LED (Us) zeigt die Versorgung der CPU an. Die rechte LED (Up) zeigt die Versorgung der Klemmen an. Die weiteren LEDs beschreiben den Status des Klemmbusses. Die detaillierte Beschreibung der LEDs ist in dem Kapitel Fehleranalyse der LEDs beschrieben.

PE-Powerkontakt

VORSICHT 		Powerkontakt PE
Der Powerkontakt PE darf nicht für andere Potentiale verwendet werden.


CX80xx, EK9xxx - Ethernet-Anschlüsse

BECKHOFF CX80xx, EK9xxx: Ethernet

Ethernet-Anschlüsse

Belegung der RJ45-Schnittstelle, Port 1

X001

PIN | Signal | Beschreibung
1 | TD + | Transmit +
2 | TD - | Transmit -
3 | RD + | Receive +
4 | connected | reserviert
5
6 | RD - | Receive -
7 | connected | reserviert
8

Belegung der RJ45-Schnittstelle, Port 2 (switched)

CX8010, CX809x: X101 / 102
EK9xxx: X001 / X002

PIN | Signal | Beschreibung
1 | TD + | Transmit +
2 | TD - | Transmit -
3 | RD + | Receive +
4 | connected | reserviert
5
6 | RD - | Receive -
7 | connected | reserviert
8


Ethernet-Kabel

Übertragungsstandards

10Base5

Das Übertragungsmedium für 10Base5 ist ein dickes Koaxialkabel (Yellow Cable) mit einer max. Übertragungsgeschwindigkeit von 10 MBaud und einer Linien-Topologie mit Abzweigen (Drops), an die jeweils ein Teilnehmer angeschlossen wird. Da hier alle Teilnehmer an einem gemeinsamen Übertragungsmedium angeschlossen sind, kommt es bei 10Base5 zwangsläufig häufig zu Kollisionen.

10Base2

10Base2 (Cheaper net) ist eine Weiterentwicklung von 10Base5 und hat den Vorteil dass dieses Koaxialkabel billiger und durch eine höhere Flexibilität einfacher zu verlegen ist. Es können mehrere Geräte an eine 10Base2-Leitung angeschlossen werden. Häufig werden die Abzweige eines 10Base5-Backbones als 10Base2 ausgeführt.

10BaseT

Beschreibt ein Twisted-Pair-Kabel für 10 MBaud. Hierbei wird das Netz sternförmig aufgebaut, so dass nun nicht mehr jeder Teilnehmer am gleichem Medium hängt. Dadurch führt ein Kabelbruch nicht mehr zum Ausfall des gesamten Netzes. Durch den Einsatz von Switches als Sternkoppler können Kollisionen vermindert oder bei Voll-Duplex Verbindungen auch vollständig vermieden werden.

100BaseT

Twisted-Pair-Kabel für 100 MBaud. Für die höhere Datengeschwindigkeit ist eine bessere Kabelqualität und die Verwendung entsprechender Hubs oder Switches erforderlich.

10BaseF

Der Standard 10BaseF beschreibt mehrere Lichtwellenleiter-Varianten.

Kurzbezeichnung der Kabeltypen für 10BaseT und 100BaseT

Twisted-Pair Kupferkabel für sternförmige Topologie, wobei der Abstand zwischen zwei Geräten 100 Meter nicht überschreiten darf.

UTP

Unshielded Twisted-Pair (nicht abgeschirmte, verdrillte Leitung)
Dieser Kabeltyp gehört zur Kategorie 3 und sind für industrielle Umgebungen nicht empfehlenswert.

S/UTP

Screened/Unshielded Twisted-Pair (mit Kupfergeflecht abgeschirmte, verdrillte Leitung)
Besitzen einen Gesamtschirm aus einem Kupfergeflecht zur Reduktion der äußeren Störeinflüsse. Dieses Kabel wird zum Einsatz mit dem Buskopplern empfohlen.

FTP

Foilesshielded Twisted-Pair (mit Alufolie abgeschirmte, verdrillte Leitung)
Dieses Kabel hat eine alukaschierten Kunststoff-Folie-Gesamtschirm.

S/FTP

Screened/Foilesshielded Twisted-Pair (mit Kupfergeflecht und Alufolie abgeschirmte, verdrillte Leitung)
Besitzt einen alukaschierten Gesamtschirm mit einem darüber liegenden Kupfergeflecht. Solche Kabel können eine Störleistungsunterdrückung bis zu 70dB erreichen.

STP

Shielded Twisted-Pair (abgeschirmte, verdrillte Leitung)
Beschreibt ein Kabel mit Gesamtschirm ohne weitere Angabe der Art der Schirmung.

S/STP

Screened/Shielded Twisted-Pair (einzeln abgeschirmte, verdrillte Leitung)
Ein solche Bezeichnung kennzeichnet ein Kabel mit einer Abschirmung für jedes Leitungspaar sowie einen Gesamtschirm.

ITP

Industrial Twisted-Pair
Ist von Aufbau dem S/STP ähnlich, besitzt allerdings im Gegensatz zum S/STP nur 2 Leitungspaare.


Beckhoff Feldbuskomponenten - CANopen Verkabelung

BECKHOFF Feldbuskomponenten: Montage und Verdrahtung

CANopen Verkabelung

Kapitelübersicht

CAN-Topologie

Buslänge

Stichleitungen

Sternverteiler

CAN-Kabel

Schirmung

Kabelfarben

BK5151, EL6751, FC51xx, CX805x, CX-B/M510: D-Sub 9polig

BK51x0/BX5100: 5-poliger Open Style Connector

LC5100 Busanschluss

Feldbus Box: M 12 CAN Buchse

Hinweise für die Überprüfung der CAN-Verdrahtung finden sich im Kapitel Fehlersuche / Trouble Shooting.

CAN-Topologie

CAN ist ein 2-Draht-Bussystem, an dem alle Teilnehmer parallel (d.h. mit kurzen Stichleitungen) angeschlossen werden. Der Bus muss an jedem Ende mit einem Abschlusswiderstand von 120 (bzw. 121) Ohm abgeschlossen werden, um Reflexionen zu vermeiden. Dies ist auch bei sehr kurzen Leitungslängen erforderlich!

Da die CAN-Signale als Differenzpegel auf dem Bus dargestellt werden, ist die CAN-Leitung vergleichsweise unempfindlich gegen eingeprägte Störungen (EMI). Es sind jeweils beide Leitungen betroffen, somit verändert die Störung den Differenzpegel kaum.

Buslänge

Die maximale Buslänge wird bei CAN vorwiegend durch die Signallaufzeit beschränkt. Das Multi-Master-Buszugriffsverfahren (Arbitrierung) erfordert, dass die Signale quasi gleichzeitig (vor der Abtastung innerhalb einer Bitzeit) an allen Knoten anliegen. Da die Signallaufzeit in den CAN-Anschaltungen (Transceiver, Optokoppler, CAN-Controller) nahezu konstant sind, muss die Leitungslänge an die Baud-Rate angepasst werden.

Baud-Rate | Buslänge
1 MBit/s | < 20 m*
500 kBit/s | < 100 m
250 kBit/s | < 250 m
125 kBit/s | < 500 m
50 kBit/s | < 1000 m
20 kBit/s | < 2500 m
10 kBit/s | < 5000 m

*) Häufig findet man in der Literatur für CAN die Angabe 40 m bei 1 MBit/s. Dies gilt jedoch nicht für Netze mit optoentkoppelten CAN-Controllern. Die worst case Berechnung mit Optokopplern ergibt bei 1 MBit/s eine maximale Buslänge von 5m - erfahrungsgemäß sind jedoch 20 m problemlos erreichbar.

Bei Buslängen über 1000 m kann der Einsatz von Repeatern notwendig werden.

Stichleitungen

Stichleitungen ("drop lines") sind nach Möglichkeit zu vermeiden, da sie grundsätzlich zu Signalreflexionen führen. Die durch Stichleitungen hervorgerufenen Reflexionen sind jedoch in der Regel unkritisch, wenn sie vor dem Abtastzeitpunkt vollständig abgeklungen sind. Bei den in den Buskopplern gewählten Bit-Timing-Einstellungen kann dies angenommen werden, wenn folgende Stichleitungslängen nicht überschritten werden:

Baud-Rate | Länge Stichleitung | gesamte Länge aller Stichleitungen
1 MBit/s | < 1m | < 5 m
500 kBit/s | < 5 m | < 25 m
250 kBit/s | < 10m | < 50 m
125 kBit/s | < 20m | < 100 m
50 kBit/s | < 50m | < 250 m

Stichleitungen dürfen nicht mit Abschlusswiderständen versehen werden.

Sternverteiler (Multiport Tap)

Beim Einsatz von passiven Verteilern ("Multiport Taps"), z.B. der Beckhoff Verteilerbox ZS5052-4500 sind kürzere Stichleitungslängen einzuhalten. Die folgende Tabelle gibt die maximalen Stichleitungslängen und die maximale Länge der Trunk Line (ohne Stichleitungen) an:
Baud-Rate | Länge Stichleitung bei Multiport Topologie | Länge Trunk Line (ohne Stichleitungen)
1 MBit/s | < 0,3 m | < 25 m
500 kBit/s | < 1,2 m | < 66 m
250 kBit/s | < 2,4 m | < 120 m
125 kBit/s | < 4,8 m | < 310 m

CAN-Kabel

Für die CAN-Verdrahtung wird die Verwendung von paarig verdrillten, geschirmten Kabeln (2x2) mit einem Wellenwiderstand von 108...132 Ohm empfohlen. Wenn das Bezugspotential der CAN-Transceiver (CAN-Ground) nicht verbunden werden soll, so kann auf das zweite Adernpaar verzichtet werden (nur bei kleinen Netzausdehnungen mit gemeinsamer Speisung aller Teilnehmer empfehlenswert).

ZB5100 CAN-Kabel

Beckhoff hat ein hochwertiges CAN-Kabel mit folgenden Eigenschaften im Programm:

  • 2 x 2 x 0,25 mm² (AWG 24) paarig verseilt, Kabelfarben: rot/schwarz + weiß/schwarz
  • doppelt geschirmt
  • Schirmgeflecht mit Beilauflitze (kann direkt auf Pin3 der 5-pol Anschlussklemme aufgelegt werden),
  • flexibel (Mindestbiegeradius 35mm bei einmaligem Biegen, 70mm bei mehrmaligem Biegen)
  • Wellenwiderstand (60kHz): 120 Ohm
  • Leiterwiderstand < 80 Ohm/km
  • Mantel: PVC grau, Außendurchmesser 7,3 +/- 0,4 mm
  • Gewicht: 64 kg/km.
  • Bedruckt mit "Beckhoff ZB5100 CAN-BUS 2x2x0.25" und Metermarkierung (Längenangaben, alle 20cm)

ZB5200 CAN/DeviceNet-Kabel

Das Kabelmaterial ZB5200 entspricht der DeviceNet Spezifikation und eignet sich ebenso für CANopen Systeme. Aus diesem Kabelmaterial sind auch die vorkonfektionierten Busleitungen ZK1052-xxxx-xxxx für die Feldbus Box Baugruppen gefertigt. Es hat folgende Spezifikation:

  • 2 x 2 x 0,34 mm² (AWG 22) paarig verseilt
  • doppelt geschirmt · Schirmgeflecht mit Beilauflitze
  • Wellenwiderstand (1 MHz): 126 Ohm
  • Leiterwiderstand 54 Ohm/km
  • Mantel: PVC grau, Außendurchmesser 7,3 mm
  • Bedruckt mit "InterlinkBT DeviceNet Type 572" sowie UL und CSA Ratings
  • Litzenfarben entsprechen DeviceNet Spezifikation
  • UL anerkanntes AWM Type 2476 Rating
  • CSA AWM I/II A/B 80°C 300V FT1
  • Entspricht DeviceNet "Thin Cable" Spezifikation

Schirmung

Der Schirm ist über das gesamte Buskabel zu verbinden und nur an einer Stelle galvanisch zu erden um Masseschleifen zu vermeiden.
Das Schirmungskonzept mit HF-Ableitung von Störungen über R/C-Glieder auf die Tragschiene geht davon aus, dass die Tragschiene entsprechend geerdet und störungsfrei ist. Sollte dies nicht der Fall sein, so kann es vorkommen, dass HF-Störpegel über die Tragschiene auf den Schirm des Buskabels übertragen werden. In diesem Fall sollte der Schirm an den Kopplern nicht aufgelegt werden - aber dennoch komplett durchverbunden sein.

Hinweise für die Überprüfung der CAN-Verdrahtung finden sich im Kapitel Fehlersuche / Trouble Shooting.

Kabelfarben

Vorschlag für die Verwendung der Beckhoff CAN-Kabel an Busklemme und Feldbus Box:

Pin BK51x0 PIN BX5100 (X510) | Pin BK5151 CX8050, CX8051, CXxxxx-B510/M510 | Pin Feldbus Box | Pin FC51xx | Funktion | Kabelfarbe ZB5100 | Kabelfarbe ZB5200
1 | 3 | 3 | 3 | CAN Ground | schwarz /(rot) | schwarz
2 | 2 | 5 | 2 | CAN Low | schwarz | blau
3 | 5 | 1 | 5 | Schirm | Beilauflitze | Beilauflitze
4 | 7 | 4 | 7 | CAN high | weiß | weiß
5 | 9 | 2 | 9 | nicht benutzt | (rot) | (rot)

BK5151, FC51xx, CX mit CAN Interface und EL6751: D-Sub 9polig

Die CAN Busleitung wird an die FC51x1, FC51x2 CANopen Karten und bei der EL6751 CANopen Master-/Slaveklemme über 9polige Sub-D-Buchsen mit folgender Steckerbelegung angeschlossen.

Pin | Belegung
2 | CAN low (CAN-)
3 | CAN Ground (intern verbunden mit Pin 6)
6 | CAN Ground (intern verbunden mit Pin 3)
7 | CAN high (CAN+)

Die nicht aufgeführten Pins sind nicht verbunden.
Die Hutschienenkontaktfeder und der Steckerschirm sind durchverbunden.

Hinweis: an Pin 9 darf eine Hilfsspannung bis 30 VDC angeschlossen sein (wird von manchen CAN Geräten zur Versorgung der Transceiver genutzt).

BK5151 | EL6751
FC51x2:

BK51x0/BX5100: 5poliger Open Style Connector

Bei den BK51x0/BX5100 (X510) Buskopplern befindet sich auf der linken Seite eine abgesenkte Frontfläche mit einem 5poligen Stecker.
Hier kann die mitgelieferte CANopen- Verbindungsbuchse eingesteckt werden.

Das linke Bild zeigt die Buchse im Buskoppler BK51x0/BX5100. Pin 5 ist dabei der oberste Pin auf der Steckerleiste. Pin 5 ist nicht benutzt. Pin 4 ist die CAN-High-Leitung, Pin 2 die CAN-Low-Leitung und an Pin 3 wird der Schirm aufgelegt (ist über eine R/C-Schaltung mit der Tragschiene verbunden). Optional kann am Pin 1 CAN-GND angeschlossen werden. Wenn alle CAN-Ground Pins verbunden sind ergibt dies ein gemeinsames Bezugspotential für die CAN Transceiver im Netz. Es empfiehlt sich, CAN-GND an einer Stelle zu erden, damit das gemeinsame CAN Bezugspotential nahe beim Versorgungs-Potential liegt. Da die CANopen Buskoppler BK51X0/BX5100 über eine vollständige galvanische Trennung des Busanschlusses verfügen, kann u.U. auf die Verdrahtung von CAN-Ground verzichtet werden.

Businterface Connector ZS1052-3000

Alternativ zum mitgelieferten Stecker kann der CAN Interface Connector ZS1052-3000 eingesetzt werden. Dieser vereinfacht die Verdrahtung erheblich. Für die ankommenden und abgehenden Leitungen stehen separate Klemmen zur Verfügung, der Schirm wird durch die Zugentlastung großflächig angeschlossen. Der integrierte Abschlusswiderstand kann von außen zugeschaltet werden. Ist er eingeschaltet, so wird die abgehende Busleitung elektrisch abgetrennt - damit lassen sich Verdrahtungsfehler schnell lokalisieren, und es ist gewährleistet, dass nicht mehr als zwei Widerstände im Netz aktiv sind.

LC5100: Busanschluss über Federkraftklemmen

Beim Low-Cost-Koppler LC5100 wird die CAN-Leitung direkt auf die Klemmstellen 1 (CAN-H, gekennzeichnet mit C+) bzw. 5 (CAN-L, gekennzeichnet mit C-) aufgelegt. Der Schirm kann optional auf die Klemmstellen 4 bzw. 8 aufgelegt werden, diese sind über eine R/C-Schaltung mit der Tragschiene verbunden.

Achtung Durch die nicht vorhandenen galvanische Trennung kann durch unsachgemäßer Verkabelung der CAN Treiber zerstört oder geschädigt werden. Verkabeln sie immer im ausgeschalteten Zustand, verkabeln Sie erst die Spannungsversorgung und legen sie erst dann den CAN auf. Überprüfen Sie die Verkabelung und schalten dann erst die Spannung ein.

Feldbus Box: M12 CAN Buchse

Bei der Feldbus Box IPxxxx-B510, IL230x-B510 und IL230x-C510 wird der Busanschluss mit 5poligen M12 Steckverbindern ausgeführt.

Für das Feldbus Box System bietet Beckhoff feldkonfektionierbare Stecker, Passivverteiler, Abschlusswiderstände sowie eine große Auswahl an vorkonfektionierten Kabeln an. Details finden sich im Katalog oder unter www.beckhoff.de.


CX80xx - Wechseln der Batterie

BECKHOFF CX80xx: Montage und Verdrahtung

Wechseln der Batterie

Die Batterie des CX80xx ist für die Real Time Clock (RTC) des CX80xx erforderlich. Sie dient dafür, dass im ausgeschalteten Zustand die RTC weiterläuft und somit die eingestellte Zeit beim erneuten Aufstarten wieder zu Verfügung steht.

  • Schritt 1: Öffnen Sie die Klappe
  • Schritt 2/3: Nehmen Sie einen kleine Flachschraubendreher setzen Sie diesen oberhalb der Batterie an und hebeln sie diese vorsichtig aus dem Gerät
  • Schritt 4: Setzen Sie die neue Batterie ein, der Pluspol muss links liegen
  • Schritt 5: Schließen Sie die Klappe wieder
Batterietyp | Technische Daten
Duracell 303/357 SR44 | 1,5 V / 165 mAh

Hinweis 		Wartung der Batterie

Die Batterie muss alle 5 Jahre gewechselt werden.

Ersatzbatterien können beim Beckhoff Service bestellt werden.

Achtung 		Eine falsch eingesetzte Batterie kann explodieren!

Verwenden Sie ausschließlich den angegebenen Batterietyp.

Achten Sie unbedingt darauf, dass die Plus- und Minuspole der Batterie korrekt eingelegt wird. (Pluspol links)

Öffnen Sie die Batterie niemals und werfen Sie die Batterie niemals in ein Feuer.

Die Batterie kann nicht wieder aufgeladen werden.


CX805x - DIP-Schalter

BECKHOFF CX8050, CX8051: Parametrierung und Inbetriebnahme

DIP-Schalter

DIP-Schalter CX8050

Der Adresswählschalter hat beim CX8050 keine Bedeutung er kann aber von der SPS ausgelesen werden (siehe Programmierung).

DIP-Schalter CX8051

Zwei mal 10-poliger Adress-Schalter S101/S102

Adresswahlschalter kann für die Benutzung der CAN Adresse verwendet werden, dieser kann aber auch von der SPS ausgelesen werden (siehe Programmierung).

S101 für die Adresse x 1, S102 für die Adresse x10, Beispiel S101=2, S102=3 CAN Node Adresse 32

Damit die Adresse über den Adresswahlschalter auch verwendet wird, muss dies im System Manager aktiviert werden.

Die Stationsadresse kann jetzt für jeden Slave mit einem DIP-Schalter + Zahl eingestellt werden. Für die virtuellen Slaves kann man zum Beispiel +1, +2, +3 verwenden.

2-poliger DIP-Schalter (unter der Klappe zwischen Batterie und SD Kartenslot)

DIP-Schalter (rot) | Bedeutung
1 off und 2 off | normaler Modus, TwinCAT wird gestartet
1 on und 2 off | Der CX startet im Config Mode, über die USB Schnittstelle ist der interne Flash Speicher, bzw. beim CX80xx die SC Karte zu erreichen (zum Beispiel für ein Image Update).
1 off und 2 on | Restore der Registry
1 on und 2 on | bislang keine Funktion


CX80xx - IP-Adresse

BECKHOFF CX8010, CX803x, CX805x, CX8080: Parametrierung und Inbetriebnahme

IP-Adresse

Der CX8010, CX803x, CX805x und CX8080 besitzen eine Ethernet Schnittstelle, X001.

X001

IP-Adressierung über das Betriebsystem, Default ist DHCP (im Betriebsystem als FEC1 dargestellt)

EtherCAT-Schnittstelle

Die EtherCAT-Schnittstelle ist eine weitere Ethernet-Schnittstelle, die für die IP-Adressierung im Betriebsystem nicht sichtbar ist.


CX80xx - Adresseinstellung über DHCP-Server

BECKHOFF CX8031/CX8051: Parametrierung und Inbetriebnahme

Adresseinstellung über DHCP-Server

Port 1 (X001) ist per Default auf DHCP gestellt.

Ist DHCP eingeschaltet bekommt der CX automatisch eine IP-Adresse vom DHCP-Server zugewiesen. Der DHCP-Server muss hierfür die MAC-ID des Busklemmen-Controller kennen. Die IP-Adresse sollte vom DHCP-Server statisch vergeben werden. Ist kein DHCP Server erreichbar wird eine lokale IP-Adresse verwendet.

Der DNS-Name wird aus dem Typ und den letzten 3 Byte der MAC-ID gebildet. Die MAC-ID steht auf dem Produktionsaufkleber des Busklemmen Controllers.

Beispiel CX80xx
  • MAC ID: 00-01-05-01-02-03
  • DNS-Name: CX-010203


CX80xx - Subnetz-Maske

BECKHOFF CX80xx Parametrierung und Inbetriebnahme

Subnetz-Maske

Die Subnetz-Maske unterliegt der Kontrolle des Netzwerkverwalters und legt die Struktur der Subnetze fest.

Kleine Netze ohne Router benötigen keine Subnetz-Maske. Das gleiche gilt, wenn Sie keine registrierten IP-Nummern verwenden. Sie können die Subnetz-Maske dazu verwenden, anstelle des Gebrauchs vieler Netznummern das Netz mit dieser Maske zu unterteilen.

Die Subnetz-Maske ist eine 32-Bit Ziffer:

  • Einsen in der Maske kennzeichnen den Subnetz-Nummernteil eines Adressraums.
  • Nullen kennzeichnen den Teil des Adressraums, der für die Host-IDs zur Verfügung steht.
Beschreibung | Binäre Darstellung | Dezimale Darstellung
IP-Adresse | 10101100.00010000.00010001.11001000 | 172.16.17.200
Subnetz-Maske | 11111111.11111111.00010100.00000000 | 255.255.20.0
Netz-ID | 10101100.00010000.00010000.00000000 | 172.16.16.0
Host-ID | 00000000.00000000.00000001.11001000 | 0.0.1.200

Standard Subnetz-Maske

Adressklasse | Standard Subnetz-Maske (dezimal) | Standard Subnetz-Maske (hex)
A | 255.0.0.0 | FF.00.00.00
B | 255.255.0.0 | FF.FF.00.00
C | 255.255.255.0 | FF.FF.FF.00

Hinweis 		Vergabe von Subnetzen, Host-Nummern und IP-Adressen

Die Subnetze 0 und das nur aus nur Einsen bestehende Subnetz dürfen nicht verwendet werden!

Die Host-Nummer 0 und die aus nur Einsen bestehende Host-Nummer dürfen nicht verwendet werden!

Bei BootP und DHCP wird die Subnetz-Maske mit vom Server übertragen.


CX80xx - Betriebsystem

Auf dem CX80xx Geräte befindet sich ein Microsoft CE Betriebsystem der Version 6.0. Diese Betriebssystem ist für den Betrieb der CX80xx abgestimmt und optimiert. Es stehen nicht alle CE6.0-Komponenten zur Verfügung.

Sicherheit

Ab Image in Version 3.54b wurden die Sicherheitsvorkehrungen verschärft. Dieses betrifft das CERHOST und das TELNET. Beide Dienste sind nun im Auslieferungszustand abgeschaltet. Um diese Dienste wieder zu aktivieren benötigen Sie ein Lesegerät für MicroSD-Karten.

CERHOST

CERHOST wird von aktuellen Images beim ersten Start über die Registry-Datei CeRemoteDisplay_Disable.reg deaktivert, die sich im Ordner RegFiles befindet.

Um CERHOST wieder zu aktivieren, löschen Sie die Datei CeRemoteDisplay_Disable.reg aus dem Ordner RegFiles und ebenfalls den Ordner Documents and Settings.
Stecken Sie anschließend die MicroSD-Karte wieder in den CX und booten Sie neu. Der CX erzeugt ein neues Verzeichnis Document and Settings und bootet dann selbständig erneut.
Anschließend ist der CX wieder über CERHOST erreichbar.

TELNET

TELNET wird von aktuellen Images beim ersten Start über die Registry-Datei Telnet_Disable.reg deaktivert, die sich im Ordner RegFiles befindet.

Um TELNET wieder zu aktivieren, löschen Sie die Datei Telnet_Disable.reg aus dem Ordner RegFiles und ebenfalls den Ordner Documents and Settings.
Stecken Sie anschließend die MicroSD-Karte wieder in den CX und booten Sie neu. Der CX erzeugt ein neues Verzeichnis Document and Settings und bootet dann selbständig erneut.
Anschließend ist der CX wieder über TELNET erreichbar.

IMAGE

Falls sie nicht wissen welches Image auf dem CX80xx enthalten ist können sie dies einfach ermitteln.

  • Über die Web-Diagnose-Seite des CX. Hier finden Sie unter dem Gerät TwinCAT die Build-Nummer.
    Aufruf der Web-Diagnose-Seite:
    - IP-Adresse</config
    oder
    - CX-Name/config
    Bespiel:
    - 172.16.17.201/config
    oder
    - CX-01551E/config

  • Über ein Lesegerät für MicroSD-Karten.
    Auf der MicroSD-Karte befindet sich eine Datei mit dem Namen des Images.
    Beispiel CX8000_CE600_LF_v354b_TC211R3_B2248.
    Anhand TC211R3_2248 können Sie das verwendete TwinCAT-Build erkennen, hier in dem Beispiel das Build 2248.
Feature / Platform | CX80x0 LF Version 3.xx
ATL | Xtd
MFC | X
XML DOM | X
COM | X
COM Storage | -
Winsock | X
TCP/IP | X
TCP/IPv6 | -
Firewall | X
Network Utilities (IpConfig, Ping, Route) | X
UPnP |
Control Point | -
Device Host | X
SOAP |
Client | -
Server | -
DCOM | -
Object Exchange Protocol OBEX | -
Message Queuing MSMQ | -
Server |
File Server (SMB/CIFS) | X
File Server | X
Print-Server (SMB/CIFS) | -
RAS Server / PPTP Server | -
Simple Network Management Protocol (SNMP) | X
Telnet Server | X
HTTP / ASP / FTP / SNTP -Server | X
Web Server (HTTPD) / Active Server Pages (ASP) Support / JScript 5.6 / VBScript 5.6 | X
Simple Network Time Protocol (SNTP) | X
HTML / DHTML, SSL, ISAPI Erweiterungen | X
Internet Explorer 6.0 | -
Java Applets | -
NET Compact Framework | v3.5
RDP Client (Remote Desktop protocol) | -
CAB File Installer/Uninstaller | X
TwinCAT (Level PLC) | X
USB support | X
Printer, Storage auf z.B. Compact Flash | -
HID (Human interface devices) | -
Touch | -


CX80xx - K-Bus-Interface

BECKHOFF CX80xx: Parametrierung und Inbetriebnahme

K-Bus-Interface

Der Betrieb von K-Bus-Klemmen ist am CX80xx möglich.

Der CX80xx erkennt diese Klemmen beim Scannen automatisch, ließt die Klemmentypen aus und legt sie im System-Manager automatisch an.

Abb. K-Bus Interface

K-Bus State

Der K-Bus Status wird in dem State Byte (siehe Bild K-Bus Interface "1") abgelegt, ist der Wert 0 so arbeitet der K-Bus synchron und ohne Fehler. Sollte wer Wert <>0 sein kann das ein Fehler, aber auch nur ein Hinweis sein das zum Beispiel der K-Bus länger benötigt als die verwendete Task und ist damit nicht mehr Synchron zu der Task. Die Task-Zeit sollte schneller als 100 ms sein. Wir empfehlen eine Task-Zeit kleiner 50 ms. Typischerweise liegt die K-Bus-Update-Zeit zwischen einer und fünf ms.

Bit 0 = K-Bus Err
Bit 1 = Terminal State Err
Bit 2 = Process Data Length Err
Bit 8 = No valid Inputs
Bit 9 = K-Bus Input Update busy
Bit 10 = K-Bus Output Update busy
Bit 11 = Watchdog Err
Bit 15 = Acyc. Function atcive (e.g. K-Bus Reset)

Liegt ein K-Bus-Fehler vor, kann dieser über den Funktionsbaustein IOF_DeviceReset (in der TcIoFunctions.lib) zurückgesetzt werden.

Die NetID ist die des CX80xx und kann damit als empty String eingetragen werden, die Device-ID (siehe Bild K-Bus Interface "2") ist aus dem System-Manager zu nehmen.


CX80xx - E-Bus-Interface

BECKHOFF CX80xx: Parametrierung und Inbetriebnahme

E-Bus-Interface

Der Betrieb von E-Bus-Klemmen und EtherCAT Geräten ist am CX80xx möglich.

Der CX80xx erkennt diese Klemmen beim Scannen automatisch, ließt die Klemmentypen aus und legt sie im System-Manager automatisch an.

Hinweis 		DC Distributed-Clocks
Die CX80xx Baureihe eignet sich nicht für den Einsatz von EtherCAT Slaves, die die Distributed-Clocks Funktionalität verwenden oder auch brauchen.


CX8051 - CANopen-Interface

BECKHOFF CX8051: Parametrierung und Inbetriebnahme

CANopen-Interface

Die CANopen-Kommunikation erfolgt über den D-Sub Port X101.

Hinweis 		Debuggen ausschließlich über die Ethernet Schnittstelle
Der CX8051 unterstützt das ADS über CANopen nicht. Der Programmdownload und das Debuggen kann ausschließlich über die Ethernet Schnittstelle erfolgen.

CANopen Adresse

Die CANopen Adresse kann über den Drehwahlschalter oder fest im System Manager vergeben werden. Wird die Adresse fest vorgegeben wird der Adressschalter ignoriert.

CANopen NodeState

Über den NodeState können sie sich den Zustand der CANopen Kommunikation anzeigen lassen und wissen damit ob der Slave sind im Datenaustausch befindet (NodeState=0) oder ein Fehler oder Problem vorliegt.

0 = No error
128 = Node is Operational but not all RxPDOs were received
129 = Node is Pre-Operational
130 = Node is Stopped


CX8051 - CANopen-Prozessdaten

BECKHOFF CX8051: Parametrierung und Inbetriebnahme

CANopen-Prozessdaten

Der CX8051 kann bis zu 16 PDOs a 8 Byte Prozessdaten über CANopen in Eingangs- und Ausgangsrichtung mit dem CANopen Master austauschen.

Per Default werden 2 PDOs in Tx- und Rx-Richtung angelegt. Die PDOs kann man mit eigenen Daten füllen. Diese dürfen maximal 8 Byte pro PDO in Summe betragen. Wenn es im Master nicht anders konfiguriert wird, werden die Daten bei Änderung automatisch verschickt. Achten Sie also schon bei der Planung das sich die Daten in einem PDO "nur" bedingt ändern und nicht im ms Takt, wird dies nicht beachtet kann der CAN überlastet werden grade bei kleinen Baudraten ist die Auslastung des CAN schnell erreicht.

Anlegen der Daten im PDO

Unter dem entsprechenden PDO können Sie jetzt maximal 8 Byte Daten anlegen, es ist auch erlaubt verschiedene Variablen Typen zu verwenden, einzig die Grenze von 8 Byte sind einzuhalten.
Bei den TxPDOs gibt es noch ein zusätzliches Control. Dieses kann verwendet werden wenn Daten nicht nur bei Änderung verschickt werden sollen sondern auch wenn sich an den Daten im PDO nichts geändert hat. Das Control Wort muss dann nur verändert werden in den man es zum Beispiel Inkrementiert. Erfolgt die Inkrementierung und eine Änderung der Daten gleichzeitig (also im gleichen Zyklus) wird nur ein Telegramm versendet.
Bei den RxPDOs gibt es zusätzlich ein Status Wort, das wird Inkrementiert wenn das PDO eingetroffen ist, nützlich ist es wenn Daten sind in dem PDO nicht ändern, bekommt man doch mit das es ein neues Telegramm mit alten Daten gab, dies kann man auch zur Überwachung nutzen ob ein Teilnehmer noch regelmäßig seine Daten versendet.

Weitere PDOs fügen Sie durch anklicken der "Box CX8xxx CANopenSlave" an. Beachten Sie, dass die COB ID ab den 5ten PDO immer auf Null steht, diese müssen Sie dann manuell eintragen.

CAN Auslastung

Die CAN Auslastung sollte bei der Planung und Konfiguration des Netzwerkes berücksichtigt werden: 500 kBit ergibt bei 8 Byte Nutzdaten/Frame eine maximale Anzahl von 3707 Frames pro sec. Da bei CAN aus Gründen der Netzwerkstabilität nie mit 100% Netzwerklast gearbeitet werden sollte, empfiehlt sich eine Obergrenze von 60% Buslast festzulegen, was 2221 Frames pro sec entspricht. Beispiel: ein CX8051 mit 8 Rx PDOs und 10 ms Task Zeit, was 100 Zyklen pro sec a 8 PDOs ergibt. Bei ereignisgesteuertem Senden der PDOs werden diese verschickt, sobald sich die Prozessdaten ändern – auf Slave Seite also ggf. auch öfter als alle 10ms. Ändern sich die Werte jetzt nur einmal je 10 ms Zyklus ergibt das 800 Frames pro Sec von Seiten der Slaves, und ggf. nochmals 800 Frames pro sec von Masterseite .. Hinzu kommen noch Heartbeat, Sync Telegramme und SDO-Kommunikation. Man sieht also, dass man sich hier schon schnell der gewünschten Obergrenze von 2221 Frames annähert bzw. man diese Grenze überschreitet, wenn schnell ändernde Eingangsdaten zum hochfrequenten Senden der PDOs führen. Dies kann z.B. bei analoge Eingängen vorkommen, da sich deren Werte i.d.R. ständig ändern. Deshalb empfiehlt es sich, das Sendeverhalten durch Setzen der entsprechenden Parameter (Inhibit-Zeit, Filter) zu kontrollieren oder auf zyklisches Senden überzugehen.

Baudrate | 1 Byte Daten | 2 Byte Daten | 4 Byte Daten | 8 Byte Daten
1 MBaud | 15384 | 13333 | 10526 | 7407
500 kBaud | 7692 | 6666 | 5263 | 3703
100 kBaud | 1538 | 1333 | 1052 | 740

Tabelle Anzahl der theoretischen CAN-Frames bei 100 % Auslastung und verschiedenen CAN Datengrößen.


CX8051 - Virtuelles CANopen Device-Interface

BECKHOFF CX8051: Parametrierung und Inbetriebnahme

Virtuelles CANopen Device-Interface

Das virtuelle Slave Interface ermöglicht das Anlegen von bis zu drei virtuellen Slave auf der gleichen Hardware Schnittstelle. Das ermöglicht dem Anwender mehr Daten mit einem CANopen Master auszutauschen.

Es können für jeden Slave maximal 16 PDOs Daten konfiguriert werden, d.h. in Summe kann man vier mal 16 PDOs Daten in jede Richtung austauschen.

Fügen Sie an dem CAN Gerät maximal vier CX8051 Geräte an (Abb. 1.0). Jedes der Geräte bekommt über den System Manager eine CAN Adresse, die auch mit dem Adresswählschalter verknüpft sein kann (siehe Adressschalter). Die Prozessdaten PDOs fügen Sie unter der Box an. Für den CANopen Master konfigurieren Sie jeden der 4 Slaves wie ein eigenständiges Gerät.

Abb. 1.0 Anlegen der 4 CANopen Slave Geräte

Abb. 1.1 Anfügen der CAN Module


CX805x - CANopen-Interface / CAN-Interface

BECKHOFF CX805x: Parametrierung und Inbetriebnahme

CANopen-Interface / CAN-Interface

Die CANopen-Kommunikation erfolgt über den D-Sub Port X101. Der CX8050 erlaubt die Verwendung eines CANopen Master aber auch eine "einfache" CAN Kommunikation.

CANopen Adresse

Der Drehwahlschalter (S101/102) hat beim CAN Master keine Bedeutung. Der Adresswählschalter kann über die SPS eingelesen werden (siehe Adresse) und damit für die Applikationen genutzt werden.

CANopen NodeState

Über den NodeState (rot) können sie sich den Zustand der CANopen Kommunikation anzeigen lassen und wissen damit ob der Slave sind im Datenaustausch befindet (NodeState=0) oder ein Fehler oder Problem vorliegt.

0 = No error
1 = Node deactivated
2 = Node not found
4 = SDO syntax error at StartUp
5 = SDO data mismatch at StartUp
8 = Node StartUp in progress
11 = FC510x Bus-OFF
12 = Pre-Operational
13 = Severe bus fault
14 = Guarding: toggle error
20 = TxPDO too short
22 = Expected TxPDO is missing
23 = Node is Operational but not all TxPDOs were received

Das DiagFlag zeigt an ob ein Emergency Telegramm vom Slave eingetroffen ist. Dies kann dann im System Manager oder in der SPS per ADS ausgelesen werden (siehe ADS Interface). Die Interpretation der Daten entnehmen Sie dem Slave Hersteller. Das Flag wird zurückgesetzt wenn der Diag Buffer ausgelesen worden ist.

Der EmergencyCounter wird bei jedem Emergency Telegramm inkrementiert.

CAN Layer 2 Kommunikation

Wenn diese Checkbox angewählt ist, so ist das gesamte CANopen Netzwerkmanagement für diesen Teilnehmer deaktiviert: er wird nicht gestartet, überwacht etc.. Die PDO-Einträge werden als reine CAN (Schicht 2) Telegramme aufgefasst und ereignisgesteuert der Steuerung zur Verfügung gestellt.

CAN Interface

Das CAN Interface erlaubt beliebige CAN Daten zu verschicken. Es kann zwischen 11 Bit Identifier (CAN 2.0A) und dem 29 Bit Identifier (CAN 2.0B) ausgewählt werden.

Message-Struktur mit 29-Bit Unterstützung

  • Length (0..8)
  • CobId
    • Bit 0-28: 11 Bit-Identifier / 29 Bit-Identifier
    • Bit 30: RTR
    • Bit 31: 0: normal Message (11 Bit Identifier), 1: extended Message (29 Bit-Identifier)
  • Data[8]

Senden von Daten: Tragen Sie in "NoOfTxMessabes die Anzahl der Daten ein die Sie aus dem Tx Buffer senden wollen. Ist der Buffer 10 Einträge groß können Sie maximal 10 Telegramme hintereinander verschicken. Mit "Length" wir die Anzahl der Datenbytes des PDOs definiert (maximal 8 Byte). Füllen Sie die Daten und tragen die den Identifire des CAN Message in "codId" ein. Nun inkrementieren Sie den Wert TxCounter.

Beispielcode: Senden von Messages von der SPS

if Outputs.TxCounter = Inputs.TxCounter then
        for i=0 to NumberOfMessagesToSend do
                Outputs.TxMessage[i] = MessageToSend[i];
        End_for
        Outputs.NoOfTxMessages = NumberOfMessagesToSend;
        Outputs.TxCounter := Outputs.TxCounter + 1;
end_if

Beispielcode: Empfangen von Messages von der SPS

if Outputs.RxCounter <> Inputs.RxCounter then
        for i := 0 to (Inputs.NoOfRxMessages-1) do
                MessageReceived[i] := Inputs.RxMessage [i];
        End_for
        Outputs.RxCounter := Outputs.RxCounter+1;
end_if


CX80xx - Upnp-Web-Seiten

BECKHOFF CX80xx: Web Services

Upnp-Web-Seiten

Auf den CX80xx befindet sich zur Diagnose eine Upnp-Web-Seite.

Benutzername: guest
Passwort: 1

Geben Sie die IP-Adresse oder den Device Name an.

Beispiel

http://cx-0f94ac/config

http://172.16.17.55/config

Ab dem Image v354c wurde die Diagnoseseite überarbeitet.


CX80xx - Web-Visulisierung

BECKHOFF CX80xx: Web Services

Web-Visulisierung

Auf dem CX80xx befindet sich eine Web-Visualisierung. Diese kann mit Hilfe des PLC Controls in TwinCAT erstellt und aktiviert werden.

Abb. 1: Aktivierung der Web Visualisierung im PLC Control

Der Aufruf erfolgt über die IP-Adresse oder den Device Name an in einem Web Browser.
Weitere Informationen entnehmen Sie der Dokumentation zur Web Visualisierung (siehe TwinCAT Supplements PLC HMI Web).

Beispiel

http://cx-0f94ac/TcWebVisu/

http://172.16.17.44/TcWebVisu/

Achten Sie vor dem Einloggen (also im ausgeloggten Zustand) ob eine ADS Verbindung zum CX besteht, rechts unten in der Ecke muss das "TwinCAT Running" in grün stehen. Sollte das nicht der Fall sein bitte noch mal auf Online/Auswahl des Zielsystems gehen und den CX erneut aufrufen.

Beim download der Web Daten für die Web Oberfläche muss folgende Pfadangabe stehen:

\hard disk\twincat\boot\webvisu\

Sollte das nicht der Fall sein kopiert das PLC Control die Daten in den falschen Ordner und die Web-Seite wird nicht korrekt oder gar nicht angezeigt.

Abb. 2: Pfadangabe


CX80xx - Remote Display

BECKHOFF CX80xx: Web Services

Remote-Display

Diese Seite beschreibt die Schritte um ein CE-Gerät mit CE-Betriebssystem von einem weiteren PCaus per "Remote Display" fernzusteuern.

Voraussetzungen

Erforderliche Software auf dem PC:

  • Windows NT, Windows 2000, Windows XP oder Windows 7
  • Microsoft Remote Display (CERHOST, lizenzfrei bei Microsoft erhältlich)

Verbindungsaufbau

Auf dem PC wird das Tool "Remote Display" gestartet. Unter dem Menüpunkt "File -> Connect" kann nun die Adresse des CE-Gerätes eingetragen werden, dies kann sowohl die TCP-IP Adresse oder falls vorhanden auch der Name des CE-Gerätes sein.

Ist das CE-Gerät mit einem Passwortschutz versehen, so muss auch das Passwort entsprechend eingetragen werden. Im Auslieferungszustand ist kein Passwort gesetzt.

Nach Eintrag der Zieladresse steht die Oberfläche des CE-Gerätes zur Remote-Bedienung auf dem PC zur Verfügung.

Download CERHOST:


CX80xx - Real Time Clock (RTC)

BECKHOFF CX80xx: Parametrierung und Inbetriebnahme

Real Time Clock (RTC)

Die RTC wird über die Funktionsbausteine FB_LocalSystemTime ausgelesen und kann mit dem Baustein NT_SetLocalTime eingestellt werden (siehe TcUtilities.lib).

Die RTC wird über die Batterie versorgt und kann so im ausgeschalteten Zustand weiterlaufen.


CX80xx - 1-Sekunden-USV

BECKHOFF CX80xx: Parametrierung und Inbetriebnahme

1-Sekunden-USV (Unterbrechungsfreie Stromversorgung)

Technische Grundlagen

Die 1-Sekunden-USV ist ein UltraCap-Kondensator, der bei Ausfall der Spannungsversorgung den Prozessor für ca. 4 bis 5 Sekunden weiterhin mit Strom versorgt, um persistente Daten abzuspeichern. In der Regel braucht das Speichern der Daten weniger als 4 bis 5 Sekunden, da aber die verwendeten Bauteile altern, sollte von einer Sekunde ausgegangen werden, die die USV maximal hält. So können Sie davon ausgehen, das auch nach Jahren, das Abspeichern der Daten reibungslos funktioniert. Sollten Sie selbst Daten speichern, empfehlen wir, dass dies innerhalb von einer Sekunde geschieht. Sollte es länger dauern raten wir davon ab.

Die 1-Sekunden-USV versorgt weder den K-Bus noch den E-Bus weiter mit Spannung. Beachten Sie, das deren Daten bei Aktivierung der 1-Sekunden-USV bereits ungültig sein können. Auch kann das Feldbussystem (oder Ethernet) nicht oder nur unzureichend funktionieren sobald die 1-Sekunden-USV aktiv wurde.

Das Abspeichern der persistenten Daten erfolgt nur in Verbindung mit dem Funktionsbaustein FB_S_UPS_CX80xx. Dieser muss zyklisch aufgerufen werden. Hier empfehlen wir ausschließlich mit den Default-Werten des Bausteins zu arbeiten.

Arbeitsweise beim speichern und laden der persistenten Daten

Die persistenten Daten werden als wdp-Datei auf der SD-Karte gespeichert. Beim Starten der SPS wird die wdp-Datei von der SD-Karte geladen, dort als wd~-Datei gesichert (Backup) und dann gelöscht. Erst beim Runterfahren des Systems, bzw. dem ansprechen der 1-Sekunden-USV wird erneut eine aktuelle wdp-Datei geschrieben. Ist beim Starten des CX keine wdp-Datei vorhanden so sind die persistenten Daten ungültig und werden gelöscht (Default Einstellung).
Ursache hierfür ist, das beim Hochlauf des CX vor dem Starten der TwinCAT PLC die 1-Sekunden-USV aktiv wurde. Dann wurden keine persistenten Daten gesichert, da nicht sichergestellt war, ob die Pufferzeit noch reichte um die Daten abzuspeichern.

Das Backup der persistenten Daten laden

Um die persistenten Daten aus dem Backup (wp~-Datei) zu laden, muss dies im System Manager aktiviert werden.

Oder folgender Registry Eintrag:

[HKEY_LOCAL_MACHINE\SOFTWARE\Beckhoff\TwinCAT\Plc]"ClearInvalidPersistentData"= 0

Herstellereinstellung ist default "1".

Überprüfung ob aktuelle persistente Daten (aus wdp-Datei) oder gesicherte persistente Daten aus dem Backup (wd~-Datei) geladen wurden

Das Beispiel signalisiert beim CX8090 über die ERR-LED ob die persistenten Daten geladen worden sind. Bei andern CX8xxx kann die LED nicht genutzt werden.

IF systeminfo.bootDataFlags.4 AND NOT systeminfo.bootDataFlags.5 THEN
F_CX8090_LED_ERR(eLED_GREEN_ON); (* persistent data is OK *)
ELSIF systeminfo.bootDataFlags.4 AND systeminfo.bootDataFlags.5 THEN
F_CX8090_LED_ERR(eLED_RED_ON); (* load backup persistent data *)
ELSE
F_CX8090_LED_ERR(eLED_RED_FLASHING_200ms); (* no persistent data *)
END_IF

Hinweis 		Verwendungszweck der 1-Sekunden-USV
Die 1-Sekunden-USV ist nur für den Zweck der persistenten Datenhaltung zu verwenden.
Andere Anwendungsfälle werden nicht unterstützt und sind kein Reklamationsgrund.

Retain-Daten können für die 1-Sekunden-USV nicht verwendet werden!


CX80xx - CPU-Auslastung

BECKHOFF CX80xx: Parametrierung und Inbetriebnahme

CPU-Auslastung

Im Auslieferungszustand ist die CPU-Auslastungsanzeige bei allen CX80xx-Geräten deaktiviert (diese wird mit konstant 10% angezeigt). Die CPU-Auslastungsanzeige ist deaktiviert, da diese selbst einen erheblichen Anteil der CPU-Auslastung ausmacht. Man kann die CPU-Auslastung für eine kurzzeitige Diagnosehilfe aktivieren, wir empfehlen aber, diese nach der Diagnose wieder zu deaktivieren.

HKEY_LOCAL_MACHINE/SOFTWARE/BECKHOFF/TWINCAT/RTime/EnableRTimeMeasurement 0 deaktiviert, 1 aktiviert

Nach der Einstellung ist ein TwinCAT-Restart des CX80xx notwendig.

Hinweis 		CPU-Auslastung
Die CPU-Auslastung wird intern mit 10 ms gerechnet.
Werden eine oder mehrere Task über 10 ms verwendet, kann die Anzeige der CPU-Auslastung sehr stark schwanken.


Bibliothek für CX80xx

Download der Bibliothek


CX80xx - FUNCTION_BLOCK FB_S_UPS_CX80xx

BECKHOFF CX80xx: Programmierung

FUNCTION_BLOCK FB_S_UPS_CX80xx

Der Funktionsbaustein FB_S_UPS kann auf CX80xx mit der Sekunden-USV verwendet werden, um die Sekunden-USV aus der SPS anzusteuern. Hiermit können bei Spannungsausfall noch die Persistenten Daten gespeichert und ein QuickShutdown ausgeführt werden. Wenn möglich sollten die Defaultwerte der INPUTs des FB_S_UPS beibehalten werden.

Achtung 		Datenverlust
Die Sekunden-USV kann bei Spannungsausfall nur für wenige Sekunden verwendet werden, um z.B. Persistente Daten zu speichern. Das Speichern der Daten muss im schnellen Persistent Modus "SPDM_2PASS" erfolgen, auch wenn es hier zu Echtzeitverletzungen kommen kann. Zum Speichern der Persistenten Daten muss hinreichend Routerspeicher konfiguriert werden!

Für das Überbrücken von Spannungsausfällen hat die Sekunden-USV nicht genügend Kapazität. Das Speichern kann nur auf der micro SD Karte erfolgen.

Im Modus eSUPS_WrPersistData_Shutdown (Standardeinstellung) wird nach dem Speichern der persistenten Daten automatisch ein QuickShutdown ausgeführt.

Im Modus eSUPS_WrPersistData_NoShutdown werden nur die persistenten Daten gespeichert, es wird kein QuickShutdown ausgeführt.

Im Modus eSUPS_ImmediateShutdown wird sofort ein QuickShutdown ausgeführt, ohne das Speichern von Daten.

Im Modus eSUPS_CheckPowerStatus wird nur geprüft, ob ein Spannungsausfall auftrat. Ist dies der Fall, geht der Baustein erst nach Ablauf der tRecoverTime (10s) wieder in den Zustand PowerOK.

Unabhängig vom Modus und damit unabhängig vom Speichern oder Herunterfahren der Steuerung schaltet die USV nach Entladung der Kondensatoren das Mainboard ab, auch wenn die Spannung zwischenzeitlich wiederkehrt.

Achtung 		Achtung bei Verwendung von Dateien:
Falls andere Applikationen oder die SPS noch weitere Dateien offen halten oder in diese schreiben, kann es zu fehlerhaften Dateien kommen, wenn die USV die Steuerung abschaltet.

FUNCTION_BLOCK FB_S_UPS_CX80xx

VAR_INPUT

VAR_INPUT
    sNetID          : T_AmsNetId := '';               (* '' = local netid *)
    iPLCPort        : UINT := AMSPORT_R0_PLC_RTS1;    (* PLC Runtime System for writing persistent data *)
    iUPSPort        : UINT := 16#4A8;                 (* Port for reading Power State of UPS, dafault 16#4A8 *)
    tTimeout        : TIME := DEFAULT_ADS_TIMEOUT;    (* ADS Timeout *)
    eUpsMode        : E_S_UPS_Mode := eSUPS_WrPersistData_Shutdown; (* UPS mode (w/wo writing persistent data, w/wo shutdown) *)
    ePersistentMode : E_PersistentMode := SPDM_2PASS; (* mode for writing persistent data *)
    tRecoverTime    : TIME := T#10s;                  (* ON time to recover from short power failure in mode eSUPS_WrPersistData_NoShutdown/eSUPS_CheckPowerStatus *)
END_VAR

sNetID : AmsNetID der Steuerung.

iPLCPort : Portnummer des SPS-Laufzeitsystems (AMSPORT_R0_PLC_RTS1 = 801, AMSPORT_R0_PLC_RTS2 = 811, AMSPORT_R0_PLC_RTS3 = 821, AMSPORT_R0_PLC_RTS4 = 831).

iUPSPort : Portnummer über die der USV-Status gelesen wird (Standardwert ist 16#4A8).

tTimeout : Timeout für die Ausführung des QuickShutdowns.

eUpsMode : eUpsMode definiert, ob Persistente Daten geschrieben werden sollen und ob ein QuickShutdown ausgeführt werden soll.
Standardwert ist eSUPS_WrPersistData_Shutdown, d.h. mit Schreiben der Persistenten Daten und dann QuickShutdown. Siehe E_S_UPS_Mode.

ePersistentMode : Modus für das Schreiben der Persistenten Daten. Standardwert ist SPDM_2PASS.
SPDM_2PASS, es werden alle persistente Daten auf einmal weggeschrieben, das kann zu einer Zykluszeitüberschreitung führen.
SPDM_VAR_BOOST, hier wird jede persistente Variable einzeln geschrieben, Das kann bei vielen persistenten Daten entsprechend viele Zyklen dauern. Dies wird nicht empfohlen da es dazu führen kann das einige Daten verloren gehen, wenn die Zeit der Sekunden USV nicht ausreichend ist.

tRecoverTime : Zeit, nach der die USV bei UPS-Modi ohne Shutdown wieder in den PowerOK Status zurück geht.
Die tRecoverTime muss etwas größer sein, als die maximale Haltezeit der USV, da die USV auch bei wiederkehrender Spannung abschaltet.

VAR_OUTPUT

VAR_OUTPUT
    bPowerFailDetect	: BOOL;            (* TRUE while powerfailure is detected *)
    eState 		: E_S_UPS_State;   (* current ups state *)
END_VAR

bPowerFailDetect : True während des Spannungsausfalls; False, wenn die Versorgungsspannung anliegt .

eState : Interner Zustand des Funktionsbausteins, Werte siehe E_S_UPS_State.

VAR_GLOBAL

VAR_GLOBAL
    eGlobalSUpsState : E_S_UPS_State;    (* current ups state *)
END_VAR

eGlobalUpsState : Interner Zustand des Funktionsbausteins als globale Kopie des VAR_OUTPUT eState, Werte siehe E_S_UPS_State.

Entwicklungsumgebung | Zielplattform | Hardware | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build 2220 oder höher (R3) | ARM | Sekunden USV | -


CX80xx - TYPE E_S_UPS_Mode

BECKHOFF CX80xx: Programmierung

TYPE E_S_UPS_Mode

eSUPS_WrPersistData_Shutdown: Schreiben der Persistenten Daten und dann QuickShutdown
eSUPS_WrPersistData_NoShutdown: Nur Schreiben der Persistenten Daten (kein QuickShutdown)
eSUPS_ImmediateShutdown: Nur QuickShutdown (kein Schreiben der Persistenten Daten)
eSUPS_CheckPowerStatus: Nur Status ermitteln (weder Schreiben der Persistenten Daten noch QuickShutdown)

Entwicklungsumgebung | Zielplattform | Hardware | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build 2220 oder höher (R3) | ARM | Sekunden USV | -


CX80xx - TYPE E_S_UPS_State

BECKHOFF CX80xx: Programmierung

TYPE E_S_UPS_State

eSUPS_PowerOK:
    in allen Modi: Versorgungsspannung ist OK

eSUPS_PowerFailure:
    in allen Modi: Versorgungsspannung fehlerhaft (steht nur einen Zyklus an)

eSUPS_WritePersistentData:
    im Modus eSUPS_WrPersistData_Shutdown: Schreiben der Persistenten Daten ist aktiv
    im Modus eSUPS_WrPersistData_NoShutdown: Schreiben der Persistenten Daten ist aktiv

eSUPS_QuickShutdown:
    im Modus eSUPS_WrPersistData_Shutdown: QuickShutdown ist aktiv
    im Modus eSUPS_ImmediateShutdown: QuickShutdown ist aktiv

eSUPS_WaitForRecover:
    im Modus eSUPS_WrPersistData_NoShutdown: Warten auf Wiederkehr der Spannung
    im Modus eSUPS_CheckPowerStatus: Warten auf Wiederkehr der Spannung

eSUPS_WaitForPowerOFF:
    im Modus eSUPS_WrPersistData_Shutdown: Warten auf das Abschalten durch die USV
    im Modus eSUPS_ImmediateShutdown: Warten auf das Abschalten durch die USV

Entwicklungsumgebung | Zielplattform | Hardware | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build 2220 oder höher (R3) | ARM | Sekunden USV | -


CX80xx - FUNCTION_CX80xx_ADDRESS

BECKHOFF CX80xx: Programmierung

FUNCTION F_CX80xx_ADDRESS

Mit der Funktion kann der Adresswählschalter oder der DIP Schalter des CX80xx Gerätes ausgelesen werden. Hier kann man zum Beispiel in Abhängigkeit der Adresse durch das Lesen der Schalterstellung verschiedene Programmteile aktivieren.

VAR_INPUT

VAR_INPUT
    iCX_Typ          : INT;
END_VAR

iCX_Typ : Hier wird der benutzte CX Typ eingetragen, nur die Nummer ohne die Bezeichnung CX: Beispiel, CX8031 dann wird 8031 eingetragen.

VAR_OUTPUT

F_CX80xx_ADDRESS		: INT;

F_CX80xx_ADDRESS : -1, nicht implementierter CX, Adresse des Schalters

Entwicklungsumgebung | Zielplattform | Hardware | Einzubindende SPS Bibliotheken
TwinCAT v2.11.0 Build 2220 oder höher (R3) | ARM | CX80xx | -


CX805x - Auslesen der CAN-Baudrate

BECKHOFF CX805x: CAN

Auslesen der CAN-Baudrate

Über den InfoData[1] kann die Baudrate angezeigt und ausgewertet werden. Dies kann beim Slave mit AutoBaud helfen, wenn zum Beispiel die Kommunikation nicht läuft ob die richtige Baudrate auch gefunden worden ist.

Wert NodeState | Beschreibung
0x01040400 | 1 MBaud
0x01040600 | 800 kBaud
0x01040C00 | 500 kBaud
0x010A0C00 | 250 kBaud
0x01160C00 | 125 kBaud
0x011C0C00 | 100 kBaud
0x013A0C00 | 50 kBaud
0x01940C00 | 20 kBaud
0x01941A10 | 10 kBaud


CX805x - Beliebige CAN-Nachricht verschicken

BECKHOFF CX805x: Versenden von CAN Daten

Beliebige CAN-Nachricht verschicken

Mit dem Befehl ADSWRITE ist es möglich eine beliebige CAN-Nachricht zu versenden.

Eingangsparameter | Beschreibung
NETID | NetId der CAN Schnittstelle
Port Nummer | 200
IDXGRP | 16#0000F921
IDXOFFS | 0
LEN | 11 Bytes
SRCADDR | Pointer auf ein ARRAY von 11 Byte

Aufbau der 11 Byte CAN Daten

Byte | Beschreibung | Beispiel Node 7 SDO 0x607 Len 8 Download Request 0x2100 (Index) Sub Index 1 - Value "1"
1 | COB-ID LowByte | 0x06 (SDO Low Byte)
2 | COB-ID HighByte | 0x07 (SDO High Byte)
3 | LEN (Länge) | 0x08 (Len, kann hier auch 5 sein)
4 | Daten[1] | 0x22 (Download Request)
5 | Daten[2] | 0x00 (Index Low Byte)
6 | Daten[3] | 0x21 (Index High Byte)
7 | Daten[4] | 0x01 (Sub Index)
8 | Daten[5] | 0x01 (Value "1")
9 | Daten[6] | 0x00
10 | Daten[7] | 0x00
11 | Daten[8] | 0x00


CX805x - SDO-Kommunikation aus der PLC

BECKHOFF CX8050: CAN

SDO-Kommunikation aus der PLC

Für die SDO-Kommunikation aus der PLC heraus verwendet man die ADS-Bausteine. Mit diesen Bausteinen ist es möglich SDO-Telegramme zu versenden und die Antwort des Slaves zu empfangen (ADSWRITE/ADSREAD).

Eingangsparameter | Beschreibung
NETID | ADS NetId des CAN Interface
Port Nummer | 0x1000hex + NodeId (Slave Nummer)
IDXGRP | SDO Index
IDXOFFS | SDO Subindex
LEN | Länge der SDO Daten (1...4)

Setzen einzelner in den Pre-Operational oder Operational Zustand

Mit dem ADSWRTCTL Baustein können Sie einzelne CANopen Knoten in den Pre-Operational oder Operational Zustand versetzen.

Eingangsparameter | Beschreibung
NETID | ADS NetId des CAN Interface
Port Nummer | 0x1000hex + NodeId (Slave Nummer)
ADSSTATE | ADSSTATE_RUN
DEVSTATE | 0 - Pre / 1 - Operational
LEN | 0
SRCADDR | 0

CAN Interface neu Starten

Mit dem ADSWRTCTL Baustein kann der SSB gestoppt und neu gestartet werden. Führen Sie als erstes ein Stopp aus und als nächstes einen Start aus.

Eingangsparameter | Beschreibung
NETID | ADS NetId des CAN Interface
Port Nummer | 200dez
ADSSTATE | ADSSTATE_STOP, ADSSTATE_RUN
DEVSTATE | 0
LEN | 0
SRCADDR | 0


CX805x - Emergency-Telegramme und Diagnose

BECKHOFF CX8050, CX8051: Parametrierung und Inbetriebnahme

Emergency-Telegramme und Diagnose

Über den NodeState wird der Status des CAN-Slaves angezeigt. Das DiagFlag wird gesetzt wenn ein Emergency-Telegramm empfangen wurde. Der EmergencyCounter zählt bei jedem Emergency-Telegramm eins hoch.

Wert NodeState | Beschreibung
0 | No error
1 | Node deactivated
2 | Node not found
4 | SDO syntax error at Start Up
5 | SDO data mismatch at Start Up
8 | Node start up in progress
11 | Bus-OFF
12 | Pre-Operational
13 | Servere bus fault
14 | Guarding: toggle error
20 | TxPDO too short
22 | Expected TxPDO is missing
23 | Node is Operational but not all TxPDOs were received

ADS Port 200

Auslesen der Emergency Telegramme mit AdsRead

Eingangsparameter | Beschreibung
NETID | NetId der CAN Schnittstelle
Port Nummer | 200
IDXGRP | 16#xxxxF180 (xxxx) Node-Id, das Diag Flag wird nur beim Auslesen von mindesten 106 Byte zurückgesetzt 16#xxxxF181 (xxxx) Node-Id, das Diag Flag wird sofort zurückgesetzt
IDXOFFS | Byte Offset

Beschreibung des Arrays

Offset | Bit | Wert / Beschreibung
0 - 1 | Bit 0 | reserviert
 | Bit 1 | Boot-Up-Message nicht empfangen oder fehlerhaft
 | Bit 2 | Emergency-Overflow
 | Bit 3 - 15 | reserviert
2 - 3 | Bit 0 - 14 | TX-PDO (i+1) empfangen
 | Bit 15 | alle TX-PDOs 16-n empfangen
4 - 5 | Bit 0 - 4 | 1: falsche TX-PDO-Länge
 |  | 2: synchrone TX-PDO fehlt
 |  | 3: Node meldet PRE-OPERATIONAL
 |  | 4: Event-Timer bei einer TX-PDO abgelaufen
 |  | 5: keine Antwort beim Guarden
 |  | 6: mehrmals kein Toggeln beim Guarden
 | Bit 5 - 15 | zugehörige COB-ID
6 | Bit 0 - 7 | 1: falscher Wert bei einem SDO-Upload
 |  | 2: falsche Länge bei einem SDO-Upload
 |  | 3: Abort bei einem SDO-Up-/Download
 |  | 4: falsches Datum bei einer Boot-Up-Message
 |  | 5: Timeout beim Warten auf Boot-Up-Message
7 | Bit 0 - 7 | 2: falscher SDO-Command specifier
 |  | 3: SDO-Toggle-Bit hat sich nicht geändert
 |  | 4: SDO-Länge zu groß
 |  | 5: SDO-Abort
 |  | 6: SDO-Timeout
8 - 9 | Bit 0 - 7 | Index des SDO-Up/Downloads
10 | Bit 0 - 7 | Subindex des SDO-Up/Downloads
11 | Bit 0 - 7 | reserviert
12 | Bit 0 - 7 | errorClass des Aborts
13 | Bit 0 - 7 | errorCode des Aborts
14 - 15 | Bit 0 - 15 | additionalCode des Aborts
16 - 19 |  | gelesener Wert (falls Offset 6 = 1)
20 - 23 |  | erwarteter Wert (falls Offset 6 = 1)
24 - 25 |  | Anzahl der folgenden Emergencies
26 - n |  | Emergencies (jeweils 8 Byte)


CX8051 - Empfangen von SDO-Daten in der SPS

BECKHOFF CX8051: CANopen

Empfangen von SDO-Daten in der SPS

SDO Daten, die der CANopen Teil der Software nicht kennt und nicht selbstständig bearbeitet, werden in die SPS weitergeleitet und können hier per ADS-Notification ausgewertet und beantwortet werden.

Hierfür muss im System Manager untern den CAN Device (CX8051) der ADS Port freigeschaltet werden.

SDO Read request

Daten, die gelesen werden sollen, müssen mit einem ADSREADIND empfangen werden und mit ADSREADRES beantwortet werden.

Eingangsparameter ADSREADIND | Beschreibung
NETID | NetID der CAN Schnittstelle
Port Nummer | 0x1000hex + Node Nummer
IDXGRP | 16#8000_0000 + SDO Index (IDXGRP.31 = ADS-Notification)
IDXOFFS | SDO Subindex
LEN | wird nicht beim Lesen benötigt

Nun müssen Sie auf das ADS Indication antworten mit einem ADS Read Response.

Eingangsparameter ADSREADRES | Beschreibung
NETID | NetID der CAN Schnittstelle
Port Nummer | 0x1000hex + Node Nummer
INVOKEID | INVOKEID des ADSREADIND Bausteins
RESULT | Fehler <> 0, Fehlerfrei = 0
LEN | Länge der Daten

SDO Write request

Daten, die geschrieben werden sollen, müssen mit einem ADSWRITEIND empfangen werden und mit ADSWRITERES beantwortet werden.

Ausgangsparameter ADSWRITEIND | Beschreibung
NETID | NetID der CAN Schnittstelle
Port Nummer | 0x1000hex + Node Nummer
IDXGRP | 16#8000_0000 + SDO Index (IDXGRP.31 = ADS Notification)
IDXOFFS | SDO Subindex
LEN | Anzahl des empfangenden Daten in BYTE

Nun müssen Sie auf das ADS Indication antworten mit einem ADS Write Response.

Eingangsparameter ADSWRITERES | Beschreibung
NETID | NetID der CAN Schnittstelle
Port Nummer | 0x1000hex + Node Nummer
INVOKEID | INVOKEID des ADSWRITEIND Bausteins
RESULT | Fehler <> 0, Fehlerfrei = 0


CX8051 - Slave Node aus der PLC in PreOp schalten

BECKHOFF CX8051: CANopen

Slave Node aus der PLC in PreOp schalten

Mit dem Baustein ADSWRTCTL können Sie einzelne CANopen Knoten in den Pre-Operational oder Operational Zustand versetzen. Vorraussetzung ist eine fest eingestellte Baudrate.

Eingangsparameter | Beschreibung
NETID | NetId der CAN Schnittstelle
Port Nummer | 0x1000hex + NodeId (Slave Nummer)
ADSSTATE | ADSSTATE_RUN
DEVSTATE | 0 - Pre / 1 - Operational
LEN | 0
SRCADDR | 0


Ethernet

Ethernet wurde ursprünglich von DEC, Intel und Xerox (als DIX-Standard) für die Datenübertragung zwischen Bürogeräten entwickelt. Heute versteht man darunter meist die Spezifikation IEEE 802.3 CSMA/CD, die 1985 veröffentlicht wurde. Diese Technologie ist durch ihren weltweiten Einsatz und die hohen Stückzahlen überall erhältlich und sehr preiswert.. Eine Anbindung an vorhandene Netze kann so problemlos realisiert werden.

Mittlerweile gibt es die verschiedensten Übertragungsmedien: Koaxialkabel (10Base5), Lichtwellenleiter (10BaseF) oder verdrillte Zweidrahtleitung (10BaseT) mit Schirmung (STP) oder ohne Schirmung (UTP). Mit Ethernet lassen sich verschieden Topologien aufbauen wie Ring, Linie oder Stern.

Ethernet transportiert Ethernet-Pakete von einem Sender zu einem oder mehreren Empfängern. Diese Übertragung verläuft ohne Quittung und ohne Wiederholung von verlorenen Paketen. Für die sichere Daten-Kommunikation stehen Protokolle wie TCP/IP zu Verfügung, die auf Ethernet aufsetzen.

MAC-ID

Sender und Empfänger von Ethernet-Paketen werden über die MAC-ID adressiert. Die MAC-ID ist ein 6 Byte großer Identifikations-Code, der eineindeutig, d.h. für jedes Ethernet-Gerät weltweit unterschiedlich ist. Die MAC-ID besteht aus zwei Teilen. Der erste Teil (d.h. die ersten 3 Byte) ist eine Herstellerkennung. Die Firma Beckhoff hat die Kennung 00 01 05. Die nächsten 3 Byte werden durch den Hersteller vergeben und entsprechen einer eindeutigen Seriennummer. Die MAC-ID kann zum Beispiel beim BootP-Protokoll zum Einstellen der TCP/IP-Nummer verwendet werden. Dafür wird ein Telegramm zum entsprechenden Knoten geschickt, das die Informationen wie Name oder TCP/IP-Nummer beinhaltet. Sie können die MAC-ID mit der Konfigurationssoftware KS2000 auslesen.

Internet-Protokoll (IP)

Die Grundlage der Datenkommunikation ist das Internet-Protokoll (IP). IP transportiert Datenpakete von einem Teilnehmer zu einem anderen, der sich im gleichen oder in einem anderen Netz befinden kann. IP kümmert sich dabei um das Adress-Management (Finden und Zuordnen der MAC-IDs), die Segmentierung und die Pfadsuche (Routing). Wie das Ethernet-Protokoll gewährleistet auch IP keinen gesicherten Transport der Daten; Datenpakete können verloren gehen oder in ihrer Reihenfolge vertauscht werden.

Für einen standardisierten, gesicherten Informationsaustausch zwischen beliebig vielen verschiedenen Netzwerken wurde TCP/IP entwickelt. Dabei ist TCP/IP weitgehend unabhängig von der verwendeten Hard- und Software. Oftmals als ein Begriff verwendet, handelt es sich hierbei um mehrere aufeinander aufgesetzte Protokolle: z.B. IP, TCP, UDP, ARP und ICMP.

Transmission Control Protocol (TCP)

Das auf IP aufsetzende Transmission Control Protocol (TCP) ist ein verbindungsorientiertes Transport-Protokoll. Es umfasst Fehlererkennungs- und Behandlungsmechanismen. Verlorengegangene Telegramme werden wiederholt.

User Datagram Protocol (UDP)

UDP ist ein verbindungsloses Transport-Protokoll. Es gibt keine Kontrollmechanismen beim Datenaustausch zwischen Sender und Empfänger. Dadurch resultiert eine schneller Verarbeitungsgeschwindigkeit als zum Beispiel bei TCP. Eine Prüfung ob das Telegramm angekommen ist muss vom übergeordneten Protokoll durchgeführt werden.

Auf TCP/IP und UDP/IP aufsetzende Protokolle

Auf TCP/IP bzw. UDP können folgende Protokolle aufsetzen:

  • ADS
  • ModbusTCP

Beide Protokolle sind parallel auf dem Buskoppler implementiert, so dass für die Aktivierung der Protokolle keine Konfiguration nötig ist.

ADS setzt wahlweise auf TCP oder UDP auf, während ModbusTCP stets auf TCP/IP basiert.


CX805x - Topologiebeispiel

BECKHOFF CX805x: CAN

Topologiebeispiel

CX805x

Hinweis 		Systemauslastung beachten
Achten Sie bei der Verwendung von weiteren Ethernet-Protokollen wie ModbusTCP/UDP, Web-Services auf die Systemauslastung Ihres CX805x. Eine hohe Auslastung kann unter umständen die Ethernet-Kommunikation stark verlangsamen.


ADS-Kommunikation

Das ADS-Protokoll (ADS: Automation Device Specification) ist eine Transportschicht innerhalb des TwinCAT Systems. Es ist für den Datenaustausch der verschiedenen Software-Module entwickelt worden, zum Beispiel für die Kommunikation zwischen der NC und der PLC. Mit diesem Protokoll haben Sie die Freiheit von jedem Punkt im TwinCAT mit anderen Tools kommunizieren zu können. Wird die Kommunikation zu anderen PCs oder Geräten benötigt, setzt das ADS-Protokoll auf TCP/IP auf. Somit ist es in einem vernetzten System möglich, alle Daten von einem beliebigen Punkt aus zu erreichen.

Das ADS-Protokoll wird auf das TCP/IP- oder UDP/IP-Protokoll aufgesetzt. Es ermöglicht dem Benutzer innerhalb des Beckhoff-Systems über nahezu beliebige Verbindungswege mit allen angeschlossenen Geräten zu kommunizieren und diese zu parametrieren. Außerhalb des Beckhoff-Systems stehen verschiedene Wege offen, um mit anderen Software-Tools Daten auszutauschen.

Software-Schnittstellen

ADS-OCX

Das ADS-OCX ist eine Active-X-Komponente und bietet eine Standardschnittstelle zum Beispiel zu Visual Basic, Delphi, u.s.w.

ADS-DLL

Sie können die ADS-DLL (DLL: Dynamic Link Library) in Ihr C-Programm einbinden.

OPC

Die OPC-Schnittstelle ist eine genormte Standardschnittstelle für die Kommunikation in der Automatisierungstechnik. Beckhoff bietet hierfür einen OPC-Server an.


ADS-Protokoll

Die ADS-Funktionen bieten die Möglichkeit, direkt vom PC auf Informationen des Buskopplers zuzugreifen. Dafür können ADS-Funktionsbausteine im TwinCAT PLC Control verwendet werden. Die Funktionsbausteine sind in der Bibliothek PLCSystem.lib enthalten. Genauso ist es möglich, die ADS-Funktionen von AdsOCX, ADSDLL oder OPC aufzurufen.

AMSNetID

Die AMSNetID beschreibt das anzusprechende Gerät. Diese wird aus der Mac-Adresse des ersten Ethernet Ports (X001) und ist beim CX80xx auf der Seite aufgedruckt. Es werden für die AMSNetID typischerweise die Bytes 3..6 plus ".1.1" verwendet.
Beispiel:
MAC-Adresse 00-01-05-01-02-03
AMSNetID 5.1.2.3.1.1

Port-Nummer

Die Portnummer unterscheidet im angeschlossenen Gerät Unterelemente.
Port 801: lokale Prozessdaten PLC Laufzeit 1

Index Group

Die Index Group unterscheidet innerhalb eines Ports verschiedene Daten.

Index Offset

Gibt den Offset an, ab welchem Byte gelesen oder geschrieben werden soll.

Len

Gibt die Länge der Daten in Byte an, die gelesen bzw. geschrieben werden sollen.

TCP-Port-Nummer

Die TCP-Port-Nummer beträgt für das ADS-Protokoll 48898 oder 0xBF02.


BECKHOFF Feldbuskomponenten - CANopen Einführung

BECKHOFF Feldbuskomponenten: Produktübersicht

CANopen Einführung

CANopen ist eine weit verbreitete CAN-Anwendungsschicht, die im Verband CAN-in-Automation (CiA, http://www.can-cia.org) entwickelt und inzwischen zur internationalen Normung angenommen wurde.

Gerätemodell

CANopen besteht aus der Protokolldefinition (Kommunikationsprofil) so wie den Geräteprofilen, die den Dateninhalt für die jeweilige Geräteklasse normieren. Zur schnellen Kommunikation der Ein- und Ausgangsdaten dienen die Prozessdatenobjekte (PDO). Die CANopen-Geräteparameter und Prozessdaten sind in einem Objektverzeichnis strukturiert. Der Zugriff auf beliebige Daten dieses Objektverzeichnisses erfolgt über die Servicedatenobjekte (SDO). Weiter gibt es einige Spezialobjekte (bzw. Telegrammarten) für Netzwerkmanagement (NMT), Synchronisation, Fehlermeldungen etc.

Kommunikationsarten

CANopen definiert mehrere Kommunikationsarten für die Ein- und Ausgangsdaten (Prozessdatenobjekte):

  • Ereignisgesteuert: Telegramme werden versendet, sobald sich der Inhalt geändert hat. Hier wird nicht ständig das Prozessabbild, sondern nur die Änderung desselben übertragen.
  • Zyklisch synchron: Über ein SYNC Telegramm werden die Baugruppen veranlasst, die vorher empfangenen Ausgangsdaten zu übernehmen und neue Eingangsdaten zu senden.
  • Angefordert (gepollt): Über ein CAN Datenanforderungstelegramm werden die Baugruppen veranlasst ihre Eingangsdaten zu senden.

Die gewünschte Kommunikationsart wird über den Parameter Transmission Type eingestellt.

Geräteprofil

Die BECKHOFF CANopen-Geräte unterstützen alle E/A- Kommunikationsarten und entsprechen dem Geräteprofil für digitale und analoge Ein-/Ausgabebaugruppen (DS401 Version 1). Aus Gründen der Abwärtskompatibilität wurde das Default Mapping nicht der Profilversion DS401 V2 angepasst.

Übertragungsraten

Neun Übertragungsraten von 10 kBaud bis 1 MBaud stehen für unterschiedliche Buslängen zur Verfügung. Durch die effektive Nutzung der Busbandbreite erreicht CANopen kurze Systemreaktionszeiten bei vergleichsweise niedrigen Datenraten.

Topologie

CAN basiert auf einer linienförmigen Topologie. Die Anzahl der Teilnehmer pro Netz ist dabei von CANopen logisch auf 128 begrenzt, physikalisch erlaubt die aktuelle Treiber-Generation bis zu 64 Knoten in einem Netzsegment. Die bei einer bestimmten Datenrate maximal mögliche Netzausdehnung ist durch die auf dem Busmedium erforderliche Signallaufzeit begrenzt. Bei 1 MBaud ist z.B. eine Netzausdehnung von 25 m, bei 50 kBaud eine Netzausdehnung von 1000 m möglich. Bei niedrigen Datenraten kann die Netzausdehnung durch den Einsatz von Repeatern erhöht werden, diese ermöglichen auch den Aufbau von Baumstrukturen.

Buszugriffsverfahren

CAN arbeitet nach dem Verfahren Carrier Sense Multiple Access (CSMA), d.h. jeder Teilnehmer ist bezüglich des Buszugriffs gleichberechtigt und kann auf den Bus zugreifen, sobald dieser frei ist (Multi-Master-Buszugriff). Der Nachrichtenaustausch ist dabei nicht Teilnehmerbezogen sondern Nachrichtenbezogen. Das bedeutet, dass jede Nachricht mit einem priorisierten Identifier eindeutig gekennzeichnet ist. Damit beim Verschicken der Nachrichten verschiedener Teilnehmer keine Kollisionen auf dem Bus entstehen, wird beim Start der Datenübertragung eine bitweise Busarbitrierung durchgeführt. Die Busarbitrierung vergibt die Busbandbreite an die Nachrichten in der Reihenfolge ihrer Priorität, am Ende der Arbitrierungsphase belegt jeweils nur ein Busteilnehmer den Bus, Kollisionen werden vermieden und die Bandbreite wird optimal genutzt.

Konfiguration und Parametrierung

Mit dem TwinCAT System Manager können alle CANopen Parameter komfortabel eingestellt werden. Für die Parametrierung der Beckhoff CANopen-Geräte mit Konfigurationstools dritter Hersteller steht Ihnen auf der Beckhoff Website (http://www.beckhoff.de) ein eds-File (electronic data sheet) zur Verfügung.

Zertifizierung

Die Beckhoff CANopen-Geräte verfügen über eine leistungsfähige Protokollimplementierung und sind vom Verband CAN-in-Automation (http://www.can-cia.org) zertifiziert.


BECKHOFF Feldbuskomponenten - Netzwerkmanagement

BECKHOFF Feldbuskomponenten: CANopen Kommunikation

Netzwerkmanagement

Einfacher Boot-Up

CANopen erlaubt einen sehr einfachen Boot-Up des verteilten Netzwerkes. Die Module befinden sich nach der Initialisierung automatisch im Zustand Pre-Operational. In diesem Zustand kann bereits über Service-Datenobjekte (SDOs) mit Default-Identifiern auf das Objektverzeichnis zugegriffen werden, die Module können also konfiguriert werden. Da für alle Einträge im Objektverzeichnis Default-Einstellungen vorhanden sind, kann in den meisten Fällen auf eine Konfiguration verzichtet werden.

Zum Starten der Module ist dann nur eine einzige CAN-Nachricht erforderlich: Start_Remote_Node: Identifier 0, zwei Datenbytes: 0x01, 0x00. Sie überführt die Knoten in den Zustand Operational.

Netzwerkstatus

Die Zustände im CANopen Boot-Up und die Zustandsübergänge sind aus dem Zustandsdiagramm ersichtlich:

Pre-Operational

Nach der Initialisierung geht der Buskoppler automatisch, d.h. ohne Befehl von außen, in den Zustand Pre-Operational über. In diesem Zustand kann er konfiguriert werden, denn die Servicedatenobjekte (SDOs) sind bereits aktiv. Die Prozessdatenobjekte sind hingegen noch gesperrt.

Operational

Im Zustand Operational sind auch die Prozessdatenobjekte aktiv.

Wenn der Buskoppler aufgrund äußerer Einflüsse (z.B. CAN-Störung, keine Ausgangs-Spannung) oder innerer Einflüsse (z.B. K-Bus-Fehler) nicht mehr in der Lage ist, Ausgänge zu setzen oder Eingänge zu lesen bzw. zu kommunizieren, so versucht er eine entsprechende Emergency-Nachricht zu senden, geht in den Fehlerzustand und fällt dabei in den Zustand Pre-Operational zurück. Damit kann auch die NMT-Statusmaschine des Netzwerkmasters fatale Fehler sofort erkennen.

Stopped

Im Zustand Stopped (früher Prepared) ist keine Datenkommunikation mit dem Koppler möglich - lediglich NMT-Nachrichten werden empfangen. Die Ausgänge gehen in den Fehlerzustand.

Statusübergänge

Die Netzwerkmanagement-Nachrichten haben einen sehr einfachen Aufbau: CAN-Identifier 0 mit zwei Byte Dateninhalt. Das erste Datenbyte enthält den sogenannten Command-Specifier (cs), das zweite Datenbyte die Knotenadresse, wobei die Knotenadresse 0 alle Knoten anspricht (Broadcast).

11-bit Identifier | 2 Byte Nutzdaten
0x00 | cs | Node-ID

Die folgende Tabelle gibt einen Überblick über alle CANopen Statusübergänge und die dazugehörigen Kommandos (Command Specifier im NMT Master-Telegramm):

Statusübergang | Command Specifier cs | Erläuterung
(1) | - | Der Initialisierungs-Status wird beim Einschalten selbsttätig erreicht
(2) | - | Nach der Initialisierung wird der Status Pre-Operational automatisch erreicht - dabei wird die Boot-Up-Nachricht abgeschickt.
(3), (6) | cs = 1 = 0x01 | Start_Remote_Node. Startet Modul, gibt Ausgänge frei, Startet Übertragung von PDOs.
(4), (7) | cs = 128 = 0x80 | Enter_Pre-Operational. Stoppt PDO-Übertragung, SDO weiter aktiv.
(5), (8) | cs = 2 = 0x02 | Stop_Remote_Node. Ausgänge gehen in den Fehlerzustand, SDO und PDO abgeschaltet.
(9), (10), (11) | cs = 129 = 0x81 | Reset_Node. Führt Reset durch. Alle Objekte werden auf Power-On Defaults zurückgesetzt.
(12), (13), (14) | cs = 130 = 0x82 | Reset_Communication. Führt Reset der Kommunikationsfunktionen durch. Objekte 0x1000 - 0x1FFF werden auf Power-On Defaults zurückgesetzt
Beispiel 1

Mit folgendem Telegramm werden netzwerkweit alle Baugruppen in den Fehlerzustand (Ausgänge sicherer Zustand) überführt:

11-bit Identifier | 2 Byte Nutzdaten
0x00 | 0x02 | 0x00
Beispiel 2

Mit folgendem Telegramm wird Knoten 17 zurückgesetzt (resetted):

11-bit Identifier | 2 Byte Nutzdaten
0x00 | 0x81 | 0x11

Boot-Up-Nachricht

Nach der Initialisierungsphase und dem Selbsttest sendet der Buskoppler die Boot-Up-Nachricht, eine CAN-Nachricht mit einem Datenbyte (0) auf dem Identifier der Guarding- bzw. Heartbeat-Nachricht: CAN-ID = 0x700 + Node-ID. Damit kann ein temporärer Ausfall einer Baugruppe während des Betriebs (z.B. durch einen Spannungseinbruch) oder eine nachträglich eingeschaltete Baugruppe zuverlässig auch ohne Node Guarding festgestellt werden. Der Sender kann über den Identifier der Nachricht (siehe Default-Identifier-Verteilung) bestimmt werden.

Außerdem ist es mit Hilfe der Boot-Up-Nachricht möglich, die beim Aufstarten am Netz befindlichen Knoten mit einem einfachen CAN-Monitor zu erkennen, ohne dass ein Schreibzugriff (z.B. Scannen des Netzwerks durch Auslesen von Parameter 0x1000) auf den Bus erforderlich ist.

Schließlich wird durch die Boot-Up-Nachricht das Ende der Initialisierungsphase kommuniziert; der Buskoppler signalisiert, dass er nun konfiguriert bzw. gestartet werden kann.

Hinweis 		Firmwarestand BA
Bis Firmwarestand BA wurde für die Boot-Up-Nachricht der Emergency Identifier genutzt.

Format Boot-Up Nachricht

11-bit Identifier | 1 Byte Nutzdaten
0x700 (=1792) + Node-ID | 0x00

Knotenüberwachung

Für die Ausfallüberwachung des CANopen Netzwerkes stehen Heartbeat und Guarding-Mechanismen zur Verfügung. Diese sind bei CANopen besonders wichtig, da sich die Baugruppen in der ereignisgesteuerten Betriebsart nicht regelmäßig melden. Beim Guarding werden die Teilnehmer per Datenanforderungstelegramm (Remote Frame) zyklisch nach ihrem Status gefragt, beim Heartbeat senden die Knoten ihren Status von selbst.

Guarding: Node Guarding und Life Guarding

Über Node Guarding werden die dezentralen Peripherie-Baugruppen überwacht, die ihrerseits über Life Guarding den Ausfall des Guarding-Masters erkennen können. Beim Guarding setzt der Master Remote Frames (remote transmit request, Nachrichten-Anforderungstelegramme) auf die Guarding Identifier der zu überwachenden Slaves ab. Diese antworten mit der Guarding-Nachricht. Diese enthält den Status-Code des Slaves sowie ein Toggle-Bit, das nach jeder Nachricht wechseln muss. Falls Status- oder Toggle-Bit nicht mit den vom NMT-Master erwarteten übereinstimmen oder falls keine Antwort erfolgt geht der Master von einem Slave-Fehler aus.

Guarding-Verfahren

Protokoll

Das im ersten Guarding-Telegramm übertragene Toggle-Bit (t) hat den Wert 0. Anschließend wechselt (toggelt) das Bit in jedem Guarding-Telegramm und signalisiert so, ob ein Telegramm verloren ging. In den restlichen sieben Bit gibt der Knoten seinen Netzwerk Status (s) an:

s | Status
4 = 0x04 | Stopped (früher: Prepared)
5 = 0x05 | Operational
127 = 0x7F | Pre-Operational
Beispiel

Die Garding Nachricht des Knotens 27 (0x1B) muss mit einem Remote Frame mit Identifier 0x71B (1819dez) angefragt werden. Wenn der Knoten Operational ist, wechselt das erste Datenbyte der Antwort-Nachricht zwischen 0x05 und 0x85, im Zustand Pre-Operational wechselt es zwischen 0x7F und 0xFF.

Guard Time und Life Time Factor

Wenn der Master die Guard-Nachrichten streng zyklisch anfordert, kann der Slave den Ausfall des Masters erkennen. Falls der Slave in diesem Fall innerhalb der eingestellten Node Life Time keine Nachrichtenanforderung vom Master erhält (Guarding-Fehler), geht er von einem Masterausfall aus (Watchdog-Funktion). Dann setzt er seine Ausgänge in den Fehlerzustand, sendet ein Emergency-Telegramm und fällt in den Zustand Pre-Operational zurück. Nach einem Guarding Time-Out kann das Verfahren durch Übertragen eines erneuten Guarding-Telegramms wieder angeregt werden.

Die Node Life-Time berechnet sich aus den Parametern Guard-Time (Objekt 0x100C) und Life-Time-Factor (Objekt 0x100D):

Life-Time = Guard-Time x Life-Time-Factor

Falls einer der beiden Parameter "0" ist (Default-Einstellung), erfolgt keine Überwachung des Masters (kein Life Guarding).

Heartbeat: Knotenüberwachung ohne Remote Frame

Beim Heartbeat-Verfahren senden die Knoten ihre jeweilige Statusmeldung zyklisch selbsttätig. Es kann daher auf Remote Frames verzichtet werden und es wird weniger Buslast erzeugt als beim Guarding-Verfahren.

Der Master sendet sein Heartbeat-Telegramm ebenfalls zyklisch, die Slaves können somit den Ausfall des Masters ebenfalls erkennen.

Heartbeat-Verfahren

Protokoll

Beim Heartbeat-Verfahren wird auf das Toggle-Bit verzichtet, die Knoten senden zyklisch Ihren Status (s). Siehe Guarding.


Prozessdatenobjekte (PDO)

Einführung

Bei vielen Feldbus-Systemen wird ständig das gesamte Prozessabbild übertragen - meist mehr oder weniger zyklisch. CANopen ist nicht auf dieses Kommunikationsprinzip beschränkt, da CAN durch die Multi-Master Buszugriffsregelung auch andere Möglichkeiten bietet: die Prozessdaten werden bei CANopen nicht im Master/Slave-Verfahren übertragen, sondern folgen dem Produzenten/Konsumenten-Modell (Producer/Consumer). Hierbei sendet ein Busknoten seine Daten von sich aus (Producer), beispielsweise durch den Eintritt eines Ereignisses getriggert; alle anderen Knoten hören mit und entscheiden anhand des Identifiers, ob sie sich für dieses Telegramm interessieren und verarbeiten es entsprechend (Consumer).

Bei CANopen werden die Prozessdaten in Segmente zu maximal 8 Byte aufgeteilt. Diese Segmente heißen Prozessdatenobjekte (PDOs). Die PDOs entsprechen jeweils einem CAN-Telegramm und werden über dessen spezifischen CAN-Identifier zugeordnet und in ihrer Priorität bestimmt. Man unterscheidet Empfangs-PDOs (Receive-PDOs , RxPDOs) und Sende-PDOs (Transmit-PDOs , TxPDOs), wobei die Bezeichnung jeweils aus Gerätesicht erfolgt: eine Ein-/Ausgabebaugruppe sendet ihre Eingangsdaten mit TxPDOs, und empfängt die Ausgangsdaten in den RxPDOs. Diese Bezeichnung wird im TwinCAT-System-Manager beibehalten.

Kommunikationsparameter

Die PDOs können je nach Applikationsanforderung mit unterschiedlichen Kommunikationsparametern versehen werden. Wie alle CANopen-Parameter stehen auch diese im Objektverzeichnis des Gerätes, auf sie kann über die Servicedatenobjekte zugegriffen werden. Die Parameter für die Empfangs-PDOs stehen bei Index 0x1400 (RxPDO1) und folgende, bis zu 512 RxPDOs können vorhanden sein (Bereich bis Index 0x15FF). Entsprechend finden sich die Einträge für die Sende-PDOs bei Index 0x1800 (TxPDO1) bis 0x19FF (TxPDO512).

Für den Prozessdatenaustausch stehen auf den Beckhoff Buskopplern bzw. Feldbus Koppler Box Baugruppen jeweils 16 RxPDO und TxPDOs zur Verfügung (bei den Economy- und LowCost-Kopplern BK5110 und LC5100 sowie den Feldbus Boxen sind es jeweils 5 PDOs, da diese Geräte über weniger Prozessdaten verfügen). Die FC510x CANopen Master Karte unterstützt - beschränkt durch die DPRAM-Größe - je Kanal bis zu 192 Sende- und 192 Empfangs-PDOs. Die CANopen Klemme EL6751 organisiert die Prozessabbild dynamisch, d.h. die Prozessdaten werden hintereinander geschrieben, was eine höhere Datenübertragungsrate ermöglicht. Im Slave Mode können bis zu 64 TxPDOs und 64 RxPDOs verarbeitet werden.

Für jedes vorhandene Prozessdatenobjekt ist ein zugehöriges Kommunikationsparameter-Objekt vorhanden. Der TwinCAT-Systemmanager ordnet die eingestellten Parameter automatisch den jeweiligen Objektverzeichniseinträgen zu. Im Folgenden werden diese Einträge samt ihrer Bedeutung für das Kommunikationsverhalten der Prozessdaten erläutert.

PDO-Identifier

Der wichtigste Kommunikationsparameter eines PDOs ist der CAN-Identifier (auch Communication Object Identifier, COB-ID genannt). Er dient zur Identifizierung der Daten und bestimmt deren Priorität beim Buszugriff. Für jedes CAN-Datentelegramm darf es nur einen Sendeknoten (Producer) geben; da CAN jedoch alle Nachrichten im Broadcast-Verfahren sendet kann ein Telegramm wie beschrieben von beliebig vielen Knoten empfangen werden (Consumer). Ein Knoten kann also seine Eingangsinformation mehreren Busteilnehmern gleichzeitig zur Verfügung stellen - auch ohne Weiterleitung durch einen logischen Busmaster. Der Identifier steht in Subindex 1 des Kommunikationsparametersatzes. Er ist als 32-Bit Wert kodiert, wobei die niederwertigsten 11 Bits (Bit 0...10) den eigentlichen Identifier enthalten. Die Datenbreite des Objektes von 32 Bit erlaubt auch den Eintrag von 29 Bit Identifiern nach CAN 2.0B, allerdings beziehen sich die Default-Identifier stets auf die üblichere 11Bit-Variante. Allgemein geht CANopen sparsam mit den zur Verfügung stehenden Identifiern um, sodass der Einsatz der 29Bit-Variante auf Sonderanwendungen beschränkt bleibt - und daher auch von den Beckhoff CANopen Geräten nicht unterstützt wird. Über das höchstwertige Bit (Bit 31) lässt sich das Prozessdatenobjekt aktivieren bzw. abschalten.

Im Anhang finden Sie eine komplette Identifier-Liste.

PDO Linking

Im System der Default-Identifier kommunizieren alle Knoten (hier: Slaves) mit einer Zentrale (Master), da kein Slave-Knoten per Default auf die Sende-Identifier eines anderen Slave-Knotens hört).

Default Identifier-Verteilung: Master/Slave

PDO Linking: Peer to Peer

Wenn das Consumer-Producer-Modell der CANopen PDOs zum direkten Datenaustausch zwischen Knoten (ohne Master) genutzt werden soll, so muss die Identifier-Verteilung entsprechend angepasst werden, damit der TxPDO-Identifier des Producers mit dem RxPDO-Identifier des Consumers übereinstimmt. Dieses Verfahren nennt man PDO Linking. Es ermöglicht beispielsweise den einfachen Aufbau von elektronischen Getrieben, bei denen mehrere Slave-Achsen gleichzeitig auf den Ist-Wert im TxPDO der Master-Achse hören.

PDO-Kommunikationsarten: Überblick

CANopen bietet vielfältige Möglichkeiten, die Prozessdaten zu übertragen (siehe auch: Hinweise zur PDO Parametrierung)

.

Ereignisgesteuert

Das "Ereignis" ist die Änderung eines Eingangswertes, die Daten werden sofort nach dieser Änderung verschickt. Durch die Ereignissteuerung wird die Busbandbreite optimal ausgenutzt, da nicht ständig das Prozessabbild, sondern nur die Änderung desselben übertragen wird. Gleichzeitig wird eine kurze Reaktionszeit erreicht, da bei Änderung eines Eingangswertes nicht erst auf die nächste Abfrage durch einen Master gewartet werden muss.

Ab CANopen Version 4 kann die ereignisgesteuerte Kommunikationsart mit einem zyklischen Update kombiniert werden. Auch wenn gerade kein Ereignis aufgetreten ist, werden ereignisgesteuerte TxPDO nach Ablauf des Event Timers verschickt. Beim Auftreten eines Ereignisses wird der Event Timer zurückgesetzt. Bei RxPDOs wird der Event Timer als Watchdog benutzt um das Eintreffen von ereignisgesteuerten PDOs zu überwachen. Sollte innerhalb der eingestellten Zeit kein PDO eingetroffen sein, so geht der Busknoten in den Fehlerzustand.

Gepollt

Die PDOs können auch durch Datenanforderungstelegramme (Remote Frames) gepollt werden. Auf diese Art kann etwa das Eingangsprozessabbild bei ereignisgesteuerten Eingängen auch ohne deren Änderung auf den Bus gebracht werden, beispielsweise bei einem zur Laufzeit ins Netz aufgenommenen Monitor- oder Diagnosegerät. Das zeitliche Verhalten von Remote Frame und Antworttelegramm hängt von den verwendeten CAN-Controllern ab (Bild8): Bausteine mit integrierter kompletter Nachrichtenfilterung ("FullCAN") beantworten ein Datenanforderungstelegramm in der Regel direkt und versenden sofort die im entsprechenden Sendebuffer stehenden Daten - dort muss die Applikation dafür Sorge tragen, dass die Daten ständig aktualisiert werden. CAN-Controller mit einfacher Nachrichtenfilterung (BasicCAN) reichen die Anforderung dagegen an die Applikation weiter, die nun das Telegramm mit den aktuellen Daten zusammenstellen kann. Das dauert länger, dafür sind die Daten aktuell. Beckhoff verwendet CAN Controller nach dem Basic CAN Prinzip.

Da dieses Geräteverhalten für den Anwender meist nicht transparent ist und zudem noch CAN-Controller in Verwendung sind, die Remote Frames überhaupt nicht unterstützen, kann die gepollte Kommunikationsart nur bedingt für den laufenden Betrieb empfohlen werden.

Synchronisiert

Nicht nur bei Antriebsanwendungen ist es sinnvoll, das Ermitteln der Eingangsinformation sowie das Setzen der Ausgänge zu synchronisieren. CANopen stellt hierzu das SYNC-Objekt zur Verfügung, ein CAN-Telegramm hoher Priorität ohne Nutzdaten, dessen Empfang von den synchronisierten Knoten als Trigger für das Lesen der Eingänge bzw. für das Setzen der Ausgänge verwendet wird.

PDO-Übertragungsart: Parametrierung

Der Parameter PDO-Übertragungsart (Transmission Type) legt fest, wie das Versenden des PDOs ausgelöst wird bzw. wie empfangene PDOs behandelt werden:

Übertragungsart | Zyklisch | Azyklisch | Synchron | Asynchron | Nur RTR
0 |  | X | X |  |
1-240 | X |  | X |  |
241-251 | - reserviert -
252 |  |  | X |  | X
253 |  |  |  | X | X
254, 255 |  |  |  | X |

Die Übertragungsart wird für RxPDOs in den Objekten 0x1400ff, Subindex 2, und für TxPDOs in den Objekten 0x1800ff, Subindex 2 parametriert.

Azyklisch Synchron

PDOs der Übertragungsart 0 arbeiten synchron, aber nicht zyklisch. Ein RxPDO wird erst nach Empfang des nächsten SYNC-Telegramms ausgewertet. Damit lassen sich beispielsweise Achsgruppen nacheinander mit neuen Zielpositionen versehen, die alle beim nächsten SYNC gültig werden - ohne dass ständig Stützstellen ausgegeben werden müssen. Ein Gerät, dessen TxPDO auf Übertragungsart 0 konfiguriert ist, ermittelt seine Eingangsdaten beim Empfang des SYNC (synchrones Prozessabbild) und sendet sie anschließend, falls die Daten einem Ereignis entsprechen (beispielsweise eine Eingangsänderung) eingetreten ist. Die Übertragungsart 0 kombiniert also den Sendegrund "ereignisgesteuert" mit dem Sende- (und möglichst Sample-) bzw. Verarbeitungs-Zeitpunkt "SYNC-Empfang".

Zyklisch Synchron

Bei Übertragungsart 1-240 wird das PDO zyklisch gesendet: nach jedem "n-ten" SYNC (n=1...240). Da die Übertragungsart nicht nur im Netz, sondern auch auf einem Gerät kombiniert werden dürfen, kann so z.B. ein schneller Zyklus für digitale Eingänge vereinbart werden (n=1), während die Daten der Analogeingänge in einem langsameren Zyklus übertragen werden (z.B. n=10). RxPDOs unterscheiden in der Regel nicht zwischen den Übertragungsarten 0...240: ein empfangenes PDO wird beim nächsten SYNC-Empfang gültig gesetzt. Die Zykluszeit (SYNC-Rate) kann überwacht werden (Objekt 0x1006), das Gerät reagiert bei SYNC-Ausfall dann entsprechend der Definition des Geräteprofils und schaltet z.B. seine Ausgänge in den Fehlerzustand.

Die FC510x Karte / EL6751Klemme unterstützen die synchrone Kommunikationsart vollständig: das Versenden des SYNC Telegramms ist mit der verknüpften Task gekoppelt, sodass zu jedem Taskbeginn neue Eingangsdaten zur Verfügung stehen. Das Ausbleiben eines synchronen PDOs wird erkannt und an die Applikation gemeldet.

Nur RTR

Die Übertragungsarten 252 und 253 gelten für Prozessdatenobjekte, die ausschließlich auf Anforderung durch ein Remote Frame übertragen werden. 252 ist synchron: beim Empfang des SYNCs werden die Prozessdaten ermittelt, gesendet werden sie nur auf Anforderung. 253 ist asynchron, hier werden die Daten ständig ermittelt und auf Anforderung verschickt. Diese Übertragungsart ist generell nicht zu empfehlen, da das Abholen der Eingangsdaten von einigen CAN Controllern nur unvollständig unterstützt wird. Da die CAN Controller zudem teilweise selbsttätig auf Remote Frames antworten (ohne vorher aktuelle Eingangs-Daten anzufordern), ist die Aktualität der gepollten Daten unter Umständen fragwürdig. Die Übertragungsart 252 und 253 wird aus diesen Gründen von den Beckhoff PC-Karten / Klemmen nicht unterstützt.

Asynchron

Die Übertragungsarten 254 + 255 sind asynchron oder auch ereignisgesteuert. Bei Übertragungsart 254 ist das Ereignis herstellerspezifisch, bei 255 im Geräteprofil definiert. Im einfachsten Fall ist das Ereignis die Veränderung eines Eingangswertes - es wird also jede Werteänderung übertragen. Die Asynchrone Übertragungsart kann mit dem Event Timer gekoppelt werden und liefert so auch dann Eingangsdaten, wenn aktuell kein Ereignis aufgetreten ist.

Inhibit Zeit

Über den Parameter "Inhibit-Zeit" kann ein "Sende-Filter" aktiviert werden, der die Reaktionszeit bei der relativ ersten Eingangsänderung nicht verlängert, aber bei unmittelbar darauffolgenden Änderungen aktiv ist. Die Inhibit-Zeit (Sendeverzögerungszeit) beschreibt die Zeitspanne, die zwischen dem Versenden zweier gleicher Telegramme mindestens abgewartet werden muss. Wenn die Inhibit-Zeit genutzt wird, so kann die maximale Busbelastung und damit die Latenzzeit im "worst case"-Fall ermittelt werden.

Die Beckhoff PC-Karten FC510x / EL6751 Klemme können zwar die Inhibit-Zeit auf Slave-Geräten parametrieren, unterstützen sie jedoch selbst nicht. Ein Spreizung der gesendeten PDOs (Sendeverzögerung) ergibt sich automatisch aus der gewählten Zyklus-Zeit der SPS - und es macht wenig Sinn, die SPS schneller laufen zu lassen als es die Busbandbreite zulässt. Zudem kann die Busbelastung wirkungsvoll über die synchrone Kommunikation beeinflusst werden.

Event Timer

Über Subindex 5 der Kommunikationsparameter lässt sich ein Ereignis-Timer (Event Timer) für Sende-PDOs festlegen. Der Ablauf dieses Timers wird als zusätzlich eingetretenes Ereignis für das entsprechende PDO gewertet, das PDO wird also dann gesendet. Wenn das Applikationsereignis während einer Timer-Periode auftritt, so wird ebenfalls gesendet und der Timer wird zurückgesetzt .

Bei Empfangs-PDOs wird der Timer-Parameter dazu verwendet, die Überwachungszeit für dieses PDO anzugeben: Die Applikation wird benachrichtigt, wenn kein entsprechendes PDO innerhalb der eingestellten Zeit empfangen wurde. Auf diese Art kann die FC510x / EL6751 jedes einzelne PDO individuell überwachen.

Hinweise zur PDO Parametrierung

PDO Mapping

Unter PDO-Mapping versteht man die Abbildung der Applikationsobjekte (Echtzeitdaten) aus dem Objektverzeichnis in die Prozessdatenobjekte. Die CANopen-Geräteprofile sehen für jeden Gerätetyp ein Default Mapping vor, das für die meisten Anwendungen passend ist. So bildet das Default Mapping für digitale E/A einfach die Ein- bzw. Ausgänge ihrer physikalischen Reihenfolge gemäß in die Sende- bzw. Empfangs-Prozessdatenobjekte ab.

Die Default-PDOs für Antriebe enthalten jeweils 2 Byte Steuer- bzw. Statuswort und Soll- bzw. Istwert für die betreffende Achse.

Das aktuelle Mapping kann über entsprechende Einträge im Objektverzeichnis, die sogenannten Mapping-Tabellen, gelesen werden. An erster Stelle der Mapping Tabelle (Subindex 0) steht die Anzahl der gemappten Objekte, die im Anschluss aufgelistet sind. Die Tabellen befinden sich im Objektverzeichnis bei Index 0x1600 ff. für die RxPDOs bzw. 0x1A00ff für die TxPDOs.

Digitale und analoge Ein-/Ausgabebaugruppen: E/A-Anzahl auslesen

Die aktuelle Anzahl der digitalen und analogen Ein-/Ausgänge lässt sich durch Auslesen der entsprechenden Applikationsobjekte im Objektverzeichnis ermitteln bzw. verifizieren:

Parameter | Adresse Objektverzeichnis
Anzahl digitale Eingangsbytes | Index 0x6000, Subindex 0
Anzahl digitale Ausgangsbytes | Index 0x6200, Subindex 0
Anzahl analoge Eingänge | Index 0x6401, Subindex 0
Anzahl analoge Ausgänge | Index 0x6411, Subindex 0

Variables Mapping

In der Regel genügt die Default-Belegung der Prozessdatenobjekte (Default Mapping) bereits den Anforderungen. Für spezielle Anwendungsfälle kann die Belegung jedoch verändert werden: So unterstützen beispielsweise die Beckhoff CANopen Buskoppler das variable Mapping, bei dem die Applikationsobjekte (Ein- und Ausgangsdaten) frei den PDOs zugeordnet werden können. Hierzu müssen die Mapping-Tabellen konfiguriert werden: Ab CANopen Version 4 ist nur noch die folgende Vorgehensweise zulässig, die genau eingehalten werden muss:

  1. Zunächst PDO löschen (0x1400ff, bzw. 0x1800ff, Subindex 1, Bit 31 auf "1" setzen)
  2. Subindex 0 im Mapping Parameter (0x1600ff bzw. 0x1A00ff) auf "0" setzen
  3. Mapping Einträge (0x1600ff bzw. 0x1A00ff, SI 1..8) verändern
  4. Subindex 0 im Mapping Parameter auf gültigen Wert setzen. Das Gerät überprüft dann die Einträge auf Konsistenz.
  5. PDO anlegen durch Eintragen d. Identifiers (0x1400ff bzw. 0x1800ff Subindex 1).

Dummy-Mapping

Eine weiteres Feature von CANopen ist das Mappen von Platzhaltern (Dummy-Einträgen). Als Platzhalter dienen die im Objektverzeichnis hinterlegten Datentyp-Einträge, die ja selbst nicht mit Daten versehen sind. Sind solche Einträge in der Mapping-Tabelle enthalten, so werden die entsprechenden Daten vom Gerät nicht ausgewertet. Auf diese Art können beispielsweise mehrere Antriebe über ein einziges CAN-Telegramm mit neuen Sollwerten versorgt werden oder Ausgänge auf mehreren Knoten auch im ereignisgesteuerten Modus gleichzeitig gesetzt werden.


PDO-Parametrierung

Auch wenn die meisten CANopen-Netze in der Default-Einstellung und damit mit minimalem Konfigurationsaufwand zufrieden stellend arbeiten, so sollte zumindest überprüft werden, ob die vorhandene Buslast vertretbar ist. 80% Busauslastung mag für ein rein zyklisch synchron arbeitendes Netzwerk akzeptabel sein, für ein rein ereignisgesteuertes Netz ist dieser Wert in der Regel zu hoch, da kaum Bandbreite für zusätzliche Ereignisse zur Verfügung steht.

Applikationsanforderungen berücksichtigen

Die Prozessdatenkommunikation sollte hinsichtlich einiger sich teilweise widersprechender Applikationsanforderungen optimiert werden. Hierzu gehören

  • Geringer Parametrieraufwand - optimal sind brauchbare Default-Werte
  • Garantierte Reaktionszeit auf bestimmte Ereignisse
  • Zykluszeit bei Regelvorgängen über den Bus
  • Sicherheitsreserven für Busstörungen (genügend Bandbreite für Nachrichtenwiederholung)
  • Maximale Baud-Rate - hängt von der maximalen Buslänge ab
  • Gewünschte Kommunikationspfade - wer spricht mit wem

Der bestimmende Faktor ist meist die zur Verfügung stehende Busbandbreite (Buslast).

Baud-Rate

Allgemein wird man beginnen, die Baud-Rate so groß zu wählen, wie es die Buslänge erlaubt. Hierbei sollte man berücksichtigen, dass serielle Bussysteme grundsätzlich um so empfindlicher auf Störeinflüsse reagieren, je höher die Baud-Rate ist. Es gilt also die Regel: so schnell wie nötig. 1000 kBit/s sind meist nicht erforderlich und uneingeschränkt nur bei Netzwerken innerhalb eines Schaltschrankes ohne galvanische Trennung der Busknoten empfehlenswert. Die Erfahrung zeigt auch, dass das Abschätzen der verlegten Buskabellänge häufig zu optimistisch erfolgt - die tatsächliche Kabellänge also größer ist.

Kommunikationsart bestimmen

Ist die Baud-Rate gewählt, so gilt es nun die PDO-Kommunikationsart(en) zu bestimmen. Diese haben unterschiedliche Vor- und Nachteile:

  • Die zyklisch synchrone Kommunikation ergibt eine genau vorhersagbare Busbelastung und damit ein definiertes Zeitverhalten - man könnte auch sagen, der worst case ist Standard. Sie ist einfach zu konfigurieren: mit dem Parameter SYNC-Rate kann die Buslast global eingestellt werden. Die Prozessabbilder werden synchronisiert: Eingänge werden gleichzeitig gelesen, Ausgangsdaten gleichzeitig gültig gesetzt - die Qualität dieser Synchronisierung ist allerdings implementierungsabhängig. Die BECKHOFF PC-Karten FC510x / CANopen-Klemme EL6751sind in der Lage, das CANopen Bussystems mit den Zyklen der Anwendungsprogramme (SPS bzw. NC) zu synchronisieren.

    Die garantierte Reaktionszeit ist bei der zyklisch synchronen Kommunikation immer mindestens so groß wie die Zykluszeit, und die Busbandbreite wird nicht optimal genutzt, da auch alte, sich nicht ändernde Daten ständig übertragen werden. Es ist aber möglich, das Netz durch die Wahl unterschiedlicher SYNC-Vielfacher (Transmission Types 1...240) zu optimieren und sich langsam ändernde Daten seltener zu übertragen als z.B. zeitkritische Eingänge. Berücksichtigt werden sollte jedoch, dass Eingangszustände, die kürzer anstehen als die Zykluszeit, nicht unbedingt kommuniziert werden. Ist dies gefordert, so sollten die entsprechenden PDOs für asynchrone Kommunikation vorgesehen werden.
  • Die ereignisgesteuerte, asynchrone Kommunikation ist optimal hinsichtlich Reaktionszeit und Verwendung der Busbandbreite - man könnte sie als "CAN pur" bezeichnen. Bei ihrer Wahl muss allerdings berücksichtigt werden, dass unter Umständen viele Ereignisse gleichzeitig auftreten und sich dann entsprechende Verzögerungszeiten einstellen können, bis ein relativ niederpriores PDO verschickt werden kann - eine seriöse Netzwerkplanung erfordert demnach eine worst-case Betrachtung. Auch muss, z.B. durch Verwendung der Inhibit Zeit, verhindert werden, dass ein sich ständig ändernder Eingang mit hoher PDO-Priorität den Bus blockiert (Fachbegriff: "babbling idiot"). Aus diesem Grund ist beispielsweise die Ereignissteuerung bei Analogeingängen im Geräteprofil per Default abgeschaltet und muss gezielt aktiviert werden. Über den Ablauf-Timer lassen sich Zeitfenster für die Sende-PDOs einstellen: Das Telegramm wird frühestens nach Ablauf der Inhibit-Zeit und spätestens nach Verstreichen des Ablauf-Timers erneut gesendet.
  • Parametriert wird die Kommunikationsart über den Transmission Type.

Es ist auch möglich, beide PDO Kommunikationsprinzipien zu kombinieren. So kann es beispielsweise sinnvoll sein, die Soll- und Istwerte einer Achsregelung zyklisch synchron auszutauschen, während Endschalter oder die mit Grenzwerten versehene Motortemperatur mit ereignisgesteuerten PDOs überwacht werden. So kombiniert man die Vorteile beider Prinzipien: Synchronität der Achskommunikation und kurze Reaktionszeit für Endschalter. Durch die dezentrale Grenzwertüberwachung wird trotz Ereignissteuerung vermieden, dass der Temperatur-Analogwert ständig zur Buslast beiträgt.

Im genannten Beispiel kann es auch sinnvoll sein, die Identifier-Verteilung gezielt zu beeinflussen, um den Buszugriff durch die Prioritätsverteilung zu optimieren: die höchste Priorität bekommt das PDO mit den Endschalterdaten, die niedrigste das mit den Temperaturwerten.

In aller Regel ist es aber nicht erforderlich, die Identifier-Verteilung anzupassen, um die Latenzzeit beim Buszugriff zu optimieren. Dagegen müssen die Identifier verändert werden, um eine masterlose Kommunikation zu ermöglichen (PDO Linking). Im genannten Beispiel könnte je ein RxPDO der Achsen denselben Identifier wie das TxPDO des Endschalters zugewiesen bekommen und dadurch eine Veränderung des Eingangswertes verzögerungsfrei empfangen.

Buslast bestimmen

In jedem Fall ist es sinnvoll, die Buslast zu bestimmen. Doch welche Buslastwerte sind zulässig bzw. sinnvoll? Unterscheiden sollte man zunächst den kurzfristigen Burst von Telegrammen, bei dem eine Anzahl CAN-Nachrichten direkt aufeinander folgt - kurzzeitig 100% Buslast. Das ist nur dann problematisch, wenn die dadurch ausgelöste Folge von Empfangsinterrupts auf den CAN-Knoten nicht mehr abgearbeitet werden kann, es also zu einem Datenüberlauf (CAN-Queue-Overrun) kommt. Das kann bei sehr hohen Baud-Raten (> 500 kBit/s) bei Knoten mit Software-Telegrammfilterung und relativ langsamen oder stark ausgelasteten Mikro-Controllern vorkommen, wenn z.B. eine direkte Folge von Remote Frames (diese enthalten keine Datenbytes und haben daher minimale Länge) auf dem Bus ist (bei 1 Mbit/s kann so alle 40 µs ein Interrupt erzeugt werden; Beispiel: ein NMT-Master sendet alle Guarding-Anforderungen direkt hintereinander). Durch geschickte Implementierung läßt sich das vermeiden, der Anwender sollte davon ausgehen können, dass von den Geräteanbietern hierfür Sorge getragen wurde. Ein Burst-Zustand ist z.B. direkt nach dem SYNC Telegramm völlig normal: vom SYNC getriggert versuchen alle synchron arbeitenden Knoten quasi gleichzeitig Ihre Daten zu senden, es finden viele Arbitrierungsvorgänge statt, die Telegramme sortieren sich nacheinander in der Reihenfolge ihrer Priorität auf den Bus. Das ist in der Regel unkritisch, da es sich hier um Telegramme mit einigen Datenbytes handelt und die Telegrammfolge damit zwar eine schnelle, aber überschaubare Folge von Empfangsinterrupts auf den CAN-Knoten auslöst.

Unter Buslast versteht man meist den gemittelten Wert über mehrere Primärzyklen, also z.B. das Mittel über 100-500 ms. CAN, und damit CANopen, ist zwar in der Lage, nahe 100% Buslast auf Dauer zu bewältigen, aber dann steht keine Bandbreite für eventuelle Wiederholungen bei Störeinflüssen, asynchrone Fehlermeldungen, Parametrierung etc. zur Verfügung. Selbstverständlich hat die vorherrschende Art der Kommunikation einen großen Einfluss auf die sinnvolle Buslast: ein komplett zyklisch synchron arbeitendes Netz befindet sich ja bereits nahe am worst case Zustand und kann daher mit Werten von 70-80% betrieben werden. Für ein rein ereignisgesteuertes Netz ist diese Zahl nur schwer anzugeben: es muss hier abgeschätzt werden, wie viele zusätzliche Ereignisse im Vergleich zum derzeitigen Anlagenzustand auftreten können und für wie lange das zu einem Burst führt - also wie lange die relativ niederpriorste Nachricht dann verzögert würde. Ist dieser Wert von der Applikation her zulässig, so ist die aktuelle Buslast akzeptabel. Als Näherungswert kann meist angenommen werden, dass ein ereignisgesteuertes Netz mit 30-40% Grundlast genügend Reserven für worst-case-Szenarien hat - diese Annahme macht aber eine sorgfältige Analyse nicht überflüssig, wenn Verzögerungen zu kritischen Anlagenzuständen führen können.

Die BECKHOFF CANopen-Master-Karten FC510x / CANopen-Masterklemme EL6751 zeigen die Buslast über den System Manager ein. Diese Variable kann auch in der SPS verarbeitet oder in der Visualisierung zur Anzeige gebracht werden.

Neben den Kommunikationsparametern ist natürlich die Datenbelegung der Prozessdatenobjekte entscheidend: das PDO Mapping.


BECKHOFF Feldbuskomponenten - Servicedatenobjekte (SDO)

BECKHOFF Feldbuskomponenten: CANopen Kommunikation

Servicedatenobjekte (SDO)

Die im Objektverzeichnis aufgeführten Parameter werden über Servicedatenobjekte gelesen und beschrieben. Diese SDOs sind Multiplexed Domains, also Datenstrukturen beliebiger Größe, die mit einem Multiplexor (Adresse) versehen sind. Der Multiplexor besteht aus 16-Bit-Index und 8-Bit-Subindex, die die entsprechenden Einträge im Objektverzeichnis adressieren.

SDO-Protokoll: Zugriff auf Objektverzeichnis

Die CANopen Buskoppler sind Server für das SDO, d.h. sie stellen auf Anforderung des Clients (z.B. des IPCs oder der SPS) Daten zur Verfügung (Upload) oder sie empfangen Daten vom Client (Download). Dabei findet ein Handshake zwischen Client und Server statt.

Wenn der zu übertragende Parameter bis zu 4 Bytes umfasst, genügt ein einziger Handshake (ein Telegrammpaar): Beim Download sendet der Client die Daten zusammen mit Index, Subindex und der Server bestätigt den Erhalt. Beim Upload fordert der Client die Daten an indem er Index und Subindex des gewünschten Parameters überträgt, und der Server sendet den Parameter (incl. Index und Subindex) in seinem Antworttelegramm.

Für Upload und Download wird das gleiche Identifier-Paar verwendet. In den stets 8 Byte großen Telegrammen sind im ersten Datenbyte die unterschiedlichen Dienste codiert. Bis auf die Objekte 1008h, 1009h und 100Ah (Gerätename, Hardware- bzw. Softwareversion) sind alle Parameter der Buskoppler nur bis zu 4 Byte groß, daher beschränkt sich diese Beschreibung auf die Übertragung dieser Daten im beschleunigten Transfer (Expedited Transfer).

Protokoll

Im Folgenden wird der Aufbau der SDO-Telegramme beschrieben.

Client -> Server, Upload Request

11-bit Identifier | 8 Byte Nutzdaten
0x600 (=1536dez) + Node-ID | 0x40 | Index0 | Index1 | SubIdx | 0x00 | 0x00 | 0x00 | 0x00

Parameter | Erläuterung
Index0 | Index Low-Byte (Unsigned16, LSB)
Index1 | Index High-Byte (Unsigned16, MSB)
SubIdx | Subindex (Unsigned8)

Client -> Server, Upload Response

11-bit Identifier | 8 Byte Nutzdaten
0x580 (=1408dez) + Node-ID | 0x4x | Index0 | Index1 | SubIdx | Data0 | Data1 | Data2 | Data3

Parameter | Erläuterung
Index0 | Index Low-Byte (Unsigned16, LSB)
Index1 | Index High-Byte (Unsigned16, MSB)
SubIdx | Subindex (Unsigned8)
Data0 | Daten Low-Low-Byte (LLSB)
Data3 | Daten High-High-Byte (MMSB)

Parameter des Datentyps Unsigned8 werden im Byte D0 übertragen, Parameter des Typs Unsigned16 in D0 und D1.

Die Anzahl der gültigen Datenbytes ist im ersten CAN-Datenbyte (0x4x) wie folgt codiert:

Anzahl Parameter-Bytes | 1 | 2 | 3 | 4
Erstes CAN-Datenbyte | 0x4F | 0x4B | 0x47 | 0x43

Client -> Server, Download Request

11-bit Identifier | 8 Byte Nutzdaten
0x600 (=1536dez) + Node-ID | 0x22 | Index0 | Index1 | SubIdx | Data0 | Data1 | Data2 | Data3

Parameter | Erläuterung
Index0 | Index Low-Byte (Unsigned16, LSB)
Index1 | Index High-Byte (Unsigned16, MSB)
SubIdx | Subindex (Unsigned8)
Data0 | Daten Low-Low-Byte (LLSB)
Data3 | Daten High-High-Byte (MMSB)

Optional ist es möglich, im ersten CAN-Datenbyte die Anzahl der gültigen Parameter-Datenbytes anzugeben

Anzahl Parameter-Bytes | 1 | 2 | 3 | 4
Erstes CAN-Datenbyte | 0x2F | 0x2B | 0x27 | 0x23

In der Regel ist das jedoch nicht erforderlich, da jeweils nur die niederwertigen Datenbytes bis zur Länge des zu beschreibenden Objektverzeichniseintrags ausgewertet werden. Ein Download von Daten bis zu 4 Byte Länge kann daher bei BECKHOFF Busknoten immer mit 22h im ersten CAN-Datenbyte erfolgen.

Client -> Server, Download Response

11-bit Identifier | 8 Byte Nutzdaten
0x580 (=1408dez) + Node-ID | 0x60 | Index0 | Index1 | SubIdx | 0x00 | 0x00 | 0x00 | 0x00

Parameter | Erläuterung
Index0 | Index Low-Byte (Unsigned16, LSB)
Index1 | Index High-Byte (Unsigned16, MSB)
SubIdx | Subindex (Unsigned8)

Abbruch Parameterkommunikation

Im Falle einer fehlerhaften Parameterkommunikation wird diese abgebrochen. Client bzw. Server senden dazu ein SDO-Telegramm folgender Struktur:

11-bit Identifier | 8 Byte Nutzdaten
0x580 (Client) oder 0x600(Server) + Node-ID | 0x80 | Index0 | Index1 | SubIdx | Error0 | Error1 | Error2 | Error3

Parameter | Erläuterung
Index0 | Index Low-Byte (Unsigned16, LSB)
Index1 | Index High-Byte (Unsigned16, MSB)
SubIdx | Subindex (Unsigned8)
Error0 | SDO Fehler-Code Low-Low-Byte (LLSB)
Error3 | SDO Fehler-Code High-High-Byte (MMSB)

Liste der SDO-Fehler-Codes (Abbruch-Grund des SDO-Transfers):

SDO Fehler-Code | Erläuterung
0x05 03 00 00 | Toggle Bit nicht geändert
0x05 04 00 01 | SDO Command Specifier ungültig oder unbekannt
0x06 01 00 00 | Zugriff auf dieses Objekt wird nicht unterstützt
0x06 01 00 02 | Versuch, auf einen Read_Only Parameter zu schreiben
0x06 02 00 00 | Objekt nicht im Objektverzeichnis vorhanden
0x06 04 00 41 | Objekt kann nicht ins PDO gemappt werden
0x06 04 00 42 | Anzahl und/oder Länge der gemappten Objekte würde PDO Länge überschreiten
0x06 04 00 43 | Allgemeine Parameter Inkompatibilität
0x06 04 00 47 | Allgemeiner interner Fehler im Gerät
0x06 06 00 00 | Zugriff wegen Hardware-Fehler abgebrochen
0x06 07 00 10 | Datentyp oder Parameterlänge stimmen nicht überein oder sind unbekannt
0x06 07 00 12 | Datentyp stimmt nicht überein, Parameterlänge zu groß
0x06 07 00 13 | Datentyp stimmt nicht überein, Parameterlänge zu klein
0x06 09 00 11 | Subindex nicht vorhanden
0x06 09 00 30 | allgemeiner Wertebereich-Fehler
0x06 09 00 31 | Wertebereich-Fehler: Parameter wert zu groß
0x06 09 00 32 | Wertebereich-Fehler: Parameter wert zu klein
0x06 0A 00 23 | Resource nicht verfügbar
0x08 00 00 21 | Zugriff wegen lokaler Applikation nicht möglich
0x08 00 00 22 | Zugriff wegen aktuellem Gerätestatus nicht möglich

Für die Register-Kommunikation (Index 0x4500, 0x4501) wurden weitere, herstellerspezifische Fehler-Codes eingeführt:

SDO Fehler-Code | Erläuterung
0x06 02 00 11 | ungültige Tabelle: Tabelle oder Kanal nicht vorhanden
0x06 02 00 10 | ungültiges Register: Tabelle nicht vorhanden
0x06 01 00 22 | Schreibschutz noch gesetzt
0x06 07 00 43 | fehlerhafte Anzahl Funktionsargumente
0x06 01 00 21 | Funktion noch aktiv, später erneut versuchen
0x05 04 00 40 | Allgemeiner Routing Fehler
0x06 06 00 21 | Fehler Zugriff BC Tabelle
0x06 09 00 10 | Allgemeiner Fehler bei Kommunikation mit Klemme
0x05 04 00 47 | Time-out bei Kommunikation mit Klemme


Objektverzeichnis - Struktur

Im CANopen-Objektverzeichnis werden alle für den Buskoppler relevanten CANopen-Objekte eingetragen. Das Objektverzeichnis ist in drei verschiedene Bereiche aufgeteilt:

  1. Kommunikationsspezifischer Profilbereich (Index 0x1000 - 0x1FFF).
    Enthält die Beschreibung aller spezifischen Parameter für die Kommunikation.
  2. Herstellerspezifischer Profilbereich (Index 0x2000 - 0x5FFF).
    Enthält die Beschreibung herstellerspezifischen Einträge.
  3. Standardisierter Geräteprofilbereich (0x6000 - 0x9FFF).
    Enthält die Objekte für das Geräteprofil nach DS-401.

Jeder Eintrag im Objektverzeichnis ist durch einen 16-Bit-Index gekennzeichnet. Falls ein Objekt aus mehreren Komponenten besteht (z.B. Objekttyp Array oder Record), sind die Komponenten über einen 8-Bit-Subindex gekennzeichnet. Der Objektname beschreibt die Funktion eines Objekts, das Datentyp-Attribut spezifiziert den Datentyp des Eintrags. Über das Zugriffsattribut ist spezifiziert, ob ein Eintrag nur gelesen werden kann, nur geschrieben werden oder gelesen und geschrieben werden darf.

Kommunikationsspezifischer Bereich

In diesem Bereich des Objektverzeichnisses stehen alle für die Kommunikation des CANopen-Buskopplers notwendigen Parameter und Objekte. Im Bereich 0x1000 - 0x1018 stehen verschiedene, allgemeine kommunikationsspezifische Parameter (z.B. der Gerätename).

Die Kommunikationsparameter (z.B. Identifier) der Receive-PDOs stehen im Bereich 0x1400 - 0x140F (plus Subindex). Die Mapping-Parameter der Receive-PDOs stehen im Bereich von 0x1600 - 0x160F (plus Subindex). Die Mappingparameter enthalten die Querverweise auf die Applikationsobjekte, die in die PDOs gemappt sind und die Datenbreite des entsprechenden Objektes (siehe auch Abschnitt PDO-Mapping).

Die Kommunikations- und Mapping-Parameter der Transmit-PDOs stehen in den Bereichen 0x1800 - 0x180F bzw. 0x1A00 - 0x1A0F.

Herstellerspezifischer Bereich

In diesem Bereich finden sich Einträge, die BECKHOFF spezifisch sind, z.B.:

  • Datenobjekte für Sonderklemmen
  • Objekte für die Register-Kommunikation, über die auf alle internen Register der Buskoppler und Busklemmen zugegriffen werden kann.
  • Objekte für die vereinfachte Konfiguration der PDOs

Standardisierter Geräteprofilbereich

Im Standardisierten Geräteprofilbereich wird das CANopen-Geräteprofil DS-401 Version 1 unterstützt. Für Analogeingänge stehen dabei Funktionen zur Verfügung, um die Kommunikation in der ereignisgesteuerten Betriebsart an die Applikationsanforderungen anzupassen und die Buslast zu minimieren:

  • Grenzwertüberwachung
  • Deltafunktion
  • Ereignissteuerung aktivieren / deaktivieren


Objektliste

Hinweis Die Objekte aus dem Objektverzeichnis sind per SDO-Zugriff, jedoch nicht generell über die Konfigurations-Software KS2000 erreichbar. Dagegen sind alle Register, die per KS2000 konfiguriert werden können, auch per SDO-Zugriff auf das Objektverzeichnis (Objekte 0x4500 und 0x4501) erreichbar - wenn auch nicht mit dem gleichen Bedienungskomfort wie mit der Konfigurations-Software KS2000.
Parameter | Index | BK5120/BK515x | BK5110 | LC5100 | BX5100/BC5150 | CX8051/B510
Gerätetyp | 0x1000 | x | x | x |  | x
Fehlerregister | 0x1001 | x | x | x | x | x *
Fehlerspeicher | 0x1003 | x | x | x |  | x *
Sync Identifier | 0x1005 | x | x | x | x | x
Sync Intervall | 0x1006 | x | x | x | x | x
Gerätename | 0x1008 | x | x | x | x | x *
Hardware-Version | 0x1009 | x | x | x |  | x *
Software-Version | 0x100A | x | x | x | x | x *
Knotennummer | 0x100B | x | x | x |  |
Guard Time | 0x100C | x | x | x | x | x
Life Time Factor | 0x100D | x | x | x | x | x
Guarding Identifier | 0x100E | x | x | x |  |
Parameter speichern | 0x1010 | x | x | x |  |
Default-Werte laden | 0x1011 | x | x | x |  |
Emergency Identifier | 0x1014 | x | x | x |  |
Consumer Heartbeat Time | 0x1016 | x | x | x | x | x
Producer Heartbeat Time | 0x1017 | x | x | x | x | x
Gerätekennung (Identity Object) | 0x1018 | x | x | x | x | x *
Server SDO Parameter | 0x1200 | x | x | x |  |
Kommunikationsparameter 1.-5. RxPDO | 0x1400 - 0x1404 | x | x | x | x | x
Kommunikationsparameter 6.-16. RxPDO | 0x1405 - 0x140F | x |  |  | x | x
Kommunikationsparameter 17.-32. RxPDO | 0x1410 - 0x141F |  |  |  | x nur BX5100 | x
Mapping 1.-5. RxPDO | 0x1600 - 0x1604 | x | x | x | x | x
Mapping 6. -16. RxPDO | 0x1605 - 0x160F | x |  |  | x | x
Mapping 17. -32. RxPDO | 0x1610 - 0x161F |  |  |  | x nur BX5100 | x
Kommunikationsparameter 1.-5. TxPDO | 0x1800 - 0x1804 | x | x | x | x | x
Kommunikationsparameter 6.-16. TxPDO | 0x1805 - 0x180F | x |  |  | x | x
Kommunikationsparameter 17.-32. TxPDO | 0x1810 - 0x181F |  |  |  | x nur BX5100 | x
Mapping 1.-5. TxPDO | 0x1A00 - 0x1A04 | x | x | x | x | x
Mapping 6. -16. TxPDO | 0x1A05 - 0x1A0F | x |  |  | x | x
Mapping 17. -32. TxPDO | 0x1A10 - 0x1A1F |  |  |  | x nur BX5100 | x
Merkerbereich %MB0-511 | 0x2F00 |  |  |  | x |
Merkerbereich %MB511-1023 | 0x2F01 |  |  |  | x |
Merkerbereich %MB1024-1535 | 0x2F02 |  |  |  | x |
Merkerbereich %MB1536-2047 | 0x2F03 |  |  |  | x |
Merkerbereich %MB2048-2559 | 0x2F04 |  |  |  | x |
Merkerbereich %MB2560-3071 | 0x2F05 |  |  |  | x |
Merkerbereich %MB3072-3584 | 0x2F06 |  |  |  | x |
Merkerbereich %MB3585-4095 | 0x2F07 |  |  |  | x |
3-Byte Sonderklemmen, Eingangsdaten | 0x2600 | x |  |  |  |
3-Byte Sonderklemmen, Ausgangsdaten | 0x2700 | x |  |  |  |
4-Byte Sonderklemmen, Eingangsdaten | 0x2800 | x |  |  |  |
4-Byte Sonderklemmen, Ausgangsdaten | 0x2900 | x |  |  |  |
5-Byte Sonderklemmen, Eingangsdaten | 0x2A00 | x |  |  |  |
5-Byte Sonderklemmen, Ausgangsdaten | 0x2B00 | x |  |  |  |
6-Byte Sonderklemmen, Eingangsdaten | 0x2C00 | x |  |  |  |
6-Byte Sonderklemmen, Ausgangsdaten | 0x2D00 | x |  |  |  |
8-Byte Sonderklemmen, Eingangsdaten | 0x3000 | x |  |  |  |
8-Byte Sonderklemmen, Ausgangsdaten | 0x3100 | x |  |  |  |
Register-Kommunikation, Busknoten | 0x4500 | x | x | x |  |
Register-Kommunikation, Busklemme/Erweiterungsbox | 0x4501 | x | x | x |  |
PDOs aktivieren | 0x5500 | x | x | x |  |
NetId | 0x5FFE |  |  |  | x |
Digitale Eingänge | 0x6000 | x | x | x |  |
Interrupt-Maske | 0x6126 | x | x | x |  |
Digitale Ausgänge | 0x6200 | x | x | x |  |
Analoge Eingänge | 0x6401 | x |  |  |  |
Analoge Ausgänge | 0x6411 | x |  |  |  |
Ereignissteuerung, analoge Eingänge | 0x6423 | x |  |  |  |
Oberer Grenzwert, analoge Eingänge | 0x6424 | x |  |  |  |
Unterer Grenzwert, analoge Eingänge | 0x6425 | x |  |  |  |
Deltafunktion, analoge Eingänge | 0x6426 | x |  |  |  |

* Wird ein ADS Server angemeldet, werden diese Objekte per ADS Notification an die SPS weitergeleitet und müssen dort beantwortet werden.


Objekte und Daten

Gerätetyp

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1000 | 0 | Device Type | Unsigned32 | ro | N | 0x00000000 | Angabe des Gerätetyps

Der 32Bit-Wert ist in zwei 16Bit-Felder unterteilt:

MSB | LSB
Additional Information | Geräteprofil-Nummer
0000 0000 0000 wxyz | 0x191 (401dez)

Die Additional Information enthält Angaben über die Signalarten des E/A-Gerätes:
z=1 bedeutet digitale Eingänge,
y=1 bedeutet digitale Ausgänge,
x=1 bedeutet analoge Eingänge,
w=1 bedeutet analoge Ausgänge.
Ein BK5120 mit digitalen und analogen Eingängen, aber ohne Ausgänge, liefert also 0x00 05 01 91 zurück.

Sonderklemmen (z.B. serielle Schnittstellen, PWM-Ausgänge, Inkrementalencoder-Eingänge) werden nicht berücksichtigt. Ein Koppler, der z.B. nur serielle Schnittstellenklemmen KL6001 bestückt hat, liefert also 0x00 00 01 91 zurück.

Der Gerätetyp liefert nur eine grobe Klassifizierung des Gerätes. Für die detaillierte Identifizierung des Buskopplers und der angesteckten Klemmen kann das Klemmenbezeichnungs-Register des Buskopplers gelesen werden (Details siehe Register-Kommunikation Index 0x4500).

Fehlerregister

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1001 | 0 | Error Register | Unsigned8 | ro | N | 0x00 | Fehlerregister

Der 8Bit-Wert ist wie folgt kodiert:

Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0
ManSpec. | reserviert | reserviert | Comm. | reserviert | reserviert | reserviert | Generic

ManSpec. Herstellerspezifischer Fehler, wird in Objekt 1003 genauer spezifiziert.

Comm. Kommunikationsfehler (Overrun CAN)

Generic Ein nicht näher spezifizierter Fehler ist aufgetreten (Flag ist bei jeder Fehlermeldung gesetzt)

Fehlerspeicher

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1003 | 0x00 | Predefined error field (Fehlerspeicher) | Unsigned8 | rw | N | 0x00 | Objekt 1003h enthält eine Beschreibung der im Gerät aufgetretenen Fehler - Subindex 0 die Anzahl der gespeicherten Fehlerzustände.
 | 1 | Actual error | Unsigned32 | ro | N | Keiner | Letzter aufgetretener Fehlerzustand
 | ... | ... | ... | -- | ... | ... | ...
 | 10 | Standard error field | Unsigned32 | ro | N | Keiner | Es werden maximal 10 Fehlerzustände gespeichert.

Der 32Bit-Wert im Fehlerspeicher ist in zwei 16Bit-Felder unterteilt:

MSB | LSB
Additional Code | Error Code

Der Additional Code enthält den Error Trigger (siehe Emergency-Objekt) und damit eine detaillierte Fehlerbeschreibung.

Neue Fehler werden jeweils an Subindex 1 gespeichert, alle anderen Sub-indices werden entsprechend inkrementiert. Durch Schreiben einer 0 auf Subindex 0 wird der gesamte Fehlerspeicher gelöscht.

Wenn kein Fehler seit dem Power-On aufgetreten ist, dann besteht Objekt 0x1003 nur aus Subindex 0 mit eingetragener 0. Durch einen Reset oder Power Cycle wird der Fehlerspeicher gelöscht.

Wie bei CANopen üblich wird das LSB zuerst und das MSB zuletzt übertragen.

Sync Identifier

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1005 | 0 | COB-ID Sync Message | Unsigned32 | rw | N | 0x80000080 | Identifier der SYNC-Nachricht

Die unteren 11 Bit des 32-Bit Wertes enthalten den Identifier (0x80=128dez). Bit 30 gibt Auskunft, ob das Gerät das SYNC-Telegramm sendet (1) oder nicht (0). Die CANopen E/A Geräte empfangen das SYNC Telegramm, dementsprechend ist Bit 30=0. Bit 31 ist aus Gründen der Abwärtskompatibilität ohne Bedeutung.

Sync Intervall

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1006 | 0 | Communication cycle period | Unsigned32 | rw | N | 0x00000000 | Länge des SYNC-Intervalls in µs.

Wenn hier ein Wert ungleich Null eingetragen wird, so geht der Busknoten in den Fehlerzustand, wenn beim synchronen PDO-Betrieb innerhalb der Watchdog-Zeit kein SYNC-Telegramm empfangen wurde. Die Watchdog- Zeit entspricht hierbei dem 1,5-fachen der eingestellten communication cycle period - es kann also der vorgesehene SYNC-Abstand eingetragen werden.

Das E/A Update wird bei den Beckhoff CANopen Busknoten direkt nach Empfang des SYNC Telegramms durchgeführt, wenn folgende Voraussetzungen gegeben sind:
- Firmwarestand ab C0 (ab CANopen Version 4.01).
- alle PDOs, die über Daten verfügen, auf die synchrone Kommunikationsart eingestellt (0..240).
- Sync Intervall in Objekt 0x1006 eingetragen und (Sync Intervall x kleinste PDO Übertragungsart) kleiner als 90ms.

Die Baugruppen sind dann durchsynchronisiert.

Gerätename

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1008 | 0 | Manufacturer Device Name | Visible String | ro | N | BK51x0, LC5100, IPxxxx-B510 od. ILxxxx-B510 | Gerätename des Busknotens

Da der zurück gelieferte Wert größer als 4 Bytes ist, wird das segmentierte SDO-Protokoll zur Übertragung verwendet.

Hardware-Version

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1009 | 0 | Manufacturer Hardware-Version | Visible String | ro | N | - | Hardwareversionsnummer des Busknotens

Da der zurück gelieferte Wert größer als 4 Bytes ist, wird das segmentierte SDO-Protokoll zur Übertragung verwendet.

Software-Version

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x100A | 0 | Manufacturer Software-Version | Visible String | ro | N | - | Softwareversionsnummer des Busknotens

Da der zurück gelieferte Wert größer als 4 Bytes ist, wird das segmentierte SDO-Protokoll zur Übertragung verwendet.

Knotennummer

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x100B | 0 | Node-ID | Unsigned32 | ro | N | keiner | eingestellte Knotennummer

Die Knotennummer wird aus Kompatibilitätsgründen unterstützt.

Guard Time

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x100C | 0 | Guard Time [ms] | Unsigned16 | rw | N | 0 | Abstand zwischen zwei Guard Telegrammen. wird durch NMT-Master oder Konfigurationstool eingestellt.

Life Time Factor

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x100D | 0 | Life Time Factor | Unsigned8 | rw | N | 0 | Life Time Factor x Guard Time = Life Time (Watchdog für Life Guarding)

Wenn innerhalb der Life Time kein Guarding-Telegramm empfangen wurde, geht der Knoten in den Fehlerzustand. Wenn Life Time Factor und/oder Guard Time = 0 sind, so führt der Knoten kein Lifeguarding durch, kann aber dennoch vom Master überwacht werden (Node Guarding).

Guarding Identifier

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x100E | 0 | COB-ID guarding protocol | Unsigned32 | ro | N | 0x000007xy, xy = NodeID | Identifier des Guarding Protokolls

Der Guarding Identifier wird aus Kompatibilitätsgründen unterstützt. Seit CANopen Version 4 darf der Guarding Identifier nicht mehr verändert werden.

Parameter speichern

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1010 | 0 | Store Parameter | Unsigned8 | ro | N | 1 | Anzahl der Speicheroptionen
 | 1 | store all parameters | Unsigned32 | rw | N | 1 | Speichert alle (speicherbaren) Parameter

Durch Schreiben der Signatur save im ASCII-Code (hexadezimal 0x65766173) auf Subindex 1 werden die aktuellen Parameter nichtflüchtig gespeichert. (Bytefolge auf dem Bus incl. SDO Protokoll: 0x23 0x10 0x10 0x01 0x73 0x61 0x76 0x65).

Der Speichervorgang dauert ca. 3 Sec., bei Erfolg wird anschließend durch das entsprechende TxSDO (0x60 im ersten Byte) bestätigt. Da der Buskoppler während des Speichervorgangs keine CAN-Telegramme senden und empfangen kann, kann nur gespeichert werden, wenn der Knoten im Zustand Pre-Operational ist. Es wird empfohlen, vor dem Abspeichern das gesamte Netz in den Zustand Pre-Operational zu versetzen. Dadurch wird ein Puffer-Überlauf vermieden.

Gespeichert werden:

  • Die aktuelle Klemmenbestückung (Anzahl jeder Klemmenkategorie)
  • Alle PDO Parameter (Identifier, Transmission Type, Inhibit Zeit, Mapping).
Hinweis Anschließend gelten die gespeicherten Identifier, nicht mehr die aus der Knotenadresse abgeleiteten Default-Identifier. Änderungen der DIP-Schalter-Stellung beeinflussen die PDOs dann nicht mehr!
  • Alle SYNC Parameter
  • Alle Guarding Parameter
  • Grenzwerte, Deltawerte und Interrupt Enable für Analogeingänge

Die in den Klemmen über Register-Kommunikation direkt gespeicherten Parameter werden dort sofort nichtflüchtig gespeichert.

Default-Werte laden

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1011 | 0 | Restore Parameter | Unsigned8 | ro | N | 4 | Anzahl der Rücksetze-Optionen
 | 1 | Restore all parameters | Unsigned32 | rw | N | 1 | Setzt alle Parameter auf Default-Werte zurück
 | 4 | Set manufacturer Defaults | Unsigned32 | rw | N | 1 | Setzt alle Koppler-Parameter auf Hersteller-Einstellungen zurück (auch Register)

Durch Schreiben der Signatur load im ASCII-Code (hexadezimal 0x64616F6C) auf Subindex 1 werden alle Parameter beim nächsten Booten (Reset) auf Default-Werte (Auslieferungszustand) zurückgesetzt.

(Bytefolge auf dem Bus incl. SDO Protokoll: 0x23 0x11 0x10 0x01 0x6C 0x6F 0x61 0x64).

Hierdurch werden die Default-Identifier für die PDOs wieder aktiv.

Emergency Identifier

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1014 | 0 | COB-ID Emergency | Unsigned32 | rw | N | 0x00000080, + NodeID | Identifier des Emergency-Telegramms

Die unteren 11 Bit des 32-Bit Wertes enthalten den Identifier (0x80=128dez). Über das MSBit lässt sich einstellen ob das Gerät das Emergency-Telegramm sendet (1) oder nicht (0).

Alternativ lässt sich die Diagnose-Funktion der Busknoten auch durch das Bit Gerätediagnose in der K-Buskonfiguration (siehe Objekt 0x4500) abschalten.

Consumer Heartbeat Time

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1016 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 2 | Die Consumer Heartbeat Time beschreibt die erwartete Heartbeat-Zykluszeit sowie die Node-ID des überwachten Knotens
 | 1 | Consumer Heartbeat Time | Unsigned32 | rw | N | 0 | Watchdog Zeit in ms und Node-ID des überwachten Knotens

Der 32Bit-Wert wird wie folgt verwendet:

MSB |  | LSB
Bit 31...24 | Bit 23...16 | Bit 15...0
reserviert (0) | Node-ID (Unsigned8) | heartbeat time in ms (Unsigned16)

Aus der Node-ID ergibt sich der überwachte Identifier durch die Default-Identifier-Verteilung: Guard-ID = 0x700 + Node-ID.

Wie bei CANopen üblich wird das LSB zuerst und das MSB zuletzt übertragen.

Producer Heartbeat Time

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1017 | 0 | Producer Heartbeat Time | Unsigned16 | rw | N | 0 | Zeitspanne in ms zwischen zwei gesendeten Heartbeat-Telegrammen

Gerätekennung (Identity Object)

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1018 | 0 | Identity Object: Anzahl Elemente | Unsigned8 | ro | N | 4 | Das Identity Objekt enthält allgemeine Angaben zu Art und Ausgabestand des Gerätes.
 | 1 | Vendor ID | Unsigned32 | ro | N | 0x00000002 | Herstellerkennung. Beckhoff hat die Vendor-ID 2
 | 2 | Product Code | Unsigned32 | ro | N | abhängig vom Produkt | Gerätekennung
 | 3 | Revision Number | Unsigned32 | ro | N | - | Versionsnummer
 | 4 | Serial Number | Unsigned32 | ro | N | - | Produktionsdatum Low-Wort, High-Byte: Kalenderwoche (dez), Low-Wort, Low-Byte: Kalenderjahr

Produkt | Product Code
BK5120 | 0x11400
BK5110 | 0x113F6
LC5100 | 0x113EC
IPwxyz-B510 | 0x2wxyz
IL2301-B510 | 0x2008FD

Server SDO Parameter

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1200 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 2 | Kommunikationsparameter des Server SDOs. Subindex 0: Anzahl der folgenden Parameter
 | 1 | COB-ID Client ->Server | Unsigned32 | ro | N | 0x000006xy, xy=Node-ID | COB-ID RxSDO (Client -> Server)
 | 2 | COB-ID Server ->Client | Unsigned32 | ro | N | 0x00000580 + Node-ID | COB-ID TxSDO (Client -> Server)

Aus Gründen der Abwärtskompatibilität im Objektverzeichnis enthalten.

Kommunikationsparameter 1. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1400 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des ersten Receive-PDOs. Subindex 0: Anzahl der folgenden Parameter
 | 1 | COB-ID | Unsigned32 | rw | N | 0x000002xy, xy=Node-ID | COB-ID (Communication Object Identifier) RxPDO1
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Aus Gründen der Abwärtskompatibilität vorhanden, im RxPDO nicht genutzt.
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer. Definiert Watchdog Zeit für Empfangsüberwachung des PDOs.

Subindex 1 (COB-ID): Die unteren 11 Bit des 32-Bit Wertes (Bits 0-10) enthalten den CAN-Identifier, das MSBit (Bit 31) gibt Auskunft, ob das PDO aktuell existiert (0) oder nicht (1), Bit 30 teilt mit, ob ein RTR-Zugriff auf dieses PDO zulässig ist (0) oder nicht (1). Es ist nicht erlaubt, den Identifier (Bit 0-10) zu ändern, während das Objekt existiert (Bit 31=0). Der Subindex 2 enthält die Übertragungsart (siehe Einführung PDOs).

Kommunikationsparameter 2. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1401 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des zweiten Receive-PDOs.
 | 1 | COB-ID | Unsigned32 | rw | N | 0x000003xy, xy=Node-ID | COB-ID (Communication Object Identifier) RxPDO2
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Aus Gründen der Abwärtskompatibilität vorhanden, im RxPDO nicht genutzt.
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer. Definiert Watchdog Zeit für Empfangsüberwachung des PDOs.

Kommunikationsparameter 3. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1402 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des dritten Receive-PDOs.
 | 1 | COB-ID | Unsigned32 | rw | N | 0x000004xy, xy=Node-ID | COB-ID (Communication Object Identifier) RxPDO3
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Aus Gründen der Abwärtskompatibilität vorhanden, im RxPDO nicht genutzt.
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer. Definiert Watchdog Zeit für Empfangsüberwachung des PDOs.

Kommunikationsparameter 4. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1403 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des vierten Receive-PDOs.
 | 1 | COB-ID | Unsigned32 | rw | N | 0x000005xy, xy=Node-ID | COB-ID (Communication Object Identifier) RxPDO4
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Aus Gründen der Abwärtskompatibilität vorhanden, im RxPDO nicht genutzt.
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer. Definiert Watchdog Zeit für Empfangsüberwachung des PDOs.

Kommunikationsparameter 5.-16. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1404 - 0x140F (je nach Geräte Typ) | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des 5. bis 16. Receive-PDOs.
 | 1 | COB-ID | Unsigned32 | rw | N | 0x8000000 | COB-ID (Communication Object Identifier) RxPDO5...16
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Aus Gründen der Abwärtskompatibilität vorhanden, im RxPDO nicht genutzt.
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer. Definiert Watchdog Zeit für Empfangsüberwachung des PDOs.

Die Anzahl der RxPDOs je Busknoten-Typ kann den technischen Daten entnommen werden.

Mapping-Parameter 1. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1600 | 0 | Anzahl Elemente | Unsigned8 | rw | N | abhängig von Typ und Bestückung | Mapping-Parameter des ersten Receive-PDOs; Subindex 0: Anzahl der gemappten Objekte.
 | 1 | 1. gemapptes Objekt | Unsigned32 | rw | N | 0x62000108 | 1. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | 2 | 2. gemapptes Objekt | Unsigned32 | rw | N | 0x62000208 | 2. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | ... | ... | ... | ... | ... | ... | ...
 | 8 | 8. gemapptes Objekt | Unsigned32 | rw | N | 0x62000808 | 8. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)

Das erste Empfangs-PDO (RxPDO1) ist per Default für digitale Ausgangsdaten vorgesehen. Je nach Anzahl der bestückten Ausgänge wird automatisch die erforderliche Länge des PDOs bestimmt und die entsprechenden Objekte gemappt. Da die digitalen Ausgänge byteweise organisiert sind, kann die Länge des PDOs in Bytes direkt dem Subindex 0 entnommen werden.

Mapping-Änderungen

Um das Mapping zu verändern muss folgende Reihenfolge eingehalten werden (ab CANopen Version 4 vorgeschrieben):

  1. PDO löschen (Bit 31 im Identifier-Eintrag (Subindex1) des Kommunikations-Parameters auf 1 setzen)
  2. Mapping deaktivieren (Subindex 0 des Mapping Eintrages auf 0 setzen)
  3. Mapping Einträge ändern (Subindices 1...8)
  4. Mapping aktivieren (Subindex 0 des Mapping Eintrages auf die korrekte Anzahl der gemappten Objekte setzen)
  5. PDO anlegen (Bit 31 im Identifier-Eintrag (Subindex 1) des Kommunikations-Parameters auf 0 setzen)

Mapping-Parameter 2. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1601 | 0 | Anzahl Elemente | Unsigned8 | rw | N | abhängig von Typ und Bestückung | Mapping-Parameter des zweiten Receive-PDOs; Subindex 0: Anzahl der gemappten Objekte.
 | 1 | 1. gemapptes Objekt | Unsigned32 | rw | N | 0x64110110 | 1. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | 2 | 2. gemapptes Objekt | Unsigned32 | rw | N | 0x64110210 | 2. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | ... | ... | ... | ... | ... | ... | ...
 | 8 | 8. gemapptes Objekt | Unsigned32 | rw | N | 0x00000000 | 8. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)

Das zweite Empfangs-PDO (RxPDO2) ist per Default für analoge Ausgänge vorgesehen. Je nach Anzahl der bestückten Ausgänge wird automatisch die erforderliche Länge des PDOs bestimmt und die entsprechenden Objekte gemappt. Da die analogen Ausgänge wortweise organisiert sind, kann die Länge des PDOs in Bytes direkt dem Subindex 0 entnommen werden.

Um das Mapping zu verändern muss eine bestimmte Reihenfolge eingehalten werden (siehe Objekt Index 0x1600).

Mapping-Parameter 3.-16. RxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1602- 0x160F (je nach Geräte Typ) | 0 | Anzahl Elemente | Unsigned8 | rw | N | abhängig von Typ und Bestückung | Mapping-Parameter des 3.-16. Receive-PDOs; Subindex 0: Anzahl der gemappten Objekte.
 | 1 | 1. gemapptes Objekt | Unsigned32 | rw | N | 0x00000000 (Siehe Text) | 1. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | 2 | 2. gemapptes Objekt | Unsigned32 | rw | N | 0x00000000 (Siehe Text) | 2. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | ... | ... | ... | ... | ... | ... | ...
 | 8 | 8. gemapptes Objekt | Unsigned32 | rw | N | 0x00000000(Siehe Text) | 8. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)

Das 3. bis 16. Empfangs-PDO (RxPDO3ff) wird vom Busknoten je nach Klemmen-Bestückung (bzw. je nach Erweiterungs-Modulen) automatisch mit einem Default Mapping versehen. Die Vorgehensweise ist im Kapitel PDO-Mapping beschrieben.

Um das Mapping zu verändern muss eine bestimmte Reihenfolge eingehalten werden (siehe Objekt Index 0x1600).

Hinweis DS401 V2 schreibt für die PDOs 3+4 als Default Mapping analoge Ein- bzw. Ausgangsdaten vor. Das entspricht dem Beckhoff Default Mapping dann, wenn weniger als 65 digitale Ein- bzw. Ausgänge vorhanden sind. Um die Abwärtskompatibilität zu gewährleisten wird das Beckhoff Default Mapping beibehalten - die Geräte entsprechen damit in ihrem Mapping-Verhalten DS401 V1, in allen anderen Belangen DS401 V2.

Kommunikationsparameter 1. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1800 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des ersten Sende-PDOs. Subindex 0: Anzahl der folgenden Parameter
 | 1 | COB-ID | Unsigned32 | rw | N | 0x00000180 + Node-ID | COB-ID (Communication Object Identifier) TxPDO1
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Wiederholungsverzögerung [Wert x 100 µs]
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer

Subindex 1 (COB-ID): Die unteren 11 Bit des 32-Bit Wertes (Bits 0-10) enthalten den CAN-Identifier, das MSBit (Bit 31) gibt Auskunft, ob das PDO aktuell existiert (0) oder nicht (1), Bit 30 teilt mit, ob ein RTR-Zugriff auf dieses PDO zulässig ist (0) oder nicht (1). Es ist nicht erlaubt, den Identifier (Bit 0-10) zu ändern, während das Objekt existiert (Bit 31=0). Der Subindex 2 enthält die Übertragungsart, Subindex 3 die Wiederholungsverzögerung zwischen zwei gleichen PDOs, Subindex 5 enthält den Event Timer. Subindex 4 ist aus Kompatibilitätsgründen vorhanden, wird aber nicht genutzt. (siehe auch Einführung PDOs).

Kommunikationsparameter 2. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1801 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des zweiten Sende-PDOs. Subindex 0: Anzahl der folgenden Parameter
 | 1 | COB-ID | Unsigned32 | rw | N | 0x00000280 + Node-ID | COB-ID (Communication Object Identifier) TxPDO1
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Wiederholungsverzögerung [Wert x 100 µs]
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer

Das zweite Sende-PDO ist per Default für analoge Eingänge vorgesehen und für ereignisgesteuerte Übertragung konfiguriert (Transmission Type 255). Die Ereignissteuerung muss zunächst aktiviert werden (siehe Objekt 0x6423), ansonsten können die Eingänge nur per Remote Transmission Request (RTR) abgefragt (gepollt) werden.

Kommunikationsparameter 3. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1802 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des dritten Sende-PDOs. Subindex 0: Anzahl der folgenden Parameter
 | 1 | COB-ID | Unsigned32 | rw | N | 0x00000380 + Node-ID | COB-ID (Communication Object Identifier) TxPDO1
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Wiederholungsverzögerung [Wert x 100 µs]
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer

Das dritte Sende-PDO wird in der Regel analoge Eingangsdaten enthalten (siehe Mapping). Es ist für ereignisgesteuerte Übertragung konfiguriert (Transmission Type 255). Die Ereignissteuerung muss zunächst aktiviert werden (siehe Objekt 0x6423), ansonsten können die Eingänge nur per Remote Transmission Request (RTR) abgefragt (gepollt) werden.

Kommunikationsparameter 4. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1803 | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des vierten Sende-PDOs. Subindex 0: Anzahl der folgenden Parameter
 | 1 | COB-ID | Unsigned32 | rw | N | 0x00000480 + Node-ID | COB-ID (Communication Object Identifier) TxPDO1
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Wiederholungsverzögerung [Wert x 100 µs]
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer

Das vierte Sende-PDO wird in der Regel analoge Eingangsdaten enthalten (siehe Mapping). Es ist für ereignisgesteuerte Übertragung konfiguriert (Transmission Type 255). Die Ereignissteuerung muss zunächst aktiviert werden (siehe Objekt 0x6423), ansonsten können die Eingänge nur per Remote Transmission Request (RTR) abgefragt (gepollt) werden.

Kommunikationsparameter 5.-16. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1804- 0x180F (je nach Geräte- typ) | 0 | Anzahl Elemente | Unsigned8 | ro | N | 5 | Kommunikationsparameter des 5.-16. Sende-PDOs. Subindex 0: Anzahl der folgenden Parameter
 | 1 | COB-ID | Unsigned32 | rw | N | 0x0000000 | COB-ID (Communication Object Identifier) TxPDO1
 | 2 | Transmission Type | Unsigned8 | rw | N | 255 | Übertragungsart des PDOs
 | 3 | Inhibit Time | Unsigned16 | rw | N | 0 | Wiederholungsverzögerung [Wert x 100 µs]
 | 4 | CMS Priority Group | Unsigned8 | rw | N | - | Aus Gründen der Abwärtskompatibilität vorhanden, nicht genutzt.
 | 5 | Event Timer | Unsigned16 | rw | N | 0 | Event-Timer

Mapping 1. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1A00 | 0 | Anzahl Elemente | Unsigned8 | rw | N | abhängig von Typ und Bestückung | Mapping-Parameter des ersten Transmit PDOs; Subindex 0: Anzahl der gemappten Objekte.
 | 1 | 1. gemapptes Objekt | Unsigned32 | rw | N | 0x60000108 | 1. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | 2 | 2. gemapptes Objekt | Unsigned32 | rw | N | 0x60000208 | 2. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | ... | ... | ... | ... | ... | ... | ...
 | 8 | 8. gemapptes Objekt | Unsigned32 | rw | N | 0x60000808 | 8. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)

Das erste Sende-PDO (TxPDO1) ist per Default für digitale Eingangsdaten vorgesehen. Je nach Anzahl der bestückten Eingänge wird automatisch die erforderliche Länge des PDOs bestimmt und die entsprechenden Objekte gemappt. Da die digitalen Eingänge byteweise organisiert sind, kann die Länge des PDOs in Bytes direkt dem Subindex 0 entnommen werden.

Um das Mapping zu verändern muss eine bestimmte Reihenfolge eingehalten werden (siehe Objekt Index 0x1600).

Mapping 2. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1A01 | 0 | Anzahl Elemente | Unsigned8 | rw | N | abhängig von Typ und Bestückung | Mapping-Parameter des zweiten Transmit PDOs; Subindex 0: Anzahl der gemappten Objekte.
 | 1 | 1. gemapptes Objekt | Unsigned32 | rw | N | 0x64010110 | 1. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | 2 | 2. gemapptes Objekt | Unsigned32 | rw | N | 0x64010210 | 2. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | ... | ... | ... | ... | ... | ... | ...
 | 8 | 8. gemapptes Objekt | Unsigned32 | rw | N |  | 8. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)

Das zweite Sende-PDO (TxPDO2) ist per Default für analoge Eingangsdaten vorgesehen. Je nach Anzahl der bestückten Eingänge wird automatisch die erforderliche Länge des PDOs bestimmt und die entsprechenden Objekte gemappt. Da die analogen Eingänge wortweise organisiert sind, kann die Länge des PDOs in Bytes direkt dem Subindex 0 entnommen werden.

Um das Mapping zu verändern muss eine bestimmte Reihenfolge eingehalten werden (siehe Objekt Index 0x1600).

Mapping 3.-16. TxPDO

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x1A02- 0x1A0F (je nach Geräte Typ) | 0 | Anzahl Elemente | Unsigned8 | rw | N | abhängig von Typ und Bestückung | Mapping-Parameter des 3.-16. Transmit PDOs; Subindex 0: Anzahl der gemappten Objekte.
 | 1 | 1. gemapptes Objekt | Unsigned32 | rw | N | 0x00000000 (Siehe Text) | 1. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | 2 | 2. gemapptes Objekt | Unsigned32 | rw | N | 0x00000000 (Siehe Text) | 2. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)
 | ... | ... | ... | ... | ... | ... | ...
 | 8 | 8. gemapptes Objekt | Unsigned32 | rw | N | 0x00000000(Siehe Text) | 8. gemapptes Applikationsobjekt (2 Byte Index, 1 Byte Subindex, 1 Byte Bitbreite)

Das 3. bis 16. Sende-PDO (TxPDO3ff) wird vom Busknoten je nach Klemmen-Bestückung (bzw. je nach Erweiterungs-Modulen) automatisch mit einem Default Mapping versehen. Die Vorgehensweise ist im Kapitel PDO-Mapping beschrieben.

Um das Mapping zu verändern muss eine bestimmte Reihenfolge eingehalten werden (siehe Objekt Index 0x1600).

Hinweis DS401 V2 schreibt für die PDOs 3+4 als Default Mapping analoge Ein- bzw. Ausgangsdaten vor. Das entspricht dem Beckhoff Default Mapping dann, wenn weniger als 65 digitale Ein- bzw. Ausgänge vorhanden sind. Um die Abwärtskompatibilität zu gewährleisten wird das Beckhoff Default Mapping beibehalten - die Geräte entsprechen damit in ihrem Mapping-Verhalten DS401 V1, in allen anderen Belangen DS401 V2.

Im Objektverzeichnis (und damit auch im eds File) sind der Vollständigkeit halber zusätzlich folgende Objekteinträge vorhanden:

Index | Bedeutung
0x2000 | Digitale Eingänge (Funktion identisch mit Objekt 0x6000)
0x2100 | Digitale Ausgänge (Funktion identisch mit Objekt 0x6200)
0x2200 | 1-Byte Sonderklemmen, Eingänge (derzeit keine entsprechenden Klemmen im Produktprogramm vorhanden)
0x2300 | 1-Byte Sonderklemmen, Ausgänge (derzeit keine entsprechenden Klemmen im Produktprogramm vorhanden)
0x2400 | 2-Byte Sonderklemmen, Eingänge (derzeit keine entsprechenden Klemmen im Produktprogramm vorhanden)
0x2500 | 2-Byte Sonderklemmen, Ausgänge (derzeit keine entsprechenden Klemmen im Produktprogramm vorhanden)
0x2E00 | 7-Byte Sonderklemmen, Eingänge (derzeit keine entsprechenden Klemmen im Produktprogramm vorhanden)
0x2F00 | 7-Byte Sonderklemmen, Ausgänge (derzeit keine entsprechenden Klemmen im Produktprogramm vorhanden)

3-Byte Sonderklemmen, Eingangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2600 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 3-Byte Sonderkanäle, Eingänge
 | 1 | 1st input block | Unsigned24 | ro | Y | 0x000000 | 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X80 | 128. input block | Unsigned24 | ro | Y | 0x000000 | 128. Eingangskanal

Beispiel für Sonderklemmen mit 3-Byte Eingangsdaten (in Default-Einstellung): KL2502 (PWM Ausgänge, 2 x 3 Bytes)

3-Byte Sonderklemmen, Ausgangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2700 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 3-Byte Sonderkanäle, Ausgänge
 | 1 | 1st output block | Unsigned24 | rww | Y | 0x000000 | 1. Ausgangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X80 | 128. output block | Unsigned24 | rww | Y | 0x000000 | 128. Ausgangskanal

Beispiel für Sonderklemmen mit 3-Byte Ausgangsdaten (in der Default-Einstellung): KL2502 (PWM Ausgänge, 2 x 3 Bytes)

4-Byte Sonderklemmen, Eingangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2800 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 4-Byte Sonderkanäle, Eingänge
 | 1 | 1st input block | Unsigned32 | ro | Y | 0x00000000 | 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X80 | 128. input block | Unsigned32 | ro | Y | 0x00000000 | 128. Eingangskanal

Beispiele für Sonderklemmen mit 4-Byte Eingangsdaten (in der Default-Einstellung): KL5001, KL6001, KL6021, KL6051

4-Byte Sonderklemmen, Ausgangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2900 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 4-Byte Sonderkanäle, Ausgänge
 | 1 | 1st output block | Unsigned32 | rww | Y | 0x00000000 | 1. Ausgangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X80 | 128. output block | Unsigned32 | rww | Y | 0x00000000 | 128. Ausgangskanal

Beispiele für Sonderklemmen mit 4-Byte Ausgangsdaten (in der Default-Einstellung): KL5001, KL6001, KL6021, KL6051

5-Byte Sonderklemmen, Eingangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2A00 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 5-Byte Sonderkanäle, Eingänge
 | 1 | 1st input block | Unsigned40 | ro | Y | 0x0000000000 | 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X40 | 64. input block | Unsigned40 | ro | Y | 0x0000000000 | 64. Eingangskanal

Beispiel für Sonderklemmen mit 5-Byte Eingangsdaten (in der Default-Einstellung): KL1501

5-Byte Sonderklemmen, Ausgangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2B00 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 5-Byte Sonderkanäle, Ausgänge
 | 1 | 1st output block | Unsigned40 | rww | Y | 0x0000000000 | 1. Ausgangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X40 | 64. output block | Unsigned40 | rww | Y | 0x0000000000 | 64. Ausgangskanal

Beispiel für Sonderklemmen mit 5-Byte Ausgangsdaten (in der Default-Einstellung): KL1501

6-Byte Sonderklemmen, Eingangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2C00 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 6-Byte Sonderkanäle, Eingänge
 | 1 | 1st input block | Unsigned48 | ro | Y | 0x0000000000 | 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X40 | 64. input block | Unsigned48 | ro | Y | 0x0000000000 | 64. Eingangskanal

Beispiel für Sonderklemmen mit 6-Byte Eingangsdaten (in der Default-Einstellung): KL5051, KL5101, KL5111

6-Byte Sonderklemmen, Ausgangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x2D00 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 6-Byte Sonderkanäle, Ausgänge
 | 1 | 1st output block | Unsigned48 | rww | Y | 0x0000000000 | 1. Ausgangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X40 | 64. output block | Unsigned48 | rww | Y | 0x0000000000 | 64. Ausgangskanal

Beispiel für Sonderklemmen mit 6-Byte Ausgangsdaten (in der Default-Einstellung): KL5051, KL5101, KL5111

8-Byte Sonderklemmen, Eingangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x3000 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 6-Byte Sonderkanäle, Eingänge
 | 1 | 1st input block | Unsigned64 | ro | Y | 0x0000000000 | 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0x40 | 64. input block | Unsigned64 | ro | Y | 0x0000000000 | 64. Eingangskanal

Beispiel für Sonderklemmen mit 8-Byte Eingangsdaten: KL5101 (mit Word-Alignment, nicht in der Default-Einstellung)

8-Byte Sonderklemmen, Ausgangsdaten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x3100 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer 6-Byte Sonderkanäle, Ausgänge
 | 1 | 1st output block | Unsigned64 | rww | Y | 0x0000000000 | 1. Ausgangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0X40 | 64. output block | Unsigned64 | rww | Y | 0x0000000000 | 64. Ausgangskanal

Beispiel für Sonderklemmen mit 8-Byte Ausgangsdaten: KL5101 (mit Word-Alignment, nicht in der Default-Einstellung)

Register-Kommunikation Busknoten

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x4500 | 0 | Register Access | Unsigned32 | rw | N | keiner | Zugriff interne Register Busknoten

Der 32Bit-Wert ist wie folgt aufgebaut:

MSB |  |  | LSB
Zugriff (Bit7) + Tabellennummer (Bit 6...0) | Registernummer | High-Byte Registerwert | Low-Byte Registerwert
[0..1] + [0...0x7F] | [0...0xFF] | [0...0xFF] | [0...0xFF]

Wie bei CANopen üblich wird das LSB zuerst und das MSB zuletzt übertragen.

Durch Zugriff auf Index 0x4500 können beliebige Register der Busstation beschrieben oder gelesen werden. Die Kanalnummer und Register werden hierbei im 32Bit-Datenwert adressiert.

Registerwert lesen

Zunächst muss dem Koppler mitgeteilt werden, welches Register gelesen werden soll. Hierzu muss ein SDO-Schreibzugriff auf die entsprechende Index/Subindex-Kombination erfolgen mit:
- Tabellennummer (Zugriffs-Bit=0) in Byte 3
- Registeradresse in Byte 2 des 32 Bit Datenwertes.

Bytes 1 und 0 werden nicht ausgewertet, wenn das Zugriffs-Bit (MSB in Byte 3) = 0 ist. Anschließend kann der Registerwert auf derselben Index/Subindex-Kombination gelesen werden.

Der Koppler setzt das Zugriffs-Bit nach dem Schreiben der auszulesenden Registeradresse so lange auf 1, bis der korrekte Wert zur Verfügung steht. Beim SDO-Lesezugriff ist also zu überprüfen, dass die Tabellennummer im Wertebereich 0...0x7F liegt.

Ein Zugriffsfehler bei der Register-Kommunikation wird durch entsprechende Rückgabewerte des SDO-Protokolls angezeigt (siehe Kapitel SDO, Abbruch Parameterkommunikation).

Beispiel Registerwert lesen

Es soll festgestellt werden, welcher Baud-Ratenindex der Schalterstellung 1,1 (DIP 7,8) zugeordnet ist (siehe Kapitel Netzwerkadresse und Baud-Raten). Hierzu muss der Wert in Tabelle 100, Register 3 gelesen werden. Es müssen also folgende SDO Telegramme gesendet werden:

Schreibzugriff (Download Request) auf Index 4500, Subindex 0 mit 32 Bit Datenwert 0x64 03 00 00.

    Id=0x600+Node-ID DLC=8; Data=23 00 45 00 00 00 03 64

Anschließend Lesezugriff (Upload Request) auf den gleichen Index/Subindex, hierbei ist der Datenwert beliebig (hier 00).

    Id=0x600+Node-ID DLC=8; Data=40 00 45 00 00 00 00 00

Der Koppler antwortet mit dem Upload Response Telegramm:

    Id=0x580+Node-ID DLC=8; Data=43 00 45 00 04 00 03 64

Es steht hier also der Wert 4 in diesem Register, dieser Baud-Ratenindex entspricht 125 kBit/s (Default-Wert).

Registerwert Schreiben

SDO-Schreibzugriff auf die entsprechende Index/Subindex-Kombination mit:
- Tabellennummer + 0x80 (Zugriffs-Bit=1) in Byte 3
- Registeradresse in Byte 2
- High-Byte Registerwert in Byte 1
- Low-Byte Registerwert in Byte 0 des 32 Bit Datenwertes

Koppler-Schreibschutz aufheben

Bevor die Register des Buskopplers beschrieben werden können muss zunächst der Schreibschutz aufgehoben werden. Hierzu müssen die folgenden Werte in der angegebenen Reihenfolge auf die entsprechenden Register geschrieben werden:

Arbeitsschritt | Tabelle | Register | Wert | entsprechender SDO Download-Wert (0x4500/0)
1. | 99 | 2 | 45054 (0xAFFE) | 0xE3 02 AF FE (0xE3=0x63(=99)+0x80)
2. | 99 | 1 | 1 (0x0001) | 0xE3 01 00 01
3. | 99 | 0 | 257 (0x0101) | 0xE3 00 01 01

Koppler-Schreibschutz aufheben (CAN Darstellung)

Um den Koppler-Schreibschutz aufzuheben müssen also folgende SDO-Telegramme (Download Requests) an den Koppler geschickt werden:

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 FE AF 02 E3

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 01 00 01 E3

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 01 01 00 E3

Beispiel Registerwert Schreiben

Nachdem der Schreibschutz aufgehoben wurde, soll nun der Baud-Ratenindex für die DIP-Schalterstellung 1,1 auf den Wert 7 gesetzt werden. Damit wird dieser Schalterstellung die Baud-Rate 20 kBaud zugeordnet.

Hierzu muss Tabelle 100, Register 3 mit dem Wert 7 beschrieben werden, das erfolgt durch SDO-Schreibzugriff (Download Request) auf Index 0x4500, Subindex 0 mit dem 32 Bit-Wert E4 03 00 07 (0xE4 = 0x64+0x80):

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 07 00 03 E4

Klemmen identifizieren

Über die Tabelle 9 des Buskopplers kann die Kennung des Kopplers (bzw. der Busstation) und der angesteckten Busklemmen gelesen werden. Dabei enthält Register 0 die Kennung des Buskopplers selbst, Register 1 die Kennung der ersten Klemme und Register n die Kennung der n-ten Klemme:

Tabellennummer | Registernummer | Beschreibung | Wertebereich
9 | 0 | Busstation-Kennung | 0 - 65535
9 | 1-255 | Kennung Erweiterungsmodul/Busklemme | 0 - 65535

Die Buskopplerbeschreibung in Registernummer 0 enthält 5120 = 0x1400 beim BK5120, 5110 = 0x13F6 beim BK5110 und 5100 = 0x13EC beim LC5100. Bei den Feldbus Box Baugruppen steht in Register 0 die Kennung 510dez =0x1FE bzw. 518dez = 0x206.

Die Kennung der Erweiterungsmodule bzw. Klemmenbeschreibung enthält bei analogen und Sonderklemmen die Klemmenbezeichnung (Dez);
Beispiel: ist als dritte Klemme eine KL3042 gesteckt, so enthält Register 3 den Wert 3042dez (0x0BE2).

Bei digitalen Klemmen wird folgende Bit-Kennung verwendet:

MSB |  |  |  |  |  |  |  | LSB
1 | s6 | s5 | s4 | s3 | s2 | s1 | s0 | 0 | 0 | 0 | 0 | 0 | 0 | a | e

s6...s1: Datenbreite in Bit; a=1: Ausgangsklemme; e=1: Eingangsklemme

Diese Kennung führt zu den unten aufgeführten Klemmenbeschreibungen bei den Klemmen:

Kennung Klemmen | Bedeutung
0x8201 | 2 Bit digitale Eingangsklemme,z.B. KL1002, KL1052, Kl9110, KL9260
0x8202 | 2 Bit digitale Ausgangsklemme, z.B. KL2034, KL2612, KL2702
0x8401 | 4 Bit digitale Eingangsklemme, z.B. KL1104, KL1124, KL1194
0x8402 | 4 Bit digitale Ausgangsklemme,z.B. KL2124, KL2134, KL2184
0x8403 | 4 Bit digitale Ein/Ausgangsklemme,z.B. KL2212

und folgende Kennung bei den Erweiterungs Box Module:

Kennung Erweiterungs Box Module | Bedeutung
0x000A | 4 Bit Eingangs- und 4 Bit Ausgangsmodul
0x0011 | 8 Bit Eingangs- und 8 Bit Ausgangsmodul
0x0014 | 8 Bit digitales Eingangsmodul
0x0015 | 8 Bit digitales Ausgangsmodul

Allgemeine Koppler-Konfiguration (Tabelle 0)

Die Tabelle 0 des Buskopplers enthält die Daten für die allgemeine Kopplerkonfiguration. In der Regel muss diese nicht verändert werden; für besondere Anwendungsfälle können die Einstellungen jedoch über die KS2000 Konfigurations-Software oder den direkten Zugriff über die Register-Kommunikation verändert werden. Hierzu muss zunächst der Schreibschutz aufgehoben werden (siehe oben).

Im Folgenden werden die relevanten Registereinträge beschrieben:

K-Buskonfiguration

Tabelle 0, Register 2 enthält die K-Buskonfiguration und ist wie folgt codiert (Default-Wert: 0x0006):

MSB |  |  |  |  |  |  |  | LSB
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | D | G | A
A: Autoreset

Bei K-Bus-Fehler wird zyklisch versucht, den K-Bus durch Reset wieder zu aufzustarten. Wenn Emergencies und Guarding nicht ausgewertet werden, so kann es bei aktiviertem Autoreset vorkommen, dass Aus- und Eingangsinformation unerkannt verloren geht.

0: kein Autoreset (Default)

1: Autoreset aktiv

G: Gerätediagnose

Meldung (über Emergency), z.B. dass
- Drahtbruch bei Stromeingängen (mit Diagnose)
- 10 V überschritten bei 1-10V Eingangsklemme

0: Gerätediagnose abgeschaltet

1: Gerätediagnose aktiv (Default)

D: Diagnosedaten

digitaler Klemmen ins Prozessabbild einblenden (z.B. KL2212). Diese Flag wird nur ausgewertet, wenn die Gerätediagnose aktiv ist (siehe oben).

0: Nicht einblenden

1: Einblenden (Default)

Prozessabbildbeschreibung

Tabelle 0, Register 3 enthält die Prozessabbildbeschreibung und ist wie folgt codiert (Default-Wert: 0x0903):

MSB |  |  |  |  |  |  |  | LSB
0 | 0 | 0 | 0 | k1 | k0 | f1 | f0 | 0 | 0 | a | 0 | d | k | 1 | 1
k0...k1: Reaktion auf K-Bus-Fehler

0,2: Eingänge bleiben unverändert (Default=2);

1: Eingänge auf 0 setzen (TxPDO mit Nullen wird verschickt)

f0...f1: Reaktion auf Feldbusfehler

0: Stoppen der K-Bus Zyklen, Watchdog auf Klemmen spricht an, Fehlerausgangswerte werden aktiv. Beim Neustart werden zunächst die alten Ausgangswerte gesetzt.

1: Ausgänge auf 0 setzen, Stoppen der K-Bus Zyklen (Default). 2: Ausgänge bleiben unverändert.

a: Word-Alignment von Analog- und Sonderklemmen

0: kein Alignment (Default)

1: Daten auf Wortgrenzen mappen (Prozessdatum beginnt stets auf gerader Adresse im PDO)

d: Datenformat komplexe Klemmen (Analog- und Sonderklemmen)

0: Intel-Format (Default)

1: Motorola-Format

k: Auswertung komplexe Klemmen (Analog- und Sonderklemmen)

0: nur Nutzdaten (Default)

1: komplette Auswertung (Achtung: Analogkanäle benötigen dann statt z.B. 2 Eingangsbytes je 3 Eingangs- und 3 Ausgangsbytes; statt 4 Kanäle je PDO werden für 2 Kanäle je ein Rx- und ein TxPDO benötigt)

Register-Kommunikation Busklemme/Erweiterungsbox

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x4501 | 0 | Access Terminal Register | Unsigned8 | ro | N | keiner | Index 0x4501 ermöglicht den Zugriff auf alle Register der Busklemmen bzw. Erweiterungsmodule. Subindex 0 enthält die Anzahl der gesteckten Busklemmen.
 | 1 | Access Reg. Terminal 1 | Unsigned32 | rw | N | keiner | Zugriff Register Busklemme bzw. E-Modul 1
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | Access Reg. Terminal 254 | Unsigned32 | rw | N | keiner | Zugriff Register Busklemme bzw. E-Modul 254

Der 32Bit-Wert ist wie folgt aufgebaut:

MSB |  |  | LSB
Zugriff (Bit7) + Kanalnummer (Bit 6...0) | Registernummer | High-Byte Registerwert | Low-Byte Registerwert
[0..1] + [0...0x7F] | [0...0xFF] | [0...0xFF] | [0...0xFF]

Wie bei CANopen üblich wird das LSB zuerst und das MSB zuletzt übertragen.

Durch Zugriff auf Index 0x4501 können die Anwenderregister der Busklemmen bzw. Erweiterungsmodule beschrieben oder gelesen werden. Die Baugruppen verfügen über einen Registersatz je Ein- bzw. Ausgangskanal. Die Adressierung der Baugruppen erfolgt über den Subindex, die Kanalnummer und Register werden im 32Bit-Datenwert adressiert. Hierbei entspricht die Kanalnummer 0 dem ersten Kanal, 1 dem zweiten Kanal etc.

Registerwert lesen

Zunächst muss dem Koppler mitgeteilt werden, welches Register gelesen werden soll. Hierzu muss ein SDO-Schreibzugriff auf die entsprechende Index/Subindex-Kombination erfolgen mit:
- Kanalnummer (Zugriffs-Bit=0) in Byte 3
- Registeradresse in Byte 2 des 32 Bit Datenwertes.

Bytes 1 und 0 werden nicht ausgewertet, wenn das Zugriffs-Bit (MSB in Byte 3) = 0 ist. Anschließend kann der Registerwert auf derselben Index/Subindex-Kombination gelesen werden.

Der Koppler setzt das Zugriffs-Bit nach dem Schreiben der auszulesenden Registeradresse so lange auf 1, bis der korrekte Wert zur Verfügung steht. Beim SDO-Lesezugriff ist also zu überprüfen, dass die Tabellennummer im Wertebereich 0...0x7F liegt.

Ein Zugriffsfehler bei der Register-Kommunikation wird durch entsprechende Rückgabewerte des SDO-Protokolls angezeigt (siehe Kapitel SDO, Abbruch Parameterkommunikation).

Beispiel Registerwert lesen

Bei einer Thermoelement-Eingangsklemme KL3202 soll festgestellt werden, auf welchen Thermoelement-Typ der zweite Eingangs-Kanal eingestellt ist. Hierzu muss das Feature-Register 32 gelesen werden. Die Klemme befindet sich am fünften Steckplatz neben dem Buskoppler. Es müssen also folgende SDO-Telegramme gesendet werden:

Schreibzugriff (Download Request) auf Index 4501, Subindex 5 mit 32 Bit Datenwert 01 20 00 00 (0x01 = 2. Kanal, 0x20 = Register 32)
Id=0x600+Node-ID DLC=8; Data=23 01 45 05 00 00 20 01

Anschließend Lesezugriff (Upload Request) auf den gleichen Index/Subindex, hierbei ist der Datenwert beliebig (hier: 0x00).
Id=0x600+Node-ID DLC=8; Data=40 01 45 05 00 00 00 00

Der Koppler antwortet mit dem Upload Response Telegramm:
Id=0x580+Node-ID DLC=8; Data=43 01 45 05 06 31 20 01

Es steht hier also der Wert 31 06 im Feature-Register. Die obersten 4 Bit kennzeichnen den Thermoelement-Typ. Sie sind hier 3, demnach ist der eingestellte Typ für diesen Kanal PT500 (siehe Dokumentation KL3202).

Registerwert Schreiben

SDO-Schreibzugriff auf die entsprechende Index/Subindex-Kombination mit:
- Kanalnummer + 0x80 (Zugriffs-Bit=1) in Byte 3
- Registeradresse in Byte 2
- High-Byte Registerwert in Byte 1
- Low-Byte Registerwert in Byte 0 des 32 Bit Datenwertes

Nach dem Schreiben wieder Auslesen und Vergleichen!

Achtung

Wenn der Schreibschutz nicht aufgehoben wurde (z.B. fehlerhaftes Codewort), so wird ein Schreibzugriff auf die Klemmenregister zwar bestätigt (SDO Download Response), der Wert jedoch nicht in das Register übernommen. Es wird deshalb empfohlen, den geschriebenen Wert anschließend auszulesen und zu vergleichen.

Klemmen-Schreibschutz aufheben

Bevor die Anwender-Register der Busklemmen (Register 32-xx, je nach Klemmentyp bzw. Erweiterungsmodul) beschrieben werden können muss zunächst der Schreibschutz aufgehoben werden. Hierzu wird das folgende Codewort in das Register 31 des entsprechenden Kanals geschrieben:

Schreibschutz | Kanal | Register | Wert | entsprechender SDO Download-Wert (0x4500/0)
 | 1,2, 3 oder 4 | 31 (0x1F) | 4661 (0x1235) | 8y 1F 12 35 (y=Kanalnummer)

Klemmen-Schreibschutz aufheben (CAN Darstellung)

Um den Klemmen-Schreibschutz aufzuheben muss also das folgende SDO-Telegramm an den Koppler geschickt werden:

Id=600 + Node-ID DLC=8; Data=23 01 45 xx 35 12 1F 8y

wobei xx den Steckplatz der Klemme und y den Kanal kennzeichnen.

Beispiel Schreibschutz aufheben

Steckt also beispielsweise an einem BK5120 mit der Knotenadresse 3 eine Thermoelement-Eingangsklemme KL3202 an Steckplatz 5, so ist der Schreibschutz für den ersten Kanal wie folgt aufzuheben:

Id=0x603 DLC=8; Data=23 01 45 05 35 12 1F 80

Für den zweiten Kanal ist folgendes Telegramm zu senden:

Id=0x603 DLC=8; Data=23 01 45 05 35 12 1F 81

Beispiel Registerwert Schreiben

Der Thermoelement-Typ des zweiten Kanals der KL3202 Klemme an Steckplatz 5 soll nun auf PT1000 umgestellt werden. Hierzu müssen die obersten 4 Bits (oberstes Nibble) im Feature-Register mit dem Wert 2 beschrieben werden. Es wird davon ausgegangen, dass für alle anderen Bits des Feature-Registers die Default-Werte übernommen werden sollen. Nachdem der Schreibschutz aufgehoben wurde, ist per SDO Schreibzugriff (Download Request) der folgende 32Bit-Wert auf Index 0x4501, Subindex 05 zu schreiben: 81 20 21 06 (0x81=01+0x80; 0x20=32;0x2106 = Registerwert).

Das entsprechende Telegramm sieht auf dem Bus wie folgt aus:

Id=0x600+Node-ID DLC=8; Data=23 01 45 05 06 21 20 81

PDOs aktivieren

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x5500 | 0 | Activate PDO Defaults | Unsigned32 | rw | N | 0x00000000 | setzt PDO Communication Parameter für PDO 2...11

CANopen definiert Default-Identifier für jeweils 4 Sende (Tx) und Empfangs (Rx) PDOs, alle anderen PDOs sind nach dem Aufstarten der Knoten zunächst deaktiviert. Über den Index 0x5500 lassen sich alle PDOs aktivieren, die gemäß Klemmenbestückung mit Prozessdaten vorbelegt sind (herstellerspezifisches Default Mapping). Dabei wird für PDO5...11 eine herstellerspezifische Default-Identifier-Verteilung vorgenommen sowie für PDO 2...11der Transmission Type und eine einheitliche Inhibit Zeit eingestellt. Nicht mit Prozessdaten versehene (also in der aktuellen Konfiguration überzählige) PDOs werden nicht aktiviert.

Hinweis Dieses Objekt kann nur im Pre-Operational Zustand beschrieben werden!

Der 32Bit-Wert wird wie folgt verwendet:

MSB |  |  | LSB
Transmission Type RxPDOs | Transmission Type TxPDOs | High-Byte Inhibit Zeit | Low-Byte Inhibit Zeit

Wie bei CANopen üblich wird das LSB zuerst und das MSB zuletzt übertragen.

Beispiel:

PDOs aktivieren für Busknoten Nummer 1, Inhibit Zeit auf 10ms (=100 x 100µs) setzen, Transmission Type TxPDOs auf 255 setzen, Transmission Type RxPDOs auf 1 setzen. Folgendes Telegramm ist zu senden:
Id=0x601 DLC=8; Data=23 00 55 00 64 00 FF 01

Der Knoten antwortet mit folgendem Telegramm:
Id=0x601 DLC=8; Data=60 00 55 00 00 00 00 00

Verwendete Identifier

Die Default-Identifier-Verteilung für die zusätzlichen PDOs läßt die vordefinierten Bereiche für Guarding, SDOs etc. frei, geht ab PDO6 von maximal 64 Knoten im Netz aus und erfolgt nach folgendem Schema:

Objekt | Function Code | resultierende COB-ID (hex) | resultierende COB-ID (dez)
TxPDO5 | 1101 | 0x681 - 0x6BF | 1665 - 1727
RxPDO5 | 1111 | 0x781 - 0x7BF | 1921 - 1983
TxPDO6 | 00111 | 0x1C1 - 0x1FF | 449 - 511
RxPDO6 | 01001 | 0x241 - 0x27F | 577 - 639
TxDPO7 | 01011 | 0x2C1 - 0x2FF | 705 - 767
RxPDO7 | 01101 | 0x341 - 0x37F | 833 - 895
TxPDO8 | 01111 | 0x3C1 - 0x3FF | 961 - 1023
RxPDO8 | 10001 | 0x441 - 0x47F | 1089 - 1151
TxPDO9 | 10011 | 0x4C1 - 0x4FF | 1217 - 1279
RxPDO9 | 10101 | 0x541 - 0x57F | 1345 - 1407
TxDPO10 | 10111 | 0x5C1 - 0x5FF | 1473 - 1535
RxPDO10 | 11001 | 0x641 - 0x67F | 1601 - 1663
TxPDO11 | 11011 | 0x6C1 - 0x6FF | 1729 - 1791
RxPDO11 | 11101 | 0x741 - 0x77F | 1857 - 1919
Achtung Es ist darauf zu achten, dass der Index 0x5500 nicht genutzt wird, wenn Buskoppler mit mehr als 5 PDOs in Netzen mit Knoten-Adressen >64 vorhanden sind, da es sonst zu Identifier-Überschneidungen kommen kann. In diesem Fall müssen die PDO Identifier individuell eingestellt werden.

Der Übersichtlichkeit halber sind die nach CANopen definierten Default-Identifier hier ebenfalls aufgeführt:

Objekt | Function Code | resultierende COB-ID (hex) | resultierende COB-ID (dez)
Emergency | 0001 | 0x81 - 0xBF [0xFF] | 129 - 191 [255]
TxPDO1 | 0011 | 0x181 - 0x1BF [0x1FF] | 385 - 447 [511]
RxPDO1 | 0100 | 0x201 - 0x23F [0x27F] | 513 - 575 [639]
TxPDO2 | 0101 | 0x281 - 0x2BF [0x2FF] | 641 - 676 [767]
RxPDO2 | 0110 | 0x301 - 0x33F [0x37F] | 769 - 831 [895]
TxDPO3 | 0111 | 0x381 - 0x3BF [0x3FF] | 897 - 959 [1023]
RxPDO3 | 1000 | 0x401 - 0x43F [0x47F] | 1025 - 1087 [1151]
TxPDO4 | 1001 | 0x481 - 0x4BF [0x4FF] | 1153 - 1215 [1279]
RxPDO4 | 1010 | 0x501 - 0x53F [0x57F] | 1281- 1343 [1407]
SDO (Tx) | 1011 | 0x581 - 0x5BF [0x5FF] | 1409 - 1471 [1535]
SDO (Rx) | 1100 | 0x601 - 0x63F [0x67F] | 1537 - 1599 [1663]
Guarding / Heartbeat/ Bootup | 1110 | 0x701 - 0x73F [0x77F] | 1793 - 1855 [1919]

Angegeben sind die Identifier, die sich aus den DIP-Schalter-Einstellungen am Koppler ergeben, sowie in eckigen Klammern der Identifier-Bereich für die Knotenadressen 64...127 (am Buskoppler BK5110, BK5120 und LC5100 nicht einstellbar). Bei den Feldbus Box-Modulen und dem Buskoppler BK515x lassen sich die Adressen 1...99 einstellen.

Eine tabellarische Übersicht über alle Identifier findet sich im Anhang.

Digitale Eingänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6000 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer digitaler 8-Bit Eingangsdatenblöcke
 | 1 | 1st input block | Unsigned8 | ro | Y | 0x00 | 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | 254. input block | Unsigned8 | ro | Y | 0x00 | 254. Eingangskanal

Interrupt Maske

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6126 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ | Anzahl der 32-Bit Interrupt Masken = 2 x Anzahl TxDPOs
 | 1 | IR-Mask0 TxPDO1 | Unsigned32 | rw | N | 0xFFFFFFFF | IR-Maske Bytes 0...3 TxPDO1
 | 2 | IR-Mask1 TxPDO1 | Unsigned32 | rw | N | 0xFFFFFFFF | IR-Maske Bytes 4...7 TxPDO1
 | 3 | IR-Mask0 TxPDO2 | Unsigned32 | rw | N | 0xFFFFFFFF | IR-Maske Bytes 0...3 TxPDO2
 | ... | ... | ... | ... | ... | ... | ...
 | 0x20 | IR-Mask1 TxPDO16 | Unsigned32 | rw | N | 0xFFFFFFFF | IR-Maske Bytes 4...7 TxPDO16

Per Default führt jede Änderung eines Wertes im ereignisgesteuerten PDO zum Versenden des Telegramms. Mit der Interrupt Maske kann bestimmt werden, welche Daten-Änderungen hierfür ausgewertet werden. Durch Nullen der entsprechenden Bereiche innerhalb der PDOs werden diese bei der Ereignissteuerung ("Interrupt-Steuerung") ausmaskiert. Die Interrupt Maske umfasst nicht nur die PDOs mit digitalen Eingängen, sondern alle vorhandenen TxPDOs. Falls die TxPDOs kürzer als 8 Bytes sind, wird der überzählige Teil der IR-Maske nicht ausgewertet.

Die Interrupt Maske beeinflusst nur TxPDOs mit Transmission Type 254 und 255. Sie wird nicht auf dem Gerät gespeichert (auch nicht durch das Objekt 0x1010). Änderungen der Maske zur Laufzeit (im Operational Status) sind möglich und werden bei der nächsten Eingangsdaten-Änderung ausgewertet.

Die Interrupt Maske wird für TxPDOs mit analogen Eingangsdaten nicht ausgewertet, wenn für die Eingänge Grenzwerte (0x6424, 0x6425) oder die Delta Funktion (0x6426) aktiviert wurden.

Dieser Eintrag ist ab Firmware Stand C3 implementiert.

Beispiel zur Zuordnung der Daten

Anwendungsbeispiel

Der Zählerwert eines schnellen Zählereingangs soll nur übertragen werden, sobald sich Bits im Statuswort (z.B. der Latch-Eingang) geändert haben. Hierzu muss der 32-Bit Zählerwert in der Interrupt Maske ausmaskiert (=genullt) werden. Der Status befindet sich im Byte 0, der Zählerwert liegt per Default in den Bytes 1..4 des entsprechenden PDOs (im Beispiel TxPDO3, da <65 digitale und <5 analoge Eingänge vorhanden sind).
Also muss in Index 0x6126, Subindex5 der Wert 0x0000 00FF und in Subindex6 der Wert 0xFFFF FF00 eingetragen werden.

Die entsprechenden SDOs sehen demnach wie folgt aus:

11-bit Identifier | 8 Byte Nutzdaten
0x600+ Node-ID | 0x22 | 0x26 | 0x61 | 0x05 | 0xFF | 0x00 | 0x00 | 0x00
11-bit Identifier | 8 Byte Nutzdaten
0x600+ Node-ID | 0x22 | 0x26 | 0x61 | 0x06 | 0x00 | 0xFF | 0xFF | 0xFF

Digitale Ausgänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6200 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer digitaler 8-Bit Ausgangsdatenblöcke
 | 1 | 1st input block | Unsigned8 | rw | Y | 0x00 | 1. Ausgangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | 254. input block | Unsigned8 | rw | Y | 0x00 | 254. Ausgangskanal

Analoge Eingänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6401 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer analoger Eingangs-Kanäle
 | 1 | 1st input | Unsigned16 | ro | Y | 0x0000 | 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | 254. input | Unsigned16 | ro | Y | 0x0000 | 254. Eingangskanal

Die analogen Signale werden linksbündig dargestellt. Damit wird die Darstellung im Prozessabbild unabhängig von der tatsächlichen Auflösung. Details zum Datenformat finden sich beim jeweiligen Signaltyp.

Analoge Ausgänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6411 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer analoger Ausgangs-Kanäle
 | 1 | 1st input block | Unsigned16 | rw | Y | 0x0000 | 1. Ausgangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | 254. input block | Unsigned16 | rw | Y | 0x0000 | 254. Ausgangskanal

Die analogen Signale werden linksbündig dargestellt. Damit wird die Darstellung im Prozessabbild unabhängig von der tatsächlichen Auflösung. Details zum Datenformat finden sich beim jeweiligen Signaltyp.

Ereignissteuerung Analoge Eingänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6423 | 0 | Global Interrupt Enable | Boolean | rw | N | FALSE (0) | Aktiviert das ereignisgesteuerte Senden von PDOs mit Analogeingängen.

Nach CANopen sind die Analogeingänge in TxPDO2..4 zwar per Default auf den Transmission Type 255 (ereignisgesteuert) eingestellt, jedoch ist das Ereignis (die Änderung eines Eingangswertes) über die Ereignissteuerung im Objekt 0x6423 deaktiviert, um ein Überfluten des Busses mit Analogsignalen zu verhindern. Es empfiehlt sich, das Datenaufkommen der Analog-PDOs entweder durch synchrone Kommunikation oder durch Verwendung des Event Timers zu kontrollieren. Im ereignisgesteuerten Betrieb kann das Sendeverhalten der Analog-PDOs vor dem Aktivieren durch Einstellen von Inhibit-Zeit (Objekt 0x1800ff, Subindex 3) und/oder Grenzwertüberwachung (Objekt 0x6424 + 0x6425) und/oder Deltafunktion (Objekt 0x6426) parametriert werden.

Oberer Grenzwert Analoge Eingänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6424 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer analoger Eingangs-Kanäle
 | 1 | upper limit 1st input | Unsigned16 | rw | Y | 0x0000 | Oberer Grenzwert 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | upper limit 254. input | Unsigned16 | rw | Y | 0x0000 | Oberer Grenzwert 254. Eingangskanal

Werte ungleich 0 aktivieren den oberen Grenzwert für diesen Kanal. Ein PDO wird dann abgesetzt wenn dieser Grenzwert überschritten wird. Zusätzlich muss die Ereignissteuerung aktiviert sein (Objekt 0x6423). Das Datenformat entspricht dem der Analogeingänge.

Unterer Grenzwert Analoge Eingänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6425 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer analoger Eingangs-Kanäle
 | 1 | lower limit 1st input | Unsigned16 | rw | Y | 0x0000 | Unterer Grenzwert 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | lower limit 254. input | Unsigned16 | rw | Y | 0x0000 | Unterer Grenzwert 254. Eingangskanal

Werte ungleich 0 aktivieren den unteren Grenzwert für diesen Kanal. Ein PDO wird dann abgesetzt wenn dieser Grenzwert unterschritten wird. Zusätzlich muss die Ereignissteuerung aktiviert sein (Objekt 0x6423). Das Datenformat entspricht dem der Analogeingänge.

Deltafunktion Analoge Eingänge

Index | Subindex | Name | Typ | Attrb. | Map. | Default-Wert | Bedeutung
0x6426 | 0 | Anzahl Elemente | Unsigned8 | ro | N | abhängig von Typ und Bestückung | Anzahl verfügbarer analoger Eingangs-Kanäle
 | 1 | delta value 1st input | Unsigned16 | rw | Y | 0x0000 | Deltawert 1. Eingangskanal
 | ... | ... | ... | ... | ... | ... | ...
 | 0XFE | delta value 254. input | Unsigned16 | rw | Y | 0x0000 | Deltawert 254. Eingangskanal

Werte ungleich 0 aktivieren die Deltafunktion für diesen Kanal. Ein PDO wird dann abgesetzt wenn sich der Wert seit dem letzten Senden um mehr als den Deltawert verändert hat. Zusätzlich muss die Ereignissteuerung aktiviert sein (Objekt 0x6423). Das Datenformat entspricht dem der Analogeingänge (Deltawert: nur positive Werte).


CX805x - LED-Anzeigen

BECKHOFF CX805x: Intriebnahme

LED-Anzeigen

Ethernet-Schnittstelle X001

Schnittstelle X001 | Ethernet (CX805x) | Bedeutung
LED grün | an | Link vorhanden
LED gelb | blinkt | Aktivität

CAN Master-LEDs des CX8050

Beschriftung | Bedeutung | Farbe | Bedeutung
TC | Zeigt den Status des Kopplers an | rot | TwinCAT im "stopp" Modus
 |  | Grün | TwinCAT im "run" Modus
 |  | Blau (Wenn roter DIP Schalter 1 auf on steht beim starten des Kopplers) | TwinCAT im "config" Modus
CAN | Zeigt den Status des CAN an | Grün an / Rot aus | CAN ist in Ordnung
 |  | Grün aus / Rot an | CAN im Bus off
 |  | Grün 200 ms / Rot 200 ms | CAN Warning
 |  | Grün aus / Rot aus | CAN nicht Konfiguriert
TX/RX | Zeigt Fehler des CAN an | Grün an / Rot aus | Alle Nodes haben den NodeState = 0
 |  | Grün 200 ms / Rot 200 ms | Alle Boxen im OP aber die Task noch nicht gestartet
 |  | Grün aus / Rot 200 ms | Nicht alle Nodes im OP
 |  | Grün aus / Rot aus | Keine Boxen Konfiguriert

CANopen Slave-LEDs des CX8051

Beschriftung | Bedeutung | Farbe | Bedeutung
TC | Zeigt den Status des Kopplers an | rot | TwinCAT im "stopp" Modus
 |  | Grün | TwinCAT im "run" Modus
 |  | Blau (Wenn roter DIP Schalter 1 auf on steht beim starten des Kopplers) | TwinCAT im "config" Modus
CAN | Zeigt den Status des CAN an | Grün an / Rot aus | CAN ist in Ordnung
 |  | Grün aus / Rot an | CAN im Bus off
 |  | Grün 200 ms / Rot 200 ms | CAN Warning
 |  | Sehr schnelles blinken von grün und rot | Baudraten Suche aktiv
 |  | Grün aus / Rot aus | CAN nicht Konfiguriert
TX/RX | Zeigt Fehler des CAN an | Grün an | Alles in Ordnung
 |  | Grün 200 ms / Rot 200 ms | Alle Boxen im OP aber die Task noch nicht gestartet
 |  | Grün aus / Rot 200 ms | Nicht alle Boxen im OP
 |  | Grün aus / Rot aus | Keine Boxen Konfiguriert

LEDs der Netzteilklemme

Betrieb mit K-Bus Klemmen Betrieb mit E-Bus Klemmen

Anzeige LED | Beschreibung | Bedeutung
1 Us 24V (Links Oben, 1te Reihe) | Versorgung Spannung CX80xx | an - 24V angeschlossen
2 Up 24V (Rechts Oben, 1te Reihe) | Versorgung Spannung Powerkontakte | an - 24V angeschlossen
3 L/A (Links Mitte, 2te Reihe) | EtherCAT LED | blinkt grün EtherCAT Kommunikation aktiv an E-Bus angeschlossen / Kein Datenverkehr aus E-Bus nicht angeschlossen
4 K-BUS RUN (Rechts Mitte, 2te Reihe) | K-Bus LED RUN | leuchtet grün K-Bus läuft, alles in Ordnung
6 K-BUS ERR (Rechts unten, 3te Reihe) | K-Bus LED ERR | leuchtet rot, Fehler des K-Bus siehe K-Bus Fehlercode

K-Bus-Fehler-Codes

Fehler-Code | Fehlerargument | Beschreibung | Abhilfe
Ständiges, konstantes Blinken EMV Probleme
  • Spannungsversorgung auf Unter- oder Überspannungsspitzen kontrollieren
  • EMV-Maßnahmen ergreifen
  • Liegt ein K-Bus-Fehler vor, kann durch erneutes Starten (Aus- und Wiedereinschalten des Koppler) der Fehler lokalisiert werden
3 Impulse 0 K-Bus-Kommandofehler - Keine Busklemme gesteckt
- Eine der Busklemmen ist defekt, angehängte Busklemmen halbieren und prüfen ob der Fehler bei den übrigen Busklemmen noch vorhanden ist. Dies weiter durchführen, bis die defekte Busklemme lokalisiert ist.
4 Impulse | 0 | K-Bus-Datenfehler, Bruchstelle hinter dem Buskoppler | Prüfen ob die n+1 Busklemme richtig gesteckt ist, gegebenenfalls tauschen
n | Bruchstelle hinter Busklemme n | Kontrollieren ob die Busendklemme 9010 gesteckt ist
5 Impulse | n | K-Bus-Fehler bei Register-Kommunikation mit Busklemme n | n-te Busklemme tauschen
6 Impulse | 0 | Fehler bei der Initialisierung | Buskoppler tauschen
1 | Interner Datenfehler | Hardware-Reset des Buskopplers (aus - und wieder einschalten)
8 | Interner Datenfehler | Hardware-Reset des Buskopplers (aus- und wieder einschalten)
7 Impulse | 0 | Prozessdatenlängen stimmen nicht mit der Konfiguration überein | Überprüfen Sie die Busklemmen zu den konfigurierten Busklemmen
1..n | K-Bus Reset fehlgeschlagen | Überprüfen Sie die Busklemmen


CX80xx - Erste Schritte

BECKHOFF CX80xx: Anhang

Erste Schritte

Folgende Komponenten sind für die First Steps notwendig

  • PC mit TwinCAT 2.11 R3
  • Ethernet Kabel
  • Stromversorgung (24 VDC), Verkabelungsmaterial
  • eine KL2xxx oder EL2xxx, digitale Ausgangsklemme, Endklemme

Hinweis 		Erforderliche TwinCAT-Version
Zur Programmierung der CX80xx Baureihe ist ein TwinCAT 2.11 R3 erforderlich. Ältere TwinCAT-Versionen sowie ein TwinCAT 3.x werden nicht unterstützt!

1. Schließen sie K-Bus oder E-Bus Klemmen an den Controller an.

2. Schließen Sie den CX80xx an Spannung an (siehe Spannungsversorgung).

3. Verbinden Sie Ethernet (CX80xx X001) mit Ihrem Netzwerk oder eine direkt Verbindung zu ihrem PC (achten sie darauf das bei einer peer_to_peer Verbindung die IP-Adressierung bei Ihrem PC auf DHCP steht).

4. Warten Sie einige Zeit, ca. 1..2 Minuten, entweder wird vom DHCP Server dem CX80xx eine IP Adresse zugewiesen (geht in der Regel relative schnell) oder wenn er keinen DHCP Server findet benutzt er eine lokale IP Adresse.

5. Schalten Sie TC auf dem PC in Config Mode (TwinCAT Icon blau) und starten Sie den System Manager

6. Im System Manager klicken Sie auf das PC Symbol (Choose Target System) oder >F8<

7. Es öffnet sich folgender Dialog und drücken Sie dann auf Search (Ethernet).

8. Wählen Sie Option 1 aus wenn Sie über DHCP Adressiert haben oder Option 2 bei DHCP oder lokaler IP Adresse. Drücken Sie dann auf "Broadcast Search".

Ihr Netzwerk wird nach Beckhoff Steuerungen durchsucht. Wird keine gefunden ist das DHCP der Steuerung noch nicht abgeschlossen oder auf Ihrem PC passen die Netzwerkeinstellungen nicht. Ein nicht angeschlossenes Netzwerkkabel kann natürlich auch die Ursache sein, das sollte aber nicht der Fall sein wenn Punkt 3 berücksichtigt worden ist.

9. Der Host Name wird per Default gebildet aus "CX-" und den letzten 4 Byte der Mac Adresse. Die MAC Adresse finden Sie auf der Seite des CX80xx. Die MAC-Adresse ist immer 6 Byte lang wobei die ersten 3 Byte die Herstellerkennzeichnung ist und bei Beckhoff Geräten immer 00 01 05 ist.

Ein "X" bei connected bedeutet das der CX bereits im System bekannt ist und verwendet werden kann. Um Ihn bekannt zu machen klicken sie in der Liste auf den CX mit dem Sie sich verbinden wollen und klicken Sie auf "Add Route". Es folgt eine Eingabe Maske "User name" und "Password". Per Default gibt es kein Passwort, einfach mit OK bestätigen. Danach sollte das "X" bei connected erscheinen.

10. Als nächstes sollte der CX jetzt in der Liste der Geräte erscheinen, wählen Sie Ihn an und bestätigen sie das mit OK.

11. Kontrollieren Sie ob die Verbindung da ist. Im System Manager rechts unten in der Ecke. Es muss blau oder grün sein und darf nicht gelb sein.

12. Ist die Einstellung grün schalten sie den CX in den Config Mode "Shift F4" oder blaues TC Icon im System Manger drücken. Der System Manager fragt Sie nun ob sie in den Config Mode schalten wollen, das bestätigen Sie mit OK.

13. Rechts unten müsste die Einstellung auf blau wechseln, auch die TC LED auf dem CX80xx muss jetzt blau leuchten.

14. Klicken Sie nun auf I/O Devices und dann auf Scan Devices...

15. Es kommt ein Hinweis das nicht alles automatisch erkannt wird.

16. Es wird in der Regel das CCAT Interface gefunden (CX8090) oder das entsprechende Feldbusinterface (andere CX80xx Geräte) und entweder ein K-Bus Interface oder ein EtherCAT Interface, das kommt jetzt darauf an welche Klemmen Sie am CX angeschlossen haben. Das CCAT Interface muss im System Manager File vorhanden sein und darf nicht gelöscht werden. Sollte bei scannen eine Fehlermeldung erscheinen kontrollieren Sie den Versionsstand ihrer TwinCAT Version und führen sie gegebenenfalls ein update durch.

17. Kommen wir jetzt zum Programmieren, öffnen Sie dazu das PLC Control, wählen Sie Datei neu. Das PLC Control fragt Sie nach dem Zielsystem. Wählen Sie CX (ARM) aus. Danach fragt er Sie nach dem Baustein, stellen Sie die Sprache ST ein (Strukturierter Text). Jetzt schreiben Sie ein kleines Programm...

Übersetzen Sie das Programm, ist es Fehlerfrei (es müsste eine Warning kommen, das ist soweit OK) speichern Sie das Projekt unter einem beliebigen Namen, übersetzen sie es erneut und speichern sie dann noch einmal.

18: Wechseln Sie wieder zum System Manager und fügen Sie das Programm unter PLC Configuration an. Es wird nach einem Dateiname.typ File gesucht.

19: Öffnen Sie nun das Projekt dann die Task und dann auf Outputs, dort muss es dann eine Variable MAIN.bToggle geben. Diese können Sie mit der Hardware verknüpfen. Klicken Sie dazu auf "Linked to...".

Wählen Sie einen digitalen Ausgang aus. Jetzt können sie die Konfiguration auf dem CX runterladen und den CX in den Run Mode schalten. Dafür klicken Sie auf den "Würfel" oder Control + Shift + F4. Die TC LED auf dem CX müsste dann grün leuchten.

20. Wechsel sie wieder in das PLC Control, gehen Sie auf "Online/Auswahl des Zielsystems", wählen Sie den richtigen CX aus, klicken Sie ihn auf und wählen Sie Laufzeitsystem1 aus. Jetzt wieder "Online/Einloggen" (F11) übertragen Sie das SPS Programm, danach "Online/Start" (F5). Jetzt müsste die LED auf ihrerer Klemme blinken.

21. Als letzten Schritt Online/Erzeugen eines Bootprojektes. Damit ist das Projekt abgeschlossen und ihr erstes Programm auf dem CX gespeichert.

Herzlichen Glückwunsch, die Grundlagen sind jetzt vorhanden und warten drauf ausgebaut zu werden. Viel Erfolg!


CX80xx - Image Update

BECKHOFF CX80xx: Anhang

Image Update

Es gibt zwei verschiedenen Möglichkeiten das Image des CX80xx zu aktualisieren.

Hinweis 		Voraussetzungen
  • Bitte stellen Sie vor dem Update sicher, dass Ihr CX80xx das Image unterstützt, das Sie aufspielen wollen.
  • Bitte löschen Sie beim Image-Update zuerst alle vorhandenen Dateien und kopieren Sie dann erst das neue Image.

Kopieren Sie immer alle Dateien und Verzeichnisse um einen CX80xx zu aktualisieren.

Update über USB

Hierfür ist ein USB-Kabel erforderlich!

  • CX80xx ausschalten
  • Roten DIP-Schalter (unter der Klappe) DIP 1 auf ON stellen
  • CX einschalten
  • PC mit USB verbinden
  • Löschen Sie alle Dateien (wir empfehlen erst alle Dateien zu sichern), keine Formatierung
  • Warten bis das kopieren zu Ende ist und entfernen Sie das USB Kabel
  • Schalten Sie den DIP-Schalter 1 auf OFF
  • CX80xx ausschalten
  • CX80xx einschalten, es kann möglich sein, dass das erste mal einschalten etwas länger dauert

Update der MicroSD-Karte

Hierfür ist ein MicroSD-Karten-Lesegerät erforderlich!

  • Entnehmen Sie die MicroSD-Karte aus dem ausgeschalteten CX Gerät.
  • Stecken Sie die MicroSD-Karte in das Lesegerät
  • Löschen Sie alle Dateien (wir empfehlen zuvor alle Dateien zu sichern), keine Formatierung
  • Aufspielen des neuen Images
  • Warten bis der Kopiervorgang abgeschlossen ist und entnehmen Sie die MicroSD-Karte
  • Stecken Sie die MicroSD-Karte wieder in den SD-Slot ihres ausgeschalteten CX
  • Jetzt schalten Sie den CX wieder ein, es kann möglich sein, dass das erste mal einschalten etwas länger dauert


BECKHOFF Feldbuskomponenten - CAN Identifier-Liste

BECKHOFF Feldbuskomponenten: Anhang

CAN Identifier-Liste

Die hier aufgeführte Liste soll bei der Identifizierung und Zuordnung von CANopen Nachrichten helfen. Aufgeführt sind alle von der CANopen Default Identifier Verteilung zugeordneten Identifier, sowie die von BECKHOFF via Objekt 0x5500 vergebenen herstellerspezifischen Default Identifier (nur in Netzen mit Knotenadressen <64 zu verwenden).

In der *chm-Ausgabe der Dokumentation dienen die folgenden Werte als Suchhilfe und "Einsprungpunkte" in die umfangreiche Identfier-Tabelle:

Dezimal: 400 500 600 700 800 900 1000 1100 1200 1300 1400 1500 1600 1700 1800 1900

Hexadezimal: 0x181 0x1C1 0x201 0x301 0x401 0x501 0x601 0x701

Die Identifier-Verteilung via Objekt 0x5500 folgt diesem Schema:

Objekt | resultierende COB-ID (dez) | resultierende COB-ID (hex)
Emergency | 129 bis 191 [255] | 0x81 bis 0xBF [0xFF]
TxPDO1 | 385 bis 447 [511] | 0x181 bis 0x1BF [0x1FF]
RxPDO1 | 513 bis 575 [639] | 0x201 bis 0x23F [0x27F]
TxPDO2 | 641 bis 676 [767] | 0x281 bis 0x2BF [0x2FF]
RxPDO2 | 769 bis 831 [895] | 0x301 bis 0x33F [0x37F]
TxDPO3 | 897 bis 959 [1023] | 0x381 bis 0x3BF [0x3FF]
RxPDO3 | 1025 bis 1087 [1151] | 0x401 bis 0x43F [0x47F]
TxPDO4 | 1153 bis 1215 [1279] | 0x481 bis 0x4BF [0x4FF]
RxPDO4 | 1281 bis 1343 [1407] | 0x501 bis 0x53F [0x57F]
TxPDO5 | 1665 bis 1727 | 0x681 bis 0x6BF
RxPDO5 | 1921 bis 1983 | 0x781 bis 0x7BF
TxPDO6 | 449 bis 511 | 0x1C1 bis 0x1FF
RxPDO6 | 577 bis 639 | 0x241 bis 0x27F
TxDPO7 | 705 bis 767 | 0x2C1 bis 0x2FF
RxPDO7 | 833 bis 895 | 0x341 bis 0x37F
TxPDO8 | 961 bis 1023 | 0x3C1 bis 0x3FF
RxPDO8 | 1089 bis 1151 | 0x441 bis 0x47F
TxPDO9 | 1217 bis 1279 | 0x4C1 bis 0x4FF
RxPDO9 | 1345 bis 1407 | 0x541 bis 0x57F
TxDPO10 | 1473 bis 1535 | 0x5C1 bis 0x5FF
RxPDO10 | 1601 bis 1663 | 0x641 bis 0x67F
TxPDO11 | 1729 bis 1791 | 0x6C1 bis 0x6FF
RxPDO11 | 1857 bis 1919 | 0x741 bis 0x77F
SDO (Tx) | 1409 bis 1471 [1535] | 0x581 bis 0x5BF [0x5FF]
SDO (Rx) | 1537 bis 1599 [1663] | 0x601 bis 0x63F [0x67F]
Guarding / Heartbeat / Bootup | 1793 bis 1855 [1919] | 0x701 bis 0x73F [0x77F]

Identifierliste

Mit * gekennzeichnete Identifier werden auf den Buskopplern nach Beschreiben von Index 0x5500 herstellerspezifisch vergeben.

dez | hex | Telegrammtyp | dez | hex | Telegrammtyp | dez | hex | Telegrammtyp
0 | 0x00 | NMT | 874 | 0x36A | RxPDO7*, Nd.42 | 1430 | 0x596 | SDO Tx Nd.22
128 | 0x80 | SYNC | 875 | 0x36B | RxPDO7*, Nd.43 | 1431 | 0x597 | SDO Tx Nd.23
129 | 0x81 | EMCY Nd.1 | 876 | 0x36C | RxPDO7*, Nd.44 | 1432 | 0x598 | SDO Tx Nd.24
130 | 0x82 | EMCY Nd.2 | 877 | 0x36D | RxPDO7*, Nd.45 | 1433 | 0x599 | SDO Tx Nd.25
131 | 0x83 | EMCY Nd.3 | 878 | 0x36E | RxPDO7*, Nd.46 | 1434 | 0x59A | SDO Tx Nd.26
132 | 0x84 | EMCY Nd.4 | 879 | 0x36F | RxPDO7*, Nd.47 | 1435 | 0x59B | SDO Tx Nd.27
133 | 0x85 | EMCY Nd.5 | 880 | 0x370 | RxPDO7*, Nd.48 | 1436 | 0x59C | SDO Tx Nd.28
134 | 0x86 | EMCY Nd.6 | 881 | 0x371 | RxPDO7*, Nd.49 | 1437 | 0x59D | SDO Tx Nd.29
135 | 0x87 | EMCY Nd.7 | 882 | 0x372 | RxPDO7*, Nd.50 | 1438 | 0x59E | SDO Tx Nd.30
136 | 0x88 | EMCY Nd.8 | 883 | 0x373 | RxPDO7*, Nd.51 | 1439 | 0x59F | SDO Tx Nd.31
137 | 0x89 | EMCY Nd.9 | 884 | 0x374 | RxPDO7*, Nd.52 | 1440 | 0x5A0 | SDO Tx Nd.32
138 | 0x8A | EMCY Nd.10 | 885 | 0x375 | RxPDO7*, Nd.53 | 1441 | 0x5A1 | SDO Tx Nd.33
139 | 0x8B | EMCY Nd.11 | 886 | 0x376 | RxPDO7*, Nd.54 | 1442 | 0x5A2 | SDO Tx Nd.34
140 | 0x8C | EMCY Nd.12 | 887 | 0x377 | RxPDO7*, Nd.55 | 1443 | 0x5A3 | SDO Tx Nd.35
141 | 0x8D | EMCY Nd.13 | 888 | 0x378 | RxPDO7*, Nd.56 | 1444 | 0x5A4 | SDO Tx Nd.36
142 | 0x8E | EMCY Nd.14 | 889 | 0x379 | RxPDO7*, Nd.57 | 1445 | 0x5A5 | SDO Tx Nd.37
143 | 0x8F | EMCY Nd.15 | 890 | 0x37A | RxPDO7*, Nd.58 | 1446 | 0x5A6 | SDO Tx Nd.38
144 | 0x90 | EMCY Nd.16 | 891 | 0x37B | RxPDO7*, Nd.59 | 1447 | 0x5A7 | SDO Tx Nd.39
145 | 0x91 | EMCY Nd.17 | 892 | 0x37C | RxPDO7*, Nd.60 | 1448 | 0x5A8 | SDO Tx Nd.40
146 | 0x92 | EMCY Nd.18 | 893 | 0x37D | RxPDO7*, Nd.61 | 1449 | 0x5A9 | SDO Tx Nd.41
147 | 0x93 | EMCY Nd.19 | 894 | 0x37E | RxPDO7*, Nd.62 | 1450 | 0x5AA | SDO Tx Nd.42
148 | 0x94 | EMCY Nd.20 | 895 | 0x37F | RxPDO7*, Nd.63 | 1451 | 0x5AB | SDO Tx Nd.43
149 | 0x95 | EMCY Nd.21 | 897 | 0x381 | TxPDO3*, Nd.1 | 1452 | 0x5AC | SDO Tx Nd.44
150 | 0x96 | EMCY Nd.22 | 898 | 0x382 | TxPDO3*, Nd.2 | 1453 | 0x5AD | SDO Tx Nd.45
151 | 0x97 | EMCY Nd.23 | 899 | 0x383 | TxPDO3*, Nd.3 | 1454 | 0x5AE | SDO Tx Nd.46
152 | 0x98 | EMCY Nd.24 | 900 | 0x384 | TxPDO3*, Nd.4 | 1455 | 0x5AF | SDO Tx Nd.47
153 | 0x99 | EMCY Nd.25 | 901 | 0x385 | TxPDO3*, Nd.5 | 1456 | 0x5B0 | SDO Tx Nd.48
154 | 0x9A | EMCY Nd.26 | 902 | 0x386 | TxPDO3*, Nd.6 | 1457 | 0x5B1 | SDO Tx Nd.49
155 | 0x9B | EMCY Nd.27 | 903 | 0x387 | TxPDO3*, Nd.7 | 1458 | 0x5B2 | SDO Tx Nd.50
156 | 0x9C | EMCY Nd.28 | 904 | 0x388 | TxPDO3*, Nd.8 | 1459 | 0x5B3 | SDO Tx Nd.51
157 | 0x9D | EMCY Nd.29 | 905 | 0x389 | TxPDO3*, Nd.9 | 1460 | 0x5B4 | SDO Tx Nd.52
158 | 0x9E | EMCY Nd.30 | 906 | 0x38A | TxPDO3*, Nd.10 | 1461 | 0x5B5 | SDO Tx Nd.53
159 | 0x9F | EMCY Nd.31 | 907 | 0x38B | TxPDO3*, Nd.11 | 1462 | 0x5B6 | SDO Tx Nd.54
160 | 0xA0 | EMCY Nd.32 | 908 | 0x38C | TxPDO3*, Nd.12 | 1463 | 0x5B7 | SDO Tx Nd.55
161 | 0xA1 | EMCY Nd.33 | 909 | 0x38D | TxPDO3*, Nd.13 | 1464 | 0x5B8 | SDO Tx Nd.56
162 | 0xA2 | EMCY Nd.34 | 910 | 0x38E | TxPDO3*, Nd.14 | 1465 | 0x5B9 | SDO Tx Nd.57
163 | 0xA3 | EMCY Nd.35 | 911 | 0x38F | TxPDO3*, Nd.15 | 1466 | 0x5BA | SDO Tx Nd.58
164 | 0xA4 | EMCY Nd.36 | 912 | 0x390 | TxPDO3*, Nd.16 | 1467 | 0x5BB | SDO Tx Nd.59
165 | 0xA5 | EMCY Nd.37 | 913 | 0x391 | TxPDO3*, Nd.17 | 1468 | 0x5BC | SDO Tx Nd.60
166 | 0xA6 | EMCY Nd.38 | 914 | 0x392 | TxPDO3*, Nd.18 | 1469 | 0x5BD | SDO Tx Nd.61
167 | 0xA7 | EMCY Nd.39 | 915 | 0x393 | TxPDO3*, Nd.19 | 1470 | 0x5BE | SDO Tx Nd.62
168 | 0xA8 | EMCY Nd.40 | 916 | 0x394 | TxPDO3*, Nd.20 | 1471 | 0x5BF | SDO Tx Nd.63
169 | 0xA9 | EMCY Nd.41 | 917 | 0x395 | TxPDO3*, Nd.21 | 1473 | 0x5C1 | TxPDO10*, Nd.1
170 | 0xAA | EMCY Nd.42 | 918 | 0x396 | TxPDO3*, Nd.22 | 1474 | 0x5C2 | TxPDO10*, Nd.2
171 | 0xAB | EMCY Nd.43 | 919 | 0x397 | TxPDO3*, Nd.23 | 1475 | 0x5C3 | TxPDO10*, Nd.3
172 | 0xAC | EMCY Nd.44 | 920 | 0x398 | TxPDO3*, Nd.24 | 1476 | 0x5C4 | TxPDO10*, Nd.4
173 | 0xAD | EMCY Nd.45 | 921 | 0x399 | TxPDO3*, Nd.25 | 1477 | 0x5C5 | TxPDO10*, Nd.5
174 | 0xAE | EMCY Nd.46 | 922 | 0x39A | TxPDO3*, Nd.26 | 1478 | 0x5C6 | TxPDO10*, Nd.6
175 | 0xAF | EMCY Nd.47 | 923 | 0x39B | TxPDO3*, Nd.27 | 1479 | 0x5C7 | TxPDO10*, Nd.7
176 | 0xB0 | EMCY Nd.48 | 924 | 0x39C | TxPDO3*, Nd.28 | 1480 | 0x5C8 | TxPDO10*, Nd.8
177 | 0xB1 | EMCY Nd.49 | 925 | 0x39D | TxPDO3*, Nd.29 | 1481 | 0x5C9 | TxPDO10*, Nd.9
178 | 0xB2 | EMCY Nd.50 | 926 | 0x39E | TxPDO3*, Nd.30 | 1482 | 0x5CA | TxPDO10*, Nd.10
179 | 0xB3 | EMCY Nd.51 | 927 | 0x39F | TxPDO3*, Nd.31 | 1483 | 0x5CB | TxPDO10*, Nd.11
180 | 0xB4 | EMCY Nd.52 | 928 | 0x3A0 | TxPDO3*, Nd.32 | 1484 | 0x5CC | TxPDO10*, Nd.12
181 | 0xB5 | EMCY Nd.53 | 929 | 0x3A1 | TxPDO3*, Nd.33 | 1485 | 0x5CD | TxPDO10*, Nd.13
182 | 0xB6 | EMCY Nd.54 | 930 | 0x3A2 | TxPDO3*, Nd.34 | 1486 | 0x5CE | TxPDO10*, Nd.14
183 | 0xB7 | EMCY Nd.55 | 931 | 0x3A3 | TxPDO3*, Nd.35 | 1487 | 0x5CF | TxPDO10*, Nd.15
184 | 0xB8 | EMCY Nd.56 | 932 | 0x3A4 | TxPDO3*, Nd.36 | 1488 | 0x5D0 | TxPDO10*, Nd.16
185 | 0xB9 | EMCY Nd.57 | 933 | 0x3A5 | TxPDO3*, Nd.37 | 1489 | 0x5D1 | TxPDO10*, Nd.17
186 | 0xBA | EMCY Nd.58 | 934 | 0x3A6 | TxPDO3*, Nd.38 | 1490 | 0x5D2 | TxPDO10*, Nd.18
187 | 0xBB | EMCY Nd.59 | 935 | 0x3A7 | TxPDO3*, Nd.39 | 1491 | 0x5D3 | TxPDO10*, Nd.19
188 | 0xBC | EMCY Nd.60 | 936 | 0x3A8 | TxPDO3*, Nd.40 | 1492 | 0x5D4 | TxPDO10*, Nd.20
189 | 0xBD | EMCY Nd.61 | 937 | 0x3A9 | TxPDO3*, Nd.41 | 1493 | 0x5D5 | TxPDO10*, Nd.21
190 | 0xBE | EMCY Nd.62 | 938 | 0x3AA | TxPDO3*, Nd.42 | 1494 | 0x5D6 | TxPDO10*, Nd.22
191 | 0xBF | EMCY Nd.63 | 939 | 0x3AB | TxPDO3*, Nd.43 | 1495 | 0x5D7 | TxPDO10*, Nd.23
385 | 0x181 | TxPDO1, DI, Nd.1 | 940 | 0x3AC | TxPDO3*, Nd.44 | 1496 | 0x5D8 | TxPDO10*, Nd.24
386 | 0x182 | TxPDO1, DI, Nd.2 | 941 | 0x3AD | TxPDO3*, Nd.45 | 1497 | 0x5D9 | TxPDO10*, Nd.25
387 | 0x183 | TxPDO1, DI, Nd.3 | 942 | 0x3AE | TxPDO3*, Nd.46 | 1498 | 0x5DA | TxPDO10*, Nd.26
388 | 0x184 | TxPDO1, DI, Nd.4 | 943 | 0x3AF | TxPDO3*, Nd.47 | 1499 | 0x5DB | TxPDO10*, Nd.27
389 | 0x185 | TxPDO1, DI, Nd.5 | 944 | 0x3B0 | TxPDO3*, Nd.48 | 1500 | 0x5DC | TxPDO10*, Nd.28
390 | 0x186 | TxPDO1, DI, Nd.6 | 945 | 0x3B1 | TxPDO3*, Nd.49 | 1501 | 0xDE | TxPDO10*, Nd.29
391 | 0x187 | TxPDO1, DI, Nd.7 | 946 | 0x3B2 | TxPDO3*, Nd.50 | 1502 | 0x5DE | TxPDO10*, Nd.30
392 | 0x188 | TxPDO1, DI, Nd.8 | 947 | 0x3B3 | TxPDO3*, Nd.51 | 1503 | 0x5DF | TxPDO10*, Nd.31
393 | 0x189 | TxPDO1, DI, Nd.9 | 948 | 0x3B4 | TxPDO3*, Nd.52 | 1504 | 0x5E0 | TxPDO10*, Nd.32
394 | 0x18A | TxPDO1, DI, Nd.10 | 949 | 0x3B5 | TxPDO3*, Nd.53 | 1505 | 0x5E1 | TxPDO10*, Nd.33
395 | 0x18B | TxPDO1, DI, Nd.11 | 950 | 0x3B6 | TxPDO3*, Nd.54 | 1506 | 0x5E2 | TxPDO10*, Nd.34
396 | 0x18C | TxPDO1, DI, Nd.12 | 951 | 0x3B7 | TxPDO3*, Nd.55 | 1507 | 0x5E3 | TxPDO10*, Nd.35
397 | 0x18D | TxPDO1, DI, Nd.13 | 952 | 0x3B8 | TxPDO3*, Nd.56 | 1508 | 0x5E4 | TxPDO10*, Nd.36
398 | 0x18E | TxPDO1, DI, Nd.14 | 953 | 0x3B9 | TxPDO3*, Nd.57 | 1509 | 0x5E5 | TxPDO10*, Nd.37
399 | 0x18F | TxPDO1, DI, Nd.15 | 954 | 0x3BA | TxPDO3*, Nd.58 | 1510 | 0x5E6 | TxPDO10*, Nd.38
400 | 0x190 | TxPDO1, DI, Nd.16 | 955 | 0x3BB | TxPDO3*, Nd.59 | 1511 | 0x5E7 | TxPDO10*, Nd.39
401 | 0x191 | TxPDO1, DI, Nd.17 | 956 | 0x3BC | TxPDO3*, Nd.60 | 1512 | 0x5E8 | TxPDO10*, Nd.40
402 | 0x192 | TxPDO1, DI, Nd.18 | 957 | 0x3BD | TxPDO3*, Nd.61 | 1513 | 0x5E9 | TxPDO10*, Nd.41
403 | 0x193 | TxPDO1, DI, Nd.19 | 958 | 0x3BE | TxPDO3*, Nd.62 | 1514 | 0x5EA | TxPDO10*, Nd.42
404 | 0x194 | TxPDO1, DI, Nd.20 | 959 | 0x3BF | TxPDO3*, Nd.63 | 1515 | 0x5EB | TxPDO10*, Nd.43
405 | 0x195 | TxPDO1, DI, Nd.21 | 961 | 0x3C1 | TxPDO8*, Nd.1 | 1516 | 0x5EC | TxPDO10*, Nd.44
406 | 0x196 | TxPDO1, DI, Nd.22 | 962 | 0x3C2 | TxPDO8*, Nd.2 | 1517 | 0x5ED | TxPDO10*, Nd.45
407 | 0x197 | TxPDO1, DI, Nd.23 | 963 | 0x3C3 | TxPDO8*, Nd.3 | 1518 | 0x5EE | TxPDO10*, Nd.46
408 | 0x198 | TxPDO1, DI, Nd.24 | 964 | 0x3C4 | TxPDO8*, Nd.4 | 1519 | 0x5EF | TxPDO10*, Nd.47
409 | 0x199 | TxPDO1, DI, Nd.25 | 965 | 0x3C5 | TxPDO8*, Nd.5 | 1520 | 0x5F0 | TxPDO10*, Nd.48
410 | 0x19A | TxPDO1, DI, Nd.26 | 966 | 0x3C6 | TxPDO8*, Nd.6 | 1521 | 0x5F1 | TxPDO10*, Nd.49
411 | 0x19B | TxPDO1, DI, Nd.27 | 967 | 0x3C7 | TxPDO8*, Nd.7 | 1522 | 0x5F2 | TxPDO10*, Nd.50
412 | 0x19C | TxPDO1, DI, Nd.28 | 968 | 0x3C8 | TxPDO8*, Nd.8 | 1523 | 0x5F3 | TxPDO10*, Nd.51
413 | 0x19D | TxPDO1, DI, Nd.29 | 969 | 0x3C9 | TxPDO8*, Nd.9 | 1524 | 0x5F4 | TxPDO10*, Nd.52
414 | 0x19E | TxPDO1, DI, Nd.30 | 970 | 0x3CA | TxPDO8*, Nd.10 | 1525 | 0x5F5 | TxPDO10*, Nd.53
415 | 0x19F | TxPDO1, DI, Nd.31 | 971 | 0x3CB | TxPDO8*, Nd.11 | 1526 | 0x5F6 | TxPDO10*, Nd.54
416 | 0x1A0 | TxPDO1, DI, Nd.32 | 972 | 0x3CC | TxPDO8*, Nd.12 | 1527 | 0x5F7 | TxPDO10*, Nd.55
417 | 0x1A1 | TxPDO1, DI, Nd.33 | 973 | 0x3CD | TxPDO8*, Nd.13 | 1528 | 0x5F8 | TxPDO10*, Nd.56
418 | 0x1A2 | TxPDO1, DI, Nd.34 | 974 | 0x3CE | TxPDO8*, Nd.14 | 1529 | 0x5F9 | TxPDO10*, Nd.57
419 | 0x1A3 | TxPDO1, DI, Nd.35 | 975 | 0x3CF | TxPDO8*, Nd.15 | 1530 | 0x5FA | TxPDO10*, Nd.58
420 | 0x1A4 | TxPDO1, DI, Nd.36 | 976 | 0x3D0 | TxPDO8*, Nd.16 | 1531 | 0x5FB | TxPDO10*, Nd.59
421 | 0x1A5 | TxPDO1, DI, Nd.37 | 977 | 0x3D1 | TxPDO8*, Nd.17 | 1532 | 0x5FC | TxPDO10*, Nd.60
422 | 0x1A6 | TxPDO1, DI, Nd.38 | 978 | 0x3D2 | TxPDO8*, Nd.18 | 1533 | 0x5FD | TxPDO10*, Nd.61
423 | 0x1A7 | TxPDO1, DI, Nd.39 | 979 | 0x3D3 | TxPDO8*, Nd.19 | 1534 | 0x5FE | TxPDO10*, Nd.62
424 | 0x1A8 | TxPDO1, DI, Nd.40 | 980 | 0x3D4 | TxPDO8*, Nd.20 | 1535 | 0x5FF | TxPDO10*, Nd.63
425 | 0x1A9 | TxPDO1, DI, Nd.41 | 981 | 0x3D5 | TxPDO8*, Nd.21 | 1537 | 0x601 | SDO Rx Nd.1
426 | 0x1AA | TxPDO1, DI, Nd.42 | 982 | 0x3D6 | TxPDO8*, Nd.22 | 1538 | 0x602 | SDO Rx Nd.2
427 | 0x1AB | TxPDO1, DI, Nd.43 | 983 | 0x3D7 | TxPDO8*, Nd.23 | 1539 | 0x603 | SDO Rx Nd.3
428 | 0x1AC | TxPDO1, DI, Nd.44 | 984 | 0x3D8 | TxPDO8*, Nd.24 | 1540 | 0x604 | SDO Rx Nd.4
429 | 0x1AD | TxPDO1, DI, Nd.45 | 985 | 0x3D9 | TxPDO8*, Nd.25 | 1541 | 0x605 | SDO Rx Nd.5
430 | 0x1AE | TxPDO1, DI, Nd.46 | 986 | 0x3DA | TxPDO8*, Nd.26 | 1542 | 0x606 | SDO Rx Nd.6
431 | 0x1AF | TxPDO1, DI, Nd.47 | 987 | 0x3DB | TxPDO8*, Nd.27 | 1543 | 0x607 | SDO Rx Nd.7
432 | 0x1B0 | TxPDO1, DI, Nd.48 | 988 | 0x3DC | TxPDO8*, Nd.28 | 1544 | 0x608 | SDO Rx Nd.8
433 | 0x1B1 | TxPDO1, DI, Nd.49 | 989 | 0x3DD | TxPDO8*, Nd.29 | 1545 | 0x609 | SDO Rx Nd.9
434 | 0x1B2 | TxPDO1, DI, Nd.50 | 990 | 0x3DE | TxPDO8*, Nd.30 | 1546 | 0x60A | SDO Rx Nd.10
435 | 0x1B3 | TxPDO1, DI, Nd.51 | 991 | 0x3DF | TxPDO8*, Nd.31 | 1547 | 0x60B | SDO Rx Nd.11
436 | 0x1B4 | TxPDO1, DI, Nd.52 | 992 | 0x3E0 | TxPDO8*, Nd.32 | 1548 | 0x60C | SDO Rx Nd.12
437 | 0x1B5 | TxPDO1, DI, Nd.53 | 993 | 0x3E1 | TxPDO8*, Nd.33 | 1549 | 0x60D | SDO Rx Nd.13
438 | 0x1B6 | TxPDO1, DI, Nd.54 | 994 | 0x3E2 | TxPDO8*, Nd.34 | 1550 | 0x60E | SDO Rx Nd.14
439 | 0x1B7 | TxPDO1, DI, Nd.55 | 995 | 0x3E3 | TxPDO8*, Nd.35 | 1551 | 0x60F | SDO Rx Nd.15
440 | 0x1B8 | TxPDO1, DI, Nd.56 | 996 | 0x3E4 | TxPDO8*, Nd.36 | 1552 | 0x610 | SDO Rx Nd.16
441 | 0x1B9 | TxPDO1, DI, Nd.57 | 997 | 0x3E5 | TxPDO8*, Nd.37 | 1553 | 0x611 | SDO Rx Nd.17
442 | 0x1BA | TxPDO1, DI, Nd.58 | 998 | 0x3E6 | TxPDO8*, Nd.38 | 1554 | 0x612 | SDO Rx Nd.18
443 | 0x1BB | TxPDO1, DI, Nd.59 | 999 | 0x3E7 | TxPDO8*, Nd.39 | 1555 | 0x613 | SDO Rx Nd.19
444 | 0x1BC | TxPDO1, DI, Nd.60 | 1000 | 0x3E8 | TxPDO8*, Nd.40 | 1556 | 0x614 | SDO Rx Nd.20
445 | 0x1BD | TxPDO1, DI, Nd.61 | 1001 | 0x3E9 | TxPDO8*, Nd.41 | 1557 | 0x615 | SDO Rx Nd.21
446 | 0x1BE | TxPDO1, DI, Nd.62 | 1002 | 0x3EA | TxPDO8*, Nd.42 | 1558 | 0x616 | SDO Rx Nd.22
447 | 0x1BF | TxPDO1, DI, Nd.63 | 1003 | 0x3EB | TxPDO8*, Nd.43 | 1559 | 0x617 | SDO Rx Nd.23
449 | 0x1C1 | TxPDO6*, Nd.1 | 1004 | 0x3EC | TxPDO8*, Nd.44 | 1560 | 0x618 | SDO Rx Nd.24
450 | 0x1C2 | TxPDO6*, Nd.2 | 1005 | 0x3ED | TxPDO8*, Nd.45 | 1561 | 0x619 | SDO Rx Nd.25
451 | 0x1C3 | TxPDO6*, Nd.3 | 1006 | 0x3EE | TxPDO8*, Nd.46 | 1562 | 0x61A | SDO Rx Nd.26
452 | 0x1C4 | TxPDO6*, Nd.4 | 1007 | 0x3EF | TxPDO8*, Nd.47 | 1563 | 0x61B | SDO Rx Nd.27
453 | 0x1C5 | TxPDO6*, Nd.5 | 1008 | 0x3F0 | TxPDO8*, Nd.48 | 1564 | 0x61C | SDO Rx Nd.28
454 | 0x1C6 | TxPDO6*, Nd.6 | 1009 | 0x3F1 | TxPDO8*, Nd.49 | 1565 | 0x61D | SDO Rx Nd.29
455 | 0x1C7 | TxPDO6*, Nd.7 | 1010 | 0x3F2 | TxPDO8*, Nd.50 | 1566 | 0x61E | SDO Rx Nd.30
456 | 0x1C8 | TxPDO6*, Nd.8 | 1011 | 0x3F3 | TxPDO8*, Nd.51 | 1567 | 0x61F | SDO Rx Nd.31
457 | 0x1C9 | TxPDO6*, Nd.9 | 1012 | 0x3F4 | TxPDO8*, Nd.52 | 1568 | 0x620 | SDO Rx Nd.32
458 | 0x1CA | TxPDO6*, Nd.10 | 1013 | 0x3F5 | TxPDO8*, Nd.53 | 1569 | 0x621 | SDO Rx Nd.33
459 | 0x1CB | TxPDO6*, Nd.11 | 1014 | 0x3F6 | TxPDO8*, Nd.54 | 1570 | 0x622 | SDO Rx Nd.34
460 | 0x1CC | TxPDO6*, Nd.12 | 1015 | 0x3F7 | TxPDO8*, Nd.55 | 1571 | 0x623 | SDO Rx Nd.35
461 | 0x1CD | TxPDO6*, Nd.13 | 1016 | 0x3F8 | TxPDO8*, Nd.56 | 1572 | 0x624 | SDO Rx Nd.36
462 | 0x1CE | TxPDO6*, Nd.14 | 1017 | 0x3F9 | TxPDO8*, Nd.57 | 1573 | 0x625 | SDO Rx Nd.37
463 | 0x1CF | TxPDO6*, Nd.15 | 1018 | 0x3FA | TxPDO8*, Nd.58 | 1574 | 0x626 | SDO Rx Nd.38
464 | 0x1D0 | TxPDO6*, Nd.16 | 1019 | 0x3FB | TxPDO8*, Nd.59 | 1575 | 0x627 | SDO Rx Nd.39
465 | 0x1D1 | TxPDO6*, Nd.17 | 1020 | 0x3FC | TxPDO8*, Nd.60 | 1576 | 0x628 | SDO Rx Nd.40
466 | 0x1D2 | TxPDO6*, Nd.18 | 1021 | 0x3FD | TxPDO8*, Nd.61 | 1577 | 0x629 | SDO Rx Nd.41
467 | 0x1D3 | TxPDO6*, Nd.19 | 1022 | 0x3FE | TxPDO8*, Nd.62 | 1578 | 0x62A | SDO Rx Nd.42
468 | 0x1D4 | TxPDO6*, Nd.20 | 1023 | 0x3FF | TxPDO8*, Nd.63 | 1579 | 0x62B | SDO Rx Nd.43
469 | 0x1D5 | TxPDO6*, Nd.21 | 1025 | 0x401 | RxPDO3*, Nd.1 | 1580 | 0x62C | SDO Rx Nd.44
470 | 0x1D6 | TxPDO6*, Nd.22 | 1026 | 0x402 | RxPDO3*, Nd.2 | 1581 | 0x62D | SDO Rx Nd.45
471 | 0x1D7 | TxPDO6*, Nd.23 | 1027 | 0x403 | RxPDO3*, Nd.3 | 1582 | 0x62E | SDO Rx Nd.46
472 | 0x1D8 | TxPDO6*, Nd.24 | 1028 | 0x404 | RxPDO3*, Nd.4 | 1583 | 0x62F | SDO Rx Nd.47
473 | 0x1D9 | TxPDO6*, Nd.25 | 1029 | 0x405 | RxPDO3*, Nd.5 | 1584 | 0x630 | SDO Rx Nd.48
474 | 0x1DA | TxPDO6*, Nd.26 | 1030 | 0x406 | RxPDO3*, Nd.6 | 1585 | 0x631 | SDO Rx Nd.49
475 | 0x1DB | TxPDO6*, Nd.27 | 1031 | 0x407 | RxPDO3*, Nd.7 | 1586 | 0x632 | SDO Rx Nd.50
476 | 0x1DC | TxPDO6*, Nd.28 | 1032 | 0x408 | RxPDO3*, Nd.8 | 1587 | 0x633 | SDO Rx Nd.51
477 | 0x1DD | TxPDO6*, Nd.29 | 1033 | 0x409 | RxPDO3*, Nd.9 | 1588 | 0x634 | SDO Rx Nd.52
478 | 0x1DE | TxPDO6*, Nd.30 | 1034 | 0x40A | RxPDO3*, Nd.10 | 1589 | 0x635 | SDO Rx Nd.53
479 | 0x1DF | TxPDO6*, Nd.31 | 1035 | 0x40B | RxPDO3*, Nd.11 | 1590 | 0x636 | SDO Rx Nd.54
480 | 0x1E0 | TxPDO6*, Nd.32 | 1036 | 0x40C | RxPDO3*, Nd.12 | 1591 | 0x637 | SDO Rx Nd.55
481 | 0x1E1 | TxPDO6*, Nd.33 | 1037 | 0x40D | RxPDO3*, Nd.13 | 1592 | 0x638 | SDO Rx Nd.56
482 | 0x1E2 | TxPDO6*, Nd.34 | 1038 | 0x40E | RxPDO3*, Nd.14 | 1593 | 0x639 | SDO Rx Nd.57
483 | 0x1E3 | TxPDO6*, Nd.35 | 1039 | 0x40F | RxPDO3*, Nd.15 | 1594 | 0x63A | SDO Rx Nd.58
484 | 0x1E4 | TxPDO6*, Nd.36 | 1040 | 0x410 | RxPDO3*, Nd.16 | 1595 | 0x63B | SDO Rx Nd.59
485 | 0x1E5 | TxPDO6*, Nd.37 | 1041 | 0x411 | RxPDO3*, Nd.17 | 1596 | 0x63C | SDO Rx Nd.60
486 | 0x1E6 | TxPDO6*, Nd.38 | 1042 | 0x412 | RxPDO3*, Nd.18 | 1597 | 0x63D | SDO Rx Nd.61
487 | 0x1E7 | TxPDO6*, Nd.39 | 1043 | 0x413 | RxPDO3*, Nd.19 | 1598 | 0x63E | SDO Rx Nd.62
488 | 0x1E8 | TxPDO6*, Nd.40 | 1044 | 0x414 | RxPDO3*, Nd.20 | 1599 | 0x63F | SDO Rx Nd.63
489 | 0x1E9 | TxPDO6*, Nd.41 | 1045 | 0x415 | RxPDO3*, Nd.21 | 1601 | 0x641 | RxPDO10*, Nd.1
490 | 0x1EA | TxPDO6*, Nd.42 | 1046 | 0x416 | RxPDO3*, Nd.22 | 1602 | 0x642 | RxPDO10*, Nd.2
491 | 0x1EB | TxPDO6*, Nd.43 | 1047 | 0x417 | RxPDO3*, Nd.23 | 1603 | 0x643 | RxPDO10*, Nd.3
492 | 0x1EC | TxPDO6*, Nd.44 | 1048 | 0x418 | RxPDO3*, Nd.24 | 1604 | 0x644 | RxPDO10*, Nd.4
493 | 0x1ED | TxPDO6*, Nd.45 | 1049 | 0x419 | RxPDO3*, Nd.25 | 1605 | 0x645 | RxPDO10*, Nd.5
494 | 0x1EE | TxPDO6*, Nd.46 | 1050 | 0x41A | RxPDO3*, Nd.26 | 1606 | 0x646 | RxPDO10*, Nd.6
495 | 0x1EF | TxPDO6*, Nd.47 | 1051 | 0x41B | RxPDO3*, Nd.27 | 1607 | 0x647 | RxPDO10*, Nd.7
496 | 0x1F0 | TxPDO6*, Nd.48 | 1052 | 0x41C | RxPDO3*, Nd.28 | 1608 | 0x648 | RxPDO10*, Nd.8
497 | 0x1F1 | TxPDO6*, Nd.49 | 1053 | 0x41D | RxPDO3*, Nd.29 | 1609 | 0x649 | RxPDO10*, Nd.9
498 | 0x1F2 | TxPDO6*, Nd.50 | 1054 | 0x41E | RxPDO3*, Nd.30 | 1610 | 0x64A | RxPDO10*, Nd.10
499 | 0x1F3 | TxPDO6*, Nd.51 | 1055 | 0x41F | RxPDO3*, Nd.31 | 1611 | 0x64B | RxPDO10*, Nd.11
500 | 0x1F4 | TxPDO6*, Nd.52 | 1056 | 0x420 | RxPDO3*, Nd.32 | 1612 | 0x64C | RxPDO10*, Nd.12
501 | 0x1F5 | TxPDO6*, Nd.53 | 1057 | 0x421 | RxPDO3*, Nd.33 | 1613 | 0x64D | RxPDO10*, Nd.13
502 | 0x1F6 | TxPDO6*, Nd.54 | 1058 | 0x422 | RxPDO3*, Nd.34 | 1614 | 0x64E | RxPDO10*, Nd.14
503 | 0x1F7 | TxPDO6*, Nd.55 | 1059 | 0x423 | RxPDO3*, Nd.35 | 1615 | 0x64F | RxPDO10*, Nd.15
504 | 0x1F8 | TxPDO6*, Nd.56 | 1060 | 0x424 | RxPDO3*, Nd.36 | 1616 | 0x650 | RxPDO10*, Nd.16
505 | 0x1F9 | TxPDO6*, Nd.57 | 1061 | 0x425 | RxPDO3*, Nd.37 | 1617 | 0x651 | RxPDO10*, Nd.17
506 | 0x1FA | TxPDO6*, Nd.58 | 1062 | 0x426 | RxPDO3*, Nd.38 | 1618 | 0x652 | RxPDO10*, Nd.18
507 | 0x1FB | TxPDO6*, Nd.59 | 1063 | 0x427 | RxPDO3*, Nd.39 | 1619 | 0x653 | RxPDO10*, Nd.19
508 | 0x1FC | TxPDO6*, Nd.60 | 1064 | 0x428 | RxPDO3*, Nd.40 | 1620 | 0x654 | RxPDO10*, Nd.20
509 | 0x1FD | TxPDO6*, Nd.61 | 1065 | 0x429 | RxPDO3*, Nd.41 | 1621 | 0x655 | RxPDO10*, Nd.21
510 | 0x1FE | TxPDO6*, Nd.62 | 1066 | 0x42A | RxPDO3*, Nd.42 | 1622 | 0x656 | RxPDO10*, Nd.22
511 | 0x1FF | TxPDO6*, Nd.63 | 1067 | 0x42B | RxPDO3*, Nd.43 | 1623 | 0x657 | RxPDO10*, Nd.23
513 | 0x201 | RxPDO1, DO, Nd.1 | 1068 | 0x42C | RxPDO3*, Nd.44 | 1624 | 0x658 | RxPDO10*, Nd.24
514 | 0x202 | RxPDO1, DO, Nd.2 | 1069 | 0x42D | RxPDO3*, Nd.45 | 1625 | 0x659 | RxPDO10*, Nd.25
515 | 0x203 | RxPDO1, DO, Nd.3 | 1070 | 0x42E | RxPDO3*, Nd.46 | 1626 | 0x65A | RxPDO10*, Nd.26
516 | 0x204 | RxPDO1, DO, Nd.4 | 1071 | 0x42F | RxPDO3*, Nd.47 | 1627 | 0x65B | RxPDO10*, Nd.27
517 | 0x205 | RxPDO1, DO, Nd.5 | 1072 | 0x430 | RxPDO3*, Nd.48 | 1628 | 0x65C | RxPDO10*, Nd.28
518 | 0x206 | RxPDO1, DO, Nd.6 | 1073 | 0x431 | RxPDO3*, Nd.49 | 1629 | 0x65D | RxPDO10*, Nd.29
519 | 0x207 | RxPDO1, DO, Nd.7 | 1074 | 0x432 | RxPDO3*, Nd.50 | 1630 | 0x65E | RxPDO10*, Nd.30
520 | 0x208 | RxPDO1, DO, Nd.8 | 1075 | 0x433 | RxPDO3*, Nd.51 | 1631 | 0x65F | RxPDO10*, Nd.31
521 | 0x209 | RxPDO1, DO, Nd.9 | 1076 | 0x434 | RxPDO3*, Nd.52 | 1632 | 0x660 | RxPDO10*, Nd.32
522 | 0x20A | RxPDO1, DO, Nd.10 | 1077 | 0x435 | RxPDO3*, Nd.53 | 1633 | 0x661 | RxPDO10*, Nd.33
523 | 0x20B | RxPDO1, DO, Nd.11 | 1078 | 0x436 | RxPDO3*, Nd.54 | 1634 | 0x662 | RxPDO10*, Nd.34
524 | 0x20C | RxPDO1, DO, Nd.12 | 1079 | 0x437 | RxPDO3*, Nd.55 | 1635 | 0x663 | RxPDO10*, Nd.35
525 | 0x20D | RxPDO1, DO, Nd.13 | 1080 | 0x438 | RxPDO3*, Nd.56 | 1636 | 0x664 | RxPDO10*, Nd.36
526 | 0x20E | RxPDO1, DO, Nd.14 | 1081 | 0x439 | RxPDO3*, Nd.57 | 1637 | 0x665 | RxPDO10*, Nd.37
527 | 0x20F | RxPDO1, DO, Nd.15 | 1082 | 0x43A | RxPDO3*, Nd.58 | 1638 | 0x666 | RxPDO10*, Nd.38
528 | 0x210 | RxPDO1, DO, Nd.16 | 1083 | 0x43B | RxPDO3*, Nd.59 | 1639 | 0x667 | RxPDO10*, Nd.39
529 | 0x211 | RxPDO1, DO, Nd.17 | 1084 | 0x43C | RxPDO3*, Nd.60 | 1640 | 0x668 | RxPDO10*, Nd.40
530 | 0x212 | RxPDO1, DO, Nd.18 | 1085 | 0x43D | RxPDO3*, Nd.61 | 1641 | 0x669 | RxPDO10*, Nd.41
531 | 0x213 | RxPDO1, DO, Nd.19 | 1086 | 0x43E | RxPDO3*, Nd.62 | 1642 | 0x66A | RxPDO10*, Nd.42
532 | 0x214 | RxPDO1, DO, Nd.20 | 1087 | 0x43F | RxPDO3*, Nd.63 | 1643 | 0x66B | RxPDO10*, Nd.43
533 | 0x215 | RxPDO1, DO, Nd.21 | 1089 | 0x441 | RxPDO8*, Nd.1 | 1644 | 0x66C | RxPDO10*, Nd.44
534 | 0x216 | RxPDO1, DO, Nd.22 | 1090 | 0x442 | RxPDO8*, Nd.2 | 1645 | 0x66D | RxPDO10*, Nd.45
535 | 0x217 | RxPDO1, DO, Nd.23 | 1091 | 0x443 | RxPDO8*, Nd.3 | 1646 | 0x66E | RxPDO10*, Nd.46
536 | 0x218 | RxPDO1, DO, Nd.24 | 1092 | 0x444 | RxPDO8*, Nd.4 | 1647 | 0x66F | RxPDO10*, Nd.47
537 | 0x219 | RxPDO1, DO, Nd.25 | 1093 | 0x445 | RxPDO8*, Nd.5 | 1648 | 0x670 | RxPDO10*, Nd.48
538 | 0x21A | RxPDO1, DO, Nd.26 | 1094 | 0x446 | RxPDO8*, Nd.6 | 1649 | 0x671 | RxPDO10*, Nd.49
539 | 0x21B | RxPDO1, DO, Nd.27 | 1095 | 0x447 | RxPDO8*, Nd.7 | 1650 | 0x672 | RxPDO10*, Nd.50
540 | 0x21C | RxPDO1, DO, Nd.28 | 1096 | 0x448 | RxPDO8*, Nd.8 | 1651 | 0x673 | RxPDO10*, Nd.51
541 | 0x21D | RxPDO1, DO, Nd.29 | 1097 | 0x449 | RxPDO8*, Nd.9 | 1652 | 0x674 | RxPDO10*, Nd.52
542 | 0x21E | RxPDO1, DO, Nd.30 | 1098 | 0x44A | RxPDO8*, Nd.10 | 1653 | 0x675 | RxPDO10*, Nd.53
543 | 0x21F | RxPDO1, DO, Nd.31 | 1099 | 0x44B | RxPDO8*, Nd.11 | 1654 | 0x676 | RxPDO10*, Nd.54
544 | 0x220 | RxPDO1, DO, Nd.32 | 1100 | 0x44C | RxPDO8*, Nd.12 | 1655 | 0x677 | RxPDO10*, Nd.55
545 | 0x221 | RxPDO1, DO, Nd.33 | 1101 | 0x44D | RxPDO8*, Nd.13 | 1656 | 0x678 | RxPDO10*, Nd.56
546 | 0x222 | RxPDO1, DO, Nd.34 | 1102 | 0x44E | RxPDO8*, Nd.14 | 1657 | 0x679 | RxPDO10*, Nd.57
547 | 0x223 | RxPDO1, DO, Nd.35 | 1103 | 0x44F | RxPDO8*, Nd.15 | 1658 | 0x67A | RxPDO10*, Nd.58
548 | 0x224 | RxPDO1, DO, Nd.36 | 1104 | 0x450 | RxPDO8*, Nd.16 | 1659 | 0x67B | RxPDO10*, Nd.59
549 | 0x225 | RxPDO1, DO, Nd.37 | 1105 | 0x451 | RxPDO8*, Nd.17 | 1660 | 0x67C | RxPDO10*, Nd.60
550 | 0x226 | RxPDO1, DO, Nd.38 | 1106 | 0x452 | RxPDO8*, Nd.18 | 1661 | 0x67D | RxPDO10*, Nd.61
551 | 0x227 | RxPDO1, DO, Nd.39 | 1107 | 0x453 | RxPDO8*, Nd.19 | 1662 | 0x67E | RxPDO10*, Nd.62
552 | 0x228 | RxPDO1, DO, Nd.40 | 1108 | 0x454 | RxPDO8*, Nd.20 | 1663 | 0x67F | RxPDO10*, Nd.63
553 | 0x229 | RxPDO1, DO, Nd.41 | 1109 | 0x455 | RxPDO8*, Nd.21 | 1665 | 0x681 | TxPDO5*, Nd.1
554 | 0x22A | RxPDO1, DO, Nd.42 | 1110 | 0x456 | RxPDO8*, Nd.22 | 1666 | 0x682 | TxPDO5*, Nd.2
555 | 0x22B | RxPDO1, DO, Nd.43 | 1111 | 0x457 | RxPDO8*, Nd.23 | 1667 | 0x683 | TxPDO5*, Nd.3
556 | 0x22C | RxPDO1, DO, Nd.44 | 1112 | 0x458 | RxPDO8*, Nd.24 | 1668 | 0x684 | TxPDO5*, Nd.4
557 | 0x22D | RxPDO1, DO, Nd.45 | 1113 | 0x459 | RxPDO8*, Nd.25 | 1669 | 0x685 | TxPDO5*, Nd.5
558 | 0x22E | RxPDO1, DO, Nd.46 | 1114 | 0x45A | RxPDO8*, Nd.26 | 1670 | 0x686 | TxPDO5*, Nd.6
559 | 0x22F | RxPDO1, DO, Nd.47 | 1115 | 0x45B | RxPDO8*, Nd.27 | 1671 | 0x687 | TxPDO5*, Nd.7
560 | 0x230 | RxPDO1, DO, Nd.48 | 1116 | 0x45C | RxPDO8*, Nd.28 | 1672 | 0x688 | TxPDO5*, Nd.8
561 | 0x231 | RxPDO1, DO, Nd.49 | 1117 | 0x45D | RxPDO8*, Nd.29 | 1673 | 0x689 | TxPDO5*, Nd.9
562 | 0x232 | RxPDO1, DO, Nd.50 | 1118 | 0x45E | RxPDO8*, Nd.30 | 1674 | 0x68A | TxPDO5*, Nd.10
563 | 0x233 | RxPDO1, DO, Nd.51 | 1119 | 0x45F | RxPDO8*, Nd.31 | 1675 | 0x68B | TxPDO5*, Nd.11
564 | 0x234 | RxPDO1, DO, Nd.52 | 1120 | 0x460 | RxPDO8*, Nd.32 | 1676 | 0x68C | TxPDO5*, Nd.12
565 | 0x235 | RxPDO1, DO, Nd.53 | 1121 | 0x461 | RxPDO8*, Nd.33 | 1677 | 0x68D | TxPDO5*, Nd.13
566 | 0x236 | RxPDO1, DO, Nd.54 | 1122 | 0x462 | RxPDO8*, Nd.34 | 1678 | 0x68E | TxPDO5*, Nd.14
567 | 0x237 | RxPDO1, DO, Nd.55 | 1123 | 0x463 | RxPDO8*, Nd.35 | 1679 | 0x68F | TxPDO5*, Nd.15
568 | 0x238 | RxPDO1, DO, Nd.56 | 1124 | 0x464 | RxPDO8*, Nd.36 | 1680 | 0x690 | TxPDO5*, Nd.16
569 | 0x239 | RxPDO1, DO, Nd.57 | 1125 | 0x465 | RxPDO8*, Nd.37 | 1681 | 0x691 | TxPDO5*, Nd.17
570 | 0x23A | RxPDO1, DO, Nd.58 | 1126 | 0x466 | RxPDO8*, Nd.38 | 1682 | 0x692 | TxPDO5*, Nd.18
571 | 0x23B | RxPDO1, DO, Nd.59 | 1127 | 0x467 | RxPDO8*, Nd.39 | 1683 | 0x693 | TxPDO5*, Nd.19
572 | 0x23C | RxPDO1, DO, Nd.60 | 1128 | 0x468 | RxPDO8*, Nd.40 | 1684 | 0x694 | TxPDO5*, Nd.20
573 | 0x23D | RxPDO1, DO, Nd.61 | 1129 | 0x469 | RxPDO8*, Nd.41 | 1685 | 0x695 | TxPDO5*, Nd.21
574 | 0x23E | RxPDO1, DO, Nd.62 | 1130 | 0x46A | RxPDO8*, Nd.42 | 1686 | 0x696 | TxPDO5*, Nd.22
575 | 0x23F | RxPDO1, DO, Nd.63 | 1131 | 0x46B | RxPDO8*, Nd.43 | 1687 | 0x697 | TxPDO5*, Nd.23
577 | 0x241 | RxPDO6*, Nd.1 | 1132 | 0x46C | RxPDO8*, Nd.44 | 1688 | 0x698 | TxPDO5*, Nd.24
578 | 0x242 | RxPDO6*, Nd.2 | 1133 | 0x46D | RxPDO8*, Nd.45 | 1689 | 0x699 | TxPDO5*, Nd.25
579 | 0x243 | RxPDO6*, Nd.3 | 1134 | 0x46E | RxPDO8*, Nd.46 | 1690 | 0x69A | TxPDO5*, Nd.26
580 | 0x244 | RxPDO6*, Nd.4 | 1135 | 0x46F | RxPDO8*, Nd.47 | 1691 | 0x69B | TxPDO5*, Nd.27
581 | 0x245 | RxPDO6*, Nd.5 | 1136 | 0x470 | RxPDO8*, Nd.48 | 1692 | 0x69C | TxPDO5*, Nd.28
582 | 0x246 | RxPDO6*, Nd.6 | 1137 | 0x471 | RxPDO8*, Nd.49 | 1693 | 0x69D | TxPDO5*, Nd.29
583 | 0x247 | RxPDO6*, Nd.7 | 1138 | 0x472 | RxPDO8*, Nd.50 | 1694 | 0x69E | TxPDO5*, Nd.30
584 | 0x248 | RxPDO6*, Nd.8 | 1139 | 0x473 | RxPDO8*, Nd.51 | 1695 | 0x69F | TxPDO5*, Nd.31
585 | 0x249 | RxPDO6*, Nd.9 | 1140 | 0x474 | RxPDO8*, Nd.52 | 1696 | 0x6A0 | TxPDO5*, Nd.32
586 | 0x24A | RxPDO6*, Nd.10 | 1141 | 0x475 | RxPDO8*, Nd.53 | 1697 | 0x6A1 | TxPDO5*, Nd.33
587 | 0x24B | RxPDO6*, Nd.11 | 1142 | 0x476 | RxPDO8*, Nd.54 | 1698 | 0x6A2 | TxPDO5*, Nd.34
588 | 0x24C | RxPDO6*, Nd.12 | 1143 | 0x477 | RxPDO8*, Nd.55 | 1699 | 0x6A3 | TxPDO5*, Nd.35
589 | 0x24D | RxPDO6*, Nd.13 | 1144 | 0x478 | RxPDO8*, Nd.56 | 1700 | 0x6A4 | TxPDO5*, Nd.36
590 | 0x24E | RxPDO6*, Nd.14 | 1145 | 0x479 | RxPDO8*, Nd.57 | 1701 | 0x6A5 | TxPDO5*, Nd.37
591 | 0x24F | RxPDO6*, Nd.15 | 1146 | 0x47A | RxPDO8*, Nd.58 | 1702 | 0x6A6 | TxPDO5*, Nd.38
592 | 0x250 | RxPDO6*, Nd.16 | 1147 | 0x47B | RxPDO8*, Nd.59 | 1703 | 0x6A7 | TxPDO5*, Nd.39
593 | 0x251 | RxPDO6*, Nd.17 | 1148 | 0x47C | RxPDO8*, Nd.60 | 1704 | 0x6A8 | TxPDO5*, Nd.40
594 | 0x252 | RxPDO6*, Nd.18 | 1149 | 0x47D | RxPDO8*, Nd.61 | 1705 | 0x6A9 | TxPDO5*, Nd.41
595 | 0x253 | RxPDO6*, Nd.19 | 1150 | 0x47E | RxPDO8*, Nd.62 | 1706 | 0x6AA | TxPDO5*, Nd.42
596 | 0x254 | RxPDO6*, Nd.20 | 1151 | 0x47F | RxPDO8*, Nd.63 | 1707 | 0x6AB | TxPDO5*, Nd.43
597 | 0x255 | RxPDO6*, Nd.21 | 1153 | 0x481 | TxPDO4*, Nd.1 | 1708 | 0x6AC | TxPDO5*, Nd.44
598 | 0x256 | RxPDO6*, Nd.22 | 1154 | 0x482 | TxPDO4*, Nd.2 | 1709 | 0x6AD | TxPDO5*, Nd.45
599 | 0x257 | RxPDO6*, Nd.23 | 1155 | 0x483 | TxPDO4*, Nd.3 | 1710 | 0x6AE | TxPDO5*, Nd.46
600 | 0x258 | RxPDO6*, Nd.24 | 1156 | 0x484 | TxPDO4*, Nd.4 | 1711 | 0x6AF | TxPDO5*, Nd.47
601 | 0x259 | RxPDO6*, Nd.25 | 1157 | 0x485 | TxPDO4*, Nd.5 | 1712 | 0x6B0 | TxPDO5*, Nd.48
602 | 0x25A | RxPDO6*, Nd.26 | 1158 | 0x486 | TxPDO4*, Nd.6 | 1713 | 0x6B1 | TxPDO5*, Nd.49
603 | 0x25B | RxPDO6*, Nd.27 | 1159 | 0x487 | TxPDO4*, Nd.7 | 1714 | 0x6B2 | TxPDO5*, Nd.50
604 | 0x25C | RxPDO6*, Nd.28 | 1160 | 0x488 | TxPDO4*, Nd.8 | 1715 | 0x6B3 | TxPDO5*, Nd.51
605 | 0x25D | RxPDO6*, Nd.29 | 1161 | 0x489 | TxPDO4*, Nd.9 | 1716 | 0x6B4 | TxPDO5*, Nd.52
606 | 0x25E | RxPDO6*, Nd.30 | 1162 | 0x48A | TxPDO4*, Nd.10 | 1717 | 0x6B5 | TxPDO5*, Nd.53
607 | 0x25F | RxPDO6*, Nd.31 | 1163 | 0x48B | TxPDO4*, Nd.11 | 1718 | 0x6B6 | TxPDO5*, Nd.54
608 | 0x260 | RxPDO6*, Nd.32 | 1164 | 0x48C | TxPDO4*, Nd.12 | 1719 | 0x6B7 | TxPDO5*, Nd.55
609 | 0x261 | RxPDO6*, Nd.33 | 1165 | 0x48D | TxPDO4*, Nd.13 | 1720 | 0x6B8 | TxPDO5*, Nd.56
610 | 0x262 | RxPDO6*, Nd.34 | 1166 | 0x48E | TxPDO4*, Nd.14 | 1721 | 0x6B9 | TxPDO5*, Nd.57
611 | 0x263 | RxPDO6*, Nd.35 | 1167 | 0x48F | TxPDO4*, Nd.15 | 1722 | 0x6BA | TxPDO5*, Nd.58
612 | 0x264 | RxPDO6*, Nd.36 | 1168 | 0x490 | TxPDO4*, Nd.16 | 1723 | 0x6BB | TxPDO5*, Nd.59
613 | 0x265 | RxPDO6*, Nd.3 | 1169 | 0x491 | TxPDO4*, Nd.17 | 1724 | 0x6BC | TxPDO5*, Nd.60
614 | 0x266 | RxPDO6*, Nd.8 | 1170 | 0x492 | TxPDO4*, Nd.18 | 1725 | 0x6BD | TxPDO5*, Nd.61
615 | 0x267 | RxPDO6*, Nd39 | 1171 | 0x493 | TxPDO4*, Nd.19 | 1726 | 0x6BE | TxPDO5*, Nd.62
616 | 0x268 | RxPDO6*, N.40 | 1172 | 0x494 | TxPDO4*, Nd.20 | 1727 | 0x6BF | TxPDO5*, Nd.63
617 | 0x269 | RxPDO6*, d.41 | 1173 | 0x495 | TxPDO4*, Nd.21 | 1729 | 0x6C1 | TxPDO11*, Nd.1
618 | 0x26A | RxPDO6*,Nd.42 | 1174 | 0x496 | TxPDO4*, Nd.22 | 1730 | 0x6C2 | TxPDO11*, Nd.2
619 | 0x26B | RxPDO6* Nd.43 | 1175 | 0x497 | TxPDO4*, Nd.23 | 1731 | 0x6C3 | TxPDO11*, Nd.3
620 | 0x26C | RxPDO6, Nd.44 | 1176 | 0x498 | TxPDO4*, Nd.24 | 1732 | 0x6C4 | TxPDO11*, Nd.4
621 | 0x26D | RxPDO*, Nd.45 | 1177 | 0x499 | TxPDO4*, Nd.25 | 1733 | 0x6C5 | TxPDO11*, Nd.5
622 | 0x26E | RxPD6*, Nd.46 | 1178 | 0x49A | TxPDO4*, Nd.26 | 1734 | 0x6C6 | TxPDO11*, Nd.6
623 | 0x26F | RxPO6*, Nd.47 | 1179 | 0x49B | TxPDO4*, Nd.27 | 1735 | 0x6C7 | TxPDO11*, Nd.7
624 | 0x270 | RxDO6*, Nd.48 | 1180 | 0x49C | TxPDO4*, Nd.28 | 1736 | 0x6C8 | TxPDO11*, Nd.8
625 | 0x271 | RPDO6*, Nd.49 | 1181 | 0x49D | TxPDO4*, Nd.29 | 1737 | 0x6C9 | TxPDO11*, Nd.9
626 | 0x272 | xPDO6*, Nd.50 | 1182 | 0x49E | TxPDO4*, Nd.30 | 1738 | 0x6CA | TxPDO11*, Nd.10
627 | 0x273 | RxPDO6*, Nd.51 | 1183 | 0x49F | TxPDO4*, Nd.31 | 1739 | 0x6CB | TxPDO11*, Nd.11
628 | 0x274 | RxPDO6*, Nd.52 | 1184 | 0x4A0 | TxPDO4*, Nd.32 | 1740 | 0x6CC | TxPDO11*, Nd.12
629 | 0x275 | RxPDO6*, Nd.53 | 1185 | 0x4A1 | TxPDO4*, Nd.33 | 1741 | 0x6CD | TxPDO11*, Nd.13
630 | 0x276 | RxPDO6*, Nd.54 | 1186 | 0x4A2 | TxPDO4*, Nd.34 | 1742 | 0x6CE | TxPDO11*, Nd.14
631 | 0x277 | RxPDO6*, Nd.55 | 1187 | 0x4A3 | TxPDO4*, Nd.35 | 1743 | 0x6CF | TxPDO11*, Nd.15
632 | 0x278 | RxPDO6*, Nd.56 | 1188 | 0x4A4 | TxPDO4*, Nd.36 | 1744 | 0x6D0 | TxPDO11*, Nd.16
633 | 0x279 | RxPDO6*, Nd.57 | 1189 | 0x4A5 | TxPDO4*, Nd.37 | 1745 | 0x6D1 | TxPDO11*, Nd.17
634 | 0x27A | RxPDO6*, Nd.58 | 1190 | 0x4A6 | TxPDO4*, Nd.48 | 1746 | 0x6D2 | TxPDO11*, Nd.18
635 | 0x27B | RxPDO6*, Nd.59 | 1191 | 0x4A7 | TxPDO4*, Nd.49 | 1747 | 0x6D3 | TxPDO11*, Nd.19
636 | 0x27C | RxPDO6*, Nd.60 | 1192 | 0x4A8 | TxPDO4*, Nd.40 | 1748 | 0x6D4 | TxPDO11*, Nd.20
637 | 0x27D | RxPDO6*, Nd.61 | 1193 | 0x4A9 | TxPDO4*, Nd.41 | 1749 | 0x6D5 | TxPDO11*, Nd.21
638 | 0x27E | RxPDO6*, Nd.62 | 1194 | 0x4AA | TxPDO4*, Nd.42 | 1750 | 0x6D6 | TxPDO11*, Nd.22
639 | 0x27F | RxPDO6*, Nd.63 | 1195 | 0x4AB | TxPDO4*, Nd.43 | 1751 | 0x6D7 | TxPDO11*, Nd.23
641 | 0x281 | TxPDO2, AI, Nd.1 | 1196 | 0x4AC | TxPDO4*, Nd.44 | 1752 | 0x6D8 | TxPDO11*, Nd.24
642 | 0x282 | TxPDO2, AI, Nd.2 | 1197 | 0x4AD | TxPDO4*, Nd.45 | 1753 | 0x6D9 | TxPDO11*, Nd.25
643 | 0x283 | TxPDO2, AI, Nd.3 | 1198 | 0x4AE | TxPDO4*, Nd.46 | 1754 | 0x6DA | TxPDO11*, Nd.26
644 | 0x284 | TxPDO2, AI, Nd.4 | 1199 | 0x4AF | TxPDO4*, Nd.47 | 1755 | 0x6DB | TxPDO11*, Nd.27
645 | 0x285 | TxPDO2, AI, Nd.5 | 1200 | 0x4B0 | TxPDO4*, Nd.48 | 1756 | 0x6DC | TxPDO11*, Nd.28
646 | 0x286 | TxPDO2, AI, Nd.6 | 1201 | 0x4B1 | TxPDO4*, Nd.49 | 1757 | 0x6DD | TxPDO11*, Nd.29
647 | 0x287 | TxPDO2, AI, Nd.7 | 1202 | 0x4B2 | TxPDO4*, Nd.50 | 1758 | 0x6DE | TxPDO11*, Nd.30
648 | 0x288 | TxPDO2, AI, Nd.8 | 1203 | 0x4B3 | TxPDO4*, Nd.51 | 1759 | 0x6DF | TxPDO11*, Nd.31
649 | 0x289 | TxPDO2, AI, Nd.9 | 1204 | 0x4B4 | TxPDO4*, Nd.52 | 1760 | 0x6E0 | TxPDO11*, Nd.32
650 | 0x28A | TxPDO2, AI, Nd.10 | 1205 | 0x4B5 | TxPDO4*, Nd.53 | 1761 | 0x6E1 | TxPDO11*, Nd.33
651 | 0x28B | TxPDO2, AI, Nd.11 | 1206 | 0x4B6 | TxPDO4*, Nd.54 | 1762 | 0x6E2 | TxPDO11*, Nd.34
652 | 0x28C | TxPDO2, AI, Nd.12 | 1207 | 0x4B7 | TxPDO4*, Nd.55 | 1763 | 0x6E3 | TxPDO11*, Nd.35
653 | 0x28D | TxPDO2, AI, Nd.13 | 1208 | 0x4B8 | TxPDO4*, Nd.56 | 1764 | 0x6E4 | TxPDO11*, Nd.36
654 | 0x28E | TxPDO2, AI, Nd.14 | 1209 | 0x4B9 | TxPDO4*, Nd.57 | 1765 | 0x6E5 | TxPDO11*, Nd.37
655 | 0x28F | TxPDO2, AI, Nd.15 | 1210 | 0x4BA | TxPDO4*, Nd.58 | 1766 | 0x6E6 | TxPDO11*, Nd.38
656 | 0x290 | TxPDO2, AI, Nd.16 | 1211 | 0x4BB | TxPDO4*, Nd.59 | 1767 | 0x6E7 | TxPDO11*, Nd.39
657 | 0x291 | TxPDO2, AI, Nd.17 | 1212 | 0x4BC | TxPDO4*, Nd.60 | 1768 | 0x6E8 | TxPDO11*, Nd.40
658 | 0x292 | TxPDO2, AI, Nd.18 | 1213 | 0x4BD | TxPDO4*, Nd.61 | 1769 | 0x6E9 | TxPDO11*, Nd.41
659 | 0x293 | TxPDO2, AI, Nd.19 | 1214 | 0x4BE | TxPDO4*, Nd.62 | 1770 | 0x6EA | TxPDO11*, Nd.42
660 | 0x294 | TxPDO2, AI, Nd.20 | 1215 | 0x4BF | TxPDO4*, Nd.63 | 1771 | 0x6EB | TxPDO11*, Nd.43
661 | 0x295 | TxPDO2, AI, Nd.21 | 1217 | 0x4C1 | TxPDO9*, Nd.1 | 1772 | 0x6EC | TxPDO11*, Nd.44
662 | 0x296 | TxPDO2, AI, Nd.22 | 1218 | 0x4C2 | TxPDO9*, Nd.2 | 1773 | 0x6ED | TxPDO11*, Nd.45
663 | 0x297 | TxPDO2, AI, Nd.23 | 1219 | 0x4C3 | TxPDO9*, Nd.3 | 1774 | 0x6EE | TxPDO11*, Nd.46
664 | 0x298 | TxPDO2, AI, Nd.24 | 1220 | 0x4C4 | TxPDO9*, Nd.4 | 1775 | 0x6EF | TxPDO11*, Nd.47
665 | 0x299 | TxPDO2, AI, Nd.25 | 1221 | 0x4C5 | TxPDO9*, Nd.5 | 1776 | 0x6F0 | TxPDO11*, Nd.48
666 | 0x29A | TxPDO2, AI, Nd.26 | 1222 | 0x4C6 | TxPDO9*, Nd.6 | 1777 | 0x6F1 | TxPDO11*, Nd.49
667 | 0x29B | TxPDO2, AI, Nd.27 | 1223 | 0x4C7 | TxPDO9*, Nd.7 | 1778 | 0x6F2 | TxPDO11*, Nd.50
668 | 0x29C | TxPDO2, AI, Nd.28 | 1224 | 0x4C8 | TxPDO9*, Nd.8 | 1779 | 0x6F3 | TxPDO11*, Nd.51
669 | 0x29D | TxPDO2, AI, Nd.29 | 1225 | 0x4C9 | TxPDO9*, Nd.9 | 1780 | 0x6F4 | TxPDO11*, Nd.52
670 | 0x29E | TxPDO2, AI, Nd.30 | 1226 | 0x4CA | TxPDO9*, Nd.10 | 1781 | 0x6F5 | TxPDO11*, Nd.53
671 | 0x29F | TxPDO2, AI, Nd.31 | 1227 | 0x4CB | TxPDO9*, Nd.11 | 1782 | 0x6F6 | TxPDO11*, Nd.54
672 | 0x2A0 | TxPDO2, AI, Nd.32 | 1228 | 0x4CC | TxPDO9*, Nd.12 | 1783 | 0x6F7 | TxPDO11*, Nd.55
673 | 0x2A1 | TxPDO2, AI, Nd.33 | 1229 | 0x4CD | TxPDO9*, Nd.13 | 1784 | 0x6F8 | TxPDO11*, Nd.56
674 | 0x2A2 | TxPDO2, AI, Nd.34 | 1230 | 0x4CE | TxPDO9*, Nd.14 | 1785 | 0x6F9 | TxPDO11*, Nd.57
675 | 0x2A3 | TxPDO2, AI, Nd.35 | 1231 | 0x4CF | TxPDO9*, Nd.15 | 1786 | 0x6FA | TxPDO11*, Nd.58
676 | 0x2A4 | TxPDO2, AI, Nd.36 | 1232 | 0x4D0 | TxPDO9*, Nd.16 | 1787 | 0x6FB | TxPDO11*, Nd.59
677 | 0x2A5 | TxPDO2, AI, Nd.37 | 1233 | 0x4D1 | TxPDO9*, Nd.17 | 1788 | 0x6FC | TxPDO11*, Nd.60
678 | 0x2A6 | TxPDO2, AI, Nd.38 | 1234 | 0x4D2 | TxPDO9*, Nd.18 | 1789 | 0x6FD | TxPDO11*, Nd.61
679 | 0x2A7 | TxPDO2, AI, Nd.39 | 1235 | 0x4D3 | TxPDO9*, Nd.19 | 1790 | 0x6FE | TxPDO11*, Nd.62
680 | 0x2A8 | TxPDO2, AI, Nd.40 | 1236 | 0x4D4 | TxPDO9*, Nd.20 | 1791 | 0x6FF | TxPDO11*, Nd.63
681 | 0x2A9 | TxPDO2, AI, Nd.41 | 1237 | 0x4D5 | TxPDO9*, Nd.21 | 1793 | 0x701 | Guarding Nd.1
682 | 0x2AA | TxPDO2, AI, Nd.42 | 1238 | 0x4D6 | TxPDO9*, Nd.22 | 1794 | 0x702 | Guarding Nd.2
683 | 0x2AB | TxPDO2, AI, Nd.43 | 1239 | 0x4D7 | TxPDO9*, Nd.23 | 1795 | 0x703 | Guarding Nd.3
684 | 0x2AC | TxPDO2, AI, Nd.44 | 1240 | 0x4D8 | TxPDO9*, Nd.24 | 1796 | 0x704 | Guarding Nd.4
685 | 0x2AD | TxPDO2, AI, Nd.45 | 1241 | 0x4D9 | TxPDO9*, Nd.25 | 1797 | 0x705 | Guarding Nd.5
686 | 0x2AE | TxPDO2, AI, Nd.46 | 1242 | 0x4DA | TxPDO9*, Nd.26 | 1798 | 0x706 | Guarding Nd.6
687 | 0x2AF | TxPDO2, AI, Nd.47 | 1243 | 0x4DB | TxPDO9*, Nd.27 | 1799 | 0x707 | Guarding Nd.7
688 | 0x2B0 | TxPDO2, AI, Nd.48 | 1244 | 0x4DC | TxPDO9*, Nd.28 | 1800 | 0x708 | Guarding Nd.8
689 | 0x2B1 | TxPDO2, AI, Nd.49 | 1245 | 0x4DD | TxPDO9*, Nd.29 | 1801 | 0x709 | Guarding Nd.9
690 | 0x2B2 | TxPDO2, AI, Nd.50 | 1246 | 0x4DE | TxPDO9*, Nd.30 | 1802 | 0x70A | Guarding Nd.10
691 | 0x2B3 | TxPDO2, AI, Nd.51 | 1247 | 0x4DF | TxPDO9*, Nd.31 | 1803 | 0x70B | Guarding Nd.11
692 | 0x2B4 | TxPDO2, AI, Nd.52 | 1248 | 0x4E0 | TxPDO9*, Nd.32 | 1804 | 0x70C | Guarding Nd.12
693 | 0x2B5 | TxPDO2, AI, Nd.53 | 1249 | 0x4E1 | TxPDO9*, Nd.33 | 1805 | 0x70D | Guarding Nd.13
694 | 0x2B6 | TxPDO2, AI, Nd.54 | 1250 | 0x4E2 | TxPDO9*, Nd.34 | 1806 | 0x70E | Guarding Nd.14
695 | 0x2B7 | TxPDO2, AI, Nd.55 | 1251 | 0x4E3 | TxPDO9*, Nd.35 | 1807 | 0x70F | Guarding Nd.15
696 | 0x2B8 | TxPDO2, AI, Nd.56 | 1252 | 0x4E4 | TxPDO9*, Nd.36 | 1808 | 0x710 | Guarding Nd.16
697 | 0x2B9 | TxPDO2, AI, Nd.57 | 1253 | 0x4E5 | TxPDO9*, Nd.37 | 1809 | 0x711 | Guarding Nd.17
698 | 0x2BA | TxPDO2, AI, Nd.58 | 1254 | 0x4E6 | TxPDO9*, Nd.38 | 1810 | 0x712 | Guarding Nd.18
699 | 0x2BB | TxPDO2, AI, Nd.59 | 1255 | 0x4E7 | TxPDO9*, Nd.39 | 1811 | 0x713 | Guarding Nd.19
700 | 0x2BC | TxPDO2, AI, Nd.60 | 1256 | 0x4E8 | TxPDO9*, Nd.40 | 1812 | 0x714 | Guarding Nd.20
701 | 0x2BD | TxPDO2, AI, Nd.61 | 1257 | 0x4E9 | TxPDO9*, Nd.41 | 1813 | 0x715 | Guarding Nd.21
702 | 0x2BE | TxPDO2, AI, Nd.62 | 1258 | 0x4EA | TxPDO9*, Nd.42 | 1814 | 0x716 | Guarding Nd.22
703 | 0x2BF | TxPDO2, AI, Nd.63 | 1259 | 0x4EB | TxPDO9*, Nd.43 | 1815 | 0x717 | Guarding Nd.23
705 | 0x2C1 | TxPDO7*, Nd.1 | 1260 | 0x4EC | TxPDO9*, Nd.44 | 1816 | 0x718 | Guarding Nd.24
706 | 0x2C2 | TxPDO7*, Nd.2 | 1261 | 0x4ED | TxPDO9*, Nd.45 | 1817 | 0x719 | Guarding Nd.25
707 | 0x2C3 | TxPDO7*, Nd.3 | 1262 | 0x4EE | TxPDO9*, Nd.46 | 1818 | 0x71A | Guarding Nd.26
708 | 0x2C4 | TxPDO7*, Nd.4 | 1263 | 0x4EF | TxPDO9*, Nd.47 | 1819 | 0x71B | Guarding Nd.27
709 | 0x2C5 | TxPDO7*, Nd.5 | 1264 | 0x4F0 | TxPDO9*, Nd.48 | 1820 | 0x71C | Guarding Nd.28
710 | 0x2C6 | TxPDO7*, Nd.6 | 1265 | 0x4F1 | TxPDO9*, Nd.49 | 1821 | 0x71D | Guarding Nd.29
711 | 0x2C7 | TxPDO7*, Nd.7 | 1266 | 0x4F2 | TxPDO9*, Nd.50 | 1822 | 0x71E | Guarding Nd.30
712 | 0x2C8 | TxPDO7*, Nd.8 | 1267 | 0x4F3 | TxPDO9*, Nd.51 | 1823 | 0x71F | Guarding Nd.31
713 | 0x2C9 | TxPDO7*, Nd.9 | 1268 | 0x4F4 | TxPDO9*, Nd.52 | 1824 | 0x720 | Guarding Nd.32
714 | 0x2CA | TxPDO7*, Nd.10 | 1269 | 0x4F5 | TxPDO9*, Nd.53 | 1825 | 0x721 | Guarding Nd.33
715 | 0x2CB | TxPDO7*, Nd.11 | 1270 | 0x4F6 | TxPDO9*, Nd.54 | 1826 | 0x722 | Guarding Nd.34
716 | 0x2CC | TxPDO7*, Nd.12 | 1271 | 0x4F7 | TxPDO9*, Nd.55 | 1827 | 0x723 | Guarding Nd.35
717 | 0x2CD | TxPDO7*, Nd.13 | 1272 | 0x4F8 | TxPDO9*, Nd.56 | 1828 | 0x724 | Guarding Nd.36
718 | 0x2CE | TxPDO7*, Nd.14 | 1273 | 0x4F9 | TxPDO9*, Nd.57 | 1829 | 0x725 | Guarding Nd.37
719 | 0x2CF | TxPDO7*, Nd.15 | 1274 | 0x4FA | TxPDO9*, Nd.58 | 1830 | 0x726 | Guarding Nd.38
720 | 0x2D0 | TxPDO7*, Nd.16 | 1275 | 0x4FB | TxPDO9*, Nd.59 | 1831 | 0x727 | Guarding Nd.39
721 | 0x2D1 | TxPDO7*, Nd.17 | 1276 | 0x4FC | TxPDO9*, Nd.60 | 1832 | 0x728 | Guarding Nd.40
722 | 0x2D2 | TxPDO7*, Nd.18 | 1277 | 0x4FD | TxPDO9*, Nd.61 | 1833 | 0x729 | Guarding Nd.41
723 | 0x2D3 | TxPDO7*, Nd.19 | 1278 | 0x4FE | TxPDO9*, Nd.62 | 1834 | 0x72A | Guarding Nd.42
724 | 0x2D4 | TxPDO7*, Nd.20 | 1279 | 0x4FF | TxPDO9*, Nd.63 | 1835 | 0x72B | Guarding Nd.43
725 | 0x2D5 | TxPDO7*, Nd.21 | 1281 | 0x501 | RxPDO4*, Nd.1 | 1836 | 0x72C | Guarding Nd.44
726 | 0x2D6 | TxPDO7*, Nd.22 | 1282 | 0x502 | RxPDO4*, Nd.2 | 1837 | 0x72D | Guarding Nd.45
727 | 0x2D7 | TxPDO7*, Nd.23 | 1283 | 0x503 | RxPDO4*, Nd.3 | 1838 | 0x72E | Guarding Nd.46
728 | 0x2D8 | TxPDO7*, Nd.24 | 1284 | 0x504 | RxPDO4*, Nd.4 | 1839 | 0x72F | Guarding Nd.47
729 | 0x2D9 | TxPDO7*, Nd.25 | 1285 | 0x505 | RxPDO4*, Nd.5 | 1840 | 0x730 | Guarding Nd.48
730 | 0x2DA | TxPDO7*, Nd.26 | 1286 | 0x506 | RxPDO4*, Nd.6 | 1841 | 0x731 | Guarding Nd.49
731 | 0x2DB | TxPDO7*, Nd.27 | 1287 | 0x507 | RxPDO4*, Nd.7 | 1842 | 0x732 | Guarding Nd.50
732 | 0x2DC | TxPDO7*, Nd.28 | 1288 | 0x508 | RxPDO4*, Nd.8 | 1843 | 0x733 | Guarding Nd.51
733 | 0x2DD | TxPDO7*, Nd.29 | 1289 | 0x509 | RxPDO4*, Nd.9 | 1844 | 0x734 | Guarding Nd.52
734 | 0x2DE | TxPDO7*, Nd.30 | 1290 | 0x50A | RxPDO4*, Nd.10 | 1845 | 0x735 | Guarding Nd.53
735 | 0x2DF | TxPDO7*, Nd.31 | 1291 | 0x50B | RxPDO4*, Nd.11 | 1846 | 0x736 | Guarding Nd.54
736 | 0x2E0 | TxPDO7*, Nd.32 | 1292 | 0x50C | RxPDO4*, Nd.12 | 1847 | 0x737 | Guarding Nd.55
737 | 0x2E1 | TxPDO7*, Nd.33 | 1293 | 0x50D | RxPDO4*, Nd.13 | 1848 | 0x738 | Guarding Nd.56
738 | 0x2E2 | TxPDO7*, Nd.34 | 1294 | 0x50E | RxPDO4*, Nd.14 | 1849 | 0x739 | Guarding Nd.57
739 | 0x2E3 | TxPDO7*, Nd.35 | 1295 | 0x50F | RxPDO4*, Nd.15 | 1850 | 0x73A | Guarding Nd.58
740 | 0x2E4 | TxPDO7*, Nd.36 | 1296 | 0x510 | RxPDO4*, Nd.16 | 1851 | 0x73B | Guarding Nd.59
741 | 0x2E5 | TxPDO7*, Nd.37 | 1297 | 0x511 | RxPDO4*, Nd.17 | 1852 | 0x73C | Guarding Nd.60
742 | 0x2E6 | TxPDO7*, Nd.38 | 1298 | 0x512 | RxPDO4*, Nd.18 | 1853 | 0x73D | Guarding Nd.61
743 | 0x2E7 | TxPDO7*, Nd.39 | 1299 | 0x513 | RxPDO4*, Nd.19 | 1854 | 0x73E | Guarding Nd.62
744 | 0x2E8 | TxPDO7*, Nd.40 | 1300 | 0x514 | RxPDO4*, Nd.20 | 1855 | 0x73F | Guarding Nd.63
745 | 0x2E9 | TxPDO7*, Nd.41 | 1301 | 0x515 | RxPDO4*, Nd.21 | 1857 | 0x741 | RxPDO11*, Nd.1
746 | 0x2EA | TxPDO7*, Nd.42 | 1302 | 0x516 | RxPDO4*, Nd.22 | 1858 | 0x742 | RxPDO11*, Nd.2
747 | 0x2EB | TxPDO7*, Nd.43 | 1303 | 0x517 | RxPDO4*, Nd.23 | 1859 | 0x743 | RxPDO11*, Nd.3
748 | 0x2EC | TxPDO7*, Nd.44 | 1304 | 0x518 | RxPDO4*, Nd.24 | 1860 | 0x744 | RxPDO11*, Nd.4
749 | 0x2ED | TxPDO7*, Nd.45 | 1305 | 0x519 | RxPDO4*, Nd.25 | 1861 | 0x745 | RxPDO11*, Nd.5
750 | 0x2EE | TxPDO7*, Nd.46 | 1306 | 0x51A | RxPDO4*, Nd.26 | 1862 | 0x746 | RxPDO11*, Nd.6
751 | 0x2EF | TxPDO7*, Nd.47 | 1307 | 0x51B | RxPDO4*, Nd.27 | 1863 | 0x747 | RxPDO11*, Nd.7
752 | 0x2F0 | TxPDO7*, Nd.48 | 1308 | 0x51C | RxPDO4*, Nd.28 | 1864 | 0x748 | RxPDO11*, Nd.8
753 | 0x2F1 | TxPDO7*, Nd.49 | 1309 | 0x51D | RxPDO4*, Nd.29 | 1865 | 0x749 | RxPDO11*, Nd.9
754 | 0x2F2 | TxPDO7*, Nd.50 | 1310 | 0x51E | RxPDO4*, Nd.30 | 1866 | 0x74A | RxPDO11*, Nd.10
755 | 0x2F3 | TxPDO7*, Nd.51 | 1311 | 0x51F | RxPDO4*, Nd.31 | 1867 | 0x74B | RxPDO11*, Nd.11
756 | 0x2F4 | TxPDO7*, Nd.52 | 1312 | 0x520 | RxPDO4*, Nd.32 | 1868 | 0x74C | RxPDO11*, Nd.12
757 | 0x2F5 | TxPDO7*, Nd.53 | 1313 | 0x521 | RxPDO4*, Nd.33 | 1869 | 0x74D | RxPDO11*, Nd.13
758 | 0x2F6 | TxPDO7*, Nd.54 | 1314 | 0x522 | RxPDO4*, Nd.34 | 1870 | 0x74E | RxPDO11*, Nd.14
759 | 0x2F7 | TxPDO7*, Nd.55 | 1315 | 0x523 | RxPDO4*, Nd.35 | 1871 | 0x74F | RxPDO11*, Nd.15
760 | 0x2F8 | TxPDO7*, Nd.56 | 1316 | 0x524 | RxPDO4*, Nd.36 | 1872 | 0x750 | RxPDO11*, Nd.16
761 | 0x2F9 | TxPDO7*, Nd.57 | 1317 | 0x525 | RxPDO4*, Nd.37 | 1873 | 0x751 | RxPDO11*, Nd.17
762 | 0x2FA | TxPDO7*, Nd.58 | 1318 | 0x526 | RxPDO4*, Nd.38 | 1874 | 0x752 | RxPDO11*, Nd.18
763 | 0x2FB | TxPDO7*, Nd.59 | 1319 | 0x527 | RxPDO4*, Nd.39 | 1875 | 0x753 | RxPDO11*, Nd.19
764 | 0x2FC | TxPDO7*, Nd.60 | 1320 | 0x528 | RxPDO4*, Nd.40 | 1876 | 0x754 | RxPDO11*, Nd.20
765 | 0x2FD | TxPDO7*, Nd.61 | 1321 | 0x529 | RxPDO4*, Nd.41 | 1877 | 0x755 | RxPDO11*, Nd.21
766 | 0x2FE | TxPDO7*, Nd.62 | 1322 | 0x52A | RxPDO4*, Nd.42 | 1878 | 0x756 | RxPDO11*, Nd.22
767 | 0x2FF | TxPDO7*, Nd.63 | 1323 | 0x52B | RxPDO4*, Nd.43 | 1879 | 0x757 | RxPDO11*, Nd.23
769 | 0x301 | RxPDO2, AO, Nd.1 | 1324 | 0x52C | RxPDO4*, Nd.44 | 1880 | 0x758 | RxPDO11*, Nd.24
770 | 0x302 | RxPDO2, AO, Nd.2 | 1325 | 0x52D | RxPDO4*, Nd.45 | 1881 | 0x759 | RxPDO11*, Nd.25
771 | 0x303 | RxPDO2, AO, Nd.3 | 1326 | 0x52E | RxPDO4*, Nd.46 | 1882 | 0x75A | RxPDO11*, Nd.26
772 | 0x304 | RxPDO2, AO, Nd.4 | 1327 | 0x52F | RxPDO4*, Nd.47 | 1883 | 0x75B | RxPDO11*, Nd.27
773 | 0x305 | RxPDO2, AO, Nd.5 | 1328 | 0x530 | RxPDO4*, Nd.48 | 1884 | 0x75C | RxPDO11*, Nd.28
774 | 0x306 | RxPDO2, AO, Nd.6 | 1329 | 0x531 | RxPDO4*, Nd.49 | 1885 | 0x75D | RxPDO11*, Nd.29
775 | 0x307 | RxPDO2, AO, Nd.7 | 1330 | 0x532 | RxPDO4*, Nd.50 | 1886 | 0x75E | RxPDO11*, Nd.30
776 | 0x308 | RxPDO2, AO, Nd.8 | 1331 | 0x533 | RxPDO4*, Nd.51 | 1887 | 0x75F | RxPDO11*, Nd.31
777 | 0x309 | RxPDO2, AO, Nd.9 | 1332 | 0x534 | RxPDO4*, Nd.52 | 1888 | 0x760 | RxPDO11*, Nd.32
778 | 0x30A | RxPDO2, AO, Nd.10 | 1333 | 0x535 | RxPDO4*, Nd.53 | 1889 | 0x761 | RxPDO11*, Nd.33
779 | 0x30B | RxPDO2, AO, Nd.11 | 1334 | 0x536 | RxPDO4*, Nd.54 | 1890 | 0x762 | RxPDO11*, Nd.34
780 | 0x30C | RxPDO2, AO, Nd.12 | 1335 | 0x537 | RxPDO4*, Nd.55 | 1891 | 0x763 | RxPDO11*, Nd.35
781 | 0x30D | RxPDO2, AO, Nd.13 | 1336 | 0x538 | RxPDO4*, Nd.56 | 1892 | 0x764 | RxPDO11*, Nd.36
782 | 0x30E | RxPDO2, AO, Nd.14 | 1337 | 0x539 | RxPDO4*, Nd.57 | 1893 | 0x765 | RxPDO11*, Nd.37
783 | 0x30F | RxPDO2, AO, Nd.15 | 1338 | 0x53A | RxPDO4*, Nd.58 | 1894 | 0x766 | RxPDO11*, Nd.38
784 | 0x310 | RxPDO2, AO, Nd.16 | 1339 | 0x53B | RxPDO4*, Nd.59 | 1895 | 0x767 | RxPDO11*, Nd.39
785 | 0x311 | RxPDO2, AO, Nd.17 | 1340 | 0x53C | RxPDO4*, Nd.60 | 1896 | 0x768 | RxPDO11*, Nd.40
786 | 0x312 | RxPDO2, AO, Nd.18 | 1341 | 0x53D | RxPDO4*, Nd.61 | 1897 | 0x769 | RxPDO11*, Nd.41
787 | 0x313 | RxPDO2, AO, Nd.19 | 1342 | 0x53E | RxPDO4*, Nd.62 | 1898 | 0x76A | RxPDO11*, Nd.42
788 | 0x314 | RxPDO2, AO, Nd.20 | 1343 | 0x53F | RxPDO4*, Nd.63 | 1899 | 0x76B | RxPDO11*, Nd.43
789 | 0x315 | RxPDO2, AO, Nd.21 | 1345 | 0x541 | RxPDO9*, Nd.1 | 1900 | 0x76C | RxPDO11*, Nd.44
790 | 0x316 | RxPDO2, AO, Nd.22 | 1346 | 0x542 | RxPDO9*, Nd.2 | 1901 | 0x76D | RxPDO11*, Nd.45
791 | 0x317 | RxPDO2, AO, Nd.23 | 1347 | 0x543 | RxPDO9*, Nd.3 | 1902 | 0x76E | RxPDO11*, Nd.46
792 | 0x318 | RxPDO2, AO, Nd.24 | 1348 | 0x544 | RxPDO9*, Nd.4 | 1903 | 0x76F | RxPDO11*, Nd.47
793 | 0x319 | RxPDO2, AO, Nd.25 | 1349 | 0x545 | RxPDO9*, Nd.5 | 1904 | 0x770 | RxPDO11*, Nd.48
794 | 0x31A | RxPDO2, AO, Nd.26 | 1350 | 0x546 | RxPDO9*, Nd.6 | 1905 | 0x771 | RxPDO11*, Nd.49
795 | 0x31B | RxPDO2, AO, Nd.27 | 1351 | 0x547 | RxPDO9*, Nd.7 | 1906 | 0x772 | RxPDO11*, Nd.50
796 | 0x31C | RxPDO2, AO, Nd.28 | 1352 | 0x548 | RxPDO9*, Nd.8 | 1907 | 0x773 | RxPDO11*, Nd.51
797 | 0x31D | RxPDO2, AO, Nd.29 | 1353 | 0x549 | RxPDO9*, Nd.9 | 1908 | 0x774 | RxPDO11*, Nd.52
798 | 0x31E | RxPDO2, AO, Nd.30 | 1354 | 0x54A | RxPDO9*, Nd.10 | 1909 | 0x775 | RxPDO11*, Nd.53
799 | 0x31F | RxPDO2, AO, Nd.31 | 1355 | 0x54B | RxPDO9*, Nd.11 | 1910 | 0x776 | RxPDO11*, Nd.54
800 | 0x320 | RxPDO2, AO, Nd.32 | 1356 | 0x54C | RxPDO9*, Nd.12 | 1911 | 0x777 | RxPDO11*, Nd.55
801 | 0x321 | RxPDO2, AO, Nd.33 | 1357 | 0x54D | RxPDO9*, Nd.13 | 1912 | 0x778 | RxPDO11*, Nd.56
802 | 0x322 | RxPDO2, AO, Nd.34 | 1358 | 0x54E | RxPDO9*, Nd.14 | 1913 | 0x779 | RxPDO11*, Nd.57
803 | 0x323 | RxPDO2, AO, Nd.35 | 1359 | 0x54F | RxPDO9*, Nd.15 | 1914 | 0x77A | RxPDO11*, Nd.58
804 | 0x324 | RxPDO2, AO, Nd.36 | 1360 | 0x550 | RxPDO9*, Nd.16 | 1915 | 0x77B | RxPDO11*, Nd.59
805 | 0x325 | RxPDO2, AO, Nd.37 | 1361 | 0x551 | RxPDO9*, Nd.17 | 1916 | 0x77C | RxPDO11*, Nd.60
806 | 0x326 | RxPDO2, AO, Nd.38 | 1362 | 0x552 | RxPDO9*, Nd.18 | 1917 | 0x77D | RxPDO11*, Nd.61
807 | 0x327 | RxPDO2, AO, Nd.39 | 1363 | 0x553 | RxPDO9*, Nd.19 | 1918 | 0x77E | RxPDO11*, Nd.62
808 | 0x328 | RxPDO2, AO, Nd.40 | 1364 | 0x554 | RxPDO9*, Nd.20 | 1919 | 0x77F | RxPDO11*, Nd.63
809 | 0x329 | RxPDO2, AO, Nd.41 | 1365 | 0x555 | RxPDO9*, Nd.21 | 1921 | 0x781 | RxPDO5*, Nd.1
810 | 0x32A | RxPDO2, AO, Nd.42 | 1366 | 0x556 | RxPDO9*, Nd.22 | 1922 | 0x782 | RxPDO5*, Nd.2
811 | 0x32B | RxPDO2, AO, Nd.43 | 1367 | 0x557 | RxPDO9*, Nd.23 | 1923 | 0x783 | RxPDO5*, Nd.3
812 | 0x32C | RxPDO2, AO, Nd.44 | 1368 | 0x558 | RxPDO9*, Nd.24 | 1924 | 0x784 | RxPDO5*, Nd.4
813 | 0x32D | RxPDO2, AO, Nd.45 | 1369 | 0x559 | RxPDO9*, Nd.25 | 1925 | 0x785 | RxPDO5*, Nd.5
814 | 0x32E | RxPDO2, AO, Nd.46 | 1370 | 0x55A | RxPDO9*, Nd.26 | 1926 | 0x786 | RxPDO5*, Nd.6
815 | 0x32F | RxPDO2, AO, Nd.47 | 1371 | 0x55B | RxPDO9*, Nd.27 | 1927 | 0x787 | RxPDO5*, Nd.7
816 | 0x330 | RxPDO2, AO, Nd.48 | 1372 | 0x55C | RxPDO9*, Nd.28 | 1928 | 0x788 | RxPDO5*, Nd.8
817 | 0x331 | RxPDO2, AO, Nd.49 | 1373 | 0x55D | RxPDO9*, Nd.29 | 1929 | 0x789 | RxPDO5*, Nd.9
818 | 0x332 | RxPDO2, AO, Nd.50 | 1374 | 0x55E | RxPDO9*, Nd.30 | 1930 | 0x78A | RxPDO5*, Nd.10
819 | 0x333 | RxPDO2, AO, Nd.51 | 1375 | 0x55F | RxPDO9*, Nd.31 | 1931 | 0x78B | RxPDO5*, Nd.11
820 | 0x334 | RxPDO2, AO, Nd.52 | 1376 | 0x560 | RxPDO9*, Nd.32 | 1932 | 0x78C | RxPDO5*, Nd.12
821 | 0x335 | RxPDO2, AO, Nd.53 | 1377 | 0x561 | RxPDO9*, Nd.33 | 1933 | 0x78D | RxPDO5*, Nd.13
822 | 0x336 | RxPDO2, AO, Nd.54 | 1378 | 0x562 | RxPDO9*, Nd.34 | 1934 | 0x78E | RxPDO5*, Nd.14
823 | 0x337 | RxPDO2, AO, Nd.55 | 1379 | 0x563 | RxPDO9*, Nd.35 | 1935 | 0x78F | RxPDO5*, Nd.15
824 | 0x338 | RxPDO2, AO, Nd.56 | 1380 | 0x564 | RxPDO9*, Nd.36 | 1936 | 0x790 | RxPDO5*, Nd.16
825 | 0x339 | RxPDO2, AO, Nd.57 | 1381 | 0x565 | RxPDO9*, Nd.37 | 1937 | 0x791 | RxPDO5*, Nd.17
826 | 0x33A | RxPDO2, AO, Nd.58 | 1382 | 0x566 | RxPDO9*, Nd.38 | 1938 | 0x792 | RxPDO5*, Nd.18
827 | 0x33B | RxPDO2, AO, Nd.59 | 1383 | 0x567 | RxPDO9*, Nd.39 | 1939 | 0x793 | RxPDO5*, Nd.19
828 | 0x33C | RxPDO2, AO, Nd.60 | 1384 | 0x568 | RxPDO9*, Nd.40 | 1940 | 0x794 | RxPDO5*, Nd.20
829 | 0x33D | RxPDO2, AO, Nd.61 | 1385 | 0x569 | RxPDO9*, Nd.41 | 1941 | 0x795 | RxPDO5*, Nd.21
830 | 0x33E | RxPDO2, AO, Nd.62 | 1386 | 0x56A | RxPDO9*, Nd.42 | 1942 | 0x796 | RxPDO5*, Nd.22
831 | 0x33F | RxPDO2, AO, Nd.63 | 1387 | 0x56B | RxPDO9*, Nd.43 | 1943 | 0x797 | RxPDO5*, Nd.23
833 | 0x341 | RxPDO7*, Nd.1 | 1388 | 0x56C | RxPDO9*, Nd.44 | 1944 | 0x798 | RxPDO5*, Nd.24
834 | 0x342 | RxPDO7*, Nd.2 | 1389 | 0x56D | RxPDO9*, Nd.45 | 1945 | 0x799 | RxPDO5*, Nd.25
835 | 0x343 | RxPDO7*, Nd.3 | 1390 | 0x56E | RxPDO9*, Nd.46 | 1946 | 0x79A | RxPDO5*, Nd.26
836 | 0x344 | RxPDO7*, Nd.4 | 1391 | 0x56F | RxPDO9*, Nd.47 | 1947 | 0x79B | RxPDO5*, Nd.27
837 | 0x345 | RxPDO7*, Nd.5 | 1392 | 0x570 | RxPDO9*, Nd.48 | 1948 | 0x79C | RxPDO5*, Nd.28
838 | 0x346 | RxPDO7*, Nd.6 | 1393 | 0x571 | RxPDO9*, Nd.49 | 1949 | 0x79D | RxPDO5*, Nd.29
839 | 0x347 | RxPDO7*, Nd.7 | 1394 | 0x572 | RxPDO9*, Nd.50 | 1950 | 0x79E | RxPDO5*, Nd.30
840 | 0x348 | RxPDO7*, Nd.8 | 1395 | 0x573 | RxPDO9*, Nd.51 | 1951 | 0x79F | RxPDO5*, Nd.31
841 | 0x349 | RxPDO7*, Nd.9 | 1396 | 0x574 | RxPDO9*, Nd.52 | 1952 | 0x7A0 | RxPDO5*, Nd.32
842 | 0x34A | RxPDO7*, Nd.10 | 1397 | 0x575 | RxPDO9*, Nd.53 | 1953 | 0x7A1 | RxPDO5*, Nd.33
843 | 0x34B | RxPDO7*, Nd.11 | 1398 | 0x576 | RxPDO9*, Nd.54 | 1954 | 0x7A2 | RxPDO5*, Nd.34
844 | 0x34C | RxPDO7*, Nd.12 | 1399 | 0x577 | RxPDO9*, Nd.55 | 1955 | 0x7A3 | RxPDO5*, Nd.35
845 | 0x34D | RxPDO7*, Nd.13 | 1400 | 0x578 | RxPDO9*, Nd.56 | 1956 | 0x7A4 | RxPDO5*, Nd.36
846 | 0x34E | RxPDO7*, Nd.14 | 1401 | 0x579 | RxPDO9*, Nd.57 | 1957 | 0x7A5 | RxPDO5*, Nd.37
847 | 0x34F | RxPDO7*, Nd.15 | 1402 | 0x57A | RxPDO9*, Nd.58 | 1958 | 0x7A6 | RxPDO5*, Nd.38
848 | 0x350 | RxPDO7*, Nd.16 | 1403 | 0x57B | RxPDO9*, Nd.59 | 1959 | 0x7A7 | RxPDO5*, Nd.39
849 | 0x351 | RxPDO7*, Nd.17 | 1404 | 0x57C | RxPDO9*, Nd.60 | 1960 | 0x7A8 | RxPDO5*, Nd.40
850 | 0x352 | RxPDO7*, Nd.18 | 1405 | 0x57D | RxPDO9*, Nd.61 | 1961 | 0x7A9 | RxPDO5*, Nd.41
851 | 0x353 | RxPDO7*, Nd.19 | 1406 | 0x57E | RxPDO9*, Nd.62 | 1962 | 0x7AA | RxPDO5*, Nd.42
852 | 0x354 | RxPDO7*, Nd.20 | 1407 | 0x57F | RxPDO9*, Nd.63 | 1963 | 0x7AB | RxPDO5*, Nd.43
853 | 0x355 | RxPDO7*, Nd.21 | 1409 | 0x581 | SDO Tx Nd.1 | 1964 | 0x7AC | RxPDO5*, Nd.44
854 | 0x356 | RxPDO7*, Nd.22 | 1410 | 0x582 | SDO Tx Nd.2 | 1965 | 0x7AD | RxPDO5*, Nd.45
855 | 0x357 | RxPDO7*, Nd.23 | 1411 | 0x583 | SDO Tx Nd.3 | 1966 | 0x7AE | RxPDO5*, Nd.46
856 | 0x358 | RxPDO7*, Nd.24 | 1412 | 0x584 | SDO Tx Nd.4 | 1967 | 0x7AF | RxPDO5*, Nd.47
857 | 0x359 | RxPDO7*, Nd.25 | 1413 | 0x585 | SDO Tx Nd.5 | 1968 | 0x7B0 | RxPDO5*, Nd.48
858 | 0x35A | RxPDO7*, Nd.26 | 1414 | 0x586 | SDO Tx Nd.6 | 1969 | 0x7B1 | RxPDO5*, Nd.49
859 | 0x35B | RxPDO7*, Nd.27 | 1415 | 0x587 | SDO Tx Nd.7 | 1970 | 0x7B2 | RxPDO5*, Nd.50
860 | 0x35C | RxPDO7*, Nd.28 | 1416 | 0x588 | SDO Tx Nd.8 | 1971 | 0x7B3 | RxPDO5*, Nd.51
861 | 0x35D | RxPDO7*, Nd.29 | 1417 | 0x589 | SDO Tx Nd.9 | 1972 | 0x7B4 | RxPDO5*, Nd.52
862 | 0x35E | RxPDO7*, Nd.30 | 1418 | 0x58A | SDO Tx Nd.10 | 1973 | 0x7B5 | RxPDO5*, Nd.53
863 | 0x35F | RxPDO7*, Nd.31 | 1419 | 0x58B | SDO Tx Nd.11 | 1974 | 0x7B6 | RxPDO5*, Nd.54
864 | 0x360 | RxPDO7*, Nd.32 | 1420 | 0x58C | SDO Tx Nd.12 | 1975 | 0x7B7 | RxPDO5*, Nd.55
865 | 0x361 | RxPDO7*, Nd.33 | 1421 | 0x58D | SDO Tx Nd.13 | 1976 | 0x7B8 | RxPDO5*, Nd.56
866 | 0x362 | RxPDO7*, Nd.34 | 1422 | 0x58E | SDO Tx Nd.14 | 1977 | 0x7B9 | RxPDO5*, Nd.57
867 | 0x363 | RxPDO7*, Nd.35 | 1423 | 0x58F | SDO Tx Nd.15 | 1978 | 0x7BA | RxPDO5*, Nd.58
868 | 0x364 | RxPDO7*, Nd.36 | 1424 | 0x590 | SDO Tx Nd.16 | 1979 | 0x7BB | RxPDO5*, Nd.59
869 | 0x365 | RxPDO7*, Nd.37 | 1425 | 0x591 | SDO Tx Nd.17 | 1980 | 0x7BC | RxPDO5*, Nd.60
870 | 0x366 | RxPDO7*, Nd.38 | 1426 | 0x592 | SDO Tx Nd.18 | 1981 | 0x7BD | RxPDO5*, Nd.61
871 | 0x367 | RxPDO7*, Nd.39 | 1427 | 0x593 | SDO Tx Nd.19 | 1982 | 0x7BE | RxPDO5*, Nd.62
872 | 0x368 | RxPDO7*, Nd.40 | 1428 | 0x594 | SDO Tx Nd.20 | 1983 | 0x7BF | RxPDO5*, Nd.63
873 | 0x369 | RxPDO7*, Nd.41 | 1429 | 0x595 | SDO Tx Nd.21 |  | 0x |


BECKHOFF Feldbuskomponenten - Literaturverzeichnis

BECKHOFF Feldbuskomponenten: Anhang

Literaturverzeichnis

Deutsche Bücher

  • Holger Zeltwander (Hrsg.):
    CANopen,
    VDE Verlag, 2001.197 Seiten,
    ISBN 3-800-72448-0
  • Konrad Etschberger:
    Controller Area Network, Grundlagen, Protokolle, Bausteine, Anwendungen.
    Hanser Verlag, 2000. 431 Seiten.
    ISBN 3-446-19431-2

Feldbustechnik allgemein

  • Gerhard Gruhler (Hrsg.):
    Feldbusse und Geräte-Kommunikationssysteme, Praktisches Know-How mit Vergleichsmöglichkeiten.
    Franzis Verlag 2001. 244 Seiten.
    ISBN 3-7723-5745-8

Englische Bücher

  • Konrad Etschberger:
    Controller Area Network,
    Ixxat Press, 2001. 440 Seiten.
    ISBN 3-00-007376-0
  • M. Farsi, M. Barbosa:
    CANopen Implementation,
    RSP 2000. 210 Seiten.
    ISBN 0-86380-247-8

Standards

  • ISO 11898:
    Road Vehicles - Interchange of digital information - Controller Area Network (CAN) for high speed communication.
  • CiA DS 301:
    CANopen Application Layer and Communication Profile.
    Erhältlich beim Verband CAN in Automation.
  • CiA DS 401:
    CANopen Device Profile for Generic E/A Modules.
    Erhältlich beim Verband CAN in Automation.


Abkürzungsverzeichnis

CAN

Controller Area Network. In ISO 11898 standardisiertes serielles Bussystem, das als Basistechnologie für CANopen dient.

CiA

CAN in Automation e.V.. Internationaler Hersteller- und Nutzerverband mit Sitz in Erlangen/Deutschland.

COB

Communication Object. CAN-Telegramm mit bis zu 8 Datenbytes.

COB-ID

Communication Object Identifier. Telegrammadresse (nicht zu verwechseln mit Knotenadresse). CANopen verwendet die 11-Bit Identifier nach CAN 2.0A.

NMT

Network Management. Eines der Dienstelemente der CANopen-Spezifikation. Das Netzwerkmanagement dient zur Netzwerkinitialisierung und zur Knotenüberwachung.

PDO

Process Data Object oder Prozessdatenobjekt. CAN-Telegramm zur Übertragung von Prozessdaten (z.B. E/A-Daten).

RxPDO

Empfangs-PDO. PDOs werden immer aus Sicht des jeweiligen Gerätes bezeichnet. So wird ein TxPDO mit Eingangsdaten einer E/A Baugruppe zum RxPDO aus Sicht der Steuerung.

SDO

Service Data Object oder Servicedatenobjekt. CAN-Telegramm mit Protokoll zur Kommunikation mit Daten des Objektverzeichnisses (typisch Parameterdaten).

TxPDO

Sende-PDO (aus Sicht des CAN-Knotens bezeichnet).


Support und Service

Beckhoff und seine weltweiten Partnerfirmen bieten einen umfassenden Support und Service, der eine schnelle und kompetente Unterstützung bei allen Fragen zu Beckhoff Produkten und Systemlösungen zur Verfügung stellt.

Beckhoff Support

Der Support bietet Ihnen einen umfangreichen technischen Support, der Sie nicht nur bei dem Einsatz einzelner Beckhoff Produkte, sondern auch bei weiteren umfassenden Dienstleistungen unterstützt:

  • Support
  • Planung, Programmierung und Inbetriebnahme komplexer Automatisierungssysteme
  • umfangreiches Schulungsprogramm für Beckhoff Systemkomponenten
Hotline: | +49(0)5246/963-157
Fax: | +49(0)5246/963-9157
E-Mail: | support@beckhoff.com

Beckhoff Service

Das Beckhoff Service-Center unterstützt Sie rund um den After-Sales-Service:

  • Vor-Ort-Service
  • Reparaturservice
  • Ersatzteilservice
  • Hotline-Service
Hotline: | +49(0)5246/963-460
Fax: | +49(0)5246/963-479
E-Mail: | service@beckhoff.com

Weitere Support- und Serviceadressen finden Sie auf unseren Internetseiten unter http://www.beckhoff.de.

Beckhoff Firmenzentrale

Beckhoff Automation GmbH & Co. KG

Hülshorstweg 20
33415 Verl
Deutschland

Telefon: | +49(0)5246/963-0
Fax: | +49(0)5246/963-198
E-Mail: | info@beckhoff.com

Die Adressen der weltweiten Beckhoff Niederlassungen und Vertretungen entnehmen Sie bitte unseren Internetseiten:
http://www.beckhoff.de

Dort finden Sie auch weitere Dokumentationen zu Beckhoff Komponenten.


Identifier-Verteilung

Default Identifier

CANopen sieht für die wichtigsten Kommunikationsobjekte Default Identifier vor, die aus der 7-Bit Knotenadresse (Node-ID) und einem 4-Bit Function-Code nach folgendem Schema abgleiten werden:

Für die Broadcast-Objekte wird die Node-ID 0 eingesetzt. Damit ergeben sich folgende Default Identifier:

Broadcast-Objekte

Objekt | Funktion | Function Code | resultierende COB ID |  | Objekt für Comm. Parameter / Mapping
 |  |  | hex | dez
NMT | Boot-Up | 0 | 0x00 | 0 | - / -
SYNC | Synchronisation | 1 | 0x80 | 128 | 0x1005 + 0x1006 / -

Peer-to-Peer-Objekte

Objekt | Funktion | Function Code | resultierende COB ID |  | Objekt für Comm. Parameter / Mapping
 |  |  | hex | dez
Emergency | Status / Fehler | 1 | 0x81 - 0xFF | 129 - 255 | - / -
PDO1 (tx) | dig. Eingänge | 11 | 0x181 - 0x1FF | 385 - 511 | 0x1800 / 0x1A00
PDO1 (rx) | digitale Ausgänge | 100 | 0x201 - 0x27F | 513 - 639 | 0x1400 / 0x1600
PDO2 (tx) | analoge Eingänge | 101 | 0x281 - 0x2FF | 641 - 767 | 0x1801 / 0x1A01
PDO2 (rx) | analoge Ausgänge | 110 | 0x301 - 0x37F | 769 - 895 | 0x1401 / 0x1601
PDO3 (tx) | analoge Eingänge* | 111 | 0x381 - 0x3FF | 897 - 1023 | 0x1802 / 0x1A02
PDO3 (rx) | analoge Ausgänge* | 1000 | 0x401 - 0x47F | 1025 - 1151 | 0x1402 / 0x1602
PDO4 (tx) | analoge Eingänge* | 1001 | 0x481 - 0x4FF | 1153 - 1279 | 0x1803 / 0x1A03
PDO4 (rx) | analoge Ausgänge* | 1010 | 0x501 - 0x57F | 1281 - 1407 | 0x1403 / 0x1603
SDO (tx) | Parameter | 1011 | 0x581 - 0x5FF | 1409 - 1535 | - / -
SDO (rx) | Parameter | 1100 | 0x601 - 0x67F | 1537 - 1663 | - / -
Guarding | Life-/Node-guarding, Heartbeat, Boot-Up Nachricht | 1110 | 0x701 - 0x77F | 1793 - 1919 | (0x100C, 0x100D, 0x100E, 0x1016, 0x1017)

*) Für PDO3 und PDO4 gilt das Beckhoff Default Mapping. In den meisten Konfigurationen enthalten PDO 3+4 Daten von analogen Ein/Ausgängen, es können jedoch auch "überzählige" Daten von digitalen E/As oder Daten von Sonderklemmen sein. Details finden Sie im Abschnitt PDO Mapping.

Bis zur CANopen-Spezifikation Version 3 waren jeweils 2 PDOs mit Default-Identifiern versehen. Die BECKHOFF Buskoppler bis Firmwarestand BA entsprechen diesem Stand der Spezifikation. Ab Firmwarestand C0 (CANopen Version 4) sind Default Identifier für bis zu 4 PDOs vorgesehen.

Herstellerspezische Default Identifier für zusätzliche PDOs

Den zusätzlichen PDOs, die von den Beckhoff Buskopplern nach dem Standardschema befüllt werden, wird kein Identifier zugeordnet. Der Anwender muss in das Objektverzeichnis einen Identifier für diese PDOs eintragen. Einfacher ist es, die belegten PDOs über das Objekt 0x5500 aktivieren.

Über diesen Eintrag im Objektverzeichnis wird die Default-Identifier-Verteilung auf bis zu 11 PDOs ausgedehnt. Es ergeben sich folgende Identifier:

Objekt | Function Code | resultierende COB ID (hex) | resultierende COB ID (dez)
PDO5 (tx) | 1101 | 0x681 - 0x6BF | 1665 - 1727
PDO5 (rx) | 1111 | 0x781 - 0x7BF | 1921- 1983
PDO6 (tx) | 111 | 0x1C1 - 0x1FF | 449 - 511
PDO6 (rx) | 1001 | 0x241 - 0x27F | 577 - 639
PDO7 (tx) | 1011 | 0x2C1 - 0x2FF | 705 - 767
PDO7 (rx) | 1101 | 0x341 - 0x37F | 833 - 895
PDO8 (tx) | 1111 | 0x3C1- 0x3FF | 961 - 1023
PDO8 (rx) | 10001 | 0x441 - 0x47F | 1089 - 1151
PDO9 (tx) | 10011 | 0x4C1 - 0x4FF | 1217 - 1279
PDO9 (rx) | 10101 | 0x541 - 0x57F | 1345 - 1407
PDO10 (tx) | 10111 | 0x5C1 - 0x5FF | 1473 - 1535
PDO10 (rx) | 11001 | 0x641 - 0x67F | 1601- 1663
PDO11 (tx) | 11011 | 0x6C1 - 0x6FF | 1729 - 1791
PDO11 (rx) | 11101 | 0x741 - 0x77F | 1857 - 1919
Achtung Der Index 0x5500 darf nicht genutzt werden, wenn Buskoppler mit mehr als 5 PDOs in Netzen mit Knotennummern über 64 vorhanden sind, da es sonst zu Identifier-Überschneidungen kommenkann.