建模pv(光伏阵列的情节电流-电压、p - v特性)

81(30天)
M_Shaban
M_Shaban 2021年12月27日
移动: 乔尔·Sickel 2022年12月12日
如何绘制电流-电压和p - v特性曲线在Matlab / Simulink中使用这段代码:万博1manbetx
%初始数据
q = 1.6 * 10 ^ (-19);
k = 1.38 * 10 ^ (-23);%玻尔兹曼costant
T = 298;%开尔文温度(25 + 273)
% %数据表的表STC面板的价值
Isc = 3.45;%短路电流
Voc = 21.7;%开路电压
小鬼= 3.15;%最大电源电流
Vmp = 17.4;%最大功率电压
N = 36;%串联的细胞的数量
Pmax = Vmp *小鬼;%最大功率点
= 1;
vt = (k * * T * N) / q;
Rs = (Voc / Imp) - (Vmp / Imp) + ((vt / Imp) *日志((vt) / (vt + Vmp)));
I0 = Isc / (exp (Voc / vt) - exp (Rs * Isc / vt));
Ipv = I0 * ((exp (Voc / vt)) - 1);
% %的第一步
iter = 10; 000;
= 0;
托尔= 0.1;
A1 =一个;
层= (vt *(日志((Ipv + I0-Imp) / I0))) - (Rs * Imp);
e1 =层-钢瓶;
卢比= Rs;
(< iter & & e1 > tol)
如果层的< Vmp
A1 = A1 - 0.01;
其他的
A1 = A1 + 0.01;
结束
A1 vt1 = (k * * T * N) / q;
I01 = Isc / (exp (Voc / vt1) - exp (Rs1 * Isc / vt1));
Ipv1 = I01 * ((exp (Voc / vt1)) - 1);
层= (vt1 *(日志(Ipv1 + I01 - Imp) / I01))) - (Rs1 * Imp);
e1 =(层vmp);
它= + 1;
结束
A1 vt1 = (k * * T * N) / q;
卢比= (Voc / Imp) -层/ Imp) + ((vt1 / Imp) *日志((vt1) / (vt1 +层));
% %第二步
31 = 0.001;
iter = 10000;
来发现= 0;
I01 = Isc / (exp (Voc / vt1) - exp (Rs1 * Isc / vt1));
Ipv1 = I01 * ((exp (Voc / vt1)) 1);
Rp = ((Vmp) * (Vmp + (Rs1 * Imp))) / (Pmax - (Vmp * Ipv1) + (Vmp * I01 * (exp (((Vmp + (Rs1 * Imp)) / vt1) - 1))));
与新的Rp值%计算钱数
I02 = (Isc * (1 + Rs1 / Rp) - Voc / Rp) / (exp (Voc / vt1) - exp (Rs1 * Isc / vt1));
Ipv2 = I02 * ((exp (Voc / vt1)) - 1) + Voc / Rp;
ImpC = Pmax /层;
呃= abs (Imp - ImpC);
Rpnew = Rp;
犯错> 31 & & < iter来发现
如果ImpC <小鬼
Rpnew = Rp + 0.1 *来;
elseifImpC > =小鬼
Rpnew = Rp - 0.1 *来;
结束
%计算与Rpnew钱数
I02 = (Isc * (1 + Rs1 / Rpnew) - Voc / Rpnew) / (exp (Voc / vt1) - exp (Rs1 * Isc / vt1));
Ipv2 = I02 * ((exp (Voc / vt1)) - 1) + Voc / Rpnew;
eqn = @ (ImpC) Ipv2 - (I02 * (exp ((Vmp + (Rs1 * ImpC)) / vt1) - 1)) - ImpC (Vmp + Rs1 * ImpC) / Rpnew;
current_c =小鬼;
s = fzero (eqn current_c);
ImpC = s;
来发现=来+ 1;
呃= abs (Imp - ImpC);
结束
X = sprintf (= %。2 f, I0 = % d, Ipv = %。Rs = % 3 f, f, Rp = % f '、A1、I02 Ipv2, Rs1 Rpnew);
disp (X);

答案(1)

M_Shaban
M_Shaban 2022年12月5日
移动:乔尔·Sickel 2022年12月12日
这段代码计算参数并绘制pv、电流-电压曲线:
Iscn = 5.45;%额定短路电压(一个)
Vocn = 22.2; %名义数组开路电压(V)
小鬼= 4.95; %当前数组@最大功率点(一)
Vmp = 17.2; % @最大功率点阵列电压(V)
Pmax_e = Vmp *小鬼; %阵列最大输出峰值功率[W]
Kv = -0.072; % /电压温度系数(V / K)
Ki = .00104; %电流/温度系数(/ K)
Ns = 36; % Nunber系列细胞
k = 1.38 e-23; %玻耳兹曼(J / K)
q = 1.6 e-19; %电子电荷[C]
一个= 1.1; %二极管常数
Gn = 1000; %名义辐照度(W / m ^ 2) @ 25摄氏度
Tn = 25 + 273; %标称工作温度[K]
T = Tn;
G = Gn;
Vtn = k * Tn / q;
%热结电压(名义上的)
Vt = k * T / q; %热结电压(电流温度)
离子= Iscn / (exp (Vocn / / Ns / Vtn) 1); %名义二极管饱和电流
Io =离子;
%的Rs和Rp值的引用
Rs_max = (Vocn - Vmp) /小鬼;
Rsh_min = / (Iscn-Imp) - Rs_max钢瓶;
% Rsh和Rs的初始猜测
Rsh = Rsh_min;
Rs = 0;
托尔= 0.001;
%功率不匹配宽容
P = [0];
错误=正;
%虚拟价值
%迭代过程对Rs和Rp,直到Pmax模型=
Pmax、实验
(错误> tol)
%对当前温度和辐照效应
dT = T-Tn;
Ipvn = (Rs + Rsh) / Rsh * Iscn;
Ipv = (Ipvn + Ki * dT) * G / Gn;
Isc = (Iscn + Ki * dT) * G / Gn;
%的增量Rs
Rs = Rs + . 01;
%的并联电阻 (2)
Rsh = Vmp * (Vmp + Imp * Rs) / (Vmp * IpvVmp * Io * exp ((Vmp + Imp * Rs) / Vt / Ns / a) + Vmp * Io-Pmax_e);
%解决电流-电压方程数(V, I)对
清晰的 V
清晰的
V = 0: .1:45; %的电压矢量
我= 0(1、大小(V, 2)); %电流矢量
j = 1:尺寸(V, 2) %计算为所有电压值
%解决g = I - f与Newntonn-Raphson(我,V) = 0
g (j) = Ipv-Io * (exp ((V (j) + I (j) * Rs) / Vt / Ns / a) 1)——(V (j) + I (j) * Rs) / Rsh-I (j);
(abs (g (j)) > 0.001)
g (j) = Ipv-Io * (exp ((V (j) + I (j) * Rs) / Vt / Ns / a) 1)——(V (j) + I (j) * Rs) / Rsh-I (j);
格林(j) = - io Rs / Vt / Ns / * * exp ((V (j) + I (j) * Rs) / Vt / Ns / a) - r / Rsh-1;
I_ (j) =我(j) - g (j) /格林(j);
我(j) = I_ (j);
结束
结束
% j = 1:尺寸(V, 2)
%计算电力用电流-电压方程
P = (Ipv-Io * (exp (Rs) (V + i * / Vt / Ns / a) 1)——(V + i * Rs) / Rsh)。* V;
Pmax_m = max (P);
错误= (Pmax_m-Pmax_e);
结束 %,而(误差> tol)
% %输出
%的i - v曲线
图(1)
网格
持有
标题( 的电流-电压曲线 );
包含(' V (V) ' );
ylabel(“我(一)” );
xlim ([0 Vocn + 1]);
ylim ([0 Iscn + 1]);
情节(V,我,“线宽” 2, “颜色” , “k” ) %
情节([0 Vmp Vocn]、[Iscn Imp 0], “o” , “线宽” 2, “MarkerSize” 5, “颜色” , “k” )
% p - v曲线
图(2)
网格
持有
标题( “p - v曲线” );
包含( “V (V)” );
ylabel (“P [W]” );
xlim ([0 Vocn + 1]);
ylim ([0 Vmp * Imp + 1]);
情节(V P“线宽” 2, “颜色” , “k” ) %
情节([0 Vmp Vocn], [0 Pmax_e 0], “o” , “线宽” 2, “MarkerSize” 5, “颜色” , “k” )
流('模型信息:\ n ' );
流(Rsh = % .2f ' Rsh);
流(“Rs = % .2f ' 、Rs);
流(' a = % .2f ' ,);
流(Ipv = % .2f ' Ipv);
流(“离子= % .3d ' 、离子);
流(' \ n \ n ' );
希望它能帮助你。

类别

找到更多的在Solver-Based非线性优化帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!