An MPPT as we all know refers to maximum power point tracking which is typically associated with solar panels for optimizing their outputs with maximum efficiency. In this post I have explained the 3 best MPPT controller circuits for efficiently harnessing solar power and charging a battery in the most efficient manner.
Where an MPPT is Used
The optimized output from MPPT circuits is primarily used for charging batteries with maximum efficiency from the available sunshine.
New hobbyists normally find the concept to difficult and get confused with the many parameters associated with MPPT, such as the maximum power point, "knee" of the I/V graph etc.
Actually there's nothing so complex about this concept, because a solar panel is nothing but just a form of power supply.
Optimizing this power supply becomes necessary because typically solar panels lack current, but posses excess voltage, this abnormal specs of a solar panel tends to get incompatible with standard loads such as 6V, 12V batteries which carry higher AH rating and lower voltage rating compared to the panel specs, and furthermore the ever-varying sunshine makes the device extremely inconsistent with its V and I parameters.
And that's why we require an intermediate device such as an MPPT which can "understand" these variations and churn out the most desirable output from a connected solar panel.
You might have already studied this simple IC 555 based MPPT circuit which is exclusively researched and designed by me and provides an excellent example of a working MPPT circuit.
Why MPPT
The basic idea behind all MPPTs is to drop or trim down the excess voltage from the panel according to the load specs making sure that the deducted amount of voltage is converted into an equivalent amount of current, thus balancing the I x V magnitude across the input and the output always up to the mark...we cannot expect anything more than this from this useful gadget, do we?
The above automatic tracking and appropriately converting the parameters efficiently is implemented using a PWM tracker stage and a buck converter stage, or sometimes a buck-boost converter stage, although a solitary buck converter gives better results and is simpler to implement.
Design#1: MPPT using PIC16F88 with 3-Level Charging
In this post we study an MPPT circuit which is quite similar to the IC 555 design, the only difference being the use of a microcontroller PIC16F88 and an enhanced 3-level charging circuit.
Step wise Working Details
The basic function of the various stages can be understood with the help of the following description:
1) The panel output is tracked by extracting a couple of information from it through the associated potential divider networks.
2) One opamp from IC2 is configured as a voltage follower and it tracks the instantaneous voltage output from the panel through a potential divider at its pin3, and feeds the info to the relevant sensing pin of the PIC.
3) The second opamp from IC2 becomes responsible for tracking and monitoring the varying current from the panel and feeds the same to another sensing input of the PIC.
4) These two inputs are processed internally by the MCU for developing a correspondingly tailored PWM for the buck converter stage associated with its pin#9.
5) The PWM out from the PIC is buffered by Q2, Q3 for triggering the switching P-mosfet safely. The associated diode protects the mosfet gate from overvolatges.
6) The mosfet switches in accordance with the switching PWMs and modulates the buck converter stage formed by the inductor L1 and D2.
7) The above procedures produce the most appropriate output from the buck converter which is lower in voltage as per the battery, but rich in current.
8) The output from the buck is constantly tweaked and appropriately adjusted by the IC with reference to the sent info from the two opamps associated with the solar panel.
9) In addition to the above MPPT regulation, the PIC is also programmed to monitor the battery charging through 3 discrete levels, which are normally specified as the bulk mode, absorption mode, an the float mode.
10) The MCU "keeps an eye" on the rising battery voltage and adjusts the buck current accordingly maintaining the correct Ampere levels during the 3 levels of charging procedure. This is done in conjunction with the MPPT control, that's like handling two situations at a time for delivering the most favorable results for the battery.
11) The PIC itself is supplied with a precision regulated voltage at its Vdd pinout through the IC TL499, any other suitable voltage regulator could be replaced here for rendering the same.
12) A thermistor can be also seen in the design this may be optional but can be effectively configured for monitoring the battery temperature and feeding the info to the PIC, which effortlessly processes this third information for tailoring the buck output making sure that the battery temperature never rises above unsafe levels.
13) The LED indicators associated with the PIC indicate the various charging states for the battery which allows the user to get an up-to-date information regarding the charging condition of the battery throughout the day.
14) The proposed MPPT Circuit using PIC16F88 with 3-Level Charging supports 12V battery charging as well as 24V battery charging without any change in the circuit, except the values shown in parenthesis and VR3 setting which needs to be adjusted to allow the output to be 14.4V at the onset for a 12V battery and 29V for a 24V battery.
Programming code can be Downloaded here
Design#2: Synchronous Switch-Mode MPPT Battery Controller
The second design is based on the device bq24650 which includes an advanced built-in MPPT Synchronous Switch-Mode Battery Charge Controller. It offers a high level of input voltage regulation, which prevents the charging current to the battery each time input voltage drops below a specified amount. Learn More:
Whenever the input is attached with a a solar panel, the supply stabilization loop pulls down the charging amp to ensure that the solar panel is enabled to produce maximum power output.
How the IC BQ24650 Functions
The bq24650 promises to provide a constant-frequency synchronous PWIVI controller with optimal level of accuracy with current and voltage stabilization, charge preconditioning, charge cut-off, and charging level checking.
The chip charges the battery in 3 discrete levels: pre-conditioning, constant current, and constant voltage.
Charging is is cut-off as soon as the amp level nears the 1/10 of the rapid charging rate. The pre-charge timer is set to be at 30 minutes.
The bq2465O without a manual intervention restarts the charging procedure in case the battery voltage reverts below an internally set limit or reaches a minimum quiescent amp sleep mode while the input voltage goes below the battery voltage.
The device is designed to charge a battery from 2.1V to 26V with VFB internally fixed to a 2.1V feedback point. The charging amp spec is preset internally by fixing a well matched sensing resistor.
The bq24650 can be procured with a 16 pin, 3.5 x 3.5 mm^2 thin QFN option.
Circuit Diagram
BATTERY VOLTAGE REGULATION
The bq24650 employs an extremely accurate voltage regulator for the deciding on the charging voltage. The charging voltage is preset by means of a a resistor divider from the battery to ground, with the midpoint hooked up the VFB pin.
The voltage at the VFB pin is clamped to 2.1 V reference. This reference value is used in the following formula for determining the desired level of regulated voltage:
V(batt) = 2.1V x [1 + R2/R1]
where R2 is linked from VFB to the battery and R1 is connected from VFB to GND. Li-Ion, LiFePO4, as well as SMF lead acid batteries are ideally supported battery chemistries.
A majority of over the shelf Li-ion cells can now be effectively charged up to 4.2V/cell. A LiFePO4 battery supports the process of a substantially higher charge and discharge cycles, but the down side is that the the energy density is not too good. The recognized cell voltage is 3.6V.
The charge profile of the two cells Li-Ion and LiFePO4 is preconditioning, constant current, and constant voltage. For an effective charge/discharge life, the end-of-charge voltage limit may possibly be cut down to 4.1V/cell however it‘s energy density could become a lot lower compared to the Li-based chemical specification, lead acid continues to be much preferred battery because of its reduced production expenses as well as rapid discharge cycles.
The common voltage threshold is from 2.3V to 2.45V. After the battery is seen to be completely topped up, a float or trickle charge becomes mandatory in order make up for the self-discharge. The trickle charge threshold is 100mV-200mV below the constant voltage point.
INPUT VOLTAGE REGULATION
A solar panel may have an exclusive level on the V-I or V-P curve, popularly known as the Maximum Power Point (MPP), wherein the complete photovoltaic (PV) system relies with optimum efficiency and generates the required maximum output power.
The constant voltage algorithm is the most easy Maximum Power Point Tracking (MPPT) option available. The bq2465O automatically shuts down the charging amp such that the maximum power point is is enabled for producing maximum efficiency.
Switch ON Condition
The chip bq2465O incorporates a "SLEEP" comparator to identify the means of supply voltage on the VCC pin, because of the fact that VCC may be terminated both from a battery or an external AC/DC adapter unit.
If the VCC voltage is more significant the SRN voltage, and the additional criteria are fulfilled for the charging procedures, the bq2465O subsequently begins making an attempt to charge a connected battery (please see the Enabling and Disabling Charging section).
lf SRN voltage is higher with respect to the VCC, symbolizing that a battery is the source from where the power is being acquired, the bq2465O is enabled for a lower quiescent current ( <15uA) SLEEP mode to prevent amperage leakage from the battery.
lf VCC is below the UVLO limit, the IC is cut-off, after which VREF LDO is switched off.
ENABLE AND DISABLE CHARGING
The following concerned aspects need to be ensured before the charging process of the proposed MPPT Synchronous Switch-Mode Battery Charge Controller Circuit is initialized:
• Charging process is enabled (MPPSET > 175mV)
• The unit is not in Under-Voltage-Lock-Out (UVLO) functionality and VCC is above the VCCLOWV limit
• The IC is not in SLEEP functionality (i.e. VCC > SRN)
• VCC voltage is below the AC over-voltage limit (VCC < VACOV)
• 30ms time lapse is fulfilled after the first power-up
• REGN LDO and VREF LDO voltages are fixed at the specified junctures
• Thermal Shut (TSHUT) is not initialized - TS bad is not identified Any one of the following technical issues may inhibit the proceeding charging of the battery:
• Charging is is deactivated (MPPSET < 75mV)
• Adapter input is disconnected, provoking the IC to get into a VCCLOWV or SLEEP functionality
• Adapter input voltage is below the 100mV above battery mark
• Adapter is rated at higher voltage
• REGN or VREF LDO voltage is not as per the specs
• TSHUT IC warmth limit is identified • TS voltage happens to move out of the specified range which may indicate that the battery temperature is extremely hot or alternatively much cooler
Self-Triggered In-built SOFT-START CHARGER CURRENT
The charger by irself soft-starts the charger power regulation current each time the charger moves into the fast-charge to establish that there is absolutely no overshoot or stressful conditions on the externally connected capacitors or the power converter.
The soft-start is featured with of stepping-up the chaging stabilization amp into eight uniformly executed operational steps next to the prefixed charging current level. All the assigned steps carry on for around 1.6ms, for a specified Up period of 13ms. Not a single external parts are called for enabling the discussed operational function.
CONVERTER OPERATION
The synchronous buck PWM converter employs a predetermined frequency voltage mode with feed-forvvard control strategy.
A version III compensation configuration let's the system to incorporate ceramic capacitors at the output stage of the converter. The compensation input stage is associated internally between the feedback output (FBO) along with an error amplifier input (EAI).
The feedback compensation stage is rigged between the error amplifier input (EAI) and error amplifier output (EAO). The LC output filter stage needs to be determined to enable a resonant frequency of around 12 kHz - 17 kHz for the device, for which the resonant frequency, fo, is formulated as:
fo = 1 / 2 π √LoCo
An integrated saw-tooth ramp is allowed to compare the internal EAO error control input to alter the duty-cycle of the converter.
The ramp amplitude is 7% of the input adapter voltage enabling it to be permanently and completely proportional to the input supply of the adapter voltage.
This cancels away any sort of loop gain alterations on account of a variation in the input voltage and simplifies the loop compensation procedures. The ramp is balanced out by 300mV so that a zero percent duty-cycIe is achieved when the EAO signal is below the ramp.
The EAO signal is likewise qualified to outnumber the saw-tooth ramp signal with a purpose to achieve a 100% duty cycIe PWM demand.
Built in gate drive logic makes it possible accomplishing 99.98% duty-cycle at the same time confirming the N-channel upper device consistently carries as much as necessary voltage to always be 100 % on.
In the event the BTST pin to PH pin voltage reduces below 4.2V for longer than three intervals, in that case the high-side n-channeI power MOSFET is switched off while the low-side n-channe| power MOSFET is triggered to draw the PH node down and charge-up the BTST capacitor.
After that the high-side driver normalizes to 100% duty-cycle procedure until the (BTST-PH) voltage is observed to decline low yet again, on account of outflow current depleting the BTST capacitor below 4.2 V, as well as reset pulse is reissued.
The predetermined frequency oscillator maintains rigid command over the switching frequency under most circumstances of input voltage, battery voltage, charge current, and temperature, simplifying output filter layout and retaining it away from the audible disturbances state.
Design#3: Fast MPPT Charger Circuit
The third best MPPT design in our list explains a simple MPPT charger circuit using the IC bq2031 from TEXAS INSTRUMENTS, which is best suited for charging high Ah lead acid batteries quickly and with a relatively fast rate
Abstract
This practical application article is for the individuals who may be developing an MPPT-based lead acid battery charger with the aid of bq2031 battery charger.
This article includes a structural format for charging a 12-A-hr lead acid battery employing MPPT (maximum power point tracking) for improving charging efficiency for photovoltaic applications.
Introduction
The easiest procedure for charging a battery from a solar panel systems could be to hook up the battery straight to the solar panel, however this may not the most effective technique.
Presume a solar panel bears a rating of 75 W and generates a current of 4.65 A with a voltage of 16 V at normal test environment of 25 ° C temperature and 1000 W/m2 of insolation.
The lead acid battery is rated with a voltage of 12 V; directly hooking up the solar panel to this battery would decrease the panel voltage to 12 V and only 55.8 W (12 V and 4.65 A) could be produced from the panel for charging.
A DC/DC converter may be most suitably needed for economical charging here.
This practical application document explains a model, making use of the bq2031 for effective charging.
I-V Characteristics of Solar Panel
Figure 1 displays the standard aspects of a solar panel systems. Isc is a short-circuit current that streams through the panel in case the solar panel is short circuited.
It happens to be the optimum current that may be extracted from the solar panel.
Voc is the open-circuit voltage at the terminals of the solar panel.
Vmp and Imp are the voltage and current levels where maximum power can be purchased from the solar panel.
While the sunshine decreases the optimum current (Isc) which may be attained, the highest current from the solar panel also suppresses. Figure 2 indicates variation of I-V characteristics with sun light.
The blue curve links the details of the maximum power at various values of insolation
The reason for the MPPT circuit is to try to sustain the working level of the solar panel at the maximum power point in several sunshine conditions.
As observed from Figure 2, the voltage where maximum power is delivered does not alter greatly with sunshine.
The circuit constructed with the bq2031 makes use of this character to put into practice MPPT.
An additional current control loop is included with decrease the charge current as the daylight decreases as well as to sustain solar panel voltage around the maximum power point voltage.
bq2031-Based MPPT Charger
Figure 3 displays the schematic of a DV2031S2 board with an added current control loop added to carry out the MPPT making use of the operational amplifier TLC27L2.
The bq2031 keeps the charging current by retaining a voltage of 250 mV at sense resistance R 20. A reference voltage of 1.565 V is created by using 5 V from U2.
The input voltage is compared with the reference voltage to produce an error voltage that could be implemented at the SNS pin of bq2031 to decrease the charge current.
The voltage (V mp) where maximum power can be acquired from the solar panel is conditioned employing resistors R26 and R27. V mp = 1.565(R 26 +R 27)/R 27.
With R 27 = 1 k Ω and R 26 = 9.2 k Ω, V mp = 16 V is achieved. TLC27L2 is internally adjusted with a bandwidth of 6 kHz at V dd = 5 V. Mainly because the bandwidth of TLC27L2 is significantly below the switching frequency of bq2031, the added current control loop continues to be constant.
The bq2031 in the earlier circuit (Figure 3) offers an optimum current of 1 A.
In case the solar power panel can furnish adequate power to charge the battery at 1 A, the outer control loop does not proceed into action.
However if the insulation reduces and the solar power panel struggles to deliver sufficient energy to charge the battery at 1 A, the outer control loop decreases the charge current to preserve input voltage at V mp.
The outcomes demonstrated in Table 1 confirm the functioning of the circuit. The voltage readings in bold type signify the issue whenever the secondary control loop is minimizing the charge current to preserve input at V mp
References:
MPPT Synchronous Switch-Mode Battery Charge Controller Circuit
App says
Hello,
I have a school assignment to design and build an optimizer for a solar panel. It should be controlled by a microcontroller and designed for up to 40V and 15A.
Do you think the first design is suitable? Could you possibly help me with it?
Thank you, App
Swagatam says
Hi, The fist design is suitable for your application, but I am not sure about the code, because it looks so lengthy and I have not yet tested it…
You can build a highly optimized solar panel controller simply by using an appropriately rated buck converter.
App says
Have you ever tried building one yourself? Could you possibly share the design you used for your optimizer? I also found other articles published by you, so if there’s another design you believe is best, I’d love to hear about it.
Thanks, App
Swagatam says
Sorry, currently I dot not have a microcontroller based design, if it is without a microcontroller then I can suggest…
App says
It would be great to have a recommendation that doesn’t involve a microcontroller, at least as a starting point. Plus, I could learn something from an experienced person.
Swagatam says
Sure! You can try the second circuit diagram from the following article, using an iron core transformer. In that case the frequency for the lower TIP122 transistor will be 50 Hz:
https://www.homemade-circuits.com/homemade-solar-mppt-circuit-maximum/
Klin Ton says
good morning sir…????????????????
can this charger, charge 12v 100 mps or more than
Swagatam says
Hi Klin, sorry it won’t charge a 100 amp battery
Chiebo says
Well done job Engr. Swagatam.
Plz, if you can help me with the list of components and their specifications, I will be glad… thanks sir in anticipation..
Stephen says
I need help designing a single cell lithium battery charging circuit. It should have the following features
I was looking up various ICs all day, but couldn’t narrow it down. If you could point me a schematic that is already tested that would be a great help.
Swagatam says
Please specify the mAh rating and the voltage rating of your cell.
Ike says
hi Swagatam, this mppt charge control is rated to handle 120w/12 or 220w/24 panel only how I modify it to handle 1500-2500watt panel with 80v
Swagatam says
Hi Ike, Sorry, I do not have a 1500-2500watt rated MPPTs at the moment.
Ike says
Please can you help me with it within a short time.????
Nirban says
Can you please give me 12 v 10 amp mmpt diagram with program for solar street light controller
Swagatam says
Sorry, I do not have this circuit with me at this moment
Shams says
Plz give me a diagram of 12v 60amp mppt charger
B Tschacher says
I’ve been looking closely at the PIC based controller and think a good addition to this design would be to include a Poly fuse to the Vreg output along with a 5.6v Zener to grnd down line from the 100uf cap. This would be some added protection for the MCU which these are a bit pricey and with the code on it makes it a critical part. It will also protect the rest of the circuit from issues although those components are not so V critical. Including a digital V meter would be nice also to monitor B+ voltage. I’m starting construction on this and will be working to push power up to around 750 watts by adding main diodes and Mosfets, fuses, etc where needed.
Swagatam says
I truly appreciate your interest in this project and wish you good luck.
However, I am a bit skeptical about the program code, it looks huge and complex, so please test and verify it before buying all the components.
B Tschacher says
I have a question for your consideration on the PiC based controller here. That 68kufd cap is a game killer for this project ,Pretty high priced. What I’m wondering is if this much capacitance is truly required? The cost pretty much works out HIGH priced going with multiple lower values no matter what putting a parallel bank together. You have any input on this such as using a lot less like just 10k?
Swagatam says
The 68000uF capacitor value is dependent on the battery Ah value. For bigger batteries this capacitor will need to be bigger and vice versa. However, you can experiment with smaller values also and see if that works or not.
B Tschacher says
Hello again. I’ve been observing a lot of the posts you’ve made now for several years. Now I’ve been looking at this post and specifically design #1. There are still some specifics I want to consider here to make this project suitable for considerably higher power levels, like around ~500 to 800 watts to supply power for an off grid RV system. To speed things up do you have any input I could make use of?
Swagatam says
Hi, thanks for exploring this website. The design #1 can be upgraded to the any desired power output by suitably upgrading the Q1, D1, D2 and the inductor wire thickness.
However, I am somehow skeptical about the PIC program code, it looks huge and needs to be checked practically if it really works or not.
B Tschacher says
Thanks for getting back. I’m currently studying some other posts you did, the de sulphator project. Your’s and another, the 4047 and an NE555 based unit. I’m going to have to put all of this on hold for a month or so till I can place an order for parts to work with these.
Swagatam says
Sounds great! no problems, wish you all the best with the projects….let me know if you any further questions.
jayantbarik4@gmail.com says
If a buck boost circuit required so that it can charge at low voltage time?
Moustafa Shehab says
I have 15 batteries 12V 150Ah connected serially to earn 180V 150Ah to run the UPS elevator.
I need to recharge them from solar by MPPT. What is the best way to connect MPPT that can give me 180V DC to recharge 15 Batteries?
Swagatam says
Building an MPPT for a 180V 150 Ah battery can be quite huge and complex, therefore i would recommend you to buy it ready-made instead of making one. The company engineer will explain you how to connect and use it.
OGBUNUKO says
Can you send the full Skech of the circuit diagram
And the list of the components
prasad rao bhupati says
what is reference between pwm & MPPT
prasad rao bhupati says
what is effencey between pmw & mppt
rdalek says
I’m interested in this article but at the end, it seems to just cut off mid sentence. Can you check and make sure it’s all posted? It seems it got cut off.
Swagatam says
The last design is from texas instrument, for the details you can refer to the following datasheet..
https://www.ti.com/lit/an/slva378a/slva378a.pdf
rdalek says
Thank you. I missed that. I enjoy your articles. The way you explain things makes more sense to me. Sometimes data sheets tend to complicate things.
Thanks again.
Swagatam says
It’s my pleasure and I am glad you liked the articles.
bazy says
Tanks sir but where can i apply arduino nano in that circuit diagram
bazy says
Sure by using arduino nano right?
Swagatam says
All Arduino will work actually….
Raju Karimgol says
Dear Sir,
I’m seeking for DIY MPPT charger kits.
Can you provide me the contact.
Swagatam says
Sorry Raju, I do not have readymade kits for these projects!
Derrick says
Please kindly explain to me in the first MPPT were you use LM358 for voltage and current reading how the lm358 works here because i see you ground pin 5 and pin 6 connected to a siginal from the shunt then a capacitor and resistor from the output of this opamp then the also the output to pin 7 to the adc pin please explain to me here i want to understand the use of all this and also the voltage reading network why pass it thru a voltage follower and not direct from the divider to the adc? I really need to understand this coz I’ve seen it done like this many times in different circuits.
Swagatam says
This design is not mine so I haven’t investigated it yet….The idea was taken from a reputed electronic magazine.
amar nath sharma says
can i use 37 volt 16amp solar pannel for maxium curre4nt
Swagatam says
yes you can!
amar nath sharma says
bro its too long code
how many languages you used in this code
i hope that this code is not comfortable for this microcontrollar
Swagatam says
Amar, it was published in an old electronic magazine. If you are not comfortable with it you can the other designs.
Adnan says
Sir!
You’re doing good work.
I am motivated very much from your articles and get a lot of knowledge about inverters and converter.
Sir! can you suggest me a design of a solar charge controller and inverter design also for 30W PV.
It will be very helpful for .
I want to work on it for my final year project.
Its will be great favor for me.
Thank you.
Swagatam says
Adnan, you can try the concepts presented in the following article for making a solar inverter with your 30 watt panel:
https://www.homemade-circuits.com/how-to-make-solar-inverter-circuit/
Steve says
Swagatam,
I have a question on Design #1 in your “3 Best MPPT Solar Charge Controller Circuit for Efficient Battery Charging”.
Under nominal conditions (25 degc, 1000 W / sq m) my solar panel is spec’ed for a Vmp = 19.65v and an Imp = 4.33A.
With a 12v battery, will your design develop ~19.65v on the solar panel itself ? And will the solar panel itself deliver ~4.33A ?
Thanks Once More, Steve
Swagatam says
Steve, an MPPT is designed to manage and transfer power to the load with highest possible efficiency, it cannot modify or force the solar panel to generate a desired amount of power.
If your panel is optimally generating the mentioned 19.65V at 4.33 amps, then the MPpT will try to ensure that this 19.65 x 4.33 = 85 watts of power is efficiently managed and utilized by the load with minimum wastage, however if your panel is claiming to generate the above power but actually it is generating only 70 watts, then MPPT cannot force the panel to generate the rated 85 watts.
for a 12V battery the MPPT in the above designs will try to transfer the 85 watts at the maximum of 95% efficiency to a 12V battery…in other words it will convert the 19.65V into 14V, and enhance the current to 85 / 14 = 6 Amps
Iyke says
Hi Swag,
So much info you put out there. This is much appreciated.
I have to question please..
1. I want to know the current flow of a typical mppt controller.. Example, I am sure current flow from the solar side is one way into the mppt, the battery side is a two way in and out of the mppt. So what of the load side, is it a two way in and out or just a one way. Please I need to know so I can consider connecting my inverter to the load side for the batteries to charge from either the solar or the inverter (with an inbuilt charger).
2. Am trying to work on a semi self charging system. I want you to please share your thoughts. Instead of using an array of solar panels, I want to introduce a mere battery charger to be connected to the mppt controller same way the solar would have been connected with all other items remaining same. This is just to eliminate the expenses on buying arrays of solar panel…
Swagatam says
Thanks Iyke, it will depend which load sinks more current and that load will attract more current. The battery is also a load along with the external load. Your panel current specs must be more than the combined current requirement of the battery and the external load. Also the two loads must be protected with individual current control units so that both the loads are able to share the current uniformly, else the heavier load will suck in all the current not allowing the the other load to get the required amount of current.
Sorry I could not understand your second question? The MPPT itself is a battery charger, no need of adding any further circuitry to it.
thomas berton says
I would like to discuss a solar battery system to power a light on a peice of equipment I manufacture. Would you be willing to work with me?
Swagatam says
Hello, Please specify your requirement, I’ll try to solve it for you! I can work with you if you have a beneficial offer for my business.
thomas berton says
Can we reply off line?
Sanjay Deshpande says
Can I use it for 350w 12v solar panels and get max chare out of it to charge my 2*100Ah batteries?
Swagatam says
Yes you can, with the help of a boost converter circuit.
Justin says
Thank you sharing your wealth of knowledge on MPPT’s. After reading the above and the other MPPT posts you have shared, I can’t figure out if I what to use the battery at the same time I am charging it with a MPPT, if connecting the load directly to the battery will effect the MPPT’s ability to correctly charge the battery?
Swagatam says
If the combined power of the battery and the load exceeds the MPPT output specs then definitely it will affect the MPPT performance.
Kashif lakhani says
Dear Sir, please guide for DC 160v to 240v Convert into 220v AC circuit.
My into is from 16 batteries of 12v
Swagatam says
Kashif, you can use the first circuit from this article:
https://www.homemade-circuits.com/5kva-transformerless-inverter-circuit/
Olly says
Hi friend, like I promised to get back to you in case I have issues with the project. 1) What voltage I’m I supposed to get from pin#8 of IC1 i.e. TP4? I’m getting random voltage ranging from 5V to 1V.
2) Why is the absorb LED not indicating at all? The thermistor and bulk LED keeps blinking alternately.
3) I guess VR3 is used to set the float of the controller because when I vary it, at a point the float LED will blink while the bulk indicator goes off.
4) What description would you give the indicator? I just swapped different toroid inductors and all are giving the same results. For the capacitor, I paralleled 4pieces of 4,700uF together.
Those are my observations/questions please I’d like you to respond to them. Thanks always.
Swagatam says
Hi friend, i wish I could help you, but since I have not tested it practically I can’t provide any useful help. The design was published in one of old magazines.
The inductor is only for filtering the output DC
Bai Borko says
Hello,
I build the project from Design#1 with pic16f88 . Seem it works . Please explain/share how to set VR2 and VR3 ?
With VR3 adjust 14.4 V on the battery . But with VR2 also can change this voltage .
I want to understand how to do proper setting .
I want also to understand what is the purpose of S1?
DHARNIDHAR KUMAR says
Sir I have read all your article that you have given above the mppt Solar charge controller and I have seen all those diagram but I don’t not understand which diagram is necessary for 1000 watt solar panel.
PLESE REAPLY ME SIR
THANKS
Swagatam says
Dharnidhar, you can upgrade all of the shown designs by suitably modifying the MOSFETs for handling 1000 watt load and input supply
ch wazir says
programming for pic16f88 in your design 1 is requested.
Swagatam says
please find the download link in the same section
ch wazir says
sir yours design no.1 is very excellent. plz tell how to program the pic16f88. thanks so much.
Swagatam says
Ch, it is not my design it was taken from a magazine. The program code is given in the link at the end of the explanation.
manoj says
not getting MPPT results, rather getting same current as pwm or direct connection to solar panel. Also mosfet 9560 getting too hot. pl explain , if some ware wrong, or possible mistake
Swagatam says
It is designed by Texas Instrument engineers so it has to work if everything is connected exactly as shown. However, this is recommended only for the experts…if you are finding it difficult you can try a simple buck converter instead:
https://www.homemade-circuits.com/5v-pwm-solar-battery-charger-circuit/
Srinivas says
I want to design MPPT charge controller for 50w,12v solar pannel…and also I want to make the output voltage from the charger controller should be varied based upon our requriment…can you please send me the circuit diagram… And the ratting of the components that I have to use sir….
Swagatam says
Srinivas, You can use the second circuit for your application. The output voltage can be set through the given formula, by adjusting the values of R1, R2
All resistors are 1/4 watt, MOSFETs are IRF540
MUHAMMED ASLAM A S says
What is the algorithm for the first mppt design 1.& Please explain the design
Sagar M. Busa says
Sir,
Where can I find PIC16F88 programming for above circuit.
Swagatam says
Just above design#2
ERNST MASSEANT says
How to design a charge controller for high voltage battery bank?
Swagatam says
https://www.homemade-circuits.com/220v-lithium-ion-battery-bank-charger/
Muhammed says
Can you send the code required for the microcontroller.
sfk says
Thanks for works.
Can please share about Design #1 PIC16F88 specifications. Example Max Amp. Max Panel Voltage Input, amp and outputs, idle power, effective…
Thank you
Swagatam says
Hi sfk, the current will depend on the MOSFET Specs of Q1, voltage is specified on the solar panel.
sfk says
Hi Swagatam, Thanks for reply.
I have 2×100 watt solar Panel (each one, 17,30Volt-6,05Amp) so i need 15Amp output. In diagram Q1 is IRF 9540 i think it’s enough for power.
My other question; if i want to more amp for example 60amp output, its enoughf to change only change mosfest Q1 or need to connect several parallel from the same mosfet?
Thank you
Swagatam says
Hi sfk,
IRF9540 will be enough for 15 amps, so need to change it.
for 60 amp you can two more of these in parallel, on a common heatsink.
You will also need to ensure that D1 is rated twice the amount of output current…and also the inductor wire muse be appropriately dimensioned
sfk says
Thanks for reply,
I will make this circuit and write the results here.
I couldn’t read a few elements in the diagram.
What are d1 and d2 diode values?
You will say this is only for experts but i am not 🙁
If you have a pcb diagram, could you please you share
Thanks
Swagatam says
Yes this circuit is for advanced and experienced users only, absolutely not recommended to newcomers. If you are a newcomer, please do not try it. There’s a high possibility that you would not succeed to get the intended results.
I do not have a PCB diagram, even with PCB it is not suitable for newcomers.
Chris Owen says
I have 3 charge sources to charge 2 12VDC AGM 1000Ah batteries, and a continuous drain at this time unknown.
to charge I use.
A 12V Alternator 120 amp when the engine is running.
A repurposed UPS 110Vac Transformer with a 14VDC output unknown current at this time. To charge at night from shore power. Need a circuit for this…
What I am having issues finding is a controller for the following Photovoltaic cell. To charge a 12Vdc battery bank or maybe a 24V bank with some help modding.
A 36V Solar cell.
Max power Pmax 245W
Max power voltage Mmp 30.7
Max power current Imp 7.98A
Open circuit voltage Voc 37.3v
Open circuit current Isc 8.47A
Max system Voltage DC600V
Max series Fuse 15A
Max Bypass Diode 15A
Fire Rating Class C
so this is the ratings on the cell.
I want to charge a 12v bank while unplugged from the Solar so I need a circuit to provide the power to the inputs from the other sources. I seen a few circuits for the UPS that I am looking at building. The Alternator I guess I need to have a isolation on too.
Do I need to prevent back flow from the other charge sources or is that built into the circuits???
I have just not found any built items that meet the requirements of the solar system, and threw the UPS re-purpose, together to charge the batteries to 12v due to the constant draw from equipment that runs at night.
I need to get the draw …
Swagatam says
As far as I have understood, you have an alternator running on diesel, another alternator running on shore power, and a solar panel. You want to use all the resources to charge the mentioned battery appropriately depending on their availability, and the diesel alternator needs to be switched OFF while the remaining sources are available??
Chris Owen says
Pretty close,
When I am driving the Gas/Diesel is the primary 12v source.
When I park (day time usually) the Solar is the secondary source when the engine is off and not connected to shore power 120Vac.
When I get home at night I plug in to shore power which also is my data connection (another project).
I need to keep 2 12vdc batteries (1000ah each) charged via each source.
There are many 12v circuits that I think will work but the Solar is ~30vdc that needs to charge 12vdc (14vdc) that is where I am having the issue. As far as I know a 24V solar charge control wont work…???
But you were pretty close.
Thanks,
Swagatam says
No problem, for the solar charger you can implement the following design:
https://www.homemade-circuits.com/5v-pwm-solar-battery-charger-circuit/
You can adjust R8/R9 to get 14V at the output for the battery.
Chris Owen says
Thank you, I get so busy it takes a moment to respond.
I will have a look at that project.
Swagatam says
No Problem!
Ubaid says
Sir I am designing the charge controller for 300W PV source and 180ah battery will these circuits work ?
plz guide me.
Swagatam says
Hi Ubaid, yes these will work for a 180 Ah battery
Sanjay says
I want to use PIC circuit to charge 170Ah(80+90Ah) batteries.Is it possible?Or what changes are to be done in the circuit?
taurai mirimi says
great, just great stuff. thanks
Swagatam says
Thank you!
green says
sir,
can you support Power electronics designing products
Swagatam says
Hi, Do you mean SMPS calculations, sorry I can’t.
Jignesh patel says
Hi sir I am designing 14.8v 18200mAh lithium ion battery charger using 40w solar but I am.not able to make ciruit. By google I came on this post but I didn’t found any link for circuit and c code. Can you help.me in this ?
Swagatam says
Hi Jignesh, This circuit was referred from one of the electronic magazines, and whatever it had I have uploaded it above, I do not have any alternative version or details for the design.
Pollob says
I build this circuit.but didn’t work.only thermistor Led blinking.money waste
Swagatam says
This circuit is strictly for the experts who know everything about microprocessors and electronics.
PolloB says
plaease add battery Capacity meter via 6led
Emmanuel says
Hello
Please…. I can't find the MPPT charge controller circuitry on this page. Can u please send it to my email: emmanuel.omolaja@yahoo.com
Cameron Martin says
Hi, Thank you for your reply. I had a look at the link you provided regarding hysteresis and noted the dual detection features of Op Amps. This has resolved another issue I have so thank you very much for your link.
Swagatam says
You are most welcome, and glad I could help!!
Cameron Martin says
Hi, I really like your circuit. I understand the LM358 voltage follower circuit for voltage measurement however I don't understand the use of the 2.2k resistor.
I would also be most grateful if you could explain the purpose of the 1.5k, 8.2k, and 68k resistors on the LM358 for low side current sensing as I am trying to do the mathematics to work out the voltage drop in mV I should expect over the 0.01 ohm currents sensing resistor. I am basing my theoretical calculations using a 20 Amp supply from the panel and the 0.01 Ω resistor. My raw calculation is 200mV however I am guessing the resistor circuit adds some gain.
V = I x R
V = 20 Amps x 0.01 Ω
V = 0.2 Volts
V = 0.2 x 1000 = 200 mV
Any help you can provide would be greatly appreciated.
Swagatam says
Hi, thanks, however this is not my circuit, it was sent to me by one of the avid readers of my blog for publishing, and that's the reason I wouldn't be able to answer your questions precisely.
the 2k2 resistors doesn't make sense for sure unless there;s something that may be linked inside the MCU with these resistors, so you may try removing it and see if it makes any difference.
the resistors 1.5k, 8.2k, and 68k at the inverting input appears like some kind of hysteresis arrangement, but interpreting this network looks confusing since pin#3 is grounded
you an see a similar explanation here:
https://www.homemade-circuits.com/2017/01/universal-battery-charger-circuit.html
Dinca Silviu says
Hi. Could this circuit be used for charging a 10v 640ah battery pack from solar panel 30v 10 amp to obtain 30 amp carging current? Thanks.
Swagatam says
Hi, your battery will require 10 x 64 = 640 watt or 64 ampere for charging whereas the panel is rated to produce only 30 x 10 = 300 watts….so it's not possible
network advise says
Thank you sir
network advise says
Hi sir
This Srinivas
WHAT IS EQUALANT TL499À
Thanks & regards
Swagatam says
Hi Srinivas, I could not figure out the reason of using TL499, when an ordinary 7812 could also work, you can try a 7812 and check the results…
Kyren Katwaroo says
I am a final year student at the University of the West Indies. For my final year project I am building this same exact circuit to charge a 12V lead acid battery using a 24V, 5A solar panel that i constructed for myself. Do I have to use a 12V 10A DC fuse?
Swagatam says
you can connect it if you wish to, there's nothing critical about it. the circuit is current controlled anyway
Kyren Katwaroo says
ok thanks. what voltage to set VR2 at? or how should i set VR2?
Swagatam says
sorry I have not yet studied that since this is not my design…and since it's a programmed one
Olly says
Thanks for the post. However, I have questions concerning the design
1) if TL499A is replaced with 7812 as you said, is the voltage not too much for the pic16f88
2) What is the purpose of TP1, TP2 and TP4 respectively
3) I guess there’s error in the D1 connection. All legs are connected together
4) What value would you suggest for D3 and D4.
Thanks for your usual response.
Swagatam says
1) Yes 7812 will be high for the IC, in that case you can use an LM317 based regulator.
2) TP refers to test point
3) I have corrected D1 connection.
4) D3, D4 can be 1N4007 diodes
Olly says
Thanks bro for the reply. I’ll keep in touch with you if there’s any other question.
Olly says
OK thanks! That means inductor value is not critical.
Swagatam says
Yes it is not critical..
Ravipal Singh says
sir, can i use 2 or three irf 9540 in parallel to get higher current,and same in mbr 20100ct diode.please reply.thanks
Swagatam says
Ravipal, yes that's possible for the mosfet, but if you want to use parallel diodes, then make sure to attach the sets over a common heatsink so that those diodes are able to share the heat and conduct uniformly
Ram Patil says
Dear Sir,
Circuit consist of 68,000 micro F DC capacitor. It costs too much & require big space. Is there any alternative for this?
Thanks,
Ram
Swagatam says
Ram, higher capacitor value will allow proportionately higher current for the load and will prevent the output from dropping with higher loads….nevertheless you can dimension it as per your load wattage through some practical experimentation.
Ravipal Singh says
hi sir,whats about d1 and d 2 to charge higher voltage battries.Do i need to change them ,because they are in series of battry.Dr they are able to handle higher voltage and current.thanks
Swagatam says
Hi Ravipal, yes you are right, those diodes must be equally rated as Q1 in terms of handling the specified load voltage and current
Srinivas says
sir….i want mppt solar charge controller for 50w solar paannel…with variable output voltage….. Could you please provide me circuit diagram… And the ratting of the components sir…
Swagatam says
Srinivas, you can use the second concept from the above article.
Olly says
It will connect with pin#1….mistakenly not shown in the diagram….
I copied the above statement from your reply and I couldn’t figure out what you meant. Please what is connecting pin#1?
Swagatam says
Please ignore it, it was probably meant to indicate the connection of pin1 with pin2 of the IC2
Ravipal Singh says
hi sir,Thanks for reply,Can you please specify the value of Q1 and D1 ,D2 to charge 96 volt 150 ah batteries.thanks
Swagatam says
ravipal, you may have to check online for this to find the favorable device…you can search for "120V 10amp mosfet datasheet" for the required results
Unknown says
Hi sir,
Can I use this circuit for my 1600 VA 24 volt solar inverter and 250 watt 24 volt solar PV panels? I am using two batteries in series of rating 12 volt 220 VA each.
Thanks,
Ram
Swagatam says
You can try it out, just make sure Q1 is appropriately upgraded to handle the high current….
Ram Patil says
Sir,
Thanks for your reply. Can you explain, what exactly do I have to do to Q1 ?
Ram Patil says
Also I would like to inform you that I am purchased 4 nos. of solar PV panels to connect in parallel, each rating of 250 watt, 24 volt.
Swagatam says
Ram, you will have to select Q1 such that it is able to handle much above 24V and current in excess of the result obtained by solving 1600/24
that's great, you can now go ahead with the project….wish you all the best
Ram Patil says
Hi sir,
For above specs, can I use 40V, 50A P-CHANNEL POWER MOSFET (UTT40P04) as Q1 ? Or please suggest voltage and current for Q1 and code number if any please.
Swagatam says
Hi Ram, you can try it, but you will need to mount it on a large heatsink
Ram Patil says
What is S1 (Equalise) stands for? I dont get its meaning. Please explain.
Thanks,
Ram
Swagatam says
you can search it online…."what is equalization in battery charging"
Ravipal Singh says
hi sir,can i use this circuit to charge higher ah batteries ,such as 180 amp.or do i need to change some in circuit.
Swagatam says
yes it is possible provided Q1 is appropriately rated for handling the specified amount of current….
Prabodh says
please give inductor details ie how to built that
Swagatam says
It will connect with pin#1….mistakenly not shown in the diagram….
Nikhil Gujar says
Hello sir,
I want to charge 48 v 175 AH battery with 250 W solar panel . (Mppt voltage 30 v, MPPT current 8 A).
I want to charge the battery with Mppt and current control. Can above circuit be useful for me?
Please suggest the solution
Swagatam says
Hello Nikhil, the above circuit is specified for 24V max, so it cannot be used for 48V application.
and a 30V 8amp supply cannot be used for charging a 175AH battery with any modification….the current should be at least 25 amps
Nikhil Gujar says
Thank you sir for your reply.
The basic idea is to charge batteries of E vehicle. Limitation is space on roof of vehicle. Maximum 1 panel can accommodate on roof. Though charging current is less but it will keep battery charging whole day. You may please suggest suitable solution.
Swagatam says
you will need a boost MPPT charger circuit which can boost the solar panel voltage to 48V.
or you can use an external boost circuit for converting the 30V from the MPPT to 48V @ 5amp
you can try the last circuit from the following article, and modify the transformer appropriately for getting the desired results
Swagatam says
here's the link
https://www.homemade-circuits.com/2013/09/half-bridge-mosfet-driver-ic-irs21531d.html
.........PRADEEP........ says
Dear sir
can u giv ckt diagram and ideas of PWM/MPPt based solar street light charge Controller for 200Wp panel and 200Ah battery
Swagatam says
Dear Pradeep,
you can try the following design
https://www.homemade-circuits.com/2015/11/simple-solar-mppt-circuit-part-2.html
naeem says
what maximum current it can handle please
Swagatam says
as per the rating of Q1…please check it through its datasheet
MadMacs says
Hi, has anyone built this and do you have any details on the inductor L1, i.e guage of wire, toroid size and number of turns?
Regards
Mac.
Ram Patil says
Hi Mac,
You will get ready inductor available in market.
Regards,
Ram
Edwin Parsons says
Could this circuit be used for charging a 50AH 39.5V battery pack? Would replace the solar panel with a power source cause any issues?
Swagatam says
it would be possible, just make sure to change the component values accordingly which are recommended to be changed for the 24V version ….through cross multiplication.
Doug says
Hi there,
For a 50amp 12v 3 stage charger, what immediate changes would need to be made?
I’ve seen ‘smart’ chips that handle all the aspects of LAB (or other chemistries) charging but they all seem to be limited in their output capacity.
Is there an IC available that would handle higher currents?
Thanks for any thoughts you might be able to spare.
Doug
Swagatam says
Hi, I don’t think the above circuits can be modified for delivering 50 amp current. Higher current chargers in the order of 50 amps can be perhaps built using discrete components and mosfets, but that won’t be an MPPT.
Edwin Parsons says
Can you see any problems using this circuit to charge 39.5 V 50AH LiFePO4 battery pack?
VIJAY AJ says
Sir can u please explain the function of voltage follower and current follower in the ic2 stage or suggest some other article related to that
Swagatam says
Vijay,
voltage follower is a configuration where the input voltage to the opamp is simply carried forward across its output but after buffering through the opamp so here opamp acts like a buffer.
the current amplifier monitors the voltage across the sample resistor and switches its output ON or OFF depending upon the set threshold…it's a comparator actually
Swagatam says
I have not yet covered these topics in this website, soon I may include these…
Shailesh Lokhande says
sir,
I want to design the same circuit for our mobile battery Having rating 2900 mAH/11.02Wh nominal charge voltage 3.8 V.Limited charge voltage 4.35 V as per any anroid mobile battery.Can I make the charger portable using the same pic based mppt technique or I should go for Linear technology or any other method mppt method to make the circuit portable.
2.How can I add auto cut off feature in this circuit.
Swagatam says
Shailesh, according to me it would be an overkill to use the above design for a modest requirement like yours.
An MPPT might not be required for your application, rather a simple buck based smps charger would be more than sufficient.
here's one design which is extremely portable, and extremely customizable and might suit your application well:
https://www.homemade-circuits.com/2015/05/5v-pwm-solar-battery-charger-circuit.html
for including an auto cut-of you could include the second circuit from the following link in the proposed design:
https://www.homemade-circuits.com/2011/12/how-to-make-simple-low-battery-voltage.html
bazy says
Please sir, wer can i connect RG 2004A display on this circuit diagram to show solar, battery and pwm too.
Swagatam says
Bazy, I don’t think the mentioned display can be directly used with the above circuits.
bazy says
Ok sir can i add REG2004A on the circuit diagram to show solar bsttrry and pwm on screen ??
Swagatam says
It cannot be added or used with the above circuits, it can be used only with an Arduino according to me.