夏繼強 薛利強 滿慶豐
(北京航空航天大學 機械工程及自動化學院,北京 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.
(編 輯:文麗芳)