通信对象
CANopen协议中常用的通信对象包含如下几点:
1) 网络管理对象(NMT)
网络管理对象包括 Boot-up 消息, Heartbeat 协议及 NMT 消息,基于主从通信模式, NMT 用于管理和监控网络中的各个节点,主要实现三种功能:节点状态控制、错误控制和节点启动。
2) 服务数据对象 (SDO)
包括接收 SDO(R-SDO) 和发送 SDO(T-SDO)。
通过使用索引和子索引, SDO 使客户机能够访问设备对象字典中的项。
SDO 通过 CAL 中多元域的 CMS 对象来实现,允许传送任何长度的数据,当数据超过 4 个字节时分拆成几个报文。
协议是确认服务类型,为每个消息生成一个应答。 SDO 请求和应答报文总是包含 8 个字节。
3) 过程数据对象(PDO)
包括接收 PDO(RPDO) 和发送 PDO(TPDO)。
用来传输实时数据,数据从一个创建者传到一个或多个接收者。数据传送限制在 1 到 8 个字节。
每个 CANopen 设备包含 8 个缺省的 PDO 通道, 4 个发送 PDO 通道和 4 个接收 PDO 通道。
PDO 包含同步和异步两种传输方式,由该 PDO 对应的通信参数决定。
PDO 消息的内容是预定义的,由该 PDO 对应的映射参数决定。
4) 同步对象 (SYNC)
同步对象是由 CANopen 主站周期性地广播到 CAN 总线的报文,用来实现基本的网络时钟信号,每个设备可以根据自己的配置,决定是否使用该事件来跟其它网络设备进行同步通信。
5) 紧急报文 (EMCY)
设备内部通信故障或者应用故障错误时发送的报文。
对象字典
对象字典是设备规范中最重要的部分。它是一组参数和变量的有序集合,包含了设备描述及设备网络状态的所有参数。
通过网络可以采用有序的预定义的方式来访问的一组对象。这里就牵涉到定义对象字典的生成问题,后面我会讲述关于对象字典生成工具相关内容。
CANopen 协议采用了带有 16 位索引和 8 位子索引的对象字典。你可以理解为一本汉语字典,我们需要查找里面的某个汉子(可以理解定义的某个数据),我们就会从拼音或笔画(索引)进去找到对应位置。
CANOpen 协议对象字典主索引如下图,这只是一个主要的索引。其实还能细分下去,这里不过多讲述,后续会进一步讲述。
通信对象
CANopen协议中常用的通信对象包含如下几点:
1) 网络管理对象(NMT)
网络管理对象包括 Boot-up 消息, Heartbeat 协议及 NMT 消息,基于主从通信模式, NMT 用于管理和监控网络中的各个节点,主要实现三种功能:节点状态控制、错误控制和节点启动。
2) 服务数据对象 (SDO)
包括接收 SDO(R-SDO) 和发送 SDO(T-SDO)。
通过使用索引和子索引, SDO 使客户机能够访问设备对象字典中的项。
SDO 通过 CAL 中多元域的 CMS 对象来实现,允许传送任何长度的数据,当数据超过 4 个字节时分拆成几个报文。
协议是确认服务类型,为每个消息生成一个应答。 SDO 请求和应答报文总是包含 8 个字节。
3) 过程数据对象(PDO)
包括接收 PDO(RPDO) 和发送 PDO(TPDO)。
用来传输实时数据,数据从一个创建者传到一个或多个接收者。数据传送限制在 1 到 8 个字节。
每个 CANopen 设备包含 8 个缺省的 PDO 通道, 4 个发送 PDO 通道和 4 个接收 PDO 通道。
PDO 包含同步和异步两种传输方式,由该 PDO 对应的通信参数决定。
PDO 消息的内容是预定义的,由该 PDO 对应的映射参数决定。
4) 同步对象 (SYNC)
同步对象是由 CANopen 主站周期性地广播到 CAN 总线的报文,用来实现基本的网络时钟信号,每个设备可以根据自己的配置,决定是否使用该事件来跟其它网络设备进行同步通信。
5) 紧急报文 (EMCY)
设备内部通信故障或者应用故障错误时发送的报文。
对象字典
对象字典是设备规范中最重要的部分。它是一组参数和变量的有序集合,包含了设备描述及设备网络状态的所有参数。
通过网络可以采用有序的预定义的方式来访问的一组对象。这里就牵涉到定义对象字典的生成问题,后面我会讲述关于对象字典生成工具相关内容。
CANopen 协议采用了带有 16 位索引和 8 位子索引的对象字典。你可以理解为一本汉语字典,我们需要查找里面的某个汉子(可以理解定义的某个数据),我们就会从拼音或笔画(索引)进去找到对应位置。
CANOpen 协议对象字典主索引如下图,这只是一个主要的索引。其实还能细分下去,这里不过多讲述,后续会进一步讲述。
举报