Integration von OPC UA zu MQTT (Schritt-für-Schritt Anleitung)

Inhalt

In der modernen Fabrik spielt die Kombination aus OPC UA und MQTT eine immer entscheidendere Rolle bei der nahtlosen Vernetzung von OT und IT Systemen. Dabei wird OPC UA als plattformübergreifender OT Standard für die sichere Kommunikation in der Automatisierungstechnik eingesetzt. MQTT hingegen bietet die event-basierte und skalierbare Schnittstelle zwischen OT und IT. Durch die wachsende Beliebtheit der Kombination beider Technologien, insbesondere im Rahmen der Industrial Unified Namespace Architektur, steigt auch die Notwendigkeit für eine nahtlose Integration. Die folgende Schritt für Schritt Anleitung führt durch den Prozess, wie die Integration von OPC UA zu MQTT gelingt.

 

Optionen zur Integration von OPC UA und MQTT

Die Integration von OPC UA Servern und Clients in MQTT-Broker wird in der Praxis auf 2 Arten realisiert: über ein Gateway oder auf Basis einer direkten Kommunikation mittels “OPC UA over MQTT”. Die Auswahl der geeigneten Variante hängt dabei von den spezifischen Use-Case Anforderungen und der vorhandenen Infrastruktur ab.

Optionen zur Integration von OPC UA und MQTT

 

1. Option: Gateway

Eine der häufigsten Methoden zur Integration von OPC UA mit MQTT ist die Verwendung eines Gateways (Software- oder Hardware-Gateway). Dabei agiert das Gateway als Brücke zwischen dem OPC UA-Server und dem MQTT-Broker. Hierbei liest das Gateway die Daten von OPC UA Clients über den OPC UA Server aus, transformiert die Daten in MQTT Nachrichten und veröffentlicht diese Nachrichten im MQTT Broker. Diese Methode ist insbesondere für die Integration von Brownfield Systemen geeignet, welche „OPC UA over MQTT“ nicht nativ unterstützen.

 

2. Option: OPC UA over MQTT

Bei dieser Variante kann der OPC UA Server bzw. Client Daten direkt als MQTT Nachricht an den MQTT Broker übertragen. Dabei nutzen OPC UA Server und Clients selbst das MQTT Transportprotokoll für die Übertragung der Daten an den Broker. Diese Variante kann je nach Anwendungsfall vorteilhaft sein. Allerdings setzt dies voraus, dass sowohl OPC UA Server als auch Clients das MQTT Transportprotokoll (“OPC UA over MQTT”) unterstützen. Dies ist in Teil 14 “OPC UA Pub/Sub” der OPC UA Spezifikation definiert und muss zwingend implementiert sein. Daher ist diese Methode insbesondere im Greenfield geeignet. Das Lastenheft bei Neubeschaffung von Maschinen sollte hierfür standardmäßig sowohl Teil 14 der Spezifikation als auch einen definierten und standardisierten OPC UA Namespace umfassen.

Achtung: Sehr häufig kommt es zu Verwechslungen zwischen OPC UA Pub/Sub (Teil 14 der Spezifikation) und der integrierten Subscription Funktion im OPC UA Client/Server-Modell. Hierbei handelt es sich lediglich um eine auf Polling basierende Überwachung von Variablen im OPC UA Server. Der Client sucht dabei in festgelegten Intervallen nach Änderungen auf dem Server. Nicht zu verwechseln mit “OPC UA over MQTT”.

 

Schritt für Schritt Anleitung

Da Teil 14 der OPC UA Spezifikation in heutigen Brownfield Systemen nicht standardmäßig implementiert ist, basiert sich die nachfolgende Anleitung auf Option 1 (Integration mittels Gateway).

Schritt 1: Überprüfung der Voraussetzungen

Überprüfen Sie die vorhandene Infrastruktur und konfigurieren Sie notwendigen Zugriffsrechte auf die Systeme, um eine zuverlässige Integration zu gewährleisten.

Infrastruktur prüfen: Überprüfen Sie, ob OPC UA Server und MQTT Broker voll funktionsfähig sind und richten Sie eine Testumgebung ein. So können Sie die Integration und spätere Anpassungen in einer kontrollierten Umgebung testen, bevor Sie Änderungen in der Produktionsumgebung vornehmen.

Gateway auswählen: Stellen Sie sicher, dass Ihr Gateway OPC UA- und MQTT-Protokolle nativ unterstützt. Überprüfen Sie die Kompatibilität mit weiteren relevanten Systemen (z.B. Steuerungen, ERP) Ihrer OT/IT Landschaft. Stellen Sie sicher, dass das Gateway die erforderlichen Sicherheitsfeatures bietet. Je nach Anwendungsfall sollte das Gateway zusätzlichen Anforderungen standhalten (z.B. Redundanz, Skalierbarkeit).

Netzwerk konfigurieren: Nehmen Sie die erforderlichen Anpassungen in Ihrer Netzwerktopologie vor. Dies beinhaltet die Konfiguration von Ports und Firewalls, um die Kommunikation zu ermöglichen und gleichzeitig unbefugten Zugriff zu verhindern.

Zugriff und Berechtigungen: Stellen Sie sicher, dass Sie Zugriff auf den OPC UA-Server, den MQTT-Broker sowie das Gateway haben. Dies umfasst auch die erforderlichen Benutzerrechte und Berechtigungen, um Konfigurationen vornehmen zu können. Installieren Sie bei Bedarf die entsprechende Konfigurationssoftware der Systeme.

 

Schritt 2: Identifikation des relevanten OPC UA Namespace

Überprüfen Sie Ihren OPC UA-Server, um sicherzustellen, dass der Server die relevanten Datenpunkte (Nodes) sicher und zuverlässig zur Verfügung stellt. Dies umfasst die Identifikation des für den Use-Case relevanten OPC UA Namespace (Adressraum).

OPC UA Nodes identifizieren: Bestimmen Sie, welche OPC UA Nodes (Datenpunkte wie z.B. Sensordaten, Statusinformationen) für Ihren Use-Case relevant sind.

Node-Typen und Attribute überprüfen: Überprüfen Sie, ob den Nodes die richtigen Node-Typen (z.B. Variable Nodes, Object Nodes) und Attribute (BrowseName, DisplayName, Description und DataType) zugewiesen sind.

 

Schritt 3: Definition des MQTT Namespace

In OPC UA erfolgt die Konfiguration des Namespace (Adressraums) auf der Server-Seite. Im Gegensatz dazu entsteht der MQTT Namespace in Kollaboration zwischen Publisher und Subscriber. Dabei ist die Einhaltung einer standardisierten Struktur entscheidend für eine effektive Kommunikation und Datenorganisation in MQTT. Dieser Schritt beinhaltet:

Standardisierung der MQTT Topic Hierarchie: Ein Topic ist ein UTF-8-String, der den Pfad angibt, unter dem eine Nachricht veröffentlicht wird. Clients können Nachrichten zu diesen Topics publizieren oder sich für Topics abonnieren, um Nachrichten zu empfangen. Legen Sie dabei Richtlinien für die Benennung dieser Topics unter Berücksichtigung von Best Practices fest, um Konsistenz zu gewährleisten.

Standardisierung des MQTT Nachrichteninhalts (Payload): Die Definition eines standardisierten Payloads ist für Interoperabilität und Skalierbarkeit, insbesondere bei einem heterogenen Maschinenpark, zwingend erforderlich. Erstellen Sie hierfür ein Datenmodell, welches die folgenden Komponenten umfasst:

    • Einheitliche Struktur des Payloads, einschließlich Metadaten (z.B. Maschinentyp und ID) und deren Repräsentation innerhalb der MQTT-Topics
    • Einheitliches Datenformat, beispielsweise JSON oder XML, um die Datenverarbeitung und -integration zu vereinfachen
    • Einheitliche Datentypen und Benennungskonventionen, um die Eindeutigkeit und Verständlichkeit der Daten zu gewährleisten.

 

Schritt 4: Mapping des OPC UA und MQTT Namespace

In diesem Schritt etablieren Sie eine Verbindung zwischen dem Gateway, dem OPC UA Server und dem MQTT Broker. Das Gateway fungiert dabei als Brücke zwischen den beiden Protokollen und übersetzt OPC UA-Daten in standardisierte MQTT-Nachrichten.

Verbindungstest: Überprüfen Sie die Konnektivität zwischen Ihrem OPC UA-Server, Gateway und dem MQTT-Broker. Achten Sie dabei besonders auf die Einhaltung der Sicherheitsrichtlinien. Dies beinhaltet die korrekte Einrichtung von Authentifizierungs- und Verschlüsselungsmethoden.

Mapping des MQTT Payloads: Mappen Sie die relevanten Nodes aus dem OPC UA Namespace auf das in Schritt 3 definierte Datenmodell. Vervollständigen Sie bei Bedarf das Datenmodell mit statischen Inputs (z.B. für Metadaten wie Maschinentyp und ID).

Mapping der MQTT Topics: Legen Sie fest, wie die MQTT Payloads den MQTT-Topics zugeordnet werden. Dies kann einfache 1:1-Zuordnungen umfassen oder, je nach den Use-Case Anforderung, komplexere Transformationen erfordern.

Transformationslogik implementieren: Nutzen Sie die Funktionalitäten Ihres Gateways, um die erforderlichen Datenkonvertierungen durchzuführen. Dies kann die Skalierung von Messwerten, die Umwandlung von Datentypen oder die Aggregation von Datenpunkten beinhalten.

Mapping des OPC UA und MQTT Adressbereich (Namespace)

 

Schritt 5: Integration von OPC UA und MQTT in Testumgebung

Nachrichtenübermittlung definieren: Legen Sie fest, wann die OPC Daten in MQTT aktualisiert werden sollen. Dabei kann die Aktualisierung bei Änderungen an spezifischen OPC Nodes (Best Practice) oder gemäß einem vordefinierten Zyklus (z.B. jede Sekunde) erfolgen. Definieren Sie zudem wichtige MQTT Einstellungen wie Quality of Service (QoS), Retain und Report by Exception.

Datenintegrität prüfen: Stellen Sie sicher, dass die Daten in Ihrer Testumgebung korrekt vom OPC UA-Server über das Gateway zum MQTT-Broker fließen und alle Sicherheitsmechanismen wie geplant funktionieren.

 

Schritt 6: Inbetriebnahme und Monitoring

Inbetriebnahme: Nach erfolgreichem Test können Sie die OPC UA zu MQTT Integration in Betrieb nehmen.

Monitoring einrichten: Implementieren Sie Überwachungs- und Alarmierungsfunktionen, um die Systemleistung und die Integrität der Datenübertragung kontinuierlich zu überwachen.

Logging und Diagnose: Stellen Sie sicher, dass detaillierte Protokolle für die Fehlerbehebung und Optimierung der Systemleistung verfügbar sind.

 

Fazit

Die Kombination von OPC UA und MQTT eröffnet neue Möglichkeiten für eine intelligente und vernetzte Fertigung. Hierbei ist die Wahl der richtigen Integrationsmethode entscheidend für den Erfolg. Durch die Implementierung einer nachhaltigen Integrationsstrategie können Unternehmen nachweislich die Effizienz steigern, die Produktivität erhöhen und letztlich ihre Wettbewerbsfähigkeit verbessern. Dabei ist das einheitliche Mapping des OPC UA und MQTT Namespace über Systeme und Fabriken hinweg ein Schlüsselaspekt für eine gelungene Integration. In bestehenden Anlagen (Brownfield) geschieht dies meist über ein  Gateway (Software oder Hardware), welches die Standardisierung und Skalierung des MQTT Namespace im gesamten Unternehmen zwingend unterstützen sollte.

Über i-flow: i-flow ist ein Unternehmen für industrielle Software mit Sitz in Süddeutschland. Wir bieten produzierenden Unternehmen die weltweit intuitivste Software zur Vernetzung von Fabriken. Täglich über 400 Millionen Datenoperationen in produktionskritischer Umgebung demonstrieren nicht nur die Skalierbarkeit der Software, sondern auch das tiefe Vertrauen, das unsere Kunden in i-flow setzen. Unser Erfolg basiert auf enger Zusammenarbeit mit Kunden und Partnern weltweit, darunter namhafte Fortune-500-Unternehmen und Branchenführer wie Bosch.

Jetzt selbst ausprobieren - Kostenlose Testversion

Überzeugen Sie sich in einem Test selbst von den unbegrenzten Möglichkeiten, die Sie mit i-flow erhalten. Jetzt 30 Tage kostenfrei testen, auf Ihren Systemen.

Ihre Frage wurde nicht be­antwortet? Kontaktieren Sie uns.

Ihr Kontakt:

Marieke Severiens (i-flow GmbH)
content@i-flow.io