程侃如, 王玉璋, 楊志鵬, 楊喜連
(1. 上海交通大學(xué) 機(jī)械與動力工程學(xué)院, 上海 200240;2. 上海發(fā)電設(shè)備成套設(shè)計研究院有限責(zé)任公司, 上海 200240;3. 上海交通大學(xué) 電子信息與電氣工程學(xué)院, 上海 200240)
在能源需求急劇增大及我國“雙碳”目標(biāo)的背景下,綜合能源系統(tǒng)正在我國迅速發(fā)展[1]。作為綜合能源系統(tǒng)中的關(guān)鍵設(shè)備,燃?xì)廨啓C(jī)的智能化有利于實現(xiàn)系統(tǒng)的高效運行,提高資源的利用效率,從而有利于“雙碳”目標(biāo)的實現(xiàn)[2]。同時,為了提高燃?xì)廨啓C(jī)的可靠性和可用性,需要對運行狀態(tài)進(jìn)行實時監(jiān)測,并對運行工況進(jìn)行準(zhǔn)確控制,狀態(tài)監(jiān)測和工況控制依賴于正確的傳感器數(shù)據(jù)[3]。為了獲得正確的傳感器數(shù)據(jù),需要對傳感器進(jìn)行故障診斷,一旦發(fā)現(xiàn)傳感器存在故障,就進(jìn)行信號重構(gòu)并提供給控制系統(tǒng),因此傳感器故障診斷對保證燃?xì)廨啓C(jī)可靠性和可用性至關(guān)重要[4]。
傳感器故障診斷可分為基于模型的診斷和基于數(shù)據(jù)驅(qū)動的診斷2種方法?;谀P偷脑\斷方法對建模精度有較高的要求,隨著控制技術(shù)的發(fā)展,控制系統(tǒng)復(fù)雜度提升,難以構(gòu)建出精確的模型。故障診斷結(jié)果容易受到建模誤差的影響,進(jìn)而降低診斷準(zhǔn)確度[5]?;跀?shù)據(jù)驅(qū)動的診斷方法可以避免建模精度對診斷結(jié)果的影響,近年來得到了迅速發(fā)展?;跀?shù)據(jù)驅(qū)動的方法一般分為信號處理、統(tǒng)計分析、傳統(tǒng)機(jī)器學(xué)習(xí)和深度學(xué)習(xí)等,其中深度學(xué)習(xí)在各領(lǐng)域中得到了廣泛應(yīng)用,也被很多學(xué)者用于傳感器故障診斷[6-10],如Sun等[9]提出了一種基于LeNet-5的遷移學(xué)習(xí)方法,用于氫傳感器故障診斷;Yang等[10]提出了一種帶有可分離注意力機(jī)制的卷積神經(jīng)網(wǎng)絡(luò)方法,用于傳感器故障診斷。
基于數(shù)據(jù)驅(qū)動的診斷方法通常需要大量數(shù)據(jù)和帶有標(biāo)簽的數(shù)據(jù),以實現(xiàn)分類模型的訓(xùn)練,該類方法實現(xiàn)了較高精度的傳感器故障診斷,但仍然未解決以下問題:
(1) 故障數(shù)據(jù)稀疏性的影響。能源裝備實際運行過程中,相較于正常數(shù)據(jù),故障數(shù)據(jù)量十分缺少,因此發(fā)展基于數(shù)據(jù)驅(qū)動診斷方法必須考慮故障數(shù)據(jù)稀疏性對診斷精度的影響問題。
(2) 故障幅度微弱性的影響。對于一些傳感器,如燃?xì)廨啓C(jī)透平出口溫度傳感器,由于燃燒室燃燒振蕩性和透平固定頻率旋轉(zhuǎn),采集信號不可避免存在固有波動,很容易掩蓋小幅故障信號(如噪聲故障、周期故障等),造成誤診、診斷精度低等問題。但該參數(shù)涉及多個控制回路,必須提升其診斷精度。
目前,現(xiàn)有文獻(xiàn)關(guān)于傳感器故障診斷方法對故障程度的敏感性討論較少。筆者提出一種基于奇異譜分析(SSA)、雙向長短期記憶(BiLSTM)網(wǎng)絡(luò)和注意力機(jī)制的燃?xì)廨啓C(jī)傳感器故障診斷方法(簡稱SSA-attBiLSTM方法),用于解決故障信號稀疏性和幅度微弱性造成的傳感器故障診斷精度低的問題。SSA是對一維時間序列的非參數(shù)譜分析方法,通過對一維時間序列進(jìn)行分解與重構(gòu),提取出趨勢項、周期項與殘差項。采用SSA 提取出態(tài)勢覺察后的傳感器信號時間序列的低頻分量和高頻分量,分別對應(yīng)故障信號的主要發(fā)展趨勢和波動性。在分類部分,利用BiLSTM網(wǎng)絡(luò)在時序信息捕獲方面的優(yōu)越性,以及注意力機(jī)制對于主要特征的敏感性,構(gòu)建基于注意力機(jī)制的BiLSTM深度網(wǎng)絡(luò)對SSA處理后傳感器信號的類型進(jìn)行判斷,得到傳感器信號類型。
燃?xì)廨啓C(jī)的運行條件復(fù)雜、工作條件惡劣,其中大部分傳感器安裝在高溫高壓的惡劣環(huán)境下,因此傳感器不可避免的會出現(xiàn)故障。燃?xì)廨啓C(jī)主要傳感器類型包括溫度傳感器(熱電偶和熱電阻)、壓力測量傳感器、轉(zhuǎn)速傳感器和振動傳感器等。
對某電廠(以下簡稱Z電廠)2016年1月—2021年5月傳感器故障次數(shù)進(jìn)行了統(tǒng)計,Z電廠內(nèi)3臺9F級燃?xì)廨啓C(jī)機(jī)組5年間共發(fā)生540次傳感器故障,2016—2020年平均每年每臺機(jī)組故障32次。其中,溫度傳感器和壓力測量傳感器故障頻率最高,占總故障數(shù)量的50%。
根據(jù)對Z電廠歷史傳感器故障特征進(jìn)行分析,同時結(jié)合參考文獻(xiàn)[8]和參考文獻(xiàn)[11]中對傳感器故障類型的總結(jié),將燃?xì)廨啓C(jī)傳感器故障類型定義為偏置故障、單值脈沖故障、漂移故障、周期性故障、噪聲故障和短路故障6種不同類型,其數(shù)學(xué)表達(dá)式見表1。其中,x(n)為原信號;n為時間變量;n0為故障發(fā)生的時刻;Ai和bi為故障幅度;ω為周期性故障周期;γ為噪聲故障隨機(jī)量。
表1 傳感器故障數(shù)學(xué)表達(dá)式
溫度信號是燃?xì)廨啓C(jī)控制系統(tǒng)中非常重要且具有代表性的信號,選擇透平出口溫度傳感器信號作為數(shù)據(jù)來源,用于后續(xù)故障診斷方法的試驗驗證,圖1為疊加6類故障后的透平出口溫度信號。
(a) 偏置故障
SSA-attBiLSTM算法的流程見圖2。首先,對傳感器數(shù)據(jù)進(jìn)行SSA分解,重構(gòu)為趨勢項、周期項和殘差項;其次,將趨勢項和周期項作為輸入,使用基于注意力機(jī)制的BiLSTM深度網(wǎng)絡(luò)進(jìn)行分類。
圖2 SSA-attBiLSTM算法示意圖
SSA是一種處理非線性時間序列數(shù)據(jù)且與經(jīng)驗正交函數(shù)相聯(lián)系的主成分分析方法,可以有效地將趨勢項和周期項分量聚集到若干個子序列中[12]。SSA的具體過程主要包括構(gòu)造軌跡矩陣、對軌跡矩陣進(jìn)行奇異值分解(SVD)、分組、對角平均化4個步驟。
首先,根據(jù)一維等間隔采樣長度為N的傳感器信號時間序列x={x1,x2, …,xN}構(gòu)建M×K階軌跡矩陣X,其每條副對角線值都相等。其中K=N-M+1,M為窗口長度,取值范圍為1 ≤M≤N/2,則軌跡矩陣X可表示為:
(1)
式中:Xi為遲滯序列,Xi=[xi,…,xi+ M-1]T(1≤i≤K)。
X=E1+E2+…+Ed
(2)
最后,進(jìn)行對角平均化,即將分組得到的矩陣進(jìn)行重構(gòu)。將分組得到的矩陣轉(zhuǎn)換為3組長度為N的重構(gòu)序列。計算遲滯序列Xi在Un上的投影ai,即
ai=XiUn, 0≤i≤N-M
(3)
通過時間經(jīng)驗正交函數(shù)和時間主成分來進(jìn)行重構(gòu):
(4)
針對具有固定隨機(jī)波動且故障幅度較小的傳感器原始時間序列信號,使用SSA對數(shù)據(jù)進(jìn)行預(yù)處理,將原始信號分解為更符合信號大體變化趨勢的趨勢項和能反映故障細(xì)節(jié)的周期項,將2項信號作為時間序列輸入后續(xù)深度網(wǎng)絡(luò)中進(jìn)行分類。
2.3.1 長短時記憶網(wǎng)絡(luò)(LSTM)
循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)由Elman[13]于1990年提出,采用遞歸連接構(gòu)造內(nèi)部節(jié)點,使前一時刻的狀態(tài)能夠影響后一時刻,從而實現(xiàn)網(wǎng)絡(luò)的狀態(tài)反饋,這種結(jié)構(gòu)使得 RNN 能夠按照輸入時序“記住”網(wǎng)絡(luò)之前的信息,將序列信息按照輸入順序進(jìn)行利用。然而,RNN對學(xué)習(xí)較長的時間序列并不擅長,為了更好地提取數(shù)據(jù)的時間信息,多種RNN的變體網(wǎng)絡(luò)相繼被提出,LSTM即為其中一種。
LSTM以RNN單元為基礎(chǔ),通過在每個RNN單元中增加一個狀態(tài)神經(jīng)元,并引入了輸入門、輸出門和遺忘門對歷史信息的選擇性利用,可以有效地捕獲較長序列數(shù)據(jù)的信息,對RNN可能產(chǎn)生的梯度消失問題進(jìn)行改善[14]。LSTM關(guān)鍵在于刪除或添加信息到細(xì)胞狀態(tài),由門結(jié)構(gòu)進(jìn)行調(diào)節(jié)和控制。門是一種選擇性地讓信息通過的手段,由一個sigmoid神經(jīng)網(wǎng)絡(luò)層和一個點乘運算組成。
設(shè)xt為t時刻網(wǎng)絡(luò)的輸入,LSTM神經(jīng)元內(nèi)部的信息傳遞過程如式(5)~式(9)所示。
it=σ(Wxixt+Whiht-1+Wcict-1+bi)
(5)
ft=σ(Wxfxt+Whfht-1+Wcfct-1+bf)
(6)
ct=ftct-1+ittanh(Wxcxt+Whcht-1+bc)
(7)
ot=σ(Wxoxt+Whoht-1+Wcoct+bo)
(8)
ht=ottanh(ct)
(9)
式中:it、ft、ot分別為輸入門、遺忘門和輸出門的信息;ht為正向的LSTM輸出值;Wxi、Whi、Wxf、Whf、Wxo和Who分別為輸入門、遺忘門和輸出門與xt、ht-1的連接權(quán)重矩陣;bi、bf、bo分別為輸入門、遺忘門和輸出門的偏置向量;ct為t時刻輸入狀態(tài)單元的信息;Wxc、Whc和Wco分別為ct與xt、ht-1和ot的連接權(quán)重矩陣;bc為ct的偏置向量;σ為sigmod函數(shù);tanh為雙曲正切函數(shù)。
2.3.2 BiLSTM
BiLSTM由前向LSTM層和后向LSTM層組成[15],序列可以在前向和后向2個方向上進(jìn)行處理,并且2個方向都有獨立的隱含層,BiLSTM的網(wǎng)絡(luò)結(jié)構(gòu)見圖3,其中前向 LSTM 從前至后輸入序列,后向 LSTM 從后至前輸入序列,此過程生成2個隱含層,如式(10)、式(11)所示,圖中下標(biāo)數(shù)字為網(wǎng)絡(luò)單元。yt為t時刻網(wǎng)絡(luò)的輸出,然后BiLSTM連接來自2個 LSTM 網(wǎng)絡(luò)的信息以計算最終輸出。
圖3 BiLSTM信息處理過程示意圖
ht=f(Wxt+Uht-1)
(10)
(11)
(12)
BiLSTM網(wǎng)絡(luò)可以使神經(jīng)元在每個特定時間步捕獲過去和未來的信息,因此這種網(wǎng)絡(luò)可以更全面、綜合地提取到傳感器信號特征,從而提升網(wǎng)絡(luò)的分類效果。
傳感器信號經(jīng)過最后一層BiLSTM后輸入至注意力層,注意力層為BiLSTM層輸出的序列中的每個特征分量分配一個權(quán)重,最終生成輸出向量Ft,如式(13)~式(15)所示[16]。
(13)
(14)
(15)
經(jīng)過注意力層的處理后,提取的傳感器信號特征輸入全連接層和Softmax層,得到最終傳感器信號分類結(jié)果。
根據(jù)上文分析,透平出口溫度傳感器是燃?xì)廨啓C(jī)中重要的傳感器,因此以透平出口溫度傳感器為例,對所提出的方法進(jìn)行試驗驗證。
Z電廠的燃?xì)廨啓C(jī)為GE 9F級燃?xì)廨啓C(jī),共有31個透平出口溫度傳感器。本文使用1號透平出口溫度傳感器采集數(shù)據(jù)作為試驗的正常信號數(shù)據(jù),在此基礎(chǔ)上制作數(shù)據(jù)集。每1 min采樣1次運行數(shù)據(jù),每段運行數(shù)據(jù)采集量為10 079個。使用滑動時間窗在這段運行數(shù)據(jù)上隨機(jī)選取一段長度為100的正常信號,然后使用第1節(jié)中的方法生成偏置、單值脈沖、漂移、周期性、噪聲和短路6種故障信號,同時將故障程度設(shè)置為3%~10%的小幅故障,疊加在真實運行數(shù)據(jù)上,生成故障數(shù)據(jù)。
為了模擬燃?xì)廨啓C(jī)實際運行中故障信號稀疏的情況,用于試驗的數(shù)據(jù)集中正常信號的數(shù)量遠(yuǎn)大于故障信號。設(shè)置1 000組正常數(shù)據(jù)及300組故障數(shù)據(jù),正常數(shù)據(jù)與故障數(shù)據(jù)的比例約為10∶3。
本文在Python 3.8環(huán)境中實現(xiàn)編譯,使用Pycharm作為編譯開發(fā)環(huán)境(IDE),分類模型基于開源庫包Pytorch1.11搭建。將原始數(shù)據(jù)集中20%的數(shù)據(jù)作為測試集,其余80%數(shù)據(jù)使用5折交叉驗證進(jìn)行模型訓(xùn)練。模型經(jīng)過100輪(epoch)訓(xùn)練,通過計算每一輪的評估指標(biāo)的平均值來訓(xùn)練和驗證模型。在試驗過程中,批處理大小設(shè)置為20,優(yōu)化器選用Adam,使用MAE作為損失函數(shù),學(xué)習(xí)率設(shè)置為0.000 1,使用 NVIDIA RTX-3080 GPU 進(jìn)行訓(xùn)練。
分類模型的性能通常使用精確度(Pr)、召回率(Rc)、F分?jǐn)?shù)(Fscore)和準(zhǔn)確率(Acc)來評估。本文仍然使用這4個指標(biāo)對所提出模型的表現(xiàn)進(jìn)行評估,但由于本文為多分類問題,因此這4項指標(biāo)的計算方式與二分類有所不同。精確度是指正確分類為A故障的信號數(shù)量占被模型識別為A故障的信號總數(shù)的百分比;召回率是指正確分類為A的信號數(shù)量占實際為A故障的信號總數(shù)的百分比;F分?jǐn)?shù)是指精確度和召回率的調(diào)和平均值,如式(16)所示;準(zhǔn)確率是指所有被正確分類的信號占信號總數(shù)的百分比。
(16)
對透平出口溫度傳感器的原始信號和故障信號進(jìn)行SSA處理。根據(jù)傳感器信號序列長度,取M=25,經(jīng)SVD后降序排列得到各特征值貢獻(xiàn)率,第1特征值貢獻(xiàn)率最大,將其重構(gòu)信號作為趨勢項;第2特征值到貢獻(xiàn)率突變拐點之前的各階作為周期項重構(gòu)成分,突變拐點之后的剩余各階作為殘差項重構(gòu)成分,正常信號和各故障信號的貢獻(xiàn)率突變拐點分布在第5~第10特征值之間。因此選取第1特征值對應(yīng)的矩陣重構(gòu)為趨勢項,第2~第10特征值對應(yīng)的組合矩陣重構(gòu)為周期項,其余的組合矩陣重構(gòu)為殘差項。圖4為正常信號、偏置故障信號、漂移/恒偏差故障信號和噪聲故障信號的原始信號及重構(gòu)后的趨勢項、周期項和殘差項。
(a) 正常信號
將原始信號與SSA處理后得到的趨勢項、周期項分別繪制在圖中,并繪制周期項與原始故障信號的熱圖,如圖5所示。趨勢項能夠較好地反映信號的大致變化趨勢,對于偏置故障和漂移故障,趨勢項信號隨時間變化呈現(xiàn)增長趨勢;對于正常信號、單值脈沖故障、周期性故障和噪聲故障,趨勢項信號隨時間的變化不大;短路故障由于數(shù)值瞬時突變?yōu)?,趨勢項信號呈現(xiàn)大幅度降低。而SSA處理后得到的周期項能夠在一定程度上去除噪聲的同時,更好地刻畫故障特性,保留更多故障細(xì)節(jié),從熱圖中可以看出,周期項對正常信號和周期性故障信號的細(xì)節(jié)還原效果最好。
(a) 正常信號
所提出的SSA-attBiLSTM算法在透平出口溫度數(shù)據(jù)集上的分類結(jié)果混淆矩陣如圖6所示,圖中1-7分別代表正常信號、偏置故障、單值脈沖故障、漂移故障、周期性故障、噪聲故障和短路故障,該算法與對比算法的精確度、召回率和F分?jǐn)?shù)見表2~表4,不同算法的準(zhǔn)確率對比見圖7。
圖6 SSA-attBiLSTM分類結(jié)果混淆矩陣
表2 各算法分類精確度
表3 各算法分類召回率
表4 各算法分類F分?jǐn)?shù)
試驗結(jié)果表明,該模型在不平衡的燃?xì)廨啓C(jī)傳感器信號數(shù)據(jù)集上表現(xiàn)良好,準(zhǔn)確率可以達(dá)到96.5%。各類信號的精確度和F分?jǐn)?shù)均優(yōu)于對比算法,除正常信號之外,其他信號的召回率均優(yōu)于對比算法;偏置故障、周期性故障、噪聲故障和短路故障的F分?jǐn)?shù)可以達(dá)到1.000;單值脈沖故障的精確度可以達(dá)到1.000。
對比SSA-attBiLSTM算法和attBiLSTM算法的4項評價指標(biāo)可以看出:經(jīng)過SSA處理后再輸入attBiLSTM進(jìn)行分類的表現(xiàn)要優(yōu)于直接將原始信號輸入attBiLSTM進(jìn)行分類;attBiLSTM無法對漂移故障進(jìn)行識別,會將其全部歸為正常信號,其對偏置故障、單值脈沖故障、周期性故障和噪聲故障的識別效果較差。增加SSA對信號進(jìn)行預(yù)處理之后,其對故障信號的敏感性提升。由SSA-attBiLSTM與SSA-單層BiLSTM算法的4項評價指標(biāo)對比可以看出:SSA-單層BiLSTM對多種信號的識別效果均不佳,而帶有注意力機(jī)制的BiLSTM深度網(wǎng)絡(luò)可以更好地捕獲信號特征,對多種故障有較好的識別效果。與SSA-SVM的分類結(jié)果進(jìn)行比較,SSA-attBiLSTM算法在多種故障的識別上更具優(yōu)勢。除了SSA-attBiLSTM之外,其他對比算法在漂移故障的精確度和召回率均為0,說明所提方法能夠更好地提取到信號特征,獲得更好的分類表現(xiàn)。
本文所提方法克服了其他對比算法無法有效識別微小故障的問題,但對微小漂移故障的識別表現(xiàn)仍然有待提高。將數(shù)據(jù)集中故障幅度增加到10%~30%后,SSA-attBiLSTM算法的表現(xiàn)進(jìn)一步提升,分類結(jié)果混淆矩陣見圖8。由圖8可以看出,對較大幅度漂移故障的診斷精確度和召回率有大幅度提升,可以達(dá)到90%以上,能夠有效解決漂移故障與正常信號混淆問題。
圖8 故障程度較大時SSA-attBiLSTM分類結(jié)果混淆矩陣
(1) 所提出的SSA-attBiLSTM故障診斷方法能有效診斷出各類傳感器故障,且診斷準(zhǔn)確率可達(dá)96.5%。
(2) 該方法能有效處理故障數(shù)據(jù)稀疏的不平衡數(shù)據(jù)集,且能準(zhǔn)確獲取其特征,高精度診斷出數(shù)據(jù)量稀少的6種故障信號。
(3) 所提方法能夠有效獲取小幅度故障的信號特征。對于小幅度偏置故障、周期性故障和噪聲故障的識別在精確度、召回率和F分?jǐn)?shù)3項評價指標(biāo)上可以達(dá)到100%;對于小幅度單值脈沖故障的識別在3項評價指標(biāo)上相對其他對比算法有很大提升,精確度可以達(dá)到100%,召回率和F分?jǐn)?shù)在90%以上;對于其他算法無法識別的小幅度漂移故障,所提方法也能在一定程度上獲取其特征,有一定的識別能力。