EtherCAT Slave Stack
Bei der Entwicklung eines EtherCAT Slaves steht und fällt das Projekt mit der Wahl des Stacks. Eine mögliche Wahl ist der „Slave Stack Code“ (SSC) von Beckhoff. Dieser erfordert eine ETG-Mitgliedschaft ist ansonsten jedoch kostenfrei. Der „EtherCAT Slave Stack Code“ gilt durch seine langjährige und stetige Entwicklung quasi als Referenz für eine Slave Implementierung.
Entwicklungstools
EtherCAT greift auf Mechanismen von CANopen zurück. So existiert bei der Verwendung des „CAN Application Protocol over EtherCAT“ (CoE) ebenfalls ein Objekt-Verzeichnis, welches sowohl Kommunikations- als auch Hersteller- und Geräte-spezifische Objekte beinhaltet. Die Trennung von Gerätebeschreibung (ESI), EEProm und Applikations-Code erschwert das Erstellen dieses Objektverzeichnis, da das Ändern stets das Risiko der Inkonsistenz dieser Dateien birgt.
Beim Anlegen eines Prozessdaten-Objekts (PDO) muss sichergestellt werden, dass dieses nicht nur im Objektverzeichnis korrekt deklariert ist, sondern ebenfalls in der Gerätebeschreibungsdatei und im EEProm hinzugefügt wird. Da sich durch das Hinzufügen eines Prozessdaten-Objekts die gesamt Prozessdatenlänge ändert, muss auch dieser Wert in allen Dateien korrekt gesetzt werden. Diese Fehlerquelle vervielfacht sich mit jedem Objekt, welches genutzt werden soll.
Diese Arbeit und somit eine der größten Fehlerquellen können von Entwicklungstools übernommen und beseitigt werden. Eine mögliche Lösung ist der EtherCAT DeviceDesigner.
EtherCAT DeviceDesigner
Der EtherCAT DeviceDesigner bietet ein übersichtliches Benutzerinterface für die Erstellung eines Slaves auf Basis des SSC von Beckhoff.
Die Konfiguration des Slaves ist thematisch im Tool in drei Funktionsblöcke geteilt:
- Einstellen sämtlicher Defines des Stacks
- Verwalten des Objektverzeichnisses
- Verwalten von Modulen, Slots und Enumerationen
Durch die automatische Generierung ist die Konsistenz des Objektverzeichnisses mit der Gerätebeschreibungsdatei und dem EEProm sichergestellt. Desweiteren wird eine Gerätedokumentation in Text- und HTML-Form erstellt, welche stets der aktuellen Implementierung entspricht.
Was beim manuellen Erstellen des Objektverzeichnis die korrekte Anpassung von mehreren Dateien bedarf mittels des EtherCAT DeviceDesigner lediglich weniger Klicks. So lassen sich Objekte über die grafische Oberfläche einfach erstellen, anpassen oder als Prozessdaten zuweisen. Sollten sich beim Design des Geräts im Nachhinein Fehler festellen, z.B. ein unpassender Datentyp, so ist dieser im Tool ebenfalls mit nur einen Klick beseitigt.
Auch das Importieren aus bestehenden Projekten, Profil-Dateien oder Gerätebeschreibungs-Dateien ist kein Problem und erspart doppelte Arbeit und somit Zeit. Des weiteren können aus bestehenden SSC Projekte die Einstellungen importiert werden.