IIoT Edge-Entwicklung mit Modbus: Sicheren Sensordatenfluss auf Raspberry Pi aufbauen
Adaptiert aus Industrial Internet Application Development, von Alena Traukina, Jayant Thomas, Prashant Tyagi, Kishore Reddipalli.
Kapitel 3. IIoT Edge-Entwicklung (Fortsetzung)
Industrielle M2M Protokolle – Modbus
In diesem Abschnitt bauen wir eine kompakte IoT-Applikation, die Sensordaten von einem Raspberry Pi Hub an ein Empfängergerät (PC oder Cloud) mittels Modbus TCP, der Applikationsschicht-Variante von Modbus, sendet.
Modbus ist ideal für Geräte mit begrenzter Hardware: es ist einfach, Open Source und weit unterstützt. Unten eine knappe Spezifikationsübersicht zur Entscheidungsfindung:
| Schlüssel | Wert |
|---|---|
| Open Source | Ja* |
| OSI Layer | Transport oder Application |
| Datentypen | Integer, Float, String, Boolean |
| Einschränkungen | • Keine großen Binary Objects • Master pollt Geräte auf Änderungen* • Max 254 Geräte pro Link* • Nur kontiguierliche Übertragungen |
| Operationen | Register & Coils lesen/schreiben, Diagnostics |
| Latenz | Hoch |
| Verwendung | SMS, GPRS, Drahtgebunden, Wireless, Mesh |
| Sicherheit | Keine |
| Kompression | Keine |
Mit * markierte Werte variieren je nach Implementierung.
Bausteine
- Benötigte Software:
- Benötigte Hardware:
- Raspberry Pi 3 Model B
- 2 A/5 V Netzteil
- 8 GB+ microSD Karte mit Adapter
- Ethernet-Kabel für kabelgebundenes Netzwerk
SD-Karte vorbereiten
- Laden Sie das neueste Raspbian Lite Image von Raspberry Pi Downloads herunter.
- Stecken Sie die SD-Karte in einen Computer und flashen Sie das Image mit Etcher (balena.io/etcher).
- Aktivieren Sie SSH, indem Sie eine leere Datei namens
sshin der Boot-Partition erstellen:cd /Volumes/boot touch ssh
- Für Wi-Fi erstellen Sie
network.confmit:
network={ ssid="YOUR_SSID" psk="YOUR_WIFI_PASSWORD" }
Nutzen Sie nano zum Editieren in der Linux-Konsole.
- Projektverzeichnis erstellen:
/home/pi/hub. - In
/home/pi/hub/package.jsoneinfügen:
{ "name": "hub", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "node index.js", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "modbus": "0.0.16", "request": "^2.81.0" } }
- In
/home/pi/hub/index.jsModbus Client implementieren, um Daten an Ihren Server zu senden. Platzhalter mit echten Adressen ersetzen:const modbus = require('modbus'); const request = require('request'); // Beispiel: Sensor Register lesen und an Remote Server POSTEN // (eigentliche Logik hier einfügen)
/home/pi/hub/Dockerfileerstellen:FROM hypriot/rpi-node:boron-onbuild RUN apt-get update && apt-get install -y libmodbus5
- Sensor Projektverzeichnis erstellen:
/home/pi/sensor.
- In
/home/pi/sensor/package.jsoneinfügen:{ "name": "sensor", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "node index.js", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "modbus": "0.0.16" } }
- In
/home/pi/sensor/index.jsSensor Simulator und Modbus TCP Client implementieren.REMOTE-HUB-ADDRESS.comdurch Hub IP oder Hostname ersetzen:const modbus = require('modbus'); // Beispiel: Sensorwert simulieren und via Modbus schreiben // (eigentliche Logik hier einfügen) /home/pi/sensor/Dockerfileerstellen:FROM hypriot/rpi-node:boron-onbuild RUN apt-get update && apt-get install -y libmodbus5
Lösung deployen
Docker Images bauen, in Registry pushen und Container auf dem Raspberry Pi starten. Sicherstellen, dass Hub- und Sensor-Container über das lokale Netzwerk kommunizieren. Nach Deployment publiziert der Sensor Simulator Daten via Modbus TCP an den Hub, der sie an Ihren Cloud-Endpunkt weiterleitet.
Mit dieser Anleitung haben Sie einen robusten, low-overhead IIoT Edge Stack, der die Kraft von Modbus in realen Industrieszenarien demonstriert.
Internet der Dinge-Technologie
- Navigation im Internet of Everything: Best Practices für erfolgreiche Hyperkonnektivität
- Edge Computing: 5 Fallstricke – und wie man sie meistert
- Zukunftsausblick: Industrial IoT für Production Excellence vorantreiben
- Industry 4.0 steigern: Edge Analytics für smartere, schnellere Fertigung nutzen
- Der definitive Guide zu den Top 10 Industrial IoT Plattformen (2024)
- IIoT Trends & Herausforderungen: Datenflut, Fertigungswandel und Fachkräftelücke
- Edge Computing & IIoT: Transformation der industriellen Datenstrategie
- Industrial Internet of Things (IIoT): Definition, Umfang und industrielle Auswirkungen
- Actionable Edge Insights mit KI & ML freisetzen
- Edge Computing transformiert die Automobilindustrie: Vom vernetzten Auto zur autonomen Fertigung