CANopen Master Network management

Automatic CANopen StartUp

After the startup (EL6751: switch-over after SAFEOP) the CANopen master sends a Reset Communication All Nodes command. This is followed by an individual startup for each configured CANopen slave:

SDO

Explanation

Option

Upload Device Type 0x1000

The object 0x1000 of the CANopen slaves is read and compared with the configured value

This SDO is active by default and can be switched off via the configuration (see Advanced button in tab BK51x0 or CAN node for the box in the System Manager). If the SDO is active, the startup is aborted if a value other than the configured value is read.

Upload Vendor ID 0x1018:01

The entry 0x1018:01 of the CANopen slave is read and compared with the configured value, if this not equal 0.

This SDO is always active in BK51x0 Bus Couplers, in general CANopen slaves only if a vendor ID not equal 0 is entered in the CAN node tab for the box in the System Manager. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Upload Product Code 0x1018:02

The entry 0x1018:02 of the CANopen slave is read and compared with the configured value, if this not equal 0.

This SDO is always active in BK51x0 Bus Couplers, in general CANopen slaves only if a product code not equal 0 is entered in the CAN node tab for the box in the System Manager. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Upload Revision Number 0x1018:03

The entry 0x1018:03 of the CANopen slave is read and compared with the configured value, if this not equal 0.

This SDO is never active in BK51x0 Bus Couplers, in general CANopen slaves only if a revision number not equal 0 is entered in the CAN node tab for the box in the System Manager. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Upload Serial Number 0x1018:04

The entry 0x1018:04 of the CANopen slave is read and compared with the configured value, if this not equal 0.

This SDO is never active in BK51x0 Bus Couplers, in general CANopen slaves only if a serial number not equal 0 is entered in the CAN node tab for the box in the System Manager. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Download SYNC cycle Time 0x1006

The SYNC cycle time is written to object 0x1006 of the CANopen slave, if the SYNC message is sent (the SYNC message is sent if at least one synchronous PDO is configured for any slave).

This SDO is active by default if the SYBC message is sent and can be switched off via the configuration (see Advanced button in tab BK51x0 or CAN node for the box in the System Manager). If the SDO is active, the startup is aborted if an SDO abort has occurred.

Download PDO ID (0x1400+y:01 or 0x1800+y:01)

The COB-ID is written to for each configured PDO.

These SDOs are active by default for general CANopen slaves and can be switched off via the CAN node tab. For Bus Couplers the PDOs are configured via object 0x5500. Therefore these SDOs are not active for BK51x0 Bus Couplers.

SDO

Explanation

Option

Upload PDO ID (0x1400+y:01 or 0x1800+y:01)

If an SDO abort occurred during the PDO COB-ID download, the system tries to read the entry.

This SDO is only active if a fault occurred in the download of the respective PDO COB ID. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Download PDO Transmission Type (0x1400+y:02 or 0x1800+y:02)

The transmission type is described for each configured PDO

These SDOs are active by default for general CANopen slaves and can be switched off via the CAN node tab. For Bus Couplers the transmission type is only distinguished for digital (PDO 1) and analog (PDO 2) terminals, if object 0x5500 is written to on startup. Therefore, for BK51x0 Bus Couplers these SDOs are only active for PDOs 1 and 2.

Upload PDO Transmission Type (0x1400+y:02 or 0x1800+y:02)

If an SDO abort occurred during the PDO transmission type download, the system tries to read the entry.

This SDO is only active if a fault occurred in the download of the respective transmission type PDO. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Download PDO Inhibit Time (0x1400+y:03 or 0x1800+y:03)

The inhibit time is written to for each configured PDO.

These SDOs are active for general CANopen slaves, if an inhibit time greater than 0 is configured on the PDO tab of the respective PDO. For Bus Couplers there is only one inhibit time for all PDOs, if the PDOs are configured via the object 0x5500. The SDOs are active if this inhibit time on tab BK51x0 is greater than 0.

Upload PDO Inhibit Time (0x1400+y:03 or 0x1800+y:03)

If an SDO abort occurred during the PDO inhibit time download, the system tries to read the entry.

This SDO is only active if a fault occurred in the download of the respective PDO inhibit time. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Download PDO Event Time (0x1400+y:05 or 0x1800+y:05)

The event time is written to for each configured PDO.

These SDOs are active for general CANopen slaves, if an event time greater than 0 is configured on the PDO tab of the respective PDO. For Bus Couplers there is only one event time for all PDOs, if the PDOs are configured via the object 0x5500. The SDOs are active if this event time on tab "BK51x0" is greater than 0.

Upload PDO Event Time (0x1400+y:05 or 0x1800+y:05)

If an SDO abort occurred during the PDO event time download, the system tries to read the entry.

This SDO is only active if a fault occurred in the download of the respective PDO event time. If the SDO is active, the startup is aborted if a value other than the configured value is read.

Download Producer Heartbeat 0x1017

The guard time is written to object 0x1017 of the CANopen slave.

This SDO is active if the guard time and the life time factor on the tabs BK51x0 or CAN node are not equal 0. If the SDO is active, the startup is aborted if an SDO timeout has occurred.

SDO

Explanation

Option

Download Consumer Heartbeat 0x1016:01

The object 0x1016:01 of the CANopen slaves is multiplied with the guard time and described with the life time factor

This SDO is active if the guard time and the life time factor on the tabs BK51x0 and CAN node are not equal 0 and no abort occurred during the download of the producer heartbeat. If the SDO is active, the startup is aborted if an SDO abort has occurred.

Download Guard Time 0x100C

The guard time is written to object 0x100C of the CANopen slave.

This SDO is active if the guard time and the life time factor on the tabs BK51x0 and CAN node are not equal 0 and an SDO abort (no SDO timeout) occurred during the download of the producer heartbeat. If the SDO is active, the startup is aborted if an SDO abort has occurred.

Download Life Time Factor 0x100D

The life time factor is written to object 0x100D of the CANopen slave.

This SDO is active if the guard time and the life time factor on the tabs BK51x0 and CAN node are not equal 0 and an SDO abort (no SDO timeout) occurred during the download of the producer heartbeat. If the SDO is active, the startup is aborted if an SDO abort has occurred.

Download further startup SDOs

Further startup SDOs are written

All further startup SDOs are written that are listed on the SDOs tab for BK51x0 Bus Couplers or general CANopen slaves.

Start Node

The CANopen slave is started

The CANopen slave startup is active by default and can be switched off via the configuration (see Advanced button in tab BK51x0 or CAN node for the box in the System Manager). If the CANopen slaves startup is not active, it can be started manually.

Start All Nodes

All CANopen slaves are started

Once all CANopen slaves have been started individually, a start command is sent to all CANopen slaves, if the automatic start was not deactivated in a CANopen slave.

Waiting for TxPDOs

 

The NodeState is set to 23 as long as not all configured TxPDOs of the CANopen slave were received. If the SDOs tab for BK51x0 Bus Couplers or general CANopen slaves is set to restart the CANopen slave if 10 s after the startup no configured TxPDO was received (not active by default), the complete startup is repeated if this monitoring function is triggered.

Sending the RxPDOs

 

The configured RxPDOs are sent to the CANopen slave 1 second after the CANopen slave was started.

SDO

Explanation

Option

Monitoring the synchronous TxPDOs

 

Monitoring of the synchronous TxPDOs commences when they were received for the first time. If the transmission type is set to 1, this TxPDO must be received in the SYNC cycle, otherwise the node state switches to 40 or 22 and the CANopen slave is treated according to configured error response. The time slot ends after the input shift time has elapsed (EL6751, with a SYNC multiplier greater than 1 the input shift time in the last EtherCAT cycle counts before the next SYNC cycle commences) or once all synchronous RxPDOs were sent (FC51xx, CX1500-M510). The monitoring can be made less strict by setting an event time not equal 0 in the corresponding TxPDO. In this case the CANopen master is tolerant for one SYNC cycle, i.e. the node state is not set to 22 until the TxPDO has failed twice in succession.

For transmission types greater than 1 the CANopen master is also tolerant for one cycle before a fault is detected and the node state is set to 22.

Monitoring the asynchronous TxPDOs

 

Monitoring of the asynchronous TxPDOs is only active if their event time is configured with greater than 0 and commences when they are received for the first time. If the TxPDO is not received within twice the event time, the node state is set to 22 and the CANopen slave is treated according to the configured error response.

Error response

 

If a fault is detected in a CANopen slave during TxPDO monitoring or during guarding/heartbeat, the node state switches to a value not equal 0 and configured error response is triggered (according to tab BK51x0 or CAN node). In the default setting the CANopen slave is stopped and then restarted (with communication reset).

Manual network management

The CANopen state (STOPPED, PRE-OPERATIONAL, OPERATIONAL) of a CANopen slave can be changed via ADS write control. In this case the AMS address should be set as for SDO communication. The other parameter are listed in the following table:

ADS State

Device State

CANopen state transition

ADSSTATE_RUN (5)

0

OP->PREOP

ADSSTATE_RUN (5)

1

PREOP->OP

ADSSTATE_STOP (6)

0

OP->STOP

ADSSTATE_RUN (5)

1

STOP->OP (with communication reset)

ADSSTATE_RUN (5)

3

STOP->OP (without communication reset)

ADSSTATE_STOP (6)

0

PREOP->STOP

ADSSTATE_RUN (5)

2

STOP->PREOP (without communication reset)