張 治,馬 輝,王 林
(1.國家電投集團光伏產業創新中心,青海西寧 810000;2.西安理工大學電子工程系,陜西西安 710048)
由于環境的不斷惡化,傳統能源不斷減少,清潔環保的光伏發電技術越來越引起人們注意[1]。而光伏電站選址一般都在環境較差的地方[2],人工維護費時費力,電站各種故障極易發生。因此,對光伏電站進行遠距離、高精度故障診斷是非常有必要的。現有的光伏電站的故障診斷方法有紅外圖像法[3]、輸出特性法[4-5]、數學建模法[6]和智能算法[7-10]。文獻[3]利用故障組件溫度比正常組件溫度高的原理,對紅外攝像機獲取的光伏組件紅外圖像進行分析研究進行故障診斷。文獻[4]提出了一種基于時域反射法的故障檢測方法,此方法通過在系統的端口輸入脈沖,根據反饋電壓的大小和波形的偏移診斷故障。文獻[5]采集天氣輻照度和陣列輸出電壓、電流等數據,通過分析這些數據是否超過設定好的閾值,來判斷光伏組件故障情況。
由于光伏電站的故障原因和表現復雜多樣,增加了故障診斷的難度。現有的診斷方法存在實時性較差,建模難度大、成本高、精度低等問題[11]。因此,針對隨機森林在故障診斷應用中精確度不高的問題,提出了AFCM-SMOTE-RF 光伏電站故障診斷方法。利用AFCM 算法(改進的模糊C 均值聚類)對故障樣本聚類并計算簇心,對樣本進行預處理。SMOTE 算法(人工少數類過采樣法)在數量較少的故障樣本和其附近樣本之間合成“人造”樣本,再將新樣本添加到原數據集中,用新的樣本數據集訓練RF(隨機森林)分類模型,最終得到AFCM-SMOTE-RF 分類模型,用該模型判斷光伏電站運行情況。實驗結果表明所提出的模型很好地解決了因故障樣本少而分類不準確的問題,提高了故障診斷模型的精確度。
在實際中,光伏電站運行數據不易獲取,因此需要建立不同故障條件下的光伏電站仿真模型。通過所建模型模擬不同情況(故障、正常)下的光伏電站的運行情況,隨后對光伏電站的輸出特性進行分析以獲取實驗研究所需的數據集。
光伏電站模型以光伏組件模型為基礎。光伏組件以光伏電池為基礎,進行串并聯形成。如圖1 所示,光伏電池模型可以用一個等效電路代替[12]。

圖1 光伏電池電路圖
根據圖1,光伏電池電流與電壓之間的關系為:

式中:m為二極管理想因子;I0為反向飽和電流;k=1.38×10-23J/K;q=1.6×10-19C;Tc=278 K。根據文獻[13]中式(19)可以計算出,Rs的值為0.002 8 Ω;Rp的值為5.1 Ω。
在實際應用中,光伏電池的Iph和I0隨著溫度、光照度發生變化[14],可以表示為:

式中:Gc為陣列實際光照度;GR=1 000 W/m2;Tc為電池溫度;Tr為標準狀況下的電池溫度;Ioc為短路電流;Vg=1.1 eV。
根據式(1)~(4)建立的光伏電池仿真模型如圖2 所示。模型可以通過調整參數模擬不同條件、不同型號的光伏電池,具有一定實用性。

圖2 光伏電池仿真模型
實驗用SP 結構光伏陣列[15]作為研究對象。陣列故障形成原因主要有:(1)組件被短路;(2)組件被開路;(3)組件異常老化;(4)組件被遮擋,產生熱斑現象。
實驗中模擬的光伏組件參數相同,所以任取一個與實際光伏組件進行對比。在模擬時,通過導線代替組件內的一塊電池板來模擬短路;去掉一列電池板來模擬開路;增大電池板串聯等效電阻模擬老化;降低組件輻照度來模擬陰影。
模型仿真得出的故障組件發電特性和實際相比的類比度可以判斷出仿真模型模擬的精確度,類比度越接近1,說明模擬效果越好。類比度計算方法如下:
選取5 個實際組件,編號為:1 正常,2 短路,3 開路,4 陰影,5 老化。以故障組件發電特性的4 個特征的估計值為分量,構造一個4 維向量,稱之為特征向量。記模擬故障組件發電特性與實際故障組件發電特性的類比度為ai(i=1,...,5),故障組件發電特性的特征向量為C0,實際故障組件發電特性的特征向量為Ci(i=1,...,5)。計算ai公式[16]為:

式中:Ci(k)、C0(k)分別表示Ci、C0的第k(k=1,...,4)個分量。
計算得出a1=0.99、a2=0.97、a3=0.95、a4=0.89、a5=0.96,其中陰影的類比度較低,可能是因為實際情況下組件在陰影遮擋時有溫度變化影響組件最大功率。但組件與實際的類比度均在合理范圍內,所以該模型可以很好地模擬真實組件。
AFCM(alter-native fuzzy C-means)算法是由Kuo-Lung Wu等[17]提出的,提升了FCM 算法的效果。FCM 通過目標函數計算各類樣本對其中心的隸屬程度,來確定各樣本屬于哪一類,從而確定樣本的分類[18],因此適用于對光伏陣列運行產生的樣本數據進行預處理。但FCM 聚類算法存在這些不足:一是聚類類別數值無法確定;二是對聚類樣本的空間分布及噪音數據都非常敏感[19]。而AFCM 算法很好地改善了這些問題。

SMOTE 算法(synthetic minority over-sampling technique)用于對樣本進行采樣[20]。隨機過采樣方法生成的新數據集中包含大量的重復數據,會出現過擬合。SMOTE 算法在原有數據集基礎上,在數量較少的樣本和其附近的樣本之間合成新的樣本,對數量較少的樣本向上采樣,合成新的樣本。
SMOTE 算法在故障檢測中主要有兩個步驟:在每個故障樣本附近隨機選出幾個樣本;在故障樣本與其附近樣本的連線上合成新的無重復的故障樣本。
隨機森林是一種由多顆決策樹組成的分類算法。隨機森林分類過程:從訓練集中選k個容量大小與訓練集一樣的樣本,對k個樣本一一建立決策樹,得到不同的分類,再進行投票來決定最后的分類結果。隨機森林有抗干擾能力強、可以平衡誤差等優點,因此對于特征遺失數據、不平衡數據有較好的分類效果。
隨機森林用邊緣函數mr(X,Y)判定模型分類的準確度。

隨機森林算法應用于光伏電站故障診斷時,其診斷結果往往會傾向于正常類,雖然整體的分類精度比較高,但是對故障樣本的分類精度卻非常低[21]。在光伏電站實際運行數據中故障樣本相對于正常樣本較少,但在故障診斷模型中對故障樣本的分類精度更為重要。針對這個問題本文提出了AFCM 聚類算法與SMOTE 結合來對故障樣本數據進行預處理,降低故障樣本的不平衡度,處理后的新數據集經過隨機森林進行分類。模型流程如圖3 所示。

圖3 故障診斷算法原理圖
改進后的AFCM-SMOTE 算法,解決了少數類樣本數據與多數類樣本數據之間邊界不清楚的問題,同時保證了新生成樣本的有效性[22],再將AFCM-SMOTE 算法與RF 組合來更好地解決故障樣本數據分類不精確問題。
AFCM-SMOTE-RF 算法在應用時,首先經過AFCM 算法聚類并計算聚類中心,再根據插值公式,在聚類中心與隸屬數據的連線上合成新的樣本,再進行分類。
定義3 插值公式:

式中:Xnew為新合成的樣本;Zi為聚類中心;X為以Zi為聚類中心的原始樣本;rand(0,1)為0 與1 之間的任意數。
利用MATLAB/Simulink 建立3×3 光伏陣列模型,如圖4所示,其中PV 模塊是對單個光伏組件進行封裝而成。

圖4 光伏陣列仿真模型
模型中設定溫度為25 ℃,光照度為1 000 W/m2,AM=1.5。實驗所用光伏組件參數:Pmax=110 W,Umax=34 V,Imax=3.25 A,UOC=43 V,ISC=3.5 A。
在光伏電站運行數據中,UOC、ISC、Umax和Imax這四個參數可以確定陣列的輸出特性,不同故障狀態下輸出特性不同,所以對這幾個參數進行提取并構建故障特征向量,用它們作為算法的特征參數。
實驗中模擬的正常與故障時的光伏陣列的IV 曲線對比如圖5,PV 曲線對比如圖6 所示。實驗各種設置中,陰影模擬:實驗研究的光伏電站建立在風電場內,風機塔筒會對光伏陣列造成一定的遮擋,一般會遮擋一排或者一列光伏組件。因此在模擬陰影故障時,將第一列或者第一排的光照幅度降低至600 W/m2;開路模擬:開路故障主要由于動物啃咬導線,組件出現質量問題或者冰雹、暴雪等天氣原因導致某一部分組件被開路。一個組件開路會導致整個組串不工作,所以實驗中去掉第一列組件來模擬開路故障。經過仿真實驗,在相同的條件下,去掉第一列組件與去掉第二列組件模擬結果相同;短路模擬:處于陣列邊緣的組件容易出現電纜破損從而導致組件短路,組件會停止工作,作為一個負載消耗功率,但是消耗的功率較小可以忽略。所以用導線短接陣列第一排第一列組件模擬短路故障;老化故障:老化故障主要是由于陣列經過風吹日曬,一段時間后電池板功率下降。因此增大仿真模型中串聯等效電阻值Rs的值就可以模擬電池板功率下降,由于處于同一環境下的陣列中的組件老化程度大致相同,模擬時將所有組件的串聯等效電阻值統一增加為0.005 6 Ω(正常情況下的值為0.002 8 Ω)。

圖5 不同故障I/V 曲線圖

圖6 不同故障P/V 曲線圖
由圖5、圖6 可得:老化情況下陣列的最大功率點有所下降,短路情況下陣列最大功率、開路電壓會降低,開路情況下陣列四個值都降低,熱斑情況下的陣列會出現多峰值現象。
實驗仿真模型得到的樣本共600 份,分為測試集200 份和訓練集400 份,其中正常樣本40%,開路10%,短路15%,老化10%,熱斑25%。通過模型仿真得到的各種故障情況下的樣本數據經過清洗后,分為測試集和訓練集。每種故障的樣本數據示例如表1 所示。表1 數據中的最大功率點電壓、最大功率點電流是在陣列仿真模型后加入MPPT 模型(最大功率點跟蹤控制器模型)得到的。

表1 光伏陣列經典故障樣本
測試集用AFCM-SMOTE-RF 算法檢測,結果如圖7 所示。由圖7(d)可以看出1 類故障中有兩個誤判成2 類故障;2類故障中有一個誤判成其它故障;3 類故障全部正確檢測;4類故障中有一個誤判成3 類故障,一個誤判成5 類故障;5 類故障中有一個誤判成4 類故障,一個誤判成2 類故障。相對于其他三種算法,AFCM-SMOTE-RF 算法的分類效果有明顯的提升。

圖7 各算法檢測結果對比
AFCM-SMOTE-RF 算法對5 種情況下的光伏陣列運行數據判斷精確度如表2 所示。從表中可以看出,該方法可精確地檢測陣列是否發生故障,同時對不同故障的分類也較為理想。其中,老化故障的檢測精度較低,原因有:老化樣本的屬性特征值與正常樣本較為相似,容易誤判為正常;訓練集中老化、開路的樣本相對較少,對算法的精確度有一定的影響。

表2 AFCM-SMOTE-RF 光伏故障檢測結果
對于同一樣本數據集,用隨機森林算法、SMOTE-RF 算法和AFCM-SMOTE-RF 算法進行分類的結果如圖8 所示。對比可得,三種算法都可以檢測出陣列是否存在故障,但AFCM-SMOTE-RF 算法精確度最好,且對于樣本較少的故障(老化、開路)AFCM-SMOTE-RF 的精確度明顯高于其他兩種算法。

圖8 各個方法對各種故障的精確度對比
在相同測試條件下,將本文提出的光伏故障診斷方法與其他診斷方法對比,結果如表3 所示。相對于傳統隨機森林算法和SRF 算法,診斷效果有所改進,準確率有所提高,并且算法響應時間略小于其他算法,該方法具有一定的可行性。

表3 各算法診斷結果對比
針對光伏電站故障檢測的種種不便,本文提出了一種AFCM-SMTOE-RF 的光伏電站故障診斷模型對光伏電站開路、短路、局部熱斑、老化這四種故障進行診斷。模型通過AFCM-SMOTE 算法對故障樣本進行預處理,合成新樣本,用新產生的樣本集訓練隨機森林模型,得到故障檢測模型。此方法解決了因故障樣本少而導致故障分類不精確的問題。經過對模型模擬出來的數據進行分析,驗證了該方法進行故障診斷的精確度較高,所需時間較短,可以對光伏電站各種故障進行有效的診斷。而且本文的故障診斷模型所需的故障樣本數據較少,訓練較為簡單,提高了故障診斷的精確度及實用性。