6–2
350 FEEDER PROTECTION SYSTEM – COMMUNICATIONS GUIDE
MODBUS PROTOCOL
CHAPTER 6: USB INTERFACE
Master Request Transmission:
SLAVE ADDRESS: 1 byte
FUNCTION CODE: 1 byte
DATA: variable number of bytes depending on FUNCTION CODE
CRC: 2 bytes
Slave Response Transmission:
SLAVE ADDRESS: 1 byte
FUNCTION CODE: 1 byte
DATA: variable number of bytes depending on FUNCTION CODE
CRC: 2 bytes
SLAVE ADDRESS
: This is the first byte of every transmission. This byte represents the user-
assigned address of the slave device that is to receive the message sent by the master.
Each slave device must be assigned a unique address and only the addressed slave will
respond to a transmission that starts with its address. In a master request transmission the
SLAVE ADDRESS represents the address of the slave to which the request is being sent. In a
slave response transmission the SLAVE ADDRESS represents the address of the slave that is
sending the response.
FUNCTION CODE
: This is the second byte of every transmission. Modbus defines function
codes of 1 to 127.
DATA
: This will be a variable number of bytes depending on the FUNCTION CODE. This may
be Actual Values, Setpoints, or addresses sent by the master to the slave or by the slave to
the master.
CRC
: This is a two byte error checking code.
Error Checking
The RTU version of Modbus includes a two byte CRC-16 (16 bit cyclic redundancy check)
with every transmission. The CRC-16 algorithm essentially treats the entire data stream
(data bits only; start, stop and parity ignored) as one continuous binary number. This
number is first shifted left 16 bits and then divided by a characteristic polynomial
(11000000000000101B). The 16 bit remainder of the division is appended to the end of the
transmission, MSByte first. The resulting message including CRC, when divided by the
same polynomial at the receiver will give a zero remainder if no transmission errors have
occurred.
If a 350 Modbus slave device receives a transmission in which an error is indicated by the
CRC-16 calculation, the slave device will not respond to the transmission. A CRC-16 error
indicates than one or more bytes of the transmission were received incorrectly and thus
the entire transmission should be ignored in order to avoid the 350 performing any
incorrect operation.
The CRC-16 calculation is an industry standard method used for error detection. An
algorithm is included here to assist programmers in situations where no standard CRC-16
calculation routines are available.
CRC-16 Algorithm
Once the following algorithm is complete, the working register “A” will contain the CRC
value to be transmitted. Note that this algorithm requires the characteristic polynomial to
be reverse bit ordered. The MSBit of the characteristic polynomial is dropped since it does
not affect the value of the remainder. The following symbols are used in the algorithm:
—>: data transfer
A: 16 bit working register
AL: low order byte of A
AH: high order byte of A
Содержание ML Series 350
Страница 4: ......
Страница 8: ...iv 350 FEEDER PROTECTION SYSTEM COMMUNICATIONS GUIDE ...
Страница 10: ...1 2 350 FEEDER PROTECTION SYSTEM COMMUNICATIONS GUIDE CHAPTER 1 COMMUNICATIONS INTERFACES ...
Страница 108: ...4 38 350 FEEDER PROTECTION SYSTEM COMMUNICATIONS GUIDE SR3 IEC 61850 GOOSE DETAILS CHAPTER 4 SR3 IEC61850 GOOSE ...
Страница 138: ...4 68 350 FEEDER PROTECTION SYSTEM COMMUNICATIONS GUIDE IEC 61850 COMMON DATA CLASS CHAPTER 4 SR3 IEC61850 GOOSE ...
Страница 148: ...5 10 350 FEEDER PROTECTION SYSTEM COMMUNICATIONS GUIDE OPC UA POINT LISTS CHAPTER 5 OPC UA COMMUNICATION STANDARD ...
Страница 152: ...6 4 350 FEEDER PROTECTION SYSTEM COMMUNICATIONS GUIDE MODBUS PROTOCOL CHAPTER 6 USB INTERFACE ...
Страница 300: ...10 8 350 FEEDER PROTECTION SYSTEM COMMUNICATIONS GUIDE MODBUS USER MAP CHAPTER 10 USING THE MODBUS USER MAP ...