SunRover Part 2 – Solar Power Controller/Power System

Power Systems in SunRover

The SunRover has three separate power systems, each with its own solar charging system and batteries. The systems are:

  • Motor Power Subsystem
  • Arduino Power Management Subsystem
  • Raspberry Pi2 Subsystem

Why three systems? I wanted redundancy in the system and flexibility in allocating power to the various subsystems. I used two power systems in Project Curacao, and this decision saved me several times. Project Curacao [10] is a Raspberry Pi/Arduino system located 3500 miles away from SwitchDoc Labs on the tropical island of Curacao (Figure 10). It is a solar-powered system with a bunch of I2C sensors and a camera. SunRover is kind of a Project Curacao on steroids, with legs.

Figure 10: Project Curacao in the Sun.

Project Curacao developed a problem with the Raspberry Pi power system three months after I left it down on the island. A wire came loose inside the box where the solar panels were attached to the Raspberry Pi SunAirPlus solar charger and controller. Two of the three panels were disconnected (and sometimes when the wind blows really hard, they reconnect again for a couple of weeks) and the Raspberry Pi was suddenly getting less than 1/3 as much power as before. (It is less than 1/3 because the top solar panel delivers a bit less power on average than the front panels and naturally, the front panels were the disconnected ones). The Arduino battery watchdog was unaffected, having a second supply. The Arduino software detected the lower charge on the Raspberry Pi battery system and then adjusted the turn on and turn off times of the Raspberry Pi. Now we would just see the Raspberry Pi come up for a few hours every other day to say hi, take pictures, and then shutdown again. The system worked perfectly. It is going to be another three months before I can get back down and fix that nasty wire.

I want SunRover to have that same ability to recover from a fault, but I have added one more level to that redundancy. SunRover has a solar panel multiplexer that allows me to switch panels for one to another system. This design gives me great flexibility for handling solar panel events.

Designing a Solar Powered System

In a recent article in Raspberry Pi Geek magazine, I discussed how to design a solar power system [11]. Basically, you estimate the amount of power you need in each system and then make assumptions on the amount of power you will get from the panels. There are three main problems:

  • Calculate the power needed for your application. Set the number of solar panels and the battery capacity [12].
  • Figure out when to shut down your system (especially the Raspberry Pi), because of low battery conditions [13].
  • Figure out how to turn your system back on when the batteries have recovered [14].

Two of the most important decisions in designing a solar-powered system is how your system will shut down in the case of a "brownout" and how it will recover from that shutdown.

Brownouts always can happen with a solar power system. A long set of storms, dirt on the panels, or a loose wire – or not properly shutting down and restarting your Raspberry Pi – will kill the SD card eventually.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Raspberry Pi Geek

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content