




已阅读5页,还剩57页未读, 继续免费阅读
(通信与信息系统专业论文)基于canopen木料加工网络控制系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉理工大学硕士学位论文 摘要 随着工业的迅速发展,工业生产过程不断的复杂化也使得企业对生产过程 的自动化程度和生产信息集成度要求不断提高。在此背景下具有高可靠性的分 布式控制系统广受推崇,因此总线控制在工业控制领域迅速发展。 c a n 总线是一种具有高性价比,可靠,稳定的现场总线技术;首先c a n 总线 的纠错能力是其得到广泛应用的重要原因之一,其利用多种方法进行错误检测 如t 位填充错误检测等。其次c a n 总线的分布式控制可以使某些现场设备有一 定的自主性,不需要考虑设备信号的类型,它们之间就可以相互通信。另外其 应用层协议c a n o p e n 解决了不同功能的c a n 设备之间的通信问题,大大提高了 系统的兼容性和可扩展性。在本课题中c a n 总线为木料加工网络控制系统的机 床之间以及上位机监控软件之间提供数据交换的链路,使得木料加工网络控制 系统更加灵活。本文对木料加工生产系统的通信网络进行仔细研究,提出了基 于c a n 总线和c a n o p e n 协议的木料加工生产网络控制系统的整体设计方案。 首先,深入学习研究c a n 总线通信原理;在此基础之上对c a n 总线应用层 协议c a n o p e n 协议深入研究;详细研究了c a n o p e n 协议的基础协议d s 3 0 1 协议, 主要研究c a n o p e n 的通讯对象:过程数据对象( p d o ) ,服务数据对象( s d o ) 等。 在此之后,c a n o p e n 协议从节点的软硬平台的构建,主要涉及控制主芯片的选取, c a n 接口电路设计;s p i 接口设计,操作系统的选择,底层驱动的设计,为系统 软件部分的实现提供硬件平台。其次,木料加工网络控制系统的设计与实现。 其中c a n o p e n 主站是基于w i n d o w sx p 的一台p c 机作为监控节点,两个c a n o p e n 从节点主控制部分是基于a r m 7l p c 2 4 7 8 和pc o s - i i 实时操作系统,逻辑控制 由f p g a 芯片完成。主从站环境搭好以后,完成了移植性强的c a n o p e n 协议的 设计与实现,并将其嵌入到主从站软件系统中。然后,根据木料加工控制系统 的要求,对从站进行了应用任务设计及数据的处理,对主站编写了监控软件。 并且进行了c a n o p e n 控制网络节点间通信测试,对系统的性能进行了分析和评 估。测试结果表明,本文所构建的c a n o p e n 网络控制系统的网络延时约为2 3 m s , 能满足大多数工业控制的要求。 关键词:现场总线嵌入式系统c a n 总线c a n o p e n 协议 a b s t r a c t w i t ht h er a p i di n d u s t r i a ld e v e l o p m e n t ,t h ec o n t i n u o u sc o m p l i c a t i o no f i n d u s t r i a l p r o d u c t i o np r o c e s sa l s of o r c ec o m p a n i e st oc o n t i n u o u s l yi m p r o v et h er e q u i r e m e n t so f p r o d u c t i o np r o c e s sa u t o m a t i o na n dp r o d u c t i o ni n f o r m a t i o ni n t e g r a t i o n i nt h i sc o n t e x t , h i g h l yr e l i a b l ed i s t r i b u t e dc o n t r o ls y s t e mi sw i d e l yr e s p e c t e d ,s oc o n t r o lb u sd e v e l o p s r a p i d l yi nt h ef i e l do fi n d u s t r y c a nb u si sac o s t - e f f e c t i v e ,r e l i a b l ea n d e r r o rc o r r e c t i o nc a p a b i l i t yo ft h ec a nb u si s s t a b l ef i e l d b u st e c h n o l o g y ;f i r s t ,t h e o n ei m p o r t a n tr e a s o nf o ri t ! ;w i d e s p r e a d u s a g e ,i t su s eal o to fm e t h o d st od e t e c te r r o r ss u c ha s :b i ts t u f f i n ge r r o rd e t e c t i o n s e c o n d ,t h ed i s t r i b u t e dc o n t r o lo ft h ec a nb u sc a l lm a k es o m ef i e l dd e v i c e sh a v ea c e r t a l nd e g r e eo fa u t o n o m y ,d on o tn e e dt oc o n s i d e rt h et y p eo f t h ed e v i c es i g n a l a i l d t h e yc a nc o m m u n i c a t ew i t he a c ho t h e r a n o t h e ra p p l i c a t i o nl a y e rp r o t o c o lc a n o p e n s o l v et h ec o m m u n i c a t i o np r o b l e m sb e t w e e nt h e d i f f e r e n tf h n c t i o n so ft l l ec a n d e v l c e ,g r e a t l yi m p r o v i n gt h es y s t e mc o m p a t i b i l i t ya n d s c a l a b i l i t y i nt h i sp a p e r , a f t e r i n d e p t hs t u d yt h ec o m m u n i c a t i o nn e t w o r ko fw o o dp r o c e s s i n ga n dp r o d u c t i o n s y s t e m s ,p r o p o s e dw o o dp r o c e s s i n gn e t w o r kc o n t r o ls y s t e m so v e r a l ld e s i g nb a s e d o nc a nb u sa n dc a n o p e n p r o t o c 0 1 f i r s t ,i n - d e p t hs t u d yo ft h ec a nb u sc o m m u n i c a t i o nt h e o r y ;o nt h i sb a s i s ,s t u d v t h ea p p l i c a t i o nl a y e rp r o t o c o lf o rc a n b u sc a n o p e n p r o t o c o ld e e p l y ;u n d e r s t 2 m dt h e d e t a i lo ft h eb a s i cp r o t o c o lc a n o p e n p r o t o c o ld s 3 0 1p r o t o c 0 1 a 舭rt l l i s ,t h es l a v e n o d eh a r d w a r ed e s i g no fc a n o p e n ,m a i n l yr e l a t e d t oc o n 仰lt h ec h i ps e l e c t i o n , c a ni n t e r f a c ec i r c u i td e s i g n ,p r o v i d i n gt h eh a r d w a r e p l a t f o r mo ft h es y s t e ms o r 、愀 i m p l e m e n t a t i o n s e c o n d ,b u i l daw o o dp r o c e s s i n gn e t w o r kc o n t r o ls y s t e m so v e r a i l a r c h i t e c t u r e o n ec a n o p e nm a s t e rn o d ea s m o n i t o r i n gd e v i c ei sap cb a s e d w i n d o w sx p ,t w oc a n o p e ns l a v en o d e sa st h em a i nc o n l l p a r ti sb a s e do nt h e a r m 7l p c 2 4 7 8a n du c o s i i r e a l t i m eo p e r a t i n gs y s t e m ,a n dt h e nt h el o g i c c o n t r o lp a r ti s c o m p l e t e db yt h ef p g ac h i p a f t e rs e t t i n gu pt h ee n v i r o 啪e n to f m a s t e r s l a v e ,t h ec o m p l e t et h et r a n s p l a n ts t r o n gd e s i g na n di m p l e m e n t a t i o no f i l 武汉理工大学硕士学位论文 c a n o p e np r o t o c o l ,a n de m b e d d e di n t ot h em a s t e r s l a v es o f t w a r es y s t e m t h e n , a c c o r d i n gt ot h er e q u i r e m e n t so fp r o c e s sc o n t r o ls y s t e m so fw o o d ,d e s i g nt h et h e a p p l i c a t i o nt a s k sa n dd a t ap r o c e s s i n go fs l a v es t a t i o na n dp r e p a r eo ft h em a s t e rs t a t i o n m o n i t o r i n gs o f t w a r e a n dd ot h ec a n o p e nn o d ec o m m u n i c a t i o n st e s t ,a n a l y za n d e v a l u a t et h e s y s t e mp e r f o r m a n c e t e s tr e s u l t ss h o wt h a tt h en e t w o r kd e l a yo f c o n s t r u c t e dn e t w o r kc o n t r o ls y s t e m sb a s e do nc a n o p e ni sa b o u t2 3 m s ,w h i c h m e e tt h er e q u i r e m e n t so fm o s ti n d u s t r i a lc o n t r 0 1 k e y w o r d s :f i e l d b u s ,e m b e d d e ds y s t e m s ,c a nb u s ,c a n o p e np r o t o c o l i i i 武汉理工大学硕士学位论文 第1 章绪论 1 1 课题研究背景及意义 在工业控制领域,传统p l c 的缺点也逐渐暴露:传统p l c 的各生产厂家的 产品不相互兼容,缺少明确一致的标准,难以构建开放的硬件体系,技术专有 性很强。随着计算机技术和通讯技术的发展和工业生产过程也不断的复杂化使 得具有高可靠性的分布式控制系统广受推崇,因此以高性能的微控制器作为其 控制核心,以总线通信为纽带的基于嵌入式的工业网络控制系统得到了高速的 发展和广泛的应用。本课题以嵌入式系统和c a n 总线的方式实现工业木料加工 的网络控制系统。其特点有数据容量大,处理速度快,更具实时性和扩展性且 具有价格优势。 1 2c a n 总线及c a n o p e n 协议的优势分析 现场总线,一般是指安装在断续生产过程中或者连续生产过程中的区域现 场设备、仪器仪表与控制室内的自动控制装置或系统之间的一种串行、数字式、 多点、双向通信的数据总线。现场总线技术的特点有【l 】 2 1 : ( 1 ) 全数字化采用数字式通信的方法代替模拟量和开关信号量,由于数 字化信号的高精度、抗干扰能力强等特点可以更进一步提高了控制系统的可靠 性。 ( 2 ) 全分布式在某些现场设备中有一定的自主性,不需要考虑设备信号 的类型,它们之间可以相互通信,可以把不同的控制系统分散到相应的设备中, 从而可以不需要中央控制计算机,来达到真正的分布式控制。 ( 3 ) 节省布线空间和费用传统的控制系统需要接入中央控制系统,同时 中央控制系统也要装备相应的设备。而现场设备可以串行的连接到一条现场总 线上,大大减少了接入中央控制室的线缆,节约了布线空间和一定的费用。 ( 4 ) 兼容性由于它的开放性,就保证了不同设备厂商的设备可以相互兼 容,这样用户就可以灵活的选择不同的设备,避免了受生产厂家的影响。 除了上述基本特性外,c a n 总线采用了许多新技术和独特的设计思想, 武汉理工大学硕士学位论文 c a n 总线和其他的通信总线相比,c a n 总线具有更高的可靠性和实时性。其特 点有【3 】【4 】: ( 1 ) c a n 是目前为止具有国际标准协议的唯一现场总线。 ( 2 ) c a n 总线通过报文标识符将节点划分为不同的优先级,因此可以带 来更高的实时需求,最高优先级的数据报文最多可在1 3 4 1 x s 内传输完毕。 ( 3 ) c a n 采用非破坏总线仲裁技术。当多个节点同时向总线发送信息发 生冲突时,优先级较低的节点会主动的退出发送,而最高优先级的节点可不受 影响的继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载 很重的情况下,也不会出现网络瘫痪的情况( 以太网则可能) 。 ( 4 ) c a n 节点只需要通过对报文的标识符滤波即可实现点对点、点对 多点及全局广播等几种方式传送接收数据。c a n 的直接通信距离最远可达1 0 k i n ( 速率5 k b p s 以下) ;通信速率最高可达1 m b p s ( 此时通信距离最长为4 0 m ) 。 ( 5 ) 报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率 极低。c a n 的每帧信息都有c r c 校验及其他检错措施,具有极好的检错效果。 c a n 节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的 操作不受影响。 ( 6 ) c a n 通信介质可为双绞线、同轴电缆或光纤,选择灵活。c a n 总线 具有较高的性价比。 虽然,c a n 本身存在着一定的局限性,它是一个底层的协议规范,协议里 面只是详细的说明了物理层和数据链路层【5 6 1 1 7 1 。例如:c a n 的数据帧每次最多 只能发送小于等于8 字节的数据,不可以传送大于8 字节的数据帧,在现实的 应用中一般都是大量的数据传送,从而降低了传送效率;c a n 不能提供确认应 答的数据传送服务,只提供了非确认的数据传输等等【8 1 1 9 1 i 加】。但是基于c a n 总 线有很多高层应用协议,可以很好的解决上述的局限性问题。如1 9 9 3 年在德国 b o s c h 公司的组织下基于c a n 总线的应用层协议c a n o p e n 协议被设计与 提出。c a n o p e n 的核心是对象字典和多种通信方式。基于这一核心,该协议又 对多种行业设备制定了设备子协议。只要符合某个设备子协议的产品,就可以 相互通信。这样既能打破少数厂家的技术壁垒,又能使用户有更多的选择。 被c i a 认可的c a n 应用层协议还有很多,例如:s a e j l 9 3 9 、c a n k i n g d o m 、 d e v i c e n e t 等。s a e j l 9 3 9 协议在重型卡车内部控制系统方面应用较广泛,而且 用的是c a n 2 0 的扩展协议。因为在重型卡车系统内部遵循特殊的通信规范,对 2 武汉理工大学硕士学位论文 标识符重新定义,数据格式和数据类型等信息包含在数据报文中,所以此种设 计虽然有利于报文的解析但是却使通讯效率下降【l l 】f 1 2 】。d e v i c e n e t 与c a n o p e n 具有相似的对象字典结构,但是d e v i c e n e t 的定义比c a n o p e n 复杂很多也更为 严格,这使得节点设备的开发成本的上升【1 3 】【1 4 】。 在此比较之下,c a n o p e n 最具优势的是它是一个完全开放的协议,具有多 种传输速率和高度的灵活性,经过多年的发展,c a n o p e n 在各方面得到极大的 推广和应用,c a n o p e n 协议已经成为电梯控制,运动控制,船舶运输,医疗器 械等领域的通用标准。而且实现c a n o p e n 所需的运算量和代码量不算太大,很 适合用于嵌入式控制系统中使用。 1 3c a n 总线及c a n o p e n 国内外研究现状 c a n 总线最早是在2 0 世纪8 0 年代以解决不同的控制系统在汽车上使用而 产生的通信问题。事实上,首批c a n 是被用作控制单元的互相通信,这些系统 为了实现复杂的控制任务需要依靠数据的传输机制,在此之前这些系统是用专 业的控制线实现。随着这些设备的功能不断增多,复杂性也随之增加;因此所 需的控制电缆和连接器也大量增加,致使在众多汽车里面,控制线的数量逾越 了其物理极限n5 】【l 引。在此情况下,制造商开发出了c a n 总线以实现汽车内的复 杂控制任务。 c a n 总线可以单条电缆连接这些控制器件,以减少接头的数目数据不仅可 以在两个设备问自由交换而且在同一时间可以到达多个设备。这是设计c a n 总 线的基本思想。这个想法很快从汽车行业转移到机械控制领域。现在c a n 已经 渗入到多个行业例如农业机械升降机控制,医学电子器械和工业自动化。随着 c a n 的广泛应用,许多知名半导体制造商都涉及c a n 技术以及生产c a n 设备 使c a n 半导体的价格不断下降进而保证了c a n 技术的未来发展前景【1 7 】【18 1 。 随着c a n 总线的广泛应用,应用需求也越来越复杂使得推进了c a n 总线 高层应用协议的发展。目前c a n o p e n 协议已经成为一种新型的工业化现场总线 标准,在它发布5 年后就很快成为欧洲最重要的、应用最广泛的嵌入式网络标 准。在欧洲和一些工业发达的地区和国家,c a n o p e n 协议已经被认为是在基于 c a n 的工业系统中占领导地位的标准。而且c a n o p e n 应用层协议在国外已经得 到广泛应用,并受到足够的重视。c a n o p e n 协议在欧洲已经在医疗装置中得到 广泛应用,并且逐渐向安保控制系统迈进:一些公司和一些工厂自动化控制系 3 武汉理工大学硕士学位论文 系统也是大部分都采用c a n o p e n 协议来设计的,比如:无人驾驶系统、半导体 生产系统以及日常的家具生产都得到了广泛的应用;在美国,c a n o p e n 应用层 协议成为工业化控制系统的标准,在公共运输设备和装载机械中已经得到应用, 同时,美国的铁路系统,比如拉斯维加斯的单轨铁路系统、单向控制铁路系统 中都应经应用了c a n o p e n 高层协议;不仅如此,它还被广泛的应用到专业的交 通工具,智能建筑等等,比如:电车、船舶、地铁、电梯;同样,在医疗设备、 航海航空系统、实验室设备和饭店都广泛的应用了c a n o p e n 高层协议【l 9 1 。 c a n o p e n 的最重要的一个应用领域就是智能机器的嵌入式控制系统,在大型设 备中,比如:包装机、印刷机、注塑机等内部嵌入式网络都已经得到了很好的 实现。现阶段,国外有些机构最新的研究是把c a n o p e n 与无线传输,构建无线 传感网络作为研究目标【2 0 1 1 2 1 】【2 2 1 。由此可以看出,在欧洲一些发达国家和地区, c a n o p e n 技术已经得到了广泛的应用并且具有宽广的应用前景。 就目前国内的情况来说,国内有比较多的c a n 的基本应用,c a n 相对于传 统的4 8 5 通信协议而言,c a n 总线相对于它们具有更高的传输效率和更强的抗 干扰的能力。因此,国内大部分的采用c a n 总线控制系统来取代4 8 5 通信协议, 但是国内的基于c a n 总线的研究只是停留在怎样利用c a n 控制系统来完善现 场总线控制系统1 2 3 j 1 2 4 1 。而关于c a n 总线的应用层协议的研究就要少很多。 c a n o p e n 作为c a n 的高层应用协议,就相对来说更少。关于c a n o p e n 的研究 一般都是采用国外的商业控制系统或是仿真软件,只是概述如何使用这些节点, 而不是如何设计一个c a n o p e n 节点。中国单片机公共实验室从1 9 9 9 年开始研 究c a n o p e n 协议和s a e j l 9 3 9 标准。但是,在国内,除了中国单片机公共实验 室之外,很少再有其他机构进行深入的研究。在大学研究所中,也仅仅只有北 京工业大学和天津大学在这方面有相应的贡献口5 1 2 6 1 1 2 7 1 。 1 4 主要研究内容 本课题的研究任务是设计一套可移植性强c a n o p e n 网络控制系统,并应用 到木料加工项目上。经过充分调试及检测,最终得到一套运行稳定的c a n o p e n 网络控制系统。研究内容主要由以下几点: ( 1 ) c a n o p e n 协议的分析。我们主要是对c a n o p e n 协议文件d s 3 0 1 的研 究,理解c a n o p e n 的核心原理。 ( 2 ) 木料加工项目整体架构设计及系统从站开发环境的构建。 4 武汉理工大学硕士学位论文 ( 3 ) c a n o p e n 协议栈的开发,完成n m t ,p d o ,s d o ,s y n c 等基本功 能模块。 ( 4 ) 木料加工项目的任务的设计。在a r m 部分要接收到从s p i ,c a n , 串口传来的控制信息,其要对进行一定的处理,所以要在r t c o s i i 中进行任务 设计和数据处理代码的编写。 ( 5 ) 系统测试及性能分析。 5 武汉理工大学硕士学位论文 第2 章c a n 总线及c a n o p e n 协议原理分析 2 1c a n 总线原理 c a n 是一种多主串行通信总线,通信介质可以是双绞线、同轴电缆或光导 纤维,通信速率最高可达1 m b i t s 。c a n 总线上的任意节点均可在任何时刻向其 他节点发送数据,数据帧中的标识域( i d ,i d e n t i f i e r ) 决定了帧的优先级,优先 级越高,获取总线的访问权越快【2 8 】【2 9 】。这种简单的传输方式很大程度上降低了 系统的开发难度和开销。与i s o o s i 参考模型相比,c a ns p e c i f i c a t i o n2 0 技术 规范仅定义了物理层和数据链路层,其他部分的实现由用户定义。 2 1 1c a n 总线物理层 物理层( p h y s i c a ll a y e r ) 定义了信号在线缆中的传输方式,包括位定时、位 编码解码、同步等。c a n 总线的物理传输介质通常采用双绞线,根据两根线之 间的差分电压的极性,双绞线中的一根称为c a nh ,另一根称为c a nl t 3 0 】。 典型的c a n 总线网络如图2 1 所示,总线两端为两个终端电阻,用于抑制反射 回波。 图2 1c a n 网络结构图 c a n 总线有两种状态:“显性”( d o m i n a n t ) 和“隐性”( r e c e s s i v e ) ,分别用 6 武汉理工大学硕士学位论文 逻辑“0 ”和逻辑“l ”表示。在逻辑上,c a n 总线具有“线与”特性:挂载在c a n 总 线内的任何一个节点发出一个显性位( 0 ) 则整个c a n 网络此时显示为显性状 态,只有当c a n 总线上所有节点都发送的为隐性位( 1 ) 时,这是c a n 总线才 显示为隐性状态。在隐性状态下,c a nl 和c a nh 都处于2 5 v ,而在显性状 态下,c a n l 被拉低1 v ,c a nh 被提升1 v 。因此,c a nl 和c a nh 之间 有2 v 的差压,分别为1 5 v 和3 5 v f 3 1 】【3 2 1 如图2 2 所示。此种特性常常被用于冲 突检测:若一个c a n 节点发送的是隐性信号而读回的是显性状态则表明有冲突 发生,此时便启动相应的恢复动作。 图2 2c a n 总线电平信号示意图 c a n 总线采用位填充机制和二进制不归零( n r z ) 编码方式来保证位同步 并获取最大的传输效率f 3 3 】。在发送端每5 个相同极性的位后插入一个相反极性 的位,比如5 个连续的“1 ”后插入一位“0 ;接收端在译码时自动去除填充 位后进行数据处理。同时,c a n 通讯在总线上的所有节点之间建立位同步。这 样,当两个报文同时发出,发生竞争总线现象时,由于位同步的存在,低优先 级报文的发送节点可在位时间内获得总线竞争失败的消息,从而让更高优先级 的报文获得无冲突的传输,从而保证了优先传输高优先级报文,但是也限制了 c a n 总线网络的最大传输速率瞰】。因为位同步,单比特数据位在c a n 总线上 的生存时间就必须大于c a n 总线上距离最远的不同节点间的传输延时。从而, c a n 总线的传输速率与c a n 总线的长度有关。 2 1 2c a n 总线数据链路层 数据链路层( d a t al i n kl a y e r ) 分为两个子层:介质访问控制子层( m a c , 7 武汉理工大学硕士学位论文 m e d i u ma c c e s sc o n t r 0 1 ) 和逻辑链路控制子层( l l c ,l o g i c a ll i n kc o n t r 0 1 ) 。 m a c 子层负责报文分帧、编码、仲裁、应答、错误检测和标定,并决定哪个节 点获取总线的控制权。l l c 子层涉及报文滤波、过载通知和恢复管理。 2 1 2 1c a n 帧结构 为了识别c a n 总线上的传输信息,必须固定的格式来打包或封装这些信息。 通常用“帧”来表示这些格式。c a n 总线上传输的帧共有4 种类型:数据帧,远 程帧,错误帧,超载帧。每一个帧都由多个域组成,每个域由位或多位组成。 下面主要介绍数据帧结构,一个标准格式的数据帧的组成,如图2 3 所示。 帧起始( s o f ) 用来指示一个数据帧或远程帧的开始。s o f 包含一个确定的 显性位,出现在总线的隐性到显性的脉冲下降沿可用于同步c a n 网络中的其他 节点设备。 标识符段在标准数据帧格式中由1 1 位组成,用于表示确定的待传输消息, 其数值也作为带传输消息的优先级。因此,用户在设定帧的标识符时,必须根 据系统中消息的重要性来设置其标识符的数值。 吲m 卜 r 1 i 如fd 3 l d 2 i d l id o 驯0-64 1 5 释im 1 i 7r 图2 3 标准数据帧格式 远程请求传输位( i 玎r ) ,用来区分数据帧和远程帧,当r t r 为显性位时, 表示传输数据帧;当r t r 为隐性时,表示传输远程帧。 8 武汉理工大学硕士学位论文 控制段由6 位组成,包括保留位r 1 ,r o 以及4 位表示数据长度( d l c ) ,d l c 表示此帧在数据段中的传输字节。通常d l c 的范围为l 8 ,当d l c 的值大于8 时,该值也可以在总线上传输,但此帧在数据段中的传输字数仍然会被限制在8 字节。 c r c 段( 循环冗余校验) ,有1 5 位c r c 序列和1 位c r c 界定符组成。接 收器可以利用c r c 序列来识别是否接收了错误的数据。 应答段( a c k ) 由一个应答间隙和一个应答界定符组成。发送器在应答间 隙位传输一个隐性电平;在正确接收了完整的消息之后,接收器发送一个显性 电平以进行确认。当应答间隙位的电平值呈现隐性电平时可以用来提示本网络 中没有接收器正确接收到了当前发送的消息,当应答间隙位的电平值呈现显性 电平时可以表示至少有一个接收器正确接收了当前发送的消息。因此,应答机 制只可以用来检测网络的消息响应故障,但不能用来发送错误帧。 帧结束段( e o f ) 由7 个隐性电平的位组成。在传输e o f 段的过程中,网 络中的接收器还有发出错误帧的最后一次机会。e o f 段之后必须插入一个帧空 间( i t m ) ,i t m 之后才能开始传输下一个帧。i t m 空间由3 个隐性电平组成, 已不属于前一帧。i t m 空间,网络中的发送器可以发送过载帧,以增加i t m 的 时间,延迟其他节点发送下一帧。 2 1 2 2 总线仲裁 当两个或多个节点在同一时间发送数据时,c a n 总线进行介质访问控制避 免冲突。c a n 总线采用载波监听多路访问冲突避免( c s m 们a ) 机制,其与以 太网c s m a c d 机制区别在于c a n 总线使用标识符的优先级来解决冲突。c a n 总线使用“无损逐位仲裁算法 来决定哪个节点获得总线的访问权。总线仲裁 过程如下: 发送器将帧消息的各个位序列依次传送到总线上,从而传输一条c a n 帧。 同时,发送器逐位监听来自总线的位消息,并将接收电平与发送电平进行比较。 当发送器发现两者有差异时( 如隐性发送,显性接收) ,就会立即退出发送模式, 切换到接收模式。如果在标识符传输过程中识别出位电平的差异,则肯定是因 为网络中有另一个c a n 控制器正在传输一条标识符优先级较高的帧信息。当多 个c a n 控制器同时开始传输各自的帧信息,标识符较高的帧信息将被首选发送, 如图2 4 所示。 9 武汉理工大学硕士学位论文 节点1 | 。i965432。io 蜀 控制段 数据段 8i7 刃 f o c 卜i d = 0 x 晒3 訇 ) 节点1 获得仲裁节点2 。丢失”j仲裁 f梢 f l o i9 6 5 432lo 一 节点2 o 8i7 t 喝 c 卜i d = 0 x 啪 一一u、 f , 仲裁段 、 _ 一 、厂、 。 f 总线电平 jl i 一一 乌11 0 。98 l765 4 13 2 lo 蜀 习 llf 图2 4c a n 总线仲裁示意图 2 1 2 3c a n 总线错误的检测和处理 c a n 总线最突出的特点就是错误的检测,限制和处理。c a n 在协议中实现 了比较完善的错误处理机制可以确保识别出所有的总线错误。大部分的错误处 理方法都是直接由c a n 控制器的硬件完成,所以一般情况下不需要应用层介入 其中。 c a n 总线上的错误类型大致可分为两类:( 1 ) 总线传输错误( 2 ) 节点校验 错误。然而c a n 对错误报文一般的处理方法是发现错误的节点发送错误帧,然 后发送节点再发送一次之前的报文。下面详细介绍c a n 总线对错误的检测和处 理【3 5 l : ( 1 ) 总线传输错误 若在仲裁域期间,发送节点发送的是显性位,而发送节点本身检测到 总线的状态时隐性电平时,或在仲裁域之外报文发送的过程中,发送节点检测 到总线状态与发送位不相同时,则表示有错误,发送节点就会发送出错误帧。 若接收节点在接收到c r c 域时对报文进行c i 配计算,并将计算结果 将发送过来的c r c 域相比较,发现有差异则表示校验出错,接收节点会发送错 误帧。 ( 2 ) 节点校验错误 若接收节点本身在校验环节自己出错而不是报文在传输中出错,c a n 总线 的处理方法是c a n 协议中定义了错误计数器,当节点检测到错误或发送错误帧 时,会使错误计数器的值增加,当错误计数器超过一定阀值后,就判定该节点 1 0 性 性 性 性 性 性 黜 跳 跳 跳 胜 跳 武汉理工大学硕士学位论文 本身有问题,出现校验错误,该节点就会自动退出或重启而不会影响其他节点 的正常工作。 在c a n 总线中,所有接收节点( 除发送节点以外的所有节点) 无论是否要 对报文进行接收都要对总线上的报文进行c r c 校验,所以c a n 总线上的节点 越多,就会检测到错误的机率就越大,c a n 总线的可靠性就越高。 2 2c a n o p e n 协议分析6 3 c a n 协议只实现了物理层和数据链路层,c a n 的数据链路层能提供用于传 输和请求服务的数据单元的长度少于8 字节。在最开始的c a n 网络应用领域这 些服务是足够的,但随着技术的发展在分布式系统中,要求的功能更复杂更多, 所以必须实现更高层协议。c a n o p e n 协议是由一系列基于c a n 参考模型的子协 议组成,其主要分为两类: ( 1 ) 设备规范:定义了一种类型设备如何利用c a n o p e n 通信协议中的对 象在c a n 总线上进行通信并达到要求。就目前情况而言,只有少部分的设备具 有标准的设备子协议:通用i o 模块( d s 4 0 1 ) ,人及交互界面( d s 4 0 3 ) ,可编 程设备( d s 4 0 5 ) 等。 ( 2 ) 通信规范:即d s 3 0 1 ,其是c a n 和c a n o p e n 设备协议之间的标准接 口,它定义了两个设备之间的通信方式以及配置方法。通信子协议d s 3 0 1 适用 于所有设备,c a n o p e n 网络中所有的设备都必须以它为基础才能进行正常通信。 一个c a n o p e n 设备基本模型包含通信单元,应用过程和对象字典。通信单 元由c a n 收发器,c a n 控制器和c a n o p e n 协议栈组成。协议栈中包含通信对 象( p d o ,s d o ) 和状态机。通信单元提供数据传输所需要的所有机制和通信 对象,符合c a n o p e n 规范的数据可以利用这些机制通过c a n 接口进行通信。 对象字典是应用单元与通信单元之间的接口,实际上是设备的所有参数列表。 4b i t7b i t 1 0 i 9 l 8 i 76 i 5 l 4 l 3 i2 | ll o 、 功能码 7 j 了点号 7 f u n c t i o dc o d e n o d ei d 图2 5 c o b i d l l 武汉理工大学硕士学位论文 为了简化c a n o p e n 网络的配置工作,尤其是对于简单网络,c a n o p e n 协议 预定义了一组c a n 标识符的分配方案:预定义连接集。预定义连接集对c a n 标 准帧的1 l 位标识符进行了划分,如图2 ,5 所示,前4 位为功能码,后7 位为节 点号,因此,c a n o p e n 网络中最多支持1 2 7 个节点。不同的功能码对应不同的 通信对象,节点i d 由系统设计者提供,其范围是1 - 1 2 7 。c a n o p e n 网络中每个 基点默认的有8 个p d o 即:4 个t p o d 和4 个r p d o 。预定义连接集定义了4 个接收p d o ( r p d o ) ,4 个发送p d o ( t p d o ) ,1 个s d o ( 发送和接收) ,1 个 紧急报文对象和1 个节点错误控制对象,具体设定如表2 1 所示: 表2 1 功能码的定义 p d o 1 ( t x r x ) 对象n m ts y n ct d 旺e m c y s d o ( t x r x ) n m te i t o r p d 0 4 ( t x r x ) 功能码 0 0 0 00 0 0 10 0 1 00 0 0 10 0 1 1 1 0 1 01 0 1 1 1 1 0 01 1 1 0 在c a n o p e n 网络中的节点有主从之分,一个网络中一般只有一个主节点, 一个或多个从节点。其中主节点负责对从节点状态的控制,监视从节点的运行 状况,还可以通过s d o 通讯对象对从节点对象字典的参数进行读取和修改。而 从节点主要负责底层的c a n o p e n 通讯和任务控制,通过p d o 进行实时数据的 传输,响应主节点发送过来的信息帧从而对自己负责的底层设备进行数据采集 或控制。下面几个小节主要针对c a n o p e n 的一些通讯对象和对象字典做一个详 细的阐述。 2 2 1 过程数据对象p d o 在c a n o p e n 中,过程数据对象p d o 是用来传输实时数据,其优先级由对 应的c a n 标识符决定。过程数据对象分接收过程数据对象( r p d o ) 和发送过 程数据对象( t p d o ) ,r p d o 和t p d o 是相对的,其一般是通过特定的节点的 角度进行描述的。如:发送节点通过t p d o 发送它的实时数据,但对于接收这 个t p d o 的节点来说,此t p d o 就是接收节点的r p d o 。p d o 采用生产者消费 者的通信模式,生产者发送一个p d o ,可以后一个或多个消费者接收。有两种 重要参数描述来每个p d o 对象:通信参数和映射参数。其过程如图2 6 所示: 1 2 武汉理工大学硕士学位论文 对象字典 p d o x 寸象 - - ( c o b i d ) ( 传输类型) ( 禁止时间) c o b _ i dld a t a lld a t a 2 1 l d a t a 8 图2 - 6p d o 通信参数和映射参数 其中通信参数用来描述p d o 的特性,通信参数按照由1 6 位主索引和8 位 子索引的组成的地址保存在对象字典中。每个过程数据对象都必须有一个对应 的通信参数,其包含5 个子条目:c o b i d ,传输类型,禁止时间,事件计时器 和同步初始值;c o b i d 和传输类型两个参数是必选项,其余3 个参数是可选项。 p d o 映射参数利用索引和子索引表示包含p d o 过程数据指针。 p d o 映射参数的子索引0 0 h 表示的是映射对象的个数,一个p d o 映射参数 集最多可以映射8 字节数据或6 4 个逐位映射的位变量。由于一个p d o 使用唯 一一个c a n 数据帧,所以其映射的实际数据的最大长度不能超过8 字节。通常 为了把p d o 的映射数据限制在8 字节内,会把一些位变量打包到一个字节之上, 这样除了条目比较清晰,还可以提高p d o 的通信效率。 p d o 有两种传输类型:异步传输和同步传输;三种触发模式:事件触发, 定时器触发,远程请求。其中p d o 异步传输模式是通过远程帧请求或内部事件 触发,而p d o 同步传输模式通过同步对象s y n c 来实现,当节点收到一个或多 个s y n c 帧,就会在预定义的同步时间窗口内发送一个或多个p d o ,如图2 7 所示。 l 同步发送g k 、 同步窗口长度 c v n r 氆1 、- l -il ”“9 、i 一 i- o | 苎塑 - l 图2 7 同步p d o 发送过程 时问 1 2 址址地地 口口 入入 引引 索索子子 l 2 引引 索声 武汉理工大学硕士学位论文 2 2 2 服务数据对象s d o 服务数据对象的主要功能有访问节点的对象字典以实现节点参数的修改配 置,大文件传输等。s d o 使用c i l e n t s e r v e r 模式,其中称为服务器端是对象字 典被访问的节点,称为客户端的是发送数据请求的节点。s d o 之间的数据交换 通常是由客户端发起的,上传数据是指客户端读取服务器的数据而下载数据是 指客户端向服务器端写数据。s d o 之间的数据交换至少需要两个c a n 报文才能 实现,因为s d o 是有报文的确认。s d o 有三种传输模式【2 4 j : ( 1 ) 加速s d o 传输:只有在传输数据不超过4 字节的情况下,数据才不 经过分段进行加速s d o 传输。加速s d o 传输模式适合对象字典中的大多数对 象,因为这些对象的数据大小都在4 字节以内,因此整个加速s d o 传输过程只 需要两条c a n 报文即可。s d o 客户端在写数据阶段会发送一个c a n 报文,其 中含有占1 字节空间协议信息,占3 字节空间的对象字典项的索引和子索引以 及l 至4 字节的有效数据。写操作成功后会得到确认。如果写操作是通过s d o 客户端的请求触发的,则c a n 报文就只包含协议信息和目标相的索引和子索引, 读取
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 注水泵工岗位实习报告
- 钻井协作工公司招聘笔试题库及答案
- 材料检查工安全教育培训手册
- 小学生课件安全内容
- 混合气生产工公司招聘笔试题库及答案
- 烧结球团原料工职业技能模拟试卷含答案
- 通信接入设备装调工基础技能培训手册
- 草坪园艺师职业技能模拟试卷含答案
- 磨具制造工职业技能鉴定经典试题含答案
- 工业气体液化工职业技能模拟试卷含答案
- DB22T 2840-2017 儿童多发性抽动症中医诊疗技术规范
- 220KV变电站施工材料采购方案
- 精益生产改善培训
- 传热学典型简答题
- 大学生心理健康教育(兰州大学版)学习通超星期末考试答案章节答案2024年
- 统计学数据的图表展示(共133张课件)
- 医院培训课件:《静脉中等长度导管临床应用专家共识》
- 2024年新北师大版八年级上册物理全册教学课件(新版教材)
- GB/T 44208-2024馆藏文物病害描述及图示基础要素
- 自来水公司初级试题
- 中国共产党支部工作条例
评论
0/150
提交评论