Write in Coils [0Fh]:
This function writes data in consecutive coils. An example follows:
Change the state of intelligent input terminal [1] to [5] of an inverter having a slave
address "8."
This example assumes the intelligent input terminals have terminal states listed
below.
Item
Intelligent input terminal
Coil Number
Terminal status
Query:
No.
Field Name
1
Slave address *1
2
Function code
3
Coil start address *3
(high order)
4
Coil start address *3
(low order)
5
Number of coils
(high order)
6
Number of coils
(low order)
7
Byte number *2
8
Change data
(high order)
9
Change data
(low order)
10
CRC-16 (high order)
11
CRC-16 (low order)
Note 1:
Broadcasting is disabled.
Note 2:
The change data is a set of high-order data and low-order data. So when the
size (in bytes) of data to be changed is an odd start coil number ("7"), add "1"
to the data size (in bytes) to make it an even number.
Note 3:
The PDU Coils are addressed starting at zero. Therefore coils numbered 1-31
are addressed as 0-30. Coil address value (transmitted on Modbus line) is 1
less than the Coil Number.
Data
[1]
[2]
[3]
7
8
9
ON
ON
ON
Response:
Example
No.
(Hex)
08
1
Slave address
0F
2
Function code
00
3
Coil start address *3
(high order)
06
4
Coil start address *3
(low order)
00
5
Number of coils
(high order)
05
6
Number of coils
(low order)
02
7
CRC-16 (high order)
17
8
CRC-16 (low order)
00
83
EA
[4]
[5]
10
11
OFF
ON
Field Name
B15
Example
(Hex)
08
0F
00
06
00
05
75
50