基于粒子群优化的光伏系统MPPT控制方法
— 265—基于粒子群优化的光伏系统 MPPT 控制方法刘艳莉,周 航,程 泽(天津大学电气与自动化工程学院,天津 300072)摘 要: 局部遮阴条件下光伏阵列 P-V 特性引起的多个极值点使常规的最大功率点跟踪 (MPPT) 算法失效。针对上述问题,提出一种基于粒子群优化算法的控制方法,以解决局部遮阴下的最大功率跟踪问题。实验结果显示,光伏模板的输出电压被稳定地控制在最大功率点附近,证明算法是有效的。关键词: 最大功率点跟踪;粒子群优化算法;局部遮阴MPPT Control Method of PV System Based on PSO LIU Yan-li, ZHOU Hang, CHENG Ze (School of Electrical Engineering and Automation, Tianjin University, Tianjin 300072)【 Abstract 】 Under partially shaded conditions, the P-V curve of PV arrays has the characteristics of multi-summit, which makes the Maximum Power Point Tracking(MPPT) failed. Aiming at above problem, this paper proposes a control algorithm based on Particle Swarm Optimization(PSO) algorithm for solving maximum power point tracking problem. Experimental results show that output voltage of PV system is maintained near maximum power point, and the algorithm is effective. 【 Key words 】 Maximum Power Point Tracking(MPPT); Particle Swarm Optimization(PSO) algorithm; partially shaded conditions计 算 机 工 程Computer Engineering第 36卷 第 15 期Vol.36 No.15 2010 年 8 月August 2010·开发研究与设计技术· 文章编号: 1000— 3428(2010)15 — 0265— 03 文献标识码: A 中图分类号: TP3931 概述对于户型光伏一体化发电系统,局部遮阴情况是最为普遍和复杂的。由于建筑周围存在树木、电线杆、电缆线等障碍物,当光照角度随着季节、时间发生变化时,在光伏阵列上会产生局部阴影,造成太阳能发电系统功率输出的下降,严重时会引起“热斑”效应造成安全问题。在局部遮阴情况下,光伏阵列的输出特性会出现多个峰值点,使常规的最大功率跟踪控制算法失效。目前常用的解决方法仅限于对常规算法的改进或是引入较复杂的计算 [1-3] 。 本文利用粒子群优化(Particle Swarm Optimization, PSO) 算法容易实现、在多峰函数寻优方面收敛速度快的优势 [4-6] ,将 PSO 算法应用于太阳能 独 立 组 件 的 最 大 功 率 点 跟 踪 (Maximum Power Point Tracking, MPPT) 中。对于太阳能独立组件并网发电结构,由于每个组件具有独立的 MPPT 控制器,因此不存在局部遮阴造成的光伏组件之间不匹配的问题。在独立组件结构中需要对每个模块进行独立的最大功率控制,其本质上是一个多变量控制问题,利用粒子群优化算法的多变量寻优特性,对光伏阵列的多个模块的最大功率点进行寻优,实现光伏模块能量管理的群控。2 基于粒子群优化的多峰式 MPPT 设计2.1 光伏阵列的多峰特性在不同光照强度下,光伏电池有不同的 I-V 特性,局部遮阴现象的发生也使光伏模块有不同的最大功率点。由于串联起来的光伏模块流过的电流相等,因此整体的 P-V 特性会呈现多峰形式。本文对由 1 000 个模块组成的 PV 阵列的 I-V 特性和 P-V特性用 Matlab 进行仿真。 阵列按照光照强度的不同分为 3 个组群,见图 1。其中组群 1 为 40 个模块,组群 2 为 38 个模块,组群 3 为 22 个模块。深色的为被遮阴的光伏模块。设被遮阴模块的光照度 λ =0.1,而未遮阴模块的光照度设为 λ =1。仿真结果如图 2、图 3 所示。图 1 光伏阵列配置图 2 PV 功率的电流曲线基金项目: 国家“ 973”计划基金资助项目 (2009CB219700) ;天津市科技支撑基金资助重点项目 (09ZCGYGX01100) 作者简介: 刘艳莉 (1959 - ),女,副教授、硕士,主研方向:功率控制,模式识别;周 航,硕士;程 泽,副教授、博士收稿日期: 2010-03-15 E-mail : liuyanli@tju.edu.cn— 266—图 3 总功率输出曲线从图中可以看出,串联模块的光照不同导致输出电压产生多峰,造成总的输出功率产生多个极值点,使常规的单峰值最大功率跟踪算法失效。2.2 粒子群优化算法在 MPPT 中的应用2.2.1 粒子群优化算法的应用在光伏电池最大功率跟踪控制中,整个算法分为 2 个部分:一部分为粒子群的寻优环节,另一部分为最大功率跟踪部分。在 PSO 算法中,每个优化问题的潜在解 (也就是最大功率点电压 )都是搜索空间中的一个“粒子” ,所有粒子都有一个被目标函数决定的适应值。本文定义阵列的总功率函数为目标函数,而变量就是阵列的输出电压。具体步骤如下:(1)初始化及目标函数的确定使用种群数量等于 10 个粒子的种群,进化代数设定为80 代,并分别对学习因子、加权系数和最大速度等参数进行初始化。最后对每个粒子的位置和速度进行初始化设置。粒子群初始化设置如下:pop_size=10; part_size =2; max_gen=80; w_max= 0.9; w_min=0.4; v_max=2; c1=2; c2=2; (2)评价种群 x(t) 在对各种参数进行初始化后,计算每个粒子对应目标函数的适应值。目标函数为阵列输出的总功率,以 2 个模块的系统为例,适应值函数的表达式为1 1 1 2 2 2= ( ( , , )+ ( , , ))fit I PVprog i Sun T PVprog i Sun T× (1) -8-83.8 - +2.2 10( , , )=1.110 3 lb( )-2.2 100.284 4Sun IPVprog I Sun TI× ××××(2) 其中, ( , , )PVprog I Sun T 为太阳能模块的输出特性函数,给定温度为 25o。通过调用一个适应值函数计算适功率值的大小,该函数实质上包含了每个模块的电流电压公式并将它们加和形成总系统的功率输出。(3)比较确定个体和全局适应度及极值比较单个粒子当前适应值和历史最好适应值的大小,如果当前适应值较大,那么更新单个粒子的 iP 。每个粒子的最好适功率值都确定后相互比较以确定全局的最好适应值 gP 。(4)更新粒子速度和位置。 根据式 (1)、 式 (2)更新所有粒子的速度位置。(5) 检查结束条件, 若满足, 结束寻优, 输出最优解 maxU ;否则, t=t+1 ,转至 (2) ,结束条件为寻优达到最大进化代数。基于粒子群优化算法的 MPPT 控制算法流程如图 4所示。开始初始化粒子的速度和位置检测光照温度参数,确定目标函数,然后对每个粒子,计算 2个模块的功率之和寻找粒子的个体最优值 Pi和全局最优值 Pg评估每个粒子的适应值输入系统参数,设置变量限值根据式 (1)和式 (2)更新每个粒子的速度和位置重新计算阵列的输出总功率,再次评估每个粒子的适应值,根据式 (3)判断是否更新每个粒子的 Pi和 Pg判断是否满足终止条件No结束Yes输出最优解图 4 基于粒子群优化的 MPPT 控制算法2.2.2 仿真结果及分析本文对 2 个光伏模块情况下的粒子群优化 MPPT 算法进行了 Matlab 仿真。 2 个模块的参数设置为:Sun1=1 kW/m 2, T1=25 ℃Sun2=0.8 kW/m 2, T2=23 ℃二维的多峰特性曲线和粒子群寻优结果如图 5 所示。图 5 2 个模块的多峰特性和粒子群 MPPT 仿真结果由仿真结果可以看出,二维多峰曲线的全局最大功率值为 102 W ,多峰粒子群优化算法寻到的最大功率点的功率值为 102.632 2 W ,与理论值 102 W 的误差很小,证明了该算法在跟踪最大功率点上有很好的准确性。算法寻优时间为0.078 s,表明该算法的收敛速度非常快,所以,多峰粒子群最大功率跟踪算法能够实现局部遮阴下对光伏阵列的全局寻— 267—优。该算法还可以通过优化算法参数进一步提高算法的收敛速度。3 基于粒子群优化的分布式 MPPT 设计独立光伏组件并网发电是未来光伏发电结构的一个发展趋势。它采用光伏模板独立寻优,然后并网发电,既可以提高功率输出和传输效率,又可以避免局部遮阴等现象造成的功率失配问题。对于独立组件并网发电系统,需要进行分布式 MPPT 控制,即每个模块独立安装一个控制器,用常规的MPPT 算法进行最大功率跟踪,这样不仅增加了成本,而且不便于集中管理。本文提出了一种基于粒子群优化的分布式 MPPT 控制算法,将多个模块的 MPPT 控制问题转化为一个多变量系统的寻优问题,利用粒子群优化算法实现了最大功率跟踪的分布式控制。基于 PSO的分布式 MPPT 控制算法的思想是, 将多个模块的输出电压作为多维变量,将系统总的功率输出作为目标函数,运用粒子群优化算法,寻出总输出功率的最大值,也就是使每个模块同时寻到最大功率点,然后通过常规的恒电压法将太阳能电池板的输出电压控制在最大功率点上,这样就实现了光伏发电系统的分布式最大功率控制,同时实现了多个模块的群控。该算法的实现步骤与多峰 MPPT 寻优类似,主要不同的是粒子群优化算法的目标函数。以 2 个模块为例,其分布式MPPT 算法的目标函数为1 1 2 2= ( , 1, 1)+ ( , 2, 2)fit i PVprog i Sun T i PVprog i Sun T× × (3) 其中, i1、 i2 分别为 2 个模板的输出电流。二维系统的 P-V 特性和仿真结果见图 6。图 6 二维系统的 P-V 特性和 MPPT 仿真结果由图 6 可知, 2 个模块的理论最大功率值 Pmax1=61 W,Pmax2=48 W,理论总功率值为 109 W。而算法寻到的最大功率值为 109.139 4 W。 寻优时间为 0.094 s。 图 7 是太阳能模块分布式 MPPT 仿真结果。图 7 太阳能模块分布式 MPPT 仿真结果从图 7 中波形可以看出,太阳能模块的输出电压被快速地调节到粒子群自定义模块输出的最大功率点的电压值上,稳态时功率没有震荡,并且误差很小,说明粒子群寻优模块准确地寻到了最大功率点电压,并且通过恒电压法,太阳能模块稳定工作在最大功率点上,此方法对多模块 (图 8)同样 适用。图 8 多模块分布式 MPPT 仿真结果为了验证算法的可行性,本文搭建了模块化结构的光伏阵列分布式最大功率跟踪控制的实验系统,该系统由太阳能电池板、 Boost 型变换器、计算机控制模块、数据采集模块组成。实验数据与仿真结果基本吻合 (限于篇幅,实验数据和照片略 )。4 结束语本文提出 2 种基于粒子群优化算法的控制算法,在最大功率跟踪的总量上,本文算法比常规的单峰 MPPT 算法寻到的最大功率值大。由实验证明,分布式 MPPT 算法在光照不均情况下寻到的最大功率值大于多峰式 MPPT 算法,并且在多维情况下,分布式 MPPT 算法的优势更加明显。另外,从适用性方面考虑,常规的单峰 MPPT 算法和多峰式 MPPT 算法适用于传统的串并联结构的光伏发电系统,分布式 MPPT算法则适用于模块化结构的光伏发电系统,而且算法是针对模块间光照不均匀情况处理的,并不考虑每一模块的局部阴影问题。参考文献[1] 徐鹏威 , 刘 飞 , 刘邦银 , 等 . 几种光伏系统 MPPT 算法的分析比较及改进 [J]. 电力电子技术 , 2007, 41(5): 3-5. [2] Noguchi T, Togashi S, Nakamoto R. Short-current Pulse-based Maximum Power Point Tracking Method for Multiple Photovoltaic and Converter Module System[J]. IEEE Trans. on Industrial Electronics, 2002, 49(1): 217-222. [3] Sera D, Teodorescu R, Hantschel J, et al. Optimized Maximum Power Point Tracker for Fast-changing Environmental Conditions[J]. IEEE Trans. on Industrial Electronics, 2008, 55(7): 2629-2637. [4] 蒋程涛 , 邵世煌 . 基于适配粒子群的多目标优化方法 [J]. 计算机工程 , 2007, 33(21): 175-178. [5] 焦 巍 , 刘光斌 . 基于多样性反馈的粒子群优化算法 [J]. 计算机工程 , 2009, 35(22): 202-204. [6] 蔡昭权 , 黄 翰 . 自适应变异综合学习粒子群优化算法 [J]. 计算机工程 , 2009, 35(7): 170-171, 202. 编辑 张正兴