Wider die Komplexität

Der Einsatz von Industrial Ethernet bedeutet nicht zwangsläufig eine Zunahme der Komplexität. Wie das Beispiel einer Ethercat-Masterlösung zeigt, lässt sich damit sehr wohl auch eine vereinfachte Handhabung von Steuerungslösungen erzielen.

Der Einsatz von Industrial Ethernet bedeutet nicht zwangsläufig eine Zunahme der Komplexität. Wie das Beispiel einer Ethercat-Masterlösung zeigt, lässt sich damit sehr wohl auch eine vereinfachte Handhabung von Steuerungslösungen erzielen.

Der Umstieg von traditionellen Feldbussen auf industrielle Ethernetlösungen ermöglicht schnellere Kommunikation über größere Entfernungen und ist darüber hinaus mit einer Vielzahl hinlänglich bekannter Vorteile verbunden. Wie steht es jedoch um die Einfachheit der Anwendung? Wie kann eine Automatisierungslösung auf der Basis eines Ethernet-basierten Übertragungsmediums wie Ethercat mindestens so einfach handhabbar sein wie bisherige Lösungen? Und wie sollte eine Lösung aussehen, die nur geringen Einarbeitungsaufwand bei größtmöglicher Effektivität erfordert, und so dem Anwender nicht nur Zeit- sondern auch spürbare Kostenersparnis bringt?

Antworten auf diese Fragen liefert das Beispiel des Ethercat-Masters der Berliner Firma Kithara Software. Hierbei handelt es sich um eine echtzeitfähige Lösung unter Windows, die auf einer speziellen Windows-Realtime-Erweiterung basiert. Diese bietet auch PC-basierte Echtzeit- Timer mit mehreren Kilohertz und verschiedene hardwarenahe Zugriffsmechanismen, einschließlich solcher zum Zugriff auf PCI-Karten oder USB-Geräte. Um die Echtzeit- Fähigkeit des Ethercat-Masters zu erreichen, sind zwei Voraussetzungen zu erfüllen: Zum einen muss die Netzwerkverbindung ein verzögerungsfreies Senden und eine unmittelbare Reaktion beim Empfang von Ethernet-Frames ermöglichen. Hierzu sind auf jeden Fall die langsamen Original-Treiber von Windows zu ersetzen und die Netzwerk-Hardware ist mit optimierten Treibern direkt anzusprechen. Zum anderen ist die anwenderspezifische Steuerungssoftware, die in den meisten Automatisierungsanwendungen zyklisch zeitäquidistant ausgeführt werden muss, in Echtzeit zu betreiben.

Den weiteren Ausführungen liegt die Annahme zugrunde, dass der Anwender die Steuerungssoftware selbst in C/C++ oder Delphi realisiert. Auf der Basis dieser Programmiersprachen kann der Entwickler seine Echtzeit-Routinen in seiner gewohnten Entwicklungsumgebung als Teil der Steuerungsapplikation erstellen. Dabei erfolgt die eigentliche Entwicklung der Steuerungssoftware komfortabel auf der Anwendungsebene, während die Ausführung der Software später auf der Kernel- Ebene in Echtzeit erfolgt. Auf diese Weise stehen dem Programmierer sämtliche Mechanismen als Teil einer Funktionsbibliothek zur Verfügung, zu der auch die Funktionen des Ethercat-Masters gehören.

Zunächst wird die Art der Konfiguration betrachtet: Im einfachsten Fall ruft der Anwender eine Funktion zum Öffnen des Ethercat-Masters auf, die den Zugang zur Netzwerkkarte herstellt, die angeschlossene Netzwerk-Topologie vollständig analysiert und daraufhin eine Deskriptorstruktur zurückliefert, die alle angeschlossenen Slaves - also zum Beispiel die Ethercat- I/O-Klemmen - umfassend beschreibt. Der Anwender kann dieser Deskriptorstruktur unter anderem Informationen über den sogenannten Master-Deskriptor entnehmen. Der Master-Deskriptor gibt an, wie viele Slaves angeschlossen sind, und ermöglicht zudem einen Zugriff auf die jeweiligen Slave-Deskriptoren. Diese wiederum beschreiben den Slave anhand von Vendor- und Produkt-ID, Typ, Namen und weiteren Elementen. Weiterhin verweisen die Slave-Deskriptoren auf die Deskriptoren der einzelnen Prozessdatenobjekte (PDO) und Servicedatenobjekte (SDO), welche ihrerseits wiederum jede einzelne in ihnen enthaltene Variable mit Namen, Datentyp und Bitlänge beschreiben.

Der Anwender kann also nach nur einem Funktionsaufruf zum Öffnen des Ethercat-Masters bereits vollständig das angeschlossene Netz nach seinen eigenen Vorstellungen analysieren. Bereits hier zeigt sich eine signifikante Vereinfachung in der Handhabung gegenüber anderen Ethercat-Master-Lösungen: Tests auf Vorhandensein verschiedener Slave-Typen, die Lokalisierung eines bestimmten Slaves und der Vergleich mit einer vorgegebenen Topologie sind auf dieser "White-Box"-Basis ebenso einfach möglich wie beispielsweise die grafische Präsentation der Netzwerkstruktur. Bei besagten anderen Lösungen findet sich an dieser Stelle oftmals das umgekehrte "Black-Box" Prinzip: Der Programmierer muss bestimmte IDs oder andere Angaben vorgeben, um nach einem passenden Slave- Gerät zu suchen. Abgesehen davon, dass der Entwickler damit gezwungen ist, sich vorab die IDs und Angaben zu besorgen, ohne die er die Slaves nicht finden kann, ist ein Überblick und ein Durchsuchen des gesamten Netzes so nicht möglich. Außerdem ist regelmäßig eine große Menge an verschiedenen Funktionen bereitzustellen, da die Suchkriterien sich stark unterscheiden können. Und dennoch können die vielen Funktionen meist nur bestimmte Fälle abdecken.