APP下载

自适应果蝇算法多峰值光伏阵列最大功率点跟踪

2020-06-28程海军赵凤贤

电源学报 2020年3期
关键词:果蝇输出功率步长

原 琳,程海军,赵凤贤

(辽宁工业大学电气工程学院,锦州121001)

光伏发电以其能源清洁无污染、资源可再生等优点被越来越多的应用到发电系统中。然而,光伏电池的转换效率较低,一般为15%~20%,所以其发电效率是光伏发电系统面临的主要问题。

光伏电池的输出特性具有明显的非线性,其输出功率随环境温度、光照强度等外界条件的改变而实时变化,且任意时刻只存在唯一的最大功率输出点。因此,若想光伏发电系统得到更广泛的应用,就必须控制光伏阵列的输出电压和电流,使光伏阵列在最大功率点位置输出功率,以提高光伏系统的发电效率,即对光伏阵列进行实时的最大功率点跟踪MPPT(maximum power point tracking)。

光伏阵列最大功率点跟踪,实际上是对光伏阵列输出功率动态寻优的过程。理想的无遮挡情况下,光伏阵列的功率-电压(P-U)输出特性曲线为单峰特性,存在唯一极值点。但光伏阵列安装在户外,实际运行过程中,难免会出现被树荫、乌云、建筑物等遮挡的现象,此时其P-U输出特性曲线会呈现多峰特性,即存在多个极值点。

目前比较常规的最大功率点跟踪方法,如扰动观察法、电导增量法、恒定电压法等[1~6]及其改进算法[7~9],主要都是针对光伏阵列无遮挡、P-U输出曲线为单峰值特性情况下的跟踪方法,其特点是寻找到第1个峰值点后就停止搜索。如果光伏阵列被部分遮挡,即存在多个极值点,常规的最大功率点跟踪方法因易陷入局部极值点的跟踪,难以跟踪到全局最优点而失效,降低了系统的发电效率。

为解决这一难题,国内外许多学者研究了光伏阵列局部遮挡情况下的最大功率点跟踪方法。文献[10]提出粒子群优化PSO(particle swarm optimization)算法,但后期粒子易趋于同一化,失去多样性,跟踪精度相对较低;文献[11]提出人工鱼群算法,但计算量较大,跟踪速度较慢。

为更好地解决光伏阵列遮挡情况下的最大功率点跟踪问题,本文提出了一种自适应果蝇优化算法 AFOA(adaptive fruit fly optimization algorithm)。该算法对原始果蝇算法的初始位置及寻优步长进行改进,利用其全局寻优性能,可在遮挡情况下跟踪到全局最优值,避免陷入局部极值点的跟踪;且每隔2分钟启动扰动观察法,以实时监测外部环境是否改变。此方法将光伏阵列最大功率点的搜索和跟踪分开进行,充分考虑了两者的独立性和相关性,有效提高了光伏发电系统的效率。

1 局部遮挡情况下光伏阵列建模及其输出特性

本文使用带有旁路二极管的光伏阵列等效电路模型,其等效电路如图1所示。Iph1、Iph2分别为每个光伏组件的光生电流,Io为反向饱和电流,Rs为光伏电池串联内阻。

以光伏组件存在2种不同光照强度为例进行研究,如图2所示,S1表示遮挡情况下的光照强度,S2为无遮挡时的光照强度,且S2>S1。因为光生电流正比于光照强度,假设S1对应的光生电流为Iph1,S2对应的光生电流为Iph2,参照文献[12-13]对串联光伏组件遮挡情况的输出特性分析,得出光伏组件存在遮挡情况,即光照不均匀情况下的光伏阵列输出电压U和电流I的分段对应关系,可表示为

式中:q为电荷常数,q=1.6×10-19C;n为二极管影响因子(2.8±0.152);T 为绝对温度,K;k为玻尔兹曼常数,k=1.38×10-23J/K;Rs为电池的串联内阻;Io为反向饱和电流;Iob=5.95 μA;

输出功率可表示为

光生电流Iphi可表示为

式中:Sref为标准光照强度,Sref=1 000 W/m2;Si为当前实际光照强度;ΔT=T-Tref,其中T为光电池实际温度,Tref为标况下温度,Tref=25℃;Iph为光伏电池标况下(T=25 ℃,S=1 000 W/m2)的光生电流;Ki为光生电流温度系数,K1=0.005 78 A/℃。

根据前文所述P、U的关系,在Matlab仿真软件中建立光伏阵列仿真模型,得到其P-U输出曲线,如图3所示。光伏组件进行并联或串并联相结合时,如存在遮挡现象,其P-U输出曲线与串联情况类似,均呈现如图3所示的多峰现象,不再赘述。

2 最大功率点跟踪电路

光伏发电系统常用的电路结构有单级结构和两级结构。单级结构是将最大功率点跟踪与逆变控制同时进行,全部由逆变电路完成,控制方式复杂;两级结构是将最大功率点跟踪与逆变控制分开进行,完成了控制变量的解耦,与单级电路结构相比,控制方法相对简单,易于实现。因此,本设计采用两级结构,光伏发电系统两级结构的电路控制方式中,前级完成最大功率点跟踪控制,最常采用的电路结构是Boost电路,如图4所示。

对图4所示的Boost电路空间状态模型进行线性化处理,可表示为

由式(4)可知,通过占空比D可以对光伏发电系统的工作点进行调节。因此,对光伏发电系统的最大功率点跟踪实际就是通过调节Boost电路的占空比,使光伏阵列的阻抗等于外电路的等效阻抗,从而使系统输出功率最大。

3 遮蔽情况下自适应果蝇算法的最大功率点跟踪

3.1 果蝇优化算法及改进

果蝇优化算法是台湾大学潘文超博士于2011年提出的仿生物智能算法,该算法是根据果蝇觅食行为而衍生出的一种全局智能寻优方法[14-15]。首先计算出果蝇个体所在位置与坐标原点距离的倒数,作为味道浓度判定值;其次,将计算出的味道浓度判定值代入寻优函数,求出果蝇个体位置的味道浓度值;再次,比较得出果蝇群体中的最优个体,并记录其坐标值及此时对应的函数值,果蝇群体利用视觉飞向该位置;最后,进行迭代寻优。

果蝇优化算法具有初始参数少、原理简单、收敛速度快等优点。但原始果蝇优化算法也存在一些不足之处,如果蝇的初始位置及搜索步长的设置均会对算法的执行速度及运行效率产生较大影响。本文所提算法,对原始果蝇算法中果蝇初始位置和搜索步长进行了改进,提高了运算速度,平衡了全局和局部搜索能力。

果蝇群体的初始位置会对算法的求解产生很大的影响,如果初始位置与理论位置偏离较远,会降低算法的执行速度及搜索效率,甚至难以搜索到最优值;如果初始位置靠近最优解,算法将会很快找到最优解,极大的提高算法的搜索效率。由此可见,为提高算法的搜索效率及精度,合理设置果蝇搜索初始值尤为重要。借鉴开路电压法最大功率点跟踪原理,光伏阵列最大功率点处的电压一般为开路电压的0.78倍。所以,本方法中果蝇群体的初始位置设为0.78 UOC,其中UOC为光伏板开路电压。

果蝇搜索迭代过程中,其步长决定了果蝇的搜索方向和距离,因此,果蝇的步长对其搜索能力具有很大的影响。原始果蝇算法中选择固定搜索步长,一定程度上限制了果蝇算法的搜索能力。本方法采用自适应步长进行搜索,即选择相邻2次搜索的最优值,两者的差加上1个常数作为当代果蝇的搜索步长,有效平衡了算法的局部寻优能力和全局寻优能力。

3.2 改进果蝇算法在最大功率点跟踪中的应用

光伏阵列最大功率点跟踪的本质是对光伏阵列输出的P-U曲线进行动态寻优的过程,即找到输出功率的最大值。

果蝇优化算法在目标函数寻优方面,全局搜索能力较强。首先根据果蝇个体自身的嗅觉,搜索到全局最大功率点位置;然后按照一定的搜索步长,逐步到达最大功率点位置;通过比较每个果蝇个体搜索到的最大功率值,选出其中的最大值作为整个种群搜索的最大功率值。

改进的果蝇优化算法最大功率点的跟踪过程如下。

步骤1初始化参数。

最大迭代次数Nmax,种群规模 Sp,果蝇群体初始电流值I-axis,初始电压值U-axis。为减少寻优时间,提高寻优精度,本文中令U-axis=0.78 UOC。

步骤2设定步长值。

原始果蝇算法中,迭代步长的函数为一常量,容易导致寻优前期收敛速度较慢,后期寻优精度较差的问题。本文采用变步长的寻优方式,为果蝇觅食行为设定随机步长和方向,Ii和Ui可分别表示为

式中:Ii为此时的电流值;Ui为此时的电压值;(ΔP+θ)rand()为寻优算法的搜索步长值;ΔP为相邻两代果蝇搜索到的功率值的差;θ为常量,取0.01,引入θ的目的是保证每次搜索的有效性;rand()是取值为[0,1]的随机数。

步骤3求解味道浓度判定值Si。

初始阶段,无法准确判断最大功率点的位置,故需要先估算出果蝇个体与最初设定点之间的起始距离D及味道浓度判定值Si,即

步骤4求解功率Pi。

将计算出的味道浓度判定值Si代入到功率计算方程中,求出每个果蝇个体位置对应的功率值Pi。

步骤5寻找最优个体。

找到处于功率最大值的果蝇个体,即

步骤6记录最优值。

记录功率最优值,并使果蝇个体利用视觉向该位置飞去,即

步骤7迭代寻优。

通过迭代寻优的方法跟踪到光伏阵列的最大功率点;以(I-best,U-best)为果蝇初始位置,重复步骤2~步骤5;将每次跟踪到的功率值与上一次的功率值比较,若优于上一次功率值,则执行步骤6,直至达到最大迭代次数。

步骤8判断外界环境是否变化。

温度、光照等外界环境的变化,会改变光伏阵列的输出特性。如最常发生的乌云飘过会使光伏阵列的光照条件发生改变,对光伏阵列的输出功率产生巨大影响。

为增强跟踪算法的实时性,设置每隔一段时间对光伏阵列进行1次小步长扰动。如果不间断地对光伏阵列进行实时扰动观察,势必会影响光伏发电系统的输出效率及稳定性,使输出功率值不断波动。综合考虑外界环境是否变化的客观因素,设置每2分钟进行1次扰动观察较为合理。即以当前功率值为中心,向左扰动1次,向右扰动1次,求出其对应功率值分别为P-和P+。 若P>P_且P>P+,则认为外界环境没有改变,此时光伏发电系统仍工作在最大功率点处;若P<P-或P<P+,则认为外界环境发生改变,跟踪到的功率点已不是此时系统的最大功率点,则重启跟踪系统,重新进行最大功率点跟踪。

采用每隔固定时间对光伏发电系统进行1次小步长扰动的方法,既实现了对系统的实时监测,又避免频繁扰动使系统产生的振荡。

基于自适应果蝇算法的最大功率点跟踪流程如图5所示。

4 仿真结果及分析

为验证算法的有效性,在Simulink/Matlab中进行系统仿真。选择阿特斯公司的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算法的最大功率点跟踪效果进行比较。

4.1 光照均匀情况下AFOA与P&O最大功率点跟踪效果比较

标准情况即光照强度1 000 W/m2,温度25℃,且无遮挡。AFOA算法中,迭代次数Nmax=5,种群规模Sp=20,初始电压值U-axis=27.4 V,AFOA与P&O算法中的扰动步长均设定为0.1。2种方法对光伏阵列的最大功率点跟踪效果如图6所示。

由图6可知,光照均匀无遮挡情况下,P&O算法,由于扰动一直存在,使光伏阵列输出功率具有波动性;AFOA算法只在判断外界条件是否改变时才进行扰动,所以每2 min才出现一次波动现象。无遮挡情况下,虽然AFOA算法与P&O算法都跟踪到了光伏阵列的最大功率点,但AFOA算法减小了系统输出的波动性,提高了系统的稳定性。

4.2 遮挡情况下AFOA与P&O最大功率点跟踪效果比较

初始条件下,光伏阵列光照强度为1 000 W/m2,在第4 min时出现乌云遮挡现象,遮挡部分的光照强度为800 W/m2,此时光伏阵列输出功率存在2个极值点。2种算法的参数设置与第4.1节相同,最大功率点跟踪效果如图7及表1所示。

由图7可知,在第4 min光伏阵列存在遮挡状况时,AFOA算法跟踪到的最大功率值为119.9 W,P&O算法跟踪到的最大功率值为88.26 W。可见,P&O算法在遮挡情况下没有跟踪到全局最大功率点,而是陷入了局部极值的跟踪;AFOA算法在遮挡情况下仍然表现出了较好的跟踪效果,搜索到了全局最大功率点。与P&O算法相比,AFOA算法的效率提高了35.8%。

4.3 遮挡情况下AFOA与PSO最大功率点跟踪效果比较

光伏阵列的遮挡情况与第4.2节相同。PSO算法中跌代次数为5,粒子数为20,学习因子1、2取值均为1.496 2,惯性权重取0.729 8;AFOA算法的参数设置与第4.1节相同。2种算法的最大功率点跟踪效果如图8所示。

由图8可知,与AFOA算法相比,PSO算法前期跟踪效果存在震荡现象,后期粒子趋于同一化,跟踪精度下降;AFOA算法则一直表现出良好的跟踪效果,提高了系统的跟踪效率。

5 结语

通过对遮挡情况下光伏阵列最大功率点跟踪控制的研究,本文提出一种自适应果蝇优化算法。对传统果蝇算法中果蝇初始位置的设置及寻优步长进行了改进,并在寻优过程中与扰动观察法相结合,每2 min对外界环境是否改变进行判断。仿真结果表明,采用自适应果蝇优化算法可以快速准确地搜索到全局最优点,避免陷入局部极值的跟踪,提高了系统的发电效率。

猜你喜欢

果蝇输出功率步长
果蝇遇到危险时会心跳加速
工程应用中的光伏组件输出功率衰减率评估
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
2021年大樱桃园果蝇的发生与防控
一种改进的变步长LMS自适应滤波算法
基于变步长梯形求积法的Volterra积分方程数值解
董事长发开脱声明,无助消除步长困境
小果蝇助力治疗孤独症
果蝇杂交实验教学的改进策略
感应加热电源的调频调功研究