Online

EtherCAT-State-Machine

Bei logischer Adressierung wird ein Abschnitt aus dem logischen Prozessabbild adressiert. Ein Teilprozessabbild kann einer Task zugeordnet und mit ihr synchronisiert sein.

Fieldbus Memory Management Units (FMMUs) bilden logische Adressen auf physikalische Adressen ihres EtherCAT-Gerätes ab. Diese Abbildung kann lesend, schreibend oder beides sein. SyncManager sorgen für einen konsistenten und sicheren Datenaustausch zwischen dem EtherCAT-Master und der lokalen Applikation eines Slave-Gerätes.

Der EtherCAT-Feldbus wird als logischer Speicher aufgefasst. Im physikalischen Speicher des Slave-Gerätes befinden sich die Prozessdaten. Eine FMMU korreliert den logischen Speicher mit dem physikalischen Speicher mithilfe einer Zuordnungstabelle.

Online 1:

In der Applikationsschicht läuft die EtherCAT-State-Machine, werden Prozessdatenobjekte verarbeitet und werden Dateizugriff und Netzwerkkommunikation gesteuert. In der physikalischen Schicht werden Daten in elektrische oder optische Signale umgesetzt. Die Data-Link-Schicht enthält die FMMUs und die SyncManager und verbindet die physikalische Schicht und die Applikationsschicht.

Verteilte Uhren (Distributed Clocks) erlauben die synchrone Erzeugung von Ausgangssignalen und das synchrone Erfassen von Eingangssignalen. Mit verteilten Uhren können Ereignisse einen genauen Zeitstempel bekommen. Die lokal in den DC-EtherCAT-Geräten befindlichen verteilten Uhren werden synchronisiert. Der Offset und der Drift der verteilten Uhren wird in Bezug auf eine Referenzuhr kompensiert. Zwischen Referenzuhr und lokaler Uhr wird die Laufzeitverzögerung des EtherCAT-Signals bestimmt und gleichfalls kompensiert.

Die EtherCAT-State-Machine (ESM) koordiniert Master und Slave Applikationen beim Start-Up und während des Betriebes. Zustandsänderungen im Slave-Gerät werden in der Regel vom Master angefordert, seltener finden Zustandsänderungen der lokalen Applikation im Slave-Gerät eigenständig statt. Um vom Initialisierungszustand Init in den Betriebszustand Operational zu gelangen, durchläuft ein EtherCAT-Gerät zuerst den Zustand Pre-Operational und dann den Zustand Safe-Operational.

Online 2:

Im Zustand Init findet keine Kommunikation auf der Anwendungsebene statt. Der Master hat Zugriff auf die ihn informierenden Register der Data-Link-Layer.

Beim Übergang vom Zustand Init in den Zustand Pre-Operational fordert der Master den Zustand Pre-Operational an. Der Master konfiguriert die Kanäle der SyncManager für die Mailbox-Kommunikation und initialisiert das Synchronisieren der Distributed Clocks.

Im Zustand Pre-Operational findet Mailboxkommunikation auf der Applikationsschicht statt, jedoch noch keine Prozessdatenkommunikation.

Beim Übergang vom Zustand Pre-Operational in den Zustand Safe-Operational fordert der Master den Zustand Safe-Operational an. Der Master nutzt die Mailboxkommunikation, um Parameter für das Abbilden der Prozessdaten einzustellen, er konfiguriert die Kanäle der SyncManager für die Prozessdatenkommunikation und die Kanäle der FMMUs.

Im Zustand Safe-Operational findet Prozessdatenkommunikation statt. Eingänge werden gelesen, Ausgänge werden noch nicht geschrieben.

Beim Übergang vom Zustand Safe-Operational in den Zustand Operational fordert der Master den Zustand Operational an. Der Master sendet gültige Werte für die Ausgänge.

Im Zustand Operational haben die Ausgänge gültige Werte und die Eingänge werden wie schon im Zustand Safe-Operational natürlich weiterhin ausgewertet.

Der Zustand Bootstrap wird nur über den Zustand Init erreicht und auch nur zum Zustand Init hin wieder verlassen. Der Zustand Bootstrap wird für Firmware-Updates empfohlen. In ihm gibt es Mailbox-Kommunikation auf Applikationsebene, wobei jedoch nur das File-Access-Over-EtherCAT-Protokoll verfügbar ist. Im Zustand Bootstrap findet keine Prozessdatenkommunikation statt.

Im E/A-Baum gibt die Variable „State“ im Ordner „InfoData“ den Zustand eines Slave-Gerätes an.

Wert der Variablen „State“

Zustand

0x___1

Slave-Gerät ist im Zustand „Init“.

0x___2

Slave-Gerät ist im Zustand „PreOp“.

0x___3

Slave-Gerät ist im Zustand „Boot“.

0x___4

Slave-Gerät ist im Zustand „SafeOp“.

0x___8

Slave-Gerät ist im Zustand „Op“.

0x001_

Slave-Gerät signalisiert Fehler.

0x002_

Ungültige Hersteller-ID, ungültiger Produkt-Code … gelesen.

0x004_

Initialisierungs-Fehler aufgetreten.

0x008_

Slave-Gerät deaktiviert.

0x010_

Slave-Gerät nicht anwesend.

0x020_

Slave-Gerät signalisiert Verbindungsfehler.

0x040_

Slave-Gerät signalisiert fehlende Verbindung.

0x080_

Slave-Gerät signalisiert unerwartete Verbindung.

0x100_

Kommunikation Port A.

0x200_

Kommunikation Port B.

0x400_

Kommunikation Port C.

0x800_

Kommunikation Port D.

EtherCAT, Karteireiter „Online“

Sind Sie mit dem Zielsystem verbunden und wählen Sie das EtherCAT-Gerät im IO-Baum an, wird der Karteireiter „Online“ verfügbar.

Online 3:

Textfeld „Aktueller Status“

Das Textfeld „Aktueller Status“ zeigt den aktuellen Status des EtherCAT-Master-Gerätes an.

Schaltfläche „Init“

Die Schaltfläche „Init“ fordert den „Init“-Status vom EtherCAT-Master-Gerät an.

Schaltfläche „Pre-Op“

Die Schaltfläche „Pre-Op“ fordert den „Pre-Op“-Status vom EtherCAT-Master-Gerät an.

Schaltfläche „Safe-Op“

Die Schaltfläche „Safe-Op“ fordert den „Safe-Op“-Status vom EtherCAT-Master-Gerät an.

Schaltfläche „Op“

Die Schaltfläche „Op“ fordert den „Op“-Status vom EtherCAT-Master-Gerät an.

Schaltfläche „CRC löschen“

Die Schaltfläche „CRC löschen“ löscht die Zähler für die Zyklische Redundanzprüfung der EtherCAT-Slave-Geräte.

Schaltfläche „Frames löschen“

Die Schaltfläche „Frames löschen“ setzt die Zähler in der Tabellenzeile „Send Frames“ auf den Wert Null.

Tabellenspalte „Counter“

In der Tabellenspalte „Counter“ ist die Art des Zählers für die jeweilige Tabellenzeile spezifiziert.

Tabellenspalte „Cyclic“

In der Tabellenspalte „Cyclic“ stehen Angaben zur zyklischen EtherCAT-Kommunikation.

Tabellenspalte „Queued“

In der Tabellenspalte „Queued“ stehen Angaben zur azyklischen EtherCAT-Kommunikation.

Tabellenzeile „Send Frames“

Die Tabellenzeile „Send Frames“ enthält Angaben über gesendete Übertragungsrahmen.

Tabellenzeile „Frames / sec“

Die Tabellenzeile „Frames / sec“ enthält Angaben über gesendete Übertragungsrahmen pro Sekunde.

Tabellenzeile „Lost Frames“

Die Tabellenzeile „Lost Frames“ enthält Angaben über verlorengegangene Übertragungsrahmen.

Tabellenzeile „Tx/Rx Errors“

In der Tabellenzeile „Tx/Rx Errors“ stehen die Datenverluste der Netzwerkkarte beim Senden und Empfangen.

Listenansicht EtherCAT-Slave-Geräte

Die Listenansicht oben im „Online“-Dialog zeigt alle EtherCAT-Slave-Geräte an, ihre zugehörigen Zustände und die Werte der zugehörigen Zähler für die Zyklische Redundanzprüfung.

Tabellenspalte „No“

Die Tabellenspalte „No“ gibt Auskunft über die Slaveadresse des Gerätes im Kommunikationsring.

Tabellenspalte „Addr“

In der Tabellenspalte „Addr“ steht die feste Adresse (siehe EtherCAT Adr) des EtherCAT-Slave-Gerätes.

Tabellenspalte „Name“

In der Tabellenspalte „Name“ steht der Name des EtherCAT-Slave-Gerätes.

Tabellenspalte „State“

Die Tabellenspalte „State“ gibt den Status des EtherCAT-Slave-Gerätes an. Der Status kann INIT, PREOP, SAFEOP oder OP sein. Des weiteren werden Fehlerzustände und Zwischeninformationen angezeigt.

Tabellenspalte „CRC“

In der Tabellenspalte „CRC“ stehen die Werte der Zähler für die Zyklische Redundanzprüfung jeweils für ein EtherCAT-Slave-Gerät. Die Zähler für die zyklische Redundanzprüfung der Ports A, B (falls benutzt), C (falls benutzt) und D (falls benutzt) werden durch Punkt getrennt hintereinander aufgeführt. Ein Zähler für die Zyklische Redundanzprüfung wird für den betreffenden Port dann inkrementiert, wenn ein Fehler aufgetreten ist, der durch die Zyklische Redundanzprüfung sichtbar geworden ist. Frames können, während sie durch das Netzwerk laufen zerstört oder beschädigt werden. Fehler, die durch die Zyklische Redundanzprüfung sichtbar werden, können ihre Ursache zum Beispiel in Kabelfehlern, in Kontaktproblemen, in losen Kontakten oder in nicht festen Verbindern haben.

Kontextmenü Listenansicht EtherCAT-Slave-Geräte

Klicken Sie mit der rechten Maustaste in die Listenansicht der EtherCAT-Slave-Geräte, dann öffnet sich ein Kontextmenü. Ist dabei kein Gerät markiert, dann sind die Einträge „‘INIT’ Status anfordern“, „‘PREOP’ Status anfordern“, „‘SAFEOP’ Status anfordern“, „‘OP’ Status anfordern“, „‘BOOTSTRAP’ Status anfordern“, „EEPROM Update…“ und „Erweiterte Einstellungen…“ ausgegraut.

Kontextmenü: ‘INIT’ Status anfordern

Dieser Eintrag versetzt das markierte Slave-Gerät oder die markierten Slave-Geräte in den Status „INIT“.

Kontextmenü: ‘PREOP’ Status anfordern

Dieser Eintrag versetzt das markierte Slave-Gerät oder die markierten Slave-Geräte in den Status „PREOP“.

Kontextmenü: ‘SAFEOP’ Status anfordern

Dieser Eintrag versetzt das markierte Slave-Gerät oder die markierten Slave-Geräte in den Status „SAFEOP“.

Kontextmenü: ‘OP’ Status anfordern

Dieser Eintrag versetzt das markierte Slave-Gerät oder die markierten Slave-Geräte in den Status „OP“.

Kontextmenü: ‘BOOTSTRAP’ Status anfordern

Dieser Eintrag versetzt das markierte Slave-Gerät oder die markierten Slave-Geräte in den Status „BOOT“.

Kontextmenü: EEPROM Update…

Online 4:

Hinweis

EEPROM Update

Überprüfen Sie immer die Kompatibilität zwischen dem EEPROM Inhalt und der Firmware Version, die in der Geräte-Dokumentation angegeben ist.

Hinweis

EEPROM Update

Am Ende eines EEPROM Updates muss ein Hardware-Reboot durchgeführt werden.

Kontrollkästchen „Zeige versteckte Geräte“

Wenn das Kontrollkästchen „Zeige versteckte Geräte“ angewählt wird, dann werden ältere Gerätebeschreibungen mit zurückliegenden Revisionsnummern eingeblendet.

Schaltfläche „Suchen“

Die Schaltfläche „Suchen“ öffnet einen Dialog zum Suchen und Öffnen einer EEPROM-Beschreibungsdatei. Eine gesuchte Datei ist vom Typ „EtherCAT Terminal Configuration (*.bin)“.

Schaltfläche „OK“

Die Schaltfläche „OK“ schreibt die ausgewählte „EEPROM-Beschreibung“ auf das Gerät und schließt den Dialog. Wenn keine „EEPROM Beschreibung“ ausgewählt worden ist, ist die Schaltfläche „OK“ ausgegraut.

Schaltfläche „Abbruch“

Die Schaltfläche „Abbruch“ schließt den Dialog, ohne eine „EEPROM-Beschreibung“ auf das Gerät zu schreiben.

Kontextmenü: Firmware Update…

Das Kontextmenü „Firmware Update…“ öffnet einen Dialog zum Suchen und Öffnen einer EtherCAT-Firmware-Datei. Eine gesuchte Datei ist vom Typ „EtherCAT Firmware Files (*.efw)“.

Kontextmenü: Erweiterte Einstellungen…

Der Eintrag „Erweiterte Einstellungen…“ öffnet den „Erweiterte Einstellungen…“-Dialog für die markierte Klemme beziehungsweise das markierte Slave-Gerät. Er ist ausgegraut, wenn mehrere Geräte markiert sind.

Kontextmenü: Eigenschaften

Der Eintrag „Eigenschaften“ bezieht sich nicht nur auf einen markierten Eintrag in der Liste, sondern auf die Tabelle als Ganzes. Der Eintrag „Eigenschaften“ öffnet einen Dialog „Erweiterte Einstellungen“. Dort lässt sich die Online-Anzeige um viele verschiedene Informationen zu den Slave-Geräten erweitern. Diese Informationen werden in der Liste jeweils in einer weiteren Tabellenspalte angezeigt. Ferner lässt sich diagnostizieren, wieviele Übertragungsrahmen einen Jitter bestimmter Größe haben. Im Konfig-Modus lassen sich die Slave-Geräte neu einscannen und kann man ihnen Test-Übertragungsrahmen schicken.

Kontextmenü: Export…

Der Eintrag „Export…“ öffnet einen Dialog „Speichern unter“ zum Abspeichern des Tabelleninhalts als CSV-Datei (durch Semikola getrennter Text). Für die Tabelle im Bild werden exportiert der Name des jeweiligen Slave-Gerätes, seine physikalische Adresse, seine Auto-Inkrement-Adresse, seine Verkäufer-ID, seine Produktionsnummer, seine Revisionsnummer, seine Seriennummer, sein Zustand, sein Auto-Inkrement-Offset, sein Zähler für die Zyklische Redundanzprüfung am Port A, sein Zähler für die Zyklische Redundanzprüfung am Port B, sein Zähler für die Zyklische Redundanzprüfung am Port C und sein Zähler für die Zyklische Redundanzprüfung am Port D. Der Zustand „INIT“ entspricht einem Tabelleneintrag 0x1, der Zustand „PREOP“ einem Tabelleneintrag 0x2, der Zustand „BOOT“ einem Tabelleneintrag 0x3, der Zustand „SAFEOP“ einem Tabelleneintrag 0x4 und der Zustand „OP“ einem Tabelleneintrag 0x8.