EZT-430i Communications Manual
Serial
Communication
CSZ
EZT-430i
REV
C
4.4
4.2 Protocol
Protocol describes how to initiate an exchange. It also prevents two machines from attempting to send data
at the same time. There are a number of different data communications protocols, just as there are different
human cultural protocols that vary according to the situation.
The protocol portion of EZT-430i communications is very important, because it provides a quality of
communication that others often don’t have. Protocol-driven communications are more accurate because
they are less prone to both operator and noise errors. Protocol maintains system integrity by requiring a
response to each message. It’s like registered mail — you know that your letter has been received because
the post office sends you a signed receipt.
In EZT-430i data communications, a dialog will continue successfully as long as the messages are in the
correct form and responses are returned to the protocol leader. If the operator enters an incorrect message,
or interference comes on to the data line, there will be no response. In that case the master must retransmit
the message or go to a recovery procedure. If an operator continues to enter an incorrect message or
interference continues on the data line, the system will halt until the problem is resolved. EZT-430i uses
Modbus RTU as the protocol of choice. Modbus RTU enables a PC to read and write directly to registers
containing the EZT-430i parameters. With it, you can read all of the controller’s parameters with just a single
read command.
Modbus Remote Terminal Unit (RTU)
Gould Modicon, now called AEG Schneider, created this protocol for process control systems called
"Modbus". It has the advantage over other protocols of being extremely reliable in exchanging information.
This protocol works on the principle of packet exchanges. The packet contains the address of the controller
to receive the information, a command field that says what is to be done with the information and several
fields of data. The last item sent in the packet is a field to ensure the data is received intact. This is called a
cyclic redundancy check-sum. See the following example for information on how to generate this value. All
information is exchanged in hex numbers. EZT-430i only supports the binary version of Modbus, referenced
as RTU. The ASCII version is less efficient and is not supported. Therefore, you must be certain to format all
data in hexadecimal.
The CRC (Cyclical Redundancy Checksum) is caulated by the following steps:
1. Load a 16-bit register (called CRC register) with 0xFFFF
2. Exclusive OR the first 8-bit byte of the command message with the low order byte of the 16-bit CRC
register, putting the result in the CRC register.
3. Shift the CRC register one bit to the right with MSB zero filling. Extract and examine the LSB.
4. If the LSB of the CRC register is zero, repeat step 3, else Exclusive OR the CRC register with the
polynomial value 0xA001.
5. Repeat steps 3 and 4 until eight shifts have been performed. When this is done, a complete 8-bit byte will
have been processed.
6. Repeat steps 2 through 5 for the next 8-bit byte of the command message. Continue doing this until all
bytes of the command message have been processed. The final contents of the CRC register is the CRC
value.
When transmitting the CRC value in the message, the upper and lower bytes of the CRC value must
be swapped, i.e. the lower order byte will be transmitted first.