Delta Electronics PCI-DMC-A01 Computer Hardware User Manual


 
Chapter 8 Using SDO Protocol API | PCI-DMC-A01 / PCI-DMC-B01
8-4 Revised March, 2012
Sample SDO Packet Format for CANopen2 – Index Read/Write failure
When index read is “Failed” (no such index), the return value is in the following format:
Table 8.4
Field
name:
Datatype Index low Index high
Sub
index
Data1 Data2 Data3 Data4
Command 0x40 0x59 0x60 0x00 0x00 0x00 0x00 0x00
Return 0x80 0x59 0x60 0x00 0x00 0x00 0x02 0x06
Table description:
(1) Read an invalid index (Here CANopen's Index is set as 0x6059 and SubIdx as 0x00).
(2) Datatype is set as 0x40 to indicate read.
(3) There is no such index in the servo, so read fails. Datatype is then returned 0x80 to
indicate read failure.
(4) The field in the above table indicates that the returned data made up of Data1~Data4 is
0x06020000 indicating the [No Such Index] error.
(5) For a detailed explanation, please refer to Delta Electronics SDA-A2 CANopen Technical
Guide's section on SDO Abort Code.
When Index write “fail” (The value is out of the set range), the return value is in the following
format:
Table 8.5
Field
name:
Datatype
Index
low
Index high
Sub
index
Data1 Data2 Data3 Data4
Command 0x2f 0x60 0x60 0x00 0x0F 0x00 0x00 0x00
Return 0x80 0x60 0x60 0x00 0x30 0x00 0x09 0x06
Table description:
(1) Write operation mode (Here CANopen's Index value is set as 0x6060 and SubIdx is set as
0x00).
(2) Datatype is set as 0x2f to indicate the data being written is 8 bit [Data1 is valid].
(3) As the operating range is between 0x00~0x07, this command is written as operation
failed / Subsequent datatype then returns a value of 0x80 to indicate write failed.
(4) The field in above table The above table shows that the data made up of Data1~Data4 is
the 0x06090030 [Write value out of range] error code.
(5) The Index data length is based on Delta Electronics' ASDA-A2 CANopen Technical
Guide.
For a detailed explanation, please refer to Delta Electronics SDA-A2 CANopen Technical
Guide's section on SDO Abort Code.