机器人技术:包括自动化机器人、传送带和其他工业机械
医疗:包括X射线发生器、注射器、病人床和透析设备
汽车:包括农业、铁路、拖车、重型汽车和船舶等
CANopen是一个基于CAN总线的“高层协议”,这意味着CAN总线(ISO 11898)就像集装箱的卡车一般作为CANopen信息的“运输工具”。在OSI模型中,CAN总线代表两个最低层(物理层和数据链路层)。这意味着CAN只是实现了带有11位CAN ID、远程传输(RTR)位和64个数据位(与更高层的协议相关)的字段的帧的传输。换言之,CAN总线在CANopen中的作用与在J1939协议相同,而CANopen则实现了OSI模型的第七层,并能够适应除CAN以外的其他数据链路层协议(例如EtherCAT、Modbus、Powerlink)。
值得关注的是,随着CAN FD的推出,CANopen FD作为下一代CANopen标准,可能会发挥着越来越重要的作用。具体细节,欢迎到CiA官网中查看。
相较于CAN总线和J1939协议,CANopen协议新增了6个核心概念:
通信模式。设备/节点的通信有3种模式: 主/从站、客户端/服务器和生产者/消费者。
通信协议。用于通信的协议,如配置节点(SDO)或传输实时数据(PDO)等。
设备状态。一个设备支持不同的状态,一个 "主站 "节点可以改变一个 "从站 "节点,包括重置等操作。
对象字典。每个设备都有一个OD,其中有指定设备配置等的条目,它可以通过SDO访问。
电子数据表。EDS是OD条目的标准文件格式,它允许使用服务工具来更新设备。
设备设置文件。描述了I/O模块(CiA 401)和运动控制(CiA 402)等供应商独立性
二、CANopen通信基础知识
在CANopen网络中,需要多个设备进行通信,例如,在工业自动化设置中,你可能有一个带有多个伺服电机节点和一个控制接口/PC节点的机械臂。CANopen中存在着三种通信模式,每种模式都与我们所讨论的CANopen协议紧密相连。下面将简单介绍这三种模式:
第一, 主/从站。一个节点(例如控制接口)作为应用主站或主控制器。它向从站设备(例如伺服电机)请求数据。这个过程被用于诊断或状态管理。在标准应用中,可以有0到127个从站。但需要注意,请注意:在单个CANopen网络中,可以有不同的主机控制器共享同一个数据链路层。
第二, 客户端/服务器。客户端向服务器发送数据请求,服务器回复请求的数据。例如,当应用程序主站需要从站的OD中获取数据时使用这一模式。从服务器上读取是一种 "上传",而“写入”是一种 "下载"(该术语采用服务器端的角度)。
第三, 消费者/生产者。该模式中生产者节点向网络广播数据,由消费者节点消费。生产者根据请求(拉模型)或没有特定请求(推模型)发送此数据。
显然,这些模型实际上是相同的,但为了术语的一致性,我们对它们进行了区分。
在下一篇文章中,我们将继续讲解CANopen通信基础知识,欢迎关注以便第一时间获取更新的内容。虹科在CAN、CANopen等领域深耕多年,有着深厚的技术实力,目前已面向国内市场推出了CANopen开发源代码、CANopen数据记录仪,和支持CANopen协议的网关、板卡、IO等产品。此外,针对客户在CANopen方面的培训需求,虹科还推出了相关的课程培训服务。
作者: 虹科工业智能互联, 来源:面包板社区
链接: https://mbb.eet-china.com/blog/uid-me-3988237.html
版权声明:本文为博主原创,未经本人允许,禁止转载!
文章评论(0条评论)
登录后参与讨论