杭州華電下沙熱電有限公司 林 翀 周皖奎 丁智華
由于光伏面板長期在室外環境工作,不可避免的發生受損、老化等問題,導致熱斑、裂紋等故障,影響了光伏面板的穩定運行,縮短了使用壽命。因此光伏組件的故障診斷成為業界所關注的重點話題。現階段光伏發電廠的信息化系統已十分完善,光伏組件實時的生產數據被系統采集和儲存,因此基于數據驅動的光伏組件故障診斷方法開始流行。葉進[1]等通過改進的DBSCAN 算法,基于電站的經緯度對地理位置進行聚類,對比將發電量較低的電站判定為異常。孫艷[2]采用核極限學習機對采集數據和各狀態之間的關系進行學習,并使用改進粒子群算法對模型參數進行優化。王元章等[3]分析不同故障特性圖并建立BP 神經網絡,對正常工作、短路故障及異常老化故障進行學習和診斷。李紅濤等[4]使用最小二乘支持向量機學習短路電流,開路電壓,最大功率點電流和壓值之間的關系,在小樣本量的試驗中準確率超過了90%。
光伏組件常見的故障有熱斑、玻璃開裂、導線老化、導線短路、內部斷路等。當光伏組件發生故障時輸出的電流、電壓會隨之改變。如發生熱斑時,由于熱斑區域大量消耗能量會導致輸出電流降低。但隨著故障的不同和外界環境的變化,電流、電壓的變化規律也十分復雜,因此需要能有效識別故障狀態與電流、電壓間關系的方法。本文提出基于隱馬爾可夫模型(Hidden Markov model,HMM)對組件的劣化狀態進行判斷,實現對故障提前發出警告目的。
HMM 是一種時間序列模型,其假設觀測到的值都是由當前狀態所決定,在語音識別、文字識別等領域使用較多。對于一個HMM 通常有三個基本問題:觀測序列的概率計算問題。對于已知的HMM,λ=(A,B,π) 和觀測序列O={o1,o2,…ot},計算觀察值序列O 出現的概率P(O|λ);馬爾科夫模型的參數學習問題。當觀測序列O={o1,o2,…ot}已知時,學習λ 的的參數(A,B,π),使得觀測序列出現的概率P(O|λ)最大;最優序列的計算問題。當模型的參數(A,B,π)和觀測序列O={o1,o2,…ot}給定時,找到能最好解釋當前觀測序列的狀態序列,即求解使P(I|O)最大的狀態序列I={i1,i2,…it}。對于光伏組件的故障診斷,將不同的發電功率等級設定為模型的當前狀態,而觀測到的參數種類為當前觀測值。用HMM對故障進行預警分為兩個步驟:使用不同狀態下的光伏組件歷史生產數據訓練對應的模型,再將實時的生產數據輸入訓練好的模型分別計算其概率,概率最大者為實時的狀態。
根據狀態序列是否可知,參數學習問題可分為有監督和無監督兩種,由于狀態序列由發電功率等級表示、是已知的,因此使用有監督算法:轉移概率矩陣A的求解。由狀態i 轉移到為狀態j 的樣本個數為Sij個,則由狀態為i 轉移到狀態j 的概率的估計值為aij組成的矩陣即為轉移概率矩陣A;觀測概率矩陣B 的求解。狀態為i 且觀測值為j 的樣本個數為Tij個,則狀態為i 且觀測值為j 的概率估計值為bi(j)組成的矩陣即為觀測概率矩陣B;初始狀態概率πi的估計值為所有樣本中初始狀態為i 的頻率。
概率計算問題可直接使用的是前向-后向算法。
前向算法:前向概率定義為在t 時刻部分觀測序列為o1,o2,o3,…,ot,狀態是qi的概率,記作αt(i)=P(o1,o2,…,ot,it=qi|λ)。其計算步驟為:對前向概率賦初值。αt(i)=πibi(o1),i=1,2,…,N;遞推計算各時刻的前向概率。bi(ot+1),i=1,2,…,N;終止計算。αT(i)。
后向算法:后向概率定義為在t 時刻部分觀測序列為ot+1,ot+2,ot+3,…,oT,狀態是qi的概率,記作βt(i)=P(ot+1,ot+2,…,oT,it=qi|λ),其計算步驟為:對后向概率賦初值。βT(i)=1,i=1,2,…,N;遞推計算各時刻的前向概率。βt+1(j),i=1,2,…,N;終止計算。πibi(o1)β1(i)。
根據前向概率和后向概率的計算方式,觀測序列概率P(O|λ)統一寫成aijbj(ot+1)βt+1(j),t=1,2,…,T-1。
模型狀態序列。光伏組件在運行時,隨著外界環境的不同如氣溫、光照強度等,其發電功率也會發生變化。發電功率和氣溫、光照強度進行單獨比較并非完全相關,應是多個外界因素共同決定。因此可用發電功率抽象描述整個外界環境,并將其作為隱馬爾可夫的狀態。在同一環境下短時間內為降低故障組件對光伏總體發電功率的影響,選取所有光伏組件發電功率的中位數來準確的描述環境。隱馬爾可夫的狀態是離散值而發電功率是連續值,因此需對發電功率進行離散化,以10W 為間隔將發電功率分成15種狀態,一段時間的狀態形成模型的狀態序列。

圖1 HMM 故障預警流程

圖2 原始故障

圖3 模型故障預測結果
模型觀測序列。不同外界環境下其電流和電壓數據不一樣,可將其視為外界環境“產生”的值,即模型的觀測值。由于馬爾科夫模型的觀測值也是離散的,因此也需將電流、電壓值進行離散化,采用K 均值聚類的方式將樣本中的電流、電壓值進行聚類,電流—電壓關系大致可分為20類,每一類作為一種觀測值,一段時間的觀測值形成模型的觀測值序列。
模型的訓練。光伏組件的故障診斷涉正常狀態和遮擋、導線短路、導線開路、電池老化四種不同的故障狀態,一共有5種狀態。收集5種狀態的歷史數據并訓練HMM 可得到5個HMM。將需診斷的數據分別輸入到訓練好的模型,計算當前觀測序列出現的概率P(O|λ)可得到5個不同的概率值,概率最大的即為對應的狀態。
模型結果分析。從2019年的光伏發電數據中收集不同工作狀態下的數據,正常狀態共50個樣本,遮擋、導線短路、導線開路、電池老化各20個樣本,時間序列長度為300分鐘。每1分鐘模型運行一次給出診斷結果。由圖2、圖3可知模型對光伏設備的故障預測基本保持較高的準確率,其中模型易將遮擋故障預測為電池老化,這也符合實際的認知。由此可知模型對光伏組件故障預警具有實際意義。