柳熾偉,徐光迎
(1.中山職業技術學院機電工程學院,廣東中山 528403;2.中山職業技術學院信息工程學院,廣東中山 528403)
電動汽車的電源和電驅動系統等高壓裝置結構緊湊多樣,內含大量電力電子器件,且高壓電路的安全性要求高,大大增加了故障診斷及其技術人員培養的難度。針對企業應用以及職業人才培養的需要,研發集合應用、培訓、測評等多功能的電動汽車故障診斷系統,提高電動汽車故障診斷效率,促進案例經驗的推廣學習,加快新能源汽車技術人員的培養,具有十分積極的現實意義。
電動汽車故障診斷多功能系統主要面向高壓電器電路的故障診斷,包括電驅動系統、電源及充電系統、空調與散熱系統、制動系統、轉向系統等。系統可在基于Web的互聯網環境下應用,通過案例推理(case-based reason,CBR)與規則推理(rule-based reason,RBR)機制生成診斷方案,并實現培訓與測評功能。其中CBR推理模擬了人類認知新事物的思想,利用過往案例的知識經驗來解決新問題,很大程度上解決了知識獲取、建立數學模型和訓練數據缺乏等困難。RBR基于專家的經驗,結合故障樹分析,制定產生式規則和推理邏輯,通過規則推理彌補案例無法匹配的情形。
系統開發采用瀏覽器服務器(B/S)模式,其應用服務器和數據庫服務器分離,便于用戶通過PC機或手機等在互聯網訪問及維護升級。系統采用3層系統架構,即表示層、中間層、數據訪問層。數據訪問處理是底層,主要在后臺應用Oracle公司的My SQL關系型數據庫處理;中間層主要是通過Java程序來實現業務邏輯;表示層是提供給用戶查看和輸入的,主要通過JSP、Ext等來實現。由于系統在公開網絡環境中使用,應注重系統并發性、可用性、安全性等方面的技術處理。
多功能系統分為以下幾個子系統:故障診斷、培訓、測評、系統管理,其總體結構如圖1所示。

圖1 電動汽車故障診斷多功能系統總體結構
故障診斷子系統根據用戶輸入的故障征兆和數據信息等輸出故障診斷的方案和步驟,采用人機交互模式指導實施故障檢測和性能判定。它包含案例經驗、常規引導及自動3種模式可供選擇。自動模式先進行案例匹配搜索,匹配成功則輸出案例的方案。當匹配相似度低于一定閾值時,進入規則推理,即通過故障樹分析找出可能的故障最小割集,依照診斷原則和置信度輸出診斷建議。案例維護、知識獲取等模塊負責案例庫和知識庫的更新和完善。
培訓子系統主要是給用戶提供電動汽車高壓系統的結構、工作原理、關鍵零部件的檢測方法及參數標準等學習資料。用戶需學習診斷案例時,可輸入描述故障現象的檢索詞,依序調出案例庫中關聯案例。
測評子系統由用戶輸入故障現象關鍵詞,在案例庫中匹配案例,據其故障信息生成考題。之后對用戶回答的故障原因及檢修方案進行評分、存檔。這種快速生成帶故障情境的考題并客觀評分的功能,提高了用戶考評的效率,彌補了部分教師對電動汽車故障現象和特征認知的不足。
知識表示就是對知識的一種描述和一組約定,是一種可被計算機接收的用于描述知識的數據結構。好的知識表示方法利于計算機程序快速地識別和存儲各種得到的知識,提高系統的推理效率和知識庫擴展的能力。
面向對象的知識表示方法能夠將規則和過程等多種知識表示集成在一起,可以充分利用各種表示方法的優點;而且使用該方法還可以利用類的繼承關系建立案例之間的層次結構,便于案例庫的組織和檢索,故文中采取面向對象方法表示故障案例。
一個案例一般包含問題的初始狀態、問題求解的目標狀態以及求解的方案等。整個過程所包含的信息可以用以下多元式進行描述:
CASE=<,,,>。
其中:={,,…,},是一有限集合,表示案例的信息,包括案例編號、名稱、發生時間、車型、行駛里程等;是一有限非空集合{,,…,},表示案例的特征屬性,如小電池電壓、高壓母線正負電壓值、電流值、溫度、頻率、振動狀況、儀表警告燈狀態等征兆信息;={,,…,}是一個有限非空集合,表示由特征集引起的結論集,即故障的原因、部位、診斷步驟、檢修的方案等;也是一個有限集合{,,…,},表示故障的類型、故障部件所在的系統層級,便于案例的管理和檢索。
考慮到便于調取故障案例的特征屬性組建測試卷等應用需求,案例采用分散組織、分塊存儲的形式。案例結構分割成若干部分,分別存放于不同的塊中,使用和維護的靈活性高。案例庫包括:案例基本信息表、故障特征表、診斷結論表、故障類別表等。案例庫表的結構與內容如圖2所示。

圖2 案例庫表結構與內容
故障分類表中,文中將主要故障類型劃分為電驅動系統不能驅動、加速不良、儀表顯示異常或報警、空調及冷卻系統故障、駕駛操控性故障、低壓車身電器故障六個大類。故障系統、分組件及故障部件等則按功能系統的結構關系進行逐層劃分。
為便于知識的更新和維護,提高推理效率,規則知識庫采用框架式與產生式規則結合的多知識表示方法。通過擴展產生式規則表達領域專家對電動汽車診斷的啟發性經驗、確定性知識和模糊知識,同時把故障信息總結成規則和函數。基于規則的專家系統知識獲取難的問題,一定程度上可利用故障樹分析解決。
故障樹分析法是通過與門和或門表示各概念、屬性和知識體之間的聯系,用一棵倒“樹”結構把故障的因果關系清晰地表達出來。再定性分析可以得到故障樹的最小割集,用層次分析法等定性與定量分析結合則可以得到每一個事件發生的概率,有利于確定故障特征信息的可信度和重要度。故障樹中上下事件對應規則的前后件,結合事件間邏輯關系可建立帶可信度因子的產生式規則,規則的前提條件和規則結論分別對應故障樹各層的父節點和子節點事件。規則以IF為前件,THEN后件的形式,表示為
RuleIFTHEN(,)。
其中,為特征信息庫中的特征信息集,可以是一個或多個特征信息(事實條件),它們之間可以是“與”或者“或”的關系;為規則后件,即故障模式;(,)為置信度因子,它表示規則前件發生概率為1的情況下,即事實與規則前件完全吻合時,得到結論的可信度。規則一般由規則解析模塊完成解析并進行邏輯運算和算數運算,包括帶可信度或模糊隸屬度因子的運算。規則表的結構見表1。

表1 規則表的結構
為便于反映故障樹結構特點,RBR知識庫的組成結構,采用“模塊+單元+節點+規則”4類框架的組織形式,模塊是按故障類型劃分,單元是故障類型下車輛系統或總成的故障事件。將各個單元的擴展故障樹的每一節點(頂事件或中間事件)轉換成一個節點框架,以解決知識庫中一個結論性知識也有可能是另一個結論知識的前件這種故障樹特有的層次關系。每個節點框架可以包含多條規則。每個底事件轉換為規則框架,對應一條規則。節點和規則框架的槽值內容見表2。

表2 節點和規則框架的槽值內容
故障診斷多功能系統中診斷子系統主要面向于引導用戶實施檢測和診斷故障;輸出診斷結果和維修方案。它實施集成CBR和RBR順序推理模式,不指定采用規則推理模式時先檢索和輸出歷史相似案例,如果案例匹配不成功,再采用RBR,依據原理分析和診斷原則來診斷故障。集成推理的診斷流程如圖3所示。

圖3 集成推理的診斷流程
在CBR中,通常包括案例檢索、案例重用、案例修改和案例學習等4個部分。通過對故障信息的分析并把故障特征輸入專家系統,利用案例搜索策略在案例庫中找出與問題案例相似的案例,判斷能否解決當前故障問題。假如能夠解決故障問題,生成案例診斷報告并進行案例學習;如果無法診斷出故障問題,則對檢索出的案例進行修正并驗證診斷結果的可行性,然后通過案例學習部分把新案例存儲在案例庫中。
CRB已形成一系列檢索的方法,如K-最近鄰檢索(K-Nearest Neighbor,KNN)法、歸納推理法、知識引導法、模板檢索法等,不同方法各有特點。KNN法簡單高效,工程實際應用較廣,尤其適用于案例較少的情況,但當案例較多時其檢索計算量非常大。此系統采用分級式檢索與KNN方法相結合的策略,先通過索引框架對故障現象所在類別和系統分級檢索,大幅縮小匹配范圍,再用KNN法在同一類別或系統的案例中進行故障屬性的相似度比較。
KNN策略首先為源案例選取好屬性特征,計算案例間局部相似度,依據各屬性的特點和重要程度通過層次分析法等方法賦權,然后以距離測量法作為相似性度量函數,計算案例各個屬性的相似度權,后得到全局相似度,確定案例間的匹配。
設源案例{,,…,}和目標案例{,,…,}均為特征空間{,,…,}中的元素,如第(1≤≤)個屬性值為連續數值型數據時,其局部相似度量為:
dist(,)=|-|。
(1)
如果案例屬性為符號類型或枚舉型數據時,局部相似度量為

(2)
則第個源案例與目標案例間全局相似度為:

(=1,2,…,)。
(3)
式中:是指第個案例的第個屬性特征;為案例第個屬性特征的權重,一般通過故障樹的定性與定量分析獲得。如果故障現象屬性較少且重要程度易區別,也可由專家直接賦值。
在計算整體相似度時,由于各屬性的數據值量綱不同,可能出現數據值級差過大導致結果背離實際情況,因此要先對數據進行歸一化處理。歸一化公式為:
=(-)(-)。
(4)
根據式(3),系統源案例與目標案例比較得到個相似度(Sim,Sim,…,Sim),進行相似度降序排列,相似度大于設定閾值的個案例按序推薦應用,否則進入RBR推理。
培訓子系統中“診斷案例學習”功能同樣由用戶輸入故障現象或選取故障案例索引后,系統檢索調出案例進行學習。
RBR采用混合推理的診斷方式。先從用戶輸入的故障現象入手,進行正向推理,若找不到完全匹配的規則,則選擇置信度達到閾值的一組結論,降序反向進行推理,根據用戶補充的征兆信息,再正向推理,直到找到完全匹配的規則,輸出結論。其中正向推理采用深度優先搜索策略,推理之前先根據已有的故障征兆和檢測信息進行特征提取,對系統正常工作的規則模塊進行標定。在推理過程中遇到被標定為正常的規則模塊,則直接跳過以該模塊為前提條件的所有規則,往下繼續查找,直到推理結果對應故障樹的最小割集,這樣縮短了規則搜索的時間。RBR診斷推理流程如圖4所示。

圖4 RBR診斷推理流程
由于某個頂事件往往下面包含多個中間事件和最小割集,正向推理往往得到多個最小割集,根據其對應的故障模式進行分組。各組最小割集內故障原因診斷的順序按關鍵重要度排序。在缺乏概率統計數據情況下,可綜合結構重要度和“先外后內、先簡后繁”的診斷原則由專家評分,利用層次分析法定量分析得到關鍵重要度。在得到一組故障原因(規則結論)后,按重要度降序進行反向推理時,規則中的內容,根據熟悉和復雜程度視情分解為指導排故的檢測步驟,嵌入故障樹邏輯結構中,借助二叉樹的數據結構,通過人機交互引導用戶進行檢測以獲取信息,逐一排除直到確定故障點。圖5為高壓模塊水泵失效的人機交互診斷模型。這種診斷模型貼近技師在現場排故的診斷思路,也符合培訓中指導檢測的功能需求。故障排除后,診斷規則、結論和診斷模型等相關信息根據其價值視情分別保存為規則和案例,存入知識庫中。

圖5 高壓模塊水泵失效的人機交互診斷模型
故障診斷的測評以考核學員的故障分析及制定診斷方案的能力為主。考慮到各人邏輯推理和分析思路不相同,系統難以對過程進行評價,只能對分析的結果即故障原因和診斷步驟進行評估。因此設計如下測評方案:系統根據輸入的故障特征或部件名稱,調出相似案例,提取其案例信息(車型、行駛里程、故障發生時間、故障征兆等)作為故障情境,由考生進行答題。如無相關案例,可根據輸入信息直接生成測試卷。學員線下進行故障樹分析,依據診斷的原則制定診斷的方案,錄入系統。系統采用RBR技術,搜索置信度在一定范圍內的規則,根據診斷模型得出相應的故障原因和診斷步驟,對比學員答案,引用評分規則進行評分,并輸出和記錄成績。診斷測試流程如圖6所示。

圖6 診斷測試流程
以某電動汽車預充接觸器損壞,車輛停機后不能正常起動為例,說明多功能系統的工作過程。首先檢查該車儀表“OK”燈不能正常點亮,表明電機變頻器不能上高壓電,需分析其故障原因,并執行檢測和診斷,排除故障。因系統內未存有相關案例,故先選擇基于RBR的“常規引導”診斷方式,建立和保存案例后再進行案例檢索測試。
根據驅動電機變頻器上高壓電的控制邏輯,建立故障樹。用下行法進行定性分析,得到27個最小割集。由于缺乏各事件發生的概率統計數據,根據領域專家經驗評判,通過層次分析法確定各割集置信度,據此建立診斷規則,例如:
規則1 IF變頻器不能上高壓電,且主接觸器J1工作異常;THEN蓄電池電壓不足 (置信度0.53)。
規則15 IF變頻器不能上高壓電且主接觸器J1工作異常,預充電容電壓未達閾值;THEN預充接觸器失效(置信度0.72)。
用戶輸入其他確認的故障特征信息,例如:A2確認正常,則跳過A2下所有規則;輸入“OK燈不亮、蓄電池電壓正常、無故障碼”等信息,系統匹配得到一組規則,根據設定的診斷模型方法,進行人機交互引導排故。圖7為人機交互的導引式故障診斷過程界面。RBR診斷完成后,進行規則學習和案例保存。

圖7 人機交互的導引式故障診斷過程界面
在“案例經驗”的搜索界面選擇案例類別“電驅動系統不能行駛”,案例名“電機變頻器不能上高壓電”,故障征兆輸入“OK燈不正常點亮、蓄電池電壓正常、無故障碼”等信息,均為符號型或枚舉型數據,系統分類搜索源案例1-001,計算Dist=0,則Sim=1,大于設定輸出閾值,匹配案例成功。系統推薦案例內容如圖8所示。

圖8 系統推薦案例內容
選擇“測評”功能,同樣輸入“電機變頻器不能上高壓電”,故障征兆輸入“OK燈不正常點亮、蓄電池電壓正常、無故障碼”等信息,系統生成診斷測試卷。學員輸入故障原因、診斷步驟等答案后,系統生成評分,并可閱讀系統生成的診斷方案。
電動汽車故障診斷多功能系統,其CBR采用歐氏距離相似度計算方法,多級匹配推理機制;RBR采用產生式規則表示方法,通過故障樹分析解決知識獲取難的問題,制定正反向推理結合二叉樹數據結構的人機交互方式的診斷模型,成功實現“應用、培訓、測評”功能,提高電動汽車故障診斷效率,促進診斷技術人才的培養。