Anbindung proprietärer Standards an OPC UA
Dieser Ansatz wird am Werkzeugmaschinenlabor der RWTH im Smart Automation Lab verfolgt und umgesetzt. Zielsystem ist ein Industrieroboter vom Typ UR5. Der notwendige OPC Server kann im Rahmen der Umsetzung nicht direkt auf der Robotersteuerung implementiert werden. Aus diesem Grund ist ein zusätzlicher Rechner notwendig. Das erfordert jedoch die Entwicklung einer spezifischen Middleware, die die gegebenen Möglichkeiten des Informationsaustauschs (Modbus bzw. TCP-Socket-Connections) kapselt und dann nach außen hin in Form eines Informationsmodelles anbietet. Dazu wird zunächst zwischen Roboter und späterem OPC Server bzw. Rechner eine Verbindung für den bidirektionalen Datenaustausch aufgebaut. Durch die Anwendung auf dem Computer werden dann aktuelle Istwerte, wie Position, Gelenkwinkel, -geschwindigkeiten oder -beschleunigungen über eine Modbus-TCP-Verbindung ausgelesen. Das Ansteuern des Roboters erfolgt über eine Socket-Verbindung. Die so aufgebaute, bidirektionale Kommunikation findet ausschließlich auf der Prozessebene statt, also nur im Subsystem zwischen Roboter und Computer. Im nächsten Schritt sind die verfügbaren Dienste des Roboters in einer prozessüberlagerten Steuerungsebene zugänglich zu machen.
Modellierung von Roboter und Peripherie
Dazu muss das Address Space Model des Roboters erstellt werden, wobei den einzelnen Komponenten und Gelenken des Roboters charakteristische Attribute, Eigenschaften und Funktionen zugewiesen werden. Anbauteile, wie Greifer oder Schrauber werden ebenfalls im Address Space modelliert. So bildet dieser das digitale Informationsmodell, welches später die Funktionen des Roboters nach außen anbietet. Die Modellierung findet in einer UML-ähnlichen Darstellung statt.
Kommunikation über eine Schnittstelle
Für die Implementierung der Serverstruktur muss im nächsten Schritt das erstellte Modell gemäß der OPC-UA-Spezifikationen codiert werden. Bei der Codierung wird das Address Space Model nach OPC UA Standards Knoten für Knoten, nebst sämtlicher Attribute, erstellt und der entsprechende Source Code erzeugt. Durch die Verknüpfung der so erstellten Serverstruktur mit der zuvor implementierten bidirektionalen Kommunikation auf Prozessebene, können nun die Dienste und Informationen des Roboters über einen OPC Client ausgeführt und abgefragt werden. Werden nun auch die Dienste und Funktionen der übrigen Elemente der Prozesslandschaft (Werkzeugmaschinen etc.) auf dieselbe Weise dem OPC Client zur Verfügung gestellt, so kann die Kommunikation aller beteiligten Elemente unabhängig von deren inhärenten Steuerung über eine einzige prozessüberlagerte Schnittstelle realisiert werden.