GE AF-650 GP Design Manual page 193

General purpose drive
Hide thumbs Also See for AF-650 GP:
Table of Contents

Advertisement

AF-650 GP Design Guide
10.8.3 Start / Stop Field
Messages start with a silent period of at least 3.5 character intervals. This is implemented as a multiple of character intervals at the selected network baud rate
(shown as Start T1-T2-T3-T4). The first field to be transmitted is the device address. Following the last transmitted character, a similar period of at least 3.5 character
intervals marks the end of the message. A new message can begin after this period. The entire message frame must be transmitted as a continuous stream. If a
silent period of more than 1.5 character intervals occurs before completion of the frame, the receiving device flushes the incomplete message and assumes that
the next byte will be the address field of a new message. Similarly, if a new message begins prior to 3.5 character intervals after a previous message, the receiving
device will consider it a continuation of the previous message. This will cause a time-out (no response from the slave), since the value in the final CRC field will not
be valid for the combined messages.
10.8.4 Address Field
The address field of a message frame contains 8 bits. Valid slave device addresses are in the range of 0 – 247 decimal. The individual slave devices are assigned
addresses in the range of 1 – 247. (0 is reserved for broadcast mode, which all slaves recognize.) A master addresses a slave by placing the slave address in the
address field of the message. When the slave sends its response, it places its own address in this address field to let the master know which slave is responding.
10.8.5 Function Field
The function field of a message frame contains 8 bits. Valid codes are in the range of 1-FF. Function fields are used to send messages between master and slave.
When a message is sent from a master to a slave device, the function code field tells the slave what kind of action to perform. When the slave responds to the
master, it uses the function code field to indicate either a normal (error-free) response, or that some kind of error occurred (called an exception response). For a
normal response, the slave simply echoes the original function code. For an exception response, the slave returns a code that is equivalent to the original function
code with its most significant bit set to logic 1. In addition, the slave places a unique code into the data field of the response message. This tells the master what
kind of error occurred, or the reason for the exception. Please also refer to the sections Function Codes Supported by Modbus RTU and Exception Codes.
10.8.6 Data Field
10
The data field is constructed using sets of two hexadecimal digits, in the range of 00 to FF hexadecimal. These are made up of one RTU character. The data field
of messages sent from a master to slave device contains additional information which the slave must use to take the action defined by the function code. This
can include items such as coil or register addresses, the quantity of items to be handled, and the count of actual data bytes in the field.
10.8.7 CRC Check Field
Messages include an error-checking field, operating on the basis of a Cyclical Redundancy Check (CRC) method. The CRC field checks the contents of the entire
message. It is applied regardless of any parity check method used for the individual characters of the message. The CRC value is calculated by the transmitting
device, which appends the CRC as the last field in the message. The receiving device recalculates a CRC during receipt of the message and compares the calculated
value to the actual value received in the CRC field. If the two values are unequal, a bus time-out results. The error-checking field contains a 16-bit binary value
implemented as two 8-bit bytes. When this is done, the low-order byte of the field is appended first, followed by the high-order byte. The CRC high-order byte is
the last byte sent in the message.
10.8.8 Coil Register Addressing
In Modbus, all data are organized in coils and holding registers. Coils hold a single bit, whereas holding registers hold a 2-byte word (i.e. 16 bits). All data addresses
in Modbus messages are referenced to zero. The first occurrence of a data item is addressed as item number zero. For example: The coil known as 'coil 1' in a
programmable controller is addressed as coil 0000 in the data address field of a Modbus message. Coil 127 decimal is addressed as coil 007EHEX (126 decimal).
Holding register 40001 is addressed as register 0000 in the data address field of the message. The function code field already specifies a 'holding register' operation.
Therefore, the '4XXXX' reference is implicit. Holding register 40108 is addressed as register 006BHEX (107 decimal).
192

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents