|
|
About CANopen |
Emergency |
As CANopen is not a hierarchical master-slave system, and node monitoring only
conveys the communication state and not the actual node status, every node
requires a high priority CAN identifier to indicate error situations. This
mechanism is referred to as "Emergency Messaging" and the associated communication
object "Emergency Message". Such an emergency message consists of eight data bytes
in the following form:
| Error code |
Error register |
Vendor specific error field |
|
The error codes are specified in DS-301. The high byte distinguishes the error categories:
| Error code (hex) | Error description |
| 00xx | Error Reset / No Error |
| 10xx | Generic Error |
| 2xxx | Current |
| 3xxx | Voltage |
| 4xxx | Temperature |
| 50xx | Device Hardware |
| 6xxx | Device Software |
| 70xx | Additional Modules |
| 8xxx | Monitoring |
| 90xx | External Error |
| F0xx | Additional Functions |
| FFxx | Device Specific |
|
Simultaneously with transmission of the emergency message, the device writes the error code to [1003], where the error history is stored. The error register is content of the OD entry [1001] with bit-wise coding of the error cause:
| Bit | Error cause |
| 0 | Generic Error |
| 1 | Current |
| 2 | Voltage |
| 3 | Temperature |
| 4 | Communication Error |
| 5 | Device Profile Specific |
| 6 | Reserved (always 0) |
| 7 | Manufacturer Specific |
|
The CAN identifier of the emergency message is stored in the device object dictionary under [1014], but this OD entry is optional, as is the emergency event itself.
|
 | |
|