【物理应用】基于matlab白鲸算法太阳能光伏模型参数估计【含Matlab源码 2018期】
一、太阳能光伏模型简介
1 太阳能电池和光伏模板1
太阳能电池模板是一种能够吸收太阳光并将其转换为电流的半导体装置,也就是太阳能电池板。它是由多个p-n结串联组成的,其转换效率一般为17%左右。电池中有一个浓度中等的p极性底座,在底座上面是浓度很大的n极性的薄层,两者构成p-n结。
有薄金属与其表面接触,并且在其背面有一层平整的金属将这种光伏元件与负载连接(如图1)。
图1 典型的p-n结太阳能电池单元结构图
当光伏电池单元放于暗处时,其输出的伏安特性与二极管的指数特性相似。当光伏电池单元暴露在太阳辐射之下时,只要光子的能量比半导体束缚的临界能量大,就会产生电子空穴对。这种现象被称为光伏效应。在耗尽区内已经产生的带电粒子被存在的电场分开,从而在p-n结两边产生电势差。当导体连接到光伏单元时,电压就会产生流进外接导体的电流。当太阳能电池板开路时,电流被其本身具有的p-n结二极管分流。可见,此时这个二极管的特性可看成是光伏单元的开路电压特性。由于单个的光伏电池模板输出功率有限,实际的光伏系统中,电池模板被连接成阵列,称之为光伏方阵,产生实际需要的功率。
2 太阳能电池模板仿真模型的建立
2.1 太阳能电池电路模型
为了建立太阳能光伏模板的数学模型,首先要对电池的输出伏安特性进行电路的等效。根据以上关于太阳能电池的内部结构和输出伏安特性的叙述,我们可以用一个电流源并联上一个二极管的电路来表征电池板的输出特性,图2是光伏电池的等效电路。
图2 光伏电池等效电路图
在电路模型中,电流源的电流IL与照射到电池板上的光强G成正比关系,同时受温度T的影响;二极管的饱和电流I0也受温度T的影响;串联上的电阻RS是为了使模型更加准确的表征从电池板最大功率点到开路电压这个范围内的伏安特性;电池板的分流二极管用电路图中的二极管表示,通过选择最佳的质量因素n(n=1.3)使得它与电池板的伏安特性最好的匹配[1]。当电路无接入负载时,电流IL大部分通过二极管分流,而当接入负载时,电流IL部分地流入到负载。当选择一定的串联数时(例如ns=36)该电路模型可以有效的用来表示电池模板的输出伏安特性。
2.2 太阳能电池数学模型
由太阳能电池的内部结构和输出伏安特性建立太阳能电池电路模型后,我们就可以通过电路分析求出相关表达式来表示光伏电池板的特性,这就是光伏模板数学模型的建立。
根据p-n结的V-I特性表达式:iD=I0(evD/VT-1),其中,I0为p-n结饱和电流,vD为加到p-n结两端的电压,VT为温度的电压当量=kT/q,k为波耳兹曼常数(1.38×10-23J/K),T为热力学温度(K),q为电子电荷(1.6×10-19C)。
分析PV电路模型的电路图可知,vD=V+IRS,从而可得电路输出的伏安特性的表达式:
电流源输出电流IL受光强G和温度T的共同影响,以下公式(2)-(4)用来表示它们之间的关系,通过以下公式可以计算出在某一光强G和某一温度T下的电流IL。对于典型的Solarex MSX60 60W电池模板,当光强Sun=1(表示光强为1000W/m2。一般情况下,光强G都在1以下)和温度T1=25℃时,Isc=3.8A,IL(T1)=3.8A/Sun。
二极管的反向饱和电流I0受温度T的影响,它们的关系较为复杂,由公式(5)、(6)用来表示,通过这两个公式可以计算出在某一温度T下的二极管饱和电流I0。
电阻RS可由公式(7)、(8)算出,公式(7)、(8)是通过对公式(1)两边求微分并取V=Voc化简获得的。使用从MSX60实测得到得数据,我们可以算出RS=8mΩ。
由该等校电路模型得到的公式(1)-(8)[2]构成了光伏电池的数学模型,同时也表示出太阳能电池模板的输出的伏安特性并为MPPT计算机仿真垫定了数学基础。
二、部分源代码
%%
% close all
clear
clc
format long;
Solidiers_no=50; % Number of Soldiers
Max_iteration=1000; % Maximum numbef of iterations
global V Ie Im
% Objective Function
tic
fobj=@single_dd;
lb=[0 0 0 0 1];
ub=[1 1 100 0.5 2];
dim=5;
BEst=zeros(1,10);
BESTT1=inf;
for i=1:10
i
[Best_score,Best_pos,WSO_cg_curve]=WSO(Solidiers_no,Max_iteration,lb,ub,dim,fobj);
BEst(i)=Best_score;
if Best_score<BESTT1
BESTT1 = Best_score;
BESTT2=Best_pos;
end
% BEst(i)=min(PSO_cg_curve);
end
toc
S=std(BEst)
A=mean(BEst)
B=min(BEst)
single_dd(BESTT2)
% figure(1)
figure(1)
semilogy(WSO_cg_curve,‘Color’,‘b’)
title(‘Objective space’)
xlabel(‘Iteration’);
ylabel(‘Best score obtained so far’);
% % % %
axis tight
grid on
box on
figure(2)
plot(V,Im,‘LineWidth’,2)
hold on
plot(V,Ie,‘>’,‘LineWidth’,2,‘MarkerFaceColor’,‘black’)
xlabel(‘Voltage’)
ylabel(‘Current’)
legend(‘measured’,‘estimated’)
figure(3)
plot(V, V.*Im,‘LineWidth’,2)
hold on
plot(V,V.*Ie,‘>’,‘LineWidth’,2)
xlabel(‘Voltage’)
ylabel(‘Power’)
三、运行结果
四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 崔岩,蔡炳煌,李大勇.太阳能光伏模板仿真模型的研究[J].系统仿真学报. 2006,(04)
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除
文章来源: qq912100926.blog.csdn.net,作者:海神之光,版权归原作者所有,如需转载,请联系作者。
原文链接:qq912100926.blog.csdn.net/article/details/126165575
- 点赞
- 收藏
- 关注作者
评论(0)