Blog_Headerbild

MQTT: Die wichtigsten Infos zum Standardprotokoll der IoT

25. August 2022 15:46:42 MESZ / von Matthias Menges

Blog_MQTT_Erklärartikel

Ob Smartphone oder Armbanduhr, ob Toaster oder Waschmaschine: In den vergangenen 15 Jahren wurden immer mehr Alltagsgegenstände „smart“. Die Geräte können Daten senden und empfangen und somit miteinander kommunizieren. Damit die Verbindung zwischen den einzelnen Geräten auch in Umgebungen mit niedrigen Bandbreiten oder über große Distanzen funktioniert, braucht es ein verlässliches, leichtgewichtiges Kommunikationsprotokoll: MQTT.

Erfahren Sie hier die wichtigsten Infos rund um das Standardprotokoll des IoT!

 

Was ist MQTT eigentlich?

Message Queue Telemetry Transport, kurz MQTT, ist ein einfaches und leichtes Messaging-Protokoll, das 1999 von Arlen Nipper und Dr. Andy Stanford-Clark entwickelt wurde. Das Protokoll diente zunächst als Kommunikationsmethode, um in der Öl- und Gasindustrie den Einsatz von Monitoring-Geräten an Remote-Standorten zu ermöglichen, ohne dabei auf die zu der damaligen Zeit übliche Satellitenkommunikation zurückgreifen zu müssen.

Das MQTT Protokoll wurde darauf optimiert, Geräte mit geringen Ressourcen zu vernetzen und auch in instabilen Netzen eine zuverlässige Versorgung mit Dateninformationen zu gewährleisten. Zusätzlich überträgt MQTT Daten in jedem möglichen Format– allesamt Eigenschaften, die das Protokoll optimal für den Einsatz im IoT geeignet machen. Im Jahre 2013 wurde MQTT von OASIS, der „Organization for the Advancement of Structured Information Standards” als Open Source standardisiert.

 

Wie funktioniert MQTT?

MQTT basiert auf einer Publish/Subscribe-Architektur, die auf TCP/IP läuft. Innerhalb der Architektur wird zwischen zwei Arten von Systemen unterschieden, den Clients auf der einen und dem Broker auf der anderen Seite. Die Clients stellen dabei die Endgeräte dar, während der Broker ein Server ist, mit dem die Clients kommunizieren. Anders als bei http gibt es bei MQTT keine direkte Ende-zu-Ende-Kommunikation zwischen den einzelnen Geräten im Netzwerk, vielmehr verbinden sich Sender und Empfänger mit dem Broker, um Nachrichten auszutauschen.

Die einzelnen Clients können gleichermaßen Nachrichten senden (publish) oder empfangen (subscribe). Beim Versand einer Nachricht erhält diese einen sogenannten Topic – ein String, der als Betreffzeile der Nachricht fungiert und gleichzeitig den Kommunikationskanal des Clients darstellt. Trifft die Nachricht beim Broker ein, überprüft dieser, welche Subscriber einen Kanal für den Empfang der Daten geöffnet haben – und leitet die Nachricht dann an die entsprechenden Geräte weiter.

Der große Vorteil dieser Architektur: Es findet nur dann eine Datenübertragung statt, wenn Informationen zum Versand vorliegen.

 

Wichtige MQTT-Begriffe kurz erklärt

Broker

Der Broker ist gewissermaßen die Schaltzentrale im Mittelpunkt des MQTT-Protokolls. Der Broker übernimmt den Empfang der durch die verbundenen Clients versendeten Nachrichten, filtert die Nachrichten und bestimmt, welcher Client welche Nachrichten-Topics abonniert hat. Auch den Versand der Nachrichten an die Clients ist Aufgabe des Brokers. Weiterhin ist der Broker zuständig für die Authentifizierung und Autorisierung von Clients und verwaltet die Sitzungen von dauerhaft verbundenen (persistenten) Clients.

 

Client

Client ist der Sammelbegriff für alle Geräte oder Software, die mit dem Broker verbunden sind. Clients können beispielsweise Temperatursensoren, Smartphones oder Uhren, aber auch CNC-Steuerungen, Messgeräte oder Datenlogger sein. Clients können sowohl als Publisher Nachrichten an den Broker senden als auch als Subscriber Nachrichten vom Broker empfangen.

 

Topic

Das MQTT Protokoll ermöglicht es IoT-Geräten, Informationen zu einem bestimmten Thema – dem Topic – an den Broker zu senden. Das Topic stellt dabei grob gesagt die „Betreffzeile“ der versendeten Informationen dar. Der Broker wählt unter den verbundenen Clients dann diejenigen aus, die das Topic abonniert haben. Wichtig zu wissen: Das Topic stellt nicht die Adresse des Clients dar, sondern vielmehr einen Kommunikationskanal.

 

Payload

Die Payload bildet den Inhalt der Nachrichten, die zwischen Client und Broker über das MQTT Protokoll ausgetauscht werden. Zur Verdeutlichung kann hier ein Temperatursensor aufgeführt werden. Der Sensor schickt eine Nachricht mit dem Topic „Temperatur“ an den Broker und verwendet als Payload „18° Celsius“. Jeder Subscriber, der dieses Topic abonniert hat, erhält somit die Information „18° Celsius“ durch den Broker. Die Payload ist bei MQTT frei gestaltbar, sollte jedoch strukturiert werden. Häufig verwendete Nachrichtenstrukturen sind XML oder JSON – immer abhängig von den eingesetzten IoT-Geräten und Schnittstellen. Je besser die Struktur auf die verbundenen Geräte und Software abgestimmt ist, desto reibungsloser gelingt die Kommunikation.

 

→ Wir haben in unserem Infopaper Industrie 4.0 weitere wichtige Begriffe rund um das Thema Industrie 4.0 unter die Lupe genommen.

 

Wie wird MQTT verwendet?

MQTT ist als schlankes, datensparendes Kommunikationsprotokoll wie geschaffen für den Einsatz in der Industrie 4.0 und allen weiteren Anwendungsbereichen, in denen Geräte und Software untereinander kommunizieren. Durch das Publisher/Subscriber-Konzept lassen sich Informationen zwischen Geräten, Software und Maschinen austauschen.

Im Bereich der Industrie 4.0 ist ein typischer Anwendungsfall der Einsatz von smarten Sensoren, beispielsweise Temperatursensoren am Antrieb einer Maschine. Der Sensor verschickt seine Nachricht mit dem Topic „Temperatur“ und dem Inhalt „75° Celsius“ an den Broker, der die Nachricht an die Abonnenten versendet:

  • Der Servicetechniker erhält eine Warnung über eine deutlich erhöhte Temperatur am Antrieb von Maschine XYZ.
  • Gleichzeitig erhält die Steuerung der Maschine die gleiche Nachricht und drosselt die Drehzahl des Antriebs, um Schäden zu vermeiden.
  • Die verbundene Produktionsplanungs-Software erhält die Nachricht und nimmt die Maschine vorerst aus dem Arbeitsplan.

 

Fazit

Das offene Nachrichtenprotokoll MQTT ist perfekt für die Kommunikation in unzuverlässigen Netzwerken oder solchen mit geringer Bandbreite geeignet – und damit wie geschaffen für das Internet der Dinge oder die Maschine-zu-Maschine-Kommunikation. Die effiziente Publisher/Subscriber Architektur, die auf TCP/IP läuft, kommt ohne periodische oder dauerhafte Datenübertragung aus und arbeitet mit einem sehr eng definierten, sehr kleinen Aufbau der Nachrichten. Ob Sensoren oder Software, ob Maschine oder Steuerung: MQTT ist sicherlich eine der wichtigsten Bausteine im Bereich Industrie 4.0.

 

Sie möchten mehr über die Industrie 4.0 erfahren?

Wir haben weitere wichtige Begriffe zum Thema Industrie 4.0 sowie die Entwicklung der Industrie in einem Paper für Sie zusammengefasst. 

Hier einfach kostenlos herunterladen!

Jetzt das Paper herunterladen!

 

Tags: Orientierung Industrie 4.0

Matthias Menges

Verfasst von Matthias Menges