Documentation HG G-73650ZD | English, Revision 05 | Date: 09.03.2017 | www.goetting-agv.com
107
Chapter 6: CAN Bus Protocol
6.2.4 Error Box
The following section describes the behavior in case of errors. For this the Tx telegram Error
(see below) and the Rx telegram Control Box (s. Table 37 on page 115) are used.
In the example the following errors occur:
1.
Segment Release
2.
Deviation error:
Rear
3.
Wheel 2:
- Error Speed
- Error Steering Release
- Error Driving release
4.
Wheel 3:
Receive CAN Increments
Each error message consists of the following elements:
Error Number, Object Number, Error Code
–
Error Number: One bit of the Error Bytes 0-3, see Table 29
(e.g. Deviation error = bit 10 in Table 29),
–
Object Number: (e.g. 0 for a mode request object; in case of Wheel 0, 1, 2 or 3 for the
corresponding wheels 1, 2, 3 and 4, see Table 30),
–
Error Code: An additional error code for certain error numbers
(e.g. Wheels –> Error Speed, defined in Table 30)
The CAN Error telegram is transmitted cyclically every 10 ms. It always contains all actual
errors in the error bytes 0-3. Thus the PLC can react immediately as soon as an error occurs.
In addition to the errors (Error Numbers) each telegram can only transmit one error code and
the corresponding Object Number.
Since not all Error Codes from the example can be transmitted in a single telegram they are
split over several telegrams. In order to synchronize with the PLC, which works with a dif-
ferent timing, a two bit counter (switch bits) is used: The PLC transmits e.g. Bit 4 in Byte 1
of the Control Box shown in Table 37. The control unit answers with e.g. Bit 7 in Byte 6 of
the error telegram (Table 29).
The control unit receives the PLC Control Box telegrams independently from its 10 ms trans-
mission timing and buffers the last one. Ideally it can then send an error telegram with a
new Error Code each time. This depends on the PLC changing the counter Request Count
of Error in the meantime. In the next telegram the Control Unit then sets the counter Mir-
rored Request Count of Error to the same value in order to signal the PLC that new data is
coming in. The following applies:
If all values except for Mirrored Request Count of Error are 0 there is no error.
If the Error Number is not changed between two telegrams even though the Mirrored
Request Count of Error changes there is only 1 error.
When there are several Errors they are sent in ascending order. As soon as the Error
Number decreases in between two telegrams a new sequence begins,
The following image shows the corresponding sequence for the example above: