On a MPPT controller an oscillation happens only when a part of the panel is shaded and the other one gets full irradiance. (mainly in the morning when getting out of shade)
The solution is to set the input voltage set-point just above the collapse voltage.
How would you program that?:
a) detecting a periodic collapse
b) recording the collapse voltage
c) setting the set-point just above (that's easy)
d) returning to normal MPPT operation once the partial shading is over.
Appreciating any ideas...
you could monitor the variance of the signal over a rolling window. High variance should indicates oscillation. choosing the right length for your rolling window (30 to 45s it would seem to get 3 oscillations) will be part of the fine tuning. having the right sampling period is also important.
MPPT 'maximum power point tracking’ solar charge controller (I had to look it up)
The period appears to be 45 seconds from the graph. I don't see what is being measured, though.
Is something physically moving (panels orientations changing) or is this simply an electrical effect on the power supplied by this device.
Yes, I just wondered if there is any known library or algorithm to measure the variance, other than by managing a long backlogging buffer.
The oscillation period is variable: the closer the set point is to the stability value, the longer the period.
Additionally on casted cloudy weather, normal collapses (not feed-back artifacts) do happen as well, but they are not periodical, so one should be able to discriminate both situations.
Thank you,
I would like to avoid using large arrays.
I don't need mathematically exact figures neither.
I might use a low-pass filter with a long time constant as a reference value and count the number of major deviations (-3V, +1V) in both directions in a minute...
Serial Monitor (@ 115200 bauds) will show
Count: 10000
Min: 0.0000
Max: 1.0000
Average: 0.5011
Variance: 0.0832
Standard Deviation: 0.2884
Population standard Deviation: 0.2884
It looks like the MPPT is increasing the power draw and when the panel voltage drops below the '30' line on the scope, the panel shuts down. Perhaps the MPPT should stop trying to draw more power when the panel voltage reaches the '30' line. It looks like the system behaves well when the voltage is above that level.
Hi,
If one panel is in shade, then it is acting like a series resistor, so the PV characteristic is not as it would when both fully illuminated.
The MPPT assumes a fully radiated set of PV.
You could , if possible, re orient the PVs so that the shadow covers half of each PV panel instead of one complete panel.
Not sure if this would be of benefit as each panel is a series array of PV cells.
I hope your PV have the full compliment of diodes on their respective terminals.
If one panel is in shade, then it is acting like a series resistor, so the PV characteristic is not as it would when both fully illuminated.
The shade is what it is, the software must deal better with it.
The problem occurs when some cells of one half of the panel are hard shaded, typically with bright sun, when the panel gets partly illuminated for half an hour.
You get the most power when the yellow line is close to the collapse voltage.
If I set the input voltage set-point well above that value, I get immediately stability, but far less power.
There isn't a fixed relation between input voltage and power, it is like a Carnot-cycle, once collapsed you need to reduce dramatically the drawn current and progressively ramp up to get to the MPP again.
That is the point: find the algorithm to detect the instability and set the point just above, then get out of that safe zone as soon as possible to tease the MPPT again when the partial shade is gone.
Letting things oscillate might be good enough, but I am a German engineer.
We wouldn't build such good cars with an American "don't fix what is not broken" mentality.