Chapter 9 Appendix
147
RTU frame format
:
Frame start
(START)
More than the 3.5- character time
Slave address(ADR) Communication address:1 to 247(0: broadcast address)
Command
code(CMD)
03: Read slave parameters
06: Write slave parameters
Function code
address(H)
It indicates the external parameter address of frequency inverter in hexadecimal format;
There are functional code or non-functional code (such as running state parameter/
running command parameters) type parameters, for details see the address definition.
During the transmission, high bit is put in the front, and low bit is at the back.
Function code
address(L)
Number of function
code(H)
It indicates the number of function code ready by the frame. If it is “1”, then it indicates
that it reads one function code. During the transmission, high bit is put in the front, and
low bit is at the back.
Only one function code can be modified at one time without the field.
Number of function
code(L)
Data(H)
It indicates the replying data or the data waiting to write-in. During the transmission,
high bit is put in the front, and low bit is at the back.
Data(L)
END
3.5- character time
CRC Checking
In RTU mode, messages include an error-checking field that is based on a CRC method. The
CRC field checks the contents of the entire message. The CRC field is two bytes, containing
a16-bit binary value. The CRC value is calculated by the transmitting device, which appends the
CRC to the message. The receiving device recalculates a CRC during receipt of the message,
and compares the calculated value to the actual value it received in the CRC field.
If the two values are not equal, that means transmission is error
The CRC is started by 0xFFFF.Then a process begins of applying successive eight-bit bytes of
the message to the current contents of the register. Only the eight bits of data in each character
are used for generating the CRC. Start and stop bits, and the parity bit, do not apply to the CRC.
During generation of the CRC, each eight-bit character is exclusive ORed with the register
contents. Then the result is shifted in the direction of the least significant bit (LSB), with a zero
filled into the most significant bit (MSB) position. The LSB is extracted and examined. If the LSB
was a 1, the register is then exclusive ORed with a preset, fixed value. If the LSB was a 0, no
exclusive OR takes place. This process is repeated until eight shifts have been performed. After
the last (eighth) shift, the next eight-bit byte is exclusive ORed with the register's current value,
and the process repeats for eight more shifts as described above. The final contents of the
register, after all the bytes of the message have been applied, is the CRC value.
When the CRC is appended to the message, the low-order byte is appended first, followed by
the high-order byte.