Einstieg in IoT und MQTT: Code-freies ESP8266 Tutorial
Einstieg in IoT und MQTT: Code-freies ESP8266 Tutorial
MQTT ist das leichte Messaging-Rückgrat der meisten IoT-Lösungen. Dieser Leitfaden zeigt, wie Sie einen vollständigen, code-freien Workflow starten: Ein ESP8266-Sensor veröffentlicht Daten an einen Raspberry Pi mit Node-RED, wo die Messwerte in einem Live-Dashboard erscheinen.
Warum MQTT für IoT wichtig ist
MQTTs Publish/Subscribe-Modell hält Netzwerkverkehr minimal und ist für unzuverlässige oder bandbreitenarme Verbindungen ausgelegt – genau das, was die meisten IoT-Deployments benötigen. Durch Nutzung offener Standards wie Arduino, MQTT und Node-RED können Sie schnell prototypen, ohne eine einzige Codezeile zu schreiben.
Was Sie brauchen
- ESP8266-Modul (hier als „IoT Octopus“ bezeichnet) mit Bosch BME280-Sensor (Temperatur, Druck, Luftfeuchtigkeit)
- Raspberry Pi mit Raspbian (getestet auf Release 2018-06-27)
- Node-RED (auf neueren Raspbian-Images vorinstalliert, sonst manuell installieren)
- Mosquitto MQTT Broker – https://mosquitto.org
- Arduino IDE 1.8.5 (portable Version im IoT-Werkstatt-Paket enthalten)
- Ardublock – ein visueller Block-Editor, der Arduino-Code automatisch generiert
Schritt 1: IoT-Werkstatt-Paket herunterladen
Das IoT-Werkstatt ZIP herunterladen. Es bündelt ein portables Arduino 1.8.5, alle benötigten Bibliotheken und Ardublock, das vorgefertigte „Superblocks“ für gängige IoT-Aufgaben liefert.
Schritt 2: ESP8266 vorbereiten
Ardublock öffnen und das bereitgestellte XML-Projekt laden. WLAN-SSID/Passwort konfigurieren und MQTT-Einstellungen auf die Broker-Adresse Ihres Raspberry Pi ausrichten. Bosch BME280-Sensor auswählen und für jede Messung ein eigenes Topic erstellen (z. B. home/room1/temperature).
Auf Upload to Octopus klicken – die Arduino IDE kompiliert den generierten Sketch und flasht ihn auf den ESP8266. Sobald er läuft, veröffentlicht das Gerät Sensordaten an den MQTT-Broker.
Schritt 3: MQTT-Broker auf Raspberry Pi einrichten
Auf dem Pi Mosquitto installieren:
sudo apt-get update sudo apt-get install mosquitto mosquitto-clients
Broker starten (läuft automatisch beim Boot). Für ein grundlegendes lokales Setup ist keine zusätzliche Konfiguration nötig.
Schritt 4: Node-RED-Flow importieren
Node-RED öffnen (https://localhost:1880) und den mitgelieferten Flow-JSON einfügen. Jeden MQTT-Input-Node doppelklicken, um Broker-Adresse und Credentials einzustellen.
Das Debug-Panel rechts zeigt eingehende Nachrichten, sobald der ESP8266 zu publizieren beginnt.
Schritt 5: Dashboard hinzufügen
In Node-RED den node-red-dashboard Paletten-Node installieren. Der Flow enthält bereits die Konfiguration für die Dashboard-UI.
Nach der Installation ist das Dashboard unter https://localhost:1880/ui erreichbar und zeigt Live-Graphen von Temperatur, Druck und Luftfeuchtigkeit.
Optional: Dashboard absichern
Zum Schutz der UI httpNodeAuth in settings.js aktivieren, wie in der Node-RED-Sicherheitsdokumentation beschrieben.
Raspberry Pi Quick-Start-Checkliste
- Raspbian von der offiziellen Raspberry-Pi-Website herunterladen und auf eine 32-GB-SD-Karte flashen.
- WLAN und SSH für headless Setup aktivieren:
- Leere Datei namens
sshin der/boot-Partition erstellen. wpa_supplicant.confmit Netzwerkdaten ablegen:
country=US ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="YourNetworkSSID" psk="YourNetworkPassphrase" key_mgmt=WPA-PSK } - Leere Datei namens
- Pi booten, dann OS aktualisieren:
sudo apt-get update sudo apt-get upgrade
- Mosquitto installieren (siehe Schritt 3).
- Falls Node-RED nicht vorinstalliert:
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
- Node-RED für Autostart aktivieren:
sudo systemctl enable nodered.service
- Node-RED Dashboard Node installieren:
sudo apt-get install npm sudo npm install -g npm hash -r cd ~/.node-red npm i node-red-dashboard node-red-start
Sobald alles läuft, Node-RED unter https://localhost:1880 und Dashboard unter https://localhost:1880/ui aufrufen.
Node-RED verwalten
node-red-start– Node-RED startennode-red-stop– Node-RED stoppensudo systemctl– Service steuernsudo journalctl -f -u nodered -o cat– Log in Echtzeit verfolgen
Was kommt als Nächstes?
Projekt mit Machine Learning erweitern: TensorFlow auf dem Pi installieren (pip3 install tensorflow) und node-red-contrib-machine-learning Palette hinzufügen, um KI-Fähigkeiten ins Dashboard zu bringen.
Referenzen
— FERTIG —
Herstellungsprozess
- Die Wissenschaft der Textilien: Deep Dive in Säure-, Reaktiv-, Leder- und Direktfarbstoffe
- Wetterstation mit CWOP integrieren: Praktischer Leitfaden
- PSoC 6 Pioneer Board mit IoT Add-On Shield meistern: Entwickler-Leitfaden
- IoT revolutioniert Field Service: Predictive Maintenance & höherer ROI
- Wie Smart Cities IoT, Microservices und Dashboards für effizientes Asset Management nutzen
- Wie IoT Mobile Apps transformiert und Business Innovation antreibt
- Den IoT-Blinden Fleck in der post-pandemischen Welt schließen
- IoT World: Inside Verticas Big-Data-Lösung für IoT-Analytics
- Wert neu denken im Industrial IoT: Vom Tracking zur Transformation
- Software AG projiziert die nächste Welle des IoT-Wachstums