CANopen教程PPT学习课件_第1页
CANopen教程PPT学习课件_第2页
CANopen教程PPT学习课件_第3页
CANopen教程PPT学习课件_第4页
CANopen教程PPT学习课件_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、CANopen概述,CANopen协议中包含了标准的应用层规范和通信规范。在CANopen的应用层,设备间通过相互交换通信对象进行通信。CANopen规范的核心是CANopen的设备模型和各类型的通信对象。一个CANopen设备模块可分为3部分,如图:,1,2,问题,一、地址编码方式二、通信方式三、主/从节点通信机制四、状态机五、仲裁机制六、差分传输七、CANopen与DeviceNet区别,3,一、地址编码方式,为了减小简单网络的组态工作量,CANopen定义了强制性的缺省标识符(CAN-ID)分配表。这些标志符在预操作状态下可用,通过动态分配还可修改他们。缺省ID分配表是基于11位CANI

2、D,包含一个4位的功能码部分和一个7位的节点ID(Node-ID)部分。其中的7位部分即为网络中设备的节点地址。,4,一、地址编码方式,一个网段上最多支持127个节点Node-ID范围是1127(0不允许被使用)。如过要使用网络配置工具通过通讯的方式来设定CANopen设备的NODE-ID,就要使用LSS协议。大多数的终端设备(非gateway等)都使用自己的参数群或是的拨码开关来设定NODE-ID。,5,二、通信方式,根据通信对象功能,通信关系可分为以下3类:主/从关系可以对应NMTSYNC节点保护等一对多,一唯一,可以有应答,也可以没有。客户机/服务器可以对应SDO一对一,带应答。生产者/

3、消费者可以对应PDOHeartbeat等,一对多,一不唯一,没有应答。,6,二、通信方式,CANopen网络通信和管理是通过不同的通信对象来完成的。CANopen协议定义了四种通信对象,分别为过程数据对象PDO(ProcessDataObject)、服务数据对象SDO(ServiceDataObject)、网络管理对象NMT(NetWorkManagementObject)、预定义报文或者特殊功能对象。一个CANopen设备必须支持一定数量的网络管理服务,需要至少一个SDO,每个生产或消费过程数据的设备需要至少一个PDO,所有其它的通信对象是可选的。,7,(1)PDO过程数据对象,功能:用来传

4、输8字节或更少数据(数据内容已预先定义)用于实时传输数据通讯方式:生产者/消费者3种消息触发模式:事件触发模式(一个对象特定事件出现而触发)时间触发模式(如:一规定时间内无事件发生)远程请求触发(接受到任何其他设备发出的一个远程请求),8,(2)SDO服务数据对象,功能:主要用于主节点对从节点的参数配置。用来在设备之间传输大的低优先级数据,典型的是来配置CANopen网络上的设备。通讯方式:客户机/服务器它用于访问对象字典的入口。对CANopen对象进行读写。读/写操作一般由客户端初始化,由服务器服务。,9,(3)NMT网络管理对象,提供网络管理(如初始化、启动和停止节点,侦测失效节点)服务。

5、网络管理中,同一个网络中只允许有一个主节点、一个或多个从节点,并遵循主从模式。有一个节点专门作为NMT管理者(NMT主节点)主节点向从节点发送的NMT命令结构。如果节点ID是0表示命令会被广播至所有从节点任何NMT从设备在上电时都必须主动报告自己上电信息,便于NMT主设备进行管理。,10,(4)特殊功能对象,同步对象紧急对象时间标记对象,11,同步对象,功能:由同步生产者向网络进行周期性的广播,该对象提供基本的网络时钟通信方式:生产者/消费者模式,12,紧急对象,通信方式:生产者n/消费者1功能:网络中的节点检测到硬件或软件的错误可以将其通过紧急对象通知其他节点。CANopen错误包含两类错误

6、:通信错误和应用错误,13,时间标记对象,通信方式:生产者/消费者模式功能:为应用设备提供公共的时间帧参考。,14,三、主/从节点通信机制,主节点与从节之间的主要区别在于主节点具有管理报文(NMT)以及服务数据客户端(client)等功能,有了这些功能,主节点就可以管理CANopen网络。对于开发主节点和从节点设备来说有着较大的区别,主节点主要负责整个网络的管理并且能加载所有节点的EDS(ElectronicDataSheet)文件,例如主节点可以管理任意一个从节点进入特定的工作状态、配置从节点的参数、完成与从节点的数据交换等功能。从网络结构来说从节点属于被动设备,受主站管理,从节点只需要支持

7、PDO、SDO服务器、预定义或特殊功能对象。关于COB-ID,不论是主发给从,还是从发给主的消息,COB-ID都是从站的NODE_ID号,15,CANopen网络中两种组网方式,(1)CANopen网络中,需要一个CANopen主节点设备和至少一个CANopen从节点设备;(2)CANopen网络中,至少需要两个CANopen从节点,由于CANopen可以支持点对点的工作方式,即对CANopen从节点配置正确的情况下,CANopen网络中没有主节点,从节点与从节点之间也能够建立通信并完成实时数据的交换过程。对于第一种组网方式需要一个CANopen主站,现阶段能提供的CANopen主站有很多种可

8、以选择,例如工业电脑、PLC、工控主机等。主站的开发方式可以选择带CANopenAPI函数的主站卡、带OPC服务器的主站卡或者带CANopen主节点的PLC。,16,对于一个现有的CANopen网络,由于功能上的需求,需要把不具有CANopen协议的串行设备(如RS232/RS485等设备)添加到CANopen网络,这种情况下就需要用到网关设备(不同协议的转换设备),17,(1楼)一个CANBUS网络,有一个“主结点”负责和上位机交换其下的8个“从结点”的数据。8个“从结点”包括:DI结点,DO结点,AI结点,AO结点。我认为:1、DI结点和AI结点,只要结点自身检测到数据发生变化,就主动向“

9、主结点”发送报文,无需主结点定时发送。但是他们认为,DI和AI不仅可以主动向“主结点”发送报文,同时“主结点”还需要定时向DI、AI结点申请数据。2.AO和DO结点需要“主结点”定时发送数据,用于更新DO和AO结点的数据。,CANBUS网络有关“主结点”和“从结点”之间通讯的问题(DND网站),18,(2楼)1.要结合网络节点数据吞吐量来看,DI、AI变化发送(触发)方式实时性好,而且比主节点定时查询方式占用网络资源少,缺点是万一触发发送失败,没有第二次机会让主节点知道变化,只能等到下一次变化,而且触发发送还有个变化多大幅度才触发发送的问题,幅度小了可能是场数据灾难,大了可能灵敏度有下降。定时

10、申请数据的查询方式优点就是触发的缺点,缺点也就是触发的优点。两种方式结合着来,一般AI采用查询方式,DI就要综合考虑了。2.AO和DO一般采用触发方式,19,(3楼)总结一下:主结点定时每隔2毫秒访问一个结点,假如:主结点上挂接有4个结点,分别为DI、DO、AI、AO,则再次访问一个结点需要8毫秒的时间。(1)、AI主结点定时每隔8毫秒读取AI结点的数据(2)、AO主结点定时每隔8毫秒给AO结点发送输出数据(3)、DO主结点定时每隔8毫秒给DO结点发送输出数据(4)、DI主结点定时每隔8毫秒读取DI结点的数据同时DI结点自身发生变化时,会定时每隔1毫秒给主结点“主动”的发送数据。(4楼)你没有

11、利用到CAN总线的冲突检测机制,主节点定时查询是可以广播的,每个从节点收到查询广播就可以上传数据,而不会引起冲突,这个和485是有区别的。你这种做法只是把CAN当成了高速485.DI的1ms主动发送数据也是不科学的,除非是高速DI,一般PLC的DI都有1ms的防抖滤波。,20,四、状态机,(1)一个从节点可以实现一个NMT状态机,NMT状态机如下图:,21,四、状态机,该状态机将在上电复位后自动运行,进入预运行状态,通过SDO配置参数,但不可以实现PDO通信。NMT主节点可以控制所有的从节点进入“运行状态”。在“运行状态”PDO的通信才被允许。如果一个节点被转换到“停止状态”,那么它将不能实现

12、PDO和SDO通信,但可以执行NMT命令。,22,四、状态机,网络的启动过程一般是系统初始化-辨识设备-网络配置-切换到运行态,23,四、状态机,(2)紧急对象的状态机如图:0:上电后自动进入无错误状态1:紧急对象产生后进入有错误状态2:一个错误被更正,但非全部错误3:产生新的错误4:所有的错误被改正,24,五、仲裁机制,(1)只要总线空闲,任何单元都可以开始发送报文,如果两个或两个以上的单元同时开始传送报文,那么就会有总线访问冲突。通过使用了标识符的逐位仲裁可以解决这个冲突。仲裁的机制确保了报文和时间均不损失。当具有相同标识符的数据帧和远程帧同时发送时,数据帧优先与远程帧。在仲裁期间,每一个

13、发送器都对发送位的电平与被监控的总线电平进行比较。如果电平相同,则这个单元可以继续发送。如果发送的是一“隐性”电平而监视到的是一“显性”电平,那么这个单元就失去了仲裁,必须退出发送状态。,25,五、仲裁机制,(2)网络中的节点检测到硬件或软件的错误可将其通过紧急对象通知其它节点。内部的任何错误都将被编码为定义好的错误代码传送给其他节点,如果错误全部被纠正,则节点将发送一个带有代码“无错误”的报文。,26,六、差分传输,CAN总线采用差分信号传输,通常情况下只需要两根信号线(CAN-H和CAN-L)就可以进行正常的通信。在干扰比较强的场合,还需要用到屏蔽地即CAN-G(主要功能是屏蔽干扰信号),

14、CAN协议推荐用户使用屏蔽双绞线作为CAN总线的传输线。在隐性状态下,CAN-H与CAN-L的输入差分电压为0V(最大不超过0.5V),共模输入电压为2.5V。在显性状态下,CAN-H与CAN-L的输入差分电压为2V(最小不小于0.9V),如图1所示。,27,七、CANopen与DeviceNet区别,1.传输距离CANopen网络可实现远距离传输(10km),工作速率可调(1Mb/s通讯速率5kb/s)。DeviceNet最大传输距离为500m。因此,在实际应用中,要考虑到传输距离的限制而选择总线协议。,28,七、CANopen与DeviceNet区别,2.标识符分配CANopen支持CAN

15、2.0A11位和CAN2.0B29位标识符,而且报文的优先级只能通过它的大小来区分,通常节点地址比较小的COB-ID报文的优先级最高。如果要传送需要快速响应的事件,则要通过预定义和特殊功能对象,如同步(SYNC),时间标记对象(timestamp),紧急事件(emergency),PDO用来传输实时数据,优先级大于SDO,因为SDO的数据量大,通常用于设备初始化组态。而DeviceNET只用了CAN2.0A的11位标识符去分组定义报文的优先级,这种信息组设计方法使总线优先级可任意分布,而不仅和节点地址有关,还取决于它是I/O还是显示报文,报文的组号等。,29,七、CANopen与DeviceN

16、et区别,3.初始化组态不同,30,七、CANopen与DeviceNet区别,4.应用领域CANopen不仅可以用在远距离的通信系统中,还可以用在像咖啡机、电子直线加速器、大型超市自动化、安全系统、注压机等系统中。DeviceNET比较适合应用在传感器设备、微型执行器设备等设备上。,31,七、CANopen与DeviceNet区别,CANopen与DeviceNet严格来说,其应用领域是不一样的,DeviceNet是专门针对中大型工业自动化及过程自动化系统而开发的,虽然厂商一直在强调DeviceNet是多么的快,不过一旦与位置控制,运动控制扯上关系,就目前DeviceNet的性能及实时性来说

17、,是远不够的。但CANopen协议一开始制定就是为了运动控制,伺服控制等需要高速,高实时性要求的系统而设计的,所以其数据传输的实时性很高,当然,实时性与数据容量是成反比的,实时性要高,自然数据传输量就要少,这样也会限制网络的大小。,32,七、CANopen与DeviceNet区别,5.现状DeviceNET的技术以及应用在国内外已经趋于成熟,CANopen协议在欧洲已经非常流行,但国内应用的还不多,有待进一步研究。本文来自:电子电路图()详细出处参考:,33,应用中要注意的一些问题,(1)在开发过程中不必要将CANopen协议中的各项内容都一一编写,只要根据应用的具体要求按照CANopen协议编写即

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论