Download  Print this page

Advertisement

(4) Message frame (protocol)
Communication method
Basically, the master sends a query message (question) and the slave returns a response message
(response). When communication is normal, Device Address and Function Code are copied as they are, and
when communication is abnormal (function code or data code is illegal), bit 7 (= 80h) of Function Code is
turned on and the error code is set to Data Bytes.
Query message from Master
Device Address
Function Code
Eight-Bit
Data Bytes
Error Check
The message frame consists of the four message fields as shown above.
By adding the no-data time (T1: Start, End) of 3.5 characters to the beginning and end of the message data,
the slave recognizes it as one message.
Protocol details
The four message fields will be explained below.
Start
1)
T1
Message Field
1) ADDRESS field
2) FUNCTION field
3) DATA field
4) CRC CHECK field
Response message from slave
ADDRESS
2)
FUNCTION
8bit
8bit
Is 1 byte long (8 bits), and can be set to any of 0 to 247. Set 0 to send a broadcast message
(all-address instruction) or any of 1 to 247 to send a message to each slave.
When the slave responds, it returns the address set from the master.
The value set to Pr. 331 RS-485 communication station number is the slave address.
The function code is 1 byte long (8 bits) and can be set to any of 1 to 255. The master sets the
function that it wants to request from the slave, and the slave performs the requested
operation. The following table gives the supported function codes. An error response is
returned if the set function code is other than those in the following table.
When the slave returns a normal response, it returns the function code set by the master.
When the slave returns an error response, it returns H80 + function code.
Code
Function Name
H03
Read Holding Register
H06
Preset Single Register
H08
Diagnostics
H10
Preset Multiple Registers
Read Holding Register
H46
Access Log
The format changes depending on the function code (refer to page210). Data includes the byte
count, number of bytes, description of access to the holding register, etc.
The received message frame is checked for error. CRC check is performed, and 2 byte long
data is added to the end of the message. When CRC is added to the message, the low-order
byte is added first and is followed by the high-order byte.
The CRC value is calculated by the sending side that adds CRC to the message. The receiving
side recalculates CRC during message receiving, and compares the result of that calculation
and the actual value received in the CRC CHECK field. If these two values do not match, the
result is defined as error.
Communication operation and setting
Device Address
Function Code
Eight-Bit
Data Bytes
Error Check
3)
DATA
4)
CRC CHECK
L
n
8bit
8bit
Description
Outline
Reads the holding register data.
Writes data to the holding register.
Makes a function diagnosis.
(communication check only)
Writes data to multiple consecutive
holding registers.
Reads the number of registers that
succeeded in communication last
time.
Table 1: Function code list
End
H
T1
8bit
Broadcast
Communication
Disallowed
Allowed
Disallowed
Allowed
Disallowed
4
209

Advertisement

Comments to this Manuals

Symbols: 0
Latest comments: