基于系統工程的汽車電子CAN 通信協議設計
本文引用地址:http://www.104case.com/article/197748.htm
除了這些參數以外,完整的系統設計還需要以下信息:
●信號定義:類型、大小等;
●發送節點數據定義:收發的信號、TP和TS的定義;
●接收節點數據定義:收發的信號、TP、TS和maximum age的定義;
●拓撲結構的定義:節點之間的互聯關系。
以上數據為基礎,對通信過程的實時性進行分析,計算通信中的延遲。然后根據單調速率分析法(deadline monotonic analysis),分配消息ID并設置周期。
根據系統獲取的時間要求,系統計算消息的延遲并驗證設計的協議是否滿足這些時間要求。如果不滿足時間要求,系統將自動調整消息ID和周期,直到滿足所有的時間要求。
本文用Mentor Graphics公司Volcano產品線的設計工具VNA進行了實驗。VNA是CAN/LIN協議的自動化設計工具,其核心思想就是采用了本文介紹的系統工程設計方法。其使用方法可以如圖5所示,用戶提供信號及節點定義、本文介紹的時間參數定義及項目管理定義,VNA將自動對CAN通信協議進行設計,輸出通信協議規范。
其中圖6是本次實驗的通信系統拓撲結構,系統由三條CAN總線和兩條LIN總線組成,CAN協議采用的是29位。
輸入參數后,VNA自動生成通信協議,結果如圖7所示。消息EMSHSC_FrP00的ID為0x04c000d,周期為10ms,計算出的延遲時間為1.734ms。
結論
系統工程設計法,采用一套量化體系描述數據收發的完整過程。明確定義這些指標,并清晰描述了系統功能的時間性要求。正因為這樣,使得自動化設計協議成為可能。
根據這些量化指標,系統將自動計算消息的延遲時間,并自動調節消息的優先級和周期,以控制消息的延遲時間,保證用戶提出的時間要求全部得到滿足,從而實現從設計角度控制消息延遲的目的。
自動化設計協議降低了協議設計的技術門檻,特別是對于中國的整車廠,沒有經驗積累,這樣的工具必將助力國內自主產品在總線上的研發。
評論