EtherCAT CoE Standard Communication EtherCAT Programming Guide
7-2 March, 2017
7
An OD (Object Dictionary) represents different parameters for the slaves, such as motor’s
current position. And each OD consists of one index and one sub-index, which signify the
communication address in hexadecimal format and property respectively.
PDO (Process Data Object) is the communication method defined by CANopen. It is the cyclic
communication between the Master and all Slaves. Before the communication (initialization)
starts, the Master will define one PDO mapping table, which consists of several ODs. Then, the
PDO mapping table will be sent to each Slave according to the set cycle on a regular basis. In
the same cycle, the Slave executes the command or sends the status to the Master in
accordance with the PDO mapping table.
SDO (Service Data Objects) is also the communication method defined by CANopen. Different
from PDO, the communication time is determined by users. The Slave gives response only when
the Master sends a request. That is to say, SDO cannot issue the command frequently. However,
users can read/write any OD that is not in PDO mapping table via SDO.
API list of EtherCAT CoE standard communication
Function name Description
_ECAT_Slave_SDO_Send_Message
Issue SDO command (CANopen) to the slave
_ECAT_Slave_SDO_Read_Message
Acquire the current SDO data (CANopen) of the slave
_ECAT_Slave_SDO_Quick_Send_Message
Issue SDO command (CANopen) to the slave without
waiting for the response
_ECAT_Slave_SDO_Quick_Read_Message
Issue SDO read command (CANopen) to the slave
without waiting for the response
_ECAT_Slave_SDO_Read_Response
Read the returned data from the slave.
_ECAT_Slave_SDO_Wait_All_Done
Wait multiple slaves to complete all the SDO
commands.
_ECAT_Slave_SDO_Get_ErrorCode
Acquire the error code of ERR_ECAT_SDO_Return
that returned during the execution of SDO
Send_Message or Read_Message. Please refer to
CANopen protocol or the definition of each device for
error code.
_ECAT_Slave_SDO_Check_Done
Check if the specified slave has completed all the
SDO commands
_ECAT_Slave_PDO_Get_OD_Data
Read the data of an OD index in the PDO mapping
_ECAT_Slave_PDO_Set_OD_Data
Send the data of an OD index in the PDO mapping
_ECAT_Slave_PDO_Get_Information
Acquire the basic information of each slave device
PDO.
_ECAT_Slave_PDO_Get_Detail_Mapping
Acquire the details of PDO mapping in the slave
device
_ECAT_Slave_PDO_Get_Rx_Data
Acquire all slave Rx data of the PDO mapping
_ECAT_Slave_PDO_Get_Tx_Data
Acquire all slave Tx data of the PDO mapping
_ECAT_Slave_PDO_Set_Tx_Detail_Data
Configure all slave Tx data of the PDO mapping