郭宏宇,霍志紅,許 昌,吾買爾·吐爾遜,周華建,程志明
(1.河海大學 能源與電氣學院,江蘇 南京 211100;2.新疆農業大學 水利與土木工程學院,新疆 烏魯木齊830052;3.河海大學 水利水電學院,江蘇 南京 210098)
作為一種清潔能源,風能已在世界范圍內被廣泛應用[1]。世界風能協會(WWEA)于2021年初公布的風力發電統計相關數據顯示,2020年全球風力發電總裝機容量已達744GW,其中我國以累計總裝機容量290GW位居榜首[2]。
風電機組通常處于惡劣且復雜多變的工作環境,易受不穩定載荷等不可控因素的影響,這增加了風電機組發生故障的概率。故障診斷技術能幫助運行維護人員及時發現異常并做出相應的處理,從而延長風電機組的運行壽命。風電場監控與數據采集系統(SCADA)多被用來采集風電機組運行的關鍵參數,為風電機組狀態運行分析與故障診斷提供可靠的數據支撐[3]。
在風電機組故障診斷領域的傳統算法中,人工神經網絡(ANN)是通過模仿人類大腦神經處理信息的方式搭建訓練網絡;支持向量機(SVM)是一種以統計學習理論為理論框架的機器學習算法;極限學習機(ELM)以單隱含層前饋神經網絡為理論基礎。TuerxunW[4]采用SSA對SVM的參數選取進行優化后,構建了SSA-SVM分類模型,提高了模型的故障分類準確率。
隨著大數據、深度神經網絡等新技術的出現,誕生了許多基于深度神經網絡的風電機組故障診斷方法。王洪斌[5]利用深度置信網絡(DBN)算法對風電機組主軸承狀態進行分類,并有效提高了分類的準確率。吳定會[6]在卷積神經網絡(CNN)算法的基礎上,提出了風電機組軸承狀態分辨模型,提高了模型的分辨精度,縮短了網絡的訓練時間。王超[7]提出了基于長短期記憶神經網絡(LSTMNN)算法的風力機齒輪箱軸承故障診斷模型,用數據對模型進行驗證,表明該模型明顯提高了齒輪箱軸承故障的分類精度。
深度神經網絡的深層結構模型復雜,涉及到大量的超參數,使得網絡的迭代次數較多,網絡訓練緩慢,且易陷入局部最優解。深度神經網絡為了獲得更高的精度,不斷疊加深層結構的層數,導致整個模型結構復雜且難以進行深層結構的理論分析。為了克服這些問題,文獻[8],[9]提出了寬度學習系統(BLS),它不僅結構簡單、訓練速度快、準確率高,而且還具有增量學習的優勢[10]。本文在BLS算法的基礎上,提出了一種基于BLS的風電機組故障診斷方法,并以風電機組故障數據作為試驗數據進行分類診斷測試,分別比較了BP,SVM,ELM,DBN和BLS診斷模型的故障分類性能。
BLS是基于隨機向量函數連接神經網絡提出的一種新型學習方法,在網絡結構上與深度神經 網絡有很大的不同,其結構如圖1所示。

圖1 BLS結構圖Fig.1 Structure of BLSmodel

式中:X為輸入層數據;Wfi,Bfi分別為隨機權重和偏置,一般通過稀疏自動編碼器進行微調產生最優值;θi為線性或非線性激活函數;Zi為含有p個神經元的第i組特征節點。
獲得Zn之后,利用它可計算Hm。

式中:Hj為含有q個神經元的第j組增強節點;ξj為非線性激活函數;Whj,Bhj分別為隨機權重和偏置。
通過進一步計算可以得到寬度學習模型。

式中:A為Zn和Hm聯合構成的隱藏層矩陣;Wm為由A到輸出層Y之間的權值。
在寬度學習系統網絡中,Wfi,Bfi,Whj,Bhj等參數是隨機產生的,并通過稀疏自動編碼器進行微調,而且在訓練過程中保持不變。在網絡結構中,只有Wm是需要訓練學習的。BLS的目標函數為

式中:λ為正則化系數;Y為輸出量;AT為A的轉置矩陣;I為單位矩陣;A+為A的偽逆矩陣。
‖A Wm-Y‖用于控制訓練誤差最小化,λ‖Wm‖用于防止模型過擬合。
Residue determination of dioxane in cosmetics by GC-QQQ-MS/MS with standard addition-internal standard correction method 4 24
風電機組故障寬度學習診斷模型的計算步驟如下所示。
①導入SCADA數據:首先對原SCADA數據進行預處理,進行特征選擇,歸一化后導入到診斷模型中。
②訓練集、測試集的劃分:根據研究情況對導入的SCADA數據進行劃分,導入數據的70%為訓練集,30%為測試集。
③設置BLS網絡的相關參數:主要包括特征點數量n、增強點數量m、某一個特征點Zi的p、某一個增強點Hj的q和λ。
④訓練集Zn和Hm計算:利用式(1),(2)采用訓練集作為輸入量計算BLS的Zn和Hm。
⑤計算Wm和相關誤差(‖Y?-Y‖2):利用式(3),(4)計算BLS隱藏層到輸出層之間的Wm和‖Y?-Y‖2。
⑥若誤差滿足要求則執行⑦,否則跳轉執行③。
⑦測試集Zn和Hm計算:利用式(1),(2)采用測試集輸入量計算BLS的Zn和Hm。
⑧故障分類計算:Ytest=HtestWm。
⑨輸出結果:以圖表形式輸出故障分類結果并與實際結果進行對比。
計算流程如圖2所示。

圖2 寬度學習算法的計算流程圖Fig.2 BLS flow chart
本文采用內蒙古某風電場20160531-20170430連續365 d的SCADA數據作為故障分析樣本數據。對這些數據進行消除、清洗、篩選等預處理后,選取風電機組的發電機過熱(S1)、變流器冷卻系統故障(S2)、勵磁故障(S3)、饋電故障(S4)和正常(S5)5種狀態作為分類診斷狀態。每個狀態選取200個樣本,其中140個樣本用于訓練、60個樣本用于測試,共選取700個訓練樣本,300個測試樣本。在風電機組的5種狀態下,用隨機森林的袋外估計功能,對SCADA數據的特征量進行重要性排序后,最終提取環境溫度、平均風速等27個具有代表性的特征量。樣本歸一化后的部分特征值如表1所示。

表1 風電機組5種狀態下的樣本特征值Table 1 Samples of five states characteristics of wind turbines

續表1
在BLS中,通過調整{n,p,m,q}和λ等參數可以提高模型精度。其中,{n,p,m,q}與BLS網絡的結構有關,可隨機選取,一般采用網格搜索法找到合適的取值范圍;λ一般取很小的值。在{n,p,m,q}值不變的前提下,通過調整模型的λ,得到了BLS模型的故障分類準確率(圖3)。由圖3可知,當λ=2-30時,BLS模型的故障分辨精度最高。

圖3 λ參數變化對模型分類準確率的影響Fig.3 Changes ofλand BLSmodel classification accuracy
在使用BLS模型時,{n,p,m,q}與λ的選取如下,n取值為100,m取值為600,p設定為20,q取80,λ的取值則是選用上述在模型調整過程中能達到模型故障分辨精度最高的值,即λ=2-30。
為了直觀地體現BP,SVM,ELM,DBN和BLS模型的故障識別能力,分別繪制每一種診斷模型的混淆矩陣(圖4)?;煜仃噷蔷€元素表示能準確分類的樣本個數,對角線元素數量越多,則模型的分類性能越好。非對角線元素表示錯分類的樣本個數,如果元素全為零,則是一個完美的分類器。

圖4 5種診斷模型的混淆矩陣Fig.4 Confusionmatrices of the five diagnosticmodels
由圖4可知:BP模型能夠準確地分類S2和S5,但會把部分實際的S1預測為S3,實際的S3預測為S4,實際的S4預測為S2,在300個測試樣本中,能準確分類269個;SVM模型能準確分類282個,對于S1和S3存在部分故障數據的類別判斷錯誤;ELM模型能準確分類287個,同樣對于S1和S3存在部分數據的判斷錯誤,但判斷錯誤的組數少于SVM,分類性能稍優;DBN模型對于S1和S3仍不能做到全部準確分類,但分類錯誤較少,能準確分類294個;BLS模型只有S3的兩個樣本錯判為S4,在300個測試樣本中,能準確分類298個,分類效果最好。
為了進一步評價模型的診斷性能,計算每一種模型的精度、召回率、F1值、準確率和算法運行時間(表2)。

表2 故障診斷模型的性能指標表Table 2 Performance indicators of fault diagnosticmodel
由表2可知:BLS模型的精度、召回率、F1值等性能指標均高于其它診斷模型,模型的分類性能較好,且由于寬度學習系統采用的是高效的增量學習,整個算法的運行時間遠小于其他算法;BLS模型診斷準確率為99.33%,運行時間為0.329 s,能夠較好地完成對風電機組故障的診斷。
本文結合風電機組SCADA故障數據的時空相關性,提出了基于BLS的故障診斷模型。首先,對風電場SCADA數據進行預處理、特征選擇后構成故障樣本集;然后,采用BLS模型對這些故障樣本進行分類。結果表明,該模型的分類準確率以及運行速度,均優于BP,SVM,ELM和DBN模型,最后在測試集上的分類準確率達到了99.33%,運行時間僅為0.329 s。