原创 虹科干货 | 最简单实用的CANopen介绍,看完你就明白了!(1)

2022-8-17 11:18 4903 5 5 分类: 通信 文集: 虹科干货分享
目前,CANopen通讯协议已经在工业领域得到了广泛的使用,由于其面向对象的设计思路,CANopen协议已成为欧洲等国家的自动化公司标配的通讯接口之一。在本系列文章中,我们将介绍CANopen协议的基础内容,包括对象字典、服务、SDO、PDO和主/从站节点等
一、什么是CANopen?
CANopen是一种基于CAN的通信协议。这项协议非常有用,因为它可以让设备、节点(如工业机械)之间具有现成的互操作性,以及它提供了安装前和安装后配置设备的标准方法。CANopen最初是为面向运动的机器控制系统设计的,如今,它被广泛用于电机控制(步进/伺服电机)领域,并在以下应用中得到广泛使用:

机器人技术:包括自动化机器人、传送带和其他工业机械

医疗:包括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访问。

Ÿ   电子数据表。EDSOD条目的标准文件格式,它允许使用服务工具来更新设备。

Ÿ   设备设置文件。描述了I/O模块(CiA 401)和运动控制(CiA 402)等供应商独立性

二、CANopen通信基础知识

CANopen网络中,需要多个设备进行通信,例如,在工业自动化设置中,你可能有一个带有多个伺服电机节点和一个控制接口/PC节点的机械臂。CANopen中存在着三种通信模式,每种模式都与我们所讨论的CANopen协议紧密相连。下面将简单介绍这三种模式:

 

第一, 主/从站。一个节点(例如控制接口)作为应用主站或主控制器。它向从站设备(例如伺服电机)请求数据。这个过程被用于诊断或状态管理。在标准应用中,可以有0127个从站。但需要注意,请注意:在单个CANopen网络中,可以有不同的主机控制器共享同一个数据链路层。

 

第二, 客户端/服务器。客户端向服务器发送数据请求,服务器回复请求的数据。例如,当应用程序主站需要从站的OD中获取数据时使用这一模式。从服务器上读取是一种 "上传",而“写入”是一种 "下载"(该术语采用服务器端的角度)。

第三, 消费者/生产者。该模式中生产者节点向网络广播数据,由消费者节点消费。生产者根据请求(拉模型)或没有特定请求(推模型)发送此数据。

显然,这些模型实际上是相同的,但为了术语的一致性,我们对它们进行了区分。

在下一篇文章中,我们将继续讲解CANopen通信基础知识,欢迎关注以便第一时间获取更新的内容。虹科在CAN、CANopen等领域深耕多年,有着深厚的技术实力,目前已面向国内市场推出了CANopen开发源代码、CANopen数据记录仪,和支持CANopen协议的网关、板卡、IO等产品。此外,针对客户在CANopen方面的培训需求,虹科还推出了相关的课程培训服务。





作者: 虹科工业智能互联, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-3988237.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

文章评论0条评论)

登录后参与讨论
我要评论
0
5
关闭 站长推荐上一条 /2 下一条