《基于CAN的工业控制网络节点实时性仿真研究毕业设计(论文).doc》由会员分享,可在线阅读,更多相关《基于CAN的工业控制网络节点实时性仿真研究毕业设计(论文).doc(50页珍藏版)》请在三一办公上搜索。
1、计算机科学与技术学院毕业设计(论文)论文题目基于CAN的工业控制网络节点实时性仿真研究指导教师汪琳霞职称副教授学生姓名刘强学号20104360130专业网络工程班级本10网络01班系主任谢卫星院长谭敏生起止时间2013年10月11日至2014年5月23日2014年5月23日目 录摘要IAbstract:II第一章绪论11.1 CAN总线的发展及现状11.2课题的提出及意义21.3 CAN总线的研究动态3第二章 CAN总线通信协议4 2.1 CAN总线简介42.2 CAN总线的特点与起源52.2.1 CAN总线的特点52.2.2 CAN总线的起源52.3 CAN总线的主要特性如下62.4 CAN
2、 总线技术的局限性62.5 CAN总线帧格式72.5.1数据帧72.5.2错误帧82.5.3超载帧82.5.4远程帧82.5.5帧间空间9第三章基于CAN总线的实时性分析和改进103.1本章概述103.2 CAN总线MAC层运行机理103.3 CAN总线的实时性分析113.3.1访问方式113.3.2 CAN总线实时性问题的提出123.3.3 CAN的实时性问题13 3.3.4 提高CAN的实时性的方法153.4调度算法153.4.1 动态优先级晋升算法153.4.2 时分复用方法173.4.3 CAN总线通信实时性问题的解决途径19第四章实验平台的搭建与实时性仿真研究234.1 实验平台平台
3、的搭建234.2 MATLAB具有的优势234.2.1MATLAB编程环境234.2.2 MATLAB简单易用244.2.3 MATLAB强处理能力254.2.4 MATLAB的图形处理功能254.2.5 MATLAB模块的集合工具箱254.2.6 MATLAB程序接口和发布平台264.2.7 MATLAB应用软件开发264.3 实验方案的设计与实现264.3.1 实验方案的设计264.3.2 实验方案的实现274.4 实验结果及分析304.4.1 动态优先级算法与非动态优先计算法仿真实验304.5 实验结论32第五章总结与展望335.1 总结335.2 展望34参考文献35谢辞37基于CAN
4、的工业控制网络节点实时性仿真研究摘要:现场总线系统是工业控制系统的最基本和最重要的子系统,其已经逐渐成为了以计算机为代表的工业控制系统之中的最为重要的技术。其中以现场总线CAN总线已经成为了工业控制系统中极其关键和重要的技术,由于CAN总线具有区别于其他总线的高度的可靠性、灵活性和实时性,使其已经成为了众多现场总线中的代表,并被大众评为“最具前途的现场总线”。本论文是以研究CAN总线在通信过程中的实时性问题作为主要的研究对象,通过仿真实验平台对CAN总线的实时性问题进行细致研究与改进。第一步,在充分的了解了CAN总线协议的相关内容,并且对CAN总线的特性进行了深入的理解之后,对CAN总线在网络
5、通信实时性方面进行了系统的分析之后,总结出CAN总线在高负载的条件下,各个网络节点之间的信息传递的实时性会大大降低。第二步,再结合CAN总线的主要协议,提出了优先级晋升机制对于CAN总线的实时性的实现具有较为重要的作用。在理论上分析了CAN总线协议应用优先级晋升机制后将会对CAN总线产生的积极影响,即:优先级晋升机制能够有效保证网络中初始优先级相对较低的节点即使是在网络高负载的情况下仍然能够占有一定的带宽,能够使初始优先级低的网络节点信息的发送不至于发送失败。第三步,完成了对于CAN总线实时性方针平台的设计与实现。通过实验发现了优先级晋升不仅能在实践过程中没有过多的占用网络,而且能够在高负载的
6、条件下使各个优先级不同的网络节点能够有效的发送信息,进一步证明了本论文所提的优先级晋升机制对于CAN总线的实时性具有明显的正面作用,能够在一定的程度上解决信息传递的实时性问题。关键词: 现场总线;工业控制网络;CAN总线;实时性Real-time simulation of CAN-based industrial control network nodesAbstract:With the rapid development of science and technology, industrial control systems have also made progress by lea
7、ps and bounds, industrial control system information faster transfer of information between the real time is an urgent need to achieve. for example: single host information between field devices and the transmission of real-time, PCs rapid operation and quickly display of information transmission of
8、 real-time puts forward stricter requirement than ever before. Field bus system is the most basic and most important of the industrial control system of the subsystem, it has gradually become the industry represented by computer control system with the most important technology. Which represented by
9、 the fieldbus CAN industrial control network is a new generation of industrial control system is very critical and important technology, because the CAN bus has the difference in real time, flexibility and reliability of the height of the other bus, make its have become the representative of the fie
10、ldbus, and the public to become the most promising fieldbus. This is based on the CAN bus in the real-time problems in the process of communication as the main research object, through the simulation experiment platform of the real time of CAN bus in theory research and improvement. First of all, in
11、 the full understanding of the CAN bus protocol of the related content, and has carried on the thorough understanding of the characteristic of CAN bus, on the CAN bus system is analyzed in real time network communication, CAN bus is summarized in the high load conditions, each of the real time infor
12、mation transmission between network nodes will be greatly reduced. Second, the main coupled with CAN bus protocol, proposed the priority promotion mechanism for CAN bus real-time implementation plays a more important role. Theoretically analyses the CAN bus protocol application priority after the pr
13、omotion mechanism will be positive influence on CAN bus, namely: the priority promotion mechanism CAN effectively guarantee the network initial priority even relatively low node in the network under the condition of high load CAN still occupies a certain bandwidth, CAN make the initial low priority
14、network node information send not send failed. Finally, done for CAN bus real-time policy platform design and implementation. Priority promotion was found by the experiment CAN not only in practice did not occupy too much network, but also in high load conditions make the priority of different netwo
15、rk nodes CAN send information effectively, further proves this thes is proposed the priority of promotion mechanism for CAN bus real-time have obvious positive effect, to a certain extent, solve the problem of information transmission of real-time.Keywords: Fieldbus ; industrial control network; CAN
16、; real-time. 1.1 CAN总线的发展及现状CAN总线是在上世纪八十年代为了解决汽车的各个控制装置之间实时性的通信问题而由德国的Bosch公司提出来的。当时,由于电子操作是汽车功能的实现的基础,消费者们对汽车的功能的要求随着科学技术的发展越来越多,所以各种各样的电子控制系统相继被各大厂商和爱好者们开发出来;而每个系统的数据类型以及通信可靠性要求有所不同,这就意味着各个电子控制系统之间通信的复杂度日益增加,与此同时,通信线束的数量也日益增多。所以,为了解决现代汽车中庞大的电子控制系统之间的数据交换问题、减小通信复杂度以及减少线束的数量,1986年CAN总线诞生了。1993年,CAN通
17、过ISO11898以及ISO11519进行了标准化,成为一种国际化标准的通信协议。此后,CAN规范又不断被修订与改善,以减少现有CAN规范中存在的错误以及不完整性。目前国内外关于CAN(Controller Area Network)总线的研究主要包含以下几个方面:(1) 对现有协议实时性、可靠性缺陷的分析,提出新的解决方法。目前,很多科研界对于提高CAN总线的可靠性与实时性都进行了研究,提出了一系列提高实时性与可靠性的算法。如优先级晋升算法就是为了解决低优先级节点数据传输时延问题、提高系统实时性而提出的;CRC-32四比特纠错算法就是为了提高系统间数据传输的可靠性与实时性而提出的。(2) 对
18、CAN总线芯片的设计与开发。目前我国市场上销售的CAN总线芯片基本都是进口的,而CAN总线芯片又是CAN网络中的核心,所以对CAN总线芯片的设计与开发,也成了国内科研人员及单位的研究热点。如对独立的CAN控制器SJA1000、通用CAN收发器PCA82C250、标准LIN收发器TJA1020等等的研究、设计与实现。(3) 关于CAN总线应用的分析与研究。根据国内外资料报道,目前CAN总线在地铁通信网络、基于ARM的嵌入式数控、风力发电、智能照明等系统中的应用已成为国内外研究热点。(4) CAN总线与以太网的互联。随着Internet技术的日益成熟以及不断提高的信息共享技术,测控系统网络和以太网
19、之间相互的逐渐地融合,更加方便的实现了CAN总线与Internet相互之间的通信。因此,对各种通用性强、安全性好的互联接口的研发已成为当前国内外研究的热门课题。1.2课题的提出及意义近年来,随着通信技术、计算机技术、自动化技术等为代表的信息技术的快速发展使得现场总线技术得到了众多厂家的关注和支持,使现场总线的应用范围空前广泛。现场总线控制系统是一个以计算机、摄像头、传感器等现场设备为基础,以自动控制、实时传感、智能通信等为主要内容的新兴的各个学科交叉的技术。现场总线技术在交通管理、智能控制、汽车电子、楼盘自动化等领域有着巨大的应用前景。在工业自动化领域,CAN总线技术已经成为了最受关注的焦点之
20、一,国际上的现场总线相关的开发研究使控制系统走上开放发展的道路。这对我国的发展既是个严峻的困难的挑战,也是一个绝佳的发展机会。多机通信调度,多总线通信调度的情况是现场总线控制系统实时通信的研究和发展将面临。在现场总线中,由于CAN总线的特殊性使其逐渐的形成了国际标准。CAN总线凭借其独特的设计思路和CAN总线本身所具有的优良的性能和较高的可靠性,自诞生以来备受工业界的关注,得到了十分广泛的应用。CAN总线虽然已经比其他的现场总线有了很大的改进,但是它仍然不能满足人们对于实时、高效、安全、可靠的通信的要求。CAN总线在通信的实时性方面存在不足,一旦网络负载增高,通信时延就会增加。所以,寻找一种能
21、够解决CAN总线的实时性问题的优化方法,对于进一步的推广和发展CAN总线技术在各个领域的应用具有十分重要的意义。1.3 CAN总线的研究动态CAN总线所具有的较高的性价比和安全的可靠性是CAN总线在工业控制领域相比其他任何现场总线具有的强烈优势。CAN总线控制系统可以作为从站,用于机器人控制机床的工业控制网络。通过CAN总线实现与主机之间的通讯,能够连接多达六个字符的伺服电机。在国外对于CAN总线的研究,一些公司和学者主要是在CAN总线结构的数据链路层上进行一些理论分析和实验研究;在国内,许多科研院所和高校也都对CAN总线的实时性问题做了深入的研究,其中包括东北大学、北京航空航天大学、大连理工
22、、吉林大学、天津大学以及上海自动化研究所等机关单位。国内外对于CAN总线的研究主要是探索CAN总线的可靠性、安全性、实时性等,其中包括楼宇自动化,汽车电子、机器人等各个领域。CAN总线协议也是其中主要的研究部分,由于应用层没有同意的标准协议,因此不同的建议被许多机构相继提出并解决,使得CAN总线协议拥有了较好的实时行和开放性。第二章 CAN总线通信协议2.1 CAN总线简介CAN(Controller Area Network)控制器局域网络协议为串行通信协议,CAN总线技术被广泛应用于安全级别相对较高的实时性控制系统中。从类似与高速以太网的高速网络一直到普通的宽带接口,都能被CAN总线支持。
23、CAN总线技术的具有特别广阔的应用范围。CAN 2.0技术规范包括CAN 2.0A和CAN 2.0B两部分。其中2.0A是标准帧,它含有11位标识符;2.0B比2.0A多包涵了一个扩展帧,这个扩展帧包含有29位标识符。由于2.0B与2.0A完全兼容,本文主要介绍的是2.0B协议。根据ISO/OSI参考模型,CAN被分为以下几个层次:1、物理层物理层的作用是进行信号的发送,其中包含了同步和位编码以及位定时等。2、数据链路层数据链路层是由逻辑链路控制子层LLC (Logical Link Control)和媒体接入控制子层MAC(Medium Access Control)组成的。LLC子层的作用
24、:确认由媒体接入控制子层接收的报文中哪些已被接收,为数据传送和远程数据请求提供服。LLC子层的主要功能是提供超载通知、实现报文过滤和提供管理恢复。MAC子层的作用: CAN协议的核心是媒体接入控制子层,CAN协议将接收到的报文上交给LLC子层,并接收LLC子层传下来的的报文以便发送。MAC子层被一个管理实体监控,具有识别故障和扰动的自动检测的机制。主要功能包含有错误检测、控制成帧、故障界定、执行仲裁以及错误标注。2.2 CAN总线的特点与起源2.2.1 CAN总线的特点CAN的全称为“Controller Area Network,是控制器局域网,目前应用最广泛的现场总线之一。CAN总线协议最
25、初的设计是为了提供汽车的微控制器车辆电子控制单元ECU之间的相互通信的总线协议。形成汽车电子控制系统的网络。例如:仪器仪表设备,变速箱的控制器、发动机管理系统、电子的主干系统中,都被嵌入CAN控制装置。许多网络节点能挂载在CAN总线上。但是在实践中,网络的硬件特性限制了节点的数目。例如,在使用PhilipP82C250的当CAN收发器在同一网络中挂接100个节点。这使实时控制变得非常容易并且CAN便可以提供高达1 Mbit/s的数据传输速率。另外,CAN的抗电磁干扰能力增强的原因之一也是由于硬件的错误检定的特性。 CAN总线具有较高的位速率和抗电磁干扰性的特性,信息在传输过程中产生的错误基本上
26、都能被CAN总线侦测出来。CAN即使是在6Kbit/s的传输速率下,其信号的传输距离也达到了10Km。2.2.2 CAN总线的起源罗伯特博世公司于1986年二月的汽车工程的大会上介绍了一种新型的现场总线协议CAN总线协议,这是CAN总线诞生的标志。如今,几乎每一辆汽车上都配备了CAN总线。罗伯特博世公司的工程师们早在十九世纪八十年代就已经开始论证现场串行总线应用于汽车系统的可能性。因为没有更加适合的方案满足开发者们对于现场总线功能的严格要求,所以,这种现场总线最初被称作“汽车串行控制器局域网”。这种基于非破坏性的仲裁机构的网络方案能够保证优先级较高的数据传输的时延最短而且不用设置主控制器。罗伯
27、特博世公司相继开发实现了多种在CAN中的错误检测机制。这些错误检测机制中包括了为了确保剩余的节点能够继续进行通信能够使故障节点自动断开的功能。传输的报文也不是根据报文发送/接收器的节点地址来识别的,其识别的方式是根据报文的内容。同时,报文在系统中的优先级是由用于识别报文的标识符规定的。2.3 CAN总线的主要特性如下:1. 在对等的网络结构上。任何时候网络上的任何节点都可以发送数据,且任意发送,具有灵活的通信方式。2. CAN总线的数据结构短帧。每帧有效字节的最大数目是8位。时间越短帧传输,干扰由概率越低。由于CRC校验检错措施和其他机制在每一帧都通用,通信误码率显著降低。3.CAN总线的通信
28、距离最大可达到40m (通信速率最大可以达到1 Mbps),节点的数最多能够达到110个。通信介质可以为电缆、光缆、双绞线。4. CAN总线采用了非破坏性网络仲裁技术。网络上的节点被具有不同的初始优先级,当多个节点同时向网络上发送数据时,优先级较高的网络节点能够继续发送数据,不能够发送数据的节点是优先级相对较低的。按照优先级的高低依次重发数据有效的避免了总线的冲突。2.4 CAN 总线技术的局限性首先是CAN总线没有统一的应用层标准协议。而且,CAN总线在物理层中数据信息传送的距离有限,这种在传输距离上的限制是因为CAN总线设计之初是为了解决汽车工业中的实时、可靠通信的问题。最后,在数据链路层
29、中。数据链路层的MAC子层中又定义了一种静态优先权。而这个静态优先级为低优先级,以保证实时数据交换。并优于令牌环网络。但是,CAN总线在当流量一旦达到系统的额定的带宽,对于某些节点会造成比较大的数据传输延迟的而使CAN的实时性不能确定。此外,CAN总线对于数据的时间节点没有限制权限,并且通信信道带宽的分配也不能够自主进行。若某个节点出现总线错误需要重传的话,系统带宽就会被长时间的占用,其它节点的数据传送也会受到一定的影响。所以需要我们从理论和实践中去解决这些存在的问题。2.5 CAN总线帧格式CAN总线有4中帧,分别为数据帧、错误帧、超载帧及远程帧以,下面分别介绍这四种帧的结构。2.5.1数据
30、帧数据帧可划分为7个位场,从前到后依次是帧起始位、仲裁场、控制场、数据场、帧结束位【13】,其帧结构下图所示。其中仲裁场、控制场、数据场是由软件编程控制SJA1000生成的,其他场(帧起始、CRC场、应答场、帧结束)是有硬件控制芯片SJA1000自动生成的。图2.1 数据帧结构(1) 帧起始:由一个“显性”位构成,即逻辑“0”。(2) 仲裁场:由标识符和RTR位构成。标准帧的格式为11个标识符(ID0ID10);扩展帧格式为29个标识符(ID0ID28)。数据帧的RTR位为一个“显性”位,即逻辑“0”。(3) 控制场:控制场包含6个位。前4位表示数据场的长度,单位为字节;如“1000”表示数据
31、场有8个字节。后2位为保留位,由两个显性位构成,即“00”。(4) 数据场:可以由08个字节构成,意思为即将发送的数据帧。(5) CRC场:CRC场包含了CRC序列和CRC的界定符。CRC序列则是由帧起始位、控制场、仲裁场、数据场等构成的位流除以接收方和发送方事先约定好的生成多项式之后的余数。CRC界定符是一个“隐性”位,即逻辑“1”。(6) 应答场:包括应答间隙和应答界定符两位。发送器中应答场由两个“隐性”位组成,即“11”。接收到匹配的CRC序列的接收端在会回送报文的应答间隙位改为“显性”位,即“01”。由此可知,应答场的应答界定位必须为“隐性”位“1”。2.5.2错误帧错误帧由两部分组成
32、,分别是错误标志和错误界定符。错误帧结构如图2.2所示。图2.2 错误帧结1、超载标志:由6个显性位组成,即“000000”。2、超载界定符:由8个隐性位组成,即“11111111”。2.5.3超载帧超载标志和超载界定符一起组成了超载帧。超载帧结构如图2.3所示。图2.3 超载帧结构1、超载标志:由6个显性位组成,即“000000”。2、超载界定符:由8个隐性位组成,即“11111111”。2.5.4远程帧远程帧可划分为6个位场,与数据帧相比,除了没有数据场外,其他场都相同。远程帧结构如图2.4所示。图2.4 远程帧结构远程帧中除了仲裁场的RTR位与数据帧不同(为“隐性”位,即逻辑“1”)外,
33、其他5个位场组成与都与数据帧相同,这里不再赘述。2.5.5帧间空间帧间空间的作用是分隔数据帧或远程帧与其前面的帧的,总线空闲场和间歇场一起组成了帧间空间。帧间空间的结构如图2.5所示。图2.5 帧间空间结构图第三章基于CAN总线的实时性分析和改进3.1本章概述本章的主要内容是研究CAN总线的实时性能,通过统计针对CAN总线实时性信息周期的分析研究进而提高CAN总线的实时性问题的解决方法,并且提出新的改进方法,最后通过数学分析并结合实验相互比较验证提出的改进方法对于CAN总线的实时性能的提高。能够衡量一个网络实时性能的指标的标准是通信的延迟时间,即从消息产生到发送再到消息到达这段时间的时间差。本
34、章主要针对的是在理论上研究动态优先权(动态优先级晋升)算法对于CAN总线实时性能的影响情况。3.2 CAN总线MAC层运行机理 CAN的MAC为带优先级的载波监听多路访问/冲突避免(carrier multiple sense access withcollision avoidance, CSMA/CA) 。采用多主线竞争式结构:网络上任意节点均可在任意时刻主动地向网络上其它节点发送信息,而不分主从。即当发现总线空闲时,各个节点都有权使用网络。在发生冲突时,采用非破坏性总线优先仲裁技术:当儿个节点同时向网络发送信息时,运用逐位仲裁规则,借助帧中开始部分的标识符,优先级低的节点主动停止发送数据
35、,而优先级高的节点可不受影响继续发送信息,从而避免了总线冲突,使信息和时问均无损失。当节点检测到有更高优先级的信息在发送,就停止发送信息,直到再一次检测到网络空闲。CAN的CSMA/CA通信机制流程如图所示: 图3.1 CAN的CSMA/CD通信机制流程图3.3 CAN总线的实时性分析 网络系统根据系统应用场合,对网络的可靠性和实时性都提出了一定的要求。为了提高网络通信的可靠性,典型的网络系统一般增加通信的纠检错能力、冗余能力、容错能力等技术来提高可靠性;而网络的实时性能一般与网络所采用的通信协议、网络的负载情况、网络的传输速率和通信报文的大小等因素有关,特别是通信协议中的介质访问控制方法对网
36、络的实时性能影响较大。通信协议中介质访问控制方法主要提供了协议或算法,如何将通信频带的带宽有效合理地分配给各用户,它要保证在相同的优先级下对各用户公平合理地分配通信带宽,并尽可能提高通信带宽的使用效率。介质访问控制方法一般分为同步和异步两种实现技术,典型的方法有争用方式,所有的用户都能同时争用介质通信,哪个用户获得介质由仲裁算法给出。以太网络和CAN总线网络都采用争用方式 3.3.1访问方式 以太网采用载波监听多路访问碰撞检测(Carrier Sense Multiple Access,Collision DetectionCSMACD)的介质访问控制方式。其工作原理如下;发送节点检测介质状态
37、,如果介质空闲则可以发送数据,如果介质忙碌贝q等待到空闲才能发送数据:如果发送数据时检测到介质通信冲突,则立即终止数据发送,并发送一段干扰信息后,进入退避状态,再经过一段随机的等待时间后,再重新发送,如果再次检测到冲突,继续退出、等待、重新发送,在多次(16次)发送失败后将放弃数据的发送该算法的缺点是,当网络负载比较高时,通信冲突是不可避免的,由于算法的随机性和不确定性,数据传送的时延也随之不确定,很难保证每个数据时延的有界性。 CAN总线网络采用载波监听多路访问避免碰撞(Carrier Sense MultipleAccessCollisionAvoidanceCSMACA)的介质访问控制方
38、式。CSMA触可以认为是对CSMACD介质访问控制方式的改进,它规定了优先级字段,当通信冲突发生时,低优先级节点会自动退出发送,只有高优先级节点才能发送数据,和CSMA,CD介质访问控制方式相比是一种无损的仲裁方式:其工作原理如第二章所述如下:发送节点检测介质状态,如果介质空闲则可以发送数据,如果介质忙碌则等待到空闲才能发送数据;如果发送数据时发生介质通信冲突,进入仲裁阶段,如果节点发送一个隐性位而在总线上检测到显性位,则说明这时总线上有优先级更高的数据正在同时发送,所以该节点优先级较低,失去了仲裁,立即终止发送,等介质空闲再试图重新发送,而优先级较高的节点顺利发送数据。CSMACA方式可以保
39、证高优先级数据不受任何干扰地完成数据发送,数据的时延有确定性,其无损的仲裁方式有效提高了带宽效率,而且CAN总线采用短帧结构,传输时间短所以,CAN总线网络以其高可靠性和实时性广泛用于现场总线系统,在汽车电子、工业控制中有着广泛应用。 3.3.2 CAN总线实时性问题的提出 “事件触发”机制是使用时数的要求同时发送数据包,经典的CAN总线通信网络的经典CAN总线通信网络“总线负载峰值。”然而,CAN总线,无损仲裁机制,以确保按照他们设置标识符的优先顺序的所有数据包。因此,最高优先级的数据包不被发送一个中断,而低优先级的数据分组,其具有实时的传输时间减小随机性。更高版本的系统,实时性要求,即使在
40、总线上的高峰负荷,也能保证实时传输,所以如果若想使用现有的CAN总线通信标准,我们必须解决这个问题。 图 3.2 CAN总线解析图 3.3.3 CAN的实时性问题 通过上节的分析,我们知道CAN总线网络系统作为多主通信系统,采用了CSM们A介质访问控制协议。该协议规定了无损的仲裁方式,在仲裁过程中,具有较高优先级的协议帧赢得仲裁,不受影响地发送数据:较低优先级的协议帧退出发送等待。并且,CAN总线协议采用短帧结构,传输时问短,最高传输速度可以高达1Mbps。这使CAN总线网络系统比一般的通信系统具有更好的实时性能。对于低网络负载的CAN总线网络系统,CAN总线规定的协议可以很好的工作,因为这个
41、时候协议帧在网络中碰撞的概率很小,网络的实时性比较好。然而,随着网络载荷的增加,协议帧在网络中的碰撞也随之增加,如果仍然沿用CAN总线规定的协议,较低优先级的协议帧发送的实时性就会受到影响。当碰撞概率达到一定的程度,由于CAN的仲裁协议,网络中的较低优先级的协议帧就不能发送成功,而发送这些低优先级协议帧的节点会因为多次发送错误而很快关闭节点退出总线。所以在高网络负载情况下,高优先级的协议帧的传输实时性没有受到太大影响,低优先级的协议帧的传输实时性恶化,其可能多次失去仲裁,使重新发送的次数增加,传输时延变大,在关闭节点退出总线这种极端情况下,其传输时延将变为无穷大一个实时系统中,CAN总线上的实
42、时数据帧大致可以分为两类:周期性发送的实时数据帧和非周期性发送的实时数据帧。周期性发送的实时数据帧以时间为触发,每到特定的时间点发送数据,如上位监控设备请求下位终端设备采集数据并返回上位监控设备的数据帧就是周期性发送的实时数据帧;非周期性发送的实时数据帧以事件为触发,当某个事件发生时发送数据,所以为突发数据发送,如下位终端设备探测到工作状态超过了某个限制值向上位监控设备报警的数据帧就是非周期性发送的实时数据帧。针对时间触发的周期性数据和事件触发的非周期性数据的特点,学者提出了时分复用的方法和动态优先级分配的方法来提高CAN总线的实时性。CAN总线中报文的信息时延为:从待发送数据在总线上的节点A
43、开始,直到信息在另外的节点B中得到确认,这一段时间的总的开销。下面针对两个典型的CAN的网络节点之间的数据通信进行分析,其结构如下图:图 3.3 CAN总线结构图根据数据流的方向可以看出,CAN总线的时延由帧时延、软件时延与CAN控制器时延、媒体访问时延三部分组成,即:可以设置优先级CAN协议数据包。每一个数据包都有唯一一个标示其优先级的信息认证。优先级越高数据包的标识符的值就越低。如果总线处在空闲状态,那么总线的带宽可以被任何一个信息节点所占用。如果有多个控制器同时尝试将消息发送到总线,它会识别初始优先级高的信息节点所发送的信息。这是只允许有发送到总线的最高优先级的数据包,而较低优先级的数据
44、包的重传定时器。这种机制将根据其优先级的数据包信息连续出现在总线上。因此,处理器可以由任何信息的响应时间根据最坏情况下的估计。通过返回的错误模式可以估算出总线通道的误差响应时间。值得注意的是,CAN报文的响应时间可以退换,但是它存在取决于通道错误条件的高度的不确定性,这种不确定性依赖于工作量的大小。这可能是因为系统可能会产生不利的影响,所以为了解决这个问题建议采用一些CAN总线协议的扩展协议。 3.3.4 提高CAN的实时性的方法1.采用随机访问机制,调高报文发送实时性2.CAN的短帧结构可增加实时性3.采用优先级晋升方案提高实时性4.EPA实时以太网采用基于角色平等的分时调度以太网确定性通信
45、控制策略来提高以太网通信的实时性。5. 让标准帧能够满足总线系统对信息传输的可靠性、控制容量等需求时,应当采用标准帧,而不采用扩展帧来增加信息量。6. 尽量的降低网络负载,减小控制网络中不必要的控制节点以及报文信息,预留出尽可能大的网络带宽富足量。7.在满足系统稳定性的前提下,尽量增加带宽、提高控制网络的传输速率。8.适当的增大控制器的采样周期,尽可能采取同步传输方式进而避免网络的微观拥塞情况的发生。9.尽量选取性能稳定、均一的期间构建网络硬件来提高网络的整体性能。3.4调度算法3.4.1 动态优先级晋升算法 基于CAN总线触发器的动态优先级算法,是随着时间的推移实时动态的调整各个站点的优先级
46、的一类算法。相比于其他的固定的优先级模式,动态优先级使每个站点都拥有相同的权利分享总线的带宽从而避免的优先级较低的站点得不到带宽的占有权的情况的发生。极大地保证了数据几点进行传输的实时性。动态优先级晋升算法如下:网络中的各个节点在没有发生高强度的信息碰撞的情况下都是按照各自的初始优先级进行数据发送的。一旦信息发生冲突,其中初始优先级高的节点就会占有一定的优势,为了能够让优先级低的站点在下一次竞争中有一定的几率被发送,我们把优先级相对低的站点的优先级在一次竞争之后相应的提高,如果仍然失败,则继续提高该站点的优先级,直到该站点能够成功发送为止。但是,如果优先级相对较低的站点在提高了优先级之后被成功发送了,那么一定要还原它的初始的优先级。因为只有这样网络中的各个节点的数据发送的实时性才能够得到充分的保障。网络中的信息传递存在多种可能,为了能够避免两个以上的节点同时具备一样的初始优先级的情况发生,应该设计一定的算法,算法如下:假设在数据帧格式中,L表示节点的优先级,则网络节点的最大数目可以表示为2L1.网络站点数目必须满足NL。网络中各个节点的初始优先级为2m1x。如果竞争站点一旦失败后,优先级的增加算法如下: 图 3.4 算法流程图 图 3.5 图 3.6 动态优先级算法的流程图3.4.2 时分复用方法1、时分复用基本原理 对于周期性强的数据,可以采用时分复用的方法。时分复用概念最早出