www.gusucode.com > 太阳能三种mppt算法包括干扰观察法,电导增益法,变步长电导增益法 > mppt/INC2.m

    %%INC跟踪算法
function [P,V,I]=INC2(sun,v,T)
Vr=zeros(size(sun));
Ir=zeros(size(sun));
for k=1:size(sun)-1
    if size(k)~=0
        Vr0=3;
        Vr1=3+0.01;
        Ir0=max60(Vr0,sun(k),T(k));
        Ir1=max60(Vr1,sun(k+1),T(k+1));
        dV=Vr1-Vr0;
        dI=Ir1-Ir0;
        G=-Ir1./Vr1;
        Vr(k)=Vr0;
        Ir(k)=Ir0;
       
        break;
    end
end
for m=k+1:size(sun)-1
    if size(m+1)~=0
        if dV==0
            if dI>0
                
                Vr0=Vr0+v;
            elseif dI<0
                
                Vr0=Vr0-v;
            else
                Vr0=Vr0;
                %Vr1=Vr1;
            end
        else
            dG=dI./dV;
            if G>dG
                
                Vr0=Vr0-v;
            elseif G<dG
                
                Vr0=Vr0+v;
            else
                Vr0=Vr0;
               % Vr1=Vr1;
            end
        end
         Ir0=Ir1;
         Ir1=max60(Vr1,sun(m+1),T(m+1));
         dV=Vr1-Vr0;
         dI=Ir1-Ir0;
         G=-Ir1./Vr1;
        Vr(m)=Vr0;
        Ir(m)=Ir0;
    end
end
V=Vr;
I=Ir;
P=Vr.*Ir;