陳 偉,陳克松 ,紀(jì)青春,裴婷婷,王忠飛,何 峰
(1.蘭州理工大學(xué)電氣工程與信息工程學(xué)院,甘肅 蘭州 730050;2.國網(wǎng)甘肅省蘭州供電公司,甘肅 蘭州 730070)
光伏電站運行環(huán)境惡劣。光伏陣列出現(xiàn)故障的情況屢見不鮮,導(dǎo)致光伏電站檢修成本提高、生產(chǎn)效益降低。因此,提高光伏陣列故障分類的準(zhǔn)確性具有重要意義[1]。
國內(nèi)外對光伏故障診斷的方法主要有3大類。第一類是基于傳感器的數(shù)學(xué)理論檢測方法。這類方法通過對陣列傳感器的優(yōu)化確保故障檢測的準(zhǔn)確性[2]。文獻[3]通過建立阻抗模型,對電壓故障魯棒M估計在線判別模型進行診斷。文獻[4]對電壓波動的情況進行觀測并判斷狀態(tài),用于發(fā)現(xiàn)光伏組件有無故障。國內(nèi)外研究人員及光伏運維工作者的大量研究和實踐表明,雖然提高了光伏陣列故障診斷的準(zhǔn)確率,但在面對大規(guī)模陣列時仍需要一定數(shù)量的傳感器。第二類是基于圖像處理的方法[5]。這類方法根據(jù)不同狀態(tài)下光伏組件呈現(xiàn)的不同溫度特性,通過紅外成像拍照,再用計算機視覺等方法進行分類[6]。因圖像處理對圖像的分辨率要求高,該方法在環(huán)境噪聲較大以及分辨率較低的情況下,不能完全識別故障。第三類是基于模型的人工智能分類方法。這類方法通過深度學(xué)習(xí)中的一維神經(jīng)網(wǎng)絡(luò)分類模型,使用訓(xùn)練集進行模型訓(xùn)練,對故障特征進行提取,進而提高提取效率和分類準(zhǔn)確率[7]。王鈞石等[8]提出基于無監(jiān)督的人工智能算法,通過聚類提取故障類型特征值實現(xiàn)分類和訓(xùn)練數(shù)據(jù),并確定故障類型。由于外界條件的干擾造成的不確定性較大,該方法在泛化性能方面還需要優(yōu)化。王惠中等[9]提出的長短時記憶(long-short term memory,LSTM)網(wǎng)絡(luò)以及徐先鋒等[10]提出的LSTM和卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)相結(jié)合的故障診斷方法,為故障診斷在時間序列上的分類拓展了新思路。
本文主要對深度神經(jīng)網(wǎng)絡(luò)進行研究,并提出了基于一維卷積門控循環(huán)網(wǎng)絡(luò)的光伏陣列故障診斷方法。該方法首先對故障的特征量進行提??;然后使用非線性激活函數(shù)對每一層賦予不同權(quán)重;最后經(jīng)過卷積和門控網(wǎng)絡(luò)的結(jié)合,進行故障特征的自動提取。該方法采用了堆疊式結(jié)構(gòu),將CNN作為前置網(wǎng)絡(luò),提取了數(shù)據(jù)的空間特征,選用門控制循環(huán)單元(gated recurrent unit,GRU)進一步挖掘數(shù)據(jù)在時間維度上的特征,使用自適應(yīng)批量歸一化(adaptive batch normalization,AdaBN)函數(shù)實現(xiàn)分類結(jié)果的精確輸出。試驗結(jié)果表明,本文方法在分類和抗噪方面效果更好。
當(dāng)一個光伏串出現(xiàn)開路故障時,光伏陣列輸出電流的減少部分等于故障串的電流。在開路情況下,當(dāng)前電流標(biāo)的為:
(1)
式中:RIO為當(dāng)光伏陣列中存在開路故障時電流標(biāo)的的值;Isc為光伏陣列的開路電流;Im為光伏陣列無故障狀態(tài)下最大功率點(max power point,MPP)的輸出電流;NP為光伏陣列的串的數(shù)量。
(2)
式中:α為正常運行時,當(dāng)前指標(biāo)與開路故障時的比值。
類似地,當(dāng)一個光伏串中發(fā)生光伏模塊短路時,光伏陣列輸出電壓的降低部分等于短路光伏模塊的電壓?;谶@種情況的電壓標(biāo)的為:
(3)
式中:RVS為當(dāng)一個光伏串中存在短路光伏模塊時的電壓標(biāo)的;NS為光伏陣列組件數(shù)量;Voc為光伏陣列的開路電壓。
(4)
式中:β為正常運行時當(dāng)前指標(biāo)與短路故障時的比值。
當(dāng)光伏陣列的一部分被遮蔽而另一部分完全暴露在太陽輻照下時,光伏陣列的輸出電流急劇減小。在部分遮光期間,輸出電流可以計算如下:
(5)
式中:Imp為陣列輸出電流;Gp為部分遮光條件下光伏陣列的最大接收輻射;KI為短路電流溫度系數(shù);Imm-STC為標(biāo)準(zhǔn)測試條件下光伏組件MPP的電流;TSTC=25 ℃。
大多數(shù)退化故障可表現(xiàn)為光伏陣列的退化光伏模塊的串聯(lián)等效電阻累加。而光伏模塊的嚴(yán)重退化可導(dǎo)致光伏支架短路故障。電阻只是在一個范圍之內(nèi)。因此,本文只考慮退化故障,也就是光伏陣列串聯(lián)電阻增加的情況。
在實際應(yīng)用中,光伏板裂紋處的灰塵堆積會影響光透率,并導(dǎo)致灰塵堆積處出現(xiàn)集熱效應(yīng)。這被稱為熱斑故障。在熱斑故障下,光伏電池自身會變成負(fù)載并導(dǎo)致溫度繼續(xù)升高,被稱為低電阻熱斑效應(yīng)。此時,光伏板電壓表示為:
(6)
式中:a為二極管個數(shù);N為組件個數(shù);T為電池二級管PN結(jié)絕對溫度;q為單位電荷;VD為二極管導(dǎo)通電壓。
CNN的本質(zhì)是1個多層感知機(multi-layer perceptron,MLP)。其能在計算機科學(xué)領(lǐng)域廣泛使用的原因之一是它通過局部連接及共享權(quán)值的方式,一方面降低了權(quán)值數(shù)量、優(yōu)化了網(wǎng)絡(luò)結(jié)構(gòu),另一方面降低了過擬合的風(fēng)險。其中,二維、三維卷積神經(jīng)網(wǎng)絡(luò)用于圖像和視頻處理。一維卷積神經(jīng)網(wǎng)絡(luò)(one dimensional convolutional neural network,1D-CNN)在文本分類和時間序列預(yù)測方面已取得成功應(yīng)用。本文研究的故障特征是通過一維信號提取的。因此,本文采用1D-CNN對其進行研究。
在1D-CNN中,前一層一維卷積經(jīng)過前向傳播,到后一層的神經(jīng)元輸入。
(7)
(8)
傳統(tǒng)CNN對時序特征并不敏感。如果信號中有伴隨時序特征,使用CNN會造成診斷不準(zhǔn)確。而循環(huán)門控網(wǎng)絡(luò)能夠有效解決這些問題。因此,本文引入了GRU。
門控神經(jīng)網(wǎng)絡(luò)是循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)的一種。和LSTM一樣,RNN是為解決長期記憶和反向傳播中的梯度問題所提出的。因RNN在處理時間順序性問題方面效果較好,在處理時間序列時是一種非常有效的深度學(xué)習(xí)網(wǎng)絡(luò)。GRU的結(jié)構(gòu)較LSTM網(wǎng)絡(luò)更加簡單,而且效果也很好。GRU模型結(jié)構(gòu)是將重置門和更新門結(jié)合。GRU可以調(diào)節(jié)遞歸單元的信息流,使每個遞歸單元自適應(yīng)地獲取不同時間尺度下的特征,以調(diào)節(jié)遞歸單元的信息流。
首先,通過上一個傳輸狀態(tài)ht-l和當(dāng)前輸入xt獲取兩個門控狀態(tài)。其中:決定遺忘程度的重置門如式(9)所示;決定保留和遺忘信息的更新門如式(10)所示。
rt=σ[Wr(ht-l,xt)]
(9)
式中:σ為sigmoid函數(shù),可以將數(shù)據(jù)變換為0~1范圍內(nèi)的數(shù)值,從而得到門控信號;Wr為遺忘門權(quán)重參數(shù);rt為重置門。
zt=σ[Wz(ht-l,xt0]
(10)
式中:Wz為更新門的權(quán)重參數(shù);zt為更新門。
然后,得到門控信號,使用重置門得到重置后的數(shù)據(jù),再與輸入xt進行拼接,通過激活函數(shù)tanh將數(shù)據(jù)變?yōu)?1~+1的范圍內(nèi)。具體表達式為:
(11)
最后,計算隱含狀態(tài)ht。在這個階段,同時進行了遺忘和記憶兩個步驟。具體表達式為:
(12)
為了彌補CNN對時間步順序不敏感的缺陷,本文引入GRU來解決這個問題。而為了提高所提模型方法的域適應(yīng)能力,本文引入了AdaBN優(yōu)化分類器。
域適應(yīng)是故障診斷中一個現(xiàn)實且具有挑戰(zhàn)性的問題。當(dāng)分類器在一個工作環(huán)境中收集的樣本進行訓(xùn)練時,很難從該工作環(huán)境中對樣本進行分類。AdaBN在泛化方面可以較為明顯地提高網(wǎng)絡(luò)模型的分類能力。
首先,給定預(yù)訓(xùn)練的模型和目標(biāo)域,通過串聯(lián)神經(jīng)元作用于目標(biāo)域所有數(shù)據(jù)。
Xj=[xj(1),xj(2),...,xj(m),...,xj(n)]
(13)
然后,計算目標(biāo)域的均值和標(biāo)準(zhǔn)差:
(14)
(15)
最后,計算批量歸一化輸出:
(16)
式中:j為神經(jīng)元;m為目標(biāo)域測試數(shù)據(jù);γj和βj為要學(xué)習(xí)的參數(shù)。
本文所提出的方法可識別故障的時間特性,在GRU之前使用1D-CNN作為預(yù)處理步驟來處理長時間序列,可將故障在時間順序上進行分類。CNN通過卷積層獲取原始序列數(shù)據(jù)的特征。把CNN特征作為GRU的輸入,按照時間序列處理其特征,并引入AdaBN,確定診斷模型。在訓(xùn)練模型時,先用訓(xùn)練數(shù)據(jù)集進行訓(xùn)練;達到預(yù)設(shè)效果后,使用測試集進行測試;通過準(zhǔn)確率方面的對比,可得到用于光伏陣列領(lǐng)域的適應(yīng)性故障診斷模型。
此模型可用在多分類問題中:在使用分類層時,用Softmax作為激活函數(shù);在選擇模型的損失函數(shù)時,用分類交叉熵?fù)p失函數(shù)。因交叉熵通過比較模型訓(xùn)練結(jié)果概率分布與真實分布之間的不同,將實際輸出(概率)與期望輸出(概率)作差。差值越小,則概率分布就越接近真實情況。
(17)
式中:c為交叉熵;y為期望的輸出;a為神經(jīng)元實際輸出,a=σ(z),z=∑Wj×xj+b。
在訓(xùn)練神經(jīng)網(wǎng)絡(luò)過程中,通過梯度下降法更新W和b,因此需要計算損失函數(shù)對W和b的導(dǎo)數(shù)。
(18)
(19)
權(quán)重的更新會受到σ(z)-y這一項結(jié)果的影響。誤差的大小與更新頻率負(fù)相關(guān)。
本文運用電力仿真軟件(power simulation,PSIM)與Simulink軟件聯(lián)合仿真光伏陣列電路,在PSIM中建立了故障電路,并在Simulink中建立了控制電路。在Simulink中,將溫度參數(shù)設(shè)置為25 ℃、輻照度設(shè)置為1 000 W/m2。仿真時,由Simulink給定參數(shù)以及收集PSIM中電路的開路、短路,光伏組件的陰影、退化及低電阻熱斑的故障情況下的數(shù)據(jù),并保存為數(shù)據(jù)集。
根據(jù)輻照度600 W/m2、1 000 W/m2、1 600 W/m2,本文分別建立了A、B、C這3個數(shù)據(jù)集。每個數(shù)據(jù)集的樣本數(shù)量為400。通過重疊采樣進行數(shù)據(jù)增強后,每個故障共有900個樣本。試驗選用每個故障樣本中66.7%的數(shù)據(jù)作為訓(xùn)練集、16.7%的數(shù)據(jù)作為測試集,剩下的數(shù)據(jù)作為驗證集。數(shù)據(jù)集標(biāo)簽0~5分別代表正常和其他5種故障類型。
為了選擇最佳的模型框架,本文進行了測試試驗,通過使用不同自適應(yīng)學(xué)習(xí)優(yōu)化器進行訓(xùn)練和測試。試驗通過調(diào)整學(xué)習(xí)率、優(yōu)化器的測試準(zhǔn)確率和損失值,確定最佳模型優(yōu)化器和學(xué)習(xí)率。對試驗結(jié)果進行比較,可得到最終模型優(yōu)化器選擇AdaBN,學(xué)習(xí)率為0.1%。不同激活函數(shù)的試驗結(jié)果如表1所示。
表1 不同激活函數(shù)的試驗結(jié)果
本文為了實現(xiàn)更強的適應(yīng)性,在試驗時依次選取數(shù)據(jù)集A、B、C中的2個集合合并后作為訓(xùn)練集,剩下1個作為測試集,以達到交叉驗證。另外,為保證結(jié)果的有效性,規(guī)定每次試驗訓(xùn)練都歷經(jīng)200步、訓(xùn)練50次。通過8組試驗,本文模型(1D-CNN+RGU)在不同參數(shù)下的試驗結(jié)果如表2所示。
表2 本文模型在不同參數(shù)下的試驗結(jié)果
通過對比準(zhǔn)確率和損失值,可看出編號8的參數(shù)在準(zhǔn)確率和損失率方面優(yōu)于其他7組結(jié)果,因此確定該參數(shù)作為后續(xù)試驗參數(shù)。本文試驗在Windows10系統(tǒng)中實現(xiàn),使用Python中的TensorFlow框架。
通過試驗確定最優(yōu)參數(shù)、優(yōu)化器和學(xué)習(xí)率之后,考慮到工況相差較大可能會引起準(zhǔn)確率降低的現(xiàn)象,分別通過不同數(shù)據(jù)集進行交叉訓(xùn)練和測試。
本文模型故障分類混淆矩陣如圖1所示。
圖1 本文模型故障分類混淆矩陣
由圖1可知,本文模型整體結(jié)果較好,而對陰影和熱點故障的分類效果并不非常顯著。分析其原因,是由于2類故障在其故障特征上的相似性導(dǎo)致的。
不同模型的損失值和準(zhǔn)確率如圖2所示。
圖2 不同模型的損失值和準(zhǔn)確率
通過1D-CNN+GRU、1D-CNN+LSTM和1D-CNN方法對比可知:在損失值方面,1D-CNN+GRU比其他2種方法更低;在準(zhǔn)確率方面,1D-CNN+GRU比其他2種方法更高。該結(jié)果證明了本文模型具有更好的分類能力和更強的域自適應(yīng)能力。同時,從圖2可以看出,經(jīng)GRU提取的時空特征分類明顯,每類故障分布間隔規(guī)則有序,類內(nèi)的間距很小,類間的間距較大。由此可以說明本文方法的時空特征效果更好,能夠從不同類型故障提取到時空特征。1D-CNN+GRU在光伏故障分類中具有更高的準(zhǔn)確率,并且穩(wěn)定性更高。
不同模型準(zhǔn)確率對比如表3所示。
表3 不同模型準(zhǔn)確率對比
通過測試數(shù)據(jù)集A+B,迭代50次后的準(zhǔn)確率分別為93.98%、94.53%、96.28%。由此可知,本文提出的診斷模型在準(zhǔn)確率方面優(yōu)于其他2種方法。
在實際系統(tǒng)中,由于現(xiàn)場環(huán)境和大量接入的電力電子設(shè)備,采集到的光伏陣列數(shù)據(jù)會伴隨噪聲信號。因此,在試驗中,為了更好地模擬實際環(huán)境對光伏陣列的的影響,對現(xiàn)有采集到的數(shù)據(jù)疊加了信噪比在-4~+4 dB之間的高斯噪聲,再測試并比較所提方法與其他方法在此情景下的準(zhǔn)確率。
不同噪聲情況模型準(zhǔn)確率對比如表4所示。
表4 不同噪聲情況模型準(zhǔn)確率對比
由表4可知,本文方法的抗噪能力較其他2種算法效果更好,可用于現(xiàn)場環(huán)境下的故障分類。
本文根據(jù)光伏陣列運行時電信號在時間維度上蘊含著豐富的特征信息,利用RNN善于處理時序問題的能力,挖掘出數(shù)據(jù)樣本內(nèi)在的時序特征。首先,提出故障診斷模型,采用堆疊式結(jié)構(gòu),把CNN作為前置網(wǎng)絡(luò),提取數(shù)據(jù)的空間特征。然后,將提取的特征作為后置網(wǎng)絡(luò)GRU的輸入,進一步挖掘數(shù)據(jù)在時間維度上的特征。最后,把GRU的輸出導(dǎo)入AdaBN函數(shù),實現(xiàn)了故障分類。通過比較1D-CNN、1D-CNN+LSTM和本文所設(shè)計的1D-CNN+GRU模型的分類結(jié)果,驗證了本文方法更具精確性。為進一步驗證本文方法的適用能力,在不同噪聲下進行了測試。結(jié)果表明,本文方法在分類方面更具優(yōu)越性以及在噪聲環(huán)境下更具抗噪性。本文方法可以擴展到電力系統(tǒng)及其他系統(tǒng)信號異常的故障診斷中,具有良好的推廣應(yīng)用價值。