謝祥穎,劉 虎,王 棟,冷彪
(1.北京航空航天大學計算機學院,北京 100191;2.國網電子商務有限公司戰(zhàn)略發(fā)展部,北京 100053;3.國家電網有限公司互聯網部,北京 100031;4.國網電子商務有限公司數字科技部,北京 100053)
太陽能資源是取之不盡、用之不竭的清潔能源,光伏發(fā)電是目前使用太陽能最廣泛、有效的方式。根據2016年12月發(fā)布的《太陽能發(fā)展“十三五”規(guī)劃》,到2020年底,中國光伏發(fā)電裝機容量指標為105 GW,光熱發(fā)電裝機容量指標為5 GW。截至2018年底,中國光伏累計并網裝機量174 GW,遠超《太陽能發(fā)展“十三五”規(guī)劃》目標。但是,在光伏發(fā)電廣泛應用的同時,光伏電站故障頻發(fā)成為了光伏產業(yè)發(fā)展亟待解決的問題。目前光伏故障診斷方法可以分為3大類:(1)傳統(tǒng)基于光伏電路特點的診斷方法;(2)機器學習診斷方法;(3)深度學習診斷方法。
傳統(tǒng)的故障診斷方法包括時域反射法[1,2]和等效電路法[3]。時域反射法通過對比時域反射信號與輸入信號確定故障發(fā)生的位置。這種方法的缺點包括:能夠檢測出的故障類別少;白天光照會對時域反射信號產生干擾;需要系統(tǒng)停機進行故障診斷,難以實時進行。等效電路法是一種利用伏安特性進行故障診斷的方法,通過在電路中串聯等效電阻來判斷系統(tǒng)中是否存在故障組件。等效電路法雖解決了實時故障診斷的問題,但該檢測方法不能大范圍使用。
基于機器學習的故障診斷方法主要通過分析光伏電站的運行數據,然后對當前狀態(tài)進行故障診斷。畢銳等[4,5]提出了使用模糊C均值聚類的方法,通過對不同故障進行特征提取從而實現聚類,構建故障特征向量與故障類型之間的模糊對應關系,然后根據正態(tài)分布特征計算故障特征向量與故障類型之間的隸屬度關系,最終確定故障類型。葉進等[6]提出了基于改進DBSCAN(Density-Based Spatial Clustering of Applications with Noise)算法的光伏故障檢測方法,首先將發(fā)電條件類似的電站聚類,然后對比同類電站的發(fā)電量,最終確定故障電站。基于貝葉斯網絡BN(Bayesian Network)的概率集成學習方法[7]可以對工業(yè)場景中發(fā)生的故障類別進行診斷。除了上述研究方法之外,支持向量機SVM(Support Vector Machine)[8-11]和多層感知機MLP(MultiLayer Perceptron)[12]等分類方法也被用來對光伏電站運行狀況進行故障診斷。但是,由于分布式光伏電站運行數據維度較高,一般的機器學習分類方法對故障的診斷準確率還有待提升。
深度學習故障診斷方法通常是基于數據驅動的解決方案:首先對光伏電站的運行數據進行分析,然后構建深度網絡模型,接著根據歷史運行數據對模型展開訓練,最后將訓練好的模型用于故障診斷。張國豪等[13]提出了一種使用采用卷積神經網絡CNN(Convolutional Neural Network)和雙向門控循環(huán)單元的時間序列分類方法,該方法探索了卷積神經網絡在時間序列分類上的可行性。另外,全卷積神經網絡FCN(Fully Convolutional Network)[14,15]也被廣泛應用于故障診斷領域,并取得了良好的效果。
卷積神經網絡方法有許多優(yōu)點:不受時間和空間的約束,故障檢測范圍廣,能同時檢測多種故障類型。但是,隨著檢測故障的種類的增多,數據量和模型深度也會增加,模型的泛化能力會有所下降。
目前光伏電站的故障診斷方法存在檢測故障種類單一、檢測方法復雜難以推廣、準確率低、網絡退化等問題。針對這些問題,本文提出了一種基于殘差網絡結構的光伏故障診斷ResFD-PV(ResNet Fault Diagnosis for PhotoVoltaic)模型。該模型在某測試電站的故障診斷實驗中,對4種故障類型的診斷準確率高達98.59%,適合在分布式光伏電站廣泛推廣。本文的主要創(chuàng)新點包含以下2點:
(1)本文利用卷積操作的平移不變性,采用一維卷積核對光伏電站的時間序列數據進行感知和特征提取,并建立了多級卷積的深度網絡模型來提升光伏故障診斷的準確率。
(2)本文采用殘差結構建立了深度網絡跨層連接,解決了深度模型隨著層數增加而導致的梯度消失問題,優(yōu)化了深度模型的訓練過程。
分布式光伏電站每天會產生海量的數據,這些數據分別由位于不同區(qū)域和不同組的發(fā)電設備產生。每個區(qū)域和組的設備類型相同,發(fā)生的故障種類也相似,所以可以根據每組設備的運行狀態(tài)來做故障診斷。
根據日常維修記錄,常見的故障類別可以歸納為4種,分別是光伏板遮擋故障、逆變器運行故障、逆變器短路故障和電壓數值異常故障。光伏板遮擋故障主要表現為光伏板的熱斑現象,這種問題產生的原因一般是光伏板被遮擋,在數據中的表現一般是逆變器中電流顯著降低。逆變器運行故障一般會導致電壓較大,這樣會導致逆變器運行異常。逆變器輸出端短路一般會導致電路電流的迅速增大。電壓數值異常是指三相電壓超出正常的范圍,一般是三相阻抗偏低或偏高導致的。常見故障與相關故障表現如表1所示。
Table 1 Fault categories,causes and results表1 故障類別及其表現
Figure 2 Network structure of the ResFD-PV model圖2 ResFD-PV模型的網絡結構
根據上文中選擇的光伏故障類型和對應的故障數據表現可以得出,選擇逆變器的三相電壓和三相電流數據可對上述4種故障進行診斷。故障診斷可以分為提取原始數據、數據預處理、模型訓練和模型測試與輸出4個階段,總體流程如圖1所示。
Figure 1 Flow chart of fault diagnosis圖1 故障診斷流程圖
提取原始數據階段:這個階段的目的是根據故障類型提取出與故障相關的運行數據。根據表1可以得出,與本文研究的4種故障相關的數據為三相電壓和三相電流。在提取數據階段,將三相電壓和三相電流值取出,然后分別對這些數據做預處理。
數據預處理階段:由于原始數據有時會出現數據缺失異常的情況,對于原始三相電流和三相電壓數據,需要根據缺失位置的前后數據取均值補全所缺數據。通常光伏電站在有光照的時候才能夠正常開機運行,所以需要選擇時間在8:00~18:00時的運行數據。由于電流數據變化較大,需要首先對電流值做濾波處理,減小瞬時異常數據的影響。然后計算每半個小時運行數據的均值作為該時間段的數據,減小短時間的異常數據對故障診斷產生的影響。為了使模型更容易提取故障特征,需要分別對電壓和電流數據做處理,即預提取操作。最后將預處理特征的數據與原始數據結合為一維數據,劃分為訓練集與測試集。
模型訓練階段:首先設置模型的超參數,然后在訓練集上對預設超參數的模型進行訓練。
模型測試與輸出階段:該階段主要是導出訓練模型,然后在測試集上衡量模型的診斷效果。
He等[16]提出了ResNet模型,該模型采用了殘差網絡結構來解決卷積神經網絡退化和梯度消失的問題。殘差網絡模型主要用于圖像識別領域,卷積核為二維卷積核。使用殘差結構的神經網絡在解決梯度消失問題上有著很好的表現。本文提出了一種基于殘差網絡結構的光伏故障診斷模型ResFD-PV,模型結構如圖2所示。
ResFD-PV模型所用的卷積單元包含卷積層、規(guī)范化層BN(Batch Normalization)和激活層ReLU(Rectified Linear Unit)。
卷積操作的目的是將相鄰數據的數據特征提取出來,多個卷積操作的疊加有利于擴大特征提取范圍。
BN層的作用是規(guī)范數據范圍、加快收斂速度和歸一化數據。卷積神經網絡的訓練過程中會出現內部協變量移位現象。隨著訓練的進行,底層網絡中的參數發(fā)生微弱變化時,這種變化會隨著網絡的深入不斷被放大。另外,隨著反向傳播的進行,上層網絡也因需要不斷適應這種變化而進行調整,使得網絡學習速度降低,減緩了收斂速度。本文針對這種現象,在每層卷積輸出時增加規(guī)范化操作,以減少數據微弱變化對深層網絡層的影響。
由于卷積操作是線性運算,如果僅僅是卷積層相連,那么最終也只能學習到線性關系的參數,所以需要在每個卷積操作之后加上激活函數層。激活函數層的引入使得原始的線性關系轉化為了非線性關系,這樣訓練出的模型可以逼近非線性函數。ReLU函數常用于隱層神經元輸出,如式(1)所示:
ReLU(x)=max(0,x)
(1)
基本卷積單元的計算公式如式(2)所示:
(2)
其中,W表示要訓練的權重,x表示輸入的參數,b為偏移,?是卷積操作符,BN為歸一化操作,s為ReLU激活函數的輸入。
如圖2所示,分布式光伏故障診斷模型的基本框架使用了3個殘差結構。每層殘差結構由3個基本卷積單元組成,每個基本殘差單元的最后一個ReLU層與殘差輸入相加的結果作為下一個殘差結構的輸入,3個殘差結構中的卷積層通道數分別是64,128和128。基本殘差結構如式(3)所示:
(3)
其中,每個Block表示一個基本的卷積單元,ki表示第k個殘差結構的第i個基本卷積單元。
第3個殘差結構的輸出作為平均池化的輸入。平均池化之后增加Softmax層輸出分類結果。
Softmax是一種歸一化指數函數,在深度學習領域,Softmax常用于分類問題。給定一系列類別,Softmax 可以給出某輸入被劃分到各個類別的概率分布。Softmax公式如式(4)所示:
(4)
(5)
其中,z表示原始向量,σ(z)j表示經Softmax操作后的第j個值,P(y=j|x)表示樣本x屬于第j類的概率,zj表示原始向量z的第j個分量,K表示類別數量。
傳統(tǒng)的ResNet結構對每2個卷積層做一次殘差相加。而ResFD-PV模型使用3層基本卷積作為殘差基本單元,簡化了模型結構,減少了參數。
實驗中所使用的數據來源于某光伏電站2019年7月至2020年3月的運行日志和故障維修記錄。運行日志數據包含發(fā)電量、上網電量、日發(fā)電量、電壓和電流等72項數據記錄。經過與故障維修記錄的對比分析,發(fā)現故障常常出現在光伏組件上。另外,結合故障發(fā)生時的運行數據表現:故障發(fā)生時,運行異常數據常常反映在逆變器上。根據以上情況分析,篩選出逆變器運行數據6項和常見故障4項。篩選出的運行數據分別是三相電壓U_AB、U_BC、U_AC和三相電流I_A、I_B、I_C。
本文將分布式光伏電站的運行狀態(tài)劃分為5種,其中1種為正常情況,另外4種為故障狀態(tài)。為了避免因目標值大小引起的計算損失函數誤差,本文采用了one-hot向量的方式來表示分類目標。one-hot向量中每一個位置的數值代表了一種分類結果,每個向量中僅有一位的值為1,代表了該組數據的所屬類型,其它值都為0。
為了更加直觀地體現故障數據特征,加速模型的訓練過程,本文抽取出三相電壓差(U1,U2,U3)和電流前后變化差值(I1,I2,I3)6項數據作為人工特征。然后對數據進行歸一化處理,將原始缺失的數據補全。本文采用低通濾波器和小波變換分別對歸一化后的數據進行降噪處理,歸一化數據和降噪處理后數據對比如圖3所示。
從圖3中可以看出,經過小波變換后的曲線能夠更加準確地描繪出電流變化趨勢,所以后續(xù)的實驗將使用小波變換來對電流數據進行濾波處理。
光伏電站每5 min產生一組運行數據,每天可產生120組(上午8:00至下午6:00)數據。這樣的數據冗余度較高且訓練中產生的參數較多。選擇將每半小時計算一次數據的均值作為一組數據,所以每天產生20組數據。根據數據的時間序列特性,卷積網絡使用一維卷積模型,將每天的數據變換為一維向量作為一個訓練樣本個體,則該向量長度為240。
Figure 3 Comparison between normalized data and noise reduction treated data圖3 歸一化數據和降噪處理后數據對比
故障診斷類型一共劃分為5種,分別是正常狀態(tài)和表1中的4種故障類別。模型采用準確率(Accuracy)、精確率(Precision)、召回率(Recall)和F1等評價指標。
準確率描述了模型預測正確的樣本概率,其計算公式如式(6)所示:
(6)
對于二分類問題,TP表示預測結果與實際結果均為正樣本的數量;TN表示預測結果與實際結果均為負樣本的數量;FP表示預測結果為正樣本,實際為負樣本的數量;FN表示預測結果為負樣本,實際為正樣本的數量。
精確率、召回率和F1的計算公式如式(7)~式(9)所示:
(7)
(8)
(9)
對于多分類的問題,只統(tǒng)計準確率,即分類正確的樣本數占總體樣本數的比例。在計算每種故障類別診斷的精確率、召回率和F1時,按照二分類的標準計算。
ResFD-PV模型訓練過程中,需要手動指定一些超參數,這些超參數的設置在一定程度上影響了模型訓練的最優(yōu)結果。在本次實驗中,設置的超參數如表2所示。
Table 2 Hyperparameter settings in ResFD-PV model表2 ResFD-PV模型中超參數的設置
卷積核的大小反映了模型感受野的范圍。在傳統(tǒng)圖像處理的模型中,卷積核越大,模型的感受野越大,然而參數量會增加,花費的訓練時間也就越長。在本次實驗中,為了探究最優(yōu)化的模型結構,選擇不同的卷積核大小交叉排列,同時兼顧了計算量和精度。實驗中選擇的卷積核的長度分別是3,5,7和8。不同大小卷積核訓練結果如表3所示。
Table 3 Training results using different convolution kernels表3 不同卷積核模型的訓練結果
從表3中可以看出,在三層殘差單元中卷積核大小均為3和殘差單元中卷積核大小分別為5,5和3時,模型取得了比其他參數更好的實驗效果,在測試集上的準確率為98.59%。而隨著卷積核大小的增加,模型的泛化能力反而有所下降,導致此結果的原因可能有3種:(1)訓練周期(Epoch)較小導致訓練模型還未收斂;(2)參數過多而樣本數量較少導致模型過擬合。
本文進一步探究了卷積核尺度對模型訓練過程和模型準確率的影響。圖4展示了3個殘差基本單元中卷積核長度均為5,5,3時,模型訓練過程中損失函數Loss值的變化曲線。從圖4中可以看出,當訓練周期在300時,訓練模型的準確率已經不再變化,說明模型已經收斂。Loss值在訓練過程中不斷降低,當訓練周期達到969時,Loss值達到最低點6.87e-4??梢娋矸e核大小均為5,5,3時已經達到了模型的最優(yōu)化訓練狀態(tài),過大的卷積核可能會造成模型的過擬合,影響泛化能力。
表4所示為卷積核為3時ResFD-PV模型得到的不同種類故障的精確率、召回率和F1 的值。從表4中可以看出,對不同種類的故障,ResFD-PV模型均有較好的表現。
Table 4 Performance of the ResFD-PV (kernel=3)model on the test set表4 ResFD-PV(kernel=3)模型在測試集上的結果 %
本文選擇了CNN[13]、FCN[14,15]、MLP[12]、SVM[9-11]和BN[7]等多個常見的故障診斷智能模型進行對比實驗,結果如表5所示。
Table 5 Comparison of results of several fault diagnosis models表5 不同故障診斷模型的結果比較
從表5可以看出,本文提出的ResFD-PV模型在測試集上的準確率為98.59%,明顯優(yōu)于幾種常見的故障診斷智能模型。CNN模型的網絡結構與ResFD-PV模型類似,而且卷積核的大小與卷積層數量也保持一致,但是缺少了殘差結構,在測試集上的準確率為95.30%。
采用卷積神經網絡的模型在測試集上的準確率均在95%以上,最低的CNN模型為95.30%。而采用傳統(tǒng)機器學習方法的模型,準確率均在80%以下,說明卷積神經網絡故障診斷更加有效。這是因為:(1)從數據上來看,故障數據具有時序性的特點,即前后數據與時間有關。如上午陽光較弱時產生的電流值與中午光照強度較大時的電流值不同,電流值大小與監(jiān)測時間相關,而這個關系通過SVM等傳統(tǒng)算法難以學習。(2)不同維度的數據之間存在相互影響。如不同相的電壓值應該大致相同,不同時間電壓值變化很小,而不同相電壓值相差超出一定范圍則表明發(fā)生了故障。這種不同維度數據之間的相互關系也很難通過傳統(tǒng)算法學習得到。(3)故障發(fā)生的時間較為隨機,所以數據異常的時刻不固定,即使相同的故障數據也會呈現出不同的特征表現,因此傳統(tǒng)方法會受到較大的限制。
隨著社會經濟不斷發(fā)展,綠色發(fā)展的理念愈發(fā)深入民心,在此背景下,環(huán)境影響的評價機制作為一種預防性的環(huán)境保護制度顯得十分重要。環(huán)境保護制度能夠為環(huán)境綜合治理和城市的環(huán)境規(guī)劃提供參考依據,促進經濟社會的長遠發(fā)展。
由于ResFD-PV模型使用卷積神經網絡,具有寬闊的感受野,能夠學習到同一組數據和不同組數據之間的相互關系。而且多層卷積核的疊加,能夠極大地拓寬感受野,學習到更多數據特征。同時,卷積神經網絡與數據位置無關的特性正好適用于時序數據。采用殘差結構能夠加速模型訓練過程,增加跨層間的聯系,減弱梯度消失對模型訓練的影響,進一步提高模型預測的準確率。從上述實驗結果可以看出,殘差神經網絡在光伏故障診斷方面相比傳統(tǒng)分類方法較優(yōu)。
ResFD-PV模型采用了殘差結構來解決深度卷積網絡梯度消失的問題,從而加速模型的訓練過程。為了驗證殘差結構的有效性,采用CNN模型與ResFD-PV模型進行實驗對比。訓練過程如圖5所示。
Figure 5 Comparison of the training process of the ResFD-PV model and the CNN model 圖5 殘差網絡模型和傳統(tǒng)CNN模型的訓練過程對比
從圖5訓練過程的準確率變化曲線可以看出,ResFD-PV模型有2個顯著的特點:(1)訓練剛開始時,準確率提升明顯,且訓練速度快。當Epoch達到380左右時,ResFD-PV模型已收斂,準確率達到最高點,而同周期的CNN模型還未收斂。當Epoch約為600時,CNN模型才收斂。(2)準確率高。ResFD-PV模型預測準確率一直高于CNN模型,最終的準確率為98.59%,明顯高于CNN模型的95.30%。(3)在CNN模型訓練后期,準確率波動一直較大,而ResFD-PV模型幾乎沒有波動,一直穩(wěn)定在98.00%附近。從上述實驗結果可以看出,本文提出的ResFD-PV模型在光伏故障診斷問題上顯著優(yōu)于CNN模型。
為了較好地解決分布式光伏電站運行時故障診斷問題,本文提出了一種基于殘差結構的卷積神經網絡模型,實現了光伏電站故障類型的快速診斷。針對光伏電站運行數據的時序性和故障發(fā)生時間的不確定性等特點,深度卷積神經網絡能夠有效地學習到數據之間的時序性特征。由于卷積操作的平移不變性,無論故障發(fā)生在什么時刻,均可以提取出相同的故障特征。另一方面本文采用殘差網絡結構,解決了深度模型隨著層數增加而導致的梯度消失問題,優(yōu)化了深度模型的訓練過程。
光伏電站的測試數據上的實驗結果表明,本文提出的ResFD-PV模型顯著優(yōu)于現有多種故障診斷模型,該模型可以廣泛應用在分布式光伏電站的檢測運維中,為電力巡檢、故障分析提供新的解決方案。