杨 莎 ,张 耀 ,徐 胜 ,廖子文 ,李俊贤
(1.贵州大学电气工程学院,贵州省 贵阳市 550025;2.贵州电网有限责任公司电力调度控制中心,贵州省 贵阳市 550002)
由于传统化石能源短缺问题日益严重,我国对新能源发展的重视提到了前所未有的高度[1-2]。太阳能作为一种可再生能源,不会对环境造成污染,受到了越来越多的关注[3-4]。目前,太阳能电池建模最常用的是单二极管模型和双二极管模型[5-7],这些模型有多个未知参数,而对于这些参数的求解,在太阳能电池的设计和性能评估中具有重要作用,因此,提取精确的光伏电池模型参数非常重要[8-10]。对于光伏电池的参数提取,传统的方法是利用数学方法进行求解,这样可能会导致误差过大,对光伏电池的内部机理和外部特性的关系极其不利[11-12]。
为了更加有效地解决光伏电池的参数辨识问题,许多专家学者提出了各种智能算法,然而每一种算法都会有不足的地方,例如:粒子群优化算法(particle swarm optimization,PSO)易于实现并且只需要较少的参数来进行调节,但是容易陷入局部最优,并且搜索精度不高[13];遗传算法(genetic algorithm,GA)收敛速度快、通用性好,但存在容易过早收敛到局部最优的问题[14];基于教与学的优化算法(teaching-learning-based optimization,TLBO)简单、有效且易于实现,然而它的搜索能力较差,搜索精度较低[15];差分进化算法(differential evolution,DE)是一种简单有效的算法,该算法的鲁棒性和收敛性较好,但受算法参数的影响较大[16]。
本文首先从光伏电池内部的参数出发,以输入和输出的电流电压为数据源,建立光伏电池的等效电路模型,然后通过研究影响光伏电池电压电流的参数变化,最后分析和判断参数变化来对内部参数特性进行辨识,采用改进的TLBO 算法辨识光伏电池模型参数。
光伏电池的单二极管等效电路模型包含了一个电流源、反向偏压二极管、并联电阻和串联电阻[17-18],如图1 所示,单二极管结构简单,更容易计算。
图1 单二极管的等效电路模型Fig.1 Equivalent circuit of single diode model
由图1可知,输出电流I为
式中:Iph为光伏电池的光生电流;Ish为分流电阻电流;Id为二极管的电流。根据Shockley方程,式(1)可改写为
式中:U为光伏电池的输出电压;Isd为二极管的饱和电流;n为二极管的理想因子;Rs为光伏电池的串联电阻;Rsh为光伏电池的并联电阻;Ut为结热电压。
综上,对于单二极管模型,需要提取5个未知参数(Iph,Isd,Rs,Rsh和n)。
光伏电池的双二极管等效电路模型,如图2所示,其输出电流I为
图2 双二极管的等效电路模型Fig.2 Equivalent circuit of double model diode
式中:Id1和Id2分别为第1个二极管和第2个二极管的电流,其计算式为
式中:n1和n2分别为2个二极管的理想因子[19]。
综上,光伏电池的双二极管模型需要辨识7个未知参数(Iph,Isd1,Isd2,Rs,Rsh,n1和n2)。
在光伏电池实际的应用中,所需的电压和电流不单单只有一个光伏电池,通常是由若干个光伏电池串联或者并联而成[20],基于单二极管的光伏组件模型等效电路如图3所示。
图3 光伏组件的等效电路模型Fig.3 Equivalent circuit of photovoltaic modules
光伏组件的输出电流I为
式中:Nt为光伏组件中并联的光伏电池数量;Ns为串联的光伏电池数量,与单二极管模型一样,光伏组件模型也需要辨识5个未知参数(Iph,Isd,Rs,Rsh和n)。
为了更好地检验所建立模型和实际模型的一致性,本文将电流计算值I0与电流实测值I的差值fk(U,I,p)的均方根误差作为目标函数,即
式中:N为实际被测量电流的数量;p为未知参数构成的解向量[21-23]。单二级管模型、双二极管模型和光伏组件模型的fk(U,I,p)表达式分别如下文所述。
(1) 单二极管模型。
(2) 双二极管模型。
(3) 光伏组件模型。
TLBO 算法是近年来提出的一种新的群智能优化算法,该算法模拟了现实生活中教师与学生之间的教与学过程,通过教师的教学过程和学生之间的相互学习过程来提高班级的成绩,从而达到寻找全局最优解的目的[24-25],该算法具有简单性、可扩展性、灵活性、稳健性、自组织性、隐含并行性等特点[19,26-28]。
将全体学生看作一个种群,班级里的人数为种群数量,随机生成个体Xi={xi1,xi2,…,xiD}(i=1,2,…,Np)为班级中任一个学生,D为空间维度,Np为种群数量。
在该阶段,选择成绩最好的个体作为教师xt,学生根据教师和学生的平均值xm的差异进行学习。教师在向学生传授知识的过程中提高学生平均成绩,使班级平均水平不断提高,学生与老师差距逐步减小,从向寻求最优解移动,具体更新过程为
式中教学因子TF=round(1+rand(0,1)),round()为四舍五入函数,rand()为产生随机数函数。
若xinew优于xi,则xi等于xinew,否则xi保持不变。
学习阶段,个体之间进行相互学习。学生在老师传授知识的过程中,每个个体的知识掌握水平不同,学生根据自身知识的掌握水平随机挑选班级中的其他学生进行交流学习,比较2名学生的学习成绩,学习成绩差的学生向学习成绩好的学生进行学习。具体更新过程为
式中:xi与xj是任意2个不同的学习者;f(xi)和f(xj)分别为xi与xj对应的目标函数值;若xinew优于xi,则xi等于xinew,否则xi保持不变。
经过学习阶段后,学生的学习成绩有所提高。由此可知,学生不仅可以在教学阶段向老师学习来提高自身学习成绩,也可以在学习阶段通过发现与其他学生的差距进行相互交流学习,使自身的学习成绩得以提升。
在传统的TLBO 算法中,教学阶段和学习阶段都被用来寻找最优解,在教学阶段,教师试图让所有学习者向他学习以提高班级的平均成绩。然而,在实际的教学情况中,每个学习者的提高过程在某种程度上取决于他们自己的学习能力。为了提高TLBO 算法的性能,本文提出了一种改进的教与学优化算法,即基于分组的教与学优化算法(grouping teaching-learning-based optimization,GTLBO),算法流程如图4所示,其中,NFE为目标函数评估的次数,NFE_Max为最大次数。
图4 GTLBO 算法流程图Fig.4 Flow chart of GTLBO algorithm
在TLBO 算法中,教学因子TF会影响算法的搜索速度和搜索能力。其中,数值较大的TF可以加快搜索速度,但同时也会使得算法容易陷入局部最优解,而数值较小的TF则会使算法搜索速度降低以及跳出局部最优解。在基本的TLBO 算法中,教学因子是一个取值为1或2的随机数。这意味着学生对于老师的教学只能全盘接受或者完全否定,这与学生对于老师教学的实际接受情况不符。针对这个情况,本文提出了一种自适应教学因子,其数值和迭代次数有关,是一个随着迭代次数增加而从2单调递减至1的函数,会使得算法前期的收敛速度较快,而后期则放缓收敛速度以避免陷入局部最优解,从而获得更高精度的解。
改进的自适应教学因子为
式中:Tmax表示最大迭代次数;ti表示当前迭代次数。
在原始TLBO 的教师阶段,所有学习者都将向教师和班级平均水平靠近。而在实际情况中,一个班级里的不同学习者的学习水平和能力参差不齐。因此,针对不同的学习者应该采用不同的教学策略以获得更高的分数。基于这种考虑,按照学习成绩从高到低进行排序,然后把一个班级的学习者分成2组,如果学生的成绩排名位于班级前一半(i≤Np/2),则说明学习者具有较好的学习水平,否则学习者的学习水平较差。对于较差的学习者,使用式(11)所示的初始教学策略,而对于较好的学习者,我们提出了一种新的教学策略,其中较好的学习者由教师亲自指导。此外,为了避免陷入局部最优,我们随机选择了2 个不同的学习者xr1和xr2来进行相互学习。改进后的教学阶段更新方程为
将GTLBO算法应用于不同的光伏模型参数提取中,以此来验证该算法的性能。对于单二极管和双二级管模型,在温度为33℃、光照强度为1 000 W/m2的环境下进行实验。所采用的Photowatt-PW201光伏组件由36个多晶硅电池串联组成,其实验数据是在45 ℃下测量获得;STM6-40/36 光伏组件和STP6-120/36光伏组件由36 个单晶硅电池串联组成,其实验数据分别在51 ℃和55 ℃下测量获得。为了公平地进行比较,表1 给出了每个参数的搜索范围。此外,将GTLBO 算法与TLBO 算法、PSO 算法、Jaya算法和DE 算法进行比较,所有算法的参数设置如下:Np为30,NFE_Max为30 000,这些算法在Matlab 2016b中实现,每个算法独立运行30次。
表1 光伏模型的参数范围Table 1 Parameter ranges of the PV models
单二极管模型的参数辨识结果如表2所示,为了进一步说明参数提取的准确性,现将提取到的参数代入到目标函数里计算仿真电流值,并将其与实际测量值进行拟合。拟合效果如图5所示。由图5可知,仿真电流值和实际测量值有非常好的拟合性,说明该算法在光伏电池的单二极管模型的参数提取方面具有较好的提取效果。
表2 单二极管模型的参数辨识结果Table 2 Parameter identification results of single diode model
图5 单二极管模型的电流-电压特性曲线Fig.5 I-V characteristic curve of single diode model
相比于单二极管模型,双二极管模型需要提取7个参数,因此过程更加复杂。将GTLBO 算法应用于光伏电池的双二极管模型的7参数提取中,实验结果如表3所示,图6为在双二极管模型中仿真电流值和实际电流值的拟合效果。由图6可知,尽管提取参数的数量增加,但GTLBO 算法得到的实验数据和实测数据拟合度仍然较高,表明该算法在双二极管模型的参数提取方面同样具备良好的提取精度。
图6 双二极管模型的电流-电压特性曲线Fig.6 I-V characteristic curve of dual diode model
表3 双二极管模型的参数辨识结果Table 3 Parameter identification results of dual diode model
表4 给出了Photowatt-PW201 模型、STM6-40/36模型和STP6-120/36模型中,采用上述算法提取的参数结果,相应的电流-电压特性曲线如图7所示。图7反映了光伏组件模型仿真电流值和实际电流值的拟合效果。实验结果再次证明了在这些光伏组件中,本文提出的GTLBO 算法的拟合效果较为理想。
图7 光伏组件模型的电流 电压特性曲线Fig.7 I-V characteristic curve of photovoltaic module model
表4 光伏组件模型的参数辨识结果Table 4 Parameter identification results of photovoltaic module model
为了验证各个算法在光伏模型参数提取的准确性,比较了不同算法在各个光伏模型中的均方根误差(root mean square error,RMSE)值,并且计算了RMSE值的最佳值、最差值、均值和标准差值,如表5所示,表中的最优值已用黑色粗体标出,从表5可以看出:
表5 光伏模型的RMSE值Table 5 RMSE values of different photovoltaic models
(1) 对于单二极管模型,GTLBO 算法能够在最差值、均值和标准差值3个指标上获得最优结果,分别为1.272 6×10-3、1.014 9×10-3和5.396 8×10-5。尽管在最佳值的指标上,GTLBO 算法没有
Jaya算法表现好,但两者差别不大。
(2) 对于双二极管模型,GTLBO 算法能够在最佳值这个指标上获得最优结果9.840 3×10-4,但在另外3个指标中,TLBO 算法表现更好。说明对于解决7参数的光伏模型的参数辨识问题,本文提出的GTLBO 算法还有待改进。
(3) 对于光伏组件模型,GTLBO 算法在STP6-120/36模型中获得了较好的实验结果,分别在最佳值、均值和标准差值3个指标上都获得最优值。尽管在Photowatt-PW201 模 型 和STM6-40/36 模 型中,GTLBO 算法逊色于Jaya算法和DE 算法。但值得一提的是,从实验结果来看,GTLBO 的参数提取精度明显优于传统的TLBO 算法。说明在光伏组件模型中,本文提出的GTLBO 算法有效地提高了TLBO 算法的算法性能。
分别绘 制GTLBO 算 法、TLBO 算 法、PSO 算法和DE 算法辨识五种光伏模型的收敛曲线,如图8—9所示。由图8(a)可以看出,对于单二极管模型,GTLBO 算法有着更好的收敛性,并且能够获得全局最优值。由图8(b)可知,对于双二极管模型相较于基础TLBO 算法,GTLBO 算法的收敛效果并不算理想,还有待进一步改进。由图9可知,对于光伏组件模型,GTLBO 算法收敛性能优于基础的TLBO 算法,并且明显比PSO 算法和DE 算法收敛更快,精度更高。
图8 单二极管、双二极管模型的收敛曲线Fig.8 Convergence curves of single diode and dual diode models
图9 光伏组件模型的收敛曲线Fig.9 Convergence curves of photovoltaic models
针对光伏电池参数辨识的需要,本文对光伏电池模型进行参数辨识研究,针对传统的TLBO 算法在搜索过程中存在精度较低、收敛速度慢、易陷入局部最优等不足,提出了一种GTLBO 算法。该算法引入了一种改进的自适应教学因子,并且在教学阶段进行分组教学。并将GTLBO 算法应用于单二极管模型、双二极管模型和3个光伏组件模型的参数提取中,仿真结果验证了改进的教与学优化算法的有效性和可行性。
(1) 本文所提出的GTLBO 算法寻优效果较好,应用在光伏电池的参数辨识上,也能得到准确的参数。但光伏电池内部参数还有很多,这些参数以及环境因素带来的影响对光伏系统的输出也具有一定的影响,需要做进一步的细致性研究。
(2) 本文所使用的模型是目前最为理想化的模型,但文中的数据采集均为实验室试验数据,实验情况相对简单,实验均在理想情况下进行,没有考虑实际环境下不断变化的温度及光照强度,理论性数据应用于模型效果较好,若运用于实际环境中采集数据,模型中的部分参数还要做一定的修正工作。
(3) 本文仅研究了光伏发电系统的一部分——光伏电池组件,对其开展了参数辨识研究工作,其他部分及整体的辨识尚无深入研究。