EtherCAT Funktionsprinzip

EtherCAT, kurz für Ethernet for Control Automation Technology, ist ein offenes Ethernet-basiertes Feldbus-System. Das Entwicklungsziel war, Ethernet an Automatisierungsanwendungen anzupassen, welche kurze Datenupdatezeiten (auch Zyklenzeiten genannt) erfordern.

Was ist EtherCAT?

Typische Automatisierungsnetzwerke haben eine kurze Datenlänge pro Netzwerkknoten, die weniger Nutzlast als die minimale Nutzlast eines Ethernet-Frames haben. Die Verwendung eines Frames pro Netzwerkknoten pro Zyklus führt zur Nutzung einer geringen Bandbreite und damit auch zu einer schwachen Gesamtleistung des Netzwerks. EtherCAT nähert sich der Sache anders: nämlich durch „processing on the fly“ (fließende Datenverarbeitung).

EtherCAT – das Prinzip

Die EtherCAT-Anwendungen lesen die Daten, die an sie adressiert sind, während das Telegramm die Anwendung durchläuft. Ebenso werden Eingabedaten eingefügt, während das Telegramm durchläuft. Die Frames verzögern sich nur um den Bruchteil einer Mikrosekunde an jedem Netzwerkknoten, und viele Netzwerkknoten – normalerweise das gesamte Netzwerk – können auch nur mit einem Frame adressiert werden.

EtherCAT – das Protokoll

Das EtherCAT-Protokoll ist optimiert für Prozessdaten und wird direkt innerhalb des Standard IEEE 802.3 Ethernet-Frames übertragen, in dem der Ethertype 0x88a4 genutzt wird. Es kann aus mehreren Unter-Telegrammen bestehen. Jedes dient einer bestimmten Memory-Region der Prozessabbildung. Die Datensequenz ist unabhängig von der physischen Ordnung der Knoten im Netzwerk; die Adressierung kann in beliebiger Reihenfolge erfolgen. Übertragung, Multicast und Kommunikation zwischen Slaves sind möglich und müssen von der Masteranwendung vorgenommen werden. Wenn IProuting notwendig ist, kann das EtherCAT-Protokoll in UDP/IP-Datagramme eingefügt werden.

EtherCAT – Leistung

Kurze Zykluszeiten können erreicht werden, da die Host-Mikroprozessoren in den Slave-Anwendungen nicht in die Datenverarbeitung involviert sind. Die gesamte Prozessdaten-Kommunikation findet in der Slave-Controllerhardware statt. Normale Netzwerk-Updateraten liegen bei 1-30 kHz. EtherCAT hingegen kann auch mit langsameren Zykluszeiten genutzt werden.

EtherCAT – Struktur

Dadurch, dass doppelte Ethernetebenen verwendet werden, schließen die Slave Steuergeräte einen offenen Port automatisch und senden den Ethernet Frame, wenn keine Downstreamanwendung gefunden wird. Slave Anwendungen können zwei oder mehr Ports besitzen. Aufgrund dieser Eigenschaften kann EtherCAT fast jede physische Struktur unterstützen. Die Bus- oder Linestruktur, die von Feldbusses bekannt ist, ist folglich auch für das Ethernet verfügbar. 

Da 100BASE-TX Ethernetebenen verwendet werden, kann die Distanz zwischen zwei Netzwerkknoten bis zu 100m groß sein. Bis zu 65535 Anwendungen oder Einheiten können pro Segment verbunden werden. Wenn ein solches Netzwerk in Ringanordnung verbunden ist (erfordert zwei Ports an der Mastereinheit, können Kabel gespart werden.

EtherCAT – Synchronisierung

Zur Synchronisierung wird ein verteilter Uhrenmechanismus verwendet, der zu einem sehr geringen Flattern von weniger als 1µs führt, sogar wenn der Kommunikationszyklus flattert. Dies ist äquivalent zum IEEE 1588 Precision Time Protocol-Standard. Aus diesem Grund erfordert es keine besondere Hardware in der Mastereinheit und kann in jede Software oder jeden Standard-Ethernet-MAC eingefügt werden.

Der typische Prozess, um einen verteilten Uhrenmechanismus einzuführen wird vom Master gestartet, indem er eine Nachricht an alle Slaves an eine bestimmte Adresse schickt. Bei Empfang dieser Nachricht, verändern alle Slaves den Wert ihre internen Uhr zwei Mal, einmal wenn die Nachricht empfangen wird und einmal, wenn sie zurückgeht. Der Master kann alle veränderten Werte lesen und die Verzögerung bei jedem Slave berechnen. Dieser Prozess kann so oft wie nötig wiederholt werden, um Null-Werte zu verhindern. Gesamtverzögerungen werden für jeden Slave berechnet, abhängig von seiner Position im Slave-Ring und wird an ein Offset-Register hochgeladen. Schließlich löst der Master einen Schreib-Lese-Vorgang einer Nachricht an der Systemuhr aus, die dafür sorgt, dass der erste Slave die Referenzzeit führt und sich alle anderen Slaves danach ausrichten. Um die Synchronisierung der Uhren nach der Initialisierung beizubehalten, muss der Master oder Slave regelmäßig eine Nachricht senden, um jede Geschwindigkeitsveränderung zwischen den internen Uhren der jeweiligen Slaves festzustellen.

Die Systemuhr ist ein 64 bit-Zähler mit einer Grundeinheit von 1 ns, die am 1. Januar 2000 um 0:00 beginnt.

EtherCAT – Funktionale Sicherheit

Die Verbesserung des Protokolls durch Safety over EtherCAT sorgt für eine sichere Kommunikation und Kontrollkommunikation im selben Netzwerk. Das Sicherheitsprotokoll basiert auf der Anwendungsebene des Ethernetsystems, ohne die unteren Ebenen zu beeinflussen. Es ist gemäß IEC 61508 geprüft and entspricht den Voraussetzungen des Safety Integrity Levels (SIL) 3.

Gateways

Um Feldbus-Komponenten in ein EtherCAT-Netzwerk zu integrieren, gibt es Gatewayanwendungen. Auch andere Ethernet-Protokolle können zusammen genutzt werden. Das Netzwerk ist vollkommen transparent für die Ethernet-Anwendungen. Alle Internet-Anwendungen können auch in einer solchen Umgebung verwendet werden: integrierte Webserver, E-Mail, FTP-Transfer, etc.

EtherCAT Technology Group

Die ETG ist eine internationale Nutzer und Verbraucher-Organisation mit Hauptsitz in Nürnberg. Sie wurde 2003 gegründet und hat Büros in Tokyo (Japan), Beijing (China), Seoul (Korea) und Austin, Tx (USA). Im Juni 2010 hatte sie mehr als 1350 Mitgliedsfirmen aus 50 Ländern. Die ETG sieht sich selbst als Forum für die Endnutzer aus verschiedenen Fachgebieten. Die ETG bietet Informationen über das System und seine Anwendung, organisiert technische Übungsgruppen, hat technische und Marketingkomitees und verbreitet es auf Messen.