汽車故障自診斷系統(tǒng)與故障診斷儀V.A.G1551研究
摘 要: 著重研究了汽車故障診斷儀V.A.G1551的工作原理,初步給出了開發(fā)與其兼容的汽車診斷儀的方法,并簡要介紹了汽車診斷技術的發(fā)展歷程與發(fā)展趨勢。
本文引用地址:http://www.ex-cimer.com/article/255701.htm關鍵詞: 汽車故障診斷儀 OBD-II V.A.G1551
隨著微機在汽車上的應用日趨廣泛,不僅提高了汽車的性能和舒適性,也使整個汽車控制系統(tǒng)變得越來越復雜。因此,用戶的汽車一旦因故障拋錨時,維修人員能否迅速找到發(fā)生故障的部位并加以排除就成為擺在汽車制造商面前的重要課題。當今時代,汽車工業(yè)群雄鼎立,售后服務的方便和快捷必然成為競爭的焦點。這就要求在豐富汽車各種功能的同時,完善和提高故障的檢測能力,使汽車更安全、更易于維護。
1 汽車故障自診斷技術
在市場需求的推動下,汽車故障診斷技術和故障診斷設備得到了極大的發(fā)展,汽車診斷也作為一門專門技術發(fā)展起來。汽車故障自診斷裝置一般包括車載故障自診斷裝置和汽車故障診斷儀。
1.1 車載故障自診斷裝置
1976年美國通用汽車公司推出了世界上第一個電子點火控制系統(tǒng)MISAR,其中已具備了自診斷功能,用于診斷控制發(fā)動機點火時間的微機,發(fā)動機冷卻水溫度和蓄電池電壓等輸入信號,當發(fā)生異常情況時報警指示燈亮。隨著汽車電子技術的發(fā)展,故障自診斷系統(tǒng)已能對各傳感器、執(zhí)行機構和ECU本身進行監(jiān)測,并能判斷和區(qū)分故障類型,以故障代碼的形式存儲起來,供維修人員用專門的故障代碼讀取設備讀出。故障自診斷技術不僅應用于發(fā)動機電子控制系統(tǒng)中,而且在自動變速箱、防抱死制動裝置、安全氣囊等系統(tǒng)的微機控制單元中廣泛使用。世界各大汽車公司都推廣了這一技術,并開發(fā)出與各自車型配套的故障代碼讀出設置。這就給用戶在汽車運行中及時發(fā)現故障和汽車修理時故障的查詢帶來了極大的方便。
1.2 汽車故障診斷儀
汽車故障診斷儀是和車載故障自診斷系統(tǒng)配套使用的,從本質上看,它相當于自診斷系統(tǒng)的終端設備,起到人機交互的作用。隨著微機技術的發(fā)展,故障診斷儀能完成的功能愈來愈豐富,現歸納如下:
·顯示故障代碼,同時顯示發(fā)生故障的部位、檢查的方法、檢測的標準數據等,并打印上述信息;
· 清除故障代碼;
·汽車運行實時狀態(tài)數據的顯示,維修人員可對照標準數據,通過分析數據偏離標準數據的方向和大小找出故障的原因;
·向ECU發(fā)出執(zhí)行器強制動作的命令,以查看執(zhí)行器是否工作正常;
·存儲汽車運行的狀態(tài)數據和故障信息,向個人計算機或故障診斷專家系統(tǒng)輸出。
2 故障診斷通訊接口OBD-II標準簡介
早先的故障診斷儀都是由各個整車制造廠或儀器制造商各自開發(fā)的,診斷接口和通訊方式各不相同,不能互相通用。以診斷插座為例,福特車系有7針、25針,奔馳車系有圓形9針、38針、長方形16針等等。這種各自為政的局面不僅給維修工作帶來了麻煩,而且也增加了維修成本和人員培訓費用,反過來也影響了產品在全球范圍的銷售。
自1987年起,美國加州大氣資源局(CARB)規(guī)定車載故障自診斷系統(tǒng)必須能夠對汽車排氣系部件進行監(jiān)測。1994年CARB頒布了更為嚴格的廢氣排放控制法規(guī),規(guī)定與排氣相關的部件必須與被稱為萬能掃描工具的故障診斷儀進行通信。同時,美國環(huán)境廳(EPA)也采取相應措施在全美推廣使用。在CARB的要求下,美國汽車工程學會(SAE)進一步推進了與故障診斷儀相關的標準化工作,形成了診斷儀接口的OBD-II標準。
OBD-II是ON-BOARD DIAGNOSITICS的縮寫,即第二代隨車電腦診斷系統(tǒng),它代表了目前大部分診斷儀的技術水平,可以說是一個實際的標準,因而得到了汽車制造商的支持。其主要特點有:
·診斷插座統(tǒng)一為16針插座,并統(tǒng)一安裝于駕駛室儀表板下方。診斷插座如圖1所示,引腳定義如表1所示;
·串行數據通信協(xié)議采用IS09141和SAE兩個標準;
·具有統(tǒng)一的5位故障代碼。例如P1352,第一個英文字母代表被測控制器,如P代表發(fā)動機電腦控制器(Power),B代表車身電腦控制器(Boby),C代表底盤電腦控制器(Chassis),第二個字代表制造廠,第三個字代表SAE定義的故障范圍碼,最后兩個字代表原廠故障碼;
·具有用診斷儀直接讀取并清除故障碼的功能;
·具有行車記錄功能,能記錄車輛行駛過程中的有關數據資料;
·具有記憶并重新顯示故障信息的功能。
3 V.A.G1551功能簡介
V.A.G1551是大眾集團內部售后服務通用的汽車電子系統(tǒng)維修、診斷儀器,可以讀取電子控制汽油噴射發(fā)動機、自動變速箱等十多個汽車電子系統(tǒng)的診斷和測試信息。比如在檢修發(fā)動機電子時,維修人員可以使用其來讀取故障代碼,同時也可以讀取發(fā)動機實時狀態(tài)參數如轉速、水溫、負荷、電壓、噴油時間等,另外還能向ECU的各執(zhí)行機構發(fā)出強制執(zhí)行命令。操作時,將診斷儀與汽車排檔前的診斷插座連接即可。診斷插座符合OBD-II標準,其中引腳4為車身搭鐵,引腳7為B.D.DIAKM即K線),引腳16為蓄電池正極,其余引腳均為空。
使用時首先要輸入檢測對象的地址代碼,如發(fā)動機電子為01,然后要選擇功能,如查詢故障代碼的功能號為02。具體使用方法見相關資料。
診斷插座的引腳7應與汽車上各電子控制系統(tǒng)的K線相連接,診斷儀一次只能與一個電子控制系統(tǒng)通信。開始時,診斷儀以廣播的方式通過K線發(fā)送識別信息(即地址碼),但只有與地址碼相對應的電子控制系統(tǒng)才作出響應,于是診斷儀和該電子控制系統(tǒng)開始通信,其余各系統(tǒng)仍處于待機狀態(tài)。
4 V.A.G1551與發(fā)動機電子通信規(guī)律初探
由于條件限制,本文只研究了V.A.G1551與Engine Electronics的通信規(guī)律,并且ECU只限于MOTRONIC M1.54P。
4.1 利用計算機串口截碼
考慮到V.A.G1551與ECU的通信碼均為串口信號,只是與RS-232標準串口信號的電壓不同,標準串口信號的“1”用-12V表示,“0”用+12V表示,而K線的“0”用0~1.3V表示,“1”用12V表示,所以只要設計一塊轉換卡,把K線的串口信號轉換為標準串口信號,即可實現利用計算機串口來截取V.A.G1551與ECU的通信碼,從而研究它們的通信規(guī)律。轉換卡除了能完成電平轉換功能外,工作頻率要大于10kHz,且輸入電阻要大,不至于影響V.A.G1551與ECU的通信。圖2給出計算機串口截碼原理圖。
采用轉換卡截碼的效率很高,每次截碼得到的文件也較小,大約1Kbytes多,并可以直接在編輯軟件下閱讀,使用非常方便。下面的任務就是對V.A.G1551的各個功能逐個進行截碼研究,弄清在發(fā)動機的各個工況下它們是如何進行通信的。
4.2 截碼數據分析
下面給出V.A.G1551在功能號04數據塊000進行通信時截碼得到的數據,并進行簡單分析。
在V.A.G1551發(fā)出地址碼后,ECU回答控制器版本號,如表2所示。
接下來,雙方發(fā)出握手信號以不中斷聯(lián)系,并且ECU等待V.A.G1551發(fā)出指令:
03FC OBF4 09F6 03
03FC 0CF3 09F6 03
03FC 0DF2 09F6 03
V.A.G1551發(fā)出功能04-000指令,ECU回答相應信息,并且雙方不斷問答,直到用戶輸入“→”:
03FC CEF1 11EE 03
0DF2 0FF0 F40B 659A A25D C837 1DE2 807F SBA4 02FD 00FF 07F8 1FE0 03
03FC 10EF 11EE 03
0DF2 11EE F40B 659A A25D C837 1DE2 807F 5BA4 02FD 00FF 07F8 1EE1 03
03FC 12ED 11EE 03
0DF2 13EC F40B 659A A25D C837 1DE2 807F 5BA4 02FD 00FF 07F8 1EE1 03
接下來雙方又進行握手等待,直到用戶發(fā)出結束指令,通信結束:
03FC 14EB 09F6 03
03FC 15EA 09F6 03
03FC 16E9 09F6 03
03FC 17EB 09F6 03
03FC 18E7 06F9 03
在這些數據中,還可以發(fā)現一個特殊的碼子,即每一行的第二個數據,經分析,這是一個記數碼,通信雙方每發(fā)出一次信息均加一。并且可以看到,在功能號04數據塊000時V.A.G1551發(fā)出的命令為11,結束指令為06。雙方采用的校驗方式為反碼,即接收方發(fā)出接收碼的反碼,發(fā)送方收到反碼后就認為對方接收正確(如V.A.G1551發(fā)06,ECU答F9)。
經過多次實驗,可以獲知V.A.G1551在檢測發(fā)動機電子的各個功能(包括讀故障碼和消除故障碼)時的通信碼,這些通信碼為研制與V.A.G1551兼容的汽車故障診斷儀打下堅實的基礎。
V.A.G1551除了可以讀取故障代碼外,還可以讀取發(fā)動機實時狀態(tài)參數如轉速、水溫、負荷、電壓、噴油時間等,經過數據分析,V.A.G1551并不是把這些參數直接顯示出來,而是把這些參數的碼子經過某種轉換再顯示出來。
5 開發(fā)與V.A.G1551兼容的計算機汽車診斷系統(tǒng)
V.A.G1551是德國制造的儀器,價格昂貴,并且有部分V.A.G1551是德文顯示,用起來多有不便,因此有必要開發(fā)與其兼容的汽車診斷儀。通用的計算機系統(tǒng)有標準的串口,且編程余地大、易調試、所以可先開發(fā)計算機診斷系統(tǒng)。
5.1 硬件部分
同樣,計算機系統(tǒng)的串口與V.A.G1551的串口不兼容,因此需要設計一塊適配卡,與上述轉換卡不同的是,適配卡的數據流是雙向的,但因為通信是半雙工的,所以適配卡上應加上一個模擬開關,以隔離雙方數據。圖3給出適配卡原理圖。
當計算機發(fā)出數據時,模擬開關接通,數據通過K線發(fā)給ECU,同時數據又發(fā)回給計算機,當計算機接收到數據后可判定數據已發(fā)完,此時應立刻關閉模擬開關,等待ECU回答。在這個過程中模擬開關的關閉時間是個關鍵,若模擬開關關早了(即計算機串碼還未發(fā)完)則ECU接收的數據會出錯,若模擬開關關晚了(即ECU已發(fā)出數據)則會影響計算機接收數據。
5.2 軟件部分
軟件采用模塊化設計,即把主程序編成一個模塊,V.A.G1551每一個功能都編成一個模塊,每個模塊分別匯編后再連接成可執(zhí)行文件。采用模塊程序設計有以下一些優(yōu)點:
(1)每個模塊任務明確,便于理解;
(2)單個模塊易于編寫和調試;
(3)便于程序和維護的修改;
(4)要增加診斷的功能,只要增加相應的模式塊即可。
編制程序的時候可采用逐漸增加功能的方法,即先編主模塊和第一個功能模塊,調試成功后連上第二個功能模塊再調試,直到全部完。
通過一段時間的調試,筆者已初步開發(fā)完成與V.A.G1551兼容的計算機診斷系統(tǒng),當然目前只限于診斷M1.54P的發(fā)動機電子。圖4給出軟件的主框圖。
本文介紹的方法是通過研究V.A.G1551與ECU的外部通信規(guī)律來開發(fā)與V.A.G1551兼容的汽車故障診斷儀,應該說在主要功能上能與V.A.G1551保持一致,但在細節(jié)問題上還有差異。并且本文尚未涉及到另一個很重要的方面,就是V.A.G1551與ECU的確認碼問題的,也就是說當V.A.G1551收到ECU的確認碼是錯誤的時候會做何動作畫。這些問題還等待我們去作進一步研究。
參考文獻
1 鄒長庚,現代汽車電子控制系統(tǒng)構造原理與故障診斷(上).北京:北京理工大學出版社,1996
2 楊妙梁.汽車實用電子技術與90年代市場需求.北京:中國物資出版社,1997
3 BOSCH.Automotive Electric/Electronic Systems
(收稿日期:1999-07-19)
評論