Pages: [1]   Go Down
Author Topic: Measuring solar panel voltage  (Read 2549 times)
0 Members and 1 Guest are viewing this topic.
Seattle, WA
Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Would like my Arduino Uno to take voltage measurements of a solar panel and print the value to the serial monitor throughout the day.  Any thoughts on how I'd do that?  Is there a maximum solar cell size (voltage) that I can plug directly into the Uno?  What would I do for larger panels?

Thanks,
Tom
Logged

Offline Offline
Edison Member
*
Karma: 32
Posts: 1282
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I assume we are not talking about a 120V or 220V solar panel that powers your house? 

The maximum voltage you can connect to the Arduino is 5V.

For anything that's "safe", say below 40 or 50V, you can use a Voltage Divider (2 resistors) to scale-down the voltage into the Arduino.     You don't want the voltage divider to put a "load" on the solar panel, so I'd use resistor values that add-up to around 10k Ohms.
Logged

nr Bundaberg, Australia
Offline Offline
Tesla Member
***
Karma: 126
Posts: 8471
Scattered showers my arse -- Noah, 2348BC.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Any voltage over ~5v will possibly kill your Arduino.

You can use a "voltage divider" (look it up) to reduce the voltage to the 0-5v range the Arduino is happy with.

______
Rob
Logged

Rob Gray aka the GRAYnomad www.robgray.com

Australia
Offline Offline
Sr. Member
****
Karma: 11
Posts: 467
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

What exactly are you trying to achieve with this measurement?
A Solar Cell is a current source , and will produce 0.5 V per cell even with only a low light level.
So a Solar panel , even in a relatively low light environment will produce close to its full voltage.
The voltage wont change much , even though the light level may change a lot.
To measure the change in light level, you need to put some kind of load on the Solar Panel and then
measure the current.
Logged

0
Offline Offline
Shannon Member
****
Karma: 200
Posts: 11672
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


A Solar Cell is a current source , and will produce 0.5 V per cell even with only a low light level.
So a Solar panel , even in a relatively low light environment will produce close to its full voltage.

Ever measured a solar cell?

Indoors 0.7m from lamp: 0.27V
indoors near window: 0.37V
Outdoors in shade of bush: 0.47V
Outdoors in weak sun (breaking through clouds): 0.515V

A PV cell is not a current source.  Its a current source in parallel with a forward biased semiconductor diode(*).  When you measure the open-circuit voltage you are measuring the diode voltage with the current all flowing through the diode rather than external circuit, so it obeys a logarithmic law against light-flux.

(*) approximately.
Logged

[ I won't respond to messages, use the forum please ]

Seattle, WA
Offline Offline
Jr. Member
**
Karma: 0
Posts: 54
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks for the responses.  I'm mostly thinking of measuring and data-logging the output voltage of a small (5.5V, 320 mA) solar panel throughout the day, as a gauge of whether or not -- on average -- it makes sense to invest in solar power at my house.  I live in an area (Puget Sound Convergeance Zone) where direct sun is hit & miss throughout the year.

Peak voltage of my solar cell is over 6VDC, so that would probably fry the Uno.  perhaps I should find a smaller panel for my experiment.  But the question is, can I just plug the output of a smaller panel directly into an analog port on my Uno (assuming its peak voltage is under the 5V limit) and read the voltage through code?
Logged

Offline Offline
Edison Member
*
Karma: 116
Posts: 2205
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
But the question is, can I just plug the output of a smaller panel directly into an analog port on my Uno (assuming its peak voltage is under the 5V limit) and read the voltage through code?

You may want to put a resistor in serial. Otherwise, it is fine, assuming that you are powering your arduino separately.
Logged

Pages: [1]   Go Up
Jump to: