Sensor-Netzwerk mit MQTT

MQTT ist ein äußerst simpel aufgebautes Publish/Subscribe-Protokoll für den Nachrichtenaustausch zwischen Geräten geringer Funktionalität.

Das robuste MQTT-Protokoll wurde für unzuverlässige Netze mit geringer Bandbreite und hoher Latenzzeit entwickelt. MQTT minimiert die genutzte Netzwerk-Bandbreite und die Anforderungen an Geräte, gleichzeitig wird für die Datenübermittlung eine hohe Zuverlässigkeit erreicht.

Die Struktur, in der das MQTT-Protokoll arbeitet, besteht aus der Datenquelle, die als Publisher bezeichnet wird, der Datensenke, dem Subscriber, und dem zwischengeschalteten Message-Broker, der für die Kommunikationssteuerung sorgt.

Zum Test von MQTT habe ich ein Sensor-Netzwerk aufgebaut, was aus den folgenden Komponenten zusammengestellt ist:

MQTT Netzwerk

Im Heimnetzwerk sind unterschiedliche Arten von IoT-Knoten angeordnet:

  • DHT11-Sensor und D1 mini Board auf Basis ESP8266 und NodeMCU (für Innenmessung)
  • ESP8266-Modul mit NodeMCU als Monitoring Knoten
  • ASH2200/USB-WDE1-2 verbunden über USB mit einem Raspberry Pi (für Aussenmessung)

Die NodeMCU Firmware weist bereits ein MQTT Software-Modul auf, während auf dem Raspberry Pi Mosquitto installiert werden muss.

MQTT MonitoringZum Monitoring kann auf einem Android Smartphone die App myMQTT installiert werden.

Die versendeten Messages weisen die Topics DHT11/<Node-ID>/temperature bzw. …/humidity auf.

Mit dem Topic DHT11/<Node-ID>/status sendet der Subscriber-Knoten mit der message „in operation“ ein Lebenszeichen ins Netzwerk.

Die DHT11/D1 mini-Knoten senden ihre Werte alle 30 Sekunden, während der ASH2200 nur alle 3 Minuten Messwerte versendet. Diese niedrige Messrate ermöglicht eine längere Lebensdauer des batteriebetriebenen Sensors ASH2200.

Zum ESP8266 und NodeMCU gibt es begleitend zum Buch „Building an IoT Node for less than 15 $“ einen eigenen Blog.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit deinem WordPress.com-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s