陳志平 林選翔
(杭州電子科技大學(xué) 浙江 杭州 310018)
貝葉斯網(wǎng)絡(luò)是故障診斷中常用推理模型之一。其網(wǎng)絡(luò)節(jié)點由故障事件和各級故障源組成,當(dāng)某故障事件發(fā)生且各層網(wǎng)絡(luò)節(jié)點的先驗概率已知,就可根據(jù)故障網(wǎng)絡(luò)模型推測該已發(fā)故障的第一故障源。
目前,貝葉斯網(wǎng)絡(luò)在故障診斷上的應(yīng)用研究已經(jīng)取得了諸多進(jìn)展:郭日紅等[1]引入評分函數(shù)和蟻群算法對基于貝葉斯的機(jī)械模型進(jìn)行了優(yōu)化;段榮行等[2]將貝葉斯網(wǎng)絡(luò)應(yīng)用于故障樹中,降低故障樹故障概率推理復(fù)雜度;張建功[3]在貝葉斯網(wǎng)絡(luò)中加入了規(guī)則庫,應(yīng)用于起重機(jī)故障診斷。但上述研究仍存有不足,主要表現(xiàn)在:① 橋式起重機(jī)故障事件的貝葉斯網(wǎng)絡(luò)模型無法兼顧節(jié)點完整性與運(yùn)用便捷性;② 忽略了貝葉斯網(wǎng)絡(luò)中根節(jié)點先驗概率的賦值準(zhǔn)確性;③ 僅僅局限在理論上,并不能應(yīng)用到現(xiàn)實生活中。第一點關(guān)系到最終能否得到正確的診斷結(jié)果;第二點關(guān)系到故障診斷推理的準(zhǔn)確度和效率;第三點關(guān)系到基于貝葉斯網(wǎng)絡(luò)的診斷方法能夠被廣泛應(yīng)用在工業(yè)領(lǐng)域中。
針對上述問題,本文將根據(jù)貝葉斯網(wǎng)絡(luò)診斷算法,構(gòu)建橋式起重機(jī)故障診斷模型,并運(yùn)用數(shù)學(xué)手段提高先驗概率準(zhǔn)確度。最終在Visual Studio平臺上開發(fā)基于貝葉斯網(wǎng)絡(luò)的橋式起重機(jī)故障診斷系統(tǒng)。該系統(tǒng)能有效地檢測第一故障點并給預(yù)防性維修提供參考,為基于貝葉斯網(wǎng)絡(luò)的診斷系統(tǒng)更廣泛使用在工業(yè)領(lǐng)域中奠定基礎(chǔ)。
根據(jù)橋式起重機(jī)結(jié)構(gòu)特點,結(jié)合各零部件失效方式,在咨詢相關(guān)專家的基礎(chǔ)上,將橋式起重機(jī)故障按照獨(dú)立層次主元法分解后構(gòu)建網(wǎng)絡(luò),得到橋式起重機(jī)故障分解網(wǎng)絡(luò),如圖1所示。

圖1 橋式起重機(jī)故障分解網(wǎng)絡(luò)
圖1所示的橋式起重機(jī)故障分解網(wǎng)絡(luò)外圍節(jié)點由故障原因構(gòu)成,各節(jié)點之間的耦合關(guān)系由有向線段表達(dá),共涵蓋了3個層次共62個節(jié)點。
利用故障事件解耦形成的貝葉斯網(wǎng)絡(luò)診斷模型需要使用者熟知橋式起重機(jī)的結(jié)構(gòu)劃分,在實際應(yīng)用中存在局限。為此,基于圖1所示模型的基礎(chǔ)上對貝葉斯網(wǎng)絡(luò)診斷模型進(jìn)行改進(jìn):在實際診斷案例中提取常見的故障表現(xiàn)作為網(wǎng)絡(luò)節(jié)點加入,存在因果關(guān)系的節(jié)點間用有向線段連接,躍層或同層節(jié)點的因果關(guān)系用有向虛線段表示。貝葉斯網(wǎng)絡(luò)局部診斷模型如圖2所示。

圖2 基于貝葉斯網(wǎng)絡(luò)的診斷模型局部圖
故障表現(xiàn)層(Symptom Node)用于描述橋式起重機(jī)發(fā)生故障時的外部直觀表現(xiàn)、故障節(jié)點與故障事件的依存關(guān)系。相當(dāng)于將橋式起重機(jī)龐大的故障網(wǎng)絡(luò)模型封裝入“黑匣子”,通過故障表現(xiàn)節(jié)點與外部聯(lián)系,并以故障表現(xiàn)節(jié)點對貝葉斯網(wǎng)絡(luò)進(jìn)行分域推理。
故障原因?qū)邮秦惾~斯網(wǎng)絡(luò)中的根節(jié)點(Root Node),故障原因?qū)右环矫嬉c故障表現(xiàn)層建立聯(lián)系,另一方面又通過與故障部件層關(guān)聯(lián)實現(xiàn)故障診斷網(wǎng)絡(luò)的整域相關(guān)。
故障部件層是貝葉斯網(wǎng)絡(luò)中的葉節(jié)點(Leaf Node),用來描述橋式起重機(jī)發(fā)生故障時直接影響到的起重機(jī)本體構(gòu)件,即需要進(jìn)行維護(hù)搶修的零部件。
當(dāng)無法知曉某事物的本質(zhì)時,可以通過與該事物相關(guān)故障事件發(fā)生的次數(shù)來判斷該事物發(fā)生的故障概率,這就是貝葉斯公式。貝葉斯公式是概率論中的一種重要概率計算方法,設(shè)V1,V2,…,Vk是兩兩互斥的事件,且先驗概率P(Vi)≥0,另有一事件U,它總是與V1,V2,…,Vk之一同時發(fā)生,且條件概率P(U|Vi)已知,其后驗概率用貝葉斯公式表達(dá)如下:
(1)
式(1)提供了一種通過先驗概率來計算后驗概率的方法,可用于確定故障事件發(fā)生的概率。根據(jù)貝葉斯理論,不確定性推理就是使用聯(lián)合概率推理。對于一個包含n個故障原因變量的聯(lián)合分布P(B1,B2,…,Bn),利用式(1)可得:
P(B1,B2,…,Bn)=P(B1)P(B2|B1)…
P(Bn|B1…Bn-1)
(2)
而對于任意Bi如果存在π(Bi)?{B1,B2,…,Bn},使得給定π(Bi),Bi與{B1,B2,…,Bn}中的其他變量條件獨(dú)立,即P(Bi|B1,B2,…Bn)=∏P(Bi|π(Bi)),則有:
P(B1,B2,…,Bn)=∏P(Bi|π(Bi))
(3)
從式(3)中可以看出,π(Bi)的取值決定了變量Bi的分布。理論上只要確定貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)中的各節(jié)點及其條件概率分布,網(wǎng)絡(luò)中任何節(jié)點的概率都能通過迭代和貝葉斯理論計算得到。
結(jié)合實際運(yùn)用貝葉斯公式計算出各根節(jié)點的先驗概率和條件概率,通過類似式(1)的計算可以得到后驗概率統(tǒng)計。但在樣本有限的情況下,用計算方式所得到的概率直接代替客觀先驗概率,會影響故障診斷的準(zhǔn)確度[4-6]。引入專家意見是一種有效提高診斷準(zhǔn)確度的方法。以引起故障部件的故障結(jié)點個數(shù)為標(biāo)準(zhǔn),給故障部件劃分等級。由于故障節(jié)點一般不會超過9個,可將等級劃分為9級,其中1級表示最頻繁。故障發(fā)生概率等級評分表如表1所示,專家根據(jù)等級制度對各個故障節(jié)點進(jìn)行評分。

表1 故障發(fā)生概率等級對應(yīng)評分表
每個專家的評價經(jīng)驗不同,所以對同一故障事件給出的評價值也不同,需對每個專家的評價進(jìn)行綜合分析。本文選用格羅布斯準(zhǔn)則和肖維勒準(zhǔn)則[7]聯(lián)合評判專家意見,以提高專家評價的可靠性。聯(lián)合評判法則如表2所示。

表2 聯(lián)合評判法則
根據(jù)分批估計理論[8-10],將處理后的專家評價分為兩類再進(jìn)行數(shù)據(jù)融合。
融合值計算公式如下:
(4)
式中:T(1)、T(2)為分類后每組數(shù)據(jù)的算術(shù)平均值,σ(1)、σ(2)為其所對應(yīng)的標(biāo)準(zhǔn)差。
初始條件下,各專家可視為等精度評價,首先計算A類不確定度,UA=κρμ,κρ為包含因子,μ為算術(shù)平均值的標(biāo)準(zhǔn)偏差。
為了更好地綜合專家評價和客觀先驗概率,需要對兩種數(shù)據(jù)進(jìn)行關(guān)聯(lián)。以表3所示的橋式起重機(jī)制動器故障底事件客觀先驗概率賦值記錄為例進(jìn)行數(shù)據(jù)擬合。

表3 制動器故障底事件先驗概率賦值記錄表
利用MATLAB中的cftool工具箱進(jìn)行曲線擬合,對比多種擬合方程,選定冪函數(shù)擬合,最終結(jié)果如圖3所示。

圖3 先驗概率擬合曲線圖
利用擬合曲線,代入各故障底事件的綜合評價值,即可得到客觀先驗概率,結(jié)果如表4所示。

表4 先驗概率綜合量化概率結(jié)果表
由表4可見,最終擬合的先驗概率在客觀先驗概率的基礎(chǔ)上融合了專家評價后的結(jié)果呈現(xiàn)故障等級越高,概率變化量越小的特點,滿足概率故障等級遞減規(guī)則,也符合實際診斷中對于發(fā)生概率極低的一些故障原因較難判定優(yōu)先級的情況。
基于C#語言和SQL-Server數(shù)據(jù)庫開發(fā)了貝葉斯網(wǎng)絡(luò)故障診斷系統(tǒng)[11-12],系統(tǒng)分為數(shù)據(jù)管理模塊與功能模塊,如圖4所示。其中:數(shù)據(jù)管理模塊分別為設(shè)備信息、故障記錄、數(shù)據(jù)操作、維護(hù)與工具;功能模塊分為故障診斷、故障預(yù)測。

圖4 系統(tǒng)功能框架
故障診斷軟件封裝了基于貝葉斯網(wǎng)絡(luò)的診斷模型和引入專家評價的先驗概率。本文主要講解故障診斷和故障預(yù)測的流程。
如圖5所示,在故障診斷過程中,只需輸入故障表現(xiàn)(步驟①),診斷模型便進(jìn)行貝葉斯網(wǎng)絡(luò)推理(步驟②)得到故障診斷結(jié)果。若診斷結(jié)果符合實際,則輸出故障表現(xiàn);若診斷結(jié)果不符合實際,則將此結(jié)果對應(yīng)的節(jié)點先驗概率重置,并更新各節(jié)點的條件概率后再次進(jìn)行貝葉斯網(wǎng)絡(luò)推理(步驟③),直到定位第一故障原因。

圖5 故障診斷流程圖
如圖6所示,在故障預(yù)測過程中,通過PC端串口與橋式起重機(jī)實時監(jiān)控系統(tǒng)的PLC模塊通信,監(jiān)控系統(tǒng)檢測到的狀態(tài)數(shù)據(jù)經(jīng)證據(jù)輸入?yún)^(qū)(步驟①)后輸入貝葉斯網(wǎng)絡(luò)模型,根據(jù)貝葉斯網(wǎng)絡(luò)推理(步驟②)得到預(yù)測診斷結(jié)果。若預(yù)測結(jié)果符合實際,則輸出預(yù)測的故障表現(xiàn);若預(yù)測結(jié)果不符合實際,則增加檢測節(jié)點個數(shù)(步驟③),將數(shù)據(jù)重新輸入證據(jù)輸入?yún)^(qū)再次檢測,直至做出最準(zhǔn)確的故障預(yù)測。

圖6 故障預(yù)測流程圖
為了檢驗本文提出的基于貝葉斯網(wǎng)絡(luò)的橋式起重機(jī)故障診斷模型診斷效果,選取某港口的通用橋式起重機(jī)作為診斷對象,故障描述如下:起重機(jī)由持證司機(jī)操作,司機(jī)打算試空車運(yùn)行大車行走,大車運(yùn)行5米左右后,隨行人員發(fā)現(xiàn)單側(cè)大車電機(jī)有冒煙現(xiàn)象,司機(jī)立即停止大車運(yùn)行操作。
運(yùn)用故障診斷軟件的診斷結(jié)果記錄如下:輸入故障表現(xiàn)“大車不能運(yùn)行或啟動”→故障診斷:防風(fēng)裝置無法動作(排除)→繼續(xù)診斷:大車運(yùn)行電機(jī)異常→提示:啃軌→此時輸入故障表現(xiàn)為“啃軌”→故障診斷:車輪垂直度偏差(排除)→繼續(xù)診斷:軌道直線度不好(準(zhǔn)確)。圖7、圖8為故障診斷界面圖。

圖7 故障診斷界面1

圖8 故障診斷界面2
用故障診斷軟件推理4次就可定位出故障原因,排查所得到的故障原因為“軌道直線度不好”,符合如圖9所示的現(xiàn)場情況。截取“軌道直線度不好”的貝葉斯故障網(wǎng)絡(luò)模型如圖10所示,可知理論上定位故障原因需要排查13次。

圖9 軌道直線度不好現(xiàn)場圖

圖10 “大車不能啟動”的貝葉斯故障網(wǎng)絡(luò)結(jié)構(gòu)
對其他常見故障表現(xiàn)進(jìn)行多次現(xiàn)場診斷,記錄診斷過程,并與專家診斷過程進(jìn)行比較,得到診斷效果對比如圖11所示。其中X軸表示常見故障表現(xiàn),Y軸表示定位故障點平均診斷次數(shù)。由圖11可知,基于貝葉斯網(wǎng)絡(luò)的故障診斷軟件將專家診斷效率提升了37.6%。

圖11 診斷效果對比圖
本文構(gòu)建的貝葉斯網(wǎng)絡(luò)故障診斷模型兼顧起重機(jī)結(jié)構(gòu)模型的全面性與實際應(yīng)用的便捷性,提出了關(guān)于先驗概率定量評估的方法,并開發(fā)了基于貝葉斯網(wǎng)絡(luò)的故障診斷系統(tǒng)。此系統(tǒng)驗證了故障診斷模型的合理性以及先驗概率賦值的準(zhǔn)確性,提高了故障診斷和故障預(yù)測的效率,推動了貝葉斯理論在大型設(shè)備故障診斷領(lǐng)域的廣泛應(yīng)用。