Exchanges Using SDOs
Original instructions
Overview
SDO commands are used to access (read/write) the parameters of CANopen entries and devices in the object dictionary.
For SDO objects sent by the PLC application, the explicit exchanges of messages on a CANopen bus is done by read/write functions.
WARNING
UNINTENDED EQUIPMENT OPERATION
When modifying a variable, check the consequences of the SDO command in the documentation of the specific target CANopen device.
Failure to follow these instructions can result in death, serious injury, or equipment damage.
SDO Access
It is possible to access SDOs using the READ_SDO and WRITE_SDO function blocks.
For examples of SDO function blocks, refer to function block example.
SDO Timeouts
The following SDO timeouts are configurable in the CANopen bus parameter window: Global SDO timeout: By default the value is set to 50 ms and defined in the object 5FF0 hex.
This is the time for the BMECXM module to read object 1000 hex of each CANopen slave devices of the CANopen fieldbus at bootup.
Slave specific SDO timeout: By default the value is set to 9500 ms for all CANopen slave devices and defined in the object 5FF1 hex.
This is the time for the BMECXM module to read objects 1010 hex, 1011 hex, and 1F50 hex of the CANopen slave device at bootup.
NOTE: This slave specific SDO timeout is necessary for devices with long response time.
In addition to these configurable SDO timeouts, a READ_SDO has a timeout of 1 s and a WRITE_SDO has a timeout of 2 s.