Gemeinsame MODBUS-Funktionen • 283
Funktionscode FC2 (Read Input Discretes)
6.2.2 Funktionscode FC2 (Read Input Discretes)
Diese Funktion liest den Inhalt mehrerer Eingangsbits (Digitaler Eingänge).
Aufbau des Requests
Die Anfrage bestimmt die Startadresse und die Anzahl der Bits, die gelesen werden sollen.
Beispiel: Eine Anfrage, durch die die Bits 0 bis 7 gelesen werden sollen.
Byte |
Feldname |
Beispiel |
Byte 0, 1 |
Transaction identifier |
0x0000 |
|
|
|
Byte 2, 3 |
protocol identifier |
0x0000 |
|
|
|
Byte 4, 5 |
Length field |
0x0006 |
|
|
|
Byte 6 |
unit identifier |
0x01 nicht verwendet |
|
|
|
Byte 7 |
MODBUS function code |
0x02 |
|
|
|
Byte 8, 9 |
reference number |
0x0000 |
|
|
|
Byte 10, 11 |
Bit count |
0x0008 |
|
|
|
Aufbau der Response
Die aktuellen Werte der abgefragten Bits werden in das Datenfeld gepackt. Eine 1 entspricht dabei dem Zustand ON und eine 0 dem Zustand OFF. Das niederwertigste Bit des ersten Datenbytes enthält das erste Bit der Anfrage. Die anderen folgen aufsteigend. Falls die Anzahl der Eingänge kein Vielfaches von 8 ist, werden die restlichen Bits des letzten Datenbytes mit Nullen aufgefü llt.
Byte |
Feldname |
Beispiel |
..... |
|
|
|
|
|
Byte 7 |
MODBUS function code |
0x02 |
|
|
|
Byte 8 |
Byte count |
0x01 |
|
|
|
Byte 9 |
Bit values |
0x12 |
|
|
|
Der Status der Eingänge 7 bis 0 wird als Byte-Wert 0x12 oder binär 0001 0010 angezeigt. Eingang 7 ist das hö chstwertige Bit dieses Bytes und Eingang 0 das niederwertigste. Die Zuordnung erfolgt damit von 7 bis 0 mit
OFF-OFF-OFF-ON-OFF-OFF-ON-OFF. |
|
Bit: |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
|
Coil: |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
Aufbau der Exception |
|
|
|
|
|
|
|
|
|
|
|
|
Byte |
|
Feldname |
|
|
|
|
Beispiel |
..... |
|
|
|
|
|
|
|
|
|
|
|
|
|
Byte 7 |
|
MODBUS function code |
0x82 |
|
|
|
|
|
|
|
Byte 8 |
|
Exception code |
|
|
|
0x01 oder 0x02 |
|
|
|
|
|
|
|
|
|
|
Modulares I/O-System
ETHERNET TCP/IP