Context Card
MQTT vs. OPC UA: Transport und Bedeutung
Was ist der Unterschied zwischen MQTT und OPC UA?
Die kurze Antwort
MQTT ist ein schlankes Publish-Subscribe-Protokoll, das Nachrichten über einen Broker verteilt; über die Bedeutung der Daten sagt es nichts. OPC UA ist ein industrielles Interoperabilitäts-Framework mit Informationsmodell, Diensten, Sicherheit und mit OPC UA PubSub einem eigenen Publish-Subscribe-Modus. In der Praxis werden beide oft kombiniert: OPC UA beschreibt die Daten, MQTT transportiert sie.
Für: Technische Redakteure und Ingenieure, die industrielle Schnittstellen dokumentieren
Das Wichtigste
- MQTT ist ein Transport: Topics, Broker, Quality-of-Service-Stufen – keine Datensemantik.
- OPC UA bildet Maschinen und ihre Daten als typisierte Knoten ab, mit Diensten wie Lesen, Schreiben und Methodenaufrufen.
- OPC UA PubSub kann MQTT als Transport nutzen; die beiden sind also keine strikten Alternativen.
- Zugriffsrechte, Protokollierung und Schreibrechte entscheiden, was eine Anwendung ändern darf – nicht das Protokoll allein.
Der Zusammenhang
Zwei verschiedene Ebenen
MQTT ist ein Publish-Subscribe-Protokoll: Clients veröffentlichen Nachrichten zu Topics, ein Message Broker leitet sie an alle Abonnenten weiter. Für das Protokoll ist der Inhalt undurchsichtig – eine Temperatur, ein JSON-Dokument oder ein Bild sind nur Bytes.
OPC UA beginnt bei der Bedeutung. Ein Server stellt ein Informationsmodell bereit: Objekte, Variablen, Methoden und Typen, die eine Maschine beschreiben. Clients durchsuchen dieses Modell, lesen und schreiben Werte und rufen Methoden auf – jeder Vorgang wird gegen die Rechte des Benutzers geprüft.
Warum man sie kombiniert
Mit OPC UA PubSub lassen sich OPC-UA-Datensätze über MQTT veröffentlichen. Das Informationsmodell reist mit den Daten, der Broker übernimmt die Verteilung an viele Empfänger, etwa Cloud-Dienste oder Analysewerkzeuge.
Was das für die Dokumentation bedeutet
Dokumentieren Sie je Schnittstelle, wer welchen Wert lesen und schreiben darf, welche Topics oder Knoten es gibt und was eine Nachricht auslöst. Ein Protokollname allein sagt nicht, ob eine Nachricht eine Meldung oder ein Befehl ist.
Fragen, die sich daran anschließen
- Ersetzt MQTT OPC UA?
- Nein. MQTT transportiert Nachrichten; OPC UA legt fest, was die Daten bedeuten und wie auf sie zugegriffen werden darf. Viele Architekturen nutzen beides.
- Braucht OPC UA einen Broker?
- OPC UA im Client-Server-Modell nicht. OPC UA PubSub kann brokerlos über UDP oder über einen Broker wie MQTT laufen.
Quellen
- MQTT Version 5.0 — OASIS, 7. März 2019
- Unified Architecture — OPC Foundation
Prüfprotokoll und Änderungen
Jede Context Card wird vor der Veröffentlichung und bei jeder Änderung erneut anhand ihrer Quellen geprüft; das Datum unter der Autorenzeile ist die letzte Prüfung. Korrekturen (etwas war falsch) und Ergänzungen (etwas fehlte) stehen unten mit Datum und Uhrzeit (deutsche Zeit). Tippfehler, Formatierung und Link-Korrekturen werden nicht aufgeführt.
Geprüft
Seit der Veröffentlichung keine Korrekturen oder Ergänzungen.