Communication format, Command response time, Timing diagrams – Red Lion PAX2C User Manual
Page 45
45
COMMUNICATION FORMAT
Data is transferred from the controller through a serial communication
channel. In serial communications, the voltage is switched between a high and
low level at a predetermined rate (baud rate) using ASCII encoding. The
receiving device reads the voltage levels at the same intervals and then
translates the switched levels back to a character.
The voltage level conventions depend on the interface standard. The table
lists the voltage levels for each standard.
Data is transmitted one byte at a time with a variable idle period between
characters (0 to ∞). Each ASCII character is “framed” with a beginning start bit,
an optional parity bit and one or more ending stop bits. The data format and
baud rate must match that of other equipment in order for communication to
take place. The figures list the data formats employed by the controller.
Start bit and Data bits
Data transmission always begins with the start bit. The start bit signals the
receiving device to prepare for reception of data. One bit period later, the least
significant bit of the ASCII encoded character is transmitted, followed by the
remaining data bits. The receiving device then reads each bit position as they are
transmitted. Since the sending and receiving devices operate at the same
transmission speed (baud rate), the data is read without timing errors.
Parity bit
After the data bits, the parity bit is sent. The transmitter sets the parity bit to
a zero or a one, so that the total number of ones contained in the transmission
(including the parity bit) is either even or odd. This bit is used by the receiver
to detect errors that may occur to an odd number of bits in the transmission.
However, a single parity bit cannot detect errors that may occur to an even
number of bits. Given this limitation, the parity bit is often ignored by the
receiving device. The PAX controller ignores the parity bit of incoming data and
sets the parity bit to odd, even or none (mark parity) for outgoing data.
Stop bit
The last character transmitted is the stop bit. The stop bit provides a single bit
period pause to allow the receiver to prepare to re-synchronize to the start of a
new transmission (start bit of next byte). The receiver then continuously looks
for the occurrence of the start bit. If 7 data bits and no parity is selected, then 2
stop bits are sent from the PAX controller.
Character Frame Figure
LOGIC
RS232*
RS485*
INTERFACE STATE
1
TXD,RXD; -3 to -15 V
a-b < -200 mV
mark (idle)
0
TXD,RXD; +3 to +15 V
a-b > +200 mV
space (active)
* Voltage levels at the Receiver
COMMAND RESPONSE TIME
The controller can only receive data or transmit data at any one time (half-
duplex operation). When sending commands and data to the controller, a delay
must be imposed before sending another command. This allows enough time
for the controller to process the command and prepare for the next command.
At the start of the time interval t
1
, the computer program prints or writes the
string to the com port, thus initiating a transmission. During t
1
, the command
characters are under transmission and at the end of this period, the command
terminating character (*) is received by the controller. The time duration of t
1
is
dependent on the number of characters and baud rate of the channel.
t
1
= (10 * # of characters) / baud rate
At the start of time interval t
2
, the controller starts the interpretation of the
command and when complete, performs the command function. This time
interval t
2
varies from 2 msec to 15 msec. If no response from the controller is
expected, the controller is ready to accept another command.
If the controller is to reply with data, the time interval t
2
is controlled by the
use of the command terminating character and the (Serial Transmit Delay
parameter (dLAY)). The standard command line terminating character is “*”. This
terminating character results in a response time window of the Serial Transmit
Delay time (dLAY) plus 15 msec. maximum. The dLAY parameter should be
programmed to a value that allows sufficient time for the release of the sending
driver on the RS485 bus. Terminating the command line with “$” results in a
response time window (t
2
) of 2 msec minimum and 15 msec maximum. The
response time of this terminating character requires that sending drivers release
within 2 msec after the terminating character is received.
At the beginning of time interval t
3
, the controller responds with the first
character of the reply. As with t
1
, the time duration of t
3
is dependent on the
number of characters and baud rate of the channel.
t
3
= (10 * # of characters) / baud rate.
At the end of t
3
, the controller is ready to receive the next command. The
maximum serial throughput of the controller is limited to the sum of the times
t
1
, t
2
and t
3
.
NO REPLY FROM CONTROLLER
RESPONSE FROM CONTROLLER
Timing Diagrams