CANopen的起源,CANopen从何而来?
德国Bosch公司于1983年研发CAN协议,用于汽车传动系统的网络通讯。之后称为国际标准ISO11898,目前CANopen由非营利组织CiA(CAN in Automaion)进行标准的起草及审核工作,基本的 CANopen 设备及通讯子协定定义在 CAN in Automation (CiA) draft standard 301. 中。针对个别设备的子协定以 CiA 301 为基础再进行扩充,如针对 I/O 模组的 CiA401 及针对运动控制的 CiA402。
CANopen对于运动控制来说是一款优秀的通讯协议,采用了面向对象的一些设计思路,比如对象字典,过程数据对象(PDO),服务数据对象(SDO)等等。
CANopen在欧洲已成为最普通的协议,任何一家自动化公司都有CANopen的通讯接口,也成了低配。低配并不代表不好,只是说明其性价比更高。CANopen定义了完整的同步控制机制,使其成为主流的运动控制协议,除了在CAN总线上运行外,还被搬到了以太网上(CANopen over Ethernet),形成了著名的PowerLink,EtherCat工业以太网协议。
To write the 1 byte data : 0xFD in the object dictionary of node 5, at index 0x1400, subindex 2, sends :
605 2F 00 14 02 FD 00 00 00
If success, the node 5 responds :
585 60 00 14 02 00 00 00 00
To write the 4 bytes data : 0x60120208 in the object dictionary of node 5, at index 0x1603, subindex 1, sends :
605 23 03 16 01 08 02 12 60
If success, the node 5 responds :
585 60 03 16 01 00 00 00 00