程瑤
(陜西交通職業技術學院 陜西 西安710000)
基于CAN的車載故障診斷系統設計與實現
程瑤
(陜西交通職業技術學院 陜西 西安710000)
對于當前社會信息化技術發展的前提下,基于CAN總線技術,分析設計車載故障診斷系統的需求,并基于SAE J1939協議,從系統需求分析、總體結構、功能設計、CAN總線設計、硬件、軟件代碼設計方面優化設計實現車載故障診斷系統。結果證實,基于CAN設計車載故障診斷系統,可以提升系統在診斷車載故障時的準確率,提升34.0%,可以在線完成對車輛故障的診斷工作,發揮積極應用性能。結論表明,基于CAN技術設計實現車載故障診斷系統,滿足實際應用需求,發揮積極設計實現效益,可以在實踐中推廣該系統設計方案。
車載故障診斷系統;CAN;系統設計
隨著社會時代的發展,在現代汽車的故障診斷方面,當車輛出現故障時,繼續能夠及時診斷車輛故障情況,因而設計開發車載故障診斷系統,即將成為一大趨勢[1-4]。文中基于CAN總線技術,優化設計開發車載故障診斷系統,以確保可以及時診斷車輛故障,發揮積極影響。
CAN總線最初是由德國BOSCH公司提出的數字信號通信網絡目的是為了解決汽車監控系統中的諸多復雜技術和難題,它屬于總線式的串行通信協議[5-8]。在CAN總線技術支持下,可以使系統的硬件連接變得更為簡單,也可以使硬件運行中有良好的可靠性,提升信息傳輸的實時性,運用該技術設計的系統性能價格比也較高[9]。同時,在實際系統設計中,運用CAN總線技術,也總是能夠滿足當前現代自動化系統的設計通信需要,特別是在工業數據的總線通信領域之中,更是能夠發揮積極的應用價值[10]。分析CAN總線技術的特點,主要就表現在以下幾點:首先,在系統線路控制中,CAN總線是一種多主站的總線,并且可以確保在任意的時刻內,總線各節點均能夠主動的想控制網絡的其它節點發送信息,可以不分主從級別的進行節點通信,運用CAN總線設計的系統,可以使系統的通信模式更為靈活。其次,在CAN總線中,也具備較為獨特的非破壞性仲裁技術,可以將具有高優先級的節點,優先的為其傳送數據,這樣就能滿足系統運行通信中的實時性要求[11-16]。運用總線CAN技術,開發設計車載故障診斷系統,發揮重要作用。
在本次設計的CAN技術下的車載故障診斷系統中,應該提高系統中各個ECU之間的通信速度,從而運用CAN總線技術簡化線路,降低系統總線故障頻率,更加方便的實現對汽車各電子控制單元(ECU)間的通信[17]。在系統設計運用CAN總線通信技術中,還具有一點對多點、點對點、全局傳送數據的通信功能,發揮應用優勢基于CAN總線技術,設計實現車載故障診斷系統,確保可以使傳統的車載故障診斷系統與能夠故障診斷儀相互結合,這樣就可以將故障診斷儀完善的數據通信功能、友好的界面顯示與在板故障診斷的實時性相結合[18],從而能夠完成故障信息如故障診斷碼、故障描述等的實時采集與顯示。同時在車載故障診斷系統設計中,應該確保能夠及時有效的處理車輛故障信息,提升車載設備的穩定性,簡化車載設備維修困難,保證汽車安全運行,滿足系統用戶使用需求。
3.1 系統的總體結構設計
對于本次設計的車載故障診斷系統中,運用CAN技術,從三大模塊優化設計系統的結構,主要包含總線接入的模塊、主控的模塊以及實現用戶與系統人機交互的模塊,由這3部分組成系統的重要結構部分。系統結構如圖1所示。

圖1 系統的總體結構
總線接入模塊由CAN控制器和收發器兩個部分組成。主要就是可以通過車輛中設置的車載古鎮診斷系統的接口,能夠與車輛的CAN網絡進行連接,這樣就有助于實現在局域網內,確保車載故障診斷系統同車輛控制數據的交互傳輸。
在系統的人機交互模塊之中,則主要是面向用戶設計的,因此可以由LCD屏以及觸摸屏這兩個部分組成,該模塊在系統的結構內,主要就是可以顯示車輛的相關狀態參數,同時也可以顯示車輛的故障信息,也可以確保用戶通過該模塊查詢車輛狀態,也可以輸入故障診斷指令,運用系統診斷車輛故障。
同樣,對于系統的主控制器模塊,主要就是控制交互模塊與總線模塊的,確保這兩個模塊能夠有序的運行,并且可以通過程序設計,有效發揮車載故障診斷系統的各項故障診斷控制作用。
3.2 系統CAN總線設計
在CAN中學技術支持下的車載故障診斷系統設計中,確保提升系統診斷故障的實時性。相較于傳統的車載故障診斷系統中,是不允許設計實時系統的,因此可以運用CAN技術,分析汽車上各設備、各節點的實時性,然后就可以根據各節點對車載故障診斷實時性的要求,能夠設計出針對高、中、低速不同速率的CAN通信網絡,優化假設系統的CAN總線,能夠設計高速CAN通信網絡、中速的CAN通信網絡以及低速CAN通信網絡,實現對不同節點實時要求的總線傳輸。同時,也可以針對這3個不同的CAN通信網絡,設置網關,連接3個網關而實現對車載故障診斷系統中全部節點數據的共享。就如,在車載故障診斷系統設計中,由于車輛中座椅調節、中央門鎖以及車燈控制部分,沒有嚴格的實時性需求,可以將其設置為低速通信網絡,設置其通信波特率為30 bps。因而,本次設計的車載故障診斷系統中,其CAN總線通信網絡的拓撲結構,如圖2中所示。
3.3 設計系統的硬件部分
基于CAN技術,設計的車載故障診斷系統中,為確保能夠減少系統的開發周期,將會運用由Motorola公司生產帶CAN模塊的MC9S12DP256微處理器。在 MC9S12DP256中,不僅包含 16位的 HCS12 CPU,性價比高,可以降低車載故障診斷系統設計成本,簡化車載故障診斷系統的開發與升級過程,發揮積極應用優勢。同樣,在系統的硬件設計部分,其CAN收發器以及電源系統的控制部分,也均是應用MC9S12DP256芯片來控制實現的。在系統設計中,MC9S12DP256硬件的主頻可以高達25 MH,不僅2個能夠異步串行通信的SCI口,也具備一些通信接口,滿足系統控制診斷車輛故障的需求,維護系統正常運行,使設計的車載故障診斷系統發揮實用價值。

圖2 系統的CAN拓撲結構圖
3.4 系統軟件設計
本次設計的車載故障診斷系統中,基于CAN總線技術,將會采用嵌入式的Linux系統作為車載系統的操作系統。之后,在系統的軟件設計中,采用Linux操作系統后,就可以將故障診斷系統中所有的硬件操作,均放入到故障診斷系統的驅動程序內,完成對系統故障診斷的、任務調度以及并發控制等操作。同樣,在本次系統設計中,為確保系統在未來有更好的擴展性,可以優化系統軟件的設計層次,這樣不僅可以簡化程序結構,使故障診斷系統的程序結構更加清晰,也可以提升系統故障診斷功能的可移植性,便于日后系統的升級維護。關于本次設計的軟件層次結構,具體如圖3所示。

圖3 系統的軟件設計層次
對于本次設計車載故障診斷系統中,運用CAN技術,在系統的軟件驅動程序設計方面,由于驅動程序一般是在系統的內核部分,主要就是負責計算機控制系統同車輛各外圍硬件設備之間通信的,因此應該優化設計系統此部分。具體系統代碼實現中,故障診斷算法訓練部分代碼如下所示:

其驗證本系統設計實現效益,能夠利用CAN alyst-II CAN-bus的總線分析儀,從而可以搭建出本次車載故障診斷系統的網絡虛擬測試環境,從而能夠對本次設計的車載故障診斷系統的各項功能,進行相關的應用測試。對此,可以選取多組的測試參數,對車載故障診斷系統進行應用測試,系統得出的故障診斷解析結果全部正確,部分結果如表 1所示。

表1 測試結果
當實際運行中,若是車輛發生故障之時,運用基于CAN車載故障診斷系統,這樣也能夠在系統的人際交互窗口中,顯示出車輛相關設備的故障源。對于本次測試中,關于瞬時油耗的顯示中,能夠讓車輛的駕駛員認知了解到在進行車輛各種操作時,車輛在瞬時的油耗情況,這樣就有助于糾正司機不良駕駛車輛的習慣。同樣,在系統長,也可以應用CANPro協議,基于系統的故障診斷分析平臺,向系統的控制網絡中發送相應的報文,測試車子故障診斷系統的監控性能,確保系統在實際中發揮實際作用。本次系統應用測試的結果,如圖4所示。

圖4 驗證結果
基于CAN設計車載故障診斷系統,可以提升系統在診斷車載故障時的準確率,提升34.0%,可以在線完成對車輛故障的診斷工作,發揮積極應用性能,提升系統設計實現效益,具有積極影響。基于CAN設計車載故障診斷系統,運用CAN網絡,不僅可以提升車載故障診斷系統的性能,也可以提升系統運行的可靠性,同樣也可以使設計的車載故障診斷系統維持其獨特的設計準確,發揮應用價值。在社會實踐中應用基于CAN技術設計的車載故障診斷系統,不僅能夠檢測出車載設備運行過程中產生的故障錯誤,也可以通過在線的模式診斷分析車載設備故障,簡化車輛故障診斷程序,提升車載系統診斷效率,發揮積極的應用效益,因而也越來越受到人們的重視,發揮積極的應用實現價值。
綜上所述,基于CAN技術設計實現車載故障診斷系統,滿足實際應用需求,發揮積極設計實現效益,可以在實踐中推廣該系統設計方案。
[1]駱志宏,許勇,馬秋香,等.商用車在線故障診斷系統設計與實現[J].計算機測量與控制,2015,23(4): 1098-1101.
[2]楊淼,甘超成,馬磊.翻越220kV水平雙分裂導線間隔棒的行走裝置研究[J].陜西電力,2016(5):5-8.
[3]陳濤濤,李占朝,馬宏忠.基于電刷電流的雙饋異步發電機滑環裝置故障診斷新方法研究[J].陜西電力,2015(11):46-51.
[4]劉宇俊,彭顯剛,林利祥.基于縱橫交叉優化BP神經網絡的變壓器故障診斷研究[J].陜西電力,2016(9):8-13.
[5]竇文娟.基于SVM的車載發動機故障診斷系統設計[D].哈爾濱理工大學,2012.
[6]馮元,吳鋒,姚棟偉,等.OBD綜合部件監測功能測試系統的設計[J].車用發動機,2014(2):23-26.
[7]高雪.車載CAN網絡汽車控制故障診斷系統的設計[J].信息技術,2012(2):141-144,148.
[8]劉雪.基于CAN協議的低速CAN車載ECU診斷系統的設計與實現[D].成都理工大學,2015.
[9]盛祥政.基于智能手機的遠程汽車故障診斷系統的研發與開發[D].武漢理工大學,2012.
[10]孟磊.基于OBD-Ⅱ的車載遠程故障診斷系統設計[D].武漢理工大學,2012.
[11]曹紅.純電動汽車故障診斷系統開發[D].山東大學,2014.
[12]皇甫晶瓊.基于CAN總線的重卡車載故障診斷系統研究[D].西安石油大學,2011.
[13]劉鵬,朱建新,儲愛華,等.基于熱模型的動力電池熱故障診斷系統[J].上海交通大學學報,2015,49(4):487-493.
[14]崔書超,柴智,南金瑞,等.基于CAN總線的純電動汽車故障診斷系統 [J].車輛與動力技術,2012(2):44-47.
[15]張繼輝,許勇.基于SAE J1939的車輛監測與故障診斷車載系統[J].計算機系統應用,2013(3):73-77.
[16]吳洪昌.簡議汽車電子技術時代人工經驗診斷重要性分析[J].電子測試,2014(18):105-107.
[17]王玉.汽車功能子系統之間的關聯關系和故障分析方法[J].自動化與儀器儀表,2016(3):85-86.
[18]張烜.汽車車身網絡節點的故障診斷系統設計[D].湖南大學,2013.
Design and implementation of vehicle fault diagnosis system based on CAN
CHENG Yao
(Shaanxi College of Communication Technology,Xi'an 710000,China)
In the context of the current society of the development of the information technology,based on the CAN bus technology.Analysis design of vehicle fault diagnosis system of demand,and based on SAE J1939 protocol,from the system requirements analysis,overall structure,functional design,design of CAN bus,the hardware and the software code design aspects of optimization design of vehicle fault diagnosis system.The results confirmed that the design of vehicle fault diagnosis system based on the CAN bus can be lifting system in vehicle fault diagnosis accurate rate and enhance the 34.0%,can be completed online vehicle fault diagnosis,and play an active application performance.Conclusion shows that the vehicle fault diagnosis system based on CAN technology can meet the needs of practical application,and play an active design to achieve benefits.It can promote the design of the system in practice.
vehicle fault diagnosis system;CAN;system design
TN99
A
1674-6236(2017)10-0162-04
2016-06-22稿件編號:201606160
陜西省自然科學基礎研究計劃項目(2012JM8011)
程 瑤(1984—),女,廣東中山人,碩士,講師。研究方向:汽車制造裝配,汽車電子,新能源汽車。