CoE-Interface - Parameterverwaltung im EtherCAT System

Hintergrund

In einer Automatisierungsumgebung werden viele unterschiedliche Geräte eingesetzt. Diese Geräte können einzeln oder im Verbund an einem Bussystem zusammen eingesetzt werden. Solche Geräte können Steuerungen, Drehgeber, Servoverstärker, Motore, I/O-Module oder Sensoren u.a. sein.

Je nach Komplexität muss ein solches Gerät für den jeweiligen Bedarfsfall parametrierbar/einstellbar sein. Bei einem einfachen digitalen 24 V-Eingang mit fester Schaltschwelle und -verzögerung ist eine Parametrierung unter Umständen nicht nötig, jedoch wird man bei einem Drehgeber nicht darauf verzichten können (z. B. Anzahl der Striche, absolut oder relativ, Datenformat, usw.)

Darüber hinaus kann es von Interesse sein, im Gerät bei der Produktion oder im Betrieb Daten abzulegen.
Der Hersteller könnte Produktionsdaten ablegen wie Gerätename, Seriennummer, Firmwarestand, Abgleichdaten oder Herstellungsdatum, ggf. mit Zugangs- oder Änderungsschutz versehen.
Der Anwender könnte Anwenderabgleichdaten und die einsatzspezifischen Einstellungen im Gerät hinterlegen.

Um hier eine anwenderfreundliche Schnittstelle zur Gerätebedienung zu schaffen, sind von unterschiedlichen Organisationen verschiedene Standards angelegt worden, in denen definiert wurde:

EtherCAT lehnt sich hier an den so genannten CoE-Standard an, Can-Application-protocoll-over-EtherCAT.

Can-Over-EtherCAT

Die CiA-Organisation (CAN in Automation) verfolgt u.a. das Ziel, durch Standardisierung von Gerätebeschreibungen Ordnung und Austauschbarkeit zwischen gleichartigen Geräten herzustellen. Zu diesem Zweck werden so genannte Profile definiert, die die veränderlichen und unveränderlichen Parameter eines Gerätes abschließend beschreiben. Solch ein Parameter umfasst mindestens folgende Eigenschaften:

Beispiel: der Parameter "Herstellerkennung" (Vendor ID) habe die Indexnummer 0x4120:01 und den Zahlenwert "2" als Kennzeichnung eines Beckhoff-Gerätes.
Da im maschinellen Umfeld gerne mit hexadezimalen Werten gearbeitet wird, wird der Parameter aus Anwendersicht also dargestellt als

CoE-Interface - Parameterverwaltung im EtherCAT System 1:

mit der Eigenschaft RO (read-only), denn die Herstellerkennung soll vom Anwender nicht verändert werden.

Solch eine Liste an Parametern, die Gesamtheit des gerätespezifischen CoE-Verzeichnisses, kann sehr umfangreich werden. Die ersten Einträge einer Beckhoff EL3152 analogen Eingangsklemme in der Ansicht des TwinCAT System Manager lauten:

CoE-Interface - Parameterverwaltung im EtherCAT System 2:
CoE-Verzeichnis EL3152

Die Indexnummern werden im Profil festgelegt, sie beginnen bei EtherCAT deshalb bei 0x1000, weil die darunterliegenden Einträge nicht dargestellt werden müssen.

CoE-Verzeichnis - Verfügbarkeit

Ein EtherCAT-Teilnehmer kann, muss aber nicht über ein CoE-Verzeichnis verfügen. Einfache Slaves benötigen kein Parameterverzeichnis bzw. verfügen nicht über den zur Verwaltung nötigen Controller. Andererseits kann auch der EtherCAT Master (wie TwinCAT) als Software-EtherCAT-Gerät ein CoE-Verzeichnis verwalten.

Wenn vorhanden, ist das CoE-Verzeichnis ab dem Status PREOP in Betrieb.

Das Objektverzeichnis ist per SDO-Information-Dienst auslesbar (Service Data Objects).

CoE-Verzeichnis - Lokalisierung im EtherCAT-Slave

Das CoE-Verzeichnis als Parametersystem muss im Gerät in der Firmware (FW) im lokalen Controller verwaltet werden. Dies ist das so genannte Online-Verzeichnis, weil es dem Anwender nur zur Verfügung steht, wenn der EtherCAT-Slave unter Betriebsspannung in Betrieb ist und ggf. über EtherCAT-Kommunikation manipuliert werden kann.

Damit auch ohne vorhandenen Slave schon vorab die Parameter eingesehen und verändert werden können, wird üblicherweise eine Default-Kopie des gesamten Verzeichnisses in der Gerätebeschreibungsdatei ESI (XML) hinterlegt. Dies wird Offline-Verzeichnis genannt. Änderungen in diesem Verzeichnis wirken sich bei TwinCAT nicht auf den späteren Betrieb des Slave aus. Die xml-Dateien können auf der Beckhoff-Website im Downloadbereich bezogen werden.

Der TwinCAT System Manager 2.11 kann beide Listen anzeigen und kennzeichnet dies:

CoE-Interface - Parameterverwaltung im EtherCAT System 3:
Online/Offline Anzeige

Im Online Verzeichnis

Im Offline Verzeichnis

wird das reale aktuelle Verzeichnis des Slaves ausgelesen. Dies kann je nach Größe und Zykluszeit einige Sekunden dauern

wird das Offline-Verzeichnis aus der ESI-Datei angezeigt. Änderungen sind hier nicht sinnvoll bzw. möglich.

wird die tatsächliche Identität angezeigt

wird in der Identität der konfigurierte Stand angezeigt

wird der Firmware- und Hardware-Stand des Gerätes laut elektronischer Auskunft angezeigt

wird kein Firmware- oder Hardware-Stand angezeigt, da dies Eigenschaften des realen Gerätes sind

ist ein grünes Online im TwinCAT System Manager, Karteireiter CoE-Online zu sehen

ist ein rotes Offline im TwinCAT System Manager, Karteireiter CoE-Online zu sehen

Einteilung

Es sind verschiedene Typen für CoE-Parameter möglich wie String (Text), Integer-Zahlen, Bool'sche Werte oder größere Byte-Felder. Damit lassen sich ganz verschiedene Eigenschaften beschreiben. Beispiele für solche Parameter sind Herstellerkennung, Seriennummer, Prozessdateneinstellungen, Gerätename, Abgleichwerte für analoge Messung oder Passwörter.

Die für den anwendungsorientierten EtherCAT-Feldbusanwender wichtigen Bereiche im Slave-CoE sind

Ferner interessant sind die Bereiche

Kanalweise Ordnung

Das CoE-Verzeichnis ist in EtherCAT Geräten angesiedelt, die meist mehrere funktional gleichwertige Kanäle umfassen. z. B. hat eine 4 kanalige Analogeingangsklemme 0..10 V auch 4 logische Kanäle und damit 4 gleiche Sätze an Parameterdaten für die Kanäle. Um in den Dokumentationen nicht jeden Kanal auflisten zu müssen, wird gerne der Platzhalter "n" für die einzelnen Kanalnummern verwendet.

Im CoE-System sind für die Menge aller Parameter eines Kanals eigentlich immer 16 Indize mit jeweils 255 Subindizes ausreichend. Deshalb ist die kanalweise Ordnung in 16dez/10hex-Schritten eingerichtet. Am Beispiel des Parameterbereichs 0x8000 sieht man dies deutlich:

Allgemein wird dies geschrieben als 0x80n0.

CoE-Verzeichnis - Wertänderungen

Einige, insbesondere die vorgesehenen Einstellungsparameter des Slaves sind durch den Anwender von der Feldbusseite aus veränderlich und beschreibbar. Dies kann schreibend/lesend geschehen

CoE-Verzeichnis - StartUp-Liste

CoE-Interface - Parameterverwaltung im EtherCAT System 4:

StartUp-Liste

Veränderungen im lokalen CoE-Verzeichnis des EtherCAT Slaves gehen im Austauschfall mit dem alten Gerät verloren. Wird im Austauschfall ein neues Gerät mit Werkseinstellungen ab Lager Beckhoff eingesetzt, bringt diese die Standardeinstellungen mit. Es ist deshalb empfehlenswert, alle Veränderungen im CoE-Verzeichnis eines EtherCAT Slave in der Startup List des Slaves zu verankern, die bei jedem Start des EtherCAT Feldbus abgearbeitet wird. So wird auch ein im Austauschfall ein neuer EtherCAT Slave automatisch mit den Vorgaben des Anwenders parametriert.

Wenn EtherCAT Slaves verwendet werden, die lokal CoE-Wert nicht dauerhaft speichern können, ist zwingend die StartUp-Liste zu verwenden.

Für diese Fälle kommt die StartUp-Liste zum Einsatz: die hier vorliegenden, vom Anwender eingetragenen Werte werden bei jedem EtherCAT Statusübergang/Start zum entsprechenden Slave gesendet. Ein StartUp-Eintrag besteht aus

Die Reihenfolge der Einträge wird nicht berücksichtigt: alle Einträge, für die ein Statusübergang zutrifft, werden gleichzeitig als asynchrone Kommandos an das EtherCAT System übergeben und dort ausgeführt, sobald es die Buslast zulässt.

Eine Überprüfung, ob ein Eintrag schon gleichlautend im Slave vorliegt, findet nicht statt.

Beispiel

Im Folgenden wird in die StartUp-Liste einer EL3152 die Anwenderskalierung aktiviert. Bereits vorhandene, zum Betrieb benötigte Einträge in der Liste sind grau hinterlegt.

Beim Rechtsklick auf die Fläche erscheint der Dialog:

CoE-Interface - Parameterverwaltung im EtherCAT System 5:
Manuelles Einfügen eines StartUp-Eintrages
CoE-Interface - Parameterverwaltung im EtherCAT System 6:
Editieren

Beim Klick auf den Eintrag 0x8000:01 werden die entsprechenden Werte übernommen, bei Data wird 01 als gewünschter Wert eingetragen. Der Eintrag "P->S" kennzeichnet den Zeitpunkt der Ausführung.

CoE-Interface - Parameterverwaltung im EtherCAT System 7:
Geänderte StartUp-Liste

Vom Anwender angelegte Einträge sind hellblau hinterlegt.

CoE-Verzeichnis - Datenerhaltung

CoE-Interface - Parameterverwaltung im EtherCAT System 8:

Datenerhaltung

Werden online auf dem Slave CoE-Parameter geändert, wird dies in Beckhoff-Geräten ausfallsicher im Gerät (EEPROM) gespeichert. D.h. nach einem Neustart sind die veränderten CoE-Parameter immer noch erhalten.
Andere Hersteller können dies anders handhaben.
Wenn EtherCAT Slaves verwendet werden, die lokal CoE-Wert nicht dauerhaft speichern können, ist zwingend die StartUp-Liste zu verwenden.

Zusammenfassung der Eigenschaften