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