CANopen是一种基于CAN的通信协议,在以下应用中得到广泛使用:机器人技术如自动化机器人、传送带,医疗行业包括X射线发生器、注射器,汽车包括农业、铁路、拖车等,新能源领域如光伏发电等。 CANopen协议的结构定向根据ISO11898国际标准,以开放系统互联网络OSI为参考模型,结构图如下: CAN只定义物理层和数据链路层,没有规定应用层,本身并不完整,需要一个高层协议来定义CAN报文中的11/29位标识符、8字节数据的使用。 在基于CAN总线的工业自动化应用中需要一个开放的、标准化的高层协议,以支持各种CAN厂商设备的互用性、互换性,实现标准统一的系统通讯模式,执行网络管理和数据交互功能。 ISO11898-2标准规定了2个终端电阻的线性总线结构,避免导线上的信号反射,通过转发器或CANopen网关可以克服基本线性网络拓扑的局限性,如图:
CAN 协议最突出特点就是能够进行错误的检测、限制和处理。与其他总线系统的不同,它没有定义用于识别错误类型的握手方法,在协议中规定了5种错误识别机制,以确保识别出所有出现的总线错误。 CiA 的贡献者优化了CAN在 错误识别能力,提高了错误识别率从而降低修正的概率。
CANopen为用户提供了一种通过对设备数据管理的方法,通过通过服务数据对象(SDO)读取对象字典中的条目。
CANopen设备模型:
国际标准(如 IEC 61508)定义了传输的安全等级, CANopen安全协议(CiA 304)可以让用户按照IEC 61508规范的标准来制造设备,并使设备通过相关认证,用于非冗余总线,安全等级可达到SIL3(Safety Integrity Level,安全完整性等级)。 Canopen与其他类型的信号相比提供了更可靠、更具成本效益和更安全的数据传输(设备错误消息)。用户可以通过CanopenObject Dictionary进行网络管理、数据传输等操作,具有抗干扰和多主机应用功能,可以形成实际的主机冗余保险丝,实现更安全的控制。
CANopen应用在医疗设备中,可用于计算机断层扫描装置(CT)、磁共振(MR)和血管造影设备(AG)中,包括位于最底层(深度嵌人式网络)的是通用I/O模块、电驱动器和操纵装置。
|