楊華松 易 克
(1.煤炭科學研究總院沈陽研究院,遼寧 撫順 113122;2.浙江佳洲電器有限公司,浙江 溫州 325605)
CAN總線有著價格低廉、運行可靠等優點,已經逐漸應用于礦車等實時通信系統[1]。礦車控制系統屬于分布式實時系統,系統中包含周期的與隨機的實時信息,這些信息多數與安全關系緊密,有較高的實時性要求,因此需要在設計中進行合適的調度管理。對于實時性系統,有時間觸發和事件觸發[2],兩種觸發機制,時間觸發機制可以保證系統信息的通信抖動可控,而事件觸發機制一般用來滿足系統的靈活性需求。
CAN協議總線本身采用事件觸發機制,柔性時間觸發CAN(FTT-CAN)將時間觸發機制引入CAN總線[3],在提供時間觸發機制的同時具有很好的靈活性,本文基于 FTT-CAN提出了一種混和調度算法,以獲得較高的網絡利用率。
FTT-CAN在CAN協議的基礎上,采用同步相和異步相雙相結構,同時支持時間、事件觸發機制。FTT-CAN協議將總線時間細分成等長的連續時間單元,即基本周期 EC(Elementary Cycles),每個EC開始時,由主節點發送一個 EC觸發消息 TM(Trigger Message)給所有從節點。基本周期由主節點發送觸發信息TM啟動,到下一次觸發信息出現截止。FTT-CAN的異步相用于傳輸事件觸發信息,即隨機信息,同步相則用于傳輸時間觸發的周期性信息,其發送過程與各個 EC同步。FTT-CAN基本周期結構如圖1所示,圖中AM和SM分別表示隨機性信息和周期性信息。兩相之間保留空閑時間段α,使得不同觸發屬性的信息能夠嚴格在各自相內進行傳輸。
FTT-CAN對時間觸發信息的調度集中在主節點內,在主節點內保存了一個信息調度表SchT,用于實現對周期性信息的集中式在線調度。圖2給出了觸發消息對周期信息的控制方式,由圖可以看到,通過觸發消息字段,就可以控制周期性信息的發送與否。觸發信息數據段中的每一位都對應于一個周期信息,將該數據位置位,則對應的信息可在由該觸發信息開始的 EC內獲準發送,否則該信息不能在該 EC內發送。通過對主節點內信息調度表的在線規劃,動態地改變每個特定 EC內的觸發信息,就可以實現周期性信息的調度管理。

圖2 FTT-CAN調度原理圖
CAN在應用中,存在低優先級信息死鎖等情況[4],為了保證網絡性能通常使用的網絡利用率較低[5],本文針對上述情況,基于FTT-CAN提出了混合調度策略,將EDF算法引入FTT-CAN同步相調度中調度周期信息,EDF使時間最緊迫的信息獲得總線資源,可獲得較高的網絡利用率;采用 DPP[4]算法調度異步相的隨機信息,DPP算法可以為隨機信息提供公平的帶寬,有確定的傳輸時間界限,能夠有效的防止低優先級信息的死鎖[4]。
FTT-CAN的周期性信息的調度集中在主節點內,這為EDF算法的實施提供了條件,記周期性信息個數為NS,FTT-CAN下的EDF調度流程如圖3所示。
對于DPP調度,將信息m的優先級分為兩部分:動態優先級Pm-d和靜態優先級Pm-DM,記s為優先級提升的步長,DPP算法的流程如圖4所示。

圖3 EDF調度原理圖

圖4 DPP調度原理圖
采用文獻[6]中的礦車信息模型為研究對象,模型中共有 44個信息,其中 31個隨機信息記為A1~A31,優先級遞增,11個周期信息記為S1~S11。記隨機信息集為 A,周期信息集為 S,將在特定的基本周期 EC(n)傳輸的周期信息集記為 S(n),將基本周期取為周期信息的最大公約數 5ms,取網絡傳輸速率為250Kbit/s。
分別采用文獻[6]中的基于CAN的DM算法和本文基于FTT-CAN的混合調度策略調度這些信息,分析對系統性能的影響。
1)信息最壞響應時間分析
最壞響應時間 TRi表征信息從產生到抵達目的節點所用的最長時間,由3部分組成:

式中,Tbit為位傳輸時間,TBi為信息被正在傳輸的低優先級信息所阻礙的時間,TWi為等待高優先級信息傳輸的時間,TCi為信息i的傳輸時間。
對于基于CAN的DM算法,TBi和TWi分別為

式中,hp(i)為比信息 i優先級高的信息集合,lp(i)為比信息i優先級低的信息集合。
對于FTT-CAN,應用EDF算法時,由于信息i不被低優先級信息阻礙,其TBi=0,TWi為

采用DM和EDF時,周期信息的最壞響應時間如圖5所示。

圖5 周期信息最壞響應時間
由圖5可見,采用基于FTT-CAN的EDF調度時,低優先級信息的最壞響應時間明顯減少,信息的實時性得到明顯改善。
2)系統可調度性分析
為了評價系統的可調度性能,引入評價因子β,

式中,tDi為信息的截止期,tD′i為信息i仍可調度時所能承受的最小時間限制。
取隨機信息模型運行工況為:A 12—A 31在t=0時刻產生,A1—A11在A20完成傳輸時產生,可得采用不同的策略時系統的可調度性見表1。

表1 不同調度策略時的系統性能
由表1可見,采用了FTT-CAN的控制系統的冗余度有明顯提高,在保證信息可調度的同時,能有效保證控制系統的確定性。
本文基于FTT-CAN提出了混合調度策略,提高了CAN總線應用中的系統帶寬利用率,解決了信息的死鎖問題。
[1] MOHAMMAD A L, JORG K, WEIJIA J. Scheduling hard and soft real-time communication in a controller area network[J]. Control Engineering Practice, 7:1515-1523, 1999.
[2] KOPETZ H. A comparison of CAN and TTP[J].Annual Reviews in Control, 2000, 24: 177-188.
[3] LUIS A, PAULO P, JOSE A G. The FTT-CAN protocol:Why and How[C]. IEEE Transactions on industrial electronics, 2002, 49: 1189-1201.
[4] CENA G, VALENZANO A. An improved CAN fi eldbus for industrial applications[J]. IEEE Transactions on Industrial Electronics, 1997(44): 553-564.
[5] LEEN G, HEFFERNAN D. TTCAN: a new timetriggered controller area network. Microprocessors and Microsystems, 2002, 26: 77-94.
[6] TINDELL K, BURNS A, WELLINGS A J. Calculating controller area network (CAN) message response times[J]. Control Eng. Practice, 1995, 3: 1163-1169.