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







2.3 評價指標


3 算例分析
3.1 傳統算法


3.2 改進算法




3.3 算法評價指標對比

4 結 語