CANopen协议浅析(一).ppt

上传人:牧羊曲112 文档编号:5418559 上传时间:2023-07-05 格式:PPT 页数:33 大小:469.50KB
返回 下载 相关 举报
CANopen协议浅析(一).ppt_第1页
第1页 / 共33页
CANopen协议浅析(一).ppt_第2页
第2页 / 共33页
CANopen协议浅析(一).ppt_第3页
第3页 / 共33页
CANopen协议浅析(一).ppt_第4页
第4页 / 共33页
CANopen协议浅析(一).ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《CANopen协议浅析(一).ppt》由会员分享,可在线阅读,更多相关《CANopen协议浅析(一).ppt(33页珍藏版)》请在三一办公上搜索。

1、Reporter:Kingc.yu,CANopen 协议浅析,2008.6,CANopen报文分析,主要内容,CANopen协议概述,CANopen设备模型,CANopen通信对象,CANopen预定义连接集,CANopen协议是由CiA(CAN-in-Automation)定义并维护的协议之一,它是在CAL(CAN Application Layer)协议基础上开发的,使用了CAL通信和服务协议子集.CANopen在发布后不久就获得了广泛的承认,尤其在欧洲,CANopen被认为是在基于CAN的工业系统中领导地位的标准.目前被广泛地用于智能楼宇,嵌入式系统,车载设备,医疗装置等应用领域中.,C

2、ANopen协议概述,在OSI模型中,CAN标准,CANopen协议之间的关系如下图所示:,CANopen协议概述,CANopen协议由一系列称为子协议的文档构成.,通讯子协议:,CANopen协议概述,DS301:Application Layer and Communication Profile 规定了基本的通信机制及其特性.适用于所有 CANopen设备.,设备子协议:,设备子协议定义了不同类型的标准设备及其相应的功能.,DS401:I/O模块,DS402:运动控制设备,如电机,DS404:闭环控制器,DS405:PLC,DS406:编码器,CANopen Application La

3、yer,CAN Data Link Layer,CAN Physical Layer,CANopen Application Layer,CAN Data Link Layer,CAN Physical Layer,Object at Index,ID+Data,ID+Data,CAN-H,CAN-L,CAN-L,Transmitting Device,Receiving Device,不同设备之间的通信模型:,CAN Bus,CANopen协议概述,CANopen设备模型,一个CANopen设备可以分为三个部分:,通讯接口,对象字典(OD:Object Dictionary),应用,通讯接口

4、:PDO SDO 特殊功能对象 NMT,对象字典:数据类型 通讯对象 应用对象,应用:应用程序设备子协议实现,I/O,CAN,CANopen设备模型,CANopen网络中每个节点都有一个对象字典,对象字典包含了描述这个设备和它的网络行为的所有参数.,Index(hex),Object,0000,Not Used,0001001F,静态数据类型(标准数据类型,如Boolean,Integer 16),0020003F,复杂数据类型(预定义由简单类型组合成的结构,如PDOCommPar,SDOParameter),0040005F,制造商规定的复杂数据类型,0060007F,设备子协议规定的静态数

5、据类型,0080009F,设备子协议规定的复杂数据类型,00A00FFF,Reserved,10001FFF,通讯子协议区域(如设备类型,错误寄存器,支持的PDO数量),20005FFF,制造商特定子协议区域,60009FFF,标准的设备子协议区域(例如“DSP-401 I/O 模块设备子协议”:Read State 8 Input Lines等),A000FFFF,Reserved,CANopen设备模型,对象字典是一个有序的对象组.每个对象采用一个16位的索引(Index)值来寻址,为了允许访问数据结构中的单个元素,同时定义了一个8位的子索引(Sub-Index).索引和子索引唯一确定了对

6、象字典的入口,通过该入口可以对设备的“应用对象”进行基本的网络访问.设,备的“应用对象”可以是输入输出信号,设备参数,网络变量等.,例如,在台达VFD-B系列变频器(COA02)的对象字典中,主索引2020定义了三个控制变频器的参数,通过子索引就可以具体定位某个参数.如2020-2就对应了变频器的Frequency Command.,CANopen通信对象,Process Data Objects(PDO)Protocol Service Data Object(SDO)Protocols Special Object Protocols:Synchronization(SYNC)Protoc

7、ol Time Stamp Protocol Emergency(EMCY)Protocol Network Management Protocols:NMT Message Protocol Boot-Up Protocol Error Control Protocol,CANopen通信对象,The real-time data transfer is performed by the Process Data Objects(PDOs)protocol.With Service Data Objects(SDOs)protocols the read and write access t

8、o entries of a device object dictionary is provided.Special Function Object protocols provide application-specific network synchronization,time stamping and emergency message transmissions.The Network Management(NMT)protocols provide services for network initialization,error control and device statu

9、s control.,CANopen通信对象,CANopen 网络中信息传输采用的三种通信模式:,Producer/Consumer Model,Client/Server Model,Master/Slave Model,CANopen通信对象,Producer/Consumer Model,request,0 8 Byte,Indication(s),Producer,Consumer,CAN Data Frame,Indication,response,request(s),CAN Remote Frame,0 8 Byte,CAN Data Frame,confirmation(s),

10、CANopen通信对象,Client/Server Model,request,0 8 Byte,Indication,Server,Client,CAN Data Frame 1,response,0 8 Byte,CAN Data Frame 2,confirmation,CANopen通信对象,Master/Slave Model,request,0 8 Byte,Indication(s),Slave,Master,CAN Data Frame,response,CAN Remote Frame,0 8 Byte,CAN Data Frame,confirmation,request,

11、Indication,CANopen通信对象,Process Data Object,PDO Producer,PDO Consumer,PDO Consumer,PDO Consumer,ID,Data,CANopen通信对象,PDO 的三种触发机制:,Event or Timer driven,Remotely requested,Synchronous transmission(cyclic,acyclic),Internal event,Producer,Consumer(s),Producer,Remote Frame,Consumer(s),Producer,Sync,Consum

12、er(s),CANopen通信对象,PDO 的传输类型:,The type indicate the number of SYNC objects between two PDO transmissionsData is updated(but not sent)immediately after reception of the SYNCData is updated at the reception of the RTRApplication event is device-specificApplication event is defined in the device profile

13、,CANopen通信对象,Type 0:非周期同步,只有当节点PDO数据发生改变后,节点 收到SYNC时,才会更新并传送一笔PDO数据信息.,在异步模式中,若从站中的Event timer 为0ms,则只有当从站的数据发生变化时,才会向主站回传数据;若为非0值,则每隔一个event timer时间,即向主站回传一笔数据.,inhibit time 指的是PDO禁止时间,即发出一笔PDO数据后,inhibit time内不允许再发同一个PDO数据.,CANopen通信对象,PDO_1,PDO_1,PDO_1,0,200,400,600,800,1000,1200,1400,1600,t/us,R

14、equest,PDO_2,PDO_3,PDO_1,0,200,400,600,800,1000,1200,1400,1600,t/us,Transmission,PDO_3,PDO_1 Inhibit time,PDO_2,PDO_1,通过设置inhibit time,使得优先权低于PDO1的PDO2和PDO3能够获得总线权,从而得以传输.,CANopen通信对象,每个 PDO 在对象字典中用两个对象来描述:,PDO 通信参数:包含哪个COB-ID将被PDO使用,传输类型,禁止时间和 定時器周期.,Index,Sub-Index,Description,Data Type,1XXX h,0 h

15、,Number of Entries,Unsigned8,1 h,COB-ID,Unsigned32,2 h,Transmission type,Unsigned8,3 h,Inhibit time,Unsigned16,4 h,reserved,Unsigned8,5 h,Event timer,Unsigned16,PDO 映射参数:包含一个对象字典中对象的列表,这些对象被映射到PDO里.,CANopen通信对象,Index,Sub-Index,Description,Data Type,1XXX h,0 h,Number of Entries,Unsigned8,1 h,1 st obj

16、ect,Unsigned32,2 h,Unsigned32,3 h,3 rd object,Unsigned32,40 h,64 th object,Unsigned32,2 nd object,31 16 15 8 7 0,映射对象的内容格式:,CANopen通信对象,RxPDO_1,Example:配置VFD-EC的RxPDO1,CANopen通信对象,Example:在CANopen Builder 软件中配置VFD-EC的RxPDO1:,CANopen通信对象,PDO 参数集:,CANopen通信对象,Service Data Object,ID2,Data,ID1,Data,SDO

17、Server,OD,SDO Client,Node n,OD,CANopen通信对象,通过使用索引和子索引,SDO使客户机能够访问设备(服务器)对象字典中的项(对象).,SDO允许传送任何长度的数据.当数据长度超过4个字节时将数据分拆成几个报文,采用分段(segment)传送的方式传送数据.也可采取分块(block)的方式进行传送,每个块最多可包含127个段.,一个SDO需要两个ID,COB-ID=580 h+Node ID的报文为SDO请求报文,COB-ID=600 h+Node ID的报文为SDO应答报文.SDO请求和应答报文总是包含8个字节.,SDO通讯有较多的协议规定.,CANopen

18、通信对象,SDO 分段传送:,Client,Server,Initial SDO down/upload(e=0),Confirm initial SDO down/upload,Down/upload SDO segment(t=0,c=0),Confirm down/upload segment 1,Down/upload segment n(t=?,c=1),Confirm down/upload segment n,Client,Server,Initial SDO block down/upload,Down/upload SDO block(normal),End SDO bloc

19、k down/upload,SDO 分块传送:,Down/upload SDO block(last),CANopen通信对象,Down/upload SDO block(normal),Down/upload SDO block(normal),CANopen通信对象,Down/upload SDO block(last),Down/upload segment0(c=0,seqno=0),Down/upload segment0(c=0,seqno=1),Down/upload segment0(c=0,seqno=n),Confirm block,Down/upload segment0(c=0,seqno=0),Down/upload segment0(c=0,seqno=1),Down/upload segment0(c=1,seqno=n),Confirm block,CANopen通信对象,SDO 报文格式:,SDO 请求报文:,SDO 响应报文:,CANopen通信对象,SDO请求码:,SDO响应码:,The End,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号