Modbus TCP: het Ethernet-protocol voor de industrie
Modbus TCP/IP is de Ethernet-variant van het Modbus-protocol, die in 1999 werd gestandaardiseerd. Het behoudt het master/slave-model en de registerstructuur (Holding, Input, Coil, Discrete Input) van Modbus RTU, maar verzendt deze via TCP/IP-poort 502. Het resultaat: Modbus TCP integreert zich naadloos in de IT-netwerken van bedrijven en blijft tegelijkertijd compatibel met het bestaande Modbus-ecosysteem.
De voordelen ten opzichte van Modbus RTU:
- Snelheid: 100 Mbit/s versus max. 115 kbps bij RS485
- Vrije topologie: geen beperking tot 32 knooppunten op een lineaire bus
- Multi-master: meerdere clients kunnen dezelfde slave opvragen
- Afstand: standaard Ethernet tot 100 m, glasvezel voor grote afstanden
Verbindingsarchitectuur Modbus TCP → cloud
De gateway fungeert als Modbus TCP-client (master) ten opzichte van de lokale apparatuur en als MQTT-client ten opzichte van de cloud. Hij bevindt zich tussen het OT-netwerk en het cloudnetwerk.
| Laag | Apparatuur / Protocol |
|---|---|
| Veld (apparatuur) | PLC’s, frequentieregelaars, meters met Ethernet-poort |
| Industrieel LAN-netwerk | Ethernet-switch, OT-VLAN |
| Gateway | Eziwan Gateway (Modbus TCP-client + MQTT-client) |
| Cloudtransport | MQTT via TLS 1.3 / 4G LTE of Ethernet WAN |
| Cloud | AWS IoT Core, Azure IoT Hub, Eziwan Cloud |
| Applicatie | Dashboard, waarschuwingen, REST-API, rapportage |
Modbus TCP-registers uitlezen: ondersteunde gegevenstypen
De gateway leest alle soorten Modbus TCP-registers uit die in de norm zijn gedefinieerd:
16-bits registers:
- Holding-registers (FC03) — lezen/schrijven, proceswaarden (instelwaarden, parameters)
- Input Registers (FC04) — alleen lezen, realtime metingen (stroom, spanning, debiet)
Discrete bits:
- Coils (FC01/FC05) — lezen/schrijven, logische uitgangen (relais, besturingen)
- Discrete Inputs (FC02) — alleen lezen, logische ingangen (statussen, storingen)
Gecodeerde gegevenstypen:
- INT16, UINT16 (1 register)
- INT32, UINT32, FLOAT32 IEEE 754 (2 registers, Big Endian of Little Endian)
- INT64, DOUBLE (4 registers)
- ASCII-STRING
MQTT-berichten verzenden naar AWS IoT, Azure IoT Hub of Eziwan
Zodra de registers zijn uitgelezen, publiceert de gateway de meetwaarden naar de doel-MQTT-broker. De drie belangrijkste platforms worden ondersteund:
AWS IoT Core
- Verbinding via MQTT over TLS op poort 8883
- Authenticatie via een AWS x509-certificaat
- IoT-regels naar DynamoDB, S3, Lambda of QuickSight
Azure IoT Hub
- Verbinding via AMQP of MQTT TLS
- Device Twin voor configuratie op afstand
- Stream Analytics voor realtime verwerking
Eziwan Cloud
- Zero-touch-configuratie, geen infrastructuur om te beheren
- Vooraf geconfigureerd dashboard met industriële eenheden
- SMS-/e-mailmeldingen binnen 30 seconden
Polling en optimalisatie van de opnamefrequentie
De keuze van de pollingfrequentie heeft invloed op zowel de actualiteit van de gegevens als het verbruik van mobiele data.
| Soort meting | Aanbevolen frequentie |
|---|---|
| Elektrische grootheden (P, Q, I, U) | 1 tot 10 s |
| Procestemperaturen | 30 s tot 5 min |
| Niveaus, debieten | 1 tot 5 min |
| Discrete toestanden (alarmen) | 1 tot 5 s |
| Meters (energie, volume) | 5 tot 15 min |
De gateway kan ook worden geconfigureerd in de on-change-modus: een waarde wordt alleen doorgegeven als deze met een instelbare waarde (deadband) verandert, waardoor de hoeveelheid gegevens aanzienlijk wordt verminderd.
Toezicht op meerdere locaties: de gecentraliseerde architectuur
Voor een complex met meerdere industriële locaties wordt dezelfde architectuur toegepast:
- Eén gateway per locatie, die elk hun lokale Modbus TCP-apparatuur pollen
- Alle gateways publiceren naar dezelfde MQTT-cloudbroker (of naar afzonderlijke topics per locatie)
- Eén enkele beheerinterface centraliseert alle locaties
- Waarschuwingen worden globaal geconfigureerd met escalatie per locatie
Deze gecentraliseerde architectuur met lokale gateways is de standaard voor industriële telebewaking op meerdere locaties.