基于自适应果蝇搜索的光伏阵列最大功率点跟踪方法与流程

文档序号:12594795阅读:256来源:国知局
基于自适应果蝇搜索的光伏阵列最大功率点跟踪方法与流程

本发明涉及光伏阵列最大功率点跟踪方法,更具体地说,是一种基于自适应果蝇搜索的光伏阵列最大功率点跟踪方法。



背景技术:

传统能源发电面临着能源短缺及环境污染等问题,以光伏发电为代表的新能源发电日益受到人们的青睐。光伏发电系统的最大功率点跟踪问题是亟待解决的核心问题之一,目前常用的跟踪方法有电导增量法、扰动观察法。电导增量法通过计算dP/dU的值,判断光伏阵列的最大功率点,当dP/dU=0时,认为跟踪到光伏阵列最大功率点。扰动观察法,通过对光伏阵列输出电压值加扰动量,计算功率值,将扰动后的功率值与扰动前的功率值比较,判断下一次的扰动方向,通过此方法搜索光伏阵列的最大功率点。此两种方法大都适用于光伏阵列无遮挡情况下,P-V曲线呈现单峰时的最大功率点跟踪。实际应用中,尤其是随着光伏建筑的发展,光伏阵列的遮挡情况时有发生。此时,光伏阵列的P-V曲线呈现多峰特性,而原有的电导增量法,扰动观察法等,大多搜索到第一个峰值点就停止搜索,认为已经跟踪到光伏阵列的最大功率点。但遮挡情况下,多峰的P-V曲线,最大峰值点并不一定就是第一个峰值点,所以原有跟踪方法大多失效,易陷入局部极值点的跟踪。

ZL201110337989.1提出了一种光伏电池遮蔽情况下的最大功率点跟踪方法,其目的同样是对光伏电池P-V曲线存在多极值情况下的最大功率点跟踪。但该方法计算量大且计算程度复杂,完成一次搜索耗时较长。



技术实现要素:

本发明的目的是为了解决光伏阵列部分遮挡情况下的最大功率点跟踪问题,减少光伏系统的功率损失,提高发电效率,提出了一种基于自适应果蝇搜索的光伏阵列最大功率点跟踪方法,该方法不仅可以精确、快速的跟踪到全局最优点,还可以当外界环境突变时,重新搜索到全局最优点,避免产生误判断现象。此方法具有搜索范围广,搜索速度快,算法简单等特点。

为了达到上述目的,本发明所采取的技术方案是:

一种基于自适应果蝇搜索的光伏阵列最大功率点跟踪方法,包括如下步骤:

S1.首先对果蝇种群位置、果蝇规模及最大迭代次数进行初始化;基于恒定电压法,采用光伏阵列开路电压的0.78倍和对应的光伏阵列输出电流值作为果蝇种群初始位置(V-axis,I-axis);确定初始果蝇规模sizepop和算法最大迭代次数maxgen;

S2.根据初始步长值L0和当前觅食代数g确定出随机步长L并进行自适应步长嗅觉搜索;其中随机步长L值由初始步长值L0,最大迭代次数maxgen及当前觅食代数g求得,光伏阵列输出电压Vi和输出电流Ii由果蝇种群初始位置(V-axis,I-axis)和随机步长L求得;采用自适应步长嗅觉搜索,提高最大功率点全局搜索效率和寻优精度;具体求法如下:

<mrow> <mi>L</mi> <mo>=</mo> <msub> <mi>L</mi> <mn>0</mn> </msub> <mo>-</mo> <mfrac> <mrow> <msub> <mi>L</mi> <mn>0</mn> </msub> <mrow> <mo>(</mo> <mi>g</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> <mrow> <mi>max</mi> <mi> </mi> <mi>g</mi> <mi>e</mi> <mi>n</mi> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>

Vi=V-axis+L (2)

Ii=I-axi+L (3)

S3.进行初步计算,通过光伏系统控制器采集的光伏阵列实时输出电压Vi和输出电流Ii,计算个体距坐标原点的距离Disti,从而确定果蝇个体的味道浓度判定值Ci,并以味道浓度判定值Ci作为全局最大功率点搜索方向判定参数,以改善全局寻优能力;具体公式如下:

<mrow> <msub> <mi>Dist</mi> <mi>i</mi> </msub> <mo>=</mo> <msqrt> <mrow> <mo>(</mo> <msubsup> <mi>V</mi> <mi>i</mi> <mn>2</mn> </msubsup> <mo>+</mo> <msubsup> <mi>I</mi> <mi>i</mi> <mn>2</mn> </msubsup> <mo>)</mo> </mrow> </msqrt> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow>

Ci=1/(Disti+α)+β (5)

其中,为确定更加准确的味道浓度判定值Ci,使α>0,β分为两种:

第一类避免局部最优因子g×Disti中,g服从均匀分布;第二类避免局部最优因子K×V-axis或K×I-axis中,K为设定常数,取值为0.8;

S4.根据味道浓度的判定值,将其代入味道浓度和判断函数,判断函数是光照强度Si和环境温度Ti的函数,计算当前每个果蝇个体的气味浓度值,即光伏系统中光伏阵列的输出功率Pi

Pi=UmIm(1+aΔT)(1+bΔS)(1-dΔT)=ViIi (7)

其中Um,Im是光伏阵列标准情况下最大功率点处的电压值和电流值,a、d采用典型值:a=0.0025/℃;d=0.00288/℃;b采用优化后的参数值:b=-0.194+7.056×10-4×S,ΔT=Ti-T,ΔS=Si-S,Ti为光伏阵列实际温度,T为标况下光伏阵列温度,Si为当前实际光照强度,S为标况下的光照强度1kW/m2

S5.根据气味浓度值即光伏阵列的输出功率Pi,找出当前种群中气味浓度最高的果蝇个体,即此时的最大功率值bestP,并记录此时的最佳坐标位置bestindex;

[bestP,bestindex]=max(Pi) (8)

S6.基于果蝇算法中视觉定位原理,记录并保留bestP和此时的最优果蝇个体坐标(V,I),V、I分别为光伏阵列最大功率点对应的光伏阵列输出电压和输出电流值;同时,整个果蝇种群利用敏锐的视觉飞往最优个体位置,即系统控制器以此为依据,调节PWM的占空比D,从而控制Boost电路的输出电压:

Pbest=bestP (9)

V=V(bestindex) (10)

I=I(bestindex) (11)

S7.进行迭代寻优。首先判断是否达到终止条件g=maxgen;当g<maxgen时,重复步骤S2~S5,并判断此时的最佳味道浓度是否优于前一次迭代的最佳味道浓度值,若是则执行步骤S6,循环该过程,直到g=maxgen时,执行步骤S8;

S8:迭代搜索终止,扰动判断外界条件是否发生改变,分别对输出电压值进行正、负向扰动,得到V+与V-,求出对应的功率值P+与P-,并与原有功率P相比,若P>P+且P>P-,说明此时的工作点仍为系统的最大功率点,则保持原输出功率不变,否则说明最大功率点位置改变,返回步骤S2,重新进行全局最大功率点搜索。

进一步地,所述初始果蝇规模sizepop为20-100个,算法最大迭代次数maxgen为100-2000次。

本发明的有益效果是:

与现有技术相比,本发明将生物群智能算法与传统的扰动观察法相结合,应用到光伏阵列最大功率点跟踪中。此方法不仅可以对理想的单极值情况下光伏阵列实现精确、快速的最大功率点跟踪。还可以对光伏阵列被遮挡时,多极值情况下实现全局寻优,避免陷入局部极值。同时克服了单独采用扰动观察法等传统跟踪方法,当外界条件发生突变时,易产生误判断等现象,提高了光伏发电系统的效率。

附图说明

图1为基于自适应果蝇搜索的光伏阵列最大功率点跟踪方法流程图;

图2为系统控制框图。

具体实施方式

下面通过实施例对本发明一种自适应果蝇搜索的光伏阵列最大功率点跟踪方法作进一步说明。

一种基于自适应果蝇搜索的光伏阵列最大功率点跟踪方法,如图1所示,其步骤是:

S1:首先对果蝇种群位置、果蝇规模及最大迭代次数进行初始化。基于恒定电压法,采用光伏阵列开路电压VOC的0.78倍和对应的光伏阵列输出电流值作为果蝇种群初始位置(V-axis,I-axis)。确定初始果蝇规模sizepop为50个,算法最大迭代次数maxgen为100次;

V-axis=0.78VOC (1)

S2:根据初始步长值L0和当前觅食代数g确定出随机步长L并进行自适应步长嗅觉搜索。其中随机步长L值由初始步长值L0,最大迭代次数maxgen及当前觅食代数g求得,光伏阵列输出电压Vi和输出电流Ii由果蝇种群初始位置(V-axis,I-axis)和随机步长L求得。采用自适应步长嗅觉搜索,提高最大功率点全局搜索效率和寻优精度。具体求法如下:

<mrow> <mi>L</mi> <mo>=</mo> <msub> <mi>L</mi> <mn>0</mn> </msub> <mo>-</mo> <mfrac> <mrow> <msub> <mi>L</mi> <mn>0</mn> </msub> <mrow> <mo>(</mo> <mi>g</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> <mrow> <mi>max</mi> <mi> </mi> <mi>g</mi> <mi>e</mi> <mi>n</mi> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>

Vi=V-axis+L (3)

Ii=I-axi+L (4)

S3:进行初步计算,通过图2所示的光伏系统控制器采集光伏阵列实时输出电压Vi和输出电流Ii,图2中电容C和电感L起到升压作用、电容C2起稳压作用,D1为反向保护二极管,计算个体距坐标原点的距离Disti,从而确定果蝇个体的味道浓度判定值Ci,并以味道浓度判定值Ci作为全局最大功率点搜索方向判定参数,以改善全局寻优能力。具体公式如下:

<mrow> <msub> <mi>Dist</mi> <mi>i</mi> </msub> <mo>=</mo> <msqrt> <mrow> <mo>(</mo> <msubsup> <mi>V</mi> <mi>i</mi> <mn>2</mn> </msubsup> <mo>+</mo> <msubsup> <mi>I</mi> <mi>i</mi> <mn>2</mn> </msubsup> <mo>)</mo> </mrow> </msqrt> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow>

Ci=1/(Disti+α)+β (6)

其中,α>0,β分为两种:

第一类避免局部最优因子g×Disti中,g服从均匀分布;第二类避免局部最优因子K×V-axis或K×I-axis中,K为设定常数,取值为0.8。

S4:根据味道浓度的判定值,将其代入味道浓度和判断函数,判断函数是光照强度Si和环境温度Ti的函数,计算当前每个果蝇个体的气味浓度值,即光伏系统中光伏阵列的输出功率Pi

Pi=UmIm(1+aΔT)(1+bΔS)(1-dΔT)=ViIi (8)

其中Um,Im是光伏阵列标准情况下最大功率点处的电压值和电流值,a、d采用典型值:a=0.0025/℃;d=0.00288/℃。b采用优化后的参数值:b=-0.194+7.056×10-4×S,ΔT=Ti-T,ΔS=Si-S,Ti为光伏阵列实际温度,T为标况下光伏阵列温度,Si为当前实际光照强度,S为标况下的光照强度,其数值为1kW/m2

S5:根据气味浓度值即光伏阵列的输出功率Pi,找出当前种群中气味浓度最高的果蝇个体,即此时的最大功率点。

[bestP,bestindex]=max(Pi) (9)

S6:基于果蝇算法中视觉定位原理,记录并保留最佳味道浓度值bestP和此时的最优果蝇个体坐标(V,I),V、I分别为光伏阵列最大功率点对应的光伏阵列输出电压和输出电流;同时,整个果蝇种群利用敏锐的视觉飞往最优个体位置,即系统控制器以此为依据,通过调制器件S1调节PWM的占空比D,从而控制Boost电路的输出电压。

Pbest=bestP (10)

V=V(bestindex) (11)

I=I(bestindex) (12)

S7:进行迭代寻优。首先判断是否达到终止条件g=maxgen。当g<maxgen时,重复步骤S2~S5,并判断此时的最佳味道浓度是否优于前一次迭代的最佳味道浓度值,若是则执行步骤S6,循环该过程,直到g=maxgen时,执行步骤S8。

S8:迭代搜索终止,扰动判断外界条件是否发生改变,分别对输出电压值进行正、负向扰动,得到V+与V-,求出对应的功率值P+与P-,并与原有功率P相比,若P>P+且P>P-,说明此时的工作点仍为系统的最大功率点,则保持原输出功率不变,否则说明最大功率点位置改变,返回步骤S2,重新进行全局最大功率点搜索。

以上仅为本发明的具体实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1