Herunterladen Inhalt Inhalt Diese Seite drucken

Lesen Der Halteregister (Funktionscode 0X03); Lesen Der Eingangsregister (Funktionscode 0X04); Schreiben In Ein Einzelregister (Funktionscode 0X06) - Grundfos CIU 200 Benutzerhandbuch

Modbus rtu für grundfos cr monitor
Inhaltsverzeichnis

Werbung

12.3 Lesen der Halteregister (Funktionscode 0x03)

Dieser Funktionscode dient zum Auslesen von Halteregistern vom Slave.
Im Abfragetelegramm ist die Startadresse (die Adresse des ersten auszulesenden Registers) und die Anzahl der auszulesenden Halte-
register angegeben. Die Registeradressen beginnen immer bei 0, d.h. dass die von 1-16 durchnummerierten Register die Adressen 0-15
besitzen.
Die Registerdaten in der Antwortnachricht sind in Paketen zu 2 Byte pro Register zusammengefasst. Dabei gilt für jedes Register, dass
die höherwertigen Bits (HI) im ersten Byte und die niedrigwertigen Bits (LO) im zweiten Byte untergebracht sind.
Beispiel für die Anfrage vom Master an den Slave
Adresse
Funktionscode
0x01
0x03
Im Anfragetelegramm wird der Slave mit der Adresse 1 aufgefordert, die Werte aus drei zusammenhängenden Registern ab Adresse
0x006b = 107 (entspricht Register 108) zu liefern.
Beispiel für die Antwort des Slaves an den Master
Adresse
Funktionscode
0x01
0x03
In der Antwort ist die Byte-Zählnummer gleich 6, weil drei Register zu je 2 Bytes vorhanden sind. Alle drei Register halten den Wert
0x0001.

12.4 Lesen der Eingangsregister (Funktionscode 0x04)

Dieser Funktionscode dient zum Auslesen von Eingangsregistern vom Slave. Eingangsregister sind definitionsgemäß schreibgeschützte
Register, die nur ausgelesen werden können. Im Abfragetelegramm ist die Startadresse (die Adresse des ersten auszulesenden Regis-
ters) und die Anzahl der auszulesenden Halteregister angegeben. Die Registeradressen beginnen immer bei 0, d.h. dass die von 1-16
durchnummerierten Register die Adressen 0-15 besitzen.
Die Registerdaten in der Antwortnachricht sind in Paketen zu 2 Byte pro Register zusammengefasst. Im ersten Byte sind die höherwerti-
gen Bits (HI) und im zweiten Byte die niedrigwertigen Bits (LO) untergebracht.
Beispiel für die Anfrage vom Master an den Slave
Adresse
Funktionscode
0x01
0x04
Im Anfragetelegramm wird der Slave mit der Adresse 1 aufgefordert, die Werte aus drei zusammenhängenden Registern ab Adresse
0x1010 = 4112 (entspricht Register 4113) zu liefern.
Beispiel für die Antwort des Slaves an den Master
Adresse
Funktionscode
0x01
0x04
In der Antwort ist die Byte-Zählnummer gleich 6, weil drei Register zu je 2 Bytes vorhanden sind. Alle drei Register halten den Wert
0x2222.

12.5 Schreiben in ein Einzelregister (Funktionscode 0x06)

Dieser Funktionscode dient zum Schreiben in ein einzelnes Halteregister im Slave. Im Anfragetelegramm ist die Adresse von dem Regis-
ter angegeben, in das geschrieben werden soll. Die Registeradressen beginnen immer bei 0, d.h. dass das Register mit der Nummer 10
die Adresse 9 besitzt.
Die normale Antwort ist eine Reaktion auf die Anfrage. Es wird somit gemeldet, dass der Wert in das Halteregister geschrieben wurde.
Beispiel für die Anfrage vom Master an den Slave
Adresse
Funktionscode
0x01
0x06
Im Anfragetelegramm wird der Slave mit der Adresse 1 aufgefordert, den Wert 0xAFFE in das Register mit der Adresse 0x1000 zu
schreiben.
Beispiel für die Antwort des Slaves an den Master
Adresse
Funktionscode
0x01
0x06
Die Antwort ist eine Reaktion auf die Anfrage.
28
Startadresse HI
0x00
Byte-Zähl-
Register
nummer
108 HI
0x06
0x00
Startadresse HI
0x10
Byte-Zähl-
Register
nummer
4113 HI
0x06
0x22
Adresse HI
0x10
Adresse HI
0x10
Startadresse LO
0x6B
Register
Register
Register
108 LO
109 HI
0x01
0x00
Startadresse LO
0x10
Register
Register
Register
4113 LO
4114 HI
4114 LO
0x22
0x22
Adresse LO
0x00
Adresse LO
0x00
Anzahl HI
Anzahl LO
0x00
0x03
Register
Register
109 LO
110 HI
110 LO
0x01
0x00
Anzahl HI
Anzahl LO
0x00
0x03
Register
Register
4115 HI
4115 LO
0x22
0x22
Wert HI
Wert LO
0xAF
0xFE
Wert HI
Wert LO
0xAF
0xFE
0x01
0x22

Quicklinks ausblenden:

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis