李云鳳,雷勇,杜佳耘,劉暉
(四川大學電氣工程學院,四川省成都市 610065)
實際應用中,由于云層、灰塵及建筑物的遮擋,光伏(photovoltaic, PV)陣列暴露于不同的光照強度和溫度偏差中,即部分遮蔽條件(partial shading condition, PSC)下。此時,PV的功率–電壓曲線將呈現多峰特性[1]。常規(guī)最大功率點跟蹤(maximum power point tracking, MPPT)容易陷入局部最大功率點(local maximum power point, LMPP),導致PV系統(tǒng)的高功率損耗。因此,PSC下的MPPT對于維持PV系統(tǒng)的高效運行至關重要[2-3]。
為實現PSC下的MPPT,國內外研究人員在拓撲結構和算法上做了大量嘗試[4]。采用陣列拓撲結構優(yōu)化的主要思路是根據陰影情況,將發(fā)生遮擋的電池組件進行補償或陣列重構[5]。這種思路有效地解決了光伏陣列輸出特性曲線發(fā)生畸形的問題,但實現起來需要增加額外的硬件電路,系統(tǒng)成本高,且控制較為復雜。根據光伏陣列的輸出特性,對控制算法進行優(yōu)化不用添加大量硬件,受到國內外學者的廣泛關注。基于傳統(tǒng)MPPT算法的復合型算法尋優(yōu)時間較長,尋優(yōu)精度受步長影響較大[6];模糊控制算法對控制器的要求較高,實際應用較少[7];基于大數據的預測算法,其目標函數可能因訓練數據不足而陷入局部極值點,對突發(fā)性的陰影遮擋考慮較少,且運算量較大[8];基于生物行為的仿生算法因其較好的尋優(yōu)性能成為目前最受歡迎的算法。
近年來,國內外學者提出許多仿生算法的MPPT控制策略。Li H[9]等人提出總體分布粒子群算法,該算法將可能的峰值電壓設置為粒子初始位置,確保粒子群算法(particle swarm optimization, PSO)只需在很小的搜索區(qū)域內快速有效地找到全局最大功率點(global maximum power point, GMPP)。但因PSO的固有隨機性,該算法仍有陷入局部峰值點的風險,且尋優(yōu)過程會造成較大電壓波動,對系統(tǒng)穩(wěn)定性有一定影響。Yang B[10]等人采用改進樽海鞘群算法,并將原始樽海鞘擴展為具有多個獨立的樽海鞘鏈,以提高算法的全局開發(fā)和局部探索能力,但該算法求解精度不高,并且收斂緩慢。Padmanaban S[11]等人模擬領導者、偵察者和追隨者提出改進的人工蜂群算法,但其收斂速度過慢、局部搜索能力較弱。Titri S[12]等人基于新信息素更新策略的蟻群優(yōu)化算法設計了MPPT控制器,該算法具有較高精度和魯棒性,但同樣存在局部搜索能力較弱,收斂時間較長等問題。
受蟻群算法(ant colony optimization, ACO)和細菌覓食算法(bacterial foraging optimization algorithm, BFOA)的啟發(fā),本文提出PSC下改進的MPPT算法。ACO由信息素指導尋優(yōu),其全局開發(fā)能力較強[13]。BFOA中的趨化使得BFOA具有較強的局部搜索能力[14]。因此,本文將這兩種算法融合實現優(yōu)勢互補,同時加入信息素擴散機制進一步提高算法的全局開發(fā)能力。全局開發(fā)和局部探索對于仿生算法至關重要,合理平衡2者的競爭關系可以有效增加收斂速度,減少尋優(yōu)時間,提高跟蹤精度,然而已有研究算法并未對該問題進行討論及優(yōu)化[15]。為平衡算法全局與局部,本文引入多態(tài)蟻群概念模擬更加真實的蟻群系統(tǒng)?;谝陨嫌懻摚疚奶岢龆鄳B(tài)蟻群–細菌覓食算法(polymorphic ant colony - bacterial foraging algorithm, PACO-BFOA)以實現在PSC下光伏系統(tǒng)的GMPP跟蹤,并將擾動觀察法(perturb and observe, P&O)、ACO和BFOA進行仿真對比分析,結果證明了PACO-BFOA算法的有效性和優(yōu)良性能。
光伏電池由一個電流源Iph、并聯二極管、等效串聯電阻Rs和等效旁路電阻Rp組成。通常將光伏電池串聯和并聯,得到能提供期望功率的光伏陣列。光伏電池輸出伏安特性[16]
式中:I與U為光伏陣列的輸出電流和電壓;光伏電池的光生電流Iph如式(2)所示;二極管反向飽和電流I0如式(3)所示;電子電荷q= 1.602 ×10-19C;二極管品質因數A∈(1, 2);玻爾茲曼常數k= 1.38 × 10-23J/K;T為絕對溫度;Rs一般小于1;Rp通常很大,故旁路電流Ip一般忽略不計[17]。
式中:Tref為光伏電池額定運行溫度;Tc為光伏電池實際工作溫度;s為光伏電池所處的光照強度;Isc為光伏電池短路電流;ki為電流變化溫度系數。
式中:Eg= 1.12 eV為半導體能級間隙;I0S為額定溫度和光照強度下二極管反向飽和電流。
由式(1)—(3)可以看出,光伏電池的運行高度依賴于溫度和光照強度。
實際運行中,光伏陣列可能處于PSC下。此時,光伏陣列中部分電池將出現反偏,它表現為負載消耗其他電池所產生的電能,并將所消耗的電能轉化為熱能,產生升溫現象,這種熱量的長時間積累會損壞單體電池或者封裝材料,造成光伏組件永久性損壞,這種現象即為熱斑現象[18]。
為防止該現象對光伏系統(tǒng)造成的損害,通常在多個電池兩端反向并聯一個旁路二極管。同時,每個光伏組件串末端連接一個阻斷二極管,以防止并聯光伏組件串之間的電壓失配引起反向電流[19]。二極管能避免熱斑效應,但也不可避免地改變光伏特性曲線。多個組件串并聯工作在PSC,得到圖1(b)所示的多峰值曲線,不同于均勻輻照溫度下圖1(a)的單峰曲線。因此,為最小化系統(tǒng)功率損失和組件的損害,光伏系統(tǒng)應盡量運行于GMPP。
仿生學家對螞蟻長期研究,發(fā)現整個蟻群系統(tǒng)能協(xié)同工作發(fā)揮出超越個體的智能。蟻群算法中,每只螞蟻在運動時會根據路徑長短釋放出相應濃度的信息素,后面經過該路口的螞蟻會以較大概率選擇信息量更大的路徑,如此便形成了正反饋機制。將功率作為自適應函數使用ACO實現PSC下GMPP的跟蹤,隨著迭代次數增加,最優(yōu)點附近的螞蟻數量越來越多,最終尋得最大功率點[20]。
PACO-BFOA在ACO原理上引入了信息擴散機制使蟻群系統(tǒng)間信息傳遞更充分,模擬多態(tài)蟻群來平衡局部和全局性能,并由細菌覓食趨化行為指導螞蟻的局部探索,進一步提高了算法的收斂穩(wěn)定性和尋優(yōu)能力。PACO-BFOA算法實現如圖2所示。
蟻群系統(tǒng)中加入信息素擴散機制后表現為在螞蟻M一定范圍內的其他螞蟻能夠感知M分泌擴散的信息素,并參考M的信息量而選擇一條新軌跡,該軌跡與M原軌跡存在或大或小距離[21]。當擴散的信息素越多時,其他螞蟻所受影響越大。
2.1.1 信息素擴散原理
以圖3路徑尋優(yōu)實例說明信息素擴散原理[22]。圖3中,從c到f有cdef和cbaf兩條路徑,假使cd和cb初始信息量相同。由于cd短于cb,M更可能在下一步移動到d。而若此前已有螞蟻M1從b移動到a(ba距離很短),M1分泌的信息素會進行擴散,cb與cd上的信息量相比,當cb信息素多到一定程度時,M將更可能選擇b為下一步目的地??梢钥闯鲂畔⑺財U散機制可以有效減少尋優(yōu)干擾。
2.1.2 信息素擴散模型
在ACO中加入信息素擴散機制后,信息量擴散在空間的濃度與距離關系大致服從高斯分布[22]。其中,距離信源越遠,擴散的信息素濃度越低,單只螞蟻的擴散模型如式(4)所示。
式中:x為與信源的距離;a表示信源分泌的信息量;b表示信源位置;c為標準方差,表征信息素擴散能力。
假使信源b初始信息量為a1,M經過b之后產生大小為a2的信息素,所有路徑的信息量用y表示。則在M經過b后,所有有關路徑上的信息量如式(5)—(7)所示。
式中:yk表示第k只螞蟻移動之后所有路徑的信息量;yk+1表示第k+1只螞蟻運動之后所有路徑的信息量;ρ表示信息素揮發(fā)系數,取值范圍為ρ∈[0,1]。
傳統(tǒng)ACO中,螞蟻的每一步只改變其當前經過路徑的信息量;而加入信息素擴散的算法模型中,會或大或小地改變其他路徑的信息量。該模型更貼近蟻群信息系統(tǒng),提高了蟻群系統(tǒng)內部協(xié)作能力,增強了蟻群算法的全局開發(fā)能力。
真實蟻群系統(tǒng)中的螞蟻各司其職以實現尋優(yōu)。然而,傳統(tǒng)單一的蟻群算法沒有考慮螞蟻間的動作差異,忽略蟻群系統(tǒng)的復雜性,所有的螞蟻進行同一種任務無法最大化蟻群系統(tǒng)的協(xié)作能力。
信息量大的地方容易出現最優(yōu)解,故產生信息素較多的偵察蟻主要通過趨化負責局域偵察;產生信息素較少的搜索蟻,主要負責全局探索[23]。因此PACO-BFOA主要由偵察蟻和搜索蟻平衡局部探索與全局開發(fā)。
BFOA中每個細菌代表一個解,存在趨化、繁殖和遷移3種基本行為[24]。趨化使得細菌具有良好的局部探索能力,其包括翻滾和游動。本文中,當前點信息素小于狀態(tài)轉移因子P0時,螞蟻模擬細菌朝任意方向φ(j)游動,定義該方向為翻滾后的前進方向;游動對翻滾的方向進行評估,若翻滾之后適應值得到了提高,則保持原翻滾的前進方向,否則再次進行翻滾[14]。螞蟻趨化操作如式(8)所示。
式中:j代表趨化次數;θ為螞蟻所在位置;S(j)為游動步長;λj為游動方向。
為保證算法在搜索前期具有較高的搜索速度;搜索后期具有更好的收斂性能,同時避免出現振蕩的現象,本文采用自適應步長來平衡局部搜索的快速性和收斂性,如式(10)所示。
式中:Smax為初始步長;I為最大迭代次數。
從式(10)可以看出,隨著迭代次數的增加,游動步長也相應減少,螞蟻逐漸尋得最優(yōu)位置。
為實現光伏系統(tǒng)的最大功率跟蹤輸出,將PV系統(tǒng)的功率PPV作為適應度函數。在外部條件確定的情況下,PV系統(tǒng)輸出功率主要由電壓決定。PV系統(tǒng)功能目標函數如式(11)所示。
式中:VPV代表光伏面板輸出電壓;IPV是面板輸出電流;T為面板溫度;G表示面板輻照度。
圖4為PSC下使用PACO-BFOA實現光伏系統(tǒng)MPPT的結構。PACO-BFOA功率跟蹤器輸入為光伏板電壓,輸出為占空比指令,由脈寬調制(pulse width modulation, PWM)模塊得到開關信號,控制絕緣柵雙極型晶體管(insulated gate bipolar transistor, IGBT)通斷,使系統(tǒng)運行于最大功率點。
使用PACO-BFOA實現PSC下光伏系統(tǒng)MPPT流程如圖5所示。圖5中:i為當前迭代次數;I為算法最大迭代次數;P0為狀態(tài)轉移因子。為了提高算法搜索快速性,需要對信息素分布有更為全面地了解,因此在可行域內均勻初始化蟻群:
為對比P&O、ACO、BFOA和PACO-BFOA算法的在線尋優(yōu)性能,本文實現了4種算法的MPPT仿真,并在PSC條件下,通過光照恒定、光照突變和光照緩慢變化3個算例對各算法進行分析研究。表1中為光伏系統(tǒng)仿真參數。其中,電壓電流均為光伏組件在額定光照、溫度下的數值。表2給出了PACO-BFOA參數,所有啟發(fā)式算法的采樣間隔選擇為0.006 s。
表1 光伏系統(tǒng)仿真參數Table 1 Simulation parameters of PV system
表2 PACO-BFOA參數Table 2 Parameters of PACO-BFOA
工作溫度25℃,光伏組件分別處于1000、800、600和400 W/m2的光照幅度。P&O、ACO、BFOA和PACO-BFOA的MPPT作用于光伏系統(tǒng),系統(tǒng)從0 s開始工作,得到圖6電壓、電流和功率曲線。
表3為圖6(c)中所標志關鍵點的當前時間點和對應功率值。根據圖6(c)和表3中功率列,PSC條件下,P&O算法陷入了局部最大功率點87.2 W,無法達到全局最大功率點。在線尋優(yōu)過程中,圖6(b)中ACO電流出現了較大的沖擊;BFOA算法所耗時間較長;相比與其他啟發(fā)式算法,PACO-BFOA尋優(yōu)過程中振蕩更小,并且由表3時間列得知其在0.1133 s時迅速收斂至GMPP。
表3 光照恒定下各算法功率關鍵點Table 3 Power key points of each algorithm under constant illumination
保持25℃溫度不變,0~0.5 s光照強度為1000、800、600和400 W/m2;在0.5 s,輻照度階躍變化為900、620、620和400 W/m2,此時最大功率點已經發(fā)生變化。4種算法得到電壓、電流與功率如圖7所示。表4為圖7(c)和(d)中所表示關鍵點的當前時間點和對應功率值。
根據圖7(c),比較表4中第1行和第2行功率得出當光照幅度發(fā)生突變,P&O依然處于局部最大功率點60.7 W。3種啟發(fā)式算法則均能較好跟蹤到GMPP,其中PACO-BFOA能夠更快更加平穩(wěn)地再次尋得GMMP。由圖7(d),比較表4中第5行與3、4行,光照幅度突變后,PACOBFOA跌落功率僅為58 W,且其他兩種啟發(fā)式算法再次尋優(yōu)則需要更多時間。此外,由圖7(b)看出ACO和BFOA會產生更大程度的電流沖擊。
表4 光照突變下各算法功率關鍵點Table 4 Power key points of each algorithm under irradiance mutation
為模擬自然界天氣的緩慢變化,仿真時間由初始t= 0.5 s到t= 1.5 s,太陽輻照度從1000、800、600和400 W/m2漸變?yōu)?80、780、580和380 W/m2。PACO-BFOA、ACO、BFOA和P&O對應的MPPT控制器運行特性曲線如圖8所示。
表5為圖8(c)中所標志關鍵點的當前時間點和對應功率值。根據圖8(c),盡管P&O擁有較快尋優(yōu)速度,但其不可避免會陷入LMPP。當檢測到環(huán)境發(fā)生變化并再次尋優(yōu)過程中,圖8(b)得出ACO依舊會產生相對強烈的電流沖擊。根據表5功率列及圖8(c),相比于ACO和BFOA,PACOBFOA再次尋優(yōu)耗時更少,并且功率跌落較小為127.8 W;相較于BFPA,PACO-BFOA能更快檢測到環(huán)境發(fā)生了變化。
表5 光照緩慢變化下各算法功率關鍵點Table 5 Power key points of each algorithm under slowly varying illumination
為直觀說明PACO-BFOA良好的尋優(yōu)性能,統(tǒng)計表6為3種仿生算法在以上3個仿真條件下在線尋優(yōu)的收斂時間(最優(yōu)時間加粗)。由表6數據可以看出當光照變化,PACO-BFOA算法收斂至最優(yōu)值所需時間相對來說是最短的。在光照緩慢變化第2次尋優(yōu)中,PACO-BFOA與ACO所需時間都很短,這得益于算法的信息素輔助功能。在光照突變第2次尋優(yōu)中,ACO耗時較長,這是因為當前情況下,最大功率點發(fā)生了更大的變化,此前累積的信息素反映當前路徑信息的真實度不夠;而引入信息素擴散機制的PACO-BFOA能更快對當前路徑信息素做出調整,并再次尋得GMPP。
表6 3種仿生算法收斂時間Table 6 Convergence time of three bionic algorithms
為評估不同算法下光伏系統(tǒng)的功率響應振蕩情況,引入2個功率指標[1]
式中:Δpavg和Δpmax分別表征功率曲線的平均振蕩和最大振蕩;t為當前運行時間;T為系統(tǒng)總運行時間;為算法迭代過程中光伏陣列輸出的功率均值。
表7給出了3種仿生算法在3個仿真條件下功率振蕩的統(tǒng)計結果(最優(yōu)功率加粗)。可以看出,相比其他3種仿生算法,采用PACO-BFOA算法功率振蕩較小,系統(tǒng)沖擊更小。當光照緩慢變化時,最大功率點位置變化不大,PACO-BFOA與BFOA算法下功率振蕩都很小,但由圖8(c)可以看出PACO-BFOA能更快檢測到環(huán)境變化并尋得GMPP,靈敏度更高。
表7 3種仿生算法功率振蕩情況Table 7 Power oscillation of three bionic algorithms
本文提出的多態(tài)蟻群-細菌覓食算法可以實現PSC下光伏系統(tǒng)最大功率跟蹤,并具有以下特點:
1)在原蟻群算法基礎上增加信息素擴散機制以增強算法的全局開發(fā)能力;
2)將細菌覓食的趨化行為賦予螞蟻使得算法的局部探索性能更優(yōu),同時自適應步長平衡了探索的快速性和收斂性;
3)多態(tài)蟻群概念的引入讓全局開發(fā)和局部探索能力得以平衡。
將PACO-BFOA與P&O、ACO、BFOA在3種條件下仿真對比分析,得到以下結論:
1)相比于P&O,PACO-BFOA能在PSC下尋得GMPP;
2)相比于ACO和BFOA,PACO-BFOA尋優(yōu)時間更短;
3)尋優(yōu)過程中,PACO-BFOA振蕩更小,對系統(tǒng)產生的電流沖擊更?。?/p>
4)光照緩慢變化過程中,PACO-BFOA算法體現出較高的靈敏度。