董 健,柳亦兵,滕 偉,馬志勇
(1.國電聯(lián)合動力技術(shù)有限公司,北京100039;2.華北電力大學(xué) 電站能量傳遞轉(zhuǎn)化與系統(tǒng)教育部重點實驗室,北京 102206)
風(fēng)力發(fā)電機組作為使用可再生能源、發(fā)展清潔電力的重要途徑,已在全世界范圍內(nèi)廣泛應(yīng)用[1],[2]。隨著國內(nèi)風(fēng)電的不斷發(fā)展,風(fēng)電機組的裝機容量、裝機臺數(shù)不斷攀升,但是我國風(fēng)資源主要分布于三北等高緯度、高海拔地區(qū),風(fēng)電機組工作的環(huán)境溫度較低,而這些風(fēng)電機組在工作中面臨霜雪、冰凍的考驗,極易發(fā)生風(fēng)電機組葉片結(jié)冰現(xiàn)象,致使風(fēng)電機組面臨風(fēng)能捕捉效率降低、葉片斷裂、冰凌掉落影響人身安全等問題[3]~[5]。如何準(zhǔn)確識別風(fēng)電機組的葉片結(jié)冰狀態(tài),及時消除葉片結(jié)冰成為了當(dāng)前風(fēng)電行業(yè)中的研究難點與研究熱點。
針對如何識別風(fēng)電機組是否處于葉片結(jié)冰故障狀態(tài),現(xiàn)有研究主要集中在使用硬件識別和算法識別兩個方向。在硬件識別方向,須要在風(fēng)電機組中安裝硬件設(shè)備對葉片進行檢測,以有效識別葉片是否處于結(jié)冰故障狀態(tài)。如安裝紅外傳感器識別溫度是否超過設(shè)定閾值、通過超聲檢測儀辨別葉片狀態(tài)、利用其它傳感技術(shù)判斷葉片是否發(fā)生結(jié)冰等[6]~[8]。這些研究須要借助外接設(shè)備實現(xiàn),安裝復(fù)雜且增加成本,因此,部分學(xué)者在算法識別方向進行了研究。主要通過各種機器學(xué)習(xí)算法對風(fēng)電機組SCADA數(shù)據(jù)進行分類,區(qū)別風(fēng)電機組的正常狀態(tài)和葉片結(jié)冰故障狀態(tài),通常使用的算法有神經(jīng)網(wǎng)絡(luò)、邏輯回歸和隨機森林等[2],[3],[9]。 本文探討使用更多算法解決風(fēng)電機組葉片結(jié)冰問題,并與現(xiàn)有研究進行比較分析,具有十分重要的現(xiàn)實意義。
本文基于SCADA監(jiān)測數(shù)據(jù),對時間序列進行重采樣,然后對數(shù)據(jù)進行歸一化處理。在此基礎(chǔ)上,對傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)進行簡要分析,并結(jié)合Adaboost算法,構(gòu)建基于BP_Adaboost算法的強分類器。最后,選擇6臺風(fēng)電機組的SCADA數(shù)據(jù),驗證所提BP_Adaboost算法的可行性。
在使用神經(jīng)網(wǎng)絡(luò)解決風(fēng)電機組葉片結(jié)冰故障檢測問題時,每個神經(jīng)元獲得輸入數(shù)據(jù)序列{x1,x2,…,xn},通過函數(shù)f(x)進行計算并產(chǎn)生輸出數(shù)據(jù)序列yn。根據(jù)神經(jīng)元的輸入數(shù)據(jù)序列{x1,x2,…,xn}和數(shù)據(jù)對應(yīng)的權(quán)重序列{ω1,ω2,…,ωn},計算當(dāng)前神經(jīng)元的數(shù)據(jù)輸出序列。

假設(shè)神經(jīng)元激活判斷閾值為θ,當(dāng)神經(jīng)元獲得數(shù)據(jù)序列{x1,x2,…,xn}和數(shù)據(jù)對應(yīng)的權(quán)重序列{ω1,ω2,…,ωn}的加權(quán)大于激活判斷閾值θ時,表示神經(jīng)元被激活。反之,神經(jīng)元處于未激活狀態(tài)。以f表示神經(jīng)元的激活函數(shù),以α表示神經(jīng)元的計算輸出,則:

每個神經(jīng)元對信息的處理僅限于自己獲得的輸入,因此非線性轉(zhuǎn)移輸出非常有限,而多個神經(jīng)元按照特定的權(quán)重和閾值組合能夠完成強大的輸出。但是,BP神經(jīng)網(wǎng)絡(luò)更擅長解決擬合問題,在對風(fēng)電機組葉片結(jié)冰進行故障分類時,作用能力非常有限。雖然單一的BP神經(jīng)網(wǎng)絡(luò)在對風(fēng)電機組葉片結(jié)冰進行故障分類時作用有限,但由于Adaboost算法的訓(xùn)練錯誤率上界會隨著迭代次數(shù)的增加而逐漸下降,同時Adaboost算法不會出現(xiàn)過擬合的問題,因此,采用BP_Adaboost算法預(yù)測葉片是否處于結(jié)冰狀態(tài)精準(zhǔn)度較高。通過Adaboost算法將多個BP神經(jīng)網(wǎng)絡(luò)進行組合構(gòu)成強分類器,就能夠獲得遠勝于單一BP神經(jīng)網(wǎng)絡(luò)的分類效果。在使用BP_Adaboost算法構(gòu)建強分類器對風(fēng)電機組葉片結(jié)冰故障進行檢測時,根據(jù)輸入的風(fēng)電機組監(jiān)測數(shù)據(jù)樣本的數(shù)據(jù)分布、樣本總體分類與訓(xùn)練集樣本分類的準(zhǔn)確率,確定風(fēng)電機組監(jiān)測數(shù)據(jù)樣本的權(quán)值。確定權(quán)值后的風(fēng)電機組監(jiān)測數(shù)據(jù)樣本根據(jù)BP_Adaboost算法結(jié)構(gòu)進行傳遞,由下一層分類器對風(fēng)電機組監(jiān)測數(shù)據(jù)樣本繼續(xù)進行訓(xùn)練。訓(xùn)練完成后,將所有的單一分類器融合完成算法。
在使用BP_Adaboost算法對風(fēng)電機組葉片結(jié)冰故障進行檢測時,首先從風(fēng)電機組監(jiān)測數(shù)據(jù)樣本中隨機選擇m組風(fēng)電機組監(jiān)測樣本作為模型訓(xùn)練數(shù)據(jù),并初始化每組模型訓(xùn)練數(shù)據(jù)的分布權(quán)值[Dt(i)],Dt(i)=1/m。根據(jù)風(fēng)電機組監(jiān)測數(shù)據(jù)樣本輸入與風(fēng)電機組葉片結(jié)冰故障輸出維數(shù)確定單一神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),初始化單一BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值。假設(shè)Adaboost算法的分類器由t個神經(jīng)網(wǎng)絡(luò)組成,將風(fēng)電機組監(jiān)測數(shù)據(jù)樣本代入輸入層,風(fēng)電機組葉片結(jié)冰故障分類的結(jié)果代入輸出層,則第t個神經(jīng)網(wǎng)絡(luò)的分類結(jié)果為

式中:et為預(yù)測誤差;g(t)為風(fēng)電機組葉片結(jié)冰故障預(yù)測分類結(jié)果;y為風(fēng)電機組葉片結(jié)冰故障期望分類結(jié)果。
得到結(jié)冰故障檢測的et后,通過誤差計算預(yù)測序列t的權(quán)重at。

在求得序列t的at后,通過測得的權(quán)重對下一輪要做預(yù)測的風(fēng)電機組葉片結(jié)冰訓(xùn)練樣本進行調(diào)整,則t+1序列樣本分布權(quán)值為

式中:Bt為歸一化因子,目的是在權(quán)重比例不變的情況下使分布權(quán)值的和為1。
T輪訓(xùn)練后,得到T組神經(jīng)網(wǎng)絡(luò)的分類器函數(shù)f(gt,at)。通過對單一神經(jīng)網(wǎng)絡(luò)的風(fēng)電機組葉片結(jié)冰故障檢測分類器函數(shù)進行判斷決策,組合得到強分類器函數(shù)h(x)。

式中:sgn()函數(shù)為階躍函數(shù),是將分類器函數(shù)的加權(quán)結(jié)果轉(zhuǎn)換為一個整型數(shù)值輸出。
h(x)實現(xiàn)了對于風(fēng)電機組監(jiān)測數(shù)據(jù)樣本向量x的輸入,轉(zhuǎn)化為一個整型數(shù)值輸出,指示風(fēng)電機組葉片結(jié)冰故障檢測的分類結(jié)果。其中,如果風(fēng)電機組監(jiān)測數(shù)據(jù)樣本向量的輸入被算法識別為“正常狀態(tài)”,則sgn()計算的數(shù)值為1;如果風(fēng)電機組監(jiān)測數(shù)據(jù)樣本向量sgn()的輸入被算法識別為“結(jié)冰故障狀態(tài)”,則sgn()計算的數(shù)值為-1。
使用BP_Adaboost算法對風(fēng)電機組葉片結(jié)冰故障檢測的算法流程如圖1所示。

圖1 基于BP_Adaboost的風(fēng)電機組結(jié)冰故障檢測流程Fig.1 Detection process of ice-freezing faultofwind turbines based on BP_Adaboost
通過提取風(fēng)速、轉(zhuǎn)矩、功率、轉(zhuǎn)速等26個監(jiān)測數(shù)據(jù),完成敏感特征數(shù)據(jù)庫的構(gòu)建,將每一個保留的基本屬性作為不同神經(jīng)網(wǎng)絡(luò)的輸入信息,共生成26個BP_Adaboost神經(jīng)網(wǎng)絡(luò),將測試數(shù)據(jù)輸入到已訓(xùn)練完成的神經(jīng)網(wǎng)絡(luò)中,最終通過得出的判斷結(jié)果驗證BP_Adaboost神經(jīng)網(wǎng)絡(luò)的有效性。
本文所選的研究區(qū)域為內(nèi)蒙古東北部某風(fēng)電場,風(fēng)電場緯度為43.3°N,常年盛行西北風(fēng)。風(fēng)電場工程用地總面積為11.43 km2,設(shè)置3條集電線路,裝有2MW,3MW風(fēng)電機組合計22臺。
本文開展風(fēng)電機組葉片結(jié)冰檢測研究的數(shù)據(jù)來自該風(fēng)電場22臺風(fēng)電機組的監(jiān)測數(shù)據(jù),數(shù)據(jù)時間為10月-次年2月。原始數(shù)據(jù)中有風(fēng)速、風(fēng)向、溫度、電壓、電流、有功功率、葉輪轉(zhuǎn)速等秒級屬性點134個,年平均氣溫為2.6℃,最低氣溫為-22℃。
風(fēng)電場中SCADA數(shù)據(jù)為秒級傳感數(shù)據(jù),不僅監(jiān)測信號量種類復(fù)雜,而且數(shù)據(jù)量非常大,對原始數(shù)據(jù)進行預(yù)處理和篩選是一項繁瑣且艱難的工作。通過實驗驗證,將采樣間隔設(shè)為10 s時,本文提出的方法可在不影響整體精度的同時,通過采樣間隔對數(shù)據(jù)進行初步處理,不僅縮小了數(shù)據(jù)量級,同時提高了模型的訓(xùn)練時間。在此基礎(chǔ)上,將處理后的數(shù)據(jù)通過數(shù)據(jù)清洗剔除不均勻、異常的采樣時刻數(shù)據(jù),同時將秒級屬性點進行篩選,保留處理后的數(shù)據(jù)集Datas。
針對風(fēng)電機組是否處于結(jié)冰故障狀態(tài)進行預(yù)測,主要是預(yù)測風(fēng)電機組發(fā)生結(jié)冰故障的時間段,包括結(jié)冰故障開始時間和結(jié)冰故障結(jié)束時間。本研究中將風(fēng)電機組結(jié)冰故障預(yù)測問題轉(zhuǎn)換為風(fēng)電機組正常狀態(tài)和風(fēng)電機組結(jié)冰故障狀態(tài)的分類問題,將基于時間序列的Datas按照時間窗t和步長l分割成j個時間序列數(shù)據(jù)子集Datai。

每個Datas均包含有風(fēng)電機組監(jiān)測數(shù)據(jù)的時間戳集合Timei及該Timei下的屬性數(shù)據(jù)集合Ri。對每個Datai中的數(shù)據(jù)進行識別分類,以1表示風(fēng)電機組處于葉片結(jié)冰故障狀態(tài),以-1表示風(fēng)電機組未處于葉片結(jié)冰故障狀態(tài)。
通過數(shù)據(jù)預(yù)處理和特征提取,本文保留了原始屬性數(shù)據(jù)中的風(fēng)速、發(fā)電機轉(zhuǎn)速、功率、風(fēng)向、偏航位置等26項基本屬性,將每一個保留的基本屬性作為不同神經(jīng)網(wǎng)絡(luò)的輸入信息,共生成26個BP神經(jīng)網(wǎng)絡(luò),即圖1中n=26。為了避免生成兩個相鄰的時間窗口,將基于時間序列的Datas按照時間窗t=106和步長l=20分割成若干Datai。t為時間序列長度,l為每兩個數(shù)據(jù)集之間的間隔。
將處理后的數(shù)據(jù)標(biāo)簽化,本研究中選取的6臺風(fēng)電機組的數(shù)據(jù)集數(shù)據(jù)情況如表1所示。

表1 6臺風(fēng)電機組數(shù)據(jù)分類概況Table 1 Data classification overview of 6 wind turbines
由表1可知,處理后的數(shù)據(jù)中,處于風(fēng)電機組葉片結(jié)冰故障的數(shù)據(jù)與正常數(shù)據(jù)的比例接近1∶14。如果將該數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)直接用于檢測算法進行模型訓(xùn)練,會使模型過度認(rèn)知正常數(shù)據(jù)的特性,忽略故障數(shù)據(jù)特性。因此,通過對風(fēng)電機組葉片結(jié)冰故障數(shù)據(jù)進行重采樣和正常數(shù)據(jù)降采樣進而保證數(shù)據(jù)分類的平衡性。風(fēng)電機組葉片結(jié)冰故障數(shù)據(jù)重采樣過程并非直接復(fù)制已采集的故障數(shù)據(jù),而是如前文描述,將采樣間隔設(shè)為10 s,通過采樣間隔對數(shù)據(jù)進行初步處理,保持采樣間隔不變,改變采樣間隔的起始時間,即可產(chǎn)生完全不同的故障數(shù)據(jù)樣本,進而避免在數(shù)據(jù)重采樣過程中生成過多的重復(fù)故障數(shù)據(jù)。風(fēng)電機組葉片健康數(shù)據(jù)通過隨機刪除正常數(shù)據(jù)樣本實現(xiàn)降采樣過程,同時可以防止分類器達到過擬合的效果。最終使模型訓(xùn)練集中兩種類別數(shù)據(jù)的比例接近1∶1。
本研究中,為評估BP_Adaboost算法模型對風(fēng)電機組葉片結(jié)冰故障檢測的有效性,定義以下參數(shù):
TP:風(fēng)電機組處于結(jié)冰故障狀態(tài)且被預(yù)測為結(jié)冰故障狀態(tài)的次數(shù);
FP:風(fēng)電機組處于正常狀態(tài)但被預(yù)測為結(jié)冰故障狀態(tài)的次數(shù);
FN:風(fēng)電機組處于結(jié)冰故障狀態(tài)但被預(yù)測為正常狀態(tài)的次數(shù);
TN:風(fēng)電機組處于正常狀態(tài)且被預(yù)測為正常狀態(tài)的次數(shù)。
在以上參數(shù)的基礎(chǔ)上,本研究中通過下式計算模型得分。

式中:Nnormal為數(shù)據(jù)集中未處于結(jié)冰故障狀態(tài)的數(shù)據(jù)樣本量;Nfault為數(shù)據(jù)集中處于結(jié)冰故障狀態(tài)的數(shù)據(jù)樣本量;α,β均為模型評估公式權(quán)值參數(shù),在本研究中,均取值為0.5。
score參數(shù)主要由兩部分決定,即FN和FP,score的大小不僅可以從整體上證明該模型的有效性,還可以更加直觀地體現(xiàn)出不同分類模型在相同條件下關(guān)于風(fēng)電機組葉片結(jié)冰故障分類方面的整體有效性。同時對于風(fēng)電機組葉片結(jié)冰故障檢測問題來說,風(fēng)電機組處于結(jié)冰故障狀態(tài)但被預(yù)測為正常狀態(tài)的有效性,或風(fēng)電機組處于正常狀態(tài)但被預(yù)測為結(jié)冰故障狀態(tài)的有效性并不能單獨證明分類模型在故障分類方面的整體有效性。因此,F(xiàn)N和FP的獨立有效性并不會掩蓋模型的整體有效性,通過score參數(shù)可以很好地反映出模型的有效性。
將上述6臺風(fēng)電機組故障數(shù)據(jù)重采樣和健康數(shù)據(jù)降采樣之后的樣本送到基于BP_Adaboost算法組成的強分類器中。表2為基于BP_Adaboost算法組成的強分類器對風(fēng)電機組葉片結(jié)冰故障檢測的精度。

表2 風(fēng)電機組葉片結(jié)冰故障檢測的精度Table 2 Accuracy of ice detection forwind turbine blades
由表2可知,基于BP_Adaboost算法組成的強分類器對風(fēng)電機組葉片結(jié)冰故障的檢測方法,在6臺風(fēng)電機組下成功率精度均大于97%,總體精度約為98%。
為了更加直觀地對比不同算法在葉片結(jié)冰故障檢測問題上的先進性和有效性,本文選擇單一BP神經(jīng)網(wǎng)絡(luò)構(gòu)成的弱分類器與基于BP_Adaboost算法組成的強分類器進行對比。將6臺風(fēng)電機組的數(shù)據(jù)分別用兩種算法進行計算,求得每一數(shù)據(jù)集中兩種算法的模型計算得分,結(jié)果如圖2所示。

圖2 兩種算法的計算得分對比Fig.2 Comparing the scores of two algorithms
由圖2可知:基于BP_Adaboost算法構(gòu)建的強分類器模型的得分均高于單一BP神經(jīng)網(wǎng)絡(luò)構(gòu)建的弱分類器;基于BP_Adaboost算法構(gòu)建的強分類器模型的平均得分為75.3,BP神經(jīng)網(wǎng)絡(luò)構(gòu)建的弱分類器的平均得分為67.3分,風(fēng)電機組葉片結(jié)冰故障檢測強分類器算法的得分比弱分類器算法的得分平均高12%左右。實驗對比結(jié)果表明,本文基于BP_Adaboost算法構(gòu)建的風(fēng)電機組葉片結(jié)冰故障檢測模型具有較高的精度,能夠滿足實用的需要。
為了驗證數(shù)據(jù)處理時,采樣間隔對本文提出方法的影響,將不同的采樣間隔應(yīng)用到數(shù)據(jù)預(yù)處理環(huán)節(jié)。表3為不同采樣間隔下的模型score得分情況。

表3 不同采樣間隔下的模型score得分Table 3 Model scores of different sampling intervals
由表3可知:將不同的采樣間隔應(yīng)用到數(shù)據(jù)預(yù)處理環(huán)節(jié)之后,本文提出的基于BP_Adaboost算法的風(fēng)電機組葉片結(jié)冰故障檢測強分類器的score得分隨著采樣間隔的增加而遞減,但在原始數(shù)據(jù)、5 s及10 s采樣間隔情況下,算法的平均得分基本接近,達到75.3左右;當(dāng)采樣間隔為30 s及60 s時,得分有了明顯下降,分別為72.4和64.1。為了在保證模型精度的前提下,盡可能地縮小數(shù)據(jù)量級,同時提高模型的訓(xùn)練時間,將采樣間隔設(shè)置為10 s較為合適。
為了提高風(fēng)電機組葉片是否處于結(jié)冰狀態(tài)的預(yù)測精度,本文在傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)基礎(chǔ)上,結(jié)合Adaboost算法的優(yōu)勢,提出了一種BP_Adaboost算法來預(yù)測風(fēng)電機組葉片是否處于結(jié)冰狀態(tài)。通過BP_Adaboost算法對多個BP神經(jīng)網(wǎng)絡(luò)進行組合,構(gòu)建了風(fēng)電機組葉片結(jié)冰故障強分類器檢測模型。經(jīng)過Adaboost算法組合后的強分類器模型的平均得分為75.3分,優(yōu)于基于單一BP神經(jīng)網(wǎng)絡(luò)構(gòu)建的風(fēng)電機組葉片結(jié)冰故障檢測模型。實驗結(jié)果表明,本文中基于BP_Adaboost算法構(gòu)建的風(fēng)電機組葉片結(jié)冰故障檢測模型具有較高的精度,能夠滿足實用的需要。