夏继强 薛利强 满庆丰
(北京航空航天大学 机械工程及自动化学院,北京 100191)
时间触发CAN总线实时性分析及评估方法
夏继强 薛利强 满庆丰
(北京航空航天大学 机械工程及自动化学院,北京 100191)
针对目前时间触发控制器局域网(CAN,Controller Area Network)总线缺乏统一评估方法的现状,提出了一套系统建立与评估方案.采用均匀装载算法建立系统调度矩阵,实现了周期信息的实时传输.结合CAN总线的传输机制与时间触发的特点,改进了时间触发系统中非周期信息最坏延迟的计算方法.在此基础上针对不满足系统实时性要求的信息提出了计算其失效概率的方法,建立了时间触发CAN总线系统的设计与评估流程,提出了系统参数调整方案.评估方案能够提高设计效率,利用信息失效概率以及最坏延迟对系统实时性进行分析,使分析结果更加精确、实用.
时间触发;CAN总线;实时性;失效概率;评估方法
控制器局域网(CAN,ControllerArea Network)总线的高可靠性使其应用从车辆、楼宇自动化等传统领域逐渐拓展到医疗、航空等场合.为了实现周期数据的可靠实时传输,各国际组织及厂商在CAN基础上引入了时间触发机制.ISO 11898-4在CAN协议栈的会话层中提出了时间触发控制器局域网(TTCAN,Time-Triggered Controller Area Network)协 议[1-2]. 德 国 Stock Flight Systems制定了基于CAN总线的新型航空机载设备通信协议CANaerospace,也加入了时间触发调度机制[3-5].在 CAN 总线实时性研究方面,文献[6-7]建立了CAN总线实时分析的模型,对指定优先级信息最坏延迟进行了分析.文献[8]提出了一套网关设计方案,实现了 TTP/C(Time Triggered Protocol),TTCAN以及 Byteflight等时间触发协议之间的转换,并对网关的实时性能进行分析及验证.文献[9]设计了特定的实验用来比较TTCAN与CAN总线(时间触发与事件触发机制的典型例子)的实时性能,实验结果表明在较高的总线负载下TTCAN能够获得比CAN更好的实时性能.文献[10]利用Petri网对“时间触发CAN总线(TTCAN)”进行建模,并从总线吞吐量、带宽利用率以及信息平均延迟等方面对异步相传输性能做出了分析.文献[11]从数据传输准确性、数据吞吐量、时间同步精度以及传输响应时间等角度分析了CANaerospace协议的实时性.现有时间触发CAN总线实时性研究主要针对非周期信息最坏延迟展开,尚没有对非周期信息超过其最坏延迟的概率分布进行深入探讨.因此本文在现有分析方法的基础上提出了信息超出截止期的概率分布的计算方法,从多角度分析信息参数的选择对系统实时性能的影响,为评估系统是否可调度提供了一种新的思路及指标.
TTCAN与CANaerospace的时间触发机制是基于校时基准信息完成的.在TTCAN中为时钟参考信息(clock reference message),而在 CANaerospace中则指定了时间同步服务(node synchronization service)来实现分布节点间的时钟同步.时间触发系统通常由信息窗口、基本周期以及矩阵周期3部分组成.基本周期由多个信息窗口构成,其中给每一个周期信息预留特定的信息窗口,基本周期内剩余的信息窗口用于非周期信息的竞争传输.矩阵周期由多个基本周期构成,网络中的节点按照矩阵周期循环传输,在指定的窗口提出发送请求.利用一个应用系统来描述现有CAN总线的分析方法,系统基本参数如表1所示.
表1 系统信息汇总表
由时间触发机制的特性可知建立系统调度矩阵的关键在于确定基本周期TBC[12-14].本文采用均匀装载算法(AL,Average-Loading)[14]来确定系统的基本周期与矩阵周期,并最终建立系统调度矩阵.
给出如下定义:NS为系统中周期信息总个数(包括时钟参考信息);M为周期数(M≤NS);T={T1,T2,…,TM}为各信息的周期集合,其中周期Ti对应的信息个数为ni,并且满足式(1):
调度矩阵基本周期 TBC=G(T1,T2,…,TM),其中G为求最大公约数运算.矩阵周期TMC=L(T1,T2,…,TM),其中 L 为求最小公倍数运算.ki=Ti/TBC为周期信息发送的基本周期间隔,即需要ki个基本周期分配一次发送.表1可得,周期信 息 的 周 期 集 合 {T1,T2,T3}={5,10,20}(ms).应用AL算法得到系统的基本周期为5 ms,矩阵周期为20 ms.为了便于描述将预留给周期信息传输的窗口称为同步相,基本周期内剩余的部分称作异步相,用于响应具有事件触发特性的非周期信息.非周期信息按照非抢占式优先级调度来竞争异步相的带宽资源,系统调度矩阵见图1.
由于非周期信息在调度矩阵中没有特定的发送窗口,现有分析方法仅从最坏延迟角度对其进行实时性分析.时间触发CAN总线系统由同步相和异步相2部分组成.同步相采用了时间触发机制,其产生与传输不能被中断,因此同步相的队列延迟WS=0.非周期信息M的延迟为
图1 系统调度矩阵
其中,TS为同步相的长度;R为取余数运算;N为WnM时间段内产生的优先级比M高的信息的最大数目;AP为基本周期内异步相可传输的信息个数;CM为信息M的最大传输时间;TBC为基本行周期的长度;hp(M)表示优先级比M高的信息集合;Jj为信息 j的抖动,一般取 Jj=0.2ms[15];Tj为非周期信息j产生的最小时间间隔;τbit为CAN总线传输一个数据位的时间.
当采用11位CAN标准帧信息,数据长度为8 bit,M 的最大传输时间[15]CM如式(3)所示.
其中SM为一帧数据中的数据长度.在1 Mbit/s的波特率下,为了便于计算不妨设CM=125 μs,并假设系统中CAN总线传输是无错的.利用系统调度矩阵和式(2)求出40个非周期信息的最坏延迟如图2所示.
图2 系统非周期信息延迟
从图2中发现优先级高于30的非周期信息(M1~M30)的最坏响应延迟小于其截止期,认为这些信息满足实时性要求.优先级低于30的信息(M31~M40)的最坏延迟超过了截止期,在现有的分析中认为其不可调度.传统分析方法将非周期信息产生的最小间隔作为周期,并在其基础上进行最坏延迟的计算.实际情况中非周期信息的产生是随机的,并且产生间隔至少为最小间隔的3~5倍.由于信息的产生服从特定的概率分布,信息队列延迟也服从相应的概率分布,在此基础上提出了信息失效概率的计算方法,并结合信息最坏延迟计算系统的失效概率.
设非周期信息M的产生是服从强度为λM(表1中非周期信息平均产生间隔的倒数)的泊松分布,为了便于计算非周期信息取同一个λM.根据泊松分布的定义假设在一段时间t内信息M产生 n 次的概率为 PM(n,t)[16].
由前文得到非周期信息M的完整延迟区间为[0,WM],其失效区间为(Td,WM],其中 Td为信息的截止期.此例中非周期信息产生的最小间隔TM>WM,因此在WM时间内所有信息最多只能产生一次.Pfail(M)为信息M延迟落在失效区间的概率,为了计算此概率,提出“区间分割”的计算方法.将信息延迟划分为足够小的区间,信息延迟位于此区间内的概率是一致的.在此不妨将此区间定为一帧信息的长度Tf=125μs(125μs称为一个帧单位),设:PM(i)=P{WM(i)∈(WM-(i+1)×Tf,WM-i×Tf]}为信息 M 延迟 WM(i)落在区间(WM(i)-Tf,WM(i)]的概率.信息M的失效概率Pfail(M)的计算公式如式(4)所示,其中Nfail为失效子区间的个数.
针对特定的子区间:(WM(i)-Tf,WM(i)]信息M的延迟时间WM(i)由2部分组成:WM(i)=WM,S(i)+WM,A(i).其中 WM,S(i)(NM,S(i)个帧单位)为同步相造成的阻塞,WM,A(i)(NM,A(i)个帧单位)为异步相造成的延迟.NM(i)=NM,S(i)+NM,A(i)为 WM(i)对应帧单位数.实际情况中 NM,S(i)和NM,A(i)的值有多种组合方式,为了求得信息延迟处于该子区间的概率PM(i),需要将每种组合出现的概率相加,给出了求取所有组合的基本算法.
1)信息在同步相中提出发送请求.这种情况下,非周期信息提出请求后需要等待同步相的结束,随后在异步相中参与总线竞争.通过式(5)和式(6)的约束条件得出信息同步相延迟长度NM,S(i)的取值范围.
式中,NBC,NS,NA分别对应基本周期、矩阵同步相和矩阵异步相对应的帧单位长度;hp(M)为优先级高于 M的信息集合个数.通过计算得到NM,S(i)∈[NS,min(i),NS,max(i)],NS,min(i)和 NS,max(i)分别为NM,S(i)取的最小值和最大值.设PS(i,j)为 NM,S(i)=j时出现的概率,j∈[NS,min(i),NS,max(i)],如式(7)所示:
式中,Psel=Tf/TBC为信息M在指定位置产生的概率;PA(i,k)为 NM,A(i)=NA(k)时的概率;Pwait为信息在异步相提出时没有及时发送,需要进行等待的概率,Pwait=Ubus=US+∑λMCM;Ubus为总线期望负载,US和∑λMCM分别为周期信息负载和非周期信息总线负载.在计算概率PS(i,j)时考虑WM(i)时间段内有 NM,A(i)×(NM(i)-j)个比 M 优先级高的信息提出了发送请求并最终成功发送,除此以外的hp(M)-NM,A(i)个高优先级信息在此时间段内没有产生.同时结合NM,S(i)使得M的延迟时间恰好为NM(i)个帧单位.
如果信息延迟的同步相长度NM,S(i)取值不在其范围之内,认为同步相与异步相的组合是错误的.例如信息 M40的队列延迟 WM(i)=5.5 ms(NM(i)=44)时,hp(M40)=39.由式(5)、式(6)得出:NM,S(i)∈[11,14],分别考虑 NM,S(i)取 15 和5时,两者的系统传输队列及错误组合解释见图3.
图3 无效组合的例子
2)信息在异步相中提出发送请求.与1)中不同,信息延迟中包含的同步相长度必定为完整同步相长度NS的整数倍,因此信息在异步相中提出时 NM,A(i)的取值不是连续的.NM,A(i)的取值集合为:{NM(i),NM(i)-NS,…,NM(i)-kNS,…},集合元素NA(k)=NM(i)-kNS,并且需要满足式(9)的约束条件,得到 k∈[kmin,kmax].
对于相同的NA(k),信息在异步相中的产生位置是一段连续的发送区域,计算时需要将此区域确定.设Nsend(k)为信息在异步相中提出的位置到该行异步相末尾的帧单位数,Nsend(k)应满足式(10)的约束条件,得到 Nsend(k)∈[NA,min(k),NA,max(k)].
采用表1中的参数,由式(9)NA(k)=NM(i)-k×NS=44-10k∈[30,39].计算得出 k∈[1,1],k=1,NM,A(i)=NA(1)=34.由式(10):Nsend(1)∈[4,30],信息的可能产生位置如图4所示.
图4 信息在异步相中产生
通过式(10)得到信息在指定区域产生的概率 Psel(k)=(NA,max(k)-NA,min(k)+1)/NBC.得到PS和PA后,利用式(11)~式(13)即能得出信息M的失效概率Pfail(M)和整个系统的失效概率Pfail(S)以及系统失效周期Tfail(S)(单位为d).式(13)中SF(S)为系统中失效信息的集合,ST(S)为系统中所有非周期信息的集合.
利用前几节中的方法对本文所提的应用系统评估,发现某些非周期信息的最坏延迟超过了截止期,存在失效的可能性.实际上信息的产生频率、截止期等参数都会对系统的实时性能产生影响,从不同的角度进行综合讨论.
首先针对优先级最低的非周期信息M40在相同的截止期、不同的产生频率下的情况进行分析,表2为M40的失效概率.
表2 M40失效概率统计
当系统参数选为:λM=25 s-1,TM=10 ms,Ubus=37.5%时,低优先级信息 M40失效概率小于10-10,平均需要超过1000 d出现信息超出截止期的情况.尽管该信息最坏延迟超出了其截止期,但由于信息失效概率极小,仍然认为其满足实时性要求.从表2中发现随着信息平均产生频率的降低,总线期望负载降低,低优先级信息的失效概率急剧下降,由此得出信息的产生频率对单个信息失效概率有较大的影响.
其次考虑在相同的产生频率、不同截止期情况下,各信息及系统的失效概率.如果将系统中信息的截止期减小,将会导致更多的信息出现最坏延迟超过截止期的情况,系统实时性能将会有较大幅度的衰减.反之截止期增大将减少失效信息的个数,能够提高系统实时性,具体如表3所示(λM=25 s-1).
表3 各信息及系统失效概率统计
由表3得到当信息截止期为8 ms时,应用系统中所有信息都没有超出其截止期,系统不存在失效的可能性.当截止期降低至5 ms,优先级低于30的信息(M31~M40)超出了其截止期,由于各信息的失效概率极低(小于10-10),系统出现失效的概率很低,系统失效周期超过1000d.信息截止期减小至4 ms时,信息M23~M40出现失效可能,系统失效周期仍然大于1 000 d.继续将信息截止期减小至3 ms,应用系统中出现失效可能的信息大量增加,从M16开始信息便存在超出截止期的可能.同时各信息的失效概率急剧上升,通过计算得到系统失效周期约为0.8 d.从以上的分析中发现,信息的产生频率虽然对单个信息的失效概率有较大的影响,但是由于其失效概率极小,对系统的实时性能改变不大.而改变信息的截止期对应用系统的实时性能与失效周期影响较大.
对于不满足实时性要求的系统应当对系统中的信息参数进行调整.如控制单个信息的产生频率,或者适当加大信息的截止期等,都有利于改善系统的实时性能.图5为系统设计的基本流程图.
图5 系统设计流程图
实际设计中非周期信息一般为错误报警信息及状态改变信息等.为增加非周期信息平均产生间隔,可以采取增大系统错误报警容忍度,减少状态改变的触发灵敏度,控制节点发送信息的频率等措施;同时应当优化信息数据结构,在相同的字节长度中尽可能的包含更多的信息,合并同类型的信息.这样就能有效的减轻系统负载并降低系统设计的复杂性,大大增加稳定性和可调度性.
本文提出的系统建立与评估方法,保证了周期信息的实时传输,普遍适用于时间触发CAN总线系统,提高了系统设计人员的效率.在非周期信息最坏延迟的基础上计算信息延迟超出截止期的失效概率,当总线期望负载较低、截止期选取恰当时,某些最坏延迟超过截止期的信息,其失效概率极低,认为信息及系统仍然满足实时性要求.
(References)
[1]ISO11898-4-2004 Road vehicles-controller area network:time triggered communication[S]
[2]Leen G,Heffernan D.TTCAN:a new time-triggered controller area network[J].Microprocessors and Microsystems,2002,26(2):77-94
[3]Stock Flight System.CANaerospace interface specification for airborne CAN applications V1.7[EB/OL].Berg/Farchach,Germany:Michael Stock Flight Systems,2006 [2010-12-23].http://www.stockflightsystems.com/index.php?option=com_content&task=view&id=13&Itemid=53
[4]任立平,周军.CAN总线高层协议CANaerospace及其设计应用[J].测控技术,2008,27(2):59-61
Ren Liping,Zhou Jun.CANaerospace:upper layer protocol for CAN and its design application[J].Measurement& Control Technology,2008,27(2):59-61(in Chinese)
[5]梁君,熊华钢.CAN总线及其较高层协议在航空航天的应用可适用性探讨[J].导弹与航天运载技术,2004(4):47-50
Liang Jun,Xiong Huagang.The applicability of CAN bus and its upper layer network protocol in aerospace[J].Missiles and Space Vehicles,2004(4):47-50(in Chinese)
[6]Tindell K,Burns A,Wellings A.Calculating controller area network(CAN)message response times[J].Control Engineering Practice,1995,3(8):1163-1169
[7]Davis R,Burns A,Bril R,et al.Controller aea ntwork(CAN)schedulability analysis:refuted,revisited and revised[J].Real-Time Systems,2007,35(3):239-272
[8]Shaheen S,Heffernan D,Leen G.A gateway for time-triggered control networks[J].Microprocessors and Microsystems,2007,31(1):38-50
[9]Albert A,Gerth W.Evaluation and comparison of the real-time performance of CAN and TTCAN[C]//9th CAN in Automation Conference.Munich:iCC,2003:05-1-05-8
[10]刘鲁源,王晓欣,马津艳.时间触发CAN总线系统的建模与性能分析[J].电子科技大学学报,2007,36(3):632-635
Liu Luyuan,Wang Xiaoxin,Ma Jinyan.Modeling and performance evaluation of time-triggered CAN bus[J].Journal of University of Electronic Science and Technology of China,2007,36(3):632-635(in Chinese)
[11]林琦,金惠华,尚利宏.CANaerospace协议实时性分析与研究[J].航空电子技术,2007,38(4):16-22
Lin Qi,Jin Huihua,Shang Lihong.Analysis and research of CANaerospace real-time performance[J].Avionics Technology,2007,38(4):16-22(in Chinese)
[12]Schmidt Klaus,Schmidt Ece G.Systematic message schedule construction for time-triggered CAN[J].IEEE Transactions On Vehicular Technology,2007,56(6):3431-3441
[13]Wang Shuju,Zhang Tianxia,Zhang Guosheng,et al.Scheduling design of automotive TTCAN control system based on average loading[C]//Proceedings of the World Congress on Intelligent Control and Automation.Piscataway,NJ:IEEE,2010:6772-6775
[14]曹万科,张天侠,刘应吉,等.基于TTCAN的汽车控制系统信息调度设计与分析[J].农业机械学报,2007,38(12):41-44
Cao Wanke,Zhang Tianxia,Liu Yingji,et al.Design and analysis on scheduling of messages in automotive control system based on TTCAN[J].Transaction of the Chinese Society for Agricultral Machinery,2007,38(12):41-44(in Chinese)
[15]Tindell K,Burns A.Guaranteeing message latencies on controller area network(CAN)[C]//Proceedings of the First International CAN Conference.Mainz:CiA,1994:1.2-1.11
[16]Dougla C,George C.工程统计学[M].代金,魏秋萍译.第3版.北京:中国人民大学出版社,2005:104-109
Dougla C,George C.Engineering statistics[M].Translated by Dai Jin,Wei Qiuping.3rd ed.Beijing:China Renmin University Press,2005:104-109(in Chinese)
Real-time analysis and assessment method of time-triggered CAN-bus
Xia Jiqiang Xue Liqiang Man Qingfeng
(School of Mechanical Engineering and Automation,Beijing University of Aeronautics and Astronautics,Beijing 100191,China)
To solve the problem that time-triggered CAN(controller area network)bus system lacked a unified real-time performance assessment method,a complete system establishment and assessment scheme was proposed.Time-triggered CAN-bus system scheduling matrix was established by using average-loading algorithm and periodic messages were guaranteed to transmit without delay by distributing them independent transmission windows within the system matrix.While considering the traditional CAN-bus transmission mechanism and the time-triggeredness feature,a calculation method was improved to calculate the worst-case delay of event-triggered messages in time-triggered CAN-bus system.The failure probability was calculated for eventtriggered messages whose worst-case delay exceeded their deadlines.System design and assessment process was established for CAN-bus transmission system and parameter adjustment was proposed to optimize system real-time performance.This assessment method could improve the design efficiency and the final analysis result is more accurate and practical by considering the effects of the event-triggered messages worst-case delay and failure probability.
time-triggered;CAN-bus;real-time performance;failure probability;assessment method
TP 273+.5
A
1001-5965(2012)02-0222-06
2010-10-19;< class="emphasis_bold">网络出版时间:
时间:2012-02-21 11:46;
CNKI:11-2625/V.20120221.1146.011
www.cnki.net/kcms/detail/11.2625.V.20120221.1146.011.html
国家863计划资助项目(2007AA041407,2008AA040207);重庆市科技计划项目资助(CSTC,2009AB2163)
夏继强(1970-),男,辽宁辽阳人,副教授,siajiqiang@buaa.edu.cn.
(编 辑:文丽芳)