| FC510x - PCI Cards for CANopen |
Bus Node Diagnostics
The CANopen fieldbus card FC510x has a comprehensive range of diagnostic options for connected network nodes.
For each CANopen fieldbus node there is a node state input variable, which signals the status of the current slave during the runtime and can be linked, for example with the PLC.
Node State (Box-State)
Node State | Meaning | Explanation |
|---|---|---|
0 = 0x00 | No error | Bus node is operational, communication is running correctly |
1 = 0x01 | Node deactivated | The node is subject to one or more of the following errors:
Node has been stopped, because "Manual restart" following a node failure has been selected. |
2 = 0x02 | Node not found | Node not found: no answer to SDO read access to object 0x1000 at the expected node address. Check the following at the node: what node address is set, and what baud rate. Check network (terminating resistors, connectors, bus length, crossed wiring etc.) |
4 = 0x04 | SDO syntax error at StartUp | Error during SDO write access: SDO abort by node. See the "Diag" tab for details. or: the length of an object read by SDO does not agree with the expected length. |
5 = 0x05 | SDO data mismatch at StartUp | Expected data do not match the data read via SDO (e.g. Device Profile and/or Add. Info does not match object 0x1000). Can also occur if the value to be written (e.g. PDO COB-ID) is read back due to refusal of write access, and does not agree. See the "Diag" tab for details. |
8 = 0x08 | Node StartUp in progress | Node was found and has been started. |
11 = 0x0B | FC510x Bus-OFF | CAN chip has entered the "Bus-OFF" state: transmit error counter is running |
12 = 0x0C | Pre-Operational | Node has gone pre-operational (on its own account). |
13 = 0x0D | Severe bus fault | General firmware error. |
14 = 0x0E | Guarding: toggle error | Guarding error: Toggle bit has not changed. |
20 = 0x14 | TxPDO too short | Received TxPDO shorter than expected. |
22 = 0x16 | Expected TxPDO is missing | TxPDO has not been received within the expected time interval:
|
23 = 0x17 | Node is Operational but not all TxPDOs were received | Node has been started, but at least one TxPDO has not yet been received from the node. Possible causes (e.g.):
|
DiagFlag
Shows whether the box diagnostic information has changed.
Reading the Diagnostic Data via ADS
CANopen emergencies and other diagnostic data can be read out via ADS read (new data present as soon as you see the DiagFlag). You need to enter the FC510x ADS Net-ID. Further ADS parameters:
Port: 200
IndexGroup: Lo-Word = 0xF180, Hi-Word = Node-Number.
IndexOffset: See below
Length: See below
If more than 26 bytes of diagnostic data have been read out the emergency memory is reset. The DiagFlag is reset as soon as at least 108 bytes have been read starting from offset 0. Alternatively, the flag is reset after each read access, if IndexGroup 0xF181 (instead of 0xF180) is used for reading.
The diagnostic data have the following definitions:
Offset 0,1: | Bit 1: | Boot up message not received or incorrect |
Bit 2: | Emergency-Overflow | |
Bit 0, Bits 3-15: | reserved | |
Offset 2,3: | Bits 0-14: | TX-PDO (i+1) received |
Bit 15: | All TX PDOs 16-n received | |
Offset 4,5: | Bits 0-4: |
|
Bits 5-15: | Associated COB ID | |
Offset 6: | Bits 0-7: |
|
Offset 7: | Bits 0-7: | 2: Incorrect SDO command specifier 3: SDO toggle bit has not changed 4: SDO length too great 5: SDO-Abort 6: SDO-Timeout |
Offset 8,9 | Bits 0-7: | SDO up/download index |
Offset 10: | Bits 0-7: | SDO up/download subindex |
Offset 11: | Bits 0-7: | reserved |
Offset 12: | Bits 0-7: | Abort errorClass |
Offset 13: | Bits 0-7: | Abort errorCode |
Offset 14,15: | Bits 0-15: | Abort additionalCode |
Offset 16-19: | Read value (if offset 6 = 1) | |
Offset 20-23: | Expected value (if offset 6 = 1) | |
Offset 24-25: | Number of consecutive emergencies | |
Offset 26 - n: | Emergencies (8 bytes each) |
