过程数据对象 (PDO)
过程数据对象(PDO)是EtherCAT 从站在每个周期内传输的过程数据,是应用程序期望循环更新或发送到从站的用户数据(比如每个周期下发伺服的位置)。因此,EtherCAT 主站在启动阶段对每个 EtherCAT 从站进行参数化,以定义要与该从站传输或从该从站传输的过程数据(以位/字节为单位的大小、源位置、传输类型)
PDO的配置(PDO通过邮箱SDO配置,SDO如何下发数据见上一篇文章)
寄存0x1c12 RxPDO 0x1c13 TxPDO
下面以一次实际配置过程来分析
可以从报文看出配置的流程,配置出的数据如下图所示。
配置映射的起始地址
可以看到对PDO的操作有两种方式:
一种是RxPDO、TxPDO分别访问,使用LRD、LWR
另外一种是RxPDO、TxPDO数据复用,减少带宽,是LRW, 从站先从PDO中读取数据,然后把需要发送到主站的数据写入。
从上面的报文中我们知道我们映射了8个字节,使用LRW只需要4个字节,节省了4个字节的带宽,当PDO数据很多时,效果会更加明显
上面是使用倍福的TwinCAT软件控制的一个IO的抓包结果