Was ist Modbus?
Bei Modbus handelt es sich um ein Client/Server (früher Master/Slave) basiertes Kommunikationsprotokoll, welches sich in der Industrie zum De-facto-Standard entwickelt hat. Mit ein Grund dafür ist, dass es sich um ein offenes Protokoll handelt.
Mittels Modbus können ein Client (z. B. ein rapidM2M C3xx) und mehrere Server verbunden werden. Durch die breite Unterstützung des Modbus Standards kommen eine Vielzahl an Gerätschaften für die Serverrolle in Frage. Die Anwendungspalette reicht von der Anbindung von einfachen Sensoren über die Kommunikation mit Antriebs- und Motorcontrollern bis hin zum Datenaustausch mit komplexen Mess- und Regelsystemen.
Grundsätzlich gibt es zwei Versionen: Eine für die serielle Schnittstelle (RS232 und RS485) und eine für Ethernet.
Bei der Datenübertragung werden drei verschiedene Betriebsarten unterschieden:
- Modbus RTU: überträgt Daten in binärer Form, daher guter Datendurchsatz aber vom Menschen nicht lesbar
- Modbus ASCII: überträgt Daten ASCII-codiert, daher vom Menschen direkt lesbar, allerdings geringerer Durchsatz
- Modbus TCP: ähnlich RTU, Übertragung in TCP/IP-Paketen
Modbus RTU/ASCII


Modbus TCP

Was kann die Microtronics Bibliothek?
Bei der Entwicklung der Modbus Master Bibliothek wurde vor allem Wert auf einen universellen Einsatz sowie eine möglichst einfache Integration in eigene Projekte gelegt.

Die Bibliotheksfunktionen und die Handhabung sind auf allen unterstützten Hardwareplattformen ident. Die Umsetzung der hardwarespezifischen Besonderheiten passiert automatisch im Hintergrund für den Benutzer unsichtbar und sorgt somit für besonderen Komfort.
Die Bibliothek unterstützt aktuell den Master (=Client) Modus für serielle Schnittstellen (RS232 und RS485). Die Datenübertragung kann wahlweise im effizienteren Modbus-RTU oder alternativ im Modbus-ASCII Format erfolgen.
Folgende Funktionscodes für Lese- bzw. Schreibzugriffe werden derzeit unterstützt:
Funktionscode | Objekttyp |
01 Read Coil Status | Einzelnen Eingang „Coil“ lesen |
02 Read Input Status | Einzelnen Eingang „Discrete Input“ lesen |
03 Read Holding Registers | (analoge) Eingänge „Holding Register“ lesen |
04 Read Input Registers | (analoge) Eingänge „Input Register“ lesen |
05 Write Single Coil | Einzelnen Ausgang „Coil“ schreiben |
06 Write Single Register | Einzelnen (analogen) Ausgang „Holding Register“ schreiben |
15 Write Multiple Coils | Mehrere Ausgänge „Coils“ schreiben |
16 Write Multiple Coils | Mehrere (analoge) Ausgänge „Holding Registers“ schreiben |
Die Bibliothek kann einfach in eigene Projekte eingebunden und verwendet werden. Es steht aber auch der vollständige Source-Code im rapidM2M Studio zur Verfügung.

Unterstützte Hardware
Die Modbus Master Bibliothek wird zurzeit von folgenden Hardware-Plattformen mit den dazugehörigen Interface Ports unterstützt:
- myDatalogEasy IoT /myDatalogEasy IoTmini
- 1x RS485
- 1x RS232
- rapidM2M C3xx
- 1xRS232
- 1xRS485
- rapidM2M M22x /rapidM2M M23x
- 2xRS232 (UART0/1) 1)
- 2xRS485 (SPI) 1)
- rapidM2M PoC RS485
- 2xRS485
- rapidM2M PoC RS232
- 1xRS232
1) zusätzliche externe Beschaltung notwendig