,,,
(中國工程物理研究院 計算機應用研究所,四川 綿陽 621999)
大科學裝置具有技術綜合、結構復雜和系統(tǒng)龐大等特點,且工作在極端環(huán)境下,在成本、技術和工藝受限的情況下,系統(tǒng)可靠性難以大幅提升,必須通過先進的智能故障診斷技術來提升系統(tǒng)的可用性和可維護性[1]。然而,目前這方面的研究還相對滯后,診斷環(huán)節(jié)人工參與較多,診斷效率和準確性難以提高,影響了大科學裝置的可用性和可維護性。在技術實現層面也面臨不少問題,如:大科學裝置系統(tǒng)結構復雜,故障機理不清楚,難以建立精確的數學模型;故障征兆與故障原因之間的關聯關系帶有較強的不確定性,難以進行確定性推理;診斷數據積累不足無法實現數據驅動和自主學習等。針對上述問題本文提出了基于專家知識和模糊推理的故障診斷方法[2-3],充分利用系統(tǒng)研制和日常維護中形成的先驗知識,通過模糊推理解決因果關系不確定、診斷信息不完備條件下的故障診斷問題。在知識建模方面,針對專家系統(tǒng)語言在診斷規(guī)則描述方面存在的專業(yè)性強,無法實現面向用戶的規(guī)則錄入問題,提出了基于數據庫的故障診斷模糊規(guī)則的可視化建模與結構化存儲方法,構建面向用戶的故障診斷專家系統(tǒng)構建框架。
模糊故障診斷專家系統(tǒng)圍繞知識庫和模糊推理引擎展開設計,其具體結構和各組件功能如下:
1)數據采集與預處理組件:該組件通過網絡化控制系統(tǒng)提供的設備服務接口和通訊中間件自動獲取與故障診斷相關的設備狀態(tài)信息、傳感器數據和控制軟件的報錯信息等,同時接收工作人員輸入的與故障診斷相關的證據。這些綜合信息通過清洗、篩選和特征提取,形成有效的故障征兆信息傳遞給模糊化組件。
2)模糊化組件:該組件對故障征兆進行模糊化處理,得到故障征兆的隸屬度值。然后將故障征兆及其隸屬度傳遞給模糊推理引擎,前者用于規(guī)則前件的匹配,后者用于規(guī)則匹配度計算。
3)模糊推理引擎:推理引擎根據實際輸入的故障征兆信息和模糊隸屬度,與規(guī)則庫中的每一條規(guī)則進行匹配,利用模糊推理算法計算其匹配度。如果匹配度大于規(guī)則的激活閾值,則觸發(fā)該規(guī)則,并將該規(guī)則對應的診斷結論從知識庫中提取出來作為診斷結果輸出。
4)診斷知識建模及管理組件:該組件向用戶提供可視化模糊規(guī)則錄入界面和規(guī)則的瀏覽、添加、刪除、修改工具。
5)基礎庫:基礎庫包括知識庫、算法庫和診斷數據庫,分別用于模糊規(guī)則、相關算法和過程數據的結構化存儲。
圖1 模糊故障診斷系統(tǒng)結構
知識的表示方法有產生式規(guī)則、框架、語義網、范例等多種形式,其中產生式規(guī)則由于粒度細、靈活性強,符合人的判斷思維而被廣泛采用。本方案也采取基于產生式規(guī)則的知識表示方式,通過引入模糊因子形成以下模糊規(guī)則[4-5]:
IFP1(λ1,W1)ANDP2(λ2,W2)AND…
ANDPn(λn,Wn)
THENR(CF,τ)
Pi為規(guī)則前件,即,故障征兆;λi為前件的隸屬度,即,故障征兆的可信度0≤λi≤1;Wi為前件的權值,即,故障征兆對結論的支持度;R為規(guī)則結論,即,故障診斷結論;CF為規(guī)則可信度;τ為規(guī)則激活閾值。
診斷規(guī)則的實現方法一般有兩種:第一種是通過編程語言的”IF THEN” 判定函數進行描述,但這種方法無法實現規(guī)則(知識)與程序的分離,靈活性極差;第二種也是最常用的方法,通過專家系統(tǒng)開發(fā)語言進行描述,將規(guī)則編寫成結構化文本文件,由專家系統(tǒng)推理引擎進行解析和執(zhí)行,這種方式雖然實現了知識與程序的分離,但規(guī)則文件編寫難度極大,需要掌握專門的專家系統(tǒng)開發(fā)語言,且只能由知識工程師完成,用戶難以建立診斷規(guī)則。因此,本方案擬采取基于數據庫的規(guī)則建模方法,通過對規(guī)則標準結構的分解,將前件、結論和各種模糊因子等相關要素用數據庫字段加以表示,形成表1所示的結構化模糊診斷規(guī)則。用戶可以通過可視化知識建模工具方便、快捷的建立、修改、刪除和瀏覽模糊診斷規(guī)則。由于模式匹配過程僅對規(guī)則的前件進行匹配,且規(guī)則結論包涵信息較多,為了便于處理,將規(guī)則結論分離出來作為診斷結論知識單獨存儲,通過結論號進行關聯(如表2所示)。具體結構見表1。
模糊推理算法主要分為故障征兆模糊化處置,模糊故障征兆注入,模糊推理與模式匹配,診斷結果綜合評判及可視化等4大步驟,具體實現過程及算法如下[2-11]:
表1 模糊規(guī)則
表2 診斷結論
1)第一步:輸入向量模糊化
診斷系統(tǒng)采集的故障征兆信息按其特征可分為離散量和連續(xù)量兩種,前者以狀態(tài)位和狀態(tài)字為主,一般代表某種明確的故障征兆,后者以傳感器測量數據為主,需要進行預處理才能提取出故障征兆信息。對于這兩種故障征兆信息需采取不同的模糊化方法。離散量信息只有兩種狀態(tài),“真”則隸屬度為“1”,“假”則隸屬度為“0” 。連續(xù)量需要用模糊術語進行描述,并根據隸屬度函數計算其隸屬度值,處理結果包括故障征兆論域和隸屬度(可信度),如“軸溫過高 0.8”。
為了便于論述,假設:某設備表現出n個故障征兆,可能出現的故障原因有m種,則:
故障征兆論域表示為:U={U1},U2,…,Un
故障征兆模糊向量表示為:x={x1},x2,…,xn,xi∈[0,1](1≤i≤n)
故障原因論域為:V={V1,V2,...,Vm}
故障原因模糊向量表示為:y={y1,y2,...,ym},yj∈[0,1](1≤j≤m)
其中:xi為Ui的隸屬度,yj為Vj的隸屬度。
選擇經典的升半梯形、梯形和降半梯形隸屬度函數進行計算,則其廣義表示表達式為[3]:
(1)
式中,I(x)為[a,b]上的單調遞增函數,D(x)為[c,d]上的單調遞減函數,其典型分布為:
圖2 模糊域劃分圖
本方案規(guī)定數值型測量值的模糊集合為:A=[很大,較大,正常,較小,很小],所有來自傳感器的精確測量都用上述5種模糊術語表述,并附帶其隸屬度。
2)第二步:確定模糊關系矩陣R
根據多個專家的經驗,通過綜合評估確定模糊關系矩陣的值,即,確定故障征兆與故障原因的關聯強度,該值對應模糊規(guī)則中子前件的權值。關系矩陣單獨從一個狀態(tài)原因出發(fā)進行評判,不考慮多個原因的綜合影響。矩陣的元素值后期可通過診斷歷史數據的統(tǒng)計分析結果進行自動修正。
rij∈[0,1]表示故障征兆xi與故障原因yj的關系強度(權值),rij=0表示沒有相關性。
3)第三步:模式匹配
模糊算子采用加權平均型模型則有:
Y=X°R?yj=∑xi.rij.(j=1,2,...,m),
yj∈[0,1](1≤j≤m)
(2)
4)第四步:故障原因模糊綜合評判
設U為故障原因的集合,則:
采用最大隸屬度法有:max[yi]∈U(適合求解主要故障原因)
采用閾值法有:yi≥λi,yi∈Uλiyi(適合求解多種并發(fā)故障原因)
基于專家知識與模糊推理的故障診斷流程,主要分為數據采集、征兆提取與模糊處理、模式匹配、結果輸出和診斷數據歸檔等6大環(huán)節(jié),其中模式匹配環(huán)節(jié)還可進一步細化為規(guī)則提取、模式匹配、閾值判斷和結論置信度計算等環(huán)節(jié),具體流程如下:
圖3 故障診斷流程
1)數據采集:數據采集是獲取故障診斷信息的過程。故障診斷信息主要包括傳感器監(jiān)測數據、設備運行狀態(tài)和報警信息等。傳感器數據通過數據采集器獲取和轉換,設備運行狀態(tài)信息和報警信息通過OPC(OLE for Process Control )接口從監(jiān)控系統(tǒng)直接讀取。
2)預處理:預處理是診斷信息的篩選、清洗和模糊化、歸一化過程。由于采集到的原始診斷信息涵蓋了裝備所有設備及部組建的狀態(tài)信息和監(jiān)測數據,數據量大,復雜度高,在利用之前,首先需要根據專家經驗進行初步篩選,提取出與某個具體故障模式可能相關的征兆信息,然后用模糊術語加以表述,同時計算出每個故障征兆對應的隸屬度。將故障征兆的模糊論域和其隸屬度構成的模糊向量作為故障推理的有效數據輸入。
3)模糊推理:模糊推理是模糊規(guī)則的遍歷與匹配過程。該過程從規(guī)則提取開始,推理引擎從規(guī)則庫中逐條提取診斷規(guī)則,將實際獲取的故障征兆信息與規(guī)則的前件進行匹配,利用公式(1)計算每條規(guī)則的匹配度,激活匹配度超過閾值的規(guī)則。為了提高匹配效率,規(guī)則庫可以按設備類型進行分類設計,匹配時只遍歷與診斷對象對應的規(guī)則庫。
4)診斷結果輸出:模式匹配成功后,將被激活的規(guī)則的后件作為故障診斷結論輸出。如果沒有匹配成功說明該故障模式沒有發(fā)生或規(guī)則庫不完善。由于采用閾值法,允許多個規(guī)則同時激活,因此可以診斷多種并發(fā)故障。
5)診斷數據歸檔:診斷數據歸檔是診斷結果及過程數據的結構化存儲過程。診斷數據主要包括故障征兆(輸入)、診斷結果(輸出)、處置結果(最終結論)和時間、人員等附加信息。這些信息以故障編號作為關鍵字進行關聯,形成結構化數據表單,用于后期的診斷規(guī)則完善和模糊因子修正,也可作為訓練樣本用于神經網絡訓練。
考慮到跨平臺應用,軟件實現環(huán)節(jié)采用QT集成開發(fā)環(huán)境,并采取結構化設計方法,將系統(tǒng)劃分為數據采集組件、預處理組件、模糊推理組件和可視化組件,組件之間通過通訊中間件進行信息傳遞,實現了分布式應用。數據采集組件依托設備廠家提供的OPC服務接口獲取底層設備的狀態(tài)信息和機內測試數據,然后由預處理組件進行模糊化和歸一化,并通過接口函數將處理結果傳遞給模糊推理引擎,由模糊推理引擎完成診斷知識的搜索和匹配??梢暬M件主要負責診斷結果的多維度展示,利用系統(tǒng)拓撲圖對故障進行準確定位,利用故障樹模型對故障的影響范圍、關聯關系和傳遞過程進行展示,利用數據窗口給出故障模式、故障原因和處置措施等關鍵信息。本文以某大型激光驅動裝置光路準直系統(tǒng)集成測試平臺為應用對象,開發(fā)了如圖4所示的故障診斷專家系統(tǒng)原型。
圖4 故障診斷專家系統(tǒng)原型
本文分析了大科學裝置在故障診斷方面的現狀和面臨的問題,提出了專家知識與模糊推理相結合的智能診斷方法和基于數據庫的模糊規(guī)則可視化建模和模糊推理及模式匹配算法,并通過某大型激光驅動器光路準直系統(tǒng)集成測試平臺進行了應用驗證。結果表明該方法適用于故障原因不確定、故障機理不清晰、診斷信息不完備等復雜應用場景下的智能故障診斷問題,初步滿足了準直機電系統(tǒng)的典型故障診斷需求。由于目前模糊關系矩陣的確定依賴于現階段積累的有限的經驗知識,在準確性方面還有進一步提高的空間。隨著運行時間的延續(xù),可通過歷史診斷數據的統(tǒng)計分析對模糊關系矩陣進行修正,實現自學習和自優(yōu)化,使診斷的準確性得到穩(wěn)步提升。
本文所提供的面向用戶的可視化知識建模方法,實現診斷平臺與診斷知識的有效分離,提高了系統(tǒng)的普適性。在面向用戶的系統(tǒng)開發(fā)方面,目前僅實現了診斷知識的可視化建模,需要在故障樹可視化建模和數據采集及模糊化接口的組態(tài)化配置方面開展進一步的研究,最終形成面向用戶的,支持各類故障診斷應用系統(tǒng)快速開發(fā)的故障診斷專家系統(tǒng)基礎平臺。