Kommunikationsprotokolle für das Industrial IoT
OPC UA und umati vs. MQTT & Sparkplug – ein Vergleich

Anja Helmbrecht-Schaar

Dynamisch, flexibel, intelligent: Die digitale Transformation verspricht revolutionäre Möglichkeiten in der Fertigung. Mit Industrie 4.0 und der damit einhergehenden Vernetzung sämtlicher am Produktionsprozess beteiligten Systeme, steigt auch die Bedeutung der Standards, die einen systemübergreifenden Datenaustausch und eine reibungslose Maschine-zu-Maschine-Kommunikation gewährleisten. Eines der gängigsten Kommunikationsprotokolle für herkömmliche Produktionsumgebungen ist OPC UA – oft in Verbindung mit umati. Im Hinblick auf die zunehmend wichtige Interoperabilität im Industrial IoT lohnt jedoch auch ein Blick auf MQTT, speziell im Zusammenhang mit der Sparkplug-Erweiterung. Der nachfolgende Beitrag erläutert die Unterschiede sowie Vor- und Nachteile beider Protokolle und zeigt Anwendungsfälle, für die eine Kombination beider Standards sinnvoll ist.

OPC Unified Architecture (OPC UA) ist ein Standard im Produktionsumfeld, der als Nachfolger von OPC (Object Linking and Embedding for Process Control) veröffentlicht wurde, um eine Plattformunabhängigkeit zu erreichen. Das Protokoll ist eines der wichtigsten Kommunikationsprotokolle und wird typischerweise in der industriellen Automatisierung und Prozesssteuerung eingesetzt. OPC UA definiert ein vollständiges Datentyp-System. Resources – so genannte Knoten – lassen sich einzeln adressieren. Die Knoten eines Gesamtsystems können als Datenobjekte aus einfachen oder komplexen Daten-
typen aufgebaut sein. Discovery Services dienen zur dynamischen Erkennung neuer Komponenten im System. In der OPC UA-Architektur spielen generische Gerätemodelle eine zentrale Rolle. Gerätehersteller sind für die Bereitstellung des Servers, der ein generisches Gerätemodell der konkreten Anlage zuordnet, verantwortlich.

Der OPC UA-Standard setzt sich aus einzelnen Spezifikationen zusammen. Jede Spezifikation beschreibt eine Teilfunktion und gibt vor, welche Schnittstellen von Server und Client für diese Funktion implementiert werden müssen. 

Companion Specifications der Branchen sind hierfür hilfreich, soweit sie sich für die Geräte und Systeme nutzen lassen. In diesen werden Strukturen für die jeweils branchenspezifischen Anwendungen und beteiligten Objekte festgelegt. Über Gateway-Implementationen für DDS- oder oneM2M-Anwendungen oder durch ein http-Gateway kann die Kommunikation zu anderen Diensten etabliert werden. 

OPC basiert auf einer Client-/Server-Architektur: Bei OPC entscheidet der Client, wann der Server welche Daten von den Systemen abruft. Selbst wenn der Client z. B. periodische Statusaktualisierungen abonniert, liegt es am Client zu entscheiden, wie oft der Server die Geräte und Systeme abfragen soll. Die Möglichkeiten von OPC UA, Meta-Informationen zu durchsuchen und auszulesen sowie die flexible Organisation von Variablen in Überwachungslisten bieten Komfort, wenn eine Maschine von außen betrachtet und überwacht werden soll. Sollen viele heterogene Anwendungen und viele Geräte unterschiedlicher Hersteller vernetzt werden, wird es zu einer echten Herausforderung, eine OPC UA-Architektur zu realisieren. Allein ein Blick auf die Spezifikation mit über 1200 Seiten zeigt, wie umfangreich eine vollständige Implementierung werden kann. Diese ist nicht nur teuer bezüglich der Entwicklungs- und Supportkosten, auch haben die Geräte einen signifikant höheren CPU-Bedarf. 

Problematisch ist zudem die Implementierung mehrerer Verbraucher, die in einer 1-N-Konstellation oder in komplexeren Architekturen auftreten. Eine richtige Datenentkopplung lässt sich durch die zugrunde liegende Architektur nicht erreichen. Auch die Anbindung an Cloud-basierte Anwendungen kann sich als schwierig erweisen oder mit hohem Implementationsaufwand verbunden sein.


OT/IT Infrastruktur mit OPC UA

Die typische OT-Architektur in Produktionsumgebungen umfasst eine Vielzahl von Geräten, Sensoren und Gateways. Die jeweiligen Anwendungen fordern die nötigen Daten direkt von den speicherprogrammierbaren Steuerungen (SPS), Gateways oder Servern an, die auch über verschiedene Protokolle kommunizieren können. Eine beliebige Anzahl von Servern aus dem Produktionsbereich kommuniziert dabei direkt mit anderen Teilnehmern im Produktionsbereich. Es gibt somit keine „Single Source of Truth“. Während dies recht gut funktioniert, wenn nur wenige Systeme zu integrieren sind, führt dies bei einer größeren Anzahl von Komponenten zu einer schwer wartbaren Architektur. Systeme sind Punkt-zu-Punkt verbunden, so dass Komponenten fest miteinander verdrahtet sind. Moderne Architekturen erfordern Flexibilität und eine klare Trennung der verschiedenen Bereiche in einem IIOT-System. Auch die Einführung neuer Maschinen und Anlagen in ein bestehendes System gestaltet sich schwierig und ist mit einem hohen, initialen Aufwand verbunden. 


Bild 1: IIoT-Architektur ohne Sparkplug


UMATI

Um diesen Aufwand zu verringern, wurde eine weitere Schnittstelle umati (universal machine technology interface) spezifiziert und entwickelt. Sie beschreibt einen standardisierten und sicheren Austausch der Daten von Maschinen mit den jeweiligen IT-Systemen. Basierend auf OPC UA lässt sich umati als offener Standard lizenzfrei nutzen. Betreiber des Projekts sind der VDW und VDMA sowie Herstellerfirmen der Werkzeugmaschinenbranche.

Die Spezifikation stellt folgendes bereit:

  • Companion Specification zur Definition einer einheitlichen Semantik für Werkzeugmaschinen
  • Kommunikationsstandards für Protokolle, Server-Konfiguration und Security-Mechanismen
  • Testspezifikationen, die als Templates genutzt werden können sowie Testwerkzeuge

Mit Hilfe der Spezifikation wird die Identifikation der beteiligten Maschinen auf ein bestimmtes Muster festgelegt und der Inhalt der zu übermittelnden Daten auf folgende Komponenten fixiert:

  • Maschinenstatus 
  • Auftragsstatus
  • Prognosen zu Benutzerinteraktionen
  • Fehlermeldungen und Warnungen
  • Ressourcenstatus

Damit beschreibt umati sowohl ein OPC UA-Informationsmodell für Werkzeugmaschinen als auch die Art und Weise der Kommunikation. Eine schnellere Integration von neuen Maschinen in das existierende System ist damit möglich. Die System