謝鈺敏
(廣州汽車集團(tuán)股份有限公司 汽車工程研究院,廣東 廣州510640)
隨著科技的發(fā)展及汽車電子控制技術(shù)的提高,汽車的診斷方法也逐漸從以前的人工定性檢查轉(zhuǎn)變到現(xiàn)在的車載自診斷系統(tǒng)?,F(xiàn)在主流的車載自診斷系統(tǒng)主要為手持式故障診斷儀,此類診斷儀一般具有強大的功能和廣泛的實用性,但是由于價格昂貴和功能的專業(yè)針對性,加上其體積較不易攜帶,導(dǎo)致其只適合于專業(yè)維修使用,在一般車主中推廣存在難度。
而本文設(shè)計的汽車故障診斷儀,只需要一臺配備藍(lán)牙的智能手機(jī)并安裝上相應(yīng)的手機(jī)程序,即可實現(xiàn)汽車故障診斷及車輛狀態(tài)監(jiān)測。由于現(xiàn)在的智能手機(jī)普及率高,而且本診斷儀體積小,成本低,易于攜帶,非常有利于推廣和使用,具有很強的市場競爭力。
如圖 1所示,整個診斷系統(tǒng)包括兩個部分,分別是藍(lán)牙故障診斷終端及手機(jī)應(yīng)用。
藍(lán)牙故障診斷終端通過汽車OBD-II口與車輛通信,并通過藍(lán)牙模塊(Bluetooth,簡稱BT)和智能手機(jī)通信。所以通過本藍(lán)牙故障診斷系統(tǒng),即可實現(xiàn)用手機(jī)對汽車進(jìn)行故障診斷和車輛狀態(tài)監(jiān)測。其中,完成診斷模塊和車輛的數(shù)據(jù)交互,是該系統(tǒng)中最重要的方面。
系統(tǒng)符合ISO15765診斷規(guī)范及OBD-II標(biāo)準(zhǔn)。其中OBD-II標(biāo)準(zhǔn)是為了解決汽車對外的通訊協(xié)議和通訊接口的統(tǒng)一問題,美國汽車工程師協(xié)會(SAE)在1993年制訂的。
OBD-II接口引腳定義如表格1所示。其中本診斷儀用到的通信協(xié)議為:ISO15765(CAN-BUS)[4],通過 OBD-II口的 1、9、6、14 腳連接,這樣就可以直接跟汽車內(nèi)任何CAN節(jié)點進(jìn)行交互通信。
圖1 基于OBD-II的汽車藍(lán)牙故障診斷系統(tǒng)Fig.1 Bluetooth vehicle fault diagnosis system based on OBD-II
手機(jī)應(yīng)用方面主要負(fù)責(zé)人機(jī)交互界面及診斷數(shù)據(jù)的儲存。用戶通過手機(jī)提供的人機(jī)交互界面顯示選擇相應(yīng)的診斷服務(wù),然后手機(jī)應(yīng)用程序會將相應(yīng)的指令發(fā)送到藍(lán)牙故障診斷終端去執(zhí)行,執(zhí)行結(jié)果同樣經(jīng)過藍(lán)牙信道返回到藍(lán)牙故障診斷終端,并將數(shù)據(jù)顯示到界面。見表1。
表1 OBD-II接口引腳定義Tab.1 OBD-II interface pin definitions
1.2.1 藍(lán)牙故障診斷終端的軟件架構(gòu)
圖2 軟件架構(gòu)Fig.2 Software Architecture
1)藍(lán)牙故障診斷系統(tǒng)的操作系統(tǒng)
系統(tǒng)采用符合OSEK/VDX規(guī)范的車規(guī)級操作系統(tǒng)。此標(biāo)準(zhǔn)定義了三個組件來構(gòu)成OSEK/VDX標(biāo)準(zhǔn):實時的操作系統(tǒng)(OSEK OS)[1],通訊子系統(tǒng)(OSEK COM)[2]和網(wǎng)絡(luò)管理系統(tǒng)(OSEK NM)[3]。 圖 2 給出了OSEK/VDX的基本結(jié)構(gòu)和各組件間的關(guān)系。
2)藍(lán)牙故障診斷終端應(yīng)用軟件任務(wù)劃分
本藍(lán)牙故障診斷系統(tǒng)的應(yīng)用軟件主要劃分為兩個任務(wù):藍(lán)牙任務(wù)(BT Task)及CAN總線任務(wù)(CAN Task)。兩個任務(wù)之間通過消息進(jìn)行通信。
3)CAN 總線任務(wù)
圖3 CAN總線任務(wù)通訊流程圖Fig.3 CAN bus task communication flowchart
CAN總線任務(wù)主要完成CAN總線診斷命令的收發(fā),應(yīng)用數(shù)據(jù)的組包解包等與汽車各ECU節(jié)點交互通訊相關(guān)。主要的流程圖如圖3所示。
4)藍(lán)牙任務(wù)
藍(lán)牙任務(wù)主要處理藍(lán)牙的連接管理,藍(lán)牙數(shù)據(jù)收發(fā),應(yīng)用數(shù)據(jù)組包解包等與手機(jī)交互通訊相關(guān)為藍(lán)牙故障診斷終端軟件的一個重要部分,其流程圖如圖4所示。
圖4 藍(lán)牙通訊流程圖Fig.4 Bluetooth task communication flowchart
1.2.2 手機(jī)應(yīng)用程序的執(zhí)行流程的設(shè)計
汽車藍(lán)牙故障診斷系統(tǒng)通過藍(lán)牙接口與智能手機(jī)相連,并需要設(shè)計出與本系統(tǒng)通信配套的手機(jī)應(yīng)用程序。該手機(jī)應(yīng)用程序?qū)崿F(xiàn)的功能主要是:
1)發(fā)起對藍(lán)牙故障診斷系統(tǒng)的連接。
2)通過手機(jī)界面,將診斷指令經(jīng)藍(lán)牙信道發(fā)送到本藍(lán)牙故障診斷系統(tǒng)。
3)接收藍(lán)牙故障診斷系統(tǒng)返回的信息,解包,分類并顯示到手機(jī)界面。
目前只針對安卓手機(jī)設(shè)計出與本系統(tǒng)配套的APK程序,通訊流程如圖5所示。
通過手機(jī)應(yīng)用程序與本故障診斷系統(tǒng)相結(jié)合,可以實現(xiàn)下面功能,如讀清各個ECU節(jié)點的故障碼,讀取ECU信息等。手機(jī)應(yīng)用程序則將本故障診斷系統(tǒng)返回的信息解包及分類顯示到手機(jī)界面,如故障碼的數(shù)目及對應(yīng)故障碼的信息。還可以根據(jù)診斷信息生成診斷報告,其中包括診斷的時間,及對應(yīng)的汽車狀態(tài)參數(shù)等。
此外,根據(jù)用戶需要,還可以生成汽車內(nèi)部運行的數(shù)據(jù)流曲線,例如:發(fā)動機(jī)轉(zhuǎn)速,平均油耗等等。這些記錄均可以生成*.csv文件,并存儲到手機(jī)的存儲卡中。
圖5 診斷通信流程Fig.5 Diagnostic communication processes
圖6 診斷數(shù)據(jù)Fig.6 Diagnostic Data
如圖6所示,為本藍(lán)牙汽車故障診斷系統(tǒng)對8個ECU進(jìn)行連續(xù)診斷的總線數(shù)據(jù)記錄,由結(jié)果可得,本系統(tǒng)能基本實現(xiàn)汽車故障診斷功能。
本藍(lán)牙故障診斷儀能夠?qū)崿F(xiàn)基本的汽車故障診斷功能,而且使用范圍廣,極大方便車主或汽車修理專業(yè)人士對汽車的管理及汽車運行數(shù)據(jù)的分析,而且擴(kuò)展性強,易于攜帶,具有很大的實用意義。
[1]International Organization for Standardization.ISO 17356-3,Road vehicles-Open interface for embedded automotive applications-Part 3:OSEK/VDX Operating System(OS)[S].2005.
[2]International Organization for Standardization.ISO 17356-5,Road vehicles-Open interface for embedded automotive applications-Part 5:OSEK/VDX Network Management(NM)[S].2006.
[3]International Organization for Standardization.ISO 17356-4,Road vehicles-Open interface for embedded automotive applications-Part 4:OSEK/VDX Communication(COM)[S].2005.
[4]ISO 15765-3,Road vehicles-Diagnostics on Controller Area Networks(CAN)-Part 3:Implementation of unified diagnostic services (UDS on CAN)[S].International Organization for Standardization,2004.