周紅英,陶龍龍
(安徽江淮汽車股份有限公司技術中心,安徽 合肥 230601)
汽車電子
基于ISO15765 CAN總線診斷測試方法研究
周紅英,陶龍龍
(安徽江淮汽車股份有限公司技術中心,安徽 合肥 230601)
隨著整車電氣網絡架構復雜化,汽車維修人員對車載網絡控制系統故障診斷及分析的難度增加,汽車的診斷功能測試對汽車開發進度管控有較大影響。文章以車載CAN網絡通訊為主要研究對象,在分析車載CAN網絡診斷協議與車載網絡診斷結構的基礎上,總ISO15765的車載網絡診斷體系結構。并基于CANoe軟件工具,研究了以CAN總線為基礎的汽車系統診斷測試方法,利用API語言編寫測試程序,對零部件及整車進行診斷操作,與基于診斷數據庫的測試相比有很大的靈活性。
車載網絡;CAN總線;ISO15765協議;診斷測試方法
10.16638 /j.cnki.1671-7988.2016.10.045
CLC NO. : U463.8 Document Code: A Article ID: 1671-7988 (2016)10-140-03
CAN 總線是當今自動化領域中最具應用前景的技術之一,可提供高達1 Mb/s的數據傳送速率,在可靠性、實時性和靈活性方面優勢明顯,適合測控單元之間的互連。現階段,CAN總線在汽車電子系統中得到廣泛的應用,代表汽車電子控制網絡的主流發展趨勢,基于CAN總線的故障診斷系統將越來越受關注。針對診斷設備和車輛內部電子控制單元(ECU)之間的數據交換,各個汽車公司幾乎都制定了相關的標準,導致各個汽車公司之間診斷儀的不通用性。
ISO15765是一種基于CAN總線的診斷協議,其實質就是在CAN總線上實現UDS即ISO14229,該協議滿足了OBD的系統要求,符合現代網絡總線系統的發展趨勢,將成為未來車輛行業的通用診斷標準。我國的汽車診斷還是比較落后,只有充分理解和掌握診斷協議ISO14229和ISO15765,才能有助于我國車輛診斷技術的發展。本文主要對協議ISO15765的結構和功能進行了研究分析,并介紹了常用的診斷測試方法。
車載網絡診斷實現的技術突破點在ISO15765的深入研究與實現,診斷應按協議內容與體系結構實現來進行設計,診斷協議體系結構分為4層:分別為應用層,網絡層,數據鏈路層和物理層,ISO15765的體系結構如圖1所示:
數據鏈路層和物理層是由CAN國際標準ISO 11898所描述、具有非破壞性的網絡仲裁機制,其協議數據單元是CAN數據幀,包含的最大數據長度為8 Byte。物理層的物理介質是CAN總線,具有較高的通信速率、傳輸距離較遠、抗電磁干擾能力強等優點。
網絡層主要是為應用層提供接口,并為長報文(數據長度大于8 Byte)的傳輸提供了分組和重組的功能,由ISO15765—2 標準所描述。
應用層診斷協議設計應遵循ISO14229—1或ISO15765—3,應用層規定了具體診斷服務的服務標識符(SID)及后面所攜帶的參數格式與內容。應用層數據經過網絡層實現數據的傳輸、打包、解包,數據傳輸時以單幀和多幀形式按ISO15765—2進行傳輸。數據經數據鏈路層時應按ISO11898—1轉化為有效的CAN數據幀,最后經物理層實現與另一節點的通信。被診斷電子控制單元(Electronic Control Unit,ECU)收到請求報文后,再按診斷協議體系結構進行逐層解析。
2.1 車載CAN網絡的診斷結構
診斷結構是車載網絡診斷設計時應該重要考慮的因素,但需根據車載網絡診斷的相應需求來設計合適的車載網絡診斷結構。
2.1.1 車載網絡診斷結構分析
根據不同的車身網絡層次結構和客戶端的接入位置,大體上可分為3種診斷結構:
(1)是客戶端(診斷設備)與服務器(ECU)在同一個網絡,客戶端與服務器直接相連。
(2)客戶端通過網關與服務器相連接。
(3)主網絡下面有子網絡,客戶端在主網絡中,而需要診斷的服務器在子網絡中,此時客戶端與服務器的通信通過兼有網關功能的服務器實現。
2.1.2 CAN網絡診斷結構的設計
對2.1.1節中討論的3種車身網絡診斷結構而言,第(3)種診斷結構為遠程診斷,主要用于不同網段的診斷,此種診斷方式下其數據域需攜帶遠程地址信息,所以有浪費幀資源的缺陷。針對CAN 網絡的診斷,本文的診斷結構設計選用第(1)種診斷結構,診斷設備與被診斷ECU在同一個網絡,不需要網關客戶端與服務器直接相連。所設計的結構如圖2所示,基于低成本的USBCANII網絡報文采集工具與VC所開發的上位機軟件作為診斷上位機連接到網絡中,診斷上位機與被診斷ECU 連接到同一網絡組成車載網絡診斷系統。
2.2 車載網絡診斷功能的設計
根據2.1節中的網絡診斷結構,對診斷網絡進行功能和協議的設計。
2.2.1 車載網絡診斷功能的設計
系統功能設計及PC端診斷軟件各功能模塊之間的關系與參數傳遞如圖3所示。硬件配置功能模塊,實現通信網絡波特率、濾波等的配置;通信功能模塊,通過硬件配置模塊所傳遞的配置通信參數以及診斷模塊所傳遞的診斷參數可實現通信;診斷功能模塊,可實現診斷參數配置、診斷服務請求以及診斷響應的實施,在此功能模塊中,包含應用層的25種診斷服務執行。此外報文顯示功能模塊、文件存儲功能模塊以及屏幕刷新功能模塊,可實現對診斷通信報文的分析與處理。診斷上位機與被診斷ECU通過診斷協議ISO15765進行診斷通信。
2.2.2 網絡診斷協議設計
診斷協議的實現是診斷設備與被診斷網絡ECU 的診斷通信過程,因此,診斷協議的設計包含診斷設備軟件的診斷協議設計與被診斷ECU的診斷協議設計。其中,在此系統功能設計中,診斷設備的診斷協議實現即為PC端診斷軟件協議的實現。
在設計PC端診斷軟件診斷協議時,充分考慮了診斷協議中否定響應的可能情況,在與被診斷ECU進行診斷通信發生否定響應狀況時,上位機會給以否定響應種類和原因的提示。診斷PC端軟件設計了ISO14229—1.2所規定的25種應用層診斷服務,在此以安全訪問服務的診斷協議的執行流程為例,如圖4所示:
首先,ECU 進行非默認模式會話請求,需注意的是,ECU上電時默認的診斷會話狀態為默認會話模式,因此,需要進行診斷會話模式跳轉才能執行安全訪問服務。然后,進行安全等級選擇并請求種子,根據接收到的種子及安全訪問算法發送密鑰,收到ECU正定響應后則ECU被解鎖。其中,安全算法可自行設計,在此設計了3種安全等級的安全算法,分別為等級1、等級2和等級3,算法依次復雜。
3.1 常見問題診斷步驟
通過對車載網絡傳輸系統故障的分析,可以總結出一般診斷步驟為:
(1)了解該車型的車載網絡系統傳輸特點(包括傳輸介質、車載網絡傳輸系統的結構形式等)。
(2)車載網絡系統傳輸的功能,如有無喚醒功能和睡眠功能等。
(3)檢查汽車電源系統是否存在故障,如發電機的輸出波形是否正常(如不正常將導致信號干擾等故障)等。
(4)檢查車載網絡傳輸的鏈路是否存在故障,采用替換法或跨線法進行檢測。
(5)如果節點故障,只能用替換法進行檢測。
3.2 基于測試軟件的診斷
目前大多診斷工作都是基于診斷測試軟件進行,如通過CANoe進行手動測試,或是編制診斷數據庫,運用DIVA進行診斷自動化測試,再是使用診斷儀讀取故障代碼(DTC),確認故障類型。
基于德國Vector公司開發的CANoe軟件,通過軟件自帶CAPL(CAN access programming language)語言編寫測試程序,對被測試模塊進行診斷測試。測試時通過CANoe trace窗口讀取被測樣件的診斷報文,根據報文判斷被測樣件的診斷功能是否符合整車廠提出的診斷規范。這種方法較為靈活、可靠。不僅可以對測試對象進行全面的測試,也可以針對特定診斷服務進行單獨測試,如圖5所示為基本的診斷測試界面:
本文通過研究分析車載網絡國際診斷標準IS015765,根據車載網絡診斷結構,設計了基于ISO15765的車載網絡診斷。開發的基于低成USBCANII的診斷工具可實現對被診斷ECU實現基于ISO15765的診斷通信。同時,在開發支持診斷功能的ECU階段,可實現診斷服務的執行與響應測試,為支持診斷功能ECU的開發商提供一種低成本、方便靈活的診斷測試工具。通過實際測試車載網絡中的節點驗證了所開發系統的可行性與可靠性,對基于ISO15765的車載網絡診斷的后續設計與開發具有一定參考價值。
[1] International Organization for Standardization.ISO 1 5765—2—2004Road Vehicles-diagnostics on Controller Area Networks (cAN)—Part2:Netwo~layer services[S].2004.
[2] International Organization for Standardization.ISO 1 5765- 3·2004. Road Vehicles一DiagnOstics on Controller Area NetworksfCAN1— Part3:Implementation of Unified Diagnostic Services(UDS on CAN)[S].2004.
[3] International Organization for Standardization.ISO 14229—2006 Road Vehicles—Unined Diagnostics Services(UDS1 Specifica—tion and Requirements(v2)[S].2006.
[4] 劉麗麗,徐皚冬,宋巖,周亞.車輛通用故障診斷協議的研究與開發[J].計算機工程,2012.38(16).
[5] 常欣紅.汽車故障診斷標準ISOl5765的網絡層分析與實現哈爾濱工業大學碩士論文2006.
Research of Vehicular CAN Network Diagnosis Test Method Based on ISO15765
Zhou Hongying, Tao Longlong
(AnHui JiangHuai Automobile CO., LTD. Technical Center, Anhui Hefei 230601)
The Electric structure are continuously complex.It also undoubtedly increases the dificulty to diagnose and analysis the vehicle network control system by the technician.The test of vehicular CAN Diagnostic function has great influence on the vehicle development progress. In this article,it mainly covers the classifying of network malfunction.On the basis of the research and analysis of CAN network diagnostic protocol and automotive diagnostic structure ,summarize the architecture of ISO15765 . Based on CANoe Software, research diagnosis test method of vehicular CAN network and use API languages to write test program. This test using this program is very convenient. Compared to the test based on diagnostic database, it is more flexible.
Vehicle network;CAN; ISO15765 protocol;diagnosis test method
U463.8
A
1671-7988(2016)10-140-03
通訊作者:周紅英,(1988.6-),女,就職于安徽江淮汽車股份有限公司技術中心。主要從事電器設計工作。