Blog/MQTT

MQTT26. Mai 20266 Minuten

MQTT für Energiedaten: Broker, Topics und QoS verständlich erklärt

MQTT stammt aus der Fernüberwachung von Pipelines: wenig Bandbreite, unzuverlässige Verbindungen, viele Messpunkte. Dass es heute Zählerdaten aus Gebäuden transportiert, ist kein Zufall – die Randbedingungen sind dieselben.

Das Wichtigste in Kürze

  • Der Broker steht in der Mitte; Sender und Empfänger kennen einander nicht.
  • Topics sind hierarchische Pfade, keine Adressen.
  • QoS 1 ist für Zählerwerte der übliche Kompromiss.
  • Retain und Last Will lösen zwei typische Probleme von Messanlagen.

Publish und Subscribe statt Frage und Antwort

Die meisten Feldbusprotokolle arbeiten nach dem Muster Frage-Antwort: Ein Master fragt, ein Gerät antwortet. MQTT dreht das um. Ein Gerät veröffentlicht seine Werte, ohne zu wissen, ob jemand zuhört. Wer die Werte braucht, abonniert sie beim Broker.

Daraus folgt die wichtigste Eigenschaft: Entkopplung. Ein zweites Dashboard, eine Analyseplattform oder ein Forschungsprojekt kann dieselben Werte abonnieren, ohne dass am Gerät im Keller irgendetwas geändert wird. Bei Modbus wäre das ein zusätzlicher Client, der zusätzlich pollt.

Topics: Pfade, keine Adressen

Ein Topic ist ein hierarchischer Pfad, etwa liegenschaft/haus-a/ug/zaehler-03/wirkenergie-import. Es gibt keine zentrale Registrierung – ein Topic entsteht, indem jemand darauf veröffentlicht.

Abonniert wird mit Platzhaltern: + für eine Ebene, # für alle darunterliegenden. liegenschaft/haus-a/# liefert alles aus Haus A. Das macht die Struktur des Topic-Baums zur eigentlichen Datenarchitektur – und erklärt, warum sich ein durchdachtes Schema auszahlt. Konkrete Empfehlungen stehen in MQTT-Topics planen.

QoS, Retain und Last Will

QoS 0Senden und vergessen. Für Werte, die ohnehin gleich wieder kommen.
QoS 1Mindestens einmal zustellen. Duplikate möglich, Verlust nicht. Der Normalfall für Zählerwerte.
QoS 2Genau einmal. Aufwendig, selten nötig.
RetainDer Broker merkt sich den letzten Wert je Topic. Ein neu verbundenes Dashboard sieht sofort Daten statt einer leeren Oberfläche.
Last WillEine Nachricht, die der Broker veröffentlicht, wenn die Verbindung unerwartet abreisst. Damit ist ein Ausfall sichtbar, statt still zu bleiben.

Die letzten beiden sind in Messanlagen unterschätzt. Retain löst das Problem des leeren Dashboards nach einem Neustart. Last Will löst das grössere Problem: dass ein ausgefallenes Gerät nicht auffällt, weil Schweigen in einem Publish-Modell wie Normalbetrieb aussieht.

Warum MQTT für Gebäudedaten passt

  • Ausgehende Verbindung – keine Firewall-Freigabe von aussen nötig
  • Geringer Overhead, funktioniert auch über Mobilfunk
  • Mehrere Abnehmer ohne Mehrlast am Gerät
  • TLS-Verschlüsselung
  • Verträgt unterbrochene Verbindungen

Der erste Punkt ist in der Praxis der entscheidende. Mehr dazu in Zählerdaten in die Cloud.

Was MQTT nicht ist

MQTT ist kein Speicher. Der Broker stellt zu und vergisst – abgesehen von der Retain-Nachricht. Wer Historie braucht, braucht eine Datenbank dahinter oder einen lokalen Zwischenspeicher davor. Das EMU M-Center bringt für diesen Zweck 16 GB mit und kann nach einer Unterbrechung nachliefern.

MQTT ist ausserdem kein Abfrageprotokoll. Ein Wert, den niemand veröffentlicht hat, lässt sich nicht anfordern. Wer Momentanwerte auf Abruf braucht, ist mit Modbus TCP besser bedient – oder nutzt beides parallel.

Häufige Fragen


Was ist ein MQTT-Broker?

Die Vermittlungsstelle zwischen Sendern und Empfängern. Geräte veröffentlichen Nachrichten unter einem Topic beim Broker, Interessenten abonnieren dieses Topic. Sender und Empfänger kennen einander nicht, nur den Broker.

Welche QoS-Stufe brauche ich für Zählerwerte?

In der Regel QoS 1 – mindestens eine Zustellung. Duplikate sind möglich und lassen sich über einen Zeitstempel in der Nutzlast verwerfen, während verlorene Werte nicht rekonstruierbar wären.

Speichert MQTT meine Messwerte?

Nein. Der Broker stellt zu und vergisst, abgesehen von der Retain-Nachricht je Topic. Historie braucht eine Datenbank dahinter oder einen lokalen Zwischenspeicher davor, etwa die 16 GB im EMU M-Center.

Weiterlesen


TXTMQTT-Topics planen: ein Schema, das einen Gerätetausch überstehtBlogbeitrag TXTZählerdaten in die Cloud: MQTT-Anbindung mit dem EMU M-CenterBlogbeitrag SEITETCP/IP-SchnittstelleSchnittstelle

Fragen zu Ihrem Projekt?


Schicken Sie uns Ihre Zählerliste und das Zielsystem. Wir sagen Ihnen, was zusammenpasst – und was nicht.

Telefon
+41 (0)41 545 03 00

Technischer Support
helpdesk@emuag.ch