馬 杰,張龍飛,彭 俏,胡鵬飛
(1.海軍工程大學(xué) 核科學(xué)技術(shù)學(xué)院, 武漢 430033; 2.海軍裝備部,西安 710001)
核動(dòng)力裝置二回路系統(tǒng)設(shè)備復(fù)雜,運(yùn)行工況復(fù)雜多變,操縱員如果不能及時(shí)判斷并處置運(yùn)行過程中發(fā)生的故障,可能會(huì)造成嚴(yán)重的后果。利用智能的故障診斷技術(shù)對核動(dòng)力裝置二回路系統(tǒng)進(jìn)行診斷,不僅可以有效判斷運(yùn)行故障,而且可以防止重大事故的發(fā)生[1]?,F(xiàn)階段常用的智能故障診斷模型有定性[2]、定量和半定量[3]三種,定性模型采用基于深層知識的方法,具備識別未知故障及自動(dòng)獲取知識的特點(diǎn),基于分層符號有向圖(Signed Directed Graph,SDG)故障診斷也是一種基于深層知識的智能診斷方法,廣泛應(yīng)用于航天[4]、化工、煤礦等行業(yè)復(fù)雜系統(tǒng)的故障診斷。
現(xiàn)階段利用SDG模型的進(jìn)行故障診斷,主要利用各個(gè)變量節(jié)點(diǎn)間的關(guān)系,通過有效的推理機(jī)制和推理算法,得到故障演變傳播的路徑,進(jìn)而找到真正的故障源,具有良好的完備性和魯棒性[5]。但利用傳統(tǒng)SDG模型推理故障源時(shí),系統(tǒng)越復(fù)雜越容易出現(xiàn)“組合爆炸”問題,產(chǎn)生多義性,使得診斷效率不高[6]。
本研究針對核動(dòng)力裝置二回路系統(tǒng),以SDG故障診斷模型為基礎(chǔ),根據(jù)傳統(tǒng)SDG方法對潛在故障源搜索范圍大、診斷效率低等問題,建立分層符號有向圖(SDG)模型。通過分層策略減小潛在故障源搜索空間,再利用分層SDG模型進(jìn)行推理獲得故障源及故障相容通路,最后通過二回路系統(tǒng)仿真實(shí)驗(yàn)對分層SDG故障診斷模型進(jìn)行驗(yàn)證。
SDG模型可以利用不同符號和連線來描述系統(tǒng)內(nèi)部影響關(guān)系的定性因果模型,通過關(guān)鍵參數(shù)之間的因果關(guān)系,推理出故障可能的傳播路徑,具有包容大量潛在故障信息的能力。對SDG模型定義如下:
G=(V,E,φ,θ)
(1)
其中節(jié)點(diǎn)集合V代表系統(tǒng)可能故障根源,支路集合E表示節(jié)點(diǎn)間的因果關(guān)系,φ代表正、負(fù)影響,θ表示節(jié)點(diǎn)狀態(tài)集合。
V={v1,v2,…,vn}表示節(jié)點(diǎn)集合;
E={e1,e2,…,en}表示支路集合;
鄰接關(guān)系符δ+∶E→V(支路的起始節(jié)點(diǎn))和δ-∶E→V。(支路的終止節(jié)點(diǎn)),該“鄰接關(guān)系”分別表示每一個(gè)支路的起始節(jié)點(diǎn)δ+ek和終止節(jié)點(diǎn)δ-ek;
函數(shù)φ:E∈{+,-}稱為支路ek的符號;
函數(shù)θ:V∈{+,0,-}其中θ(vj)(vj∈V)為節(jié)點(diǎn)vj的符號;
以上定義是假定系統(tǒng)的狀態(tài)描述為狀態(tài)變量相應(yīng)于每個(gè)元素的值,這些值可以取為正常狀態(tài)值,也可以大于或小于正常狀態(tài)值。
SDG模型G=(V,E,φ,θ)的故障模式是一個(gè)函數(shù):
(2)
SDG模型的推理是在模型中完備地且不重復(fù)地搜索(窮舉)所有的相容通路的過程,稱為SDG的定性仿真,通過對相容通路的搜索,就可以發(fā)掘出故障在復(fù)雜系統(tǒng)內(nèi)部的發(fā)展演變過程,找到故障源。實(shí)時(shí)高效的推理是SDG模型定性仿真的基礎(chǔ)和關(guān)鍵。
SDG模型一般有反向推理和正向推理兩種推理機(jī)制,反向推理就是在模型的瞬態(tài)報(bào)警樣本中,從當(dāng)前報(bào)警節(jié)點(diǎn)向反向搜索所有可能的原因節(jié)點(diǎn),遍歷可能的報(bào)警相容通路,并確定潛在故障源。正向推理從潛在故障源開始,正向搜索所有相容通路,若發(fā)現(xiàn)與監(jiān)測參數(shù)狀態(tài)不一致的故障源為虛假故障源,反之則認(rèn)為該故障源為可能故障源。
分層SDG模型是傳統(tǒng)SDG模型的一種改進(jìn),是通過可達(dá)性矩陣行集合、列集合之間的矩陣運(yùn)算,將有向圖分層后再進(jìn)行故障診斷。分層結(jié)構(gòu)代表了故障源的層次,任何本層內(nèi)的節(jié)點(diǎn)故障只能影響到本層或下層的節(jié)點(diǎn)狀態(tài),而不能影響到上一層的節(jié)點(diǎn)狀態(tài)。分層SDG表示了系統(tǒng)內(nèi)故障報(bào)警傳播層次結(jié)構(gòu),當(dāng)節(jié)點(diǎn)參數(shù)狀態(tài)異常出現(xiàn)警報(bào)后,根據(jù)報(bào)警節(jié)點(diǎn)所在層次,先從位于最高層的報(bào)警節(jié)點(diǎn)開始診斷,能夠縮小搜索空間,提高診斷效率。
定義SDG模型的先行集為Ai,可達(dá)集為Ri,所有能夠到達(dá)節(jié)點(diǎn)組成Ai,所有vi到達(dá)的節(jié)點(diǎn)組成Ri。分層SDG模型Gk的數(shù)學(xué)模型表示如下:
Gk=(Vk,Ek,ω)
(3)
式中:集合Vk={vh|vh為第h層所有節(jié)點(diǎn)},h為節(jié)點(diǎn)的層數(shù);
函數(shù)ω:ω(eh,h+1)(eh,h+1∈EF,ω→{+,-}),各支路節(jié)點(diǎn)間的符號集合;集合Ek={eh|eh為第h層和h+1層節(jié)點(diǎn)間的所有有向邊}采用基于可達(dá)性的分層方法,具體算法為:
步驟1:對每個(gè)節(jié)點(diǎn)尋找可達(dá)集Ri和先行集Ai;
步驟2:首先計(jì)算可達(dá)集Ri和先行集Ai的交集,對交集與Ai相同的節(jié)點(diǎn)vi的集合,就是第1層節(jié)點(diǎn)定義L1,第1層節(jié)點(diǎn)的集合為:
L1={vi|Ri∩Ai=Ai}
(4)
步驟3:刪除所有已經(jīng)確定層次的節(jié)點(diǎn),再刪除與這些節(jié)點(diǎn)相連的有向邊,就會(huì)產(chǎn)生一個(gè)新的SDG模型。對新的SDG模型所有節(jié)點(diǎn)重復(fù)1和2,分別計(jì)算第2到h層的節(jié)點(diǎn)集合,直到所有節(jié)點(diǎn)進(jìn)行分層,第h層節(jié)點(diǎn)集可以表示為:
Lh={vi|vi∈V-L1-L2-,…-Lk-1,Ri∩Ai=Ai}
(5)
圖1為一個(gè)SDG模型,其中包含7個(gè)節(jié)點(diǎn)變量,其中箭頭表示了這些節(jié)點(diǎn)間的相互影響關(guān)系。
圖1 分層SDG模型示意圖
通過分析有向圖節(jié)點(diǎn)關(guān)系,可以確定圖1(a)未分層的SDG模型的可達(dá)矩陣:
設(shè)節(jié)點(diǎn)1的可達(dá)集為R1,由P1可得R1={2,3,5,6,7,8},設(shè)節(jié)點(diǎn)1的先行集為A1,由P1可得A1={φ}。則有:R1∩A1=R1∩φ=φ=A1,根據(jù)式(4)可知節(jié)點(diǎn)1為第1層節(jié)點(diǎn)。用同樣的方法繼續(xù)搜索其他所有節(jié)點(diǎn),得到節(jié)點(diǎn)4也是第1層的節(jié)點(diǎn),則第1層節(jié)點(diǎn)集合為:
L1={節(jié)點(diǎn)1,節(jié)點(diǎn)4}
確定第1層節(jié)點(diǎn)后,刪除節(jié)點(diǎn)1和節(jié)點(diǎn)4所在的行和列后,重新建立可達(dá)矩陣,新的可達(dá)矩陣為:
對于可達(dá)矩陣P2,應(yīng)用同樣的推理方法,確定第2層節(jié)點(diǎn)為:
L2={節(jié)點(diǎn)2,節(jié)點(diǎn)3,節(jié)點(diǎn)6,節(jié)點(diǎn)8}
以此類推完成SDG模型的分層,如圖1(a)為原始的SDG模型,圖1(b)為經(jīng)過分層后的SDG模型。
如果SDG模型建立的鄰接矩陣通過上述算法不能直接進(jìn)行分層,需要在鄰接矩陣基礎(chǔ)上通過Warshall算法先轉(zhuǎn)化為可達(dá)矩陣在進(jìn)行分層,鄰接矩陣A可通過Warshall算法公式(6)轉(zhuǎn)化為可達(dá)矩陣P:
P=A+A2+A3+…+An
(6)
在核動(dòng)力裝置故障診斷領(lǐng)域,由于裝置系統(tǒng)的復(fù)雜性,對故障診斷的實(shí)時(shí)性和完備性要求很高。故障發(fā)生后如果不能及時(shí)判斷可能短時(shí)間內(nèi)出現(xiàn)大量繼發(fā)報(bào)警,這就要求建立的診斷算法復(fù)雜程度不能過高。因此,本研究將分層有向圖策略應(yīng)用于核動(dòng)力裝置二回路系統(tǒng)故障診斷建模,利用分層SDG方法減少搜索空間,提高故障源的診斷效率。
核動(dòng)力裝置二回路系統(tǒng)包括主蒸汽系統(tǒng)、輔蒸汽系統(tǒng)、凝給水系統(tǒng)等子系統(tǒng),主要循環(huán)過程是蒸汽發(fā)生器產(chǎn)生的高溫高壓的蒸汽,進(jìn)入汽輪機(jī)做功后,經(jīng)冷凝器凝結(jié)成水,在經(jīng)過預(yù)熱后通過凝水泵和給水泵重新進(jìn)入蒸發(fā)器,完成整個(gè)汽水循環(huán)過程[7]。根據(jù)二回路系統(tǒng)流程建立核動(dòng)力裝置二回路系統(tǒng)的SDG模型(其結(jié)構(gòu)參見圖2)。
圖2 核動(dòng)力裝置二回路系統(tǒng)SDG模型結(jié)構(gòu)示意圖
由于核動(dòng)力裝置二回路系統(tǒng)比較復(fù)雜,變量之間的關(guān)系相互耦合,需要選取關(guān)鍵參數(shù)對SDG模型進(jìn)行簡化,要求關(guān)鍵參數(shù)(見表1)能夠快速、準(zhǔn)確地識別故障,并能解釋核動(dòng)力裝置二回路系統(tǒng)發(fā)生故障的參數(shù)變化過程。
表1 二回路系統(tǒng)關(guān)鍵參數(shù)
分析關(guān)鍵參數(shù)與故障之間的影響關(guān)系,根據(jù)二回路系統(tǒng)流程分析各參數(shù)間的影響關(guān)系,結(jié)合簡化后的SDG模型建立鄰接矩陣和可達(dá)矩陣。應(yīng)用SDG模型分層方法,建立核動(dòng)力裝置二回路系統(tǒng)分層SDG模型如圖3所示。
在核動(dòng)力裝置二回路系統(tǒng)SDG模型基礎(chǔ)上,根據(jù)工藝流程及分層策略建立了分層SDG故障診斷模型。根據(jù)系統(tǒng)實(shí)時(shí)采集的運(yùn)行數(shù)據(jù)輸入到分層SDG模型,判斷節(jié)點(diǎn)變量的狀態(tài),由分層SDG進(jìn)行推理,判斷故障并得到故障傳播路徑。節(jié)點(diǎn)狀態(tài)的判定,需要確定每個(gè)被測變量的閾值,通常使用的剛性閾值范圍較難把握,范圍較小,靈敏度過高,報(bào)警容易出現(xiàn)組合爆炸,范圍較大,可能遺漏報(bào)警導(dǎo)致故障診斷無法進(jìn)行[8]。這里引入節(jié)點(diǎn)閾值模糊判定方法,即5級SDG模型的模糊隸屬度。
圖3 二回路系統(tǒng)分層SDG模型結(jié)構(gòu)示意圖
設(shè)定5級SDG節(jié)點(diǎn)閾值為a*、a、b、b*,其中(a,b)為節(jié)點(diǎn)參數(shù)的正常范圍,節(jié)點(diǎn)狀態(tài)為“0”。a*和b*分別為上下限報(bào)警閾值,在a*、b*范圍以外節(jié)點(diǎn)狀態(tài)為“+”或“-”,在區(qū)間(a*,a)和(b,b*)為灰色區(qū)間,表示節(jié)點(diǎn)參數(shù)超出了正常范圍,但還沒有超過報(bào)警閾值,將此范圍內(nèi)的偏差映射到線性隸屬函數(shù)上,表示該節(jié)點(diǎn)參數(shù)存在偏差的程度,即節(jié)點(diǎn)狀態(tài)“+”或“-”的程度。
基于分層SDG模型故障搜索采用反向推理算法,算法流程如圖4所示。首先,系統(tǒng)發(fā)生故障后,被監(jiān)控節(jié)點(diǎn)處的系統(tǒng)變量異常,發(fā)出報(bào)警,建立報(bào)警節(jié)點(diǎn)。從報(bào)警節(jié)點(diǎn)集合中,選取最底層的一個(gè)報(bào)警節(jié)點(diǎn),開始搜索,采用反向搜索方式,在分層SDG模型中,反向搜索各個(gè)支路,如果支路為不相容支路,則該不相容支路對應(yīng)的設(shè)備為潛在故障源。如果相容,則該設(shè)備沒有發(fā)生故障,只是起到了傳播故障的作用,那么繼續(xù)反向搜索,最后報(bào)警集合的所有報(bào)警節(jié)點(diǎn)都被反向搜索后,所獲得的潛在故障源組成故障源侯選集。將故障源侯選集中每個(gè)潛在故障源分別進(jìn)行正向推理驗(yàn)證,如果與報(bào)警監(jiān)測值一致的話,判斷該故障報(bào)警為故障源,并給出故障傳播路徑。
本文研究以核動(dòng)力模擬機(jī)作為運(yùn)行數(shù)據(jù)源,對核動(dòng)力裝置二回路系統(tǒng)凝水泵故障、冷凝器真空度低故障進(jìn)行仿真實(shí)驗(yàn)研究。
核動(dòng)力裝置凝水泵故障是指二回路系統(tǒng)運(yùn)行過程中,凝水泵因機(jī)械或電氣原因?qū)е峦V惯\(yùn)行。在凝水泵發(fā)生故障后,如果處置不當(dāng),可能導(dǎo)致冷凝器真空下降,蒸發(fā)器干鍋等嚴(yán)重后果,因此,需要及時(shí)判明故障。
仿真實(shí)驗(yàn)初始條件是模擬機(jī)設(shè)置為30%功率運(yùn)行,在正常運(yùn)行50 s后,在模擬機(jī)上調(diào)用故障設(shè)置模式,停止凝水泵運(yùn)行。根據(jù)模擬機(jī)異常工況下的瞬時(shí)樣本數(shù)據(jù)(見表2),對瞬時(shí)樣本數(shù)據(jù)按照線性模糊隸屬度算法轉(zhuǎn)換后,得到各監(jiān)測節(jié)點(diǎn)的模糊隸屬度。
圖4 分層SDG模型推理流程框圖
表2 異常狀態(tài)下瞬時(shí)樣本數(shù)據(jù)
故障設(shè)置后3 s系統(tǒng)出現(xiàn)報(bào)警節(jié)點(diǎn):L2、P2,在圖5中用陰影(實(shí)際情況為黃色)報(bào)警標(biāo)出。根據(jù)分層SDG模型,故障報(bào)警只能由高層節(jié)點(diǎn)傳向低層節(jié)點(diǎn),可以判斷故障是從P2以及處在P2所在層以上的節(jié)點(diǎn),通過反向推理得到兩條相容通路:
① 冷凝器真空P2(-)冷凝器水位L2(+)蒸汽流量F1(+)噴嘴閥開度V1(+);
② 冷凝器真空P2(-)冷凝水水位L2(+)冷凝水流量F2(-)
通過分析分層SDG模型中除報(bào)警節(jié)點(diǎn)以外,相容通路上的節(jié)點(diǎn)模糊隸屬度:蒸汽流量F1(0.072)、噴嘴閥開度V1(0.007)、凝水泵流量F2(0.835),可以推斷導(dǎo)致冷凝器水位(L2)、冷凝器真空(P2)報(bào)警的原因可能是凝水泵故障。通過正向驗(yàn)證凝水泵故障情況下,冷凝水流量降低,冷凝水位升高以及冷凝器真空降低,與監(jiān)測參數(shù)變化一致。
圖5 凝水泵停運(yùn)故障SDG瞬時(shí)樣本示意圖
在核動(dòng)力裝置二回路系統(tǒng)中,冷凝器作為冷源的主要作用,可以將汽輪機(jī)高溫高壓的排汽凝結(jié)成水,并在汽輪機(jī)排汽口維持一定的真空。循環(huán)水泵不斷地將冷卻水送入冷凝器,汽輪機(jī)排汽在冷凝管壁外側(cè)冷凝成水,蒸汽熱量通過冷卻管壁傳遞給冷卻水。冷凝器真空度是表征冷凝器工作狀態(tài)的重要參數(shù),如果運(yùn)行過程中真空度偏低,使汽輪機(jī)效率降低,嚴(yán)重時(shí)可能導(dǎo)致汽輪機(jī)解列。導(dǎo)致冷凝器真空度偏低的原因較多,如射汽抽氣器工作不正常、冷凝器冷卻管部分銅管堵塞等,需要及時(shí)判斷并處置。
仿真實(shí)驗(yàn)初始條件是核動(dòng)力裝置30%功率運(yùn)行,在正常運(yùn)行20 s后減小循環(huán)水泵進(jìn)口閥開度模擬循環(huán)水泵故障。根據(jù)采集模擬機(jī)異常工況下的瞬時(shí)樣本數(shù)據(jù)(見表3),對瞬時(shí)樣本數(shù)據(jù)按照線性模糊隸屬度算法轉(zhuǎn)換后,得到故障插入后各監(jiān)測節(jié)點(diǎn)的模糊隸屬度。
表3 異常狀態(tài)下瞬時(shí)樣本數(shù)據(jù)
本文從圖6可以看出,故障設(shè)置12 s后,系統(tǒng)出現(xiàn)報(bào)警節(jié)點(diǎn):P2、F4,在圖6中用陰影,實(shí)際情況為黃色報(bào)警標(biāo)出。根據(jù)二回路分層SDG模型,可以判斷冷凝器真空度低(P2)報(bào)警是從P2以及處在P2所在層以上的節(jié)點(diǎn),通過反向推理得到4條相容通路:
① 冷凝器真空P2(-)射汽抽氣器流量F5(-);
② 冷凝器真空P2(-)冷凝器水位L2(+)凝水泵流量F2(-);
③ 冷凝器真空P2(-)冷凝器水位L2(+)蒸汽流量F1(+)噴嘴閥開度V1(+);
④ 冷凝器真空P2(-)循環(huán)水流量F4(-)。
圖6 真空度低故障SDG瞬時(shí)樣本
通過分析分層SDG模型中除報(bào)警節(jié)點(diǎn)以外,相容通路上的節(jié)點(diǎn)模糊隸屬度:射汽抽氣器流量F5(0.205)、凝水泵流量F2(0.103)、冷凝器水位L2(0.379)、噴嘴閥開度V1(0.009)、蒸汽流量F1(0.072),可以推斷導(dǎo)致冷凝器真空(P2)報(bào)警的原因可能是循環(huán)水泵故障。通過正向驗(yàn)證循環(huán)水泵故障情況下,循環(huán)水流量降低,真空度升高,同時(shí)循環(huán)水溫度升高(0.653)與監(jiān)測參數(shù)變化一致。
1) 提出了一種分層符號有向圖(SDG)的故障診斷方法,采用分層策略優(yōu)化SDG故障診斷模型,根據(jù)節(jié)點(diǎn)之間的相互影響關(guān)系,反向推理并判斷故障相容支路。
2) 基于分層SDG模型診斷方法,對核動(dòng)力裝置二回路系統(tǒng)進(jìn)行仿真實(shí)驗(yàn)研究,結(jié)果表明分層SDG模型能夠降低搜索空間,提高診斷效率。