Waarom MQTT zich heeft doorgezet in het industriële IoT
Het industriële IoT genereert dagelijks miljoenen meetwaarden: sensoren die elke minuut gegevens doorgeven, PLC’s die elke seconde statusmeldingen versturen, meters die elk uur hun stand doorgeven. Deze gegevensstromen moeten op een betrouwbare, efficiënte en veilige manier worden verzonden.
MQTT voldoet precies aan deze behoeften:
- Ultralicht — headers van 2 tot 5 bytes. HTTP/REST genereert honderden bytes aan headers voor een payload van slechts enkele bytes.
- Permanente verbinding — de gateway maakt één keer verbinding met de broker en houdt de verbinding in stand. Geen TCP-handshake bij elk bericht.
- Publish/Subscribe — meerdere abonnees (cloudmonitoring, ERP, BI) kunnen dezelfde gegevens ontvangen zonder dat de gateway hiervan op de hoogte is.
- Configureerbare QoS — afhankelijk van de kriticiteit van de gegevens.
- Veerkracht — berichten worden opgeslagen als de client tijdelijk is losgekoppeld (retain, persistent session).
Industriële MQTT-architectuur
MQTT-onderwerpen: structuur en beste praktijken
Een MQTT-topic is een hiërarchische reeks die wordt gescheiden door /:
eziwan/{site_id}/{apparatuur}/{variabele}
Exemples :
eziwan/pompstation-01/besturingskast/persdruk
eziwan/site-pompage-01/compteur/energie_kwh
eziwan/batiment-paris/cvc/temperature_zone_a
Aanbevolen werkwijzen voor naamgeving:
- Vermeld altijd de site-ID om op site te kunnen filteren.
- Splits de gegevenstypen (meting, status, alarm, commando) op in afzonderlijke topics.
- Gebruik leesbare namen, geen onduidelijke codes.
- Vermijd te brede topics (
eziwan/#) voor abonnementen in productie.
QoS-niveaus: welke keuze voor de industrie?
| QoS | Garantie | Overhead | Aanbevolen gebruik |
|---|---|---|---|
| 0 | Maximaal één keer (best-effort) | Minimaal | Frequente metingen (1/s), verlies toegestaan |
| 1 | Minstens één keer (met bevestiging) | Laag | Standaardmonitoring, waarschuwingen |
| 2 | Precies één keer (4 uitwisselingen) | Gemiddeld | Commando’s, kritieke gegevens |
Voor typische industriële IoT-monitoring (metingen om de 5 tot 60 seconden) is QoS 1 het juiste compromis: voldoende betrouwbaarheid, aanvaardbare overhead.
MQTT versus HTTP voor het IoT: een vergelijking
| Criterium | MQTT | HTTP/REST |
|---|---|---|
| Model | Publish/Subscribe | Verzoek/Antwoord |
| Overheadgrootte | 2–5 bytes | 200–400 bytes |
| Verbinding | Persistent | Per verzoek (of keep-alive) |
| Gegevenspush | Native (subscribe) | Polling of WebSocket |
| Latentie | < 50 ms | 100–500 ms |
| Meerdere abonnees | Native | Webhooks/externe wachtrijen |
| Geschikt voor IoT met lage bandbreedte | ★★★★★ | ★★ |
De Eziwan-aanpak
De Eziwan Gateway implementeert een MQTT-client die de verzamelde Modbus/OPC UA-gegevens publiceert naar de MQTT-broker van de Eziwan Cloud. De topics worden automatisch gegenereerd op basis van de configuratie van elk apparaat. De gegevensoverdracht is beveiligd met TLS en authenticatie via een clientcertificaat — er worden nooit onbeveiligde MQTT-verbindingen gebruikt.
Meer informatie: Modbus Cloud, industriële IoT-gateway en monitoring van externe locaties.