徐家明 劉雙平 牛方興
摘要:本文提出了一種基于商用車的集成式診斷服務系統(tǒng)。首先,介紹系統(tǒng)要實現的目標和業(yè)務需求;其次,系統(tǒng)方案設計采用“操作系統(tǒng)+應用APP”思想,并日從服務網絡平臺、軟件架構、診斷IDS數據庫、系統(tǒng)安全四個方面對系統(tǒng)方案進行深入分析;最后,對系統(tǒng)工程實現、系統(tǒng)驗證與應用進行詳細闡述。從用戶應用和反饋情況分析,該系統(tǒng)功能全面、維修指導性強、可擴展性高、界面友好、易于操作。
關鍵詞:集成式診斷服務系統(tǒng);服務網絡平臺;軟件架構;診斷IDS數據庫;可擴展性
引言
隨著汽車電氣技術的發(fā)展,車載電控單元日益增多,如圖1所示為典型商用車控制系統(tǒng)網絡拓撲,總計有二十多個電控單元。電控系統(tǒng)越來越多,也越來越復雜,隨之帶來了汽車故障的定位和處理越來越困難。除了一些機械故障以外,出現了更多的電控系統(tǒng)故障,傳統(tǒng)的汽車診斷和維修的方法越來越難以滿足要求,迫切需要開發(fā)一款集成式診斷服務工具。目前現狀是診斷服務工具集成度不高、功能不足、不統(tǒng)一,為了解決這些問題,本文提出一種集成式診斷服務系統(tǒng)。
1 系統(tǒng)設計
1.1系統(tǒng)需求
1.1.1目標
系統(tǒng)主要有兩條目標如下:
1)建立集成式滲斷服務系統(tǒng):覆蓋全部車型、涵蓋全部ECU控制器;覆蓋全部診斷功能;建立服務網絡平臺,形成實時在線ECU數據刷寫服務;系統(tǒng)具有可擴展性。
2)通過診斷服務系統(tǒng),引導用戶養(yǎng)成良好的診斷習慣:建立豐富的“引導式”故障排查樹;建立綜合的專家診斷系統(tǒng);根據車輛電控系統(tǒng)工作原理、特點、經驗知識,制定各種診斷策略,再通過遞進式、人性化界面,引導用戶進行故障排查,培養(yǎng)良好的診斷習慣。
1.1.2業(yè)務要求
集成式診斷服務系統(tǒng)需要在功能、用戶體驗、質量、安全、維護、通用性等幾個方面滿足用戶需求,如表1所示。
1.2系統(tǒng)方案設計
1.2.1服務網絡平臺
采用“互聯網+”理念設計服務網絡平臺,實現ECU數據在線刷寫服務、診斷軟件升級、以及遠程診斷、診斷回收等功能,如圖2所示,該平臺由診斷管理及監(jiān)控網、診斷用戶戶網、適配器車載網三部分構成,技術特點如下:
1)診斷管理及監(jiān)控網由服務器與監(jiān)控平臺構成。用于系統(tǒng)數據存放、發(fā)布及管理;與用戶進行信息交互。
2)診斷用戶網以PC機為載體,通過有線或無線方式連接Intemet網與公司內部網絡進行信息交互,諸如在線下載ECU數據、軟件升級文件、在線上傳刷寫日志等。
3)適配器車載網由車輛和適配器構成,用于用戶與車輛進行信息交互,實現車輛的常規(guī)診斷、高級診斷、數據服務以及其它診斷功能等。
1.2.2軟件架構
本系統(tǒng)采用基于IDS數據庫的層次化與集成化的軟件架構設計,如圖3所示,設計為6層,分別為:①界面層;②業(yè)務邏輯層;③應用協議層;④傳輸協議層;⑤數據層;⑥共享工具集。
1)界面層
界面層指診斷系統(tǒng)人機交互界面。設計項包括登陸界面、診斷主界面、讀取故障界面、數據測量界面、執(zhí)行器測試界面、功能測試界面、數據刷寫界面等各個子界面。這些界面主要實現診斷信息輸入、診斷操作、診斷結果輸出及顯示。
2)業(yè)務邏輯層
診斷邏輯層指實現診斷功能的診斷邏輯運算、診斷策略等。位于界面層及應用協議層之間,起承上啟下作用:對界面層觸發(fā)的各類事件進行管理;對界面層輸入的信息進行解析、運算及處理,數據以一定格式傳輸給診斷協議層;對應用協議層傳來數據進行解析、運算及處理,向人機界面顯示。
3)應用協議層
應用協議層指實現ISO 14229-1、ISO 15765-3、SAE J1939-73、ISO 14230-3、IS0 15031-5五大診斷協辦。每種協議軟件以動態(tài)庫的形式封裝,由業(yè)務邏輯層軟件調用。診斷系統(tǒng)覆蓋了商用車電控單元的現有非OBD診斷協議和OBD診斷協議。
4)傳輸協議層
傳輸協議層指實現ISO 15765-2、SAE J1939-21、ISO 14230-2、IS0 15765-4四大診斷協議。每種協議軟件以動態(tài)庫的形式封裝,由應用協議層調用。診斷系統(tǒng)覆蓋了商用車電控單元的CAN線和K線通訊協議。
USB驅動/藍牙驅動指在PC機系統(tǒng)的診斷平臺中實現適配器的設備驅動程序。USB驅動,藍牙驅動以動態(tài)庫的形式封裝,由傳輸協議層調用,動態(tài)庫的API接口函數執(zhí)行SAE J2534標準。
5)數據層
數據層指實現診斷數據存取,數據層由數據模型、數據訪問、數據庫三部分組成。數據模型定義數據結構及數據相互關系。數據訪問指訪問數據庫的方法集。
6)共享工具集
共享工具集存放通用模塊,以使在其它層之間進行分享,其它層直接調用。
統(tǒng)一平臺,統(tǒng)一軟件架構,系統(tǒng)集成度高、系統(tǒng)成本低。
1.2.3 IDS數據庫
診斷離不開數據,需要大量后臺數據支持。針對每款電控單元ECU: ECU基本信息、協議數據、故障數據、信號測量數據、執(zhí)行器測量數據、功能測試數據、記錄診斷信息等都是在診斷時所需要的數據。因此診斷數據管理、數據處理、數據安全就很重要。
本診斷服務系統(tǒng)創(chuàng)新設計一套具有自身特點的IDS(Integrated Diagnostic System)數據庫。如圖4所示,以常規(guī)診斷功能為例,每款ECU常規(guī)診斷基本包括4個方面內容:讀標識、讀故障、讀凍結幀(讀擴展幀)、信號測量,這4個方面的內容通過數據庫的形式實現存儲,設計4個表(寧段信息)、并且定義表與表之間關聯關系,這只需要一次性設計,后續(xù)新增ECU數據直接添加,按照關系數據庫機制對數據進行管理、訪問、存儲,更重要的是數據難以被破解,安全性大大提高。
依此類推,其它診斷內容例如執(zhí)行器測試數據、功能測試數據、診斷信息記錄等也都通過診斷IDS數據庫機制進行數據管理、訪問、存儲。
1.2.4系統(tǒng)安全
本系統(tǒng)對診斷安全進行了多角度、全方位設計。系統(tǒng)設置了6個安全點、3個安全面。
6個安全點:①軟件安裝包,通過軟件激活碼和使用期限進行管控;②診斷功能,高級診斷功能須要通過安全算法;③ECU刷寫,通過授權管控;④業(yè)務數據,數據經過加密處理;⑤資源文件,文件經過加密處理;⑥訪問算法,全部采用*.dll動態(tài)庫形式。
3個安全而:①診斷軟件與適配器采用“互鎖”機制;②診斷數據全部通過IDS數據庫進行存儲與管理;③只支持“在線”ECU數據刷寫,刷寫完成后刷寫日志上傳CRM監(jiān)控平臺。
2系統(tǒng)工程實現
2.1開發(fā)語言及環(huán)境
采用Microsoft .NET Framework3.5軟件開發(fā)平臺。為了更好的發(fā)揮開發(fā)語言優(yōu)勢,提高軟件開發(fā)效率,采用Visual C# 2008與Visual C++ 2008兩種語言混合編程,而NET Framework開發(fā)平臺本身能很好的支持多語言開發(fā)。
2.2 系統(tǒng)程序結構
構建的系統(tǒng)在程序設計時以解決方案( solution)的形式組織,一個解決方案可以包含多個工程( project),各T程與分層式軟件架構中的各邏輯層相對應,詳情如表2所示:
2.3診斷軟件設計
診斷策略是診斷服務系統(tǒng)的核心,目前本系統(tǒng)設計400個多個診斷策略,并且今后還不斷新增和補充,這些診斷策略支撐著系統(tǒng)的質量和用戶使用效果。限于文章篇幅,以發(fā)動機壓縮測試功能為例進行說明。
典型故障現象:發(fā)動機怠速抖動。
原理和診斷流程,如圖5和圖6所示:禁止各缸噴油、啟動起動機、測量上止點之前和之后某一角度區(qū)間運行所需時間、間接評估每缸轉速,通過轉速偏差范圍評估發(fā)動機各缸氣密性。若存在漏氣,上止點之前活塞運動速度較快;若存在漏氣,上止點之后活塞運動速度較慢。
優(yōu)點:無需機械方面工作,快速評估各缸機械特性。
可檢測故障:檢測氣缸機械方麗故障(如活塞環(huán)磨損)榆測氣缸漏氣。
依據偏差Δ1~Δ6是否在±5%區(qū)間內對氣缸氣密性進行評估,評估通過人機界面顯示診斷結果。
2.4 適配器驅動軟件設計
適配器軟件主要處理診斷儀和車輛ECU控制器之間的診斷數據,并將診斷數據傳輸給對應的接收方,根據傳輸的媒介不同,適配器需要分別處理USB通訊數據和藍牙通訊數據。如圖7所示,USB驅動程序在Windows操作系統(tǒng)中由上層的USB功能驅動和下層的USB總線驅動構成。
1) USB功能驅動負責接收SAE J2534的各種IRP,并將IRP分發(fā)給USB總線驅動。
2) USB總線驅動由操作系統(tǒng)提供,負責處理IJSB功能驅動下發(fā)的IRP,并完成與診斷適配器的通信。
3 系統(tǒng)驗證與應用
3.1臺架驗證
在臺架上進行如下幾方而測試:
1)正確性測試,測試結果與實際狀態(tài)的一致性。
2)操作界面及顯示界面的評估,程序界面的評估是基于操作人員考慮,在工作環(huán)境中滿足操作方面和讀取信息方便的原則。
3)測試運行時間。系統(tǒng)響應及實時性測試。系統(tǒng)實時性的要求是要求快速分析數據,達到實時顯示。對于提高工作效率和準確快速捕捉故障信息具有重要作用。
3.2實車驗證
實車測試主要檢測診斷軟件是否滿足要求,并初步實現各檢測功能準確性,確??煽?。實車測試進行功能檢測與需求分析是否一致。
1)功能測試主要有:常規(guī)功能測試、高級功能測試、數據服務測試、其它功能測試。
2)測試項是否包含齊全。
3)各功能邏輯順序是否按照設計要求進行。
4)診斷系統(tǒng)能否適應條件較差的工作環(huán)境,包括振動的、電子輻射。
5)診斷系統(tǒng)性能檢測、設備性能、是否死機、軟件是否有假死現象。
3.3 推廣應用
該套診斷服務系統(tǒng)在2015年起分批次推向市場,目前有幾百家用戶在使用。用戶給出了該系統(tǒng)集成度高、功能齊全、性能穩(wěn)定、操作界面直觀、方便檢測與維修等評價。
4 結論
這套集成式診斷服務系統(tǒng)實現了對ECU故障進行全面、快速、準確診斷和排除;實現了ECU軟件和數據安全在線刷寫,以及診斷服務軟件安全在線升級。該套系統(tǒng)研制成功意義在于:
1)實現商用車電控系統(tǒng)的后市場服務從“人海-苦海戰(zhàn)術”到服務“網絡化”、“智能化”的根本性改變和大跨越。實現售后服務“三大”提升:①服務時效性提升;②服務質量提升;③用戶滿意度提升。
2)系統(tǒng)具有良好的兼容性和可擴展性,可以靈活的增加ECU應用APP和診斷功能,通過軟件升級的方式應對未來新車型的投放,大大提高了產品生命周期和應用價值。
目前該系統(tǒng)已經在車輛后市場批量投放使用,得到了用戶和售后人員的高度認可,取得良好社會反響,具有大范圍、大面積推廣應用條件和價值。
參考文獻:
[1]胡挺,張士軍 汽車故障診斷儀設計與實現
[J].計算機與數字工程,2007.35(08): 154-156.
[2]雍崇偉.基于嵌入式的汽車故障診斷儀設計U],2010 10: 1-7
[3]張毅華,張劍鋒,沈延汽車診斷儀平臺整合[J].設計研究,2010.07: 29-31.
[4]李培玉,劉果,譚大鵬一種手持式智能化故障診斷儀的實現[J].電測與儀表,2006.43(03): 46-48.
[5]Dennis M.Ahem, Aaron aouse, Richard Tumer CMMI Distilled-A Praaical Innoduction to Integated Process Improvement Second Edition清華大學出版社2005 pp:21-30.