王明宇,潘巧波,曹 力,馬 東
(華電電力科學研究院有限公司,杭州 310030)
隨著全球范圍內(nèi)日益增長的能源需求,風力發(fā)電已經(jīng)成為解決世界能源問題的重要力量。在風力發(fā)電機組容量不斷加大的同時,機組的故障率也在增高,對設備進行在線狀態(tài)監(jiān)測與故障預警和診斷,可以提早發(fā)現(xiàn)機組故障、減少機組的維護成本、提高風電場運營的經(jīng)濟效益[1-2]。
齒輪箱是風力發(fā)電機組中的重要部件,一旦發(fā)生故障,將會造成風電機組長時間停機,嚴重影響發(fā)電量。因此有必要對齒輪箱進行故障預警,提示運維人員及時檢查和維護[3-4]。近年來,研究人員對齒輪箱的故障診斷和預警提出了多種方法[5-8]。文獻[9]提出了一種基于小波分解和能量譜相結(jié)合的風電齒輪箱故障診斷方法。文獻[10]研究了一種基于增量代價敏感支持向量機的故障診斷技術,通過訓練樣本數(shù)據(jù)構造出合理的分類模型。文獻[11]利用小波對采樣數(shù)據(jù)降噪,然后輸入小波神經(jīng)網(wǎng)絡中進行診斷,以準確地識別齒輪箱中常見的故障。文獻[12]在振動信號訓練網(wǎng)絡的基礎上,加入可靠性指標來增加神經(jīng)網(wǎng)絡輸入端參數(shù)維度,從而提高故障診斷的有效性。文獻[13]提出了主成分-灰色關聯(lián)分析方法,解決了風電機組變工況造成的齒輪箱故障診斷困難的問題。文獻[14]針對風電狀態(tài)監(jiān)測數(shù)據(jù)量大、復雜的特點,利用大數(shù)據(jù)技術實現(xiàn)齒輪箱故障預警。以上研究均是通過振動信號對齒輪箱進行故障分析,然而,風電機組的傳動鏈系統(tǒng)安裝的振動傳感器數(shù)量有限,振動信號的采集速度往往難以滿足高頻振動分析的需要。文獻[15]使用非線性狀態(tài)估計方法建立齒輪箱油溫模型,采用IPSO-BP網(wǎng)絡方法對齒輪箱油溫進行預測,通過溫度殘差的變化可以發(fā)現(xiàn)齒輪箱的潛在故障。文獻[16]在此基礎上,建立了齒輪箱溫度和壓力預警模型,更全面的覆蓋了齒輪箱內(nèi)的故障。神經(jīng)網(wǎng)絡算法雖然能提高模型精度,但還存在計算時間長、參數(shù)性強、容易陷入局部最優(yōu)等問題。隨機森林算法是一種基于傳統(tǒng)決策樹的組合分類算法,能夠有效地運用在大數(shù)據(jù)分析上,準確率高[17-19]。在隨機森林算法中,決策樹數(shù)量和分裂特征數(shù)等參數(shù)對模型性能影響較大[20],通常是根據(jù)經(jīng)驗對參數(shù)進行選取,要建立最優(yōu)模型需要經(jīng)過大量實驗。
提出一種改進的隨機森林(Improved Random Forest,IRF)算法,利用該算法建立風電機組齒輪箱故障預警模型,采用粒子群算法對隨機森林中的決策樹數(shù)量和分裂特征數(shù)進行最優(yōu)化選取,再通過隨機森林算法建立齒輪箱油溫模型,并利用該模型進行預測。當齒輪箱有故障征兆時,實際值與預測值的殘差會有增大的趨勢,采用滑動窗口實時計算殘差均值和標準差,并將其與設定閾值對比,及時預警。仿真結(jié)果表明,與傳統(tǒng)的隨機森林算法相比,該模型準確度更高,計算時間更少。
對河北九龍泉地區(qū)的風電機組進行建模研究,機組額定功率為1.5 MW,切入風速為3 m/s,額定風速為11 m/s,葉輪額定轉(zhuǎn)速為20 r/min,雙饋發(fā)電機額定轉(zhuǎn)速為1 800 r/min,齒輪箱變速比為1∶90。建模過程中選取部分SCADA數(shù)據(jù),包括時間、葉輪轉(zhuǎn)速、槳距角、定子三相電壓電流、發(fā)電機驅(qū)動端軸承溫度、發(fā)電機非驅(qū)動端軸承溫度、發(fā)電機定子線圈溫度、齒輪箱油溫、齒輪箱軸承溫度、功率、風速等47個參數(shù)。同時,SCADA系統(tǒng)還保存機組的運行狀態(tài)信息,由風場提供風機系統(tǒng)缺陷臺賬,包括故障系統(tǒng)、缺陷描述、故障時刻、發(fā)現(xiàn)時間等內(nèi)容,如2018-1-10 9∶10報出153號機組齒輪箱油溫高(高于70 ℃且持續(xù)60 s),停機時常3.2 h。處理方式記錄為:檢查溫度傳感器良好,油冷風扇電機及電氣回路正常工作,判斷故障原因為油路濾芯堵塞。處理方法為:更換濾芯,油溫降至55 ℃后重啟。
傳統(tǒng)的隨機森林算法依據(jù)經(jīng)驗選取決策樹數(shù)量和分裂特征數(shù),存在預測結(jié)果無法達到最優(yōu)的問題,通常需要進行大量實驗,計算時間長。此文采用粒子群算法選擇最優(yōu)的決策樹數(shù)量和分裂特征數(shù),以提升預測模型精度。
改進的隨機森林算法中,將決策樹數(shù)量k和分裂特征數(shù)m共同構成一個權值向量,并將其作為粒子群算法可行域中的一個解,即一個粒子。粒子具有速度v和位置x兩個屬性,分別代表粒子移動的快慢和方向。每個粒子在解空間中單獨搜尋最優(yōu)解,并將其計為當前個體極值,記為Pi=[Pi1,Pi2,…,Pid],在下一次循環(huán)運算時,將個體極值與整個粒子群里的其他粒子共享,通過學習自身歷史經(jīng)驗和種群歷史經(jīng)驗,與上一次位置相比較,從而調(diào)整自身的速度和位置矢量,最終找到解空間的1個最佳位置Pg=[Pg1,Pg2,…,Pgd],最優(yōu)的個體極值作為整個粒子群的全局最優(yōu)解gbest[21]。
對決策樹數(shù)量和分裂特征數(shù)進行L次初始化,得到L個種群的初始粒子。在M維解空間中,定義第i個粒子的位置矢量為xi=[xi1,xi2,…,xid],速度為vi=[vi1,vi2,…,vid],其中i=1,2,…,L,d=1,2,…,M。
初始化粒子群后,解空間中的每個粒子會不斷循環(huán)迭代,第i個粒子的速度和位置矢量更新為
vid=ω*vid+c1*rand()*(pid-cid)+
c2*rand()*(pgd-xid)
(1)
xid=xid+vid
(2)
式中:ω為慣性權重;c1、c2為加速常數(shù),也稱作學習因子;rand()為隨機函數(shù),范圍區(qū)間為[0,1]。式(1)中的第一項可起到平衡全局搜索和局部搜索的作用;第二項表示粒子向自身最優(yōu)值學習,其能夠保持粒子有較強的全局搜索能力,避免陷入局部極小點;第三項為粒子向全局最優(yōu)值學習部分,以此來加快搜索速度。
定義袋外數(shù)據(jù)誤差為
(3)
式中:eODB(i)為第i棵決策樹的袋外數(shù)據(jù)誤差。將決策樹數(shù)量k和分裂特征數(shù)m帶入隨機森林模型中,計算誤分個數(shù)占總體樣本數(shù)的比率來計算袋外數(shù)據(jù)誤差eODB。袋外數(shù)據(jù)誤差反映了隨機森林算法的預測性能,袋外數(shù)據(jù)誤差越小,隨機森林算法預測越好[22]。粒子群優(yōu)化算法的目標便是要找到袋外數(shù)據(jù)誤差最小值對應的解,此時,粒子找到的最優(yōu)解Pi,即個體極值pbest;整個群體搜索到的最佳位置Pg,即全局最優(yōu)解gbest。具體算法的流程如下:
1)初始化粒子群,群體規(guī)模為M,每個粒子的位置為xi、速度為vi;
2)將粒子帶入隨機森林模型中,計算每個粒子的適應度,即袋外數(shù)據(jù)誤差eODB;
3)對每個粒子,比較其適應度值和個體極值,如果eODB 4)對每個粒子,比較其適應度值和全局極值,如果eODB 5)根據(jù)式(1)—(2),更新粒子的速度和位置; 6)若滿足最大循環(huán)次數(shù)5000次,則退出,否則返回步驟2)。 求得最優(yōu)決策樹和分裂特征數(shù)后,便可采用隨機森林算法建模。通過袋裝的方法重復隨機抽樣生成k個訓練樣本集,每個訓練樣本集構成一棵決策樹h(x,θi),i=1,2,…,k,其中θi表示獨立且相同分布的隨機變量。分裂特征數(shù)m作為決策樹的分裂節(jié)點,依據(jù)二元劃分規(guī)則分裂。每個決策樹都對輸入變量x的類別進行分類與預測,預測結(jié)果為每個決策數(shù)結(jié)果的算數(shù)平均值。 根據(jù)建模需要,采用相關分析法從SCADA數(shù)據(jù)的47個參數(shù)變量中選取輸入變量,輸入變量與齒輪箱油溫的相關系數(shù)為 (4) 式中:σp和σq分別為p和q的標準差;σpq為p和q的協(xié)方差;p為齒輪箱油溫;q為其他各變量值;n為選取數(shù)據(jù)個數(shù)。通過式(4)計算各變量與齒輪箱油溫的相關性,部分相關系數(shù)r如表1所示。 表1 齒輪箱溫度與其他變量的相關系數(shù)Table 1 Correlation coefficient between gearbox temperature and other variables 從原始數(shù)據(jù)中隨機抽選N個樣本,采用留P法切分數(shù)據(jù)集,留P法切分是一種交叉驗證的方式,為了充分利用數(shù)據(jù)集對算法進行測試,設定1個P值,每次將P個樣本作為測試樣本,其他N-P個樣本作為訓練樣本。采用隨機森林袋裝方法,從N-P個訓練樣本中抽選k次,產(chǎn)生k個樣本集。每個數(shù)據(jù)有均等的抽取概率,重復抽取多次后會有一部分樣本未被抽取,概率為(1-(1/k))k。采用此方法構造訓練樣本集,能將5個輸入?yún)?shù)的測量值對應的歷史記錄選入訓練樣本集中,從而使其能較好地覆蓋齒輪箱正常工作空間。 k個決策樹h(x,θ),i=1,2,…,k構成的隨機森林邊緣函數(shù)為 (5) 隨機森林的泛化誤差可表示為 (6) (7) 式中:ρ為決策樹平均相關系數(shù);s為決策樹的平均強度。式(7)表明,隨機森林的泛化誤差最大值與決策樹的平均相關系數(shù)以及決策樹的平均強度有關,決策樹的平均相關系數(shù)越小、平均強度越高時,隨機森林的泛化性能越好[23]。 通過訓練建立了齒輪箱溫度模型,選取風機運行的各輸入?yún)?shù)數(shù)據(jù)作為預測數(shù)據(jù)進行預測。通過分析預測殘差e的趨勢來判斷潛在故障: (8) 當預測殘差有逐漸增大的趨勢時,說明齒輪箱油溫逐漸升高,偏離正常工作狀態(tài),無法被訓練樣本覆蓋,此時可以發(fā)出預警信息。 齒輪箱故障診斷與預警運行流程如圖1所示。 圖1 齒輪箱故障診斷與預警運行流程圖Fig.1 Flow chart of fault diagnosis and warning operation for gearbox R2(R-Square)是評價模型好壞的重要指標,其取值范圍是負無窮到1,經(jīng)常是0到1。R2越接近1,模型對數(shù)據(jù)擬合的越好;R2越接近0,表明模型擬合的越差。 (9) 模型的均方誤差MSE,平均絕對誤差MAE,平均絕對百分比誤差MAPE分別為 (10) (11) (12) 以上3個評估指標越小,表示模型對數(shù)據(jù)擬合的越好。 殘差的均值和標準差可以直觀地反映其大小和分布情況,殘差的均值大幅度偏離0,表明預測殘差出現(xiàn)系統(tǒng)偏差;殘差的標準差明顯增大,表示殘差分布范圍更大。為實時連續(xù)地反映殘差分布特性的變化,采用滑動窗口進行殘差統(tǒng)計特性分析。 齒輪箱溫度殘差序列為 e=[e1e2…eN…] (13) (14) (15) 統(tǒng)計殘差超過閾值δ的比例λ: (16) 根據(jù)比例λ設定齒輪箱溫度異常的報警閾值。采用滑動窗口統(tǒng)計殘差能夠連續(xù)實時地監(jiān)測殘差統(tǒng)計特性的變化,適合在線實時分析;同時,能夠排除隨機因素的干擾,提高預測可靠性;還可以有效抑制孤立的大殘差對預測精度的影響。 以河北某風電場122號機組為研究對象,該機組在2019年1月30日14∶00報齒輪箱油溫高,檢查運維檔案,發(fā)現(xiàn)該機組2018年未發(fā)生齒輪箱油溫高的故障。因此選用故障發(fā)生前2個月的正常運行數(shù)據(jù),即時間長度為2018年10月至2018年11月、時間尺度為1 min的數(shù)據(jù)作為訓練樣本。將訓練數(shù)據(jù)中所有輸入?yún)?shù)為0的數(shù)據(jù)剔除,再歸一化處理輸入數(shù)據(jù),使處理后各參數(shù)數(shù)據(jù)值在[0,1]范圍內(nèi)。 為驗證所提改進隨機森林算法的有效性,采用神經(jīng)網(wǎng)絡和隨機森林算法進行對比。2種傳統(tǒng)算法的預測結(jié)果如圖2、圖3所示。其中,126 000點(對應時間為2019年1月30日14∶00)為臺賬報油溫過高的點。 圖2 神經(jīng)網(wǎng)絡預法測結(jié)果Fig.2 Prediction results of neural network algorithm 圖3 隨機森林法預測結(jié)果Fig.3 Prediction results of random forest algorithm 利用粒子群算法,求得最佳決策樹數(shù)量k=150,分裂特征數(shù)m=5。其他相關參數(shù)設置為默認值,葉子節(jié)點上最小樣本數(shù)為1,分裂內(nèi)部節(jié)點需要的最少樣本數(shù)為2,決策樹最大深度為10。采用改進的隨機森林算法訓練得到齒輪箱溫度模型,選取2018年10月至2019年3月的數(shù)據(jù)作為預測數(shù)據(jù),預測結(jié)果如圖4所示。 圖4 122號機組預測結(jié)果對比及預測殘差Fig.4 Prediction results comparison and predicted residual of No.122 unit 設置窗口長度為1 440(1天),閾值取值范圍為[2,-2],超限比例超過65%發(fā)出報警。殘差統(tǒng)計分析如圖5所示。 圖5 122號機組預測殘差統(tǒng)計分析Fig.5 Statistical analysis of predicted residuals of No.122 unit 由圖4可看出,在90 000點(對應時間為2018年12月26日16∶01)以后殘差開始增大,實際溫度逐漸偏離預測溫度,說明齒輪箱系統(tǒng)出現(xiàn)故障隱患,此時發(fā)出預警。126 000點(對應時間為2019年1月30日14∶00)為臺賬報油溫過高的點。由圖5可以看出,在90 000點以后殘差超限比例超過閾值65%,結(jié)合殘差統(tǒng)計分析,可以提前34天發(fā)現(xiàn)故障。 進一步考慮,齒輪箱軸溫與齒輪箱油溫的關聯(lián)度非常高,討論齒輪箱軸溫作為輸入?yún)?shù)是否合適。加入齒輪箱軸溫后,共計6個輸入?yún)?shù),輸出仍為齒輪箱油溫。采用改進的隨機森林算法進行建模預測,預測結(jié)果及預測殘差分析如圖6、圖7所示。 圖6 加齒輪箱軸溫的預測結(jié)果對比及預測殘差Fig.6 Prediction results comparison and predicted residual with gearbox shaft temperature 圖7 加齒輪箱軸溫的預測殘差統(tǒng)計分析Fig.7 Statistical analysis of predicted residual with gearbox shaft temperature 由圖6可知,與不加軸溫作為輸入?yún)?shù)的結(jié)果相比較,加入軸溫預測后,預測殘差明顯減小,說明模型精度提高,但是無法看出殘差有明顯增大的趨勢;圖7的殘差超限比例中,超過65%的報警點為60 000點,與前述報警點不符。綜上可知,加入軸溫作為輸入?yún)?shù)無法準確預測出齒輪箱油溫變化趨勢,不能提前報警。此原因是齒輪箱軸溫與齒輪箱油溫的關聯(lián)度過高,齒輪箱油溫有升高趨勢時,軸溫也有升高的趨勢,如果加入齒輪箱軸溫作為輸入?yún)?shù),將會把此種情況作為正常狀態(tài),無法起到預警的作用。因此,最適合齒輪箱油溫預測的輸入?yún)?shù)為發(fā)電機轉(zhuǎn)速、機艙溫度、環(huán)境溫度、功率、風速。 由圖2、圖3、圖4對比可知,神經(jīng)網(wǎng)絡與隨機森林均能預測出殘差在90 000點(對應時間為2018年12月26日16:01)以后開始增大,但是模型精度有所差異,詳細的模型評估指標對比如表2所示。 表2 模型評估指標對比Table 2 Comparison of model evaluation indicators 根據(jù)表2的模型評估指標對比可以看出,改進的隨機森林模型準確度更高,計算時間比神經(jīng)網(wǎng)絡更短。需要說明的是,經(jīng)過大量實驗訓練,一般的隨機森林算法也可以找到最優(yōu)的決策樹數(shù)量和分裂特征數(shù),達到與改進的隨機森林算法相同的模型精度,但是需要大量的時間和人工經(jīng)驗。 采用改進的隨機森林算法,選擇與齒輪箱油溫關聯(lián)度較高的變量作為輸入?yún)?shù),并給出訓練數(shù)據(jù)的清洗處理方法,建立了齒輪箱油溫的改進隨機森林算法預測模型。與神經(jīng)網(wǎng)絡和一般的隨機森林算法進行對比,該算法通過合理選擇決策樹數(shù)量和分裂特征數(shù),具有較小的訓練誤差,能顯著提高建模精度,減少訓練時間。齒輪箱油溫預測殘差呈現(xiàn)逐漸增大趨勢時,表明齒輪箱出現(xiàn)故障隱患。采用滑動窗口實時地分析殘差的分布特性變化,當殘差超限比例超過設定閾值時發(fā)出報警。仿真證明該方法可以及時準確地發(fā)現(xiàn)齒輪箱工作狀態(tài)的異常變化。2.2 齒輪箱溫度故障預警方法
2.3 評價指標
3 算例分析
3.1 傳統(tǒng)算法
3.2 改進算法
3.3 算法評價指標對比
4 結(jié) 語