1.二者的历史渊源
CAN开始是由德国的BOSCH公司为轿车操控系统而规划,并在1993年成为国际规范。之后因其所具有的高可靠性和杰出的过错检测才干受到重视,现在现已扩展到医疗、交通、运动操控、工业自动化多个范畴。
CANopen是CAN运用层。它是在1995年由欧洲的CIA协会推出第一个规范版别,这以后五年在运用中不断完善,现在运用的主要是1999修订的规范。
2.为什么需求CANopen
由于CAN在界说之初并未界说规范的运用层,导致在实践运用中各个厂家对运用层的界说各不相同,这导致相同的CAN报文却因运用层对其解说的不同而产生了不同的功用意义,使其不能彼此直接通讯,阻止了CAN网络设备在不同厂商品牌之间的兼容性。为此欧洲专门成立了CIA协会,担任CANopen运用层的推行。别的,CANopen专门针对有同步、实时操控要求的设备开发了PDO报文,大大提高了报文发送的功率。相对于devicenet(CAN的另一个运用层规范),CANopen报文更为简练和敞开,因而CANopen更值得推行。
其实,将报文格局及其完成方法(通讯层)规范化还不行,还需求将报文参数和设备的功用参数的对应联系一致起来,以变频器为例,设定频率的参数对应报文中的哪个参数假如不一致,用户运用时仍会因各个厂家对此界说的不同而约束于某个厂家的设备。为此CIA专门针对各类设备也界说了该类设备的规范,例如编码器有CIA 406规范,各个IO模块有CIA 401规范,运控方面的驱动设备有CIA 402规范。这样,只需用户购买的设备遵照这些规范,那么就无需忧虑该设备是否和其他厂商设备的兼容或彼此通讯的问题,也就是说,相同的报文指令能够在不同厂商的设备中完成相同的功用,真实做到了与厂商无关。这也是CANopen有更大潜力的主要原因。
3.运用CAN卡或USB-CAN能够收发CANopen报文吗
正如能够用第三方电报机接纳别人发送的电报相同,用一般的CAN接口板卡(PCAN-PCI等)或USB-CAN(PCAN-USB/CANUSB/CAN232)能够正常接纳各类CANopen报文,但其详细意义就需求你了解CANopen报文的格局规范才干将其看懂了,相似战役中接纳电报用的密码本。相同,用户也完全能够将CANopen报文按其规范写好后发给其他规范的CANopen设备。别的,由于PDO报文需求预先对接纳和发送两边装备,所以CAN接口的设备不能直接发送PDO报文。假如需求解析和发送CANopen的报文,需求凭借PCANopen Magic或许CANreport等剖析软件,包含快速导入设备的EDS文件并作修正等。
4.运用支撑CANopen解析的软件能否侦测到发送CAN报文的节点信息
由于有些CANopen软件不能辨认CAN报文代表的意义,因而也不能辨认该只支撑CAN协议的节点。(注:它只能辨认移植了规范CANopen协议的节点,而运用层无CANopen协议的CAN节点往往不能被辨认)。并且CAN报文协议没有一个一致规范,各个设备厂家都能够界说自己的CAN协议。这样同一设备厂商的一切设备都能够相互辨认和通讯,但一旦某个设备出毛病需求检测或替换时便约束于该厂家,由于该CAN报文的意义是他自己界说的,用户即便能用USB-CAN捕捉到该报文,但需求费很大功夫和时刻才干剖分出各条报文的功用,而假如是规范的CANopen报文,则无需忧虑这些问题,这也是CANopen近年来迅速发展的原因。
5.在CAN基础上参加CANopen是否增加了报文的收发时刻
这一点是不必忧虑的。CANopen代码通常是由经验丰富的厂商专门编写,且通过CIA和实践的验证,CANopen专门开发的PDO功用用于运动操控的多轴同步操控及其他实时性要求高的场合也证明了他并没有影响报文履行的实时性。别的,相对于涣散的厂商各自编写的运用层(对CAN报文的格局及意义赋予自己习气的功用),CANopen不只功用全面(掩盖设备状况检测、过错报告、网络办理报文),且各类报文的完成方法是欧洲多方共同研究的成果,报文的完成功率更高。