Die 4 Datentypen sind in unterschiedlichen, evtl. auch überlappenden Speicherbereichen abgelegt. Die Abbildung der Zugriffe auf die physikalische Speicheradresse übernimmt die Applikation auf dem Modbus-Server.
Modbus unterscheidet zwischen der internen Nummerierung (Discrete Inputs, Coils, Register), die generell mit 1 beginnt, und der Adressierung der Objekte, die mit 0 beginnt.
Beispiel: In vielen Modbus-Servern werden die Grundtypen auf folgende Adressbereiche abgebildet:
|
Coils: |
0x00000 |
|
Inputs: |
0x10000 |
|
Input Registers: |
0x30000 |
|
Holding Registers: |
0x40000 |
Das bedeutet, das Holding Register 1 ist im Speicher auf Adresse 0x40000 abgelegt. Der Zugriff auf Holding Register 1 erfolgt mit der logischen Referenznummer (Adresse) 0. Das Input Register 1 liegt im Speicher auf Adresse 0x30000 abgelegt. Der Zugriff auf Input Register 1 erfolgt ebenso mit Adresse 0.
Die logischen Modbus Referenznummern, die bei Modbus-Funktionen verwendet werden, sind vorzeichenlose, ganzzahlige Indizes, beginnend bei 0.
