嘉興學院機電工程學院 ■ 張浙熠 高慧敏 傅文珍
太陽能取之不竭,是一種重要的清潔能源。光伏發電將太陽能轉換成電能,可以減少石油、煤炭等不可再生能源的使用,降低能源轉換過程中對環境的污染。光伏發電系統的發電效率主要受兩方面因素的影響,一方面是光伏陣列的發電效率,另一方面是并網時電能的轉換效率。本文只針對光伏陣列的發電效率進行了研究。
光伏陣列的P-V輸出特性曲線呈非線性,輸出功率受溫度、光照強度等因素的影響,所以為了提高光伏陣列的發電效率,需要使用最大功率點跟蹤(Maximum Power Point Tracking,MPPT)技術,以實現快速精確的控制。在眾多MPPT算法中,實際應用較多的是擾動觀察法、電導增量法[1]等,這些算法的原理簡單、容易實現、硬件成本低,但是存在跟蹤速度慢、準確率低等問題。此外,還有智能MPPT算法,如粒子群算法、退火模擬算法、模糊控制、遺傳算法[2-4]等,這些算法原理較復雜、硬件成本相對較高,但準確率更高。因此在實際光伏發電系統中,常采用智能MPPT算法對最大功率點進行搜索跟蹤。
智能MPPT算法也存在需改進、優化的必要性。傳統遺傳算法作為一種較成熟的智能算法,具有收斂速度快、全局搜索能力強的特點。但其實際應用在光伏MPPT控制時,考慮到跟蹤速度、硬件精度等問題,會適當降低迭代次數、個體長度、種群大小等參數,而這些參數的減小必然會降低算法的準確率。本文提出的改進遺傳型算法是在傳統遺傳算法的基礎上,引入擾動觀察法,從而提高MPPT的準確率。首先參考光伏陣列的相關數學模型和輸出特性曲線[5-6],在Matlab軟件上擬合出輸出特性曲線;然后分別測試擾動觀察法和傳統遺傳算法的搜索效果,分析其優劣;繼而把傳統遺傳算法和擾動觀察法相結合,對這一改進型遺傳算法進行測試分析;最后得出結論。
擾動觀察法的思路是給當前輸出電壓施加一定的擾動,使擾動后的輸出電壓略大于或略小于原輸出電壓;通過比較原輸出功率P和擾動后的輸出功率P1、P2,確定下一次的擾動方向;最后通過周期性的擾動尋找最大功率點。
這種方法的優點是原理簡單、容易實現。缺點包括以下幾個方面:1)擾動步長固定[7]。步長過大,會降低搜索精度,最后會在最大功率點處來回擺動;步長過小,需要的采集點成倍數增加,會嚴重降低對最大功率點的跟蹤速度。2)在光伏陣列的P-V輸出特性曲線單峰情況(圖1)下,該方法可找到最大功率點;但是在多峰情況(圖2)下,該方法會陷入局部最大功率點。

圖1 P-V曲線單峰情況

圖2 P-V曲線多峰情況
1.2.1 傳統遺傳算法的原理
遺傳算法是借鑒生物進化的過程,將跟蹤最大功率點的過程模擬成一個生物進化的過程,通過逐代的選擇、復制、交叉、變異操作選出適應度較高的個體。
在跟蹤最大功率點的實際過程中,輸出電壓用二進制表示,并將其作為種群的個體。每個輸出電壓對應的輸出功率作為每個個體的適應度,顯然,適應度最高的個體就是最大功率點對應的輸出電壓。種群內部的個體不斷經過交叉、變異,產生新的個體。當迭代次數滿足一定條件后,停止迭代,具有最大適應度的個體就是取得最大功率時的輸出電壓。
1.2.2 傳統遺傳算法的設計
遺傳算法有選擇、復制、交叉、變異4個過程。為提高搜索速度,種群大小和最終迭代次數不宜過大,所以取種群大小為10,迭代次數為20次。個體長度的大小會影響搜索速度和搜索精度,本文的個體長度為10,分辨率達1/1023。
根據每個個體適應度的不同,用賭輪盤法[8]決定被選擇的個體,并進行復制。個體進行交叉和變異的概率會影響搜索效果,交叉概率適當增加可以提高算法的收斂速度;變異概率適當增加可以提升算法全局搜索的能力,避免局部收斂。針對本文的算法參數和硬件參數,交叉概率Pc取0.6、變異概率Pm取0.1時的搜索效果較好。
算法運行后,第一代種群的個體隨機產生,經過選擇、復制等操作產生新一代的種群,每代種群中適應度最大值記為bi;達到預設的迭代次數后算法停止,bi的最大值就是算法找到的最大輸出功率P,公式為:

1.2.3 傳統遺傳算法的測試和分析
經過大量的仿真測試,傳統遺傳算法能找到最大功率點的概率為63.7%,其找到最大功率點的情況如圖3a所示。
而傳統遺傳算法未能找到實際最大功率點的情況有2種:1)算法找到的功率點遠小于實際最大功率點,如圖3b所示;2)算法找到的功率點在實際最大功率點附近擺動,如圖3c所示。

圖3 傳統遺傳算法的最大功率點搜索結果示意圖
上述2種傳統遺傳算法未能找到實際最大功率點的原因各不相同。
出現圖3b這種情況主要有2種可能:1)迭代次數不足。由于受限于迭代次數,算法未能找到實際最大功率點。2)隨機產生的第一代種群個體分布比較特殊,且未發生變異過程或變異產生的個體的適應度低,導致選擇、復制過程產生的新個體有限,因此不能產生具有更高適應度的個體。
出現圖3c這種情況的主要原因是:精度不夠,且遺傳算法的選擇、交叉等過程具有隨機性。由于本實驗的最小電壓增量為58.65 mV,進行交叉、變異等操作時,電壓變動較大,導致最終結果在實際最大功率點附近擺動。
根據上述分析可知,傳統遺傳算法應用于MPPT時,搜尋最大功率點的準確率不能達到100%。尤其在實際應用中,為了提高搜索速度,需要適當降低種群大小、個體長度和迭代次數,但這會進一步降低傳統遺傳算法的準確率,所以傳統遺傳算法應用于MPPT時需要進行改善。
改進型遺傳算法以傳統遺傳算法為核心,用擾動觀察法對傳統遺傳算法的輸出結果進行校正,以實現對最大功率點的跟蹤。在足夠的迭代次數和個體長度條件下,傳統遺傳算法也能得到多峰情況下的最大功率點,但需要大量的采樣、計算,嚴重降低了搜索速度。所以為了提高搜索速度,就需要適當限制迭代次數、個體長度等參數,但這會導致遺傳算法的準確率下降。擾動觀察法的原理簡單、實現難度低、需要的樣本數量少、計算量少,因此可引入擾動觀察法對輸出結果進行校正,從而提高算法的準確率。
改進型遺傳算法實現的流程圖如圖4所示。
算法運行后隨機選取10個樣本點作為初始種群,通過采樣、計算獲得對應的適應度,保存該代最優個體;經過選擇、復制、交叉、變異等操作后得到第二代種群,第二代種群保存最優個體;再經過選擇復制等操作得到下一代種群,直到滿足迭代次數要求后停止迭代。比較各代最優個體,得到預計的最大功率點,記該點的輸出電壓為Uo,輸出功率為P。

圖4 改進型遺傳算法流程圖
在Uo處施加2次擾動,擾動電壓為Δu,得到施加擾動后的電壓U1=Uo-Δu、U2=Uo+Δu,對應的輸出功率為P1、P2。
對比P1、P2可得到擾動方向sgn為:

最后在該Uo點處施加n次擾動,可知第i次擾動時的輸出電壓為:

比較擾動后各點的輸出功率Pi,若最大輸出功率不為Pn,表示擾動得到的Pi具有單調性,未找到最大功率點,重新開始尋找;若最大輸出功率為Pn,則表示找到了最大功率點,算法結束。
改進型遺傳算法的預設參數與上文傳統遺傳算法的預設參數相同。擾動電壓Δu=0.3 V,擾動次數n=20。實驗結果如圖5和表1所示。
改進型遺傳算法是對最后的輸出結果進一步擾動檢測,所以與傳統遺傳算法相比,其具有更高的準確率。傳統遺傳算法受限于迭代次數和變異的隨機性,會產生輸出結果遠低于實際最大功率的情況。但改進型遺傳算法避免了該種情況,輸出結果等于或略小于實際最大功率點。

圖5 改進型遺傳算法的輸出結果示意圖

表1 改進型遺傳算法的輸出結果
本文設計了一種改進型遺傳算法,該算法以傳統遺傳算法為核心,用擾動觀察法對輸出結果進行校正,以此提高算法的準確率。通過仿真測試及對比分析,證明了改進型遺傳算法具有更高的準確率。