CANopen总线协议简介

 考虑到CANopen总线是开放性较好、成本较低,绝大多数欧美厂商支持的现场总线,所以要加强CANopen总线的学习。
CANopen协议包括通讯子协议(Communication Profile)和各种设备子协议(Device Profile)。通讯子协议描述对象字典的主要形式和对象字典中的通讯子协议区域中的对象,通讯参数,同时描述CANopen通讯对象,这个子协议适用于所有的CANopen设备,如CIA-DS301。设备子协议为各种不同类型设备定义对象字典中的对象,并为对象字典中的每个对象描述了它的功能、名字、索引和子索引、数据类型,以及这个对象是必需的还是可选的,这个对象是只读、只写或者可读写等等。目前已有多种不同的设备子协议,如:DS401、 DS402等。CANopen标准的核心部分是通过对象字典(Object Dictionary)对设备功能进行描述。通过对象字典的入口可以对设备的“应用对象”进行基本网络访问,设备的“应用对象”可以是输入输出信号、设备参数、设备功能和网络变量等。CANopen设备的功能及特性以电子数据表单(EDS)的形式描述,实际的设备设置通过设备配置文件(DCF)进行描述。
大多数重要的设备类型,例如数字和模拟的输入输出模块,驱动设备,操作设备,控制器,可编程控制器或编码器,都在称为"设备子集"的协议中进行描述。设备子集定义了不同类型的标准设备及其相应的功能。依靠CANopen协议集的支持,可以对不同厂商的设备通过总线进行配置。
CANopen标准最核心的部分是通过对象字典(Object Dictionary)对设备功能进行描述。对象字典分为两部分,第一部分包括基本的设备信息,例如设备ID,制造商,通信参数等等。第二部分描述了特殊的设备功能。
一个16位的索引和一个8位的子索引唯一确定了对象字典的入口。通过对象字典的入口可以对设备的"应用对象"进行基本网络访问,设备的"应用对象"可以是输入输出信号,设备参数,设备功能和网络变量等等。
CANopen设备的功能及特性以电子数据单(EDS)的形式描述,EDS采用ASCII格式,可以将EDS理解成某种形式的表格。实际的设备设置通过所谓的设备配置文件(DCF)进行描述。EDS和DCF都可以从Internet上下载,并可以存储在设备之中。
象其他知名的现场总线系统一样,CANopen也分为两种基本的数据传输机制:通过进程数据对象(PDO)对小型的数据进行高速数据交换以及通过服务数据对象(SDO)对对象字典进行访问。后者主要用于在设备配置过程中传输参数以及传输大数据块。进程数据对象通常采用事件触发、循环或请求方式发送,作为广播对象,它的上层并没有附加协议。一个PDO最大可传输8字节数据。在连接一个同步报文的时候,整个网络都可以采用同步方式对PDO进行传送和接收(Synchro-nous PDOs)。通过存储在对象字典中的PDO映射(PDO Mapping)结构,可以对应用对象到PDO对象的分配(Transmission Object)进行调整,这可以保证设备可以对不同的应用需求进行调整。
通过传输SDO可以实现可靠的数据传输,由两个CAN对象在两个网络节点间通过点对点的通信来实现这一过程。通过传输对象字典的索引以及子索引,可以定位相应的对象字典入口。通过SDO传送报文可以不受长度的限制,但传送SDO报文需要额外的协议开销。
标准化的事件触发的高优先级突发报文用于报告设备故障,可以通过中心时钟报文来提供整个系统的系统时钟。准备和协调建立一个分布式的自动化系统所需的功能都适于CAL网络管理(NMT)定义的机制,同样可应用于周期性的节点维护(node guarding)。
可以选择通过"Heartbeat Message"来显示CANopen设备的通信能力。PDO和SDO的CAN报文标识符可以直接通过对象字典的数据结构的入口标志符进行分配,或者,在简单的系统中,也可用预定义的标志符。
对象字典(Object Directory)
对象字典是每个CANopen设备的中心元素,它描述网络上设备的所有功能。对象字典描述了网络和应用程序之间的接口,所有对象字典的入口都引用16位的索引和8位子索引。对象字典包含所有通过网络访问的参数,例如:设备标识符、生产商名,PDOs和SDOs的通信参数,设备监控(“error control”)都保存在对象字典的通用区。设备描述区包含IO功能(开关量和模拟量的输入和输出),设备参数,PLC映射。如果发生错误,对象字典还可以配置其行为。因此,对象字典可以使设备行为符合各自的应用。
设备描述
设备描述表描述了自动控制系统中主要设备类型的属性和特点。定义了标准设备类型的功能和参数,所有的参数都保存在对象字典中。这样,就保证了CANbus用同一方式访问CANopen 设备。通过不同生产商设备的互用性和可交换性,为广大的多客户需求提供了先决条件。为开关量和模拟量的I/O设备,PLC设备和控制器定义了设备描述表。在标准的EDS文件中用ASCII形式描述了CANopen设备的参数和属性。它作为一个包含所有设备属性的表格访问网络。专门设备配置的实参保存在DCF(device configuration file),DCF是继承于EDS。
使用PDO/SDO进行数据传输
CANopen的数据传输包含两个不同的数据传输机制,CANopen是用过程数据对象(PDOs,Process Data Object)处理短过程数据的快速交换。通过SDO(Service Data Object)访问对象字典的入口。PDO根据事件约束,循环或查询传输,其传输是无协议广播形式。一个PDO传输可以达到八个字节,一个同步信息同步网络上数据的发送和迁移。每个PDO的属性可以在对象字典中配置,包含通信参数(CAN标识符,传输类型等等)和为每个PDO映射分配过程数据。SDO通过2个CAN-telegrams证实数据传输,两个设备间建立了点对点的通信。这样,大的数据包(大于8字节)能被传输给每个SDO。
网络管理
网络管理(NMT)用来管理网络设备的状态,它是主从关系的结构。CANopen设备通过一个启动报文发送一个信号给NMT master,这个启动报文是在网络上被初始化、激活的。用NMT命令可以改变单个设备或整个网络设备的状态,每一个设备的状态是由特定属性决定的。只有在OPERATIONAL状态,PDO才能被传输;在PRE_OPERATIONAL的条件下配置设备。监控CANopen设备的通信状态可选“Node-Guarding”或“Heartbeat”,为报告设备错误定义了报警报文,这些高优先级的紧急报文通过事件导向传输;错误发生时,标准的错误代码详细描述了错误信息。
CANopen Safety
CANopen网络上集成了安全功能(例如:Emergency OFF,Two-handed operation),可以安全传输信息。专用的safety-relevant services(SRDO,Safety Relevant Data Object)接受通信,一个SRDO传输高达8个字节的安全信息,传输数据是在一个定义的时间窗口中完成的。
协议介绍:
CiA DS 301: CANopen 应用层和通讯的描述
CiA DS 304: CANopen 安全相关的通讯架
CiA DS 401: CANopen 本地I/O模块的设备描述
CiA DS 404: CANopen 检测设备和闭环控制器的设备描述
CiA DS 405: CANopen 符合IEC61131-3便准的可编程设备的设备和接口描述
CiA DS 406: CANopen 编码器的设备描述
DS301:定义了应用层和通讯规范,包括对象字典、服务数据对象、过程数据对象、网络管理对象等。
DS302:定义了网络启动的步骤、主节点和管理节点的定义、可编程设备的输入/输出定义、冗余通讯的方式。
DS305:待查
DS401:定义了通用I/O模块的设备规范,主要定义了对象字典中6000H到6FFFFH之间的内容。
DS402:定义了运动控制的设备规范。
DS405:定义了IEC61131标准设备规范,主要定义了A000H到A6FFH之间的内容。
其中DS401、DS402和DS405均提供了默认映射数据。
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
含以下CANopen 协议及子协议,请选择 DS301 规范了对应用层、通信子协议进行了全面描述外,还为特定的应用提供了扩展架构,定义了更多规则和特殊通信对象。例如:定义 了网络管理对象(节点保护,寿命保护),并定义了使用这些对象的详细规则,是包含通信接口、应用过程以及对象字典的CANopen设备的基本 模型 DS301 应用层 DS302 CANopen 管理结构与可编程驱动器 DS303 1接线接头说明,2国际单位的表示和前缀,3指示灯说明(1,2,3) DS304 网络安全结构及相关说明 DS305 无 DS306 EDS电子数据表说明 DS308 性能测量说明 DS309 TCPIP(1,2,3) 1-通用原则与服务 2-Modbus/TCP 影射 3-ASCII码影射 EDS 文件规范 设备子协议: 通常命名编号为DS4XX DS401 通用IO模块 DS402 电机驱动器 DS404 闭环测控仪器 DS405 可编程设备 DS406 旋转与线性编码器 DS408 无 DS410 角度测量仪 DS412 医疗器械(1,2,6),1--通用定义,2---X光准直仪,3--x光发生器,4--疾人表配置,5--X光标准,6--剂量测量系统 DS414 织布机驱动(1,2) 1--通用定义 2--馈线 DS417 升降控制器 DS418 电池驱动模块 DS419 电池充电器 DS420 挤压设备(1,2,3,4,5,6) DS422 市政车辆 DS801 CANopen Automactic bit-rate detection DS802 CANopen CAN remote frames 远程帧-避免使用 DS808 CANopen CiA 444 应用注释和实施指南 CANopen CiA 444 application note and implementation guideline DS201207 DSV1.1 工业应用的应用层
### 回答1: CanOpen 是一种通信总线标准,通常用于工业控制领域。它是一个基于 CAN 协议的开放式系统,旨在提供一个简单而灵活的方法来控制多种不同的设备。 CanOpen 具有易于实现和使用的特点,因此在工业控制领域非常受欢迎。 ### 回答2: CANopen是一种基于CAN(Controller Area Network)总线技术的通信协议。CAN总线是一种高可靠性、实时性强的通信总线,广泛应用于工业自动化领域。而CANopen是在CAN总线的基础上,进一步定义了一套标准的通信协议与通信对象,用于实现各种设备之间的通信与数据交换。 CANopen采用了分布式的通信结构,可以支持多个设备同时进行通信。它基于对象字典的概念,将数据以对象的形式进行封装,通过特定的CANopen消息分组传输。每个设备都有自己的对象字典,用于管理和描述设备的功能和状态。通过读取和写入对象字典中的数据,设备之间可以实现信息的交互。 CANopen协议还定义了一些标准的网络管理和设备配置功能,包括设备的连接与断开、节点的心跳检测、数据的同步等。这些功能使得CANopen系统能够更加稳定、可靠地运行。 CANopen广泛应用于工业机械、自动化设备、仪器仪表等领域,可以实现设备的远程监控与控制。它具有高实时性、抗干扰能力强、数据传输可靠等特点,广受工业领域的认可和采用。 总之,CANopen是一种基于CAN总线技术的通信协议,通过定义标准的通信协议与通信对象,实现设备之间的数据交换与通信。它在工业自动化领域得到广泛应用,并具有高可靠性、实时性强等特点。 ### 回答3: CANopen是一种用于工业自动化领域的通信协议总线系统。它基于CAN(Controller Area Network)总线技术,被广泛应用于机械设备、汽车、电子设备等领域。 CANopen总线系统具有以下特点:首先,它是一种开放的、标准化的协议,由国际CANopen联盟(CAN in Automation)进行维护和开发。这意味着CANopen的规范和文档可供公众免费获取,任何厂家和开发者都可以基于这些规范进行开发和生产,从而实现设备之间的互操作性。 其次,CANopen总线系统具有高度的可扩展性和灵活性。它提供了一套丰富的对象字典,包括了设备的参数、状态、控制等信息,通过这些对象字典,可以实现对设备的配置和监控,同时也可以进行数据的交换和通信。因此,CANopen总线系统可以满足不同设备、不同应用场景下的通信需求。 此外,CANopen总线还具有实时性和高可靠性的特点。CAN总线本身就具备实时性,而CANopen协议在其基础上给予了更高的实时性保证。它采用了事件驱动的通信方式,支持多种通信对象和通信机制,可以进行精确的数据传输和同步控制,适用于对实时性要求较高的应用。 总的来说,CANopen总线技术具有开放性、高扩展性、灵活性、实时性和可靠性等优点,因此在工业自动化领域得到了广泛应用,为设备之间的通信和控制提供了可靠的解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值