Darstellen von Texten

Softwareanbindung für das Display

Es gibt die Möglichkeit statische Texte über den Systemmanager einzustellen. Alternativ gibt es zwei TwinCAT Bausteine. Sie heißen FB_CXSetTextDisplayUSB(FB) und FB_CXGetTextDisplayUSB(FB). Mit FB_CXSetTextDisplayUSB(FB) werden Parameter geschrieben und mit FB_CXGetTextDisplayUSB(FB) werden die Statuswerte aus dem Baustein gelesen. Eine ausführliche Dokumentation der Bausteine befindet sich in der TwinCAT-Softwaredokumentation. Die beiden Screenshots zeigen die zugehörigen Bibliotheken für die Bausteine.

Darstellen von Texten 1:
Darstellen von Texten 2:
Darstellen von Texten 3:

Verfügbarkeit der Bausteine

Diese Funktionsbausteine sind im TwinCAT Builds ab der Version

TC2.11 R3 Build 2240
TC3.1 Build 4015

enthalten. Bei älteren Versionen ist ein Update für den Einsatz der Bausteine erforderlich.

Die Darstellung des Displays mit Systemmanager

Im Systemmanager gib es sechs Karteireiter. Diese werden im Folgenden kurz beschrieben. Es wird dabei der Fokus auf die für das Netzteil relevanten Parameter gelegt

Karteireiter: General

Hier werden allgemeine Eigenschaften des Netzteils angezeigt.

Darstellen von Texten 4:

Name

Name des EtherCAT-Geräts

Id

Laufende Nr. des EtherCAT-Geräts

Typ

Typ des EtherCAT-Geräts

Kommentar

Hier können Sie einen Kommentar (z.B. zum Anlagenteil) hinzufügen.

Disabled

Hier können Sie das EtherCAT-Gerät deaktivieren.

Karteireiter: ESB Device

Hier werden die Einstellungen zum Datenaustausch zwischen Netzteil und dem System eingestellt bzw. angezeigt.

Darstellen von Texten 5:

ESB Id

Laufende Nummer der Geräte am BUS

Device Handle

Zeiger auf den Gerätetreiber

Data Exchange

Zyklus in dem die Kommunikation erfolgt

ADS

Portadresse für ADS Zugriff
(7100 für den TwinCAT Funktionsblock)

Karteireiter: ADS Commands

Hier wird der Bereich für die ADS-Kommunikation angezeigt.

Darstellen von Texten 6:

Karteireiter: CoE Online

Darstellen von Texten 7:

CoE-Interface - Parameterverwaltung im EtherCAT System

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, Motoren, 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 24V-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: welche Geräteklassen es gibt (z.B: Klasse "Drehgeber", "analoges Eingangsmodul") über welche Parameter jeder Vertreter einer solchen Klasse verfügt (obligate und optionale Elemente) an welcher Stelle und mit welchem Mechanismus diese Parameter zu finden und zu ändern sind. 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 4120: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 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 Systemmanager lauten:

Die Indexnummern werden im Profil festgelegt, sie beginnen bei EtherCAT deshalb bei x1000, 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 Slaves aus. Die xml-Dateien können auf der Beckhoff-Website im Downloadfinder bezogen werden.

Der TwinCAT Systemmanager 2.11 kann beide Listen anzeigen und kennzeichnet dies:

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 Systemmanager, Karteireiter CoE-Online zu sehen

ist ein rotes Offline im TwinCAT Systemmanager, 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..10V 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 Indizes mit jeweils 255 Subindizes ausreichend. Deshalb ist die kanalweise Ordnung in 16dez/10hex-Schritten eingerichtet. Am Beispiel des Parameterbereichs x8000 sieht man dies deutlich:

Kanal 0: Parameterbereich x8000:00 ... x800F:255

Kanal 1: Parameterbereich x8010:00 ... x801F:255

Kanal 2: Parameterbereich x8020:00 ... x802F:255

tbc...

Allgemein wird dies geschrieben als x80n0.

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

über den Systemmanager (Abb. 3) durch Anklicken durch den Bediener
Die Werte werden dann direkt im online verbundenen Slave geändert.
Dies bietet sich bei der Inbetriebnahme der Anlage/Slaves an. Klicken Sie auf die entsprechende Zeile des zu parametrierenden Indizes und geben sie einen entsprechenden Wert im "SetValue"-Dialog ein.

aus der Steuerung/PLC über ADS z.B. durch die Bausteine aus der TcEtherCAT.lib Bibliothek
Dies wird für Änderungen während der Anlagenlaufzeit empfohlen oder wenn kein Systemmanager bzw. Bedienpersonal zur Verfügung steht.

während des EtherCAT-Starts durch vordefinierte Befehle, die sog. StartUp-Liste.
Meist wird die TwinCAT Konfiguration im Vorfeld ohne tatsächlich vorhandene EtherCAT-Slaves erstellt. Dann sollen bereits vor der Inbetriebnahme offline bekannte Eigenschaften wie Filtereinstellungen vorgenommen werden können, um die Inbetriebnahme zu beschleunigen.

CoE-Verzeichnis - StartUp-Liste

Darstellen von Texten 8:

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. Beim Klick auf den Eintrag 8000: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-Verzeichnis – Datenerhaltung

Darstellen von Texten 9:

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

Nicht jedes EtherCAT-Gerät muss über ein CoE-Verzeichnis verfügen

Wenn ein CoE-Verzeichnis vorhanden ist, wird es im Gerät vom Controller verwaltet, zur Abfrage und Beschreibung aufbereitet und gespeichert.

Zur Ansicht/Abfrage/Änderung kann der EtherCAT-Master verwendet werden, oder eine lokale Bedienoberfläche am Gerät (Tastenfeld, Bildschirm) erlaubt den Zugriff.

Geänderte Einstellungen werden in Beckhoff Geräten stromausfallsicher gespeichert.
Wenn das Gerät später getauscht wird, gehen allerdings die vom Serienstand geänderten Einstellungen verloren. Der EtherCAT-Master kann dann über die StartUp-Liste in das neue Gerät die geänderten CoE-Parameter beim Start laden, wenn er entsprechend eingestellt ist.

Damit bei der Konfigurationsvorbereitung offline ein CoE-Verzeichnis zur Verfügung steht, kann es als Kopie in der Gerätebeschreibung enthalten sein.

In welchem Umfang das CoE-Verzeichnis unterstützt wird, hängt von den Fähigkeiten des EtherCAT-Masters ab.

Karteireiter: Online

Hier wird der Zustandsautomat der EtherCAT-Kommunikation angezeigt. Es kann hier auch in einen anderen Zustand geschaltet werden. Dies geschieht durch Anwählen des gewünschten Zustands per Mausklick auf den entsprechenden Knopf. In Folgenden werden die einzelnen Zustände kurz beschrieben. Für weitere Informationen schauen Sie bitte in die EtherCAT-Systembeschreibung auf unsere Webseite.

Darstellen von Texten 10:

EtherCAT State Machine

Über die EtherCAT State Machine (ESM) wird der Zustand des EtherCAT-Slaves gesteuert. Je nach Zustand sind unterschiedliche Funktionen im EtherCAT-Slave zugänglich bzw. ausführbar. Insbesondere während des Hochlaufs des Slaves müssen in jedem State spezifische Kommandos vom EtherCAT Master zum Gerät gesendet werden.

Es werden folgende Zustände unterschieden:

Regulärer Zustand eines jeden EtherCAT Slaves nach dem Hochlauf ist der Status OP.

Darstellen von Texten 11:

Init
Nach dem Einschalten befindet sich der EtherCAT-Slave im Zustand Init . Dort ist weder Mailbox- noch Prozessdatenkommunikation möglich. Der EtherCAT-Master initialisiert die Sync-Manager-Kanäle 0 und 1 für die Mailbox-Kommunikation.

Pre-Operational (Pre-Op)
Beim Übergang von Init nach Pre-Op prüft der EtherCAT-Slave, ob die Mailbox korrekt initialisiert wurde.Im Zustand Pre-Op ist Mailbox-Kommunikation aber keine Prozessdaten-Kommunikation möglich. Der EtherCAT-Master initialisiert die Sync-Manager-Kanäle für Prozessdaten (ab Sync-Manager-Kanal 2), die FMMU-Kanäle und falls der Slave ein konfigurierbares Mapping unterstützt das PDO-Mapping oder das Sync-Manager-PDO-Assignement. Weiterhin werden in diesem Zustand die Einstellungen für die Prozessdatenübertragung sowie ggf. noch klemmenspezifische Parameter übertragen, die von den Defaulteinstellungen abweichen.

Safe-Operational (Safe-Op)
Beim Übergang von Pre-Op nach Safe-Op prüft der EtherCAT-Slave, ob die Sync-Manager-Kanäle für die Prozessdatenkommunikation sowie ggf. ob die Einstellungen für die Distributed-Clocks korrekt sind. Bevor er den Zustandswechsel quittiert, kopiert der EtherCAT-Slave aktuelle Inputdaten in die entsprechenden DP-RAM-Bereiche des EtherCAT-Slave-Controllers (ECSC).

Im Zustand Safe-Op ist Mailbox- und Prozessdaten-Kommunikation möglich, allerdings hält der Slave seine Ausgänge im sicheren Zustand und gibt sie noch nicht aus. Die Inputdaten werden aber bereits zyklisch aktualisiert.

Operational (Op)
Bevor der EtherCAT-Master den EtherCAT-Slave von Safe-Op nach Op schaltet muss er bereits gültige Outputdaten übertragen.Im Zustand Op kopiert der Slave die Ausgangsdaten des Masters auf seine Ausgänge. Es ist Prozessdaten- und Mailbox-Kommunikation möglich.

Boot
Im Zustand Boot kann ein Update der Slave-Firmware vorgenommen werden. Der Zustand Boot ist nur über den Zustand Init zu erreichen.Im Zustand Boot ist Mailbox-Kommunikation über das Protokoll File-Access over EtherCAT (FoE) möglich, aber keine andere Mailbox-Kommunikation und keine Prozessdaten-Kommunikation.