Encore et toujours problème de plot (plot n'affiche pas la courbe)
Bonjour cher Tous, je suis LeKess, j'ai essayé d'améliorer mon code, mais voila que plot n'affiche, quand j’implémente la simulation, aucune erreur n'est généré, mais aucune courbe ne s'affiche, je vous appelle au secours. merci pour votre soutien...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| %spécification du module PV
A=1.72;
q=1.6e-19;
k=1.38e-23;
Eg=1.1;
Ior=19.9693e-6;
Iscr=3.3;
ki=1.7e-3;
ns=40;
np=2;
Rs=5e-5;
Rp=5e5;
Tr=301.18;
%initialisation des paramètres pour le calcul de la caracterisitque I-V
V=0;
Vinc=0.01;
Es=0.01;
Er=5000;
loop=0;
%valeur de Noct, de la temperature ambiante et de l'insolation
NOCT=44;
G=1;
Ta=298.15;
%temperature de la cellule
Tc=((NOCT-20)*G/0.8)+(Ta);
%courant de saturation inverse pour la temperature
Is=(Ior*((Tc)/Tr)^3)*exp(((q*Eg/k*A))*((1/Tr)-(1/Tc)));
%courant de court-circuit
Isc=(Iscr+ki*(Tc+273.15-Tr))*G;
%reistance shunt
Rsht=(np/ns)*Rp;
%resistance serie
Rst=(ns/np)*Rs;
%calcul de P
P=q/(A*k*Tc);
It=np*Isc;
I=Isc;
Vval=V;
Ival=Isc*np;
while (I>0)
while (abs(Er)>Es)
loop=loop+1;
F1=(I)*(1+(Rst+Rsht))-It+(np*Is*exp(P*((V/ns)+I*Rst))+(V/(ns*Rsht)));
Fdash=(1+(Rst/Rsht))+np*P*Rs*Is*exp(P*((V/ns)+I*Rst));
Inext=I-(F1/Fdash);
Er=((Inext-I)/Inext)*100;
I=Inext;
if (I<0)
I=0;
break;
end;
if (loop==50000)
break;
end;
end;
Ival=[Ival, I];
Er=1000;
if (I==0)
Vval=[Vval,V];
break;
else
Vval=[Vval,V];
V=V+Vinc;
end;
end;
P=[Ival.*Vval];
M=max(P);
figure(1);
plot(Vval,Ival);
grid;
hold on;
figure(2);
plot(Vval,Ival.*Vval);
grid;
hold on; |