蘇國梁,汪健冬,付恩強,趙娟娟,黃文廣,劉廣臣 *
(1.國電電力內(nèi)蒙古新能源開發(fā)有限公司,呼和浩特 010020;2.魯東大學(xué) 數(shù)學(xué)與統(tǒng)計科學(xué)學(xué)院,煙臺 264000;3.華風(fēng)數(shù)據(jù)(深圳)有限公司,深圳 518110)
風(fēng)能是一種清潔而且可待續(xù)的新能源,在生態(tài)問題日益嚴重、溫室氣體排放量逐年增加的大環(huán)境下,風(fēng)電成為全球認可的安全、低碳、可再生電源,并且利用風(fēng)電減緩氣候變化的方案引起了各國政府、企業(yè)和機構(gòu)等的高度關(guān)注。隨著風(fēng)電機組裝機規(guī)模的不斷增大,以及由于相關(guān)技術(shù)不斷進步使現(xiàn)有風(fēng)電機組的運行年限隨之增加,風(fēng)電機組的安全運行受到廣泛關(guān)注。在長時間的運行過程中,風(fēng)電機組易發(fā)生諸如起火、倒塔、葉片斷裂等事故。然而,由于風(fēng)電機組零部件的多樣性和復(fù)雜性,其運行維護困難重重[1]。傳統(tǒng)的人工檢修方法一般是在風(fēng)電機組事故發(fā)生后進行檢修,而且由于運維人員的技術(shù)水平存在差異,導(dǎo)致檢修的耗時各不相同,這不但會給風(fēng)電場帶來一定程度的損失,還會影響電網(wǎng)的穩(wěn)定性。近年來,大數(shù)據(jù)和人工智能技術(shù)的不斷發(fā)展為智能化的故障預(yù)警和故障診斷提供了可能,通過基于風(fēng)電機組數(shù)據(jù)采集與監(jiān)控(SCADA)系統(tǒng)的大數(shù)據(jù),利用人工智能算法判斷風(fēng)電機組的健康狀況并診斷潛在性故障[2]已成為風(fēng)電行業(yè)解決故障預(yù)警及故障診斷技術(shù)問題的重要途徑。
在風(fēng)電機組發(fā)電機的故障預(yù)警和故障診斷方面,國內(nèi)外學(xué)者開展了大量研究并取得了豐富的成果。CHEN等[3]利用遷移學(xué)習(xí)算法進行了葉片結(jié)冰和齒輪齒形帶斷裂的故障診斷。ZARE等[4]建立了一個多通道卷積神經(jīng)網(wǎng)絡(luò)模型,可用于7種常見的風(fēng)電機組故障診斷。REN等[5]提出了一種基于變分模態(tài)分解(VMD)多尺度排列熵(MPE)和基于特征的遷移學(xué)習(xí)(FTL)的故障診斷方法,用于識別齒輪箱故障。王挺韶等[6]針對風(fēng)電機組發(fā)電機在發(fā)生不同故障時相應(yīng)的傳感器數(shù)據(jù)會發(fā)生變化這一特點,提出了一種基于自動降噪編碼器與一維卷積網(wǎng)絡(luò)的故障診斷模型。褚景春等[7]建立了故障樹結(jié)構(gòu)的風(fēng)電機組傳動鏈故障信息知識庫,可根據(jù)實時檢測的故障特征信息在該知識庫中進行檢索并定位相應(yīng)的故障樹,然后根據(jù)該知識庫中預(yù)設(shè)的數(shù)據(jù)和貝葉斯網(wǎng)絡(luò)推理該故障樹下所有觸發(fā)的底事件,形成故障原因診斷集合。郭梅[8]探究了不同故障模式下風(fēng)電機組發(fā)電機傳動系統(tǒng)振動信號的特點,從時域、頻域、時頻3個方面驗證了該研究采用的信號處理分析算法,提出了將基于互信息的最大相關(guān)最小冗余方法用于發(fā)電機故障信號的特征提取,并結(jié)合反向傳播(BP)神經(jīng)網(wǎng)絡(luò)分析了發(fā)電機的分布式控制系統(tǒng)(DCS)的溫度信號特點。針對風(fēng)電機組發(fā)電機故障的敏感性,趙洪山等[9]提出了一種基于風(fēng)電機組發(fā)電機正常狀態(tài)下SCADA系統(tǒng)中樣本數(shù)據(jù)的堆疊自編碼網(wǎng)絡(luò)深度學(xué)習(xí)方法,用于進行風(fēng)電機組的異常檢測分析。莊哲民等[10]首次利用改進的局域判別基(LDB)算法提取了風(fēng)電機組的初始故障特征,進一步提高了類間可分離度。該方法是將風(fēng)電機組的初始故障特征通過自組織特征映射(SOM)網(wǎng)絡(luò)映射到一個類別可分性更高的特征空間,最后利用BP神經(jīng)網(wǎng)絡(luò),根據(jù)映射后的特征實現(xiàn)故障特征的非線性分類,從而完成故障診斷與故障定位。任孝儒[11]采用定子電流信號分析法,對風(fēng)電機組發(fā)電機的齒輪和轉(zhuǎn)子進行了故障診斷研究。趙洪山等[12]提出了基于深度自編碼(DAE)網(wǎng)絡(luò)和梯度提升(Exterme Gradient Boosting,XGBoost)算法的風(fēng)電機組發(fā)電機故障診斷算法,先采用DAE故障檢測算法獲取SCADA數(shù)據(jù)的重構(gòu)值,以分離正常和故障時段數(shù)據(jù),再用貝葉斯優(yōu)化搜索XGBoost算法的最優(yōu)超參數(shù),并建立XGBoost算法多分類故障識別模型。
綜合以上研究者的經(jīng)驗,本文以發(fā)電機軸承A的溫度和發(fā)電機軸承B的溫度為研究對象,利用XGBoost算法進行風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警研究。本研究的主要內(nèi)容包括:1)特征工程方面:結(jié)合運維專家經(jīng)驗,同時運用Pearson相關(guān)系數(shù)、XGBoost算法等篩選出與2個研究對象相關(guān)性較強的18個關(guān)鍵特征變量,并進行重要性排序。2)模型構(gòu)建方面:利用篩選出的關(guān)鍵特征變量,分別建立發(fā)電機軸承A溫度(在模型中表示為“generator_bearing_temperature_a”)和發(fā)電機軸承B溫度(在模型中表示為“generator_bearing_temperature_b”)的風(fēng)電機組發(fā)電工機故障監(jiān)測預(yù)警模型[13],用于發(fā)電機軸承A、B溫度的預(yù)測,并與隨機森林算法模型和CatBoost算法模型進行性能比較。3)故障監(jiān)測預(yù)警方面:基于模型預(yù)測溫度與實測溫度殘差大小及持續(xù)波動趨勢,在殘差波動明顯且持續(xù)時間長時進行故障預(yù)警,可以在風(fēng)電機組停機前預(yù)知其隨后的運行狀態(tài),使風(fēng)電機組在故障發(fā)生前停止工作,同時按照關(guān)鍵特征變量的重要性進行故障診斷與維護。
本研究數(shù)據(jù)來源于山東省威海市文登區(qū)某風(fēng)電場的SCADA系統(tǒng)的數(shù)據(jù)庫,選擇其中某臺1.5 MW風(fēng)電機組的數(shù)據(jù),時間跨度為2018-2019年,采樣間隔時間為1 min,數(shù)據(jù)總量為97萬條。
由風(fēng)電機組運維專家對數(shù)據(jù)進行變量初篩,依據(jù)控制狀態(tài)篩選出風(fēng)電機組在并網(wǎng)狀態(tài)下正常運行的數(shù)據(jù)行,去除缺失數(shù)據(jù)行,并刪除風(fēng)電機組在待機、維修等非正常運行時的記錄數(shù)據(jù),最終得到的有效樣本數(shù)據(jù)為665667條。
將發(fā)電機軸承A的溫度與發(fā)電機軸承B的溫度作為2個被解釋變量,其余的變量測點作為解釋變量,然后建立回歸模型。為建立簡潔高效的機器學(xué)習(xí)模型,需要選擇關(guān)鍵解釋變量(測點),即特征工程的關(guān)鍵特征變量,該環(huán)節(jié)可有效降低模型存在共線性的可能性,也能為后期故障診斷與故障部位的定點維修提供一定的參考價值,可有效降低維修時間。
首先采用Pearson相關(guān)系數(shù)、XGBoost算法等方法獨立排序,然后對相同權(quán)重的特征變量進行加權(quán);將初始32個特征變量進行排名,此排名對于模型報警后的運維檢修測點順序具有一定的指導(dǎo)意義;最后結(jié)合風(fēng)電場運維專家的經(jīng)驗,選取排名前18位的關(guān)鍵特征變量。最終模型的輸入測點名稱及關(guān)鍵特征變量的重要性排序如表1所示。
表1 模型的輸入測點名稱及關(guān)鍵特征變量的重要性排序Table 1 Name of input measuring points of model and ranking of key characteristic variables importance
XGBoost算法是一種加強版的梯度提升算法,其運用集成思想,利用加法模型和前向分布的算法將多個分類與回歸樹(classification and regression trees,CART)基學(xué)習(xí)器構(gòu)成集成樹模型,并對決策樹進行打分,以“分高者勝”為原則,實現(xiàn)目標值預(yù)測。目前,XGBoost算法已成為大數(shù)據(jù)競賽、基因工程、信貸金融等領(lǐng)域的重要算法。
相較于傳統(tǒng)的梯度提升決策樹( gradient boosting decision tree,GBDT)算法,XGBoost算法的優(yōu)點更多,比如:1)加入了正則項,使用列抽樣,可防止過擬合的發(fā)生,使其具有更好的推廣能力;2)可以自主定義目標函數(shù),提高了模型的精確度;3)用近似算法改進貪心算法,同時使用多個CPU并行訓(xùn)練,提高了訓(xùn)練速度,可使訓(xùn)練結(jié)果更快達到最優(yōu)。
采用XGBoost算法建立風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型,進行風(fēng)電機組發(fā)電機故障預(yù)警、診斷和定位,所建模型的工作流程如圖1所示。
圖1 風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型的工作流程圖Fig.1 Workflow diagram of fault monitoring and early warning model of wind turbine generator
由圖1可知,風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型的工作流程為:
1)提取原始數(shù)據(jù)并進行清洗后,結(jié)合運維專家經(jīng)驗,利用Pearson相關(guān)系數(shù)和XGBoost算法篩選關(guān)鍵特征變量并對其進行排序。
2)利用XGBoost算法分別建立關(guān)鍵特征變量與發(fā)電機軸承A溫度、發(fā)電機軸承B溫度這2個研究對象的函數(shù)關(guān)系,經(jīng)過模型訓(xùn)練和參數(shù)調(diào)整,可得到2個最優(yōu)風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型。
3)將得到的2個風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型嵌套入實時風(fēng)電機組監(jiān)測系統(tǒng),根據(jù)這2個模型各自預(yù)測的發(fā)電機軸承A、B的溫度曲線與2個軸承的實測溫度曲線之間的變化趨勢進行對比分析,從而進行發(fā)電機的故障預(yù)警。通常,當(dāng)發(fā)電機的2個軸承正常工作時,模型的預(yù)測溫度曲線與實測溫度曲線應(yīng)幾乎吻合;而當(dāng)這2個軸承出現(xiàn)故障征兆時(即故障發(fā)生前的某時段),預(yù)測溫度曲線與實測溫度曲線一般會有偏離趨勢,根據(jù)偏離趨勢對風(fēng)電機組發(fā)電機運行狀態(tài)進行故障監(jiān)測預(yù)警。當(dāng)風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型判斷發(fā)電機處于故障狀態(tài)(預(yù)警)時,可繼續(xù)診斷故障產(chǎn)生的原因,并確定故障產(chǎn)生的位置。針對這一目標,結(jié)合運維人員的技術(shù)經(jīng)驗與模型關(guān)鍵特征變量的重要性大小排序,逐個檢查發(fā)電機可疑部位的相關(guān)部件并對其進行維護,從而實現(xiàn)風(fēng)電機組發(fā)電機的故障維護。
在風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型的訓(xùn)練過程中,需綜合考慮訓(xùn)練模型過程的時效性、模型預(yù)測的準確性,以及后期更新模型的簡便性。為此,采取如下策略進行模型訓(xùn)練。1)在模型參數(shù)調(diào)整的過程中,需要關(guān)注的主要參數(shù)包括:樹的個數(shù)(當(dāng)該參數(shù)取值適當(dāng)大時,可以提升模型的魯棒性)、樹的最大深度(該參數(shù)設(shè)定適當(dāng)時,可防止模型的過擬合)、學(xué)習(xí)速率,以及最小葉子節(jié)點樣本權(quán)重和等。2)采用網(wǎng)格搜索方法(GridSearchCV)和3折交叉驗證,可有效避免隨機劃分訓(xùn)練集帶來的偶然性。
最終的風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型采用的參數(shù)的最優(yōu)值如表2所示。
表2 風(fēng)電機組發(fā)電機故障預(yù)測預(yù)警模型中參數(shù)的最優(yōu)值Table 2 Optimal value of parameters in wind turbine generator fault monitoring and early warning model
為客觀評價所建立的風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型的預(yù)測效果,計算預(yù)測溫度與實測溫度的均方誤差(mean squared error,MSE)、平均絕對誤差(mean absolute error,MAE)、平均相對誤差絕對值(mean absolute percent error,MAPE)、調(diào)整的擬合優(yōu)度(adjustedRsquared),以及訓(xùn)練時長(單位為s)等5項評價指標,用于評估該模型的準確率及穩(wěn)健性。
各評價指標中,MSE的計算式為:
式中:yi為發(fā)電機軸承的實測溫度;為發(fā)電機軸承的預(yù)測溫度;i為采集點;m為采樣點個數(shù)。
MAE的計算式為:
擬合優(yōu)度R2的計算式為:
值越接近1,說明模型預(yù)測值對實際值的擬合程度越好。的計算式為:
式中:(n–1)為總體平方和的自由度;(n–k–1)為殘差平方和的自由度。
為客觀評價XGBoost算法在預(yù)測風(fēng)電機組發(fā)電機軸承溫度方面的能力,在硬件配置相同的情況下,另外采用隨機森林算法、CatBoost算法建立相應(yīng)模型對相同訓(xùn)練集和檢驗集進行比較。采用與前文XGBoost算法相同的參數(shù)調(diào)整策略,對建立的隨機森林算法模型、CatBoost算法模型進行參數(shù)調(diào)整和訓(xùn)練,得到的不同評價指標結(jié)果如表3所示。將表3得到的指標結(jié)果繪制成對比圖,如圖2所示。
表3 不同算法模型的評價指標結(jié)果Table 3 Results of evaluation indexes of different algorithm models
圖2 不同算法模型的評價指標結(jié)果比較Fig.2 Comparison of evaluation indexes results of different algorithm models
在3種算法模型硬件配置均相同的條件下,從表3和圖2的結(jié)果可以看出:1)在模型誤差方面,XGBoost算法模型的MSE、MAE和MAPE這幾項評價指標的值均小于隨機森林算法模型和CatBoost算法模型的值;2)在擬合效果方面,XGBoost算法模型的值最高;3)在訓(xùn)練時長方面,隨機森林算法模型的訓(xùn)練時長最短,XGBoost算法模型的訓(xùn)練時長最長。綜上所述,XGBoost算法在發(fā)電機軸承溫度預(yù)測方面的能力顯著優(yōu)于隨機森林算法和CatBoost算法,且其預(yù)測的準確率高、時效性強、穩(wěn)健性好。
將訓(xùn)練好的采用XGBoost算法建立的風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型部署到風(fēng)電場的SCADA系統(tǒng)的大數(shù)據(jù)平臺,即可實現(xiàn)發(fā)電機軸承A溫度和發(fā)電機軸承B溫度的實時預(yù)測。
為了驗證所訓(xùn)練的風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型的準確性及適用性,選取了位于山東省日照市莒縣的風(fēng)電場中同為1.5 MW型號的5號風(fēng)電機組進行實證分析。以2020年1-6月時該風(fēng)電機組的實測數(shù)據(jù)為輸入值,根據(jù)風(fēng)電場的實況故障記錄表,將記錄中故障前、后各一段時間的數(shù)據(jù)輸入訓(xùn)練好的風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型,對該風(fēng)電機組的發(fā)電機軸承A、B的溫度進行預(yù)測。若模型預(yù)測的溫度曲線與風(fēng)電場實測溫度曲線出現(xiàn)持續(xù)偏離狀態(tài),則可認為該風(fēng)電機組運行狀態(tài)異常。
以發(fā)電機軸承B的溫度為例,選擇其中1條故障記錄進行分析。該風(fēng)電機組的發(fā)電機于2020年3月18日09:43:00這一時間點發(fā)生了故障,取其故障前、后各一段時間的數(shù)據(jù)進行分析,共約400個樣本數(shù)據(jù)(發(fā)生故障的時間點在樣本編號200附近)。發(fā)電機軸承B的溫度趨勢圖如圖3所示。
圖3 發(fā)電機軸承B的溫度趨勢圖Fig.3 Temperature trend diagram of generator bearing B
在圖3中標出的a點附近,發(fā)電機部件出現(xiàn)了故障,導(dǎo)致實測溫度與預(yù)測溫度出現(xiàn)偏差,而在風(fēng)電場故障表中確實有該時間點發(fā)電機部位的故障記錄(發(fā)電機碳刷故障),表明本文提出的風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型能夠有效監(jiān)測到發(fā)電機故障。
發(fā)電機軸承B的溫度殘差(即實測溫度與預(yù)測溫度之差)圖如圖4所示。
圖4 發(fā)電機軸承B的溫度殘差圖Fig.4 Temperature residuals diagram of generator bearing B
由圖4可以看出,發(fā)電機軸承B的溫度殘差曲線在持續(xù)波動。雖然起初波動幅度較小,但仍可明顯看出,在紅框范圍內(nèi)溫度殘差曲線的波動幅度巨大,這是由于發(fā)電機故障發(fā)生后,故障數(shù)據(jù)導(dǎo)致的結(jié)果。因此,風(fēng)電場的維修人員可根據(jù)故障前溫度殘差曲線的持續(xù)波動信號,結(jié)合關(guān)鍵特征變量重要性排序表(即表1),對風(fēng)電機組發(fā)電機進行提前定點維修檢查,從而可避免風(fēng)電機組發(fā)電機后期出現(xiàn)較大的故障導(dǎo)致部件損壞。
本文在特征工程中融合運維專家經(jīng)驗和Pearson相關(guān)系數(shù)、 XGBoost算法對特征集進行綜合篩選,并在此基礎(chǔ)上利用SCADA系統(tǒng)的數(shù)據(jù)庫建立了集成機器學(xué)習(xí)模型,經(jīng)過參數(shù)調(diào)整后得到了最優(yōu)風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型。隨后,在相同配置硬件情況下,對XGBoost算法模型與采用隨機森林算法、CatBoost算法建立的模型進行了對比,結(jié)果顯示:XGBoost算法模型的精度高、可并行計算且綜合效果最好。將訓(xùn)練好的風(fēng)電機組發(fā)電機故障監(jiān)測預(yù)警模型部署完成后,可利用模型態(tài)勢分析(即實測溫度曲線與模型預(yù)測溫度曲線)、溫度殘差對比判斷出風(fēng)電機組發(fā)電機的運行狀態(tài)。若風(fēng)電機組發(fā)電機發(fā)生故障,運維人員結(jié)合自身經(jīng)驗,按模型關(guān)鍵特征變量相關(guān)性大小診斷故障產(chǎn)生的原因,并定位故障部件,從而可實現(xiàn)故障狀態(tài)監(jiān)測和故障原因診斷,降低風(fēng)電機組的故障損失,最終提高風(fēng)電場的經(jīng)濟效益。