Standards
OPC UA, MQTT und Co.
Das Industrielle Internet der Dinge (IIoT) deckt ganz unterschiedliche Anwendungsbereiche ab. Genauso vielfältig wie die Anwendungsbereiche sind die zur Auswahl stehenden Konnektivitätstechnologien und Standards. Wie lässt sich die jeweils passende Technologie herausfiltern?
Bild 2: Die Realität: Die Konnektivitätsstandards überschneiden sich nicht. Die Herausforderung besteht darin, einen Standard auszuwählen und ihn anzupassen.
© RTIDas IIoT ist so vielfältig, dass sich die zur Verfügung stehenden Technologien im Endeffekt kaum überschneiden. Deshalb besteht die Herausforderung bei den IIoT-Architekturen heute nicht darin, zwischen sich überlappenden Standards zu wählen. Vielmehr kommt es darauf an, die Technologien zu verstehen, die beabsichtigte Aufgabenstellung mit der Applikation zu vergleichen und die Technologie auszuwählen, die dem speziellen Fall am ehesten entspricht. Sicherlich: Jede Technologie lässt sich so verändern, dass sie überall funktioniert. Aber das verursacht viel zusätzliche Arbeit und hat ein umständliches Design zur Folge. Betrachtet man die IIoT-Situation realistisch, entspricht diese eher dem Venn-Diagramm in Bild 2 als demjenigen in Bild 1.
Vielfach herrscht noch die Annahme vor, dass konkurrierende Standards für IIoT-Konnektivität Anforderungen erfüllen, die sich überschneiden. Das Industrial Internet Consortium entwickelte deshalb das Industrial Internet Connectivity Framework (IICF). Dieses Framework soll Entwicklern in erster Linie dabei helfen, die diversen Standards zu verstehen und den richtigen für ihre Anwendung auszuwählen. Es definiert ein neues ‚IIoT Connectivity Stack‘ und sortiert die verschiedenen Standards basierend auf ihrer Interoperabilität im Stapel. Dabei bietet es eine umfassende Analyse der sechs wichtigsten Standards und Technologien, nämlich DDS, OPC UA, oneM2M, RESTful HTTP, MQTT und CoAP. Zudem präsentiert das IICF eine Architektur, um diese Standards in komplexeren Systemen sowie in einem künftigen vernetzten Internet mit mehreren Standards zu kombinieren. Die IICF-Analyse ergab, dass der IIoT-Raum so groß ist, dass sich die Konnektivitätstechnologien im Wesentlichen nicht überlappen. Daher ist es möglich, für die meisten Probleme einen Konnektivitätsstandard auszuwählen.
Letztlich bewegen alle Konnektivitätstechnologien Daten. Dennoch sind sie sehr unterschiedlich, weshalb in den meisten Anwendungsfällen keine Auswahlmöglichkeit zwischen den Technologien besteht. Das mag auf den ersten Blick ernüchternd klingen, in Wirklichkeit aber macht die fehlende Überlappung im IIoT die Aufgabe eines Architekten viel unkomplizierter. Im Grunde gibt es ein paar einfache Fragen zu jeder Technologie, mit denen sich die Auswahl schnell eingrenzen lässt. Lassen sich drei der jeweiligen Fragen zu einer der unten genannten Technologien mit ‚Ja‘ beantworten, ist es sinnvoll, mit dieser zu beginnen. Ist dies nicht der Fall, empfiehlt es sich, die engste Übereinstimmung mit einem anderen Ansatz zu wählen und Anpassungen an der Architektur vorzunehmen.

MQTT-basierter Testadapter für Industrieprotokolle
Ein Ansatz zum Testen von Steuerungssystemen nutzt eine API-Testtechnologie, welche MQTT-basierte Nachrichten direkt an Komponenten sendet, die Industrieprotokolle wie ModBus, OPC UA unterstützen. Das entstehende Framework kommuniziert direkt mit IIoT- und Backend-IT-Systemen.
DDS
DDS (Data Distribution Service Standard) stellt eine Reihe an Standards dar, die von der Object Management Group (OMG) verwaltet werden und einen Datenbus definieren. Ein Datenbus ist eine datenzentrische Informationsflusskontrolle. Das Konzept funktioniert ähnlich wie bei einer Datenbank, bei der es sich um einen datenzentrischen Informationsspeicher handelt. Der Hauptunterschied besteht jedoch darin, dass eine Datenbank nach alten Informationen sucht, indem sie die Eigenschaften der gespeicherten Daten in Beziehung zueinander setzt. Ein Datenbus hingegen findet zukünftige Informationen, indem er die Eigenschaften der ankommenden Daten filtert. Beide – Datenbank und Datenbus – verstehen die Inhalte und lassen Anwendungen direkt mit und durch die Daten agieren, anstatt miteinander. Applikationen, die eine Datenbank oder einen Datenbus verwenden, haben keine direkte Beziehung zu anderen Anwendungen.
Der Datenbus nutzt die Kenntnisse über Struktur, Inhalt und Anforderungen an die Daten, um den Datenfluss zu verwalten. Er kann beispielsweise Redundanz auflösen, um mehrere Quellen, Datensenken und Netzwerke zu unterstützen. Zudem kann er die Quality of Service (QoS) steuern, wie Aktualisierungsrate, Zuverlässigkeit und garantierte Benachrichtigung über die Lebendigkeit der Daten. Er kann die Daten in den Updates lesen und ihr Senden optimieren, oder sich gegen das Senden entscheiden. Auch Datenflüsse erkennt und sichert er dynamisch. All diese Punkte definieren die Interaktion zwischen Software-Modulen. Somit ermöglicht das datenzentrische Paradigma eine einfache Software-Integration.
Bei der Entscheidungsfindung, ob DDS für eine Anwendung infrage kommt, helfen folgende fünf Fragen. Werden drei Fragen mit ‚ja‘ beantwortet, macht die Nutzung von DDS Sinn.
- Stellt es ein großes Problem dar, wenn mein System kurzzeitig ausfällt?
- Sind Millisekunden in meiner Kommunikation von Bedeutung?
- Beschäftige ich verschiedene Software-Entwicklungsteams oder mehr als zehn Software-Entwickler?
- Sende ich Daten an viele Orte statt nur an einen, wie eine Cloud oder Datenbank?
- Implementiere ich eine neue IIoT-Architektur?
OPC UA
OPC UA (Open Platform Communications Unified Architecture) ist ein von der OPC Foundation verwalteter Standard, der auch als IEC 62541 dokumentiert ist und auf die Geräte-Interoperabilität abzielt. Anstatt direkt auf Geräte über proprietäre Anwendungsprogrammierschnittstellen (APIs) zuzugreifen, definiert OPC UA Standard-APIs, die eine Änderung des Gerätetyps oder Herstellers erlauben. Auf diese Weise können auch Anwendungen auf höherer Ebene, etwa Human Machine Interfaces (HMI), die verschiedenen Geräte in Fabriken finden, sich mit ihnen verbinden und diese steuern.
OPC UA teilt Systemsoftware in Clients und Server ein. Die Server befinden sich in der Regel auf einem Gerät oder einer übergeordneten speicherprogrammierbaren Steuerung (SPS). Sie bieten eine Möglichkeit, über ein Standard-‚Gerätemodell‘ auf das Gerät zuzugreifen. Diese gibt es für Dutzende von Gerätetypen, von Sensoren bis hin zu Rückkopplungssteuerungen. Jeder Hersteller ist dafür verantwortlich, den Server bereitzustellen, der das generische Gerätemodell dem jeweiligen Gerät zuordnet. So stellen die Server eine standardisierte objektorientierte, remote aufrufbare API bereit, die das Gerätemodell implementiert.
Clients können über das generische Gerätemodell eine Verbindung zu einem Gerät herstellen und Funktionen aufrufen. Somit ist die Client-Software unabhängig von den tatsächlichen Geräte-Internas, und Fabrik-Integratoren können Hersteller oder Modelle nach Bedarf wechseln. OPC UA kann also ein System aus austauschbaren Teilen aufbauen und verwalten, ähnlich wie standardisierte Druckertreiber die Integration von PC-Systemen ermöglichen. Dabei gilt es zu beachten, dass das Gerätemodell auch eine Stufe der ‚semantischen‘ Interoperabilität bietet, da es die generischen Objekt-APIs in bekannten Units und angegebenen Referenzpunkten definiert.
Eine Entscheidung für OPC UA lässt sich nach folgenden Fragen treffen:
- Arbeite ich in der diskreten Fertigung?
- Stehe ich mit dem Programm der Plattform Industrie 4.0 in Verbindung?
- Baue ich ein Gerät, das von Steuerungs- oder Prozessingenieuren oder Technikern integriert wird, und nicht von Software-Entwicklern?
- Wird mein Produkt in verschiedenen Anwendungen in unterschiedlichen Systemen verwendet, im Gegensatz zu einem System (-typ), bei dem man die Architektur steuert?
- Baue ich Geräte für eine ‚Arbeitszelle‘?
oneM2M
oneM2M bietet eine gemeinsame Service-Schicht, die zwischen den Anwendungen und der Connectivity-Transportschicht liegt. Der Schwerpunkt liegt hier auf der Bereitstellung gemeinsamer Dienste auf der Grundlage verschiedener Konnektivitätsstandards.
Bei der Entscheidung für die Nutzung von oneM2M helfen folgende Fragen:
- Weiß ich, wofür ‚IKT‘ steht, und beschreibt es meine Arbeit? Die Informations- und Kommunikationstechnik (IKT) gilt als wichtigste Zielbranche von oneM2M.
- Ist das Mobilfunknetz meine primäre Verbindungstechnologie?
- Setzen sich meine Zielapplikationen weitestgehend aus beweglichen Komponenten zusammen?
- Tolerieren die Komponenten des Systems intermittierende Verbindungen und locker gesteuerte Latenzen?
- Wird das System die Dienste eines Kommunikationsanbieters – eines Telekommunikationsanbieters – nutzen
Diese Fragen unterscheiden sich in ihrem Charakter von den Fragen über die vorhergehenden Technologien. oneM2M resultiert aus der Zusammenarbeit vieler Mobilfunkanbieter. Es zielt auf die Netzwerke mobiler Geräte ab, die größtenteils oder nur über die Infrastruktur der Basisstation kommunizieren.
RESTful HTTP
REST (Representational State Transfer) über HTTP ist die gängigste Schnittstelle zwischen Consumer-Anwendungen und Web-Services. Es stellt ein Architekturmuster zum Zugreifen auf ein Objekt oder eine Ressource und deren Änderung dar. Ein Server steuert in der Regel das Objekt, andere fordern eine ‚Repräsentation‘ an und können dann Anfragen zum Erstellen, Ändern oder Löschen des Objekts senden.
Um zu sehen, ob RESTful HTTP zu einer Anwendung passt, sind diese Fragen hilfreich:
- Verbinde ich unabhängige Geräte mit einer einzelnen Web-Service-API?
- Baue ich eine HMI-Schnittstelle zu einem IoT-Gerät oder Service auf?
- Muss meine Anwendung nur schnell genug für die menschliche Interaktion sein?
- Muss mein Datenfluss Firewalls kreuzen, die ich nicht kontrolliere?
- Gibt es keine Kommunikation zwischen den verschiedenen Geräten?
Die Technologien im Vergleich
Vergleicht man diese Technologien miteinander, werden große Unterschiede deutlich und es ist erkennbar, dass sich die Konnektivitätsansätze nicht überlappen.
Beispielsweise ist OPC UA objektorientiert (OO), während DDS datenzentrisch ist. Dies sind diametrale Gegensätze. Objektorientiert bedeutet hier „Daten zu verkapseln und Methoden offenzulegen“. Bei der Datenzentrierung geht es ausschließlich um die Datenoffenlegung und es gibt keine benutzerdefinierten Methoden. Die einzigen Methoden werden durch den Standard definiert.
OPC UA zielt auf die abschließende gerätezentrische Integration durch Anlagenkonstrukteure ab. Es bietet eine einfache Interoperabilität zwischen den Geräten verschiedener Hersteller. Im Gegensatz dazu zielt DDS auf die endgültige datenzentrische Software-Integration durch Software-Teams ab. Wird intelligente Software wichtig, bietet DDS die von Software-Teams benötigte Schnittstellenkontrolle von Datenabstraktion und Datenfluss.
oneM2M und RESTful HTTP zielen auf die Verbindung von Edge und Cloud-Services ab. Im Gegensatz zu DDS oder OPC UA wird beides nur selten für die Kommunikation zwischen Geräten verwendet. Sie zielen auf komplett andere Bereiche ab. oneM2M bietet gemeinsame Dienste zur Integration mobiler Geräte. Keine der anderen Technologien fokussiert diese Applikation.
Anhand dieser Unterschiede wird klar, dass diese Technologien in der Praxis nicht miteinander konkurrieren. Dennoch ist die ‚Verwirrung‘ durch den Wettbewerb groß. Verschiedene Anbieter und Standardisierungsorganisationen verwenden oftmals in ihrer Positionierung ähnliche Worte für sehr unterschiedliche Konzepte. Hinter gängigen Begriffen wie ‚Publish subscribe‘ verstecken sich deshalb große Unterschiede in Bezug auf Informationstypen, Erkennung, Auswahl von Daten und QoS-Kontrolle. ‚Echtzeit‘ ohne die Angabe einer Zeitperiode in Millisekunden oder Minuten ist bedeutungslos. Und das Internet der ‚Dinge‘ hinterlässt dem Nutzer eine riesige Auswahl an ‚Dingen‘. Durch einen vorgeschriebenen Feldbus, ein anzuwendendes Protokoll oder ähnliches sollte man sich nicht einschränken lassen. Offenheit, Zukunftssicherheit, Safety- und Security-Aspekte sollten letztlich den Ausschlag geben.
Autoren:
Dr. Stan Schneider ist CEO von Real-Time Innovations;
Reiner Duwe ist Sales Manager EMEA von RTI.












