RS 485 COMMUNICATION DESCRIPTION
Communication Format
• 8 data bit
• no parity
• 1 stop bit
• baud
rate:
600/1200/2400/4800/9600
grammable
Communication Protocol
The communication protocol is a MASTER/SLAVE
type where:
• Host = MASTER
• Controller = SLAVE
The communication is performed in the following
way:
1. the host (MASTER) send a MESSAGE + CRC to
the controller (SLAVE);
2. the controller answer with an ANSWER + CRC
to the host.
The MESSAGE is a string with the following format:
<STX>+<ADDR>+<WIN>+<COM>+<DATA>+<ETX>
+<CRC>
where:
NOTE
When a data is indicated between two quotes ('...')
it means that the indicated data is the correspond-
ing ASCII character.
− <STX> (Start of transmission) = 0x02
− <ADDR> (Unit address) = 0x80 + device number
(0 to 31)
− <WIN> (Window) = a string of 3 numeric char-
acter indicating the window number (from '000'
to '999'); for the meaning of each window see
the relevant paragraph.
− <COM> (Command) = 0x30 to read the window,
0x31 to write into the window
− <DATA> = an alphanumeric ASCII string with
the data to be written into the window. In case
of a reading command this field is not present.
The field length is variable according to the data
type as per the following table:
DATA TYPE
Logic (L)
Numeric (N)
Alphanumeric
(A)
− <ETX> (End of transmission) = 0x03
pro-
− <CRC> = XOR of all characters subsequent to
<STX> and including the <ETX> terminator. The
value is hexadecimal coded and indicated by
two ASCII character.
The addressed SLAVE will respond with an AN-
SWER whose structure depends from the MESSAGE
type.
When the MESSAGE is a reading command, the
SLAVE will respond transmitting a string with the
same structure of the MESSAGE.
Examples:
− reading request of logic window n. 10 which
contains a logic variable whose value is '0'
(OFF):
MASTER to SLAVE: <0x02> + <0x80> +
<'010'> + <0x30> + <0x03> + <'82'>
SLAVE to MASTER: <0x02> + <0x80> +
<'010'> + <0x30> + <'0'> + <0x03> +
<'B2'>
− reading request of numeric window n. 10 whose
value is '123':
MASTER to SLAVE: <0x02> + <0x80> +
<'010'> + <0x30> + <0x03> + <'82'>
SLAVE to MASTER: <0x02> + <0x80> +
<'010'>
<0x03> + <'82'>
When the MESSAGE is a writing command, the
SLAVE will respond transmitting a string with the
following structure:
<STX>+<ADDR>+<ACK>+<ETX>+<CRC>
where <STX>,
have the meaning previously discussed, while
<ACK> = 0x6.
32
TECHNICAL INFORMATION
FIELD
VALID
LENGTH
CHARACTERS
1
'0' = OFF
'1' = ON
6
'-', '.', '0' . . . '9' right
justified with '0'
10
from blank to '_' (ASCII)
+
<0x30>
+
<'000123'>
<ETX> and <CRC>
<ADDR>,
87-900-924-01(B)
+