Hi I am studying IC and P&O in a boost converter for solar panels.

I am startled because I get nearly identical results. Does anyone know why can't I see pratically any deviation between both?

In the appendix I posted both my irradiance and temperature profile and the results I got from the mppt panel voltage (in every parameter, be it current, power or efficiency the result is basically really close).

I used the following functions:

function D = INC(Vpv,Ipv)

% Define internal values for the voltage and power as persistent

% variables

persistent Dprev Iprev Vprev

% Initialize the internal values for the voltage and power on the

% first pass

if isempty(Dprev)

Dprev = 0.7;

Vprev = 30;

Iprev = 8;

end

% Initialize algorithm parameters

deltaD = 0.0025;

% Calculate measured array power

deltaI = Ipv - Iprev;

deltaV = Vpv - Vprev;

delta = deltaI/deltaV;

% Increase or decrease duty cycle based on conditions

if (Vpv-Vprev) == 0

if (Ipv-Iprev) ~= 0

if (Ipv-Iprev) > 0

D = Dprev - deltaD;

else

D = Dprev + deltaD;

end

else

D = Dprev;

end

else

if (Ipv + delta*Vpv) ~= 0

if (Ipv + delta*Vpv) > 0

D = Dprev - deltaD;

else

D = Dprev + deltaD;

end

else

D = Dprev;

end

end

% Update internal values

Dprev = D;

Vprev = Vpv;

Iprev = Ipv;

function D = PandO(Vpv,Ipv)

% Define internal values for the voltage and power as persistent

% variables

persistent Dprev Pprev Vprev

% Initialize the internal values for the voltage and power on the

% first pass

if isempty(Dprev)

Dprev = 0.7;

Vprev = 30;

Pprev = 2000;

end

% Initialize algorithm parameters

deltaD = 0.0025;

% Calculate measured array power

Ppv = Vpv*Ipv;

% Increase or decrease duty cycle based on conditions

if (Ppv-Pprev) ~= 0

if (Ppv-Pprev) < 0

if (Vpv-Vprev) < 0

D = Dprev - deltaD;

else

D = Dprev + deltaD;

end

else

if (Vpv-Vprev) < 0

D = Dprev + deltaD;

else

D = Dprev - deltaD;

end

end

else

D = Dprev;

end

% Update internal values

Dprev = D;

Vprev = Vpv;

Pprev = Ppv;

Best regards

More Diogo Remoaldo's questions See All
Similar questions and discussions