Hi everyone, I am a materials scientist and not familiar with programming so bear with me please. I have spent a long time looking at similar posts on this website and others.
I make new types of solar cells in a lab, and I want to test one in real world conditions over a long period of time (e.g. months). I would like to use an arduino (e.g. with datalogger, storing data onto an SD card) to store characteristics about the solar panel over time. Ideally the panel would be held at maximum power point. I can test this setup with a commercial silicon panel first (likely the 6V 6W voltaics one), for the purposes of this question you can assume any other panels I test will have similar characteristics. Mains/USB power is available if required.
Can I use something like the waveshare solar power management module + a INA219 (like here) to measure & store what the maximum power point is over time? (voltage & current). I know this will change depending on irradiance.
This is maybe a stupid question but do I need an additional 'load', or will the arduino + datalogger, and waveshare, be sufficient to draw mpp from the cell? Will what the INA219 measures depend on current draw from the waveshare output? At night presumably the waveshare just switches to the battery power to power the output?
If this setup is not going to work I am aware of the resistor/rheostat approaches outlined elsewhere, which I can turn to instead, but I wondered if this might make things simpler.
don't know this waveshare module, I assume it keeps the solar at its optimum?
Voltage and current can be measured with INA219.
For data size sake I would only log data if voltage/current is above some minimal threshold.
Depending on your position on the globe, you have more or less hours of sunshine during the day period. You might need a real time clock (or get network time) to add to the log?
An extra log entry could be a (calibrated) LUX meter, to get an indication for the irradiation. Assume you are familiar with Lambert’s Cosine Law?
This is maybe a stupid question
Questions are never stupid, answers can be
do I need an additional 'load', or will the arduino + datalogger, and waveshare, be sufficient to draw mpp from the cell?
Without a load I assume there will be no current flowing.
(but I have no expertise in mpp).
Will what the INA219 measures depend on current draw from the waveshare output?
At night presumably the waveshare just switches to the battery power to power the output?
If you want a clean measurement, I think you should power nothing from the solar cell except a well defined load, preferably one that does not change e.g. due to temperature.
(again I have no expertise in mpp).
Thanks Rob this is all very helpful. Yes the waveshare module supposedly keeps the panel at mpp.
Yes, I am thinking about additional sensor info like temperature & light intensity- I think LUX will have to do as getting W/m2 data seems a bit more fiddly. Hopefully I can use something like the datalogger shield to get a RTC input.
I know that the waveshare module will use the input to charge the onboard battery, but I guess I am unsure how they prioritise this over an external load. I have contacted them to find out more. Thanks for your help!
Your results would depend completely how Waveshare performs.
Also, Waweshare has maximum battery charging current 1A, so ~4W, it can not keep 6W panel in MPPT. Same is valid if battery is full/almost full/too hot or whatever reason charging current has to be derated.
You need a MPPT controller that can surely draw all the power panel can produce.
The panel has a peak output listed as 0.93A- I think this means it would be okay? But yes I hadn't considered issues with variable charging rate. Maybe ditching the waveshare and setting up a fixed, known load would be better. Thank you for your input
It's not ok. It can produce 0.93A at 6.x V giving total output ~6W. Waveshare is charging at 4.2V max 1A, so max 4.2W. Your setup would be far from MPPT when panel have more than 4.5W production.
If you want to use Waveshare choose max 4W panel and big beefy battery, that can take max charge all day long. Then discharge it during the night.
Thank you- I forgot about the charging voltage so I understand now.
It is a bit confusing that it is rated to do mpp for 6V+ panels but only takes 4.2V...I had thought maybe it would take the full voltage, but only feed 4.2V to the battery, but I'm not sure that make sense either. I will do some thinking.
No, it takes that 6-7V at 0.93A and down converts it to 4.2V 1A. There is no problem with the panel voltage, only with the panel max production in W.
For 6W panel you need MPPT controller that can supply at least 6W.
What happens when controller can't draw all the power panel can product, the panel voltage raises above Vmpp and panel current drops below Impp.
But if it can take the 6V & 0.93A, isn't that the panel max production in W? I know it can't provide that all to the battery or the output. Thank you for the explanation
So I thought this meant it was keeping the panel at mpp (e.g. this 6V, 0.9A), but feeding the battery & output less and wasting the excess...In which case it is still doing what I want isn't it?
If you want to learn how solar panels work under different conditions of illumination, use a variable resistance as the load and measure the voltage across the load, the current through it and multiply to compute the power delivered, varying the load and illumination.
They behave very differently from conventional power supplies or batteries.
Only hope with Waveshare would be, that it can handle to supply more than that 4.2W while having another load connected to it(not through battery charging).
Thank you- I guess what I really want is to keep a panel at mpp and measure its degradation over time (I appreciate this won't appreciably change with silicon), but certainly just logging voltage/current as illumination varies over time is still useful if not, even if I have to keep it at an estimated mpp using a variable load, instead of using a tracker.
So I guess this is a question for waveshare really about if mpp is really reached when the outputs (to battery & external) are less/more than the panel output? I had assumed it would just always keep the panel at mpp regardless of output requirements, but maybe this is illogical