原 琳,程海軍,趙鳳賢
(遼寧工業(yè)大學(xué)電氣工程學(xué)院,錦州121001)
光伏發(fā)電以其能源清潔無污染、資源可再生等優(yōu)點被越來越多的應(yīng)用到發(fā)電系統(tǒng)中。然而,光伏電池的轉(zhuǎn)換效率較低,一般為15%~20%,所以其發(fā)電效率是光伏發(fā)電系統(tǒng)面臨的主要問題。
光伏電池的輸出特性具有明顯的非線性,其輸出功率隨環(huán)境溫度、光照強度等外界條件的改變而實時變化,且任意時刻只存在唯一的最大功率輸出點。因此,若想光伏發(fā)電系統(tǒng)得到更廣泛的應(yīng)用,就必須控制光伏陣列的輸出電壓和電流,使光伏陣列在最大功率點位置輸出功率,以提高光伏系統(tǒng)的發(fā)電效率,即對光伏陣列進行實時的最大功率點跟蹤MPPT(maximum power point tracking)。
光伏陣列最大功率點跟蹤,實際上是對光伏陣列輸出功率動態(tài)尋優(yōu)的過程。理想的無遮擋情況下,光伏陣列的功率-電壓(P-U)輸出特性曲線為單峰特性,存在唯一極值點。但光伏陣列安裝在戶外,實際運行過程中,難免會出現(xiàn)被樹蔭、烏云、建筑物等遮擋的現(xiàn)象,此時其P-U輸出特性曲線會呈現(xiàn)多峰特性,即存在多個極值點。
目前比較常規(guī)的最大功率點跟蹤方法,如擾動觀察法、電導(dǎo)增量法、恒定電壓法等[1~6]及其改進算法[7~9],主要都是針對光伏陣列無遮擋、P-U輸出曲線為單峰值特性情況下的跟蹤方法,其特點是尋找到第1個峰值點后就停止搜索。如果光伏陣列被部分遮擋,即存在多個極值點,常規(guī)的最大功率點跟蹤方法因易陷入局部極值點的跟蹤,難以跟蹤到全局最優(yōu)點而失效,降低了系統(tǒng)的發(fā)電效率。
為解決這一難題,國內(nèi)外許多學(xué)者研究了光伏陣列局部遮擋情況下的最大功率點跟蹤方法。文獻[10]提出粒子群優(yōu)化PSO(particle swarm optimization)算法,但后期粒子易趨于同一化,失去多樣性,跟蹤精度相對較低;文獻[11]提出人工魚群算法,但計算量較大,跟蹤速度較慢。
為更好地解決光伏陣列遮擋情況下的最大功率點跟蹤問題,本文提出了一種自適應(yīng)果蠅優(yōu)化算法 AFOA(adaptive fruit fly optimization algorithm)。該算法對原始果蠅算法的初始位置及尋優(yōu)步長進行改進,利用其全局尋優(yōu)性能,可在遮擋情況下跟蹤到全局最優(yōu)值,避免陷入局部極值點的跟蹤;且每隔2分鐘啟動擾動觀察法,以實時監(jiān)測外部環(huán)境是否改變。此方法將光伏陣列最大功率點的搜索和跟蹤分開進行,充分考慮了兩者的獨立性和相關(guān)性,有效提高了光伏發(fā)電系統(tǒng)的效率。
本文使用帶有旁路二極管的光伏陣列等效電路模型,其等效電路如圖1所示。Iph1、Iph2分別為每個光伏組件的光生電流,Io為反向飽和電流,Rs為光伏電池串聯(lián)內(nèi)阻。
以光伏組件存在2種不同光照強度為例進行研究,如圖2所示,S1表示遮擋情況下的光照強度,S2為無遮擋時的光照強度,且S2>S1。因為光生電流正比于光照強度,假設(shè)S1對應(yīng)的光生電流為Iph1,S2對應(yīng)的光生電流為Iph2,參照文獻[12-13]對串聯(lián)光伏組件遮擋情況的輸出特性分析,得出光伏組件存在遮擋情況,即光照不均勻情況下的光伏陣列輸出電壓U和電流I的分段對應(yīng)關(guān)系,可表示為
式中:q為電荷常數(shù),q=1.6×10-19C;n為二極管影響因子(2.8±0.152);T 為絕對溫度,K;k為玻爾茲曼常數(shù),k=1.38×10-23J/K;Rs為電池的串聯(lián)內(nèi)阻;Io為反向飽和電流;Iob=5.95 μA;
輸出功率可表示為
光生電流Iphi可表示為
式中:Sref為標(biāo)準(zhǔn)光照強度,Sref=1 000 W/m2;Si為當(dāng)前實際光照強度;ΔT=T-Tref,其中T為光電池實際溫度,Tref為標(biāo)況下溫度,Tref=25℃;Iph為光伏電池標(biāo)況下(T=25 ℃,S=1 000 W/m2)的光生電流;Ki為光生電流溫度系數(shù),K1=0.005 78 A/℃。
根據(jù)前文所述P、U的關(guān)系,在Matlab仿真軟件中建立光伏陣列仿真模型,得到其P-U輸出曲線,如圖3所示。光伏組件進行并聯(lián)或串并聯(lián)相結(jié)合時,如存在遮擋現(xiàn)象,其P-U輸出曲線與串聯(lián)情況類似,均呈現(xiàn)如圖3所示的多峰現(xiàn)象,不再贅述。
光伏發(fā)電系統(tǒng)常用的電路結(jié)構(gòu)有單級結(jié)構(gòu)和兩級結(jié)構(gòu)。單級結(jié)構(gòu)是將最大功率點跟蹤與逆變控制同時進行,全部由逆變電路完成,控制方式復(fù)雜;兩級結(jié)構(gòu)是將最大功率點跟蹤與逆變控制分開進行,完成了控制變量的解耦,與單級電路結(jié)構(gòu)相比,控制方法相對簡單,易于實現(xiàn)。因此,本設(shè)計采用兩級結(jié)構(gòu),光伏發(fā)電系統(tǒng)兩級結(jié)構(gòu)的電路控制方式中,前級完成最大功率點跟蹤控制,最常采用的電路結(jié)構(gòu)是Boost電路,如圖4所示。
對圖4所示的Boost電路空間狀態(tài)模型進行線性化處理,可表示為
由式(4)可知,通過占空比D可以對光伏發(fā)電系統(tǒng)的工作點進行調(diào)節(jié)。因此,對光伏發(fā)電系統(tǒng)的最大功率點跟蹤實際就是通過調(diào)節(jié)Boost電路的占空比,使光伏陣列的阻抗等于外電路的等效阻抗,從而使系統(tǒng)輸出功率最大。
果蠅優(yōu)化算法是臺灣大學(xué)潘文超博士于2011年提出的仿生物智能算法,該算法是根據(jù)果蠅覓食行為而衍生出的一種全局智能尋優(yōu)方法[14-15]。首先計算出果蠅個體所在位置與坐標(biāo)原點距離的倒數(shù),作為味道濃度判定值;其次,將計算出的味道濃度判定值代入尋優(yōu)函數(shù),求出果蠅個體位置的味道濃度值;再次,比較得出果蠅群體中的最優(yōu)個體,并記錄其坐標(biāo)值及此時對應(yīng)的函數(shù)值,果蠅群體利用視覺飛向該位置;最后,進行迭代尋優(yōu)。
果蠅優(yōu)化算法具有初始參數(shù)少、原理簡單、收斂速度快等優(yōu)點。但原始果蠅優(yōu)化算法也存在一些不足之處,如果蠅的初始位置及搜索步長的設(shè)置均會對算法的執(zhí)行速度及運行效率產(chǎn)生較大影響。本文所提算法,對原始果蠅算法中果蠅初始位置和搜索步長進行了改進,提高了運算速度,平衡了全局和局部搜索能力。
果蠅群體的初始位置會對算法的求解產(chǎn)生很大的影響,如果初始位置與理論位置偏離較遠,會降低算法的執(zhí)行速度及搜索效率,甚至難以搜索到最優(yōu)值;如果初始位置靠近最優(yōu)解,算法將會很快找到最優(yōu)解,極大的提高算法的搜索效率。由此可見,為提高算法的搜索效率及精度,合理設(shè)置果蠅搜索初始值尤為重要。借鑒開路電壓法最大功率點跟蹤原理,光伏陣列最大功率點處的電壓一般為開路電壓的0.78倍。所以,本方法中果蠅群體的初始位置設(shè)為0.78 UOC,其中UOC為光伏板開路電壓。
果蠅搜索迭代過程中,其步長決定了果蠅的搜索方向和距離,因此,果蠅的步長對其搜索能力具有很大的影響。原始果蠅算法中選擇固定搜索步長,一定程度上限制了果蠅算法的搜索能力。本方法采用自適應(yīng)步長進行搜索,即選擇相鄰2次搜索的最優(yōu)值,兩者的差加上1個常數(shù)作為當(dāng)代果蠅的搜索步長,有效平衡了算法的局部尋優(yōu)能力和全局尋優(yōu)能力。
光伏陣列最大功率點跟蹤的本質(zhì)是對光伏陣列輸出的P-U曲線進行動態(tài)尋優(yōu)的過程,即找到輸出功率的最大值。
果蠅優(yōu)化算法在目標(biāo)函數(shù)尋優(yōu)方面,全局搜索能力較強。首先根據(jù)果蠅個體自身的嗅覺,搜索到全局最大功率點位置;然后按照一定的搜索步長,逐步到達最大功率點位置;通過比較每個果蠅個體搜索到的最大功率值,選出其中的最大值作為整個種群搜索的最大功率值。
改進的果蠅優(yōu)化算法最大功率點的跟蹤過程如下。
步驟1初始化參數(shù)。
最大迭代次數(shù)Nmax,種群規(guī)模 Sp,果蠅群體初始電流值I-axis,初始電壓值U-axis。為減少尋優(yōu)時間,提高尋優(yōu)精度,本文中令U-axis=0.78 UOC。
步驟2設(shè)定步長值。
原始果蠅算法中,迭代步長的函數(shù)為一常量,容易導(dǎo)致尋優(yōu)前期收斂速度較慢,后期尋優(yōu)精度較差的問題。本文采用變步長的尋優(yōu)方式,為果蠅覓食行為設(shè)定隨機步長和方向,Ii和Ui可分別表示為
式中:Ii為此時的電流值;Ui為此時的電壓值;(ΔP+θ)rand()為尋優(yōu)算法的搜索步長值;ΔP為相鄰兩代果蠅搜索到的功率值的差;θ為常量,取0.01,引入θ的目的是保證每次搜索的有效性;rand()是取值為[0,1]的隨機數(shù)。
步驟3求解味道濃度判定值Si。
初始階段,無法準(zhǔn)確判斷最大功率點的位置,故需要先估算出果蠅個體與最初設(shè)定點之間的起始距離D及味道濃度判定值Si,即
步驟4求解功率Pi。
將計算出的味道濃度判定值Si代入到功率計算方程中,求出每個果蠅個體位置對應(yīng)的功率值Pi。
步驟5尋找最優(yōu)個體。
找到處于功率最大值的果蠅個體,即
步驟6記錄最優(yōu)值。
記錄功率最優(yōu)值,并使果蠅個體利用視覺向該位置飛去,即
步驟7迭代尋優(yōu)。
通過迭代尋優(yōu)的方法跟蹤到光伏陣列的最大功率點;以(I-best,U-best)為果蠅初始位置,重復(fù)步驟2~步驟5;將每次跟蹤到的功率值與上一次的功率值比較,若優(yōu)于上一次功率值,則執(zhí)行步驟6,直至達到最大迭代次數(shù)。
步驟8判斷外界環(huán)境是否變化。
溫度、光照等外界環(huán)境的變化,會改變光伏陣列的輸出特性。如最常發(fā)生的烏云飄過會使光伏陣列的光照條件發(fā)生改變,對光伏陣列的輸出功率產(chǎn)生巨大影響。
為增強跟蹤算法的實時性,設(shè)置每隔一段時間對光伏陣列進行1次小步長擾動。如果不間斷地對光伏陣列進行實時擾動觀察,勢必會影響光伏發(fā)電系統(tǒng)的輸出效率及穩(wěn)定性,使輸出功率值不斷波動。綜合考慮外界環(huán)境是否變化的客觀因素,設(shè)置每2分鐘進行1次擾動觀察較為合理。即以當(dāng)前功率值為中心,向左擾動1次,向右擾動1次,求出其對應(yīng)功率值分別為P-和P+。 若P>P_且P>P+,則認為外界環(huán)境沒有改變,此時光伏發(fā)電系統(tǒng)仍工作在最大功率點處;若P<P-或P<P+,則認為外界環(huán)境發(fā)生改變,跟蹤到的功率點已不是此時系統(tǒng)的最大功率點,則重啟跟蹤系統(tǒng),重新進行最大功率點跟蹤。
采用每隔固定時間對光伏發(fā)電系統(tǒng)進行1次小步長擾動的方法,既實現(xiàn)了對系統(tǒng)的實時監(jiān)測,又避免頻繁擾動使系統(tǒng)產(chǎn)生的振蕩。
基于自適應(yīng)果蠅算法的最大功率點跟蹤流程如圖5所示。
為驗證算法的有效性,在Simulink/Matlab中進行系統(tǒng)仿真。選擇阿特斯公司的CS6K型光伏陣列,共包含60片單晶組件,最大輸出功率Pmax=199 W,最佳工作電壓Ump=28.5 V,最佳工作電流Imp=6.95 A,開路電壓UOC=35.1 V,短路電流ISC=7.54 A。以此仿真模型為例,分別在光照均勻及遮擋(光照不均)情況下,對AFOA、P&O及PSO算法的最大功率點跟蹤效果進行比較。
標(biāo)準(zhǔn)情況即光照強度1 000 W/m2,溫度25℃,且無遮擋。AFOA算法中,迭代次數(shù)Nmax=5,種群規(guī)模Sp=20,初始電壓值U-axis=27.4 V,AFOA與P&O算法中的擾動步長均設(shè)定為0.1。2種方法對光伏陣列的最大功率點跟蹤效果如圖6所示。
由圖6可知,光照均勻無遮擋情況下,P&O算法,由于擾動一直存在,使光伏陣列輸出功率具有波動性;AFOA算法只在判斷外界條件是否改變時才進行擾動,所以每2 min才出現(xiàn)一次波動現(xiàn)象。無遮擋情況下,雖然AFOA算法與P&O算法都跟蹤到了光伏陣列的最大功率點,但AFOA算法減小了系統(tǒng)輸出的波動性,提高了系統(tǒng)的穩(wěn)定性。
初始條件下,光伏陣列光照強度為1 000 W/m2,在第4 min時出現(xiàn)烏云遮擋現(xiàn)象,遮擋部分的光照強度為800 W/m2,此時光伏陣列輸出功率存在2個極值點。2種算法的參數(shù)設(shè)置與第4.1節(jié)相同,最大功率點跟蹤效果如圖7及表1所示。
由圖7可知,在第4 min光伏陣列存在遮擋狀況時,AFOA算法跟蹤到的最大功率值為119.9 W,P&O算法跟蹤到的最大功率值為88.26 W。可見,P&O算法在遮擋情況下沒有跟蹤到全局最大功率點,而是陷入了局部極值的跟蹤;AFOA算法在遮擋情況下仍然表現(xiàn)出了較好的跟蹤效果,搜索到了全局最大功率點。與P&O算法相比,AFOA算法的效率提高了35.8%。
光伏陣列的遮擋情況與第4.2節(jié)相同。PSO算法中跌代次數(shù)為5,粒子數(shù)為20,學(xué)習(xí)因子1、2取值均為1.496 2,慣性權(quán)重取0.729 8;AFOA算法的參數(shù)設(shè)置與第4.1節(jié)相同。2種算法的最大功率點跟蹤效果如圖8所示。
由圖8可知,與AFOA算法相比,PSO算法前期跟蹤效果存在震蕩現(xiàn)象,后期粒子趨于同一化,跟蹤精度下降;AFOA算法則一直表現(xiàn)出良好的跟蹤效果,提高了系統(tǒng)的跟蹤效率。
通過對遮擋情況下光伏陣列最大功率點跟蹤控制的研究,本文提出一種自適應(yīng)果蠅優(yōu)化算法。對傳統(tǒng)果蠅算法中果蠅初始位置的設(shè)置及尋優(yōu)步長進行了改進,并在尋優(yōu)過程中與擾動觀察法相結(jié)合,每2 min對外界環(huán)境是否改變進行判斷。仿真結(jié)果表明,采用自適應(yīng)果蠅優(yōu)化算法可以快速準(zhǔn)確地搜索到全局最優(yōu)點,避免陷入局部極值的跟蹤,提高了系統(tǒng)的發(fā)電效率。