符丹丹,柳東亮(陜西重型汽車有限公司,陜西 西安 710200)
基于CANoe的整車網絡開發和網絡測試
符丹丹,柳東亮
(陜西重型汽車有限公司,陜西 西安 710200)
文章主要介紹的是使用 CANoe軟件進行商用車整車網絡開發及網絡測試介紹,包括整車數據庫建立,仿真環境的搭建,Panel界面的搭建,通過CANoe的仿真模擬,可以有效地模擬整車網絡負載情況,驗證整車網絡設計的可靠性;商用車網絡測試的測試內容及測試必要性。
CANoe;仿真;CAPL;dbc數據庫;網絡測試
10.16638/j.cnki.1671-7988.2015.12.021
CLC NO.: U463.6Document Code: AArticle ID: 1671-7988(2015)12-61-03
隨著汽車電子技術的迅速發展,CAN總線技術因其性價比高,可靠性高等特點,在汽車上的應用越來越廣泛,具有CAN功能的控制器也越來越多,各個控制器之間的信號匹配應用以及總線的負載率就成為了 CAN網絡設計中重要的環節[1]。
CANoe是德國Vector公司開發的CAN總線應用系統開發軟件。CANoe可以通過Vector的CAN總線接口硬件,實現虛擬總線與真實物理總線的連接。使用CANoe可以進行總線應用系統以全部虛擬節點為基礎的全數字仿真,可以進行物理節點與虛擬節點相結合的半實物仿真[2],也可以使用CANoe對真實物理總線的通信進行實時監控,同時該工具也是整車網絡測試和單節點網絡測試不可以缺少的測試工具。使用db++模塊可以建立整車數據庫,方便快捷的完成通訊矩陣建立,實現整車信號的收發匹配;panel模塊可以模擬整車器件,直觀的進行數據模擬。
首先應確定整車的網絡拓撲圖,確定終端電阻的位置,選擇終端電阻類型包括Ⅰ類和Ⅱ類節點,整車網絡的兩個終端電阻可以選擇Ⅰ類節點模型或Ⅱ類節點模型,也可以選擇Ⅰ類和Ⅱ類的混合形式[3],如圖1、2、3所示:

圖1 Ⅰ類節點模型

圖2 Ⅱ類節點模型

圖3 Ⅰ、Ⅱ類混合節點模型
比如整車總線節點包括發動機ECU、ABS控制器、BCM控制器以及IC四個節點,通過控制器布置,確定線束最遠端的兩個節點IC和發動機ECU,終端電阻根據整車的線束要求和控制器要求選擇。我們采用Ⅱ類節點的方式,終端電阻集成在IC和發動機ECU內部,方便線束布置。
以整車共有如圖1所示4個CAN節點為例,發動機ECU、ABS、BCM、IC,網絡拓撲如下所示:

圖4 網絡拓撲
根據各個控制器的信號列表,使用CANoe自帶的db++軟件創建dbc數據庫如下圖5所示:

圖5 dbc數據庫
從數據庫可以很清楚的看到整車節點信號之間的收發關系,db++中Communication Matrix命令可以根據數據庫自動生成通訊矩陣,方便文檔編制。
CAN總線是一種串行通訊總線,通過實驗驗證,總線負載率不可超過50%,否則會出現丟幀,總線出現錯誤幀等問題,所以整車網絡開發很重要的一個工作就是評估負載率,必須根據信號列表計算總線負載,如圖1的網絡拓撲,選擇250kbps的通訊速率,CANoe仿真得出總線負載16.17%,滿足設計要求,所以采用250kbps的速率即可。
使用CANoe軟件創建仿真環境,然后用CANoe自帶工具CAPLGenerator編譯各節點數據庫,形成CAPL語言文件,加載至如下環境模塊中如圖6所示:

圖6 仿真環境
仿真前配置波特率為 250kbps,該環境可以全虛擬節點仿真,也可以通過屏蔽其中的節點進行半實物仿真,可以進行負載率模擬,報文延時計算等。
4.1全虛擬節點仿真
所有節點均采用CANoe模擬發送節點,發動機ECU加載CAPL語言,發送EEC1、EEC2等30條報文,CAPL語言界面如圖7所示:

圖7 CAPL界面
CAPL語言加載完成后,即可以進行全虛擬節點的仿真。
CANoe提供的Panel顯示面板配置,可以實現人機交互,直觀的顯示CAN總線系統各虛擬節點的工作狀態。圖8所示為ABS的模擬界面。

圖8 人機交互界面
通過全虛擬節點仿真,可以直觀的仿真整個總線的負載率,信號的收發情況及信號延時率。
4.2半實物仿真
通過CANcase的硬件接口,CANoe可以將實際物理CAN總線與虛擬CAN總線連接在一起,實現物理節點與虛擬節點相結合的半實物仿真。比如此時有ABS控制器、IC兩個實物,可以使用圖6 CANoe的仿真環境,屏蔽ABS和IC,系統連接圖如圖9所示:

圖9 半實物仿真開發環境
通過半實物仿真可以驗證實物節點的信號是否滿足設計要求。
整車網絡開發完成需要對單節點及整車網絡進行測試,CAN總線分為物理層、數據鏈路層、應用層四部分,我們需要分別對這幾個進行測試。物理層測試是指對使用的電路、芯片、線束等硬件進行相應的測試,通過檢驗控制器輸出的CAN信號電平、位時間、故障處理等,檢驗是否滿足設計要求;數據鏈路層測試是指對控制器的上下電行為、欠壓或過壓,bus-off行為的測試;應用層主要是對信號格式、發送周期、信號接收能力的測試。
首先應該對單節點進行測試,通過使用CANoe、示波器、CANstress等工具按照圖10的連接方式進行連接:

圖10 測試設置
將物理層、數據鏈路層、應用層全部測試完畢,如滿足設計要求,則需要根據網絡拓撲將實物節點連接到一起進行整個網絡測試。
本文主要介紹了基于 CANoe這款開發和測試軟件的整車網絡開發過程和網絡測試內容,通過以上過程,整車網絡的開發基本完成,最后通過網絡測試驗證整個設計是否滿足要求。
[1] W.齊默爾曼,R.施密特加爾.汽車總線系統[M].北京:機械工業出版社,2011.
[2] 楊立.一種基于 CANoe的 CAN總線系統開發方法[J].測控技術2007(04).
[3] 史久根. CAN現場總線系統設計技術[M].北京:國防工業出版社,2004.
The Vehicle Network Development and Testing Based on CANOE
Fu Dandan, Liu Dongliang
( Shaanxi Heavy-Duty Automobile Co., Ltd., Shaanxi Xi'an 710200 )
This paper mainly introduces the use of CANoe software for commercial vehicle network development and network testing, including the establishment of the vehicle database, the simulation environment of the building, the Panel interface, through the simulation of CANoe, can effectively simulate the vehicle network load, the reliability of the vehicle network design, test content and test necessity of commercial vehicle network.
CANoe; Simulation; CAPL; DBC database; Network testing
U463.6
A
1671-7988(2015)12-61-03
符丹丹,就職于陜西重型汽車有限公司。