实时性can总线

上传人:壹****1 文档编号:428229338 上传时间:2022-12-13 格式:DOCX 页数:5 大小:34.26KB
返回 下载 相关 举报
实时性can总线_第1页
第1页 / 共5页
实时性can总线_第2页
第2页 / 共5页
实时性can总线_第3页
第3页 / 共5页
实时性can总线_第4页
第4页 / 共5页
实时性can总线_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《实时性can总线》由会员分享,可在线阅读,更多相关《实时性can总线(5页珍藏版)》请在金锄头文库上搜索。

1、CAN总线简介1. CA N总线CAN是Controller Area Network的缩写(以下称为CAN),是IS 0国际标准化的串行 通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的 要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型 及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为 适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986年德 国电气商博世公司开发出面向汽车的CAN通信协议。此后,CAN通过ISO11898及 ISO11519进行了标准化,现在在欧洲已是汽车网络的

2、标准协议。现在,CAN的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医 疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动 化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据 通信提供了强有力的技术支持。CAN总线具有高性能,高可靠性以及独特性的设计,越来越受到人们的重视.CAN总 线采用的是固定的优先级,当总线上的数据量较大时,所有的节点都随机地向总线上发 送数据,具有低优先级的节点总是比具有高优先级的节点有较大的发送失败率,也就是 说当具有高优先级的节点以足够的频率向总线上发送数据时,如果考虑一种最坏的情况, 那么较低优先

3、级的节点都会在总线竞争中失败,从而导致它一个数据都发送不出去,或 者发送的数据都有较大的延时,对于实时采样和控制来说,当延时超过某个预定值时,接 收到的数据已经失去了它的实际意义,而这种情况在实际的工业应用中是可能出现的, 这将不利于我们采集数据和过程控制文中分析了两种CAN总线实时性的解决方案, 以使CAN总线更好的适用于对实时性有相应要求的场合.2. CA N总线技术介绍位仲裁要对数据进行实时处理,就必须将数据快速传送,这就要求数据的物理传输通路有较高 的速度。在几个站同时需要发送数据时,要求快速地进行总线分配。实时处理通过网络交 换的紧急数据有较大的不同。一个快速变化的物理量,如汽车引擎

4、负载,将比类似汽车引 擎温度这样相对变化较慢的物理量更频繁地传送数据并要求更短的延时。CAN总线以报文为单位进行数据传送,报文的优先级结合在11位标识符中,具有最低二 进制数的标识符有最高的优先级。这种优先级一旦在系统设计时被确立后就不能再被更 改。总线读取中的冲突可通过位仲裁解决。如图2所示,当几个站同时发送报文时,站1的 报文标识符为011111;站2的报文标识符为0100110;站3的报文标识符为0100111。所有标 识符都有相同的两位01,直到第3位进行比较时,站1的报文被丢掉,因为它的第3位为高,而 其它两个站的报文第3位为低。站2和站3报文的4、5、6位相同,直到第7位时,站3的

5、报文 才被丢失。注意总线中的信号持续跟踪最后获得总线读取权的站的报文。在此例电站2 的报文被跟踪。这种非破坏性位仲裁方法的优点在于,在网络最终确定哪一个站的报文被 传送以前,报文的起始部分已经在网络上传送了。所有未获得总线读取权的站都成为具有 最高优先权报文的接收站,并且不会在总线再次空闲前发送报文。CAN具有较高的效率是因为总线仅仅被那些请求总线悬而未决的站利用,这些请求是 根据报文在整个系统中的重要性按顺序处理的。这种方法在网络负载较重时有很多优点, 因为总线读取的优先级已被按顺序放在每个报文中了,这可以保证在实时系统中较低的 个体隐伏时间。对于主站的可靠性,由于CAN协议执行非集中化总线

6、控制,所有主要通信,包括总线读 取(许可)控制,在系统中分几次完成。这是实现有较高可靠性的通信系统的唯一方法。3.CA N与其它通信方案的比较在实践中,有两种重要的总线分配方法:按时间表分配和按需要分配。在第一种方法中, 不管每个节点是否申请总线,都对每个节点按最大期间分配。由此,总线可被分配给每个 站并且是唯一的站,而不论其是立即进行总线存取或在一特定时间进行总线存取。这将保 证在总线存取时有明确的总线分配。在第二种方法中,总线按传送数据的基本要求分配给 一个站,总线系统按站希望的传送分配(如:Ethernet CSMA/CD)。因此,当多个站同时请求 总线存取时,总线将终止所有站的请求,这

7、时将不会有任何一个站获得总线分配。为了分 配总线,多于一个总线存取是必要的。CAN实现总线分配的方法,可保证当不同的站申请总线存取时,明确地进行总线分配。 这种位仲裁的方法可以解决当两个站同时发送数据时产生的碰撞问题。不同于Ethernet 网络的消息仲裁,CA N的非破坏性解决总线存取冲突的方法,确保在不传送有用消息时总 线不被占用。甚至当总线在重负载情况下,以消息内容为优先的总线存取也被证明是一种 有效的系统。虽然总线的传输能力不足,所有未解决的传输请求都按重要性顺序来处理。 在CSMA/CD这样的网络中,如Ethernet,系统往往由于过载而崩溃,而这种情况在CAN中不 会发生。二, C

8、AN优缺点在现有的现场总线中,CAN总线具有通信速率高,可靠性高,连接组网 方便以及性价比高等诸多优点.CAN确定的数据碰撞解决机制以及位同步技术使得在 数据量较小时,使得CAN通讯系统具有高的实时性和可靠性.但是近年来其应用领域 的不断扩展和控制网络的不断复杂化,带宽利用率要求提高,使得仅仅具有物理层和数 据链路层的CAN 2.0B协议带来了些问题主要表现在:1由于信息帧的优先级和其标识符的邦定,CAN协议不能让需要共带宽的发送站点 在优先级上处于平等的地位,即信息随着优先级的降低,其传输延迟均将单调增加.2对于硬实时系统,CAN不能保证信息帧传送时延的上限由于CAN总线协议中 是通过一种非

9、破坏性的仲裁方式来实现冲突检测的,采用固定的优先级,因而它无法保 证各个节点就不可能公平的享有总线的使用权在采样和控制过程中,我们希望各个节 点无论是采样还是执行控制,都应该是公平的,也就是说它们发送的数据对控制而言具 有同等的重要性,而且许多实际环境中的实际情况也都是这样所以我们应当找出一些 合理的解决方案,使得CAN总路线上的所有节点都能在它们发送的数据还有效的时 候把数据发送出去,使所有的节点公平的享有总线的使用权.三, CAN总线实时性解决方案总体上来说,有两种方法可以来改善CAN总线的实时 性性能一种是基于主从式系统结构,利用分时调度原理来避免总线的数据碰撞,从而使 系统的实时性得到

10、提高,这一般应用于传送周期性的实时性信息的系统;另一种则是仍 然在分布式结构的总线系统框架下,利用动态优先级的算法来搞高网络信息帧的传送实 时性,这一般应用于猝发性数据的传送.1.时分多址技术信息调度方案 时分多址(Time Division Multiple Access简称TDMA), 是通信技术中基本多址技术之一提供一个共享信道的方法,一个信道由连续的周期性 时隙构成,而这些时隙在时间域里是完全正交的,不同信号被分到不同的时隙里时间触 发CAN总线利用了时分多址(TMDA)技术来改善CAN总线的实时性.时间触发CAN总线上的每个节点都占有一个时隙,节点在自己的时隙中处理总线事务.这样,每

11、 个节点都可以在一个总线周期内至少拥有一个服务时隙,所以只要将每个节点的通信周 期设计成小于等于它的截止时间,那么整个系统就具有了实时性要求.时分信息调度简 而言之,时分CAN的信息调度就是将基本同期作为一个调度单元,按照系统实时性的 要求,每几个基本周期动态地生成一个调度表,为了信息调度的方便,系统周期中所包含 的基本周期数n应为所有周期性信息的周期的最小公倍数具体讲,将系统中的每个节 点所对应的周期性信息帧,按照其优先级列成一个系统需求表,称之为信息表,在表里,每 条信息帧具有优先级(标识符),传送时间,字节数,周期,时限,初始队列位置调度表有两 个,一个为当前调度的系统正在使用的调度表,

12、另外一个为下一个调度周期所使用的调 度表,这个表是在当前调度周期内生成的首先以基本周期性p为单位,按照信息的初始 队列位置及时限将其分配到各个基本周期中,在每个基本周期中,再按照时限,在基本周 期范围内,将其调整.如果一个系统周期的长度是n(基本周期),则调度算法就是周期性的生成参考帧集合 Fi,j,i=l,.n,j=l,.,8,其中Fi,j,j=l,.,8第 i 个基本周期参 考帧的 8B 数据设置 一个开关量Gi,k,标识为k的信息帧为k的信息帧在第i个周期里是否允许发送的. 调度的基本算法如下:初始化Fi,j=l;Fi,j=0;i=l,.,n,j=l,.,8.F0R(i=1;iv=n;i

13、+)j=1;F0R(k=1;kv=N;k+)/N为整个系统的发送点数GI+1,K=Gi,k;if(j8&Gj,k)j+;Fi,j=k;Gi+1,k=0;if(mod(i;Pk/T=0)/T 为基本周期Gi+1,k=1;可以看出,这里总是预先算好下一个系统周期的队列矩阵,可以监视信息是否丢失时 限如果丢失的时限是一个基本的周期的范围内,可以通过调整一个基本周期内的队列 顺序来校正.这种采用时分多址技术的信息调度方法,在不发生错误的情况下,信息帧之间没有阻 塞和抢占的情况发生.如果安排适当,每一个信息帧不存在排除的等待时间,因而不存在 时延.当然网络的带宽时一定时,特别对于现场总线网络速率不太高的

14、情况下,系统的容 量是有限的.2优先级晋升信息调度方案在时分多址技术的信息调度方案中,避开了协议帧的碰撞,也就避开了 CAN协议的 作用.而在优先级晋升的信息调度,则是让协议帧的和它的优先级分离,从而使协议帧在 优先级在需要的时候可以按照要求改变,这就是CAN协议帧优先级晋升信息调度其 目标是,对于那些在系统中实时性和可靠性要求相同的猝发性数据,在发总的过程中应该具有相同的优先级,即共享带宽.优先级晋升算法实现及CAN总线控制器芯片的算法实现:就越级i卜I如SJA1000芯片的算法实现,首先,当中断寄存器出现了仲裁丢失中断或发送中断,就 说明节点已经处理完一条信息了,但此时还不知道是否发送成功如果成功,就没有仲裁 中断,但是会有发送中断,因为发送成功后发送缓冲区会有释放;如果发送不成功,一定是 和较高优先级的协议帧竞争的结果,所以会有仲裁丢失中断,但由于是单次发送的所以 失败后也会有释放缓冲区,同时也会有发送中断在得到节点已经处理完一条信息以后, 只要用上面的规则进行判断就可以知道上一条信息是否发送成功,也就是用来判断是否 要晋升节点所发送信息帧的优先级并重发该帧.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号