局部遮荫下改进蝴蝶算法的MPPT控制仿真研究

2022-03-01 01:03郑旭彬李梦达梁智超姚林萍
计算机仿真 2022年1期
关键词:全局峰值局部

郑旭彬,李梦达,梁智超,姚林萍

(上海电机学院电气学院,上海201306)

1 引言

为了实现“碳中和”[1]目标,国内外研究者秉持绿色环保理念,对风能与光能、潮汐能等清洁能源的发电进行了深入研究。在光伏发电系统中,如何提高光伏发电系统的利用效率与降低成本是当下研究的热门问题。光伏阵列表面会有灰尘或者杂物等,导致输出的功率曲线出现多峰值现象。在这情况下,用扰动观察法(P&O)去追踪最大功率时,会追踪不到全局的最大功率点[2]。因此,众多研究者提出基于群体智能MPPT算法去追踪最大功率点。譬如,文献[3]提出基于神经网络的光伏阵列多峰MPPT的研究,虽然能在局部阴影条件下找到全局最大功率点,但其存在实现算法较复杂的问题。文献[4]提出基于粒子群算法的光伏电池MPPT控制策略,虽然其收敛速度与算法比较简单,但其搜索振荡比较大。文献[5]提出一种基于简化蚁群算法的光伏MPPT跟踪控制,虽然其不断迭代更新占空比,从而找到全局最优点,但其实现的硬件比较多,无疑增加了经费支出。

本研究是基于蝴蝶优化算法(BOA)上,并改进BOA算法,从而实现找寻全局最优功率点,高效地将光能转换为电能。相较其它算法,BOA具有结构简单、调试参数少和公式易实现等特点。目前,已经运用在微电网优化调度、参数调节、水质检测等领域[6]。

2 局部遮荫下光伏电池的多峰值输出特性

2.1 一个光伏电池数学模型

光伏电池的等效电路下图1所示。

图1 光伏电池等效电路

由图1可知,流过电阻Rv的电流可有如下式子表示[7]:

(1)

依据(1)式可知,Ipv代表光电流;Id代表VD的反向电流;Rv代表等效的串联电阻;Rvh代表等效并联电阻;K代表的是玻尔兹曼系数;T代表的光伏电池工作时候的温度;q代表的是电子电荷量。

2.2 多个光伏电池数学模型

光伏阵列是由多个光伏电池通过串联或者并联方式构成的。以[1×4]光伏阵列为本论文的研究对象,以此开展研究内容。多个光伏电池建模见下图2。

图2 局部遮荫四个参数不相同的串联光伏板

依据式(1)以及光伏板内部参数推得光伏组件输出的功率Ppv以及输出电压Upv的方程式

(2)

式(2)中,Uoc为开路电压的大小;Imp为最大功率点电流;Ump为最大功率点电压。

2.3 多峰值输出特性

表1 模式

本文的光伏阵列模型是以四个光伏电池为基础,并将其串联。其输出的电压与功率的关系如图3所示。依图3所见,在光伏阵列接受着不均匀光照强度时,其功率输出特性曲线是呈现多峰值状态的。若用传统的扰动观察法是追寻不到全局最大功率点,因此本文运用改进蝴蝶MPPT算法去寻优。

图3 光伏阵列仿真模型图

图4 遮荫下功率与电压的输出特性曲线

3 蝴蝶优化算法的改进策略

3.1 传统的蝴蝶优化算法

蝴蝶优化算法[8](BOA)是于2019年被国外的Arora所提出的一种新型智能算法。在飞行时,每只蝴蝶都会产生一定浓度的香味。每只蝴蝶会将自身的香味会传给所有其它的蝴蝶上,并会对周围空气中的香味进行分析和感知,然后慢慢向香味浓度比较高的蝴蝶个体进行靠近,实现了全局搜索,从而找到了最优解。若蝴蝶并不能感知到其它周围的蝴蝶香味,则会随机飞行,实现局部搜索。

蝴蝶产生香味、全局搜索、局部开采的公式如下

f=cIa

(3)

(4)

(5)

3.2 改进的蝴蝶优化算法

3.2.1 正余弦指引机制

在用BOA的MPPT算法时,会有陷入局部最优且寻优震荡大等问题。这是因为蝴蝶间缺少信息交流,使得BOA算法在一开始的收敛速度较慢,对适应度较差的范围内搜索,使BOA陷入局部最优。

为了解决上述问题,本文引入正余弦算法(SCA)[9]。SCA的策略:在迭代时,使得区间内所有的蝴蝶执行正余弦算法步骤,将适应度值较差个体排除,从而加快对蝴蝶最优个体的位置进行更新。其实现公式

(6)

(7)

式(7)的d为系数,t为蝴蝶迭代次数;Tmax为蝴蝶种群最大迭代次数。搜索范围会随着蝴蝶种群迭代次数的改变而变小。

3.2.2 收敛因子

针对传统的BOA收敛速度慢问题,引入收敛因子b到全局搜索的公式中[10]。当b值较大时,能让BOA在迭代前期的收敛速度提升。当b值逐渐变小时,能使BOA在迭代后期的寻优精度提高。这样既可以提高算法的收敛速度又可以提高寻优的精度。收敛因子b可表示为

(8)

(8)式中:t为蝴蝶种群迭代次数;Tmax为蝴蝶种群最大迭代次数;其中b属于[0,2]。

则BOA的全局搜索公式如式(9)

(9)

3.3 算法测试

为了验证改进的蝴蝶优化算法比传统的蝴蝶优化算法有更好的寻优精度以及收敛性等等,接下来运用改进的蝴蝶优化算法(IBOA)与传统蝴蝶优化算法(BOA)来测试函数。

表3列出了BOA、IBOA对下面四个函数f1~f4进行20次的独立运行所得到的对比结果图。其中f1、f4为单峰函数,f2、f3为多峰函数,设置最优值为fmin=0。多峰值函数其会有局部极值解的情况,以此来测试IBOA的性能。测试的函数见表2。Dim表示维数。

表2 测试函数

表3 测试结果

由上表3的测试结果图可知:在固定的1200的迭代次数中,IBOA算法无论是测试单峰函数还是多峰值函数都显著比BOA更加优化,除了f2多峰函数外,其它函数都能寻到0值。虽然IBOA没寻到f2的最优值,但相比于BOA,其寻优精度高达E274级别,精度提高了255个数量级。可见得SCA策略能有效地降低算法陷入局部最优的可能性;并且引入收敛因子,能加快算法的收敛速度。

为了证实IBOA的优势,文本添加图5到图8的函数收敛图。依图可得,IBOA的寻优能力很明显比BOA的要好。f1与f3、f4函数都能收敛到fmin=0的点上。其中f1函数在迭代1120次就收敛到0;f3函数在迭代1194次后收敛到0;f4函数在迭代1032次后收敛到0。而BOA基本上不能收敛到最优值,因此其寻优能力较差,而IBOA的寻优能力更强

图5 f1函数收敛图 图6 f2函数收敛图

图7 f3函数收敛图 图8 f4函数收敛图

图9 f1函数图 图10 f2函数图

图11 f3函数图 图12 f4函数图

4 改进的蝴蝶优化算法在MPPT的运用

占空比定义为蝴蝶个体,蝴蝶香味浓度最高(适应度值)的为最大功率值。将IBOA运用在MPPT算法上时,是以电流与电压为输入量,而以占空比为输出量去控制MOSFET,最终来控制输出功率。

4.1 终止条件

因为蝴蝶个体每一次迭代都要把输出功率进行降序,因此若IBOA达到下面要求之一时,则IBOA保持最佳占空比:一为达到最大的迭代次数;二为第一蝴蝶与最后一只蝴蝶的输出功率的最大误差小于5%时。

4.2 基于IBOA的MPPT流程图

1)初始化

2)计算

3)判断

4)更新

从[0,1]内产生一个随机数字r,若该数字r大于切换概率p为局部飞行,则按(5)进行局部位置更新;若该数字小于切换概率p为全局飞行,则按(9)式进行位置更新。若未达到终止条件,则执行正余弦指引机制,重复执行1)到4)的操作。

5)最终

如果达到终止条件后,那么输出最佳的占空比,结束寻优;否则继续寻优。

图13 基于IBOA的MPPT流程图

5 仿真及其结果分析

5.1 仿真

本仿真是基于Matlab2018b平台搭建的。模型选择传统的升压电路(Boost)且其参数设置为C1=2.7μF、C2=25μF、L=0.8mH、Rload=100Ω、MOSFET频率为0.1Mhz。光伏阵列由4×1光伏组件串联所构成。在标准情况下,每一个光伏组件的内部参数设置为,开路电压Uoc=21.3V,短路电压Isc=4.47A,功率电流Imp=3.17A,多峰值功率Ump=17.1V。基于制变量法[11],设置IBOA与BOA、GWO的种群数量均设为ni=6(i=1,2,3)且最大迭代次数是15。参数设置表如下表4。θ为阈值。

表4 参数设置

图14 光伏MPPT仿真模型

图15 BOOST内部电路拓扑结构图

为了证实改进的蝴蝶优化算法(IBOA)算法在MPPT上比蝴蝶优化算法(BOA)、灰狼优化算法(GWO)、扰动观察法(P&O)的性能要好,本模型的搭建是在局部遮荫下对各类算法进行多次仿真,以此来比较上述算法之间的性能指标,包括追踪精度、追踪速度、震荡情况等。

首先在局部遮荫的情况下,用P&O的MPPT算法来追踪MPP,其仿真的结果图如下。

图16 传统P&0算法追踪MPP的仿真图

其次,基于GWO的MPPT算法去追踪最大功率点,其仿真如图17。由图17可见,其追踪到了280.6W的功率,接近MPP。

图17 GWO的MPPT算法追踪MPP的仿真图

最后,基于BOA的MPPT算法与基于IBOA的MPPT算法对最大功率进行追踪,其仿真结果图见图18与图19。

图18 BOA的MPPT算法追踪MPP的仿真图

图19 IBOA的MPPT算法追踪MPP的仿真图

5.1 结果分析

为了方便分析结果,用表5对性能进行分析。

表5 性能表

由图3和表5可知,其输出为多峰值曲线,光伏输出的最大功率点为285.2W。而在局部遮荫下,用传统的P&O算法去追踪的平均最大功率点为172.90W,追踪的精度仅仅到60.6%,与最大功率点相差了112.30W并无达到285附近,即陷入了局部最优情况。由此可得,传统扰动观察法并不能找到全局最优功率点。

经过15次的重复实验,BOA、IBOA的MPPT算法都可以追踪到接近全局最优功率点的附近(MPP)。虽然运用传统BOA的MPPT算法去追踪MPP点能追踪到较大的平均功率点280.22W,追踪精度达到了98.25%,但其收敛速度慢,且在追踪中出现搜索震荡大和搜索不充分的情况。相比BOA的MPPT算法,GWO的MPPT算法追踪的平均功率值大小为280.43W,追踪精度也达到了98.33%,且其寻优时间快了1.5秒;运用IBOA的MPPT府在追踪最大功率点的优势比较明显,其追踪到的平均最大功率值为281.96W,追踪精度高达98.86%,比PAO、BOA、GWO的追踪精度分别高了38.26、0.61、0.53个百分点,并且其收敛时间比GWO、BOA分别快了0.24、1.69秒以及其震荡程度明显比BOA的震荡要小很多。由此可见,IBOA的MPPT算法在追踪精度、收敛速度、震荡情况都明显要比BOA要好,也证实了收敛因子与正弦余弦机制的有效性。

6 结束语

针对光伏阵列输出功率会出现多峰的情况本论文提出改进的蝴蝶优化算法去追踪全局最大功率点。通过仿真得到结论如下:

1)相比于传统BOA的MPPT算法,IBOA的MPPT算法在追踪精度、收敛速度、震荡情况的性能上要更好。

2)相比GWO的MPPT算法,IBOA的MPPT算法在追踪最大功率点时候,其收敛速度更快以及追踪精度更加高。

3)在局部遮荫下,光伏阵列输出功率会有多峰现象,利用P&O 去追踪MPP会陷入局部最优,降低太阳能利用率。但IBOA的MPPT算法能在局部遮荫下跳出局部最优,而寻优到全局最优功率点。

猜你喜欢
全局峰值局部
犊牛生长发育对成年奶牛高峰奶产量和峰值日的影响
领导者的全局观
日常的神性:局部(随笔)
凡·高《夜晚露天咖啡座》局部[荷兰]
给力的全局复制APP
云南省民用汽车保有量峰值预测
丁学军作品
再撑一下
统筹全局的艺术
局部求解也生动