IODD - IO Device Description

Bei dem vorherigen Kapitel IO-Link wurde bereits kurz auf das Thema IODD eingegangen. IODD steht für IO Device Description und beschreibt die Sensoren und anderen Teilnehmer in einem IO-Link Netz.
Die IODD wurde von dem IO-Link Konsortium erstellt und kontinuierlich wird daran weitergearbeitet. Bisher wurde von dem IO-Link Konsortium eine Spezifikation von IODD erstellt, eine IODD Guideline, die mit Beispielen ausgestattet ist sowie der „IODD Checker“ erstellt und veröffentlicht wurde.

Generell ist eine IODD als eine Gerätebeschreibungsdatei zu verstehen. In dieser sind Informationen zum Hersteller des Devices, die Artikelnummer, eine Auflistung der Funktionalitäten, der Parameter, Prozess- und Diagnosedaten, Kommunikationseigenschaften sowie der Aufbau des Anwender-Interfaces. Eine IODD besteht aus einer Hauptdatei, die zwingend vorhanden sein muss sowie einer optionalen Sprachdatei. Beide Dateien, einmal die Hauptdatei, sowie die Sprachdatei, sind im XML-Format geschrieben, was die Lesbarkeit Plattformunabhängig und auch ansonsten sehr gut lesbar macht. Zusätzlich können in einer IODD auch Bilddateien im PNG-Format vorhanden sein. Diese können weitere, unter anderem komplexe, Informationen zu dem Device bereithalten, die mit Worten nicht darzustellen sind, zum Beispiel komplexe Abbildungen von Schaltkreisen oder Ähnlichem.

Struktur der IODD

Eine IODD ist nach ISO 15745 (Industrial automation systems and integration — Open systems application integration frameworks) aufgebaut. Allerdings ist, was sonst nicht üblich ist, das Profil (Device Profil) und das Kommunikationsprofil (Communication Network Profile) in einer Datei zusammengefasst. In einer IODD sind, wie in der ISO 15745 vorgeschrieben, zwei Basisobjekte für die Gerätebeschreibung festgelegt. Zum einen ist das das Objekt „DeviceIdentity“, welches mehrere Texte enthält, welche das Gerät gegenüber dem Anwender identifiziert. Zusätzlich sind darin auch Identifikations-Nummern enthalten, die in einem IO-Link Netz zur automatischen Erkennung von Sensoren und anderen Geräten durch den IO-Link Master eingesetzt werden. Dadurch bedingt, dass nicht eine einzelne Firma ein Gerät herstellt, sondern mehrere Firmen ein Gerät herstellen, welches sich nicht durch die Parameter, Prozess- oder Diagnosedaten sowie der Kommunikation unterscheiden lässt, sondern lediglich eine unterschiedliche Bestellnummer aufweist. Dadurch lassen sich in der IODD mehrere Varianten beschreiben. Diese Aufteilung in Varianten löst das Problem, das sonst ein viel zu hoher Verbrauch an Identifikations-Nummern stattfindet. Auch müssen dadurch nicht jedes Mal neue Gerätebeschreibungen erstellt werden.

Es gibt neben der „DeviceIdentity“ auch noch das „DeviceFunction“-Objekt. Dieses Objekt beinhaltet sämtliche Informationen, die nicht zum Kommunikations-Profil gehören. Allerdings enthält dieses Objekt die Beschreibung aller Parameter des Devices, der Prozessdaten, der Diagnosen sowie zu dem Aufbau des Anwender-Interfaces.
Gleichzeitig ist das Communication Network Profile, welches in einer IODD eingebettet ist, sehr leicht auszutauschen. Dadurch wird gewährleistet, dass die IODD um weitere Kommunikations-Schnittstellen erweitert werden kann, was zu einer erhöhten Flexibilität in einem IO-Link Netzwerk führt, da man nicht auf ein bestimmtes Kommunikationsprotokoll festgelegt wird. Dadurch kann bei der Entwicklung völlig neuer Netze sowie bei der Integration von IO-Link in bestehende Netzwerke das Hauptaugenmerk auf der Konfiguration der Parameter liegen und man wird nicht von der Netzwerkstruktur abhängig.

Sprache der IODD

Die Texte in einer IODD können mehrsprachig verfasst werden, was einen internationalen Einsatz der Devices oder auch die Arbeit mit einem mehrsprachigen Team ermöglicht. Auch ist eine nachträgliche Übersetzung der Texte möglich, da die übersetzen Texte einfach in die IODD eingefügt und dort abgespeichert werden können. Dies hat den Vorteil, dass die jeweilige Hauptdatei, also die Ursprungsdatei, unverändert bleibt und somit ohne Probleme weiterverwendet werden kann. Somit können IODDs je nach Land individuell zusammengestellt werden, ohne das die IODD zu groß und gleichzeitig unübersichtlich wird.

Überprüfung der IODD

Damit eine IODD verwendet werden kann, muss diese gestempelt werden. Um diesen Stempel zu erhalten, muss eine IODD mit dem „IODD Checker“ überprüft werden. Dabei wird unter anderem die Schema-Konformität sowie alle vorhandenen Regeln der IODD Spezifikation überprüft. Eine solche Prüfung ist notwendig, da nicht alle Schema-Konformitäten und IODD Spezifikationen über ein XML Schema überprüfbar sind. Erst wenn der IODD Checker die IODD überprüft hat und diese den Test bestanden hat, erhält die IODD einen Stempel.

Durch diese Vorgehensweise ersparen sich die Rahmenanwendungen, wie weiter oben bereits beschrieben, die aufwendige Implementierung der Prüfung für die IODDs. Somit muss vor der Verwendung einer neuen IODD darauf geachtet werden, dass ein IODD Checker die Datei überprüft und stempelt. Das spart im IO-Link Netzwerk natürlich Rechenleistung, was ein weiterer Vorteil ist, da dadurch natürlich auch Zeit eingespart werden kann, da sich der IO-Link Master ganz auf die Kommunikation mit dem Device konzentrieren kann und nicht erst die Gültigkeit der IODD überprüfen muss. Bei einem kleineren Netzwerk würde diese Aufgabe nicht größer ins Gewicht fallen, allerdings wird es zu einem Störfaktor, wenn im laufenden Betrieb ein Gerät neu hinzugefügt wird und somit Rechenkapazität umgelegt werden muss. So kann das neue Gerät einfach an den IO-Link Master angeschlossen und direkt verwendet werden.