Print this page

Arduino PPT Solar Charger

Arduino Peak Power Tracker Solar Charger



This project is an update of my original Peak Power Tracker Battery Charger Project. It is designed to control a 12V solar panel charging a 12V lead acid battery. The updated version of this project uses the Arduino Duemilanove development board (from as the basis for the project. Then I used the Arduino Protoshield Kit (also from to contruct the charging circuit and mate it to the processor board.

PPT Charger schematic (EagleCAD): ArduinoSolar.pdf

PPT Charger Hardware Description: ArduinoSolarHardware.txt ArduinoSolarHardware.rtf

PPT Charger Parts List: ArduinoSolarPartsList.txt

PPT Charger Software(Arduino Sketch): ppt.pde

PPT Charger Photos: Duemilanove and Protoshield, Prototshield back, Protoshield front.

To explain how Peak Power Tracking works I've printed part of my original article that I wrote for Home Power Magazine. (Link to full article - Peak Power Tracking article.pdf)

To understand why the PPT can increase the efficiency of your solar power charging system a closer at the electrical characteristics of a solar panel is necessary. Solar panels convert photons from the sun striking their surfaces into electricity of a characteristic voltage and current. The solar panel’s electrical output can be plotted on a graph of voltage vs. current: an IV curve. I represents the current in amps and V represents the voltage in volts. The resulting line on the graph shows the current output of the panel for each voltage at a specific light level and temperature. (Fig. 2) The current is constant until reaching the higher voltages, when it falls off rapidly. This IV curve is applicable to the electrical output of all solar panels.

However, in a solar power system we are more concerned with the power we can get out of the system, power we can use to do useful work. In an electrical system power is measured in watts, which is the product of the voltage and current (W = I x V) generated by the panel. Graphing the watts generated by the solar panel shows an interesting characteristic: the maximum watts are produced at a panel voltage of about 18v. This value is called the Maximum Power Point or MPP. Since the goal of the PPT to generate the maximum power from the solar panels, operating the solar panels at roughly this voltage is optimal. However, when a solar panel is used to charge a 12v battery directly, the battery pulls the operating voltage of the panel down to its own voltage of 12v. As shown on the graph, the solar panel is producing significantly less power (watts) at 12v than at 18v. So here is an opportunity to gain more power out of the solar panel charging system if the solar panel continues to operate at 18v while charging a 12v battery.

To gain the efficiency of Peak Power Tracking, the 18v of the solar panel must be converted to the 12v of the battery. This can be accomplished by using an electronic circuit called a DC/DC converter. A DC/DC converter is a very common device found in most DC power supplies in some form. It is the basis of the PPT. The DC/DC converter changes the solar panel’s higher voltage and lower current to the lower voltage and higher current needed to charge the battery. Because the DC/DC converter is theoretically a loss-less device (less some small real world inefficiencies), it outputs the same amount of watts as are input, but at a different voltage and current. In a power supply, simple feedback is used to set the DC/DC converter to a fixed output voltage. This is done by controlling the ratio of the input voltage to the output voltage. In the solar panel example, the ratio would be 18v/12v or 3/2.

However, for any solar panel, the Maximum Power Point is not fixed. Consider the IV curves for any solar panel; (E0004X.pdf) the graph will show that the curves change with the amount of light and the temperature of the panel. They also change for each individual solar panel. As the curves change, the MPP changes for the different temperatures and light levels. If the MPP changes, the conversion ratio of the input voltage to output voltage of DC/DC converter must also change to keep the solar panel voltage at the MPP.

The Peak Power Tracker uses an iterative approach to finding this constantly changing MPP. I call this iterative method a hill climbing algorithm. Examining the graph of the solar panel watts (Fig. 3), it looks like a hill with the MPP at the summit. The PPT uses a microprocessor to measure the watts generated by the solar panel. It then controls the conversion ratio of DC/DC converter to implement the hill climbing algorithm. The software in the microprocessor works like this:

Increase the conversion ratio of the DC/DC converter.
Measure the solar panel watts.
If the solar panel watts are greater than the last measurement,
Then it is climbing the front of hill, loop back and do it again.
Else if watts are less than the last time measurement,
Then it is on the back side of the hill, decrease the conversion ratio and loop back to try again.

This hill climbing algorithm occurs about once a second in the PPT and it does a good job of keeping the solar panel operating at its Maximum Power Point.

The basis for a Peak Power Tracker is that the DC/DC converter changes the higher voltage/ lower current solar panel input to the lower voltage/ higher current battery charging power. The microprocessor controls the conversion ratio of the DC/DC converter, keeping the solar panel operating at its MPP. There are obviously a lot more details that go into this design. For a clearer understanding of the process, look at the schematic and software listings for the PPT on my website

With an understanding of how the Peak Power Tracker works, the next question is how well does it work? Figure 5 illustrates data collected from the prototype PPT connected to two 50 watt solar panels on my roof. In this example, the PPT was charging a 12v battery. The data from the PPT was output by its serial port once per second and collected, stored and graphed on my laptop PC. (See my previous HP article, “Knowledge is Power”, Home Power #74).

On the graph (Fig. 5), the line labeled “PPT On” shows the watts generated by the solar panels when the PPT was running the hill climbing algorithm. Every 10 seconds the PPT set the DC/DC converter to a 1/1 ratio simulating a direct connection between the solar panel and the battery. The watts are measured and plotted on the graph as “PPT Off” showing the power that would be generated by the solar panel if it was directly connected to battery. The difference in watts between “PPT On” and “PPT Off” is the power gained by using the PPT. In this case the battery is being charged with about 20% more power when the PPT is on.

Power gains of over 30% are attainable when using the PPT, but this is exception not the rule. The PPT works because there is a difference between the solar panel’s MPP voltage and the battery’s charging voltage. The IV curves for an actual solar panel (E0004X.pdf, remember the MPP is right at the knee of the curve) show that the MPP voltage goes down as the temperature of the solar panel goes up. This means that the difference in voltage between the solar panel MPP and the batter is lower as the panel temperature rises. With a lower voltage difference the PPT will show a lower power gain compared to a direct connection between the solar panel and the battery. Therefore, factors that decrease the difference in voltage between the solar panel MPP and the battery will cause the PPT to show a lower power gain. These factors include decreasing solar panel MPP voltage at higher temperatures, increasing battery voltage during charging and voltage drop over long wire runs. On the other hand, if the temperature of the solar panel is low and the battery is mostly discharged, the PPT will show higher power gains. The graph in Figure 4 was generated when the outside temperature was around 5F (winter in Wisconsin!). I was using a mostly discharged 12v battery to maximize the gain of the PPT system.

My experience with Peak Power Tracking has shown that large power gains (>25%) are possible only under ideal circumstances. If the solar panels are cool, the batteries mostly discharged and voltage drops in the system are low, maximum PPT gains should occur. Under other conditions the PPT gains will be lower, especially if the solar panels are being used in hot conditions.

At this point, the question is who should add a PPT to their solar power system. Most solar panel battery charging systems include a solar charge controller to keep the batteries from overcharging. My PPT prototype also includes a solar charge controller function in the software. In most cases, replacing the solar charge controller with a PPT that also includes charge control only slightly increases the cost. Generally, the power and efficiency gains will easily offset this increase.

Previous page: Solar Projects
Next page: Solar Grid-Intertie Inverter