CANopen 是一个基于 CAN(控制局域网)串行总线系统和 CAL(CAN 应用层)的高层协议。CANopen 通讯协议 CiA DS-301 包括周期和事件驱动型通讯,不仅能够将总线负载减少到最低限度,而且还能确保极短的反应时间。它可以在较低的波特率下实现较高的通讯性能,从而减少了电磁兼容性问题,并降低了电缆成本。
CANopen 所用的物理介质是符合 ISO 11898 标准,采用分驱动机制和公共反馈的双线总线。总线的最大长度取决于通讯速度,具体规定如下:
从理论上来说,最多可以有 127 个节点。不过,在实际应用中,最大节点数量取决于所用 CAN 收发器的性能。CAN 总线线路必须用在 CAN-L 和 CAN-H 线之间每端连接的 120 欧姆(1%,1/4W)电阻来终接,如下所示。
总线电缆选用有两对双绞线的带屏蔽层电缆:一对双绞线分别接 CAN-L 和 CAN-H,另外一对双绞线直接接GND。
CANopen 的核心概念是设备对象字典(OD:Object Dictionary),在其它现场总线(Profibus,Interbus-S)系统中也使用这种设备描述形式。CANopen 通讯通过对象字典(