HANDBUCH
10.4.1.2 Write Single Holding Register (FC 0x06)
38
Datenkommunikation
Der Modbus Slave sendet folgende Antwort zurück:
00 01 00 00 00 09 FF 03 06 08 98 01 2C FE 0C
Die Antwort setzt sich wie folgt zusammen:
00 01
TID (von der Anfrage übernommen)
00 00
PID (immer 0x0000)
00 09
Die Nachrichtenlänge beträgt 9 Bytes. Davon wird 1 Byte für die Geräteadresse, 1
Byte für den Funktionscode, 1 Byte für die Anzahl der folgenden Bytes und 6 Bytes (3
* 2 Bytes) für die Werte der PB-Variable verwendet.
FF
Geräteadresse (UID, immer 0xFF)
03
Funktionscode 0x03 für Reading Holding Registers
08 98
Der Wert der Sollwerttemperatur beträgt 0x0898. Dies entspricht in Dezimaldarstel-
lung 2200, was einer Temperatur von 22,00 °C entspricht.
01 2C
Der Wert der Intern Temperatur beträgt 0x012C. Dies entspricht in Dezimaldarstel-
lung 300, was einer Temperatur von 3,00 °C entspricht.
FE 0C
Der Wert der Rücklauftemperatur beträgt 0xFE70. Die entspricht in Dezimaldarstel-
lung -500, was einer Temperatur von -5 °C entspricht.
Der Funktionscode 0x06 wird zum Schreiben einer einzelnen PB-Adresse. Die Adressen der Register
können aus Kapitel 6 (»Spezielle Beschreibung der PB-Kommandos«) entnommen werden.
PDU der Anfrage:
FC
0x06
1 Byte
PDU der Antwort:
FC
0x06
1 Byte
Fehlerbehandlung:
Name
ILLEGAL DATA ADDRESS (0x02)
ILLEGAL DATA VALUE (0x03)
Beispiel 2: Sollwerttemperatur ändern (positiver Wert)
Der Wert der Sollwerttemperatur (vSP 0x00) soll auf einen positiven Wert geändert werden. Dieser
Wert liegt innerhalb der Sollwertgrenzen.
Der Client sendet also folgende Anfrage an den Modbus Slave:
00 02 00 00 00 06 FF 06 00 00 05 DC
Das Kommando setzt sich wie folgt zusammen:
00 02
TID (beliebige Zahl die es ermöglicht die Antwort einer Anfrage zuzuordnen)
00 00
PID (immer 0x0000)
00 06
Die Nachrichtenlänge beträgt 6 Bytes. Davon wird 1 Byte für die Geräteadresse, 1
Byte für den Funktionscode,2 Bytes für die PB-Adresse und 2 Bytes für den zu schrei-
benden Wert verwendet.
FF
Geräteadresse (UID, immer 0xFF)
06
Funktionscode 0x06 für Writing Single Holding Registers
00 00
PB-Adresse (vSP 0x00)
05 DC
Die Sollwerttemperatur soll auf 15,00 °C eingestellt werden. Der Wert 1500 ent-
spricht in Hexadezimaldarstellung 0x05DC.
Der Modbus Slave sendet folgende Antwort zurück:
00 02 00 00 00 06 FF 06 00 00 05 DC
Die Antwort ist in diesem Fall ein Echo der Anfrage. Daraus geht hervor, dass die Sollwerttemperatur
korrekt auf 15,00 °C gesetzt werden konnte.
Haftung für Irrtümer und Druckfehler ausgeschlossen.
Data
PB-Adresse
Wert
2 Byte
2 Bytes
Data
PB-Adresse
Wert
2 Byte
2 Bytes
Die PB-Adresse ist größer als die größte PB-Kommando
Adresse.
Die Länge der Anfrage ist nicht korrekt.
Modbus
Beschreibung
V1.9.0de/06.03.18
Kapitel 10