陳宇宏,張文生,劉航
(遼寧工業(yè)大學(xué) 電子與信息工程學(xué)院,遼寧 錦州 121001)
電子技術(shù)的發(fā)展推動(dòng)著能源技術(shù)的發(fā)展,而在眾多的能源技術(shù)中,光伏發(fā)電具有許多其他能源所不具有的優(yōu)勢(shì)。在光伏發(fā)電系統(tǒng)中MPPT是必不可少的環(huán)節(jié),而算法已成為MPPT控制的核心,傳統(tǒng)的單點(diǎn)跟蹤算法已經(jīng)不能滿足光伏電池板方陣輸出多峰值的要求,遺傳算法使用概率搜索技術(shù),因此在惡劣的環(huán)境下,仍能搜索到最大功率點(diǎn),但簡(jiǎn)單的使用遺傳算法可能導(dǎo)致種群?jiǎn)握{(diào)和早熟收斂的缺點(diǎn)[1]。特別是在大型的并網(wǎng)發(fā)電系統(tǒng)中,由于光伏電池板方陣占地面積可達(dá)幾平方公里[2],因此輸出的P-V曲線十分復(fù)雜,傳統(tǒng)的遺傳算法很難應(yīng)付,有必要對(duì)遺傳算法進(jìn)行改進(jìn)。
為了后續(xù)MPPT算法的研究,有必要為光伏電池建立起數(shù)學(xué)模型,通過(guò)這些數(shù)學(xué)關(guān)系來(lái)反應(yīng)光伏電池各項(xiàng)參數(shù)的變化規(guī)律。等效電路如圖1所示。
由圖1可得光伏電池的輸出特性方程[3]:
圖1 光伏電池等效電路圖
基于光伏電池的輸出特性方程,得到一種描述光伏電池伏安特性曲線的公式[4],如下:
式中C1,C2分別如下:
其中:
式(1)-(7)中各參數(shù)表示的意義如下:
I:輸出電流;V:輸出電壓;ISC:短路電流;UOCS:開路電壓;Imp:參考條件下最大功率點(diǎn)電流;Vmp:參考條件下最大功率點(diǎn)電壓;Rref:太陽(yáng)輻射參考值,一般為1 000 W/m2;Tref:光伏電池溫度參考值,一般為25℃;a:電流變化溫度系數(shù)(Amps/℃);b:電壓變化溫度系數(shù)(V/℃);Bs:光伏電池的串聯(lián)電阻;T:實(shí)時(shí)光伏電池溫度;R:實(shí)時(shí)光照強(qiáng)度。
圖2 光伏電池板方陣P-V特性曲線
模型參數(shù)采用嘉盛公司生產(chǎn)的JS200D光伏電池陣列的參數(shù)值,并將6塊光伏電池陣列串聯(lián),模擬光伏電池板方陣,讓其工作中不同的環(huán)境中,用MATLAB仿真得到光伏電池板方陣的P-V特性曲線如圖2所示。
光伏電池板方陣的MPPT控制電路采用Boost變換器,其拓?fù)浣Y(jié)構(gòu)如圖 3所示[5]。
通過(guò)將Boost變換器的狀態(tài)空間模型行線性化處理后,得到如下模型:
圖3 Boost電路拓?fù)浣Y(jié)構(gòu)
模擬退火算法(SA)是一種啟發(fā)式蒙特卡羅方法,是能夠在給定的模型空間內(nèi)搜索目標(biāo)函數(shù)找到全局極大值的算法[6-7]。步驟如下:
(1)給定模型每一參數(shù)變化范圍,在這個(gè)范圍內(nèi)隨機(jī)選擇一個(gè)初始模型m0,并計(jì)算出其相應(yīng)的目標(biāo)函數(shù)值E(m0)。
(2)對(duì)當(dāng)前模型m0進(jìn)行擾動(dòng)產(chǎn)生一個(gè)新模型m,計(jì)算其相應(yīng)的目標(biāo)函數(shù)值E(m),得到ΔE=E(m)-E(m0)。
(3)若ΔE>0,則新模型 m被接收,若 ΔE<0,則新模型 m按概率P=exp(-ΔE/T)進(jìn)行接收。T為溫度。
(4)在溫度T下,重復(fù)一定次數(shù)的步驟(2)和(3)。
(5)緩慢地下降溫度T。
(6)重復(fù)步驟(4)和(5),直到滿足所需的收斂條件為止。
在上述算法的運(yùn)行過(guò)程中,擾動(dòng)函數(shù)、擾動(dòng)后參數(shù)的接收概率和降溫方式對(duì)算法的性能起著決定性的作用[8],快速退火算法功能正是基于對(duì)上述幾個(gè)函數(shù)進(jìn)行改進(jìn)而實(shí)現(xiàn)的。
模擬退火算法中模型的產(chǎn)生是對(duì)當(dāng)前模型進(jìn)行擾動(dòng)得到的。非??焖賁A(VFSA)采用依賴于溫度的似Cauchy分布產(chǎn)生新模型,即:
式中,mi為當(dāng)前模型中的第i個(gè)變量,u為[0,1]均勻分布的隨機(jī)數(shù),[Ai,Bi]為 mi的取值范圍,且要求擾動(dòng)后的 mi'∈[Ai,Bi],sgn(X)為符號(hào)函數(shù)。
采用該方法產(chǎn)生新模型能夠在高溫情況下進(jìn)行大范圍的搜索,在低溫時(shí)搜索僅在當(dāng)前模型附件進(jìn)行,而且易于迅速跳出局部極值,加快了模擬退火算法的收斂速度。
經(jīng)過(guò)對(duì)傳統(tǒng)模擬退火算法接收概率公式的研究,現(xiàn)給出一種新的接收概率公式,如下:
式中ΔE為擾動(dòng)得到的新模型的目標(biāo)函數(shù)E(m)與當(dāng)前模型的目標(biāo)函數(shù)E(m0)之差,T為溫度,h為實(shí)數(shù)。該接收概率公式的引入能夠提高模擬退火算法的遍歷性。
非??焖倌M退火方法的降溫公式,如下:
式中,T0為初始溫度,K為迭代次數(shù),C為給定常數(shù),N為待反演參數(shù)的個(gè)數(shù)。
將決策變量即占空比D進(jìn)行編碼,現(xiàn)采用二進(jìn)制編碼,將D表示成二進(jìn)制變量,二進(jìn)制編碼有助于后期對(duì)其進(jìn)行交叉和變異操作。在編碼過(guò)程中需要輸入上下界和精度,還有初始種群數(shù)量。
選擇操作是利用編碼后得到的各個(gè)占空比的適應(yīng)度即輸出功率的大小,淘汰一些較差的個(gè)體,選出優(yōu)良個(gè)體,以進(jìn)行下一步的交叉和變異。選擇操作采用賭輪盤法,即適應(yīng)度大的個(gè)體被選擇的概率就大,適應(yīng)度小的個(gè)體就容易被丟棄?;谶m應(yīng)度比例的選擇策略,個(gè)體i被選擇的概率由下式給出:
式中Fi為個(gè)體i的適應(yīng)度,N為種群個(gè)體的數(shù)目。
交叉操作是遺傳算法的重要步驟,它的目的是產(chǎn)生新的群體,同時(shí)又要保證遺傳信息的延續(xù)?,F(xiàn)采用自適應(yīng)單點(diǎn)交叉法來(lái)實(shí)現(xiàn)交叉操作,即按每個(gè)個(gè)體的適應(yīng)度大小來(lái)決定個(gè)體進(jìn)入交叉池的概率,進(jìn)入交叉池的個(gè)體進(jìn)行兩兩隨機(jī)位的交叉,采用二進(jìn)制編碼的個(gè)體的交叉就是將兩兩個(gè)體隨機(jī)位的1和0代碼交換,最終形成新的個(gè)體和種群。
對(duì)于進(jìn)行二進(jìn)制編碼的個(gè)體而言,變異操作就是改變個(gè)體二進(jìn)制碼的某些為的1,0數(shù)值,從而改變個(gè)體。大量的研究表明,變異概率對(duì)算法性能的影響遠(yuǎn)比交叉概率大。因此,變異概率的選取至關(guān)重要。變異概率大了,遺傳算法就演變成了隨機(jī)搜索,變異概率小了又會(huì)使遺傳算法容易陷入局部最優(yōu)解[9]。為了解決這一問(wèn)題,將自適應(yīng)環(huán)節(jié)引入變異操作中,即讓優(yōu)秀個(gè)體具有較小的變異率,較差的個(gè)體具有較高的變異率。變異概率公式如下:
式中Pmi為第i個(gè)個(gè)體的變異率,mean(fitness)為群體的平均適應(yīng)度,max(fitness)為群體中個(gè)體的最大適應(yīng)度,fitness(i)為第i個(gè)個(gè)體的適應(yīng)度。
在上面對(duì)快速退火算法研究的基礎(chǔ)上,將其引入遺傳算法中,對(duì)種群中的個(gè)體進(jìn)行快速退火化處理。在種群中個(gè)體分別進(jìn)行選擇、交叉和變異操作后,在3、6、9代對(duì)其進(jìn)行一次快速退火化處理,快速退火化處理,能夠保持種群的多樣性并加強(qiáng)位串之間的競(jìng)爭(zhēng),又能加快遺傳算法的搜索速度,最終使遺傳算法克服了易陷入局部最優(yōu)的問(wèn)題,并朝著全局最優(yōu)的方向搜索??焖偻嘶鸹Y(jié)束的條件為前后兩次種群中最大適應(yīng)度即輸出功率的差值小于給定值。
為使系統(tǒng)的輸出始終保持上升趨勢(shì),而不出現(xiàn)下降情況,引入精英個(gè)體保存策略,即在選擇操作中保留最優(yōu)個(gè)體的信息,在種群退火化后用其替換種群中適應(yīng)度最小的個(gè)體。
基于快速退火化遺傳算法的MPPT算法的流程圖如圖4所示。
圖4 算法流程圖
設(shè)定決策變量占空比D的上界maxvar=1,下界 minvar=0,初始種群數(shù) popsize=20,精度 scalevar=0.01,交叉概率pc=0.6,變異概率 pm=0.08,遺傳代數(shù)era=20,快速退火結(jié)束約束條件 ΔP=3 W。算法將每一代中的最佳個(gè)體適應(yīng)度即最大輸出功率值進(jìn)行保存并輸出,得到的仿真結(jié)果如下:
圖5為取消快速退火環(huán)節(jié)的MPPT算法仿真輸出曲線,圖 6為引入快速退火環(huán)節(jié)的MPPT算法仿真輸出曲線。
圖5 模型輸出曲線(無(wú)快速退火環(huán)節(jié))
從圖5可以看出,群體的第1-4代搜索到了一個(gè)局部極值點(diǎn),即圖2 P-V特性曲線的其中一個(gè)極值,但是其并未困住,在第5代就跳出了這個(gè)局部極值點(diǎn),跳躍到更大的極值點(diǎn)400.785 2附近,最后趨于穩(wěn)定,由于采取精英個(gè)體保護(hù)策略,因此輸出功率的最大值并未出現(xiàn)下降的情況。從圖6可以看出,群體在第1、2代搜索到了一個(gè)局部極值點(diǎn),第3代由于進(jìn)行了快速退火化處理,使種群在第3代就跳出了局部極值點(diǎn),并搜索到了全局最大值,最終輸出趨于穩(wěn)定。
圖6 模型輸出曲線(有快速退火環(huán)節(jié))
通過(guò)以上對(duì)快速退火算法和快速退火遺傳算法的研究,分析了其應(yīng)用在MPPT領(lǐng)域得到的仿真曲線,驗(yàn)證了算法設(shè)計(jì)前的預(yù)想,即將快速退火算法引入遺傳算法中能夠在不增加種群數(shù)量和遺傳代數(shù)的情況下解決遺傳算法產(chǎn)生的種群?jiǎn)握{(diào)和早熟收斂的缺點(diǎn),使種群更快搜索到全局最大功率點(diǎn)。
[1]周德佳,趙爭(zhēng)鳴,吳理博.基于仿真模型的太陽(yáng)能光伏電池陣列特性的分析[J].清華大學(xué)學(xué)報(bào),2007,21(4):7 -14.
[2]余世杰,何慧若.光伏水泵系統(tǒng)中CVT及MPPT控制比較[J].太陽(yáng)能學(xué)報(bào),2006,33(6):25 -31.
[3]Leem C S.An automated fault diagnosis for manufacturing processmonitoring and control.International Journal of Modeling and Simulation[J],2011,16(4):200 -208.
[4]Nicola Femia,Giovanni Petrone,Giovanni Spagnuoloe.Optimization of Perturb and Observe Maximum Power Point Tracking Method[J].IEEE Trans on Power Electronics,2005,20(4):963 -973.
[5]李維波,MATLAB在電氣工程中的應(yīng)用[M].北京:中國(guó)電力出版社,2006,67 -72.
[6]謝云,尤矢勇.一種并行模擬退火算法加溫退火法[J].武漢大學(xué)學(xué)報(bào),2006,36(12):32 -38.
[7]尤矢勇,謝云.模擬退火算法試驗(yàn)性能分析[J].武漢大學(xué)學(xué)報(bào),2007,23(15):23-28.
[8]康立山,謝云,尤矢勇,等.非數(shù)值并行算法:模擬退火算法[M].北京:科學(xué)出版社,2001.56 -69.
[9]周明,孫樹棟.遺傳算法原理及其應(yīng)用[M].北京:國(guó)防工業(yè)出版社,2004:46-49.