Common SDO commands for configuring CANopen sensors (transmit list attached)
Last Updated 5 months ago
The Service Data Object (SDO) is used to set and request values from the object dictionary. There are three types of SDO services used to transmit data. In this context, the device is considered as a server(owner of the object dictionary) and communication is viewed from the server.
Object index and sub-index might mary from models. Please always check the manual for the correct value.
If you want to configure sensor parameters, please use cs (23/27/2B/2F) for write. If you want to check the sensor parameters, please use cs (40) for read. The format of a SDO message is explained in the picture below
Zero adjustment
This is an example of zeroing an 1-axis inclination at -90° position. The returned value DCB9h / -9031d /-90.31° in object 6200h is the pre-set angle value for X axis.
Figure 1 - Start zero adjustment X axis inclination/accelerationFigure 2 - Start zero adjustment Y axis inclination/accelerationFigure 3 - Start zero adjustment X and Y axis inclination/accelerationFigure 4 - Start zero adjustment Z axis – accelerationFigure 5 - Start zero adjustment all axis - acceleration
Change Node ID
This example writes a new Node ID 02h to object 3000h, sensor sent 60 00 30 00 00 00 00 00h as a response message, indicating that the Node ID is changed successfully.
Figure 6 - Change Node ID
Change Baudrate
This example changes the Baudrate to 250kBit/s by writing 03h to object 3001h.
Figure 7 - Change Baudrate
Set Filter frequency
Write the 1st order LPF time to the object 300Eh will enable this filter.
For example, writing 0064h to sub-index 01h will set 100ms filter time for X axis.
Figure 8 - SDO set 1st order LPF for X axis
writing 0064h to sub-index 02h will set 100ms filter time for Y axis.
Figure 9 - SDO set 1st order LPF for Y axis
TPDO Mapping
Example – set object 6010h.00h to TPDO1 mapping
Figure 10 - SDO Configure TPDO1 mapping parametersRemember to store the new settings to the sensor by writing signature “save” to object 1010h. The new settings will be valid after NMT reset or a new power cycle.
Load default factory settings
Write signature “load”ASCII or 64616F6Ch to object 1011h sub-index 01h will restore the factory settings to the sensor.
Figure 11 - SDO load default factory settingsDo not forget to NMT restart the sensor or give a new power cycle. Do not “save parameters” after you load default factory settings, otherwise, customised settings in the RAM will rewrite the factory default.
Save parameters
Write signature “save” or 65766173h to object 1010h , sub-index 01h will save all changes of the settings to the EEPROM.
Figure 12 - SDO Save all to EEPROMDo not forget to NMT restart the sensor or give a new power cycle