5: Sdo Communications - Curtis 1353 User Manual

Canopen expansion module
Table of Contents

Advertisement

Return to TOC
CANopen uses Service Data Objects (SDOs) to change and view all internal parameters, or "objects. "
The SDO is an 8-byte packet that contains the address and sub-address of the parameter in question,
whether to read or write the parameter, and the parameter data (if it is a write command). SDOs are
sent infrequently and have a low priority on the CANbus.
SDOs are designed for sporadic and occasional use during normal runtime operation. There are
two types of SDOs: expedited and block transfer. The 1353 does not support large file uploads or
downloads (using the block transfer), so all the SDOs used by the 1353 are expedited SDOs.
The SDOs in the 1353 are used to set up and parameterize the module. They are also used to retrieve
basic module information (such as version or manufacture date), review the fault log, and monitor
a few key internal variables (mostly for system debug purposes).
SDO Master Request (SDO-MOSI)
An SDO transfer always starts with a request message from the master. Each SDO request message
consists of one control byte, a two-byte CAN Object index, a one-byte CAN Object sub-index, and
up to 4 bytes of valid data. This format is CANopen compliant.
SDO-MOSI
The first data byte contains R/W message control information.
The next two data bytes hold the CAN Object index. The LSB of the index appears first, in byte 2,
and the MSB appears in byte 3. For example, if the index is 0x3021, byte 2 holds the 0x21 and byte
3 holds the 0x30.
Data byte 4 holds the CAN Object sub-index. When there is only one instance of a parameter or
value type, this value is 0. If there are several related parameters or values, the sub-index is used.
The last four data bytes hold the data that is to be transferred. In the case of a single-byte transfer,
the data is placed into data byte 5, with bytes 6 through 8 being undefined (set to 0). In the case of a
16-bit transfer, the lower 8 bits appear in data byte 5 and the upper 8 bits appear in data byte 6; bytes
7 and 8 are undefined (set to 0). The case of a 32-bit transfer follows the same strategy, with the least
significant byte placed in data byte 5 and the most significant byte placed in data byte 8.
5 — SDO COMMUNICATIONS
5 — SDO COMMUNICATIONS
(received from the system master)
Byte 1
Byte 2
Byte 3
Control
CAN Object
Index
Curtis 1353 CANopen Expansion Module Manual – June 2017
Byte 4
Byte 5
Byte 6
Sub-index
Data
Data
Action
Byte 1 Value
Read
0x4x
Write
0x2x
Byte 7
Byte 8
Data
Data
pg. 23

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents