Detect when solar panel has sufficient power available

Thread Starter

k1ng 1337

Joined Sep 11, 2020
684
Hi, I am on the hunt for methods for as the title says, "Detect when solar panel has sufficient power available". The vision is to build an arena where two robots 'battle' only while in direct sunlight. Each robot will have a solar panel and a microcontroller along with the drivetrain with no energy storage element besides a large capacitor for minor changes in sunlight. Using a 1W panel as an example with 200mA maximum rated current, I would like to know how to detect when the panel is capable of outputting at least 50mA at 5V before the load is connected. The problem I am having is how to approach detection when the detector is powered from the panel and so prone to the sudden changes in sunlight. One approach is to use a Zener diode. Thoughts are appreciated.
 

nsaspook

Joined Aug 27, 2009
10,416
Solar panels are essentially constant current sources, so the output voltage with little or not load won't change much past some level of sunlight.
1664218843897.png

You will need to load test (short pulses are OK) the panel at the power level (to some desired point on the power curve) you need to switch over at.
 

ronsimpson

Joined Oct 7, 2019
2,389
I think there is a micro-computer running that pulls 1mA. It there is more than 1mA the computer becomes alive.
The micro can measure the panel voltage.
The micro can turn on a MOSFET that is a 50mA load (constant current load). Turn on dummy load for 1mS or 10mS and watch the panel voltage. If the voltage drops hard and fast, quick turn off the load and wait for a while. Repeat.
If the panel can support 50mA for 1mS then it can power the real load. Turn off the dummy load and turn on the real load.
 

Thread Starter

k1ng 1337

Joined Sep 11, 2020
684
Thanks, using a test load is what I arrived at beforehand. I was hoping for more elegant ways but I'm not sure how it's possible without several sensors working in unison.
 

ronsimpson

Joined Oct 7, 2019
2,389
I was hoping for more elegant ways but
You could use the real load. You might need a large capacitor on the micro to keep it up and running when the panel falls in.

If you watch the panel's voltage carefully, you will probably know a little ahead of when the panel collapse.
 

nsaspook

Joined Aug 27, 2009
10,416
Thanks, using a test load is what I arrived at beforehand. I was hoping for more elegant ways but I'm not sure how it's possible without several sensors working in unison.
In hardware engineering, elegant doesn't mean better. If you want devices to be reliable and dependable you need solid data to act on. Here, your decision parameter is energy from the panel. Directly checking the solar panel energy potential gives you the best data.
 

Ya’akov

Joined Jan 27, 2019
6,561
I may be missing something here, but why not just have the panel connected to the load full time and measure current (preferably with something like a hall effect sensor so it presents no load) and have the action start as soon as the motors can move?

The problem I see is to ensure the current is high enough for your MCU to be reliable, so rather than turn on the motors when the current is sufficient, I think i would pull the MCU reset low until the current was enough to turn on a transistor to pull it high.The rest of the circuitry could be analog. I suppose a very low value bueden resistor would probably be better than the hall effect idea.

Once the MCU was allowed to run it could decide what to do with the motors but when it was in reset at least one of the motors could be connected across the PV cell by default. I think this could be made ot work, but I haven’t really made a thorough analysis of it, so I may be missing something.
 

ronsimpson

Joined Oct 7, 2019
2,389
so I may be missing something.
to build an arena where two robots......
I think robots, servo motors, and all is a very difficult to understand load. Probably the load (motors) are off when the system first powers up. So, the load is low. Start out in "slow-low speed mode" and watch the panel voltage. If the voltage starts to drop reduce the power to the motors. If the voltage is good, then you can try increasing the duty cycle of the motors. I reject the idea you have a certain load and I say you control the current by how you drive the motors.

MPP (max power point) is a way of getting the most out of a panel. Look at how they do it. They make a loop that controls the power and watches the voltage. The loop is a fraction of a second long. They are constantly checking for the max power point and adjusting the load. MMP is used in charging batteries and there are many examples of how it works.
 

DickCappels

Joined Aug 21, 2008
9,317
Thinking simply, can you just use a photoelectric detector of some kind and just measure the strength of the light falling on the detector (which would be placed close to the solar panel). I have seen exposure meters in cameras -very simple and cost pennies.
 

nsaspook

Joined Aug 27, 2009
10,416
Thinking simply, can you just use a photoelectric detector of some kind and just measure the strength of the light falling on the detector (which would be placed close to the solar panel). I have seen exposure meters in cameras -very simple and cost pennies.
That would be great as a proxy (guess) of actual power if the photoelectric detector (with the same wavelength, intensity and incident angle as the solar panel) was in the same position and physical size (shadows, blocking) as the solar panel. Testing the actual solar panel for actual power capability is so much simpler in actual execution.
 

drjohsmith

Joined Dec 13, 2021
504
What would be the problem if the robot started moving , and the current collapsed ?
the robot goes into reset,
just same as if cloud had come over,
 

nsaspook

Joined Aug 27, 2009
10,416
What would be the problem if the robot started moving , and the current collapsed ?
the robot goes into reset,
just same as if cloud had come over,
The problem definition is when to start (qualify the power source) the robot, not when to stop it. Power loss (sudden or gradual) is a given with intermittent sources that are hopefully handled gracefully by continuous monitoring of the solar panel while on online..
 
Last edited:

Irving

Joined Jan 30, 2016
3,133
motors for robots, even small ones, have high start currents under load. A motor that runs on 50mA will still need 5x that or more to start. A big electrolytic across the supply rail can help service that but probably not enough to start & stop reliably, especially as fighting involves mostly stop/start and little running at speed in a straight line. Personally I'd go for an MPPT approach with an integrated MCU-controlled high-efficiency buck-converter to reduce volts and increase current output as needed. Even so, I think this is going to be hard to achieve realistically.
 
Top