基于改进鸽群算法的光伏阵列MPPT 方法

2021-09-24 02:43陈忠华
电力系统及其自动化学报 2021年8期
关键词:鸽群罗盘输出功率

陈忠华,刘 博,郭 瑞,唐 俊

(辽宁工程技术大学电气与控制工程学院,葫芦岛 125105)

随着传统化石燃料燃烧对人与自然可持续发展带来的巨大挑战,世界各国都积极推进本国可再生能源在能源结构中的优化和改革,因此提高光伏、风能等新型能源发电效率是智能电网发展的一个重要方向。在理想状态下,受恒定温度和光照的光伏阵列会使P-U特性曲线呈现单一峰值最大功率点MPP(maximum power point)。此时的最大功率点跟踪MPPT(maximum power point tracking)可通过传统的扰动观察法、增量导纳法、爬山法等来实现[1-3]。然而在局部阴影状态下,光伏阵列受到阴影覆盖时会出现电极转换形成热斑效应,不仅严重影响光伏板的正常运行,还会使光伏阵列P-U特性曲线呈现多个峰值点共存的状态,称此为多峰效应[4-6]。局部阴影状态的出现具有随机性、偶然性和不确定性,大多受到环境和天气变化的影响,而多峰效应易使大部分MPPT 控制算法陷入局部最优解,从而极大程度地降低光伏发电系统的发电效率。所以对于MPPT算法的研究与改进一直是当前的研究热点之一。

针对多峰效应这一问题,文献[7]采用了群体智能算法的粒子群优化PSO(particle swarm optimiza⁃tion)算法实现MPPT控制,并提出分散定位粒子初始位置这一新思路,但该方法收敛速度慢、精度低,存在功率损耗;文献[8]将变异理论和PSO算法相结合,采用固定的粒子数量跟踪MPP,有效地节约了成本,但是失去了随机性和多样性,不能有效覆盖寻优可行域,难以高效准确地实现全局寻优;文献[9-10]分别通过给粒子增加领地属性和提取粒子本身最优电压的方法,从粒子位置的迭代更替实现MPPT;文献[11]对影响粒子寻优速度的惯性权重采取指数递减的权值策略,从而大大提高粒子的寻优能力。尽管这些方法都能够实现MPPT,但是使PSO算法的计算过程更加复杂,且随机性不足等缺点依然存在。而生物启发式算法被认为是群体智能算法的发展,如自适应细菌觅食算法、蚁群优化算法、免疫萤火虫算法等方法[12-16]已经应用到了光伏发电系统多峰值MPPT领域。这些算法虽然都有较好的全局寻优能力,但是控制过程大多较为复杂,存在收敛速度慢、精度低、易陷入局部最优等缺点。2014 年Duan 等[17]受到鸽子归巢行为的启发,首次提出一种自主归巢行为的优化算法—鸽群优化PIO(pigeon-inspired optimization)算法,该算法在图像处理、无人机导航等领域研究成果较多,具有明确的搜索方向和快速的收敛速度,计算精度高,可解决线性、非线性函数的求解寻优问题[18]。

本文基于鸽群算法提出一种改进鸽群算法,并应用于光伏MPPT控制。在鸽群算法中引入学习因子,对地图罗盘因子和地标算子进行改进。改进后的搜索算子对鸽子的位置和速度进行迭代更新,以此确保在多峰效应下不陷入局部最优解,从而实现快速高效的跟踪。最后经过仿真实验,证明了算法的有效性,能够在静态和动态的多峰状态下快速精确地实现MPPT,有效地提高了阵列输出效率,具有较好的实用价值。

1 光伏阵列输出多峰值特性分析

在光伏阵列实际工作中,阵列易受局部遮阴情况影响而出现功率失配,导致阵列组件电压正负极翻转,使其功能转变为消耗剩余正常工作阵列组件能量的负载。因而需要给光伏组件并联旁路二极管以消减遮阴对光伏发电系统的影响。此外,为避免不同阵列串间的电流逆流,往往在阵列串尾端串联防逆流二极管。本文以3×2阵列为例,阵列布局如图1 所示,阵列组件参数为希凯德单晶硅200 W标准参量如表1所示,其中参数是基于标准测试条件,且均有±3%的公差。

表1 光伏阵列组件参数Tab.1 Parameters of PV array module

图1 均匀光照下的光伏阵列结构及其P-U 特性曲线Fig.1 PV array structure under uniform illumination and its P-U characteristic curve

在均匀光照条件下,光照强度为1 000 W/m2,温度为25 ℃时,光伏阵列组件均正常工作,输出功率P-U曲线中有且仅有一个峰值点,也就是全局最优值点Gbest。Gbest的功率为1 233.418 W,对应的电压为112.12 V,光伏阵列输出峰值功率点所对应的电压约为光伏阵列组件串电压的81.6%。

在局部阴影状态下,光伏阵列会出现多峰效应。P-U特性曲线会呈现多个峰值点,阵列峰值点个数=串联支路数+1[7]。串联支路数与局部极值点个数相等。假设光伏阵列串联支路分别有1 个组件和2 个组件受到不同程度的遮挡,光照强度为800 W/m2和600 W/m2,光伏组件温度均为25 ℃,可得到图2 中的多峰特性曲线,光伏阵列P-U特性曲线呈现3 个功率极值点,其中有2 个串联支路局部极值点Pbest1和Pbest2、1 个全局最优功率极值点Gbest,Pbest1的功率为533.614 W,所对应的电压为36.33 V;Pbest2的功率为871.69 W,对应的电压为73.16 V;Gbest的功率为987.389 W,对应的电压为107.32 V。

图2 阴影状态下的光伏阵列布局及其P-U 特性曲线Fig.2 PV array configuration in shadow state and its P-U characteristic curve

在面对多峰问题时,如果采用传统MPPT 控制方法或使用常规寻优算法,光伏系统则不能高效追踪到Gbest,常陷入局部最优,导致光伏系统输出效率降低,因此需要稳定高效的MPPT方法进行寻优。

2 鸽群算法改进

2.1 鸽群算法原理

鸽群算法是一种效仿鸽群归巢的算法,是模拟鸽子在归巢过程中使用不同定位工具的行为。鸽群算法由地图罗盘因子和地标算子两部分组成,地图罗盘因子适用于较远的距离,是鸽群判断归巢方向的主要工具,而地标算子适用于近距离,是鸽群判断归巢方向的精度工具。在地图罗盘因子寻优阶段,鸽子代表寻优问题的解,由位置和速度2 个矢量表示。若有N只鸽子在d维空间中组成一个群体,而每只鸽子的位置和速度分别由X和V表示,则种群中第i只鸽子的位置和速度分别为

通过比较所有鸽子的位置,可以得到鸽子的最佳位置,如图3所示。

所有鸽子的最佳位置是由地图罗盘因子来保证的。通过位置的比较可以看出,处于最右侧的鸽子的位置最好,每只鸽子可以根据式(2)来调整自己的飞行方向以跟随这只特定的鸽子,图3中调整方向用粗箭头表示,原方向用细箭头表示,两个方向箭头的矢量和为下一个飞行的方向,再根据式(3)来进行位置更新。地图罗盘因子呈负指数变化是保证对整个d维空间的搜索,是全局快速搜索能力的体现,并且在式(2)中应用随机数rand 增加了鸽群的多样性。

图3 鸽子移动速度和位置关系Fig.3 Relationship between pigeons’moving speed and positions

地标算子中每一次迭代后鸽群数量均会淘汰1/2,同时对鸽群按照适应度排序。如果鸽子对地标熟知,将直接飞向目的地,否则,它们将跟随对地标熟知的鸽子飞行。被淘汰的1/2鸽群称为迷失鸽群,是远离目的地且不熟知地标的鸽子集合。未被淘汰的1/2 鸽群称为优质鸽群,将优质鸽群中种鸽所处的中心位置当作地标,作为飞行的参考方向。

每次迭代后的鸽群数量、k-1 次迭代后的种鸽位置以及第i只鸽子在第k次迭代后的新位置Xi(k)[21]分别表示为

式中:N(k)和N(k-1)分别为第k次和第k-1 次迭代鸽子的数量;XC(k-1)为k-1 次迭代后的种鸽位置;g(·)为适应度函数,是个体鸽子的素质。最大值优化问题可以选择函数

标准鸽群算法运行流程如图4 所示,其中k2max>k1max。

图4 标准鸽群算法流程Fig.4 Flow chart of standard PIO algorithm

鸽群算法在应用到实际问题中时,在有限的迭代次数下,容易在地图罗盘因子寻优阶段陷入局部最优,同时,优质鸽群在衰减过程中会丧失多样性。因此,为提升全局寻优能力对鸽群算法进行了改进。

2.2 鸽群算法改进

鸽群算法中的地图罗盘因子和地标算子两部分均处于独立运行阶段,地图罗盘因子e-Rk是第一部分算法搜索速度和寻优能力的关键,所以采用非惯性权重和地图罗盘因子相互融合,即

式中:W为权重;Wmin和Wmax分别为地图罗盘因子的限制最小值和最大值,通常取Wmin=0.4 ,Wmax=0.9;kmax为最大迭代次数。在优化时,设置一个较大的W以促进全局寻优,并逐渐减小W以增加精度,从而提高局部搜索能力,在一定程度上避免了早熟收敛。然后再引入学习因子用来调节全局最优位置在整个搜索过程中的权重[22-23]。同时根据权重的三角函数调整策略,将学习因子视为权重的函数,添加学习因子C1后,式(2)改进为

则学习因子C1和权重W的关系为

式中,a、b为常数。

权重W和学习因子C1的变化曲线如图5 所示,可以看出,在迭代区间内,在0

图5 权重W 和学习因子C1 的变化曲线Fig.5 Changing curve of weight W vs learning factor C1

在启动地标算子过程中,鸽子的数量在每次迭代后都将衰减。鸽子的数量过少会使算法缺失多样性,影响寻优效果,所以本文采用文献[24]中的方法,用一个常数来定义鸽子数量的变化,则式(4)改为

式中,c、d为常数。

学习因子C1和C2的变化曲线如图6 所示,可见,随着迭代次数的增加,学习因子C2逐渐减小,增强了算法后期的寻优精度。因此式(6)改进为

图6 学习因子C1和C2 的变化曲线Fig.6 Changing curve of learning factor C1 and C2

由于原始鸽群算法是一个分段函数,在算法迭代前一部分是通过地图罗盘因子影响下的速度和当前最优位置的向量和作为参考方向,而在算法的迭代后期是通过地标算子种鸽的位置作为参考方向,两者互不干扰,评判标准较为单一。通过引入学习因子C1和C2,使C2与C1进行关联,增强了算法的整体性,通过两者的制约交流,保证了算法在两阶段寻优过程中的搜索速度和搜索精度,提高了寻优能力。

3 改进鸽群算法在光伏系统中的实现

在光伏发电系统MPPT 中,目标函数为实际输出功率,将每只鸽子的当前位置Xi(k)看作是当前工作电压Ui(k) ;将每只鸽子下一次的迭代速度Vi(k+1)看作是光伏系统的当前电压增量ΔU;将鸽子的适应度g(Xi(k))看作是在当前时刻工作电压所对应的功率;在地图罗盘因子寻优时将鸽子找到的最佳位置看作是在光伏发电系统中的最大功率点电压附近的电压;在地标算子精度寻优时找到的鸽群最优位置看作是光伏发电系统的最大功率点电压。

学习因子C1、C2和权重W的选择对于光伏系统寻优过程影响较大,在地图罗盘因子寻优阶段权重越大越不易陷入局部最优,精度越高收敛速度越慢。基于文献[25]提出的C1先小后大、而C2先大后小的思想,设定初始参数C1=0.2,W=0.9。在地标算子寻优阶段权重越小收敛速度越快,设定初始参数C2=2。由于反复多次迭代会带来功率长时间的振荡,优质鸽群数量减少,缺失物种多样性,因此采取如下方法:设置初始鸽子的位置具有随机分散的特点,当鸽子的位置十分集中时(鸽子间的最大电压差小于0.085倍的开路电压),到达了最大功率点附近。

当受到遮挡出现阴影状态或光照变化时,阵列输出功率也会发生变化,因此需要重启算法,使系统快速稳定的工作在新的最大功率点。其功率变化量ΔP可表示为

式中:Pt为阵列当前时刻检测到的实际输出功率;Pm为上一时刻追踪到的最大输出功率。

根据经验数据,本文设定的重启条件1 为:当光照强度突然变化,且变化量大于等于15 W/m2时,所对应的功率变化量ΔP≥0.02,算法重新启动地图罗盘因子寻优阶段;设定重启条件2 为:当光照强度均匀缓慢变化时,其瞬时功率变化量0.02>ΔP≥δ,δ为系统稳定时所能接受的最大扰动,本文设定当光照强度变化量在1 W/m2时的功率变化量为可接受的最大扰动阈值,此时的δ=9.72×10-4,算法重启地标算子精度寻优阶段。

改进鸽群算法MPPT工作流程如图7所示。算法步骤如下。

图7 改进鸽群算法MPPT 工作流程Fig.7 Flow chart of MPPT based on improved PIO algorithm

步骤1 设置初始参数N、W、k1max、k2max、C1、C2,设定占空比D,获取Uoc、Umax。

步骤2 对鸽群位置和速度进行初始化。

步骤3 启动地图罗盘因子,通过式(9)和式(3)更新电压增量和输出电压。

步骤4 计算评价每只鸽子的适应度,更新个体极值和当前最优功率Pbest。

步骤5 判断迭代次数是否达到地图罗盘因子阶段迭代最大次数。若达到,则启动地标算子阶段;否则,继续执行步骤3。

步骤4 启动地标算子,通过式(5)、式(11)和式(13)更新电压增量和输出电压。

步骤5 计算评价每只鸽子的适应度,更新全局最优功率Gbest。

步骤6 判断迭代次数是否达到地标算子阶段迭代最大次数。若达到,则输出最优功率Gbest;否则,继续执行步骤6。

步骤7 检测实时输出功率变化,计算瞬时功率变化量。

步骤8 判断是否满足重启条件。若满足,重启条件2,则继续执行步骤6;否则,判断是否满足重启条件1,若满足则继续执行步骤3,若不满足则返回步骤7,等待输出功率变化。

4 仿真实验分析

4.1 仿真系统及其参数设置

光伏阵列采用3×2 光伏组件构成的阵列。MPPT跟踪系统如图8所示。

图8 基于准Z 源变换最大功率点跟踪系统Fig.8 Maximum power point tracking system based on quasi-Z source transformation

采用Quasi-Z 源变换电路拓扑结构,其输入电压Uin与输出电压Uout关系为

Quasi-Z 源变换电路具备Z 源变换拓扑结构的优点,可以同时实现升压和降压的功能,消除电压波形畸变,维持输入电流连续。跟踪控制器采用改进鸽群算法,迭代过程中根据式(15)计算出占空比D,驱动脉冲发生器更新阵列电压,实测出此时光伏阵列的实际输出功率,为下次迭代提供参考。

通过Matlab/Simulink 仿真软件搭建光伏系统,算法的主要初始参数如表2 所示,表中k1max为地图罗盘因子寻优部分的最大迭代次数,k2max为改进鸽群算法总的迭代次数。仿真电路参数[26]如表3所示。

表2 算法的初始参数Tab.2 Initial parameters of the algorithm

表3 仿真拓扑电路器件参数Tab.3 Device parameters of simulation topology circuit

仿真系统选取采样周期为1×10-5s,控制器频率为10 kHz。为体现改进算法的优越性,分别在单峰和多峰静态条件下对PSO 算法、原鸽群算法、改进鸽群算法进行对比仿真实验。为体现所提算法的适用性,在动态匀变和突变条件下对改进鸽群算法进行了仿真实验。光伏组件受光照强度如表4所示(其中组件1~3为一条阵列串,组件4~6为一条阵列串)。

表4 标准25 ℃下3×2 光伏阵列组件受光照强度Tab.4 Light intensity for 3×2 PV array module at standard 25 ℃

4.2 仿真结果

4.2.1 静态仿真

光照强度S= 1 000 W/m2条件下,单峰静态光伏阵列输出功率曲线如图9 所示。由图9 可以看出,在单峰静态条件下,3 种方法均能对MPP 进行有效跟踪,虽然PSO 算法粒子数量为3 时追踪速度较快[8],但较另外两种控制方法要相差很多,并且基于PSO 的MPPT 控制方法的稳定性较差;在图9(c)中可清晰看出,改进鸽群算法的两阶段寻优分布,先由第一阶段快速逼近全局最优值,然后通过地标算子精度寻优,在0.01 s时可得到稳定的输出功率,输出功率1 232 W,此时的最大输出功率和理论值的相对误差约为0.02%。而追踪速度较鸽群算法提升了约66.7%,而鸽群算法的追踪速度较PSO 算法提升了约50%。

图9 单峰静态光伏阵列输出功率仿真曲线(S=1 000 W/m2)Fig.9 Output power simulation curves of single-peak static PV array(S=1 000 W/m2)

在多峰静态条件下,光伏阵列输出功率如图10所示。仿真结果如表5所示,表明原鸽群算法虽然能对MPP进行跟踪,但与PSO算法在多峰时均会陷入局部最优,原鸽群算法在追踪速度与跟踪稳定性上要优于PSO 算法。基于PSO 算法的MPPT 在0.090 s时达到稳定,输出功率865.4 W,而基于原鸽群算法的MPPT 在0.036 s 时达到稳定,输出功率870.0 W,在两种算法控制下追踪到的最大输出功率的相对误差为0.52%,基于原鸽群算法控制下追踪到的最大功率与理论计算局部最优输出功率的相对误差为0.19%。基于改进鸽群算法的MPPT在0.012 s时到达稳定,输出功率959.1 W,与理论输出最优功率相比,输出效率达到了97.49%。通过比较,改进鸽群算法能有效的避免陷入局部最优,追踪速度有明显提升。

图10 多峰静态光伏阵列输出功率仿真曲线Fig.10 Output power simulation curves of multi-peak static PV array

表5 静态多峰仿真结果Tab.5 Static multi-peak simulation results

4.2.2 动态仿真

在多峰匀变条件下,光照强度变化如图11所示,两条阵列串分别接受S1和S2的光强照射。多峰动态匀变输出功率图12所示可见,光伏系统从开始追踪最大功率到稳定运行经过了0.011 s,输出最大功率为1 116 W。当光照强度在0.2~0.4 s匀速缓慢递减时,实时输出功率会跟随光照强度的变化而减小。当瞬时功率的变化量0.02>ΔP≥9.72×10-4W 时,算法会重启地标算子寻优阶段。在图11 中光照匀变时算法重启的仿真数据如表6 所示。例如图12在0.397 8 s 时符合重启条件2,算法重新启动地标算子寻优,经过0.006 2 s后即0.404 s时功率变化量几乎为0,系统达到稳定,输出功率为751.5 W。仿真结果体现了改进鸽群算法具有优秀的追踪速度和追踪精度,同时验证了算法重启策略的有效性。

图11 动态匀变光照强度Fig.11 Dynamic uniform light intensity

图12 多峰动态匀变输出功率Fig.12 Multi-peak dynamic uniform output power

表6 仿真数据(光照强度匀变)Tab.6 Simulation data(under uniform light intensity)

在多峰突变条件下光照强度具有不确定性和随机性,两条阵列串分别接受到S1和S2的光强照射,光照强度变化如图13 所示。光照强度突变时功率变化量如表7所示,在0.3 s和0.6 s时光照强度突变,其瞬时输出功率变化量ΔP均大于0.020 W,满足算法重启条件1,启动地图罗盘因子寻优。仿真结果如图14 所示,例如在0.3 s 时光照强度突然下降,实际输出功率也会跟随下降,经过约0.006 s后到达稳定,输出功率751.5 W,稳定后的功率变化量几乎为0。例如在0.6 s时光照强度突然上升,实际输出功率也会跟随上升,经过约0.005 s后到达稳定,输出功率891.6 W。仿真结果表明了改进鸽群算法在复杂多变时对最大功率点跟踪的可行性和稳定性,且算法动态响应性能较好,对外界环境变化的反应迅速。

图13 动态突变光照强度Fig.13 Dynamically mutated light intensity

图14 动态突变输出功率Fig.14 Dynamically mutated output power

表7 仿真数据(光照强度突变)Tab.7 Simulation data(under mutated light intensity)

5 结 论

本文针对光伏阵列在遮阴情况下出现的多峰效应,提出一种改进鸽群算法,在鸽群算法两阶段寻优中引入学习因子,通过学习因子的相互交流提高了算法的整体性,在解决基础鸽群算法易陷入局部最优的同时,提升了寻优搜索速度。通过分析仿真实验数据结果可以得出以下结论:

(1)提出的改进鸽群算法能够有效地避免陷入局部最优;

(2)提出的MPPT 控制策略在静态和动态多峰的情况下均能追踪到最大功率且有较高精度;

(3)所提算法具有较快的追踪速度且效果稳定,从而提升了光伏发电系统的输出效率,在一定程度上提升了光伏发电的经济性。

猜你喜欢
鸽群罗盘输出功率
鸽群即景
一起种鸽新城疫病因分析与防治
一个鸽群飞过的黄昏
不宜上课
鸽群与鸽哨
印尼《罗盘报》之中国国家形象
适用于智能电网的任意波形输出功率源
基于双层BP神经网络的光伏电站输出功率预测
分布式发电系统并网逆变器输出功率的自适应控制
大全集团对其光伏组件产品提供25年输出功率线性质保服务