在开始讲述最大功率跟踪算法之前,我们先来认识一下光伏模块的工作原理及工作方式。
光伏电池是一种基于光伏效应的发电装置,其发电原理示意图如图所示。光伏电池能量转换的工作原理是 “光生伏打效应“,即当光伏组件接收阳光后,半导体能量较大的太阳光中的光子能量将会在半导体中激发出含有光生电子和光生空穴的光生载流子。在电场力的作用下,产生的光生空穴和光生电子将会分别聚集在N极和P极。大量的正负电荷积累后,半导体的P极和N极间就会出现电势差。
光伏发电原理图
基于光生伏打理论,当光伏电池表面的感光物质受到光照后,在N极和P极间产生光生伏打电动势.为了数学计算方便,在工程应用过程中通常将光伏模型表示为如图所示的直流电源模型。其中,I_L为光生电流,R_SH为内部并联电阻,I_RSH为漏电流,R_S为内部等效串联电阻,I_D为内部暗电流,I表示负载电流,V表示负载电压。
工程等效电路模型
基于这个工程等效电路模型,可以通过以下五个式子推导光伏电池数学模型:
这里面,I_ph为光生电流;I_D为二极管反向电流;R_S为串联电阻阻值;R_P为并联电阻;I_P为流经并联内阻的电流;I_v为反向击穿电流;T为环境温度;S为光照强度;A为二极管理想因子;q为电子电荷常数,一般取1.6021766341×10-19;K为玻尔兹曼常数,一般取1.380649 × 10-23J·K-1;U_br为雪崩击穿电压。
加装了旁路二极管的光伏模块,不会出现热斑效应,且在光伏模块工作过程中,R_S远小于R_SH,因此I_sh可以忽略,即短路电流与I_ph相等;反向电流数值一般较小,为了简化电路模型,可以忽略;综合以上分析,可将工程用数学模型简化为:
电路这部分对于MPPT算法理解影响不是很大,如果实在不清楚可以暂时不用理会,电路主要与光伏器件老化相关度比较高。
在光伏阵列工作过程中,输出特性曲线受到光照强度和温度的影响比较大,标准工况下,光标准工作温度为25摄氏度,标准光照强度为1000lx,对于勒克斯这个单位可以参照一下百度百科:
照度的国际单位(SI),又称米烛光。被光均匀照射的物体,在1平方米面积上所得的光通量是1流明时,它的照度是1勒克斯。可以标作勒[克斯],简称勒。英为lux,简作lx 。勒克斯是引出单位,由流明(lm)引出。流明则由标准单位坎德拉(cd)引出。照度是反映光照强度的一种物理量,其物理意义是照射到单位面积上的光通量,照度的单位是每平方米的流明(lm)数,其单位为勒克斯(lux或lx),即:1lux=1lm/m2 。
在MATLAB、Simulink环境下仿真,我这里用的是4*4光伏阵列,同学们可以换成单个光伏模块,或者是其他的组合形式。
光伏阵列输出特性曲线仿真模块图
电路是由一个可控电压源和一个电阻组成的,可控电压源主要是为了控制光伏阵列的输出电压值从0到无穷变化,我这里加了一个电阻,当光伏阵列中有多个并联支路的时候,没有电阻会出现代数环问题,但是在仿真过程中也要想到,电阻会消耗光伏阵列输出的能量,所以电阻的大小会影响光伏阵列的输出特性曲线的高度。
通过搭建光伏阵列输出特性曲线仿真模型,可以得到标准工况下的光伏阵列输出特性曲线如下图,可以看到我圈出来四个蓝色的圆圈,其中,黑色的输出特性曲线与横坐标的交点为开路电压,红色线与纵坐标的交点为光伏阵列最大功率点对应的功率值,与横坐标的交点为光伏阵列最大功率点对应的电压值,那么,两条红色直线交点就是我们所要求的最大功率点。
我们可以改变光伏阵列中每一个光伏模块所受到的光照强度的值,例如,我们设置五种工况,每种工况下,光伏阵列中每个光伏模块所受到的光照强度分别为1000lx、800lx、600lx、400lx、200lx,那么,在Smiulink环境下仿真,我们就可以得到不同工况下光伏阵列输出特性曲线:
不同工况下U-I特性曲线
不同工况下U-P特性曲线
温度同样会影响光伏阵列的输出特性曲线。在不同的
温度同样会影响光伏阵列的输出特性曲线。在不同的温度,相同的光照强度环境下仿真,同样设置五种工作环境,五种工作环境下,工作温度分别为25摄氏度,35摄氏度,45摄氏度,55摄氏度,65摄氏度,这样,就可以得到不同温度下光伏阵列输出特性曲线:
不同工况下U-I特性曲线
不同工况下U-P特性曲线
但是,如果在实际运行过程中,光伏阵列难免会被外界环境遮挡住局部,这样就会导致被遮挡的光伏组件输出电压、电流较低,输出端口两段的电位也比较低,从而在整个回路中成为负载,长时间工作在这样的环境下,就会导致被遮挡的光伏模块上聚集大量的热量,进而烧毁光伏组件,如图所示:
那么,为了避免这种情况,很多人就想,可以通过并联二极管的方式解决这种问题,如果光伏组件被遮挡,那么,电流就会通过二极管流过,进而保护光伏组件,这样的话,光伏组件就能够很好的被保护,但是这样也会出现另外一个问题,光伏阵列的输出特性曲线会呈现多个峰值,可以参照以下两个图:
在这种情况下,通过传统算法就很难实现最大功率跟踪,很多人就会将智能算法,例如粒子群算法、神经网络算法应用在解决该问题上。