Solar charge controller diagram. Other Power Managers

Solar charge controller diagram

Maximum Power Point Tracking (MPPT) charge controllers serve both the solar panel and the battery by acting as a buffer between them. The MPPT charge controller recognizes the solar panel and the battery as individual circuits with completely different characteristics. A solar panel’s output amperage is determined using the standard formula for power:

When MPPT controllers are used in a solar panel system, they allow panels to operate at their rated voltage instead of the battery’s voltage, resulting in a 10 to 30% increase (average increase based on the battery’s state of charge and solar panel operating temperature) in power to the battery bank when compared to using less efficient charge controllers such as series or shunt-type controllers.

Whenever power is converted from one form to another, power in the circuit is consumed to perform the conversion. The efficiency of the charge controller in processing this power varies depending on the manufacturer of the charge controller and the type. For the purposes of this discussion and for demonstration purposes only, we will assume that the circuit is 100% efficient, but the reader should be aware that the actual efficiencies are between 70 and 96%, depending on the controller.


To understand how MPPT works, let’s first consider the operation of a conventional (non-MPPT, such as a series or shunt-type) charge controller. When a conventional controller is used to process solar power for charging a battery, it simply connects the modules directly to the battery. This forces the modules to operate at battery voltage, which is typically not the ideal operating voltage at which the modules are able to produce their maximum power. These simple charge controllers stop charging a battery when a certain voltage level is reached and reinitiate charging when the battery voltage drops back below that level. The MPPT charge controller calculates the voltage at which the solar module is able to produce maximum power and automatically adjusts the charging amperage in accordance with the battery’s state of charge (SOC). This allows the solar panels to operate at their rated power output and provide maximum charge current into the battery.

Application in the Solar Stik System

The Power Hub serves as a singular collection point for multiple DC power sources including large portable solar arrays, wind turbines, fuel cells, and more. It can accept up to 2.4 kWh of power generation inputs and is a fully automated system with remote monitoring capabilities.

Here’s an example of how MPPT technology works: A standard 12 V Solar Stik 200 System is equipped with two 100 W solar panels. According to the specification plate on one 100 W solar panel, it produces 5 A at 20 VDC. Therefore, two panels combined produce 10 A or 200 W of solar power at 20 V. (The panels on a 12 V Stik are connected in parallel, so the voltage remains the same.) This is a textbook example using ideal operating conditions and a non-discharged battery.

As discussed, a conventional charge controller homogenizes the characteristics of the solar panel and battery into a single circuit, and their individual capabilities are reduced. In this case, the output voltage of the Solar Stik 200 is 20 V, which is significantly higher (8 V higher) than the 12 V battery. If the Solar Stik 200 is connected to a battery with a SOC of 12 V using a conventional charge controller, the controller would likely reduce the solar panel’s operating voltage to a level more harmonious with the battery:

Simply put, 40% of the power that is available from the panel would be wasted. In this case, the solar panels generate only 120 W of power to charge the battery even though they are rated at 200 W of output.

Using MPPT in the Solar Stik System increases the performance of the charging process between the solar panel and the battery. MPPT technology allows the solar PV panel to operate at the optimum voltage where it can produce the greatest amount of power rather than at the battery’s voltage. The higher power extracted from the panel is provided to the battery as increased charge current.

Assume that you have a discharged battery with a SOC of 11 V. Since we know it is unreasonable to use the solar panels’ rated output of 20 V for charging, the incoming voltage is manipulated using MPPT and lowered to about 1 V higher than the actual battery voltage, which in this case is 12 V. This results in a higher charging current (the output wattage of the panels remains at 200 W):

Power Generation

We consider ourselves authorities in portable power and students of its application. STIKopedia reflects that and is updated continuously as the industry grows and evolves. Questions? Комментарии и мнения владельцев? Click the compass at the upper left to contact us.

  • 13 North Leonardi Street, St Augustine, FL 32084
  • 1 800.793.4364
  • © 2023 Solar Stik®, Inc. All rights reserved.

STIKopedia Modules

© 2022 Solar Stik®, Inc. All rights reserved.

Battery VoltageBattery voltage, or state of charge (SOC), of a lead-acid battery can be estimated by measuring the open (no load) battery terminal voltage using a digital voltmeter. Prior to measuring, the battery must have rested for 4 to 8 hours after charge or discharge and resided at a steady room temperature. With these conditions met, voltage measurements provide an amazingly accurate SOC for lead-acid batteries.

Specific GravitySpecific gravity can be measured in wet-cell batteries with removable caps that provide access to the electrolyte. To measure specific gravity, you must use a tool called a temperature-compensating hydrometer, which can normally be purchased at an auto parts store or tool supply.

Load TestingLoad testing removes and measures the amps from a battery, similar to what happens when you start the engine of a car. Some battery companies label their battery with the amp load for testing. This number is usually about half of the CCA rating. A battery rated at 500 CCA would therefore be load-tested at 250 amps for 15 seconds.

A load test can only be performed if the battery is at or near a full charge. Some electronic load testers apply a 100-amp load for 10 seconds, and then display battery voltage. This number is then compared to a chart on the tester, which compares common load testing results to CCA ratings to determine battery condition.

So why do we hear so much about dangerous lithium battery fires?

In some lithium-ion polymer batteries, improper charging and storing can cause the formation of crystalline “needles” that can puncture the internal separator, resulting in failure or fire. This is not the case with LiFePO4 batteries because the reactants that store the charge are not flammable. All other lithium battery chemistries are volatile, reactive, and flammable, and if they do overheat and catch fire, conventional halon fire extinguishers will not put out the fire.

Common LiFePO4 cell types include cylindrical and prismatic (LiFePO4 chemistry is not packaged in pouch cells, another lithium cell type). It is easy to see how these were named, as they are actual descriptions of their physical attributes; they look like what they sound like.

LiFePO4 cylindrical cells are all made of the same basic components. Each cell, and the entire battery, is enclosed by a resilient plastic container. Inside the container there is a “rolled” foil, and between the foil there is a layer of permeable “separator” material. A safe, nonflammable electrolyte (unique to LiFePO4) is added to each cell and saturates the “foil” and “separator”. The battery terminals are typically threaded (rather than posts) so that heavier-duty connections can be made to the load.

LiFePO4 prismatic cells make optimal use of space by using the layered approach. Small, flat versions are used in mobile devices where space is at a premium. The terminals can be oriented in any direction, which is an important feature for handheld devices. The smaller formats often have a softer, more flexible exterior and are sometimes referred to as pseudo-prismatic jellies.

Larger versions of the prismatic format are used to power vehicles and are often housed in welded aluminum housings. Stronger exterior housings are often required to compensate for the structurally softer inner construction of the prismatic format. Less efficient thermal management is inherent in their design, and overheating can reduce the life cycle and cause the cells to swell. If this occurs, remove and replace the battery before there is any damage to the component using the battery.

LiFePO4 is slightly less powerful than other commercially available lithium chemistries, but for many applications, the safety of its chemistry makes it the best choice despite its lower energy density. A LiFePO4 battery can be installed safely in any orientation. Safety vent valves are usually not required because the battery management system (BMS) will not allow the battery to overheat and vent gasses.

PWM stands for Pulse Width Modulation, which stands for the method it uses to regulate charge. Its function is to pull down the voltage of the solar panel to near that of the battery to ensure that the battery is properly charged. In other words, they lock the solar panel voltage to the battery voltage by dragging the Solar panel Vmp down to the battery system voltage with no change in the current.

It uses an electronics switch ( MOSFET ) to connect and disconnect the solar panel with the battery. By switching the MOSFET at high frequency with various pulse widths, a constant voltage can be maintained. The PWM controller self-adjusts by varying the widths (lengths) and frequency of the pulses sent to the battery.

When the width is at 100%, the MOSFET is at full ON, allowing the solar panel to bulk charge the battery. When the width is at 0% the transistor is OFF open circuiting the Solar panel preventing any current from flowing to the battery when the battery is fully charged.

How the Circuit Work?

The heart of the Arduino solar charge controller is an Arduino Nano board. The Arduino senses the solar panel and battery voltages by using two voltage divider circuits. According to these voltage levels, it decides how to charge the battery and control the load.

Note: In the above picture, there is a typographical error in the power and control signal. The red line is for power and the yellow line is for the control signal.

The whole schematic is divided into the following circuits:

1. Power Distribution Circuit:

The power from the battery ( B B- ) is step down to 5V by the X1 ( MP2307) buck converter. The output from the buck converter is distributed to

USB port to charge gadgets.

2. Input Sensors:

The solar panel and battery voltages are sensed by using two voltage divider circuits consisting of resistors R1-R2 R3- R4. C1 and C2 are filter capacitors to filter out the unwanted noise signals. The output from the voltage dividers is connected to Arduino analog pins A0 and A1 respectively.

The solar panel and battery currents are sensed by using two ACS712 modules. The output from the current sensors is connected to Arduino analog pin A3 and A2 respectively.

The battery temperature is measured by using a DS18B20 temperature sensor. R16 (4.7K ) is a pull-up resistor. The output of the temperature sensor is connected to Arduino Digital pin D12.

3. Control Circuits:

The control circuits are basically formed by two p-MOSFETs Q1 and Q2. The MOSFET Q1 is used to send the charging pulse to the battery and MOSFET Q2 is used to drive the load. Two MOSFET driver circuits are consist of two transistors T1 and T2 with pull-up resistors R6 and R8. The base current of the transistors is controlled by resistors R5 and R7.

4. Protections Circuits:

solar, charge, controller, diagram

The input overvoltage from the solar panel side is protected by using a TVS diode D1. The reverse current from the battery to the solar panel is protected by a Schottky diode D2. The overcurrent is protected by a fuse F1.

5. LED Indication:

LED1, LED2, and LED3 are used to indicate solar, battery, and load status respectively. Resistors R9 to R15 are current limiting resistors.

7. LCD Display:

An I2C LCD display is used to display various parameters.

8. USB Charging:

The USB socket is hooked up to 5V output from the Buck Converter.

9. System Reset:

SW1 is a push button to reset the Arduino.

You can download the schematic in PDF format attached below.

Main Functions of Solar Charge Controller

The charge controller is designed by taking care of the following points.

Prevent Battery Overcharge: To limit the energy supplied to the battery by the solar panel when the battery becomes fully charged. This is implemented in charge_cycle of my code.

solar, charge, controller, diagram

Prevent Battery Over-discharge: To disconnect the battery from electrical loads when the battery reaches a low state of charge. This is implemented in load_control of my code.

Provide Load Control Functions: To automatically connect and disconnect an electrical load at a specified time. The load will ON when the sunset and OFF when sunrise. This is implemented in load_control of my code. 4.Monitoring Power and Energy: To monitor the load power and energy and display it.

Protect from abnormal Condition: To protect the circuit from the different abnormal situations like lightning, over-voltage, over current, and short circuit, etc.

6.Indicating and Displaying: To indicate and display the various parameters

7.Serial Communication: To print various parameters in the serial monitor

USB Charging: To charge Smart devices

Voltage Measurement

The voltage sensors are used to sense the voltage of solar panel and battery. It is implemented by using two voltage divider circuits. It consists of two resistors R1=100k and R2=20k for sensing the solar panel voltage and similarly R3=100k and R4=20k for battery voltage. The output from the R1 and R2 is connected to Arduino analog pin A0 and output from the R3 and R4 is connected to Arduino analog pin A1.

Voltage Measurement : Arduino’s analog inputs can be used to measure DC voltage between 0 and 5V (when using the standard 5V analog reference voltage) and this range can be increased by using a voltage divider network. The voltage divider steps down the voltage being measured within the range of the Arduino analog inputs.

For a voltage divider circuit Vout = R2/(R1R2) x Vin

The analogRead function reads the voltage and converts it to a number between 0 and 1023

Calibration : We’re going to read the output value with one of the analog inputs of Arduino and its analogRead function. That function outputs a value between 0 and 1023 that is 0.00488V for each increment (As 5/1024 = 0.00488V)

Vin = Vout(R1R2)/R2 ; R1=100k and R2=20k

Vin= ADC count0.00488(120/20) Volt // Highlighted part is Scale factor

Note: This leads us to believe that a reading of 1023 corresponds to an input voltage of exactly 5.0 volts. In practice, you may not get 5V always from the Arduino pin 5V. So during calibration first measure the voltage between the 5v and GND pins of Arduino by using a multimeter, and use scale factor by using the below formula:

Scale factor = measured voltage/1024

Shunt-mode Solar Charge Controller

When connecting a solar panel to a rechargeable battery, it is important to use a charge controller circuit to prevent the battery from overcharging. Charge control can be performed with a number of different circuit types. Low-power solar systems can use a series analog charge controller (voltage regulator), an example is shown as the upper part of my solar powered reading lamp project. Higher power systems can use a series switching charge controller, such as my SCC3 design. Very large systems, such as grid-tied installations, often use a maximum power-point (MPPT) charge controller. This shunt-mode circuit is best suited for low-power systems with a PV charging current of up to 1 amp.

Series regulators (both analog and switching) control battery charging by interrupting the flow of current from the solar panel to the battery when the battery reaches a preset full voltage. MPPT controllers use controllable switching regulator circuits to convert PV power to high voltage and back down to lower voltages, they are complicated and require a bit of power to operate, but offer excellent efficiency which can be beneficial for high power systems.

This circuit is a switching shunt-mode charge controller. In a shunt-mode circuit, the solar panel is connected to the battery via a series diode. The diode prevents battery current from flowing back through the PV panel at night. When the solar panel charges the battery up to the desired full voltage, the shunt circuit connects a resistive load across the battery in order to absorb the excess PV charging current. An alternate but similar approach to this switching shunt-mode PV regulator is the Analog Shunt-Mode circuit.

solar, charge, controller, diagram

The main advantage of shunt-mode over series mode regulation is the lack of a switching transistor in the power path between the solar panel and battery. Switching transistors are non-perfect devices, they waste a percentage of the available solar power as heat. Inefficiency in the shunt-mode controller‘s switching transistor does not effect charging efficiency, it only turns on when excess power is purposely being wasted. The main disadvantage of a shunt-mode regulator is that the load resistor value needs to be set to match the amperage provided by a particular type of PV panel. This makes it harder to design as a general-purpose device. Also, for higher current designs, the load resistor becomes large and expensive.

Another difference between series-mode and shunt-mode regulators is the load that the power source (PV panel) sees. In series controllers, when the battery reaches the full point, the power source current path is opened up. In shunt-mode controllers, the power source is always presented with a load.

Shunt-mode regulators are often used for regulating DC-output wind generators and water turbine generators, although this circuit would only work with a very low power generator such as the type used for a science fair demonstration. See my WGR1 12 Volt Wind Generator Regulator circuit for a practical high power circuit.


Solar Panel Open Circuit Voltage: 18V (36 cells) Solar Panel Short Circuit Current: 200mA max (up to 1 A with a different load resistor). Battery Voltage: 12V (nom.) Battery Capacity: 0.1 to 20 Amp-Hours

Solar current is routed from the PV panel through the 1N5818 Schottky diode to the battery. When the battery reaches the full setpoint, the circuit turns on the IRFD110 MOSFET transistor and the the 68 ohm 3W dump load resistor is connected across the battery, absorbing the unneeded charge current.

The 78L09 IC provides 9V regulated power for running the comparator circuitry. Operational power for this circuit is provided entirely from the PV panel, there is virtually no power taken from the battery at night. The two 100K resistors in series provide a regulated 4.5V reference point for use by both comparator circuits. The 2N3906 transistor is wired with a zener diode in its base circuit. When the PV voltage is above 12V, the 2N3906 transistor turns on and enables the comparator circuit. This stabilizes the comparator circuit in low-sunlight conditions.

The battery voltage is scaled down by the 47K resistor and 100K potentiometer. The lower half of the TLC2272 dual op-amp compares the scaled down battery voltage to the 4.5V reference voltage. When the battery voltage is above the full setpoint voltage, the lower op-amp’s output goes high and turns on the IRFD110 MOSFET which connects the dump load resistor This activates the IRFD110 MOSFET transistor and the dump load resistor. It is important to use a rail-to-rail op-amp such as the TLC2272CP here, standard op-amps will not turn the MOSFET fully on and off.

When the load across the battery causes the battery voltage to drop, the comparator circuit turns back off. This oscillation continues while solar power is available. The 300nF capacitor across the op-amp slows the oscillation frequency down to a few hertz.

The upper half of the TLC2272 op-amp inverts the dump load control signal, and acts as a buffer for driving the high intensity red LED. The LED turns on when the battery reaches the full setpoint. The LED does not waste any useful charging power since it only turns on when the battery is full, this is a useful feature since this charge controller is designed for low power systems.

It should be possible to modify this circuit to run at more than 1 Amp, although your author has not tried this. A series-mode controller such as the SCC3 is a better choice for higher current PV systems. Higher current operation would require replacing the 1N5818 diode, the dump resistor and IRFD110 MOSFET with higher power components. The value of the dump load resistor should be adjusted, as explained below, to keep the battery voltage below the full point.

Caution should be used when constructing high power versions of the circuit. If any of the components in the shunt circuit were to open up, the battery could become overcharged and may even rupture or explode. Experimenters assume all liability for their work, be careful out there.


It is necessary to match the load resistor to the output of the power source. The 68 ohm resistor shown in the schematic is a good match for a 200mA PV panel. To tune the circuit for a 1 amp PV panel, the dump resistor should be able to handle 1 amp at the battery full voltage. For a 13.8V battery full voltage, the dump resistor should be rated at 13.8 ohms and 13.8 Watts or higher. A 13 ohm/20 Watt resistor would be a practical value to use. If the load resistor is connected directly across the PV panel at noon on a cool and sunny day, the resistor value should be set so that the PV output voltage drops to just below the battery’s desired full voltage.

Connect the PV panel to the PV inputs and a rechargeable 12V battery to the battery outputs. The battery should be pre-charged for easiest alignment. Point the panel at the sun, and monitor the battery voltage with a meter. Adjust the 20 turn 100K potentiometer until the Full LED starts to flash, then tweak the potentiometer until the battery reaches the desired full voltage. If the battery is not completely charged, it may take a while for it to charge to the point where the LED flashes.


Place the PV panel in the sun, when the battery reaches the full setpoint, the LED will start to flash with short on-pulses and long off times. As the battery charging continues, the LED flashing will change to long on-pulses and short off times. In cold climates, it may be useful to use the load resistor’s heat to keep the battery warm. The load resistor and the battery can be mounted inside of an insulated container. Important: A suitably rated fuse should always be placed between the battery’s positive terminal and the rest of the circuitry.

Back to FC’s Solar Circuits page.

What Is The Difference Between MPPT and PWM Charge Controllers?

To better understand how this voltage difference causes inefficiencies, let’s first examine the other common type of solar charge controller. This controller is the pulse width modulation (PWM) charge controller.

PWM controllers use a transistor switch that rapidly opens and closes as needed to regulate the charge current going into the battery. Since PWM controllers can’t modulate the voltage, they pull the output voltage of the solar panel down to match the battery voltage. Let’s look at an example.

A 250-watt solar panel may have an optimal or max power voltage (Vmp) of 32 volts and a max power current (Imp) of 7.8 amps. (32 volts x 7.8 amps = 250 watts)

Using a PWM controller, your panel will still produce 7.8 amps. But the voltage will drop to match the battery at 12 volts. Now, your panel is only providing 94 watts instead of 250 watts. (12 volts x 7.8 amps = 94 watts)

How MPPT Charge Controllers Work

As we mentioned before, MPPT charge controllers are DC-DC converters. This means they regulate the charge current into the battery like a PWM controller. But, they also convert the voltage coming out of the panel to match what the battery needs. Let’s look at an example of how this drastically improves efficiency.

Using the same 250-watt panel, the MPPT controller allows the panel to operate at the max power voltage (Vmp). Now the power going into the controller is the full rated 250 watts.

The output from the controller to the battery still needs to match the battery at 12 volts. But the current increases to 20.8 amps allowing you to utilize the full 250 watt potential of your panel. (12 volts x 20.8 amps = 250 watts)

For simplicity, these examples assumed a 100% efficient conversion in the charge controllers. In reality, a small amount of power is lost as heat during the conversion.

Benefits of an MPPT Charge Controller

Efficient at Using Power

On a properly sized solar power system, it’s not uncommon to see up to a 30% increase in efficiency by switching to an MPPT controller. This efficiency increase is even more significant on systems where the solar panel voltage is much higher than the battery voltage, like our example above.

Best for Large Systems

Utilizing an additional 20-30% of power out of your system becomes more advantageous as the size of your system grows. For this reason, MPPT controllers are often best used on large systems and may not be worth it on smaller, simpler setups.

Better in Cloudier Environments

The maximum power point tracking feature of MPPT controllers is a huge benefit in cloudy environments where the max power point of the solar panels will be fluctuating all day.

Are MPPT Solar Charge Controllers Worth It?

MPPT charge controllers are more expensive than PWM controllers. The added cost of upgrading your controller may not be worth it on small, basic systems. However, on larger systems or in locations with unstable weather conditions, the increased power and efficiency gained by using an MPPT controller will likely more than makeup for the added cost of the controller.

Nobody likes to waste power. MPPT charge controllers help you get the most out of your solar panels without worrying about changing weather conditions or making sure you perfectly sized your solar panels to your battery voltage.

Leave a Comment