Warum Modbus RTU in MQTT konvertieren?
Modbus RTU ist die Sprache der Maschine. MQTT ist die Sprache der Cloud. Die Modbus-RTU-→-MQTT-Brücke fungiert als Übersetzer zwischen diesen beiden Welten: Sie ermöglicht es Ihren älteren Industriegeräten, mit modernen IoT-Plattformen zu kommunizieren, ohne dass Änderungen an der bestehenden Anlage erforderlich sind.
Vorteile von MQTT für die industrielle Datenübertragung:
- Geringer Datenverbrauch: Mindestens 2 Byte Header, ideal für 4G und kostenintensive Verbindungen
- Publish/Subscribe: Entkopplung zwischen Produktion (Gateway) und Verbrauch (Dashboard, API)
- Persistente Sitzung: Nachrichten werden bei Netzwerkunterbrechungen in eine Warteschlange gestellt
- Konfigurierbare QoS: Auf jeden Datentyp zugeschnittene Zustellungsgarantie
- Natives TLS: Verschlüsselung und Authentifizierung ohne zusätzliche Anwendungsschicht
Architektur der Modbus-RTU-→-MQTT-Brücke
Die Brücke arbeitet in zwei getrennten und voneinander unabhängigen Phasen:
Phase 1 – Modbus-RTU-Erfassung (Feldseite) Das Gateway fungiert als Modbus-Master. Es sendet Leseanfragen (FC01/02/03/04) gemäß einem konfigurierbaren Abfrageplan an die RS485-Slaves. Jede Antwort wird lokal decodiert, skaliert und mit einem Zeitstempel versehen.
Phase 2 – MQTT-Veröffentlichung (Cloud-seitig) Die dekodierten Werte werden in JSON-Nachrichten verpackt und an den MQTT-Broker gesendet. Ist die Verbindung nicht verfügbar, werden die Nachrichten lokal zwischengespeichert (72 Stunden) und bei Wiederherstellung der Verbindung mit ihrem ursprünglichen Zeitstempel erneut gesendet.
RS485-Bus-Gateway Eziwan MQTT-Broker
────────── ────────────────── ────────────
Esclave 1 ──┐ ┌── Modbus RTU master AWS IoT Core
Esclave 2 ──┤── RS485 ──►│ Polling FC03/FC04 MQTT Azure IoT Hub
Esclave 3 ──┤ │ Decode + Scale ──TLS► HiveMQ
Esclave n ──┘ └── JSON builder Mosquitto
Buffer 72h Eziwan Cloud
Struktur der MQTT-Topics für Modbus RTU
Die Organisation der MQTT-Topics ist entscheidend für die Wartbarkeit und die Integration:
Empfohlene Konvention:
{Website}/{Bereich}/{Ausstattung}/{Tag}
Beispiele:
usine/atelier_a/variateur_01/frequence_hz
usine/atelier_a/variateur_01/courant_a
usine/tgbt/compteur_principale/puissance_active_kw
usine/tgbt/compteur_principale/energie_kwh
Metadaten-Themen (Sparkplug B):
spBv1.0/fabrik/NBIRTH/Gateway_01 ← Anmeldeaufforderung
spBv1.0/Fabrik/NDATA/Gateway_01 ← Prozessdaten
spBv1.0/Fabrik/NDEATH/Gateway_01 ← Abmelden (LWT)
MQTT-kompatible Broker
Das Eziwan-Gateway ist mit den wichtigsten MQTT-Brokern auf dem Markt kompatibel:
| Broker | Hosting | Protokoll | Anwendungsfälle |
|---|---|---|---|
| AWS IoT Core | AWS-Cloud | MQTT TLS | AWS-Integration (Lambda, S3, Timestream) |
| Azure IoT Hub | Azure-Cloud | MQTT / AMQP | Azure-Integration (Stream Analytics, Cosmos DB) |
| HiveMQ Cloud | Managed Cloud | MQTT 5.0 + TLS | Sparkplug B, UNS, Multi-Broker |
| Mosquitto | Selbst gehostet | MQTT 3.1.1 | Lokales SCADA, minimale Latenz |
| Eziwan Cloud | Managed Cloud | MQTT TLS | Schlüsselfertig, integriertes Dashboard |
Verwaltung von Verbindungsabbrüchen und Pufferung
Industrielle Netzwerke (4G, WLAN in rauen Umgebungen) sind anfällig für Verbindungsunterbrechungen. Die Modbus-RTU-→-MQTT-Bridge bewältigt dies durch:
- Last Will Testament (LWT): Automatische Nachricht, die vom Broker gesendet wird, wenn die Verbindung zum Gateway unterbrochen wird
- Persistente Sitzung: Der Broker behält die Abonnements und die ausstehenden QoS-1/2-Nachrichten bei
- Lokaler Puffer: Das Gateway speichert die Messwerte während der Unterbrechung im Flash-Speicher
- Neusynchronisierung: Bei der Wiederherstellung der Verbindung werden die Nachrichten in chronologischer Reihenfolge erneut übertragen
Dieser Mechanismus gewährleistet keinen Datenverlust, selbst bei längeren Netzwerkausfällen – was für Anwendungen zur Energieerfassung oder Produktionsüberwachung von entscheidender Bedeutung ist.
Integration mit Cloud-TSDBs
MQTT-Daten werden in der Regel in einer Zeitreihendatenbank (Time Series Database) gespeichert:
- InfluxDB: Open Source, hervorragend geeignet für industrielle Metriken
- AWS Timestream: serverlos, in AWS IoT Core integriert
- Azure Data Explorer: hohe Leistung bei großen Datenmengen
- TimescaleDB: erweiterte PostgreSQL-Version, natives SQL
- Eziwan Storage: Speicher inklusive, konfigurierbare Aufbewahrungsdauer
Von der TSDB aus werden die Daten in die Grafana-Dashboards, Leistungsberichte und Modelle zur vorausschauenden Wartung eingespeist.