Solar panel voltage logger.

Hi.
I have a small solar panel that outputs 1.5V. It is one of those garden LED solar panels that light at night and charge during the day.

I live in Denmark and there is not exactly a lot of sunny days here, but I would still like to put this solar panel out in my window and measure the voltage output during some weeks or months (maybe even longer). The goal being to know how much power I might expect to get from my specific location and direction. I know that this can be roughly calculated but that is no fun.

I have been reading on the forum about this problem and I have got some solid feedback that I am thinking in the right direction on how to do it but a confirmation and a bit of reassurance would be welcome.

Some links to other threads talking about very related stuff:
Measuring solar panel voltage
Measuring current from solar panel
connecting solar panel? pv datalogger. measure voltage and current
Measuring the power produced by a solar panel
Solar Panel Voltage and Current Reading

Here is a small drawing I made of how I imagine I could do this:

S1 is the solar panel
R1 is the resistor that closes the circuit of the solar panel so that it will source most of the current.
R2 is the resistor that protects the analog pin on the Arduino from to much current.

R1 will be picked based on the maximum current that the solar panel outputs. I am not sure how I will figure the maximum current it can produce but let us just say that it is 20mA.
That means that R1 should be 75ohms. U / I = R. 1.5 / 0.02 = 75. The rating of the resistor should of course be able to handle the power dissipation if I get a more powerful solar panel.

R2 will be something in the kilo ohm range. 10kohms should do it, right?

Then I will simply measure the voltage with one of the analog pins at a fixed interval on the Arduino and log it somewhere.

I want to emphasize that I am not currently interested in knowing the power output of the solar panel. I simply want to know when the light conditions are bright enough to produce any power at all.

Any thoughts?

Cheers! :slight_smile:

Your circuit will work.
Whether what you measure will be of much use however is another story.

mauried, how come?

I am not sure how I will figure the maximum current it can produce

You can use a multimeter to measure the "short circuit current" on day with full sunshine at about noon in mid June. The panel cannot produce more than that. However, the voltage is essentially zero, so the power is also essentially zero.

There is a point called the "maximum power point", which you can determine by experiment, measuring both the voltage and current as a function of a variable load resistance. There is lots of information on the web about making these measurements.

Most Solar panels are rated under STC conditions , which are 1000 w/sq meter and cell temp of 25 C.
What voltage you will measure will be entirely determined by resistor R1, and changing that value will mean you change the measured voltage, which means you can design the circuit to get whatever result you like.
It would be more helpful to know what you are trying to ultimately achieve.

It may be too early in the morning ... but ...

If you measure the voltage across the fixed resistor R1 can't you calculate the current through it and thus calculate the power being produced at any instant.

Admittedly there should be different resistors to get maximum power output at different sunlight levels but with the judicious choice of resistor value I think you would useful data with a single resistor.

Do you have any technical data for your solar cell?
I bought a cheap 12v 1.5W solar panel for my tests. It states that it produces max power at 17.5volts so I could calculate the required resistor value and experiment with other values.

This JRC website may be useful.

...R

jremington, thanks for that. That is an easy way to measure the highest current output.

mauried, ultimately I want to make some kind of a system that does some trivial thing but runs on solar power whole year round. What the system does is not very important. Hopefully some kind of a data logging application like temperature inside and outside. Before I do that I want to know how much power I have to use since I will be focusing on as little current consumption as possible. Of course I will have a rechargeable battery connected to the system to power it during night time. The question is if the solar panel can charge the battery during the day. I hope that the battery will last the system for some days at a time and then when it is sunny it will charge the system.

Robin2, I thought so as well. But in the other posts they mentioned that the current going into the analog pin could damage the Arduino so a resistor was needed to limit the current. That is why I included R2 and that is how I thought it would be connected.
I have absolutely no technical information about the solar cell. Only the assumption that it produces about 1.5 volts since the battery it is charging in the garden lamp is a 1.2 volt Ni-MH cell.

If the current output of the solar cell at maximum output is below 40mA then I assume it is "relatively" safe to connect it straight to the Arduino, right?

Again, I am not interested in measuring the output power of the solar cell nor the optimum resistor values or anything like that. I simply want to see if having a solar powered system at my place is feasible or not.
With that being said.... I wonder if I can simply use a LDR, make one experiment to see at which light conditions the solar cell starts to produce some energy, and then simply use the LDR for the rest of the data logging. Any thoughts about that?

Thanks for all your inputs.

simmisj:
Robin2, I thought so as well. But in the other posts they mentioned that the current going into the analog pin could damage the Arduino so a resistor was needed to limit the current. That is why I included R2 and that is how I thought it would be connected.
I have absolutely no technical information about the solar cell. Only the assumption that it produces about 1.5 volts since the battery it is charging in the garden lamp is a 1.2 volt Ni-MH cell.

Sorry if I wasn't clear.
I was not suggesting the Resistor R2 should be removed - although it is unnecessary as the analog inputs have a high impedance. What you MUST ensure is that the voltage at the analog pin does not exceed 5v.

If you expose your solar cell to bright sunlight and orient it for the maximum reading and then measure the open-circuit voltage you will know whether it could possibly exceed 5v. By open-circuit, I mean with no resistors and just connecting your multimeter to the two output terminals.

When you have a load resistance (R1 in your diagram) the voltage is never likely to reach the open-circuit value (unless for some strange reason R1 has a very high value)

The other important measurement is the short-circuit current. Assuming your multimeter has a 10 amp setting connect it across the solar panel terminals - again in bright sunlight - and see what the current is. You will probably discover that it is small enough to use one of the lower current settings on the multimeter. I always start with thw 10 amp setting as, on my meters, the others have a 250mA fuse.

I would start by trying an R1 resistor value that results in about 75% of the short-circuit current. Then you can try slightly higher and lower values to find out at what point you get the maximum power i.e. volts * amps. Also make sure that your load resistor is big enough for the power it is asked to dissipate. If it is too small it will overheat. It will not be a problem if the resistor is "too big" - it may even be a good idea because the resistance varies with the temperature of the resistor and a near-stable temperature (and resistance value) will be best for your experiment.

...R

Robin2, I have no sunlight but I did some tests using a 42 watt incandescent light bulb. Here are the results:
Measuring voltage without resistors in the circuit I get maximum of about 2.3 volts. Moving away in approximately 10cm steps the voltage drops to 2.2 volts, 2 volts, and 1.9 volts 30cm away.

Measuring current without resistors in the circuit I get a maximum of about 25mA. Moving away in approximately 10cm steps the current drops to 12 mA, 3mA, and 1mA 30cm away.

I just thought of another possible way to do this. Hope you bear with me.
Here is a diagram of the circuit inside the lamp:

D1 and D2 are just simple white light emitting diodes.
R1 is 8.3ohms, tested by disconnecting one leg. 8.3ohms seems low. Thought it was a current resistor for the diodes. It probably has more to do with activating T1.
S1 is the solar panel, S2 is the NiMH battery rated 600mAh.
I don't know what T1 is. It has only one marking on it and it reads "0119". If someone can tell me what this is then that would be nice.
D3 is not physically present but there is a marking on the board with a diode sign across those two points.

The behavior of the board is as follows. When switch is open everything is off. When the switch closes and there isn't any light shining on the solar panel then the two LEDs light up, when the solar panel receives light the LEDs turn off.

Anyways, now comes my other thought. Can't I just leave the solar panel in the garden lamp, put the garden lamp in my window, and measure the NiMH battery voltage with the Arduino?
When the sun hits the solar panel the diodes shut off and the batteries voltage rises a bit, otherwise it is discharging. I would log this and then make my graph using that data.

"R1" is an inductor, and T1 is a switching voltage converter IC. T1 and R1 increase the voltage for the white LEDs, which require nearly 4 volts to turn on.

jremington, could you point me to a typical switching voltage converter like T1 might be? A search on Google does not point me to a definitive one since I am not sure what I am looking for.

T1 is a custom IC made for solar powered garden lights, so it is not typical.
Pololu sells some small switching converter modules, but why does it matter?

jremington, it matter because I am curious how they work. I have not seen one before and if I don't know how it works I can't have it in my head when I might need one later on.
But if it is custom made for this specific purpose of lighting the lights during night and charging during day then I see why it might not matter :slight_smile:

Various people have hacked garden lights, and if you are interested, a little time with google will show you how some of them work. Some use custom ICs, other use small circuit boards. For example:
http://www.bigclive.com/solar.htm

I much preferred the simple circuit in your original post if the purpose of the exercise is to log the amount of solar energy available.

...R

Robin2, yeah. Maybe that is the way to go.
I think I just have to try it out and see how it goes.

jremington, thanks for the links. The conclusion in the youtube video is that it takes on average 3 weeks to charge the batteries in the garden lamp because of such low charge current from the solar panel. Maybe I can use 3 or 4 solar panels in parallel to achieve higher current. Or just buy a decent solar panel that outputs more power and is probably much more efficient.

If you are thinking of buying something this is similar to the small solar panel that I have.

...R

Robin2, woa. Those solar panels get great reviews :slight_smile:
I feel like going for one of those 12 volt solar panel is a bit of an overkill but if I see that it is the only way then I might go for it. The problem is that then I also need to invest in a battery to store the energy it produces. This battery would be 12 volts and that would mean I would need to use a regulator for the micro controller to get 5 volts. That would mean a lot of wasted energy.
I was hoping that with 4 of the garden lamps I could use them in series to have 4.8 volts. But then again comes the problem of the complexity of charging NiMH cells and that is one of the reasons the garden lamps only have one cell and pump up the voltage to run the LEDs.

But first, I will check out my initial setup and see if get some readings from that.

simmisj:
The problem is that then I also need to invest in a battery to store the energy it produces.

You could simply waste the power in a resistor just as in your original diagram. The amount of energy it is likely to produce won't have much economic value.

In fact if your main objective is measurement the constant behaviour of a resistor would be much better than the variable behaviour of a battery.

...R

I made a little test just now using the original diagram without R2.
I tried R1 value of 270 ohm and 100 ohm.

Using 270 ohms the voltmeter read 2.1 volts. Using ohms law that makes for around 7mA going through the resistor.

Then I tried with 100 ohms and using an Arduino to read the analog and output it to the console every 2 seconds. I put my lamp about 10cm from the solar panel. Kept my voltmeter on there as a reference as well.

My voltmeter reads a constant 1.55 volts but the analog reads keep fluctuating. Here is a sample from the readings while the voltmeter showed 1.55 volts:

316
302
292
291
299
318
343
350
326
292
302
338
347
319
292
291
312
333

Pretty unreliable readings.