diy solar

diy solar

DIY MPPT SCC?

I looked at a few prospective pwm voltage mode control chips for this, and all had an excellent error amplifier for battery voltage regulation, but the current limit part needed for solar regulation was usually difficult to use in this application.
One notable exception, was the Texas Instruments TL494. This is becoming a fairly old chip, but it does have two excellent easy to use error amplifiers, and works very well in this application.

Error amplifier one is used for solar voltage regulation, and is connected the opposite way around to conventional. The inverting input becomes the solar voltage input, and the non inverting input the fixed +5v reference. As solar voltage rises, the duty cycle is increased to act as a shunt voltage regulator.

Error amplifier two regulates battery voltage in the normal way. The non inverting input comes from battery, the inverting input from the +5v reference. This holds a constant voltage regulated battery voltage, once bulk charging is completed.

Each error amplifier can be over compensated with a very simple type one integrator. We do not need to have super fast optimally damped transient response ! Just complete stability, and error corrections can be comparatively qute slow, and it will still be much faster than a perturb and observe algorithm.

This just drives a conventional buck converter in the usual way. It could not be any simpler.
 
If a cloud obscures the sun, we need to throttle back the loading a bit, and increase it again when the cloud has passed. Its as simple as that.

........

Now the cynics will say Ah! but what about changes in temperature or solar insolation, the peak power voltage is not a precise fixed figure.

Ahhh !! ....like in the post ? But what about partial shading ?

boB
 
Partial shading is a real bugger....

Now most if not all panels have internal diodes to bypass any weak shaded groups of cells. If you only have one series string with some shaded panels, a software perturb and observe controller can self adjust to peak at a lower total output voltage, so that best use can be made of a bad situation.

My system will not correct for that, it expects all series panels in a string to behave similarly, shaded or not.
So with just the one partially shaded string, a software perturb and observe controller would be better than my constant voltage controller.

If there are several series connected strings connected together to one controller, and one string is partially shaded, that string will be effectively right out of the picture, regardless of the type of controller. It simply cannot produce enough voltage to match the other working strings to contribute any further current.

So yes, a software perturb and observe controller would be superior, but only if you have one perturb and observe controller for every series string. And that gets expensive in a larger system that might have multiple series strings.
 
I like the prospect for such a simple controller, however have a question.

Once bulk charge state is completed, what mechanism do you use to reduce the regulated voltage to a lesser amount; as its not the best practice to keep your lifepo4 bank at such a high voltage for long periods of time.
 
Agreed, sustained high voltage is definitely detrimental to long life according to the literature.

There is really no need to charge right up to absolute maximum safe voltage, then reduce it back to something more sensible, although many people seem to do it that way.
I charge mine up to 3.45 volts only, and sustain that until sunset. At that voltage I can then do all my active cell balancing over several hours, and it seems to work fine. There is then also plenty of margin if one cell goes a bit wild and starts to rise significantly above all the others.

The reality is, that if I set the charging voltage much higher, it would climb quite rapidly up to the new higher voltage, without drawing significant current to get there.
The flat part of the voltage curve begins to curl quite early, perhaps down around 3.40 to 3.42 volts.
By 3.45v its well on its way to climbing virtually straight up.
Up there, its not absorbing any more ampere hours.
If you cease charging the voltage drops like a rock back to perhaps 3.42v rather quickly.

So I can see no real advantage to higher charging voltage, and there are some indications that its a bad idea to do so.
 
Last edited:
How large could this be scaled? I would guess it would just be a matter of proper buck converter design.

Which brings me to an electronics question. What kind of design considerations does a high current buck converter need to focus on? I was thinking of having a hand at building a 50 volt, 200 amp power supply. So, theoretically speaking, how is a 200 amp converter different from a 10 amp converter?
 
All that has been discussed so far, are some ideas and concepts about a control system for producing pwm for operating a suitable buck converter.
The actual buck converter needs to be designed to suit the required input and output voltages, and carry the required amount of current reliably.

I am assuming that the 50 volt 200 amp dc supply you would like to build is powered from the grid ?
If that is the case, a buck converter is probably not the simplest way to go about it.
This type of application is not uncommon, its used in large industrial battery chargers for things like fork lifts.
The least painful way to go about it would be to simply buy an old unloved commercial battery charger that has seen better days.
Pull it to bits, clean it up, and do a restoration job.

Fork lift batteries are very expensive new, and the battery supplier very often INSISTS that a new battery charger be bought along with the new battery, or else the battery warranty will be void. So the original battery charger in full working order, often gets sold for scrap value.
I may be totally on the wrong track here about what you are trying to do....
 
All that has been discussed so far, are some ideas and concepts about a control system for producing pwm for operating a suitable buck converter.
The actual buck converter needs to be designed to suit the required input and output voltages, and carry the required amount of current reliably.

I am assuming that the 50 volt 200 amp dc supply you would like to build is powered from the grid ?
If that is the case, a buck converter is probably not the simplest way to go about it.
This type of application is not uncommon, its used in large industrial battery chargers for things like fork lifts.
The least painful way to go about it would be to simply buy an old unloved commercial battery charger that has seen better days.
Pull it to bits, clean it up, and do a restoration job.

Fork lift batteries are very expensive new, and the battery supplier very often INSISTS that a new battery charger be bought along with the new battery, or else the battery warranty will be void. So the original battery charger in full working order, often gets sold for scrap value.
I may be totally on the wrong track here about what you are trying to do....
I am buying some of the new Midnite Barcelona 200 amp chargers for a job. I was mostly just curious about what it would take for such a buck converter. I like to build inverters, so I thought I might have a go at a large DIY charge controller.
 
If I had a solar system capable of 200 amps, I would not be using just a single 200 amp solar controller.
It would be much more practical to use multiple lower powered controllers.
They are much easier to design and build, and offer some very useful redundancy.

If the requirement is for a single 200 amp solar controller, then it would probably still have multiple buck converters within the same box operating in parallel.
These wold commonly be run slightly out of phase for ripple cancellation at both the input and the output, and multiple mosfets would spread the heat more evenly too. Even much lower power controllers commonly do this.
Look inside a Make Sky Blue solar controller, there is not just one huge toroid, but usually two or three smaller toroids, because they use more than one buck converter.

So the way to go about this would be to design and test a suitable buck converter of a "convenient" size, then bulk up with several that are run together in parallel to reach the required power level.
 

If I had a solar system capable of 200 amps, I would not be using just a single 200 amp solar controller.
It would be much more practical to use multiple lower powered controllers.
They are much easier to design and build, and offer some very useful redundancy.

Redundancy is good ! The Barcelona is actually TWO (2) 100 amp controllers with a single output and 2 separate PV inputs.

The Hawkes Bay is basically half of a Barcelona with 100 amp output.

boB
 
I am totally ignorant about commercial equipment, or what a particular make and model can do.
I have never heard of a Barcelona ?

I design and build all my own stuff at home, and it usually ends up being pretty unique, if not downright odd.
I have my own very unique inverter design (the Warpverter) that is being successfuly copied all around the world.
I also now have a very unusual transformer coupled cell balancer that has some real balls.
And now, my simple (non software) constant voltage solar controller that is also looking very encouraging.
I also have some rather radical ideas about a wind power charge contoller, but will never pursue that myself, as I live in the suburbs where there is no wind and my snobby neighbors would definitely not be amused.

Not the least bit interested in commercializing any of this, its all free open source for anyone that is interested in following in my footsteps.
 
I am totally ignorant about commercial equipment, or what a particular make and model can do.
I have never heard of a Barcelona ?

I design and build all my own stuff at home, and it usually ends up being pretty unique, if not downright odd.
I have my own very unique inverter design (the Warpverter) that is being successfuly copied all around the world.
I also now have a very unusual transformer coupled cell balancer that has some real balls.
And now, my simple (non software) constant voltage solar controller that is also looking very encouraging.
I also have some rather radical ideas about a wind power charge contoller, but will never pursue that myself, as I live in the suburbs where there is no wind and my snobby neighbors would definitely not be amused.

Not the least bit interested in commercializing any of this, its all free open source for anyone that is interested in following in my footsteps.

Yes, I am semi-familiar with your Warpverter. A true BEAST of an inverter ! The Backshed, Other Power (Fieldlines), etc.

Did you ever add synchronization so that you could charge from the grid ? Wouldn't be too difficult. Just takes time, if you have it.

As for wind control, I have done wind MPPT as well. Not as simple as running at a percentage of Voc but not too hard to implement lookup tables.

The problem with wind control is that unless do a lot of trial and error adjusting turbine input voltage vs. output power as a function of wind speed, it won't be perfect. The ideal method would be to use a wind tunnel but those are hard to come by, cheaply. But empirical measurement and adjustment can sort of work apart from making a good guesstimate.

When I was playing with wind tracking, it was with a little 200 watt Chinook that the neighbors luckily loved to hear and see it run ! However, that really only worked for like 1 or 2 months in my neighborhood before there was no wind anymore until the next year. The neighbors actually missed it when I took it down !

Sure was fun to play with though.
boB
 
Inverter sync has never been considered for the Warpverter, in fact, this is the very first time its ever even been suggested.
Anything is possible, but the main philosophy behind the whole Warpverter project was to keep everything as simple and reliable as possible.

If you are familiar with the Warpverter, you may probably already know, it does not use any voltage feedback to correct the output voltage !

What it does, is measure the incoming dc input voltage, and correct for any voltage changes there, and drive the output transformers with a constantly corrected drive waveform on the primaries of the output transformers. There will then only be a very slight voltage drop under load due to the regulation of the transformers themselves, which is generally for most people small enough to ignore.

If better voltage regulation is required, the dc input current to the inverter can also be measured with a Hall current sensor, to add a further small correction. In fact this can be tweaked to have a rising output voltage under load, if you wished to do that for some reason.

No feedback is required, this is entirely FEED FORWARD correction. This is probably an entirely new concept for some of you.
As far as I know, no other inverter design does voltage regulation this way.

The advantages of using feed forward, are that it is very fast acting, and can never become unstable. A further advantage is its much easier to measure dc voltage and dc current very quickly and very accurately. Its much more difficult to measure ac, as its constantly changing over the full sine wave.
It must first be rectified and then smoothed, which is always s l o w .

So the Warpverter (without using feedback) has rock solid voltage regulation, and very good light flicker performance with massive step load changes.

Anyhow, the point of mentioning all this, is to introduce feed forward as a very effective technique to control the output of "something", without needing to use the output error for correction purposes. That can sometimes really complicate things where there are significant time delays in the whole feedback loop.

Now turning to wind controllers, I believe feed forward may arguably the simplest and most effective answer to control the electrical loading on a wind turbine.

There are a huge number of variables in the design of the blades and alternator, plus inertia, and rapidly gusting wind. The time element comes into it as well. Any change in electrical loading may take several seconds for the whole complex high inertia system to stabilize.
In really gusty conditions it may not even be possible to reach a stable equilibrium condition.
A feedback system can also easily become unstable and produce surging, unless the response is slowed right down.
Many people have tried and failed miserably at this, as we all know.
It sure ain't easy !

Anyhow, what I believe may be the solution to this unholy mess, is a very simple feed forward system.
The concept is simple.
Use a fast responding anemometer to measure instantaneous wind speed.
Use the indicated wind speed to directly and instantly adjust electrical loading on the machine.

All we need to know is the relationship between wind speed and electrical loading, which will be a fairly dramatic curve.
By testing and tweaking we can establish a percentage pwm duty cycle for each and every wind speed within the whole operating envelope of our wind machine.

If we receive a very sudden gust, or lull, electrical loading is INSTANTLY adjusted up or down appropriately, before turbine rpm actually changes. With feedback, the output must change before any corrections are even possible, and by then its much too late. It will be all over the place and essentially uncontrollable in gusty conditions.

So we need some kind of lookup table we can adjust to match the instantaneously measured wind speed to the appropriate electrical loading on the machine. This could be as simple as a row of potentiometers, or as complex as a suitable lookup table in RAM memory, with even perhaps a slow careful self learning algorithm.

The potentiometer idea is pretty simple, each pot represents a certain zone of wind speed, say for example 3 metres/sec to 4 metres/sec, and it adjusts the pwm duty cycle and machine loading whenever the wind is within that range.
Outside that range a different potentiometer comes into play.
A LED indicator next to each pot shows which one is active, so you know which one to tweak to set up the machine within that range of wind speed.
At higher wind speeds it can bring in dump loads or braking, or furling, or whatever it needs.
So the system can be tuned to its optimum operating point over the whole range of wind speeds, in as fine increments as you require.

That is how I see solving the wind machine problem.

Nobody else uses feed forward to voltage regulate an inverter, but its proven to work by many Warpverter builders around the world..
And as far as I know, nobody has ever used feed forward in a wind turbine control system.

Any volunteers out there ?
 
Feed forward can work great. I have been a fan of FF for several 10s of years now and try to use it often, or at least a combination of FF and FB.

Good luck with using the anemometer for controlling the wind converter. The only issue that I can see with that is that the anemometer is not occupying the same spot as the wind turbine and so it will not be as close to the actual wind speed as it could be BUT probably close enough.
I would also worry that the anemometer might be affected by the turbine or its tail. Placing it in front of and to the side of the turbine probably helps that issue. I've never actually tried that method before. It's too easy to just use the turbine itself as its own anemometer IMHO.

Feed-back, in the normal sense won't work for either wind OR solar tracking as you are aware. To put it plainly for others, what we would call the wind tracking curve must be known or entered ahead of time. One thing I would like to play with at some point and have had thoughts about are algorithms for learning the wind curve. That has been done before but these days might be able to take advantage of some more recent methods.
That would have to be done when I have nothing else to do which may never happen !

I have maybe 20 years left on this rotating orb, or less, if Putin or terrorists have something to say about it.

boB
 
Last edited:
Warpspeed... Now I am really curious on how your Warpverter responds to a load being applied and/or removed to the output voltage in the transient sense. Say you have a light bulb running and you apply (or remove) a 1kW resistive load... What does the output waveform look like just before and after that load step ? How long does it take to come back up or down to regulation set point ? Do you have any videos of this ?
Just really curious on how well a feed-forward only design can work. I know you worked and tweaked on it for a while to get it tuned.

I MAY have seen this a long time ago on another forum (or not) but may not have been paying attention.

boB
 
The incoming dc is measured with a dual slope integrating analog to digital converter, so any hash or high frequency noise on the dc gets integrated out during the measurement period, without any additional input filtering that would slow things down.
The A/D conversion process is synchronized to the inverter, so any significant ripple voltage at the battery produced by the inverter is averaged out as well. But it still responds very quickly to a genuine step change in the dc input voltage.

Its actually a twelve bit A/D converter, but only the nine most significant bits are actually used. We also get a nice clean dc voltage reading every second mains cycle without having the least significant bit ambiguity problem.
That selects one out of 256 available lookup tables, updated 25 times each second.

The output amplitude of the inverter depends on the particular lookup table being used, which generates the appropriate inverter gate drive waveforms, and we can jump from one lookup table to any other lookup table right at the exact zero crossing.
This is able to produce very large sudden amplitude corrections, without any visible waveform distortion or discontinuity.

A step load change will be completely corrected in 40mS or less.
As the output voltage regulation is pretty good anyway, about 1 volt per kilowatt load change, in my 5Kw inverter.

What you would see with your step load change of 1Kw, would be the 230v changing by one volt, plus whatever percentage the incoming voltage changed. Then completely corrected back to the one volt static regulation limit imposed by the output transformers regulation, within two mains cycles.

The 240 different lookup tables cover a dc input voltage range of 2:1 and provide roughly 0.5v output amplitude changes per lookup table.

The 230v output stays typically within about +/- half a volt at any continuous load, and drops by 1v per kW over the whole 2:1 input voltage range.

It runs perfectly well running direct from just the solar panels, without any battery to stabilise the voltage.
Provided that there is sufficient solar available to do that of course.
 
Last edited:
This thread has been a very thought provoking read, thank you.

On the original topic, I built one of these earlier this year: https://www.instructables.com/DIY-1kW-MPPT-Solar-Charge-Controller/
It worked quite well, I haven't put it through serious stress testing but the concepts are all sound, and the hardware works as described.

There's a bit of work in building it, but pretty good bang for your buck if you're like me and value your time at $0 per hour. :LOL:
 
Its something that has very slowly developed and improved over many years. It did not all happen all at once !

The first prototypes all used microcontrollers of various types, but later versions went to a much simplified all hardware design.
The only way to get enough speed is from direct lookup tables in ROM.
Once you do that, the microcontroller really becomes redundant.
All it requires is an address counter to scan through each 1K lookup table at a 50/60Hz repetition rate, and an A/D converter to select the lookup table according to the incoming dc voltage.
Its as simple as that.

There are at least two other Warpverter driver board designs out there that use Nano microcontrollers, I have one of them here, that I sometimes run, and the performance is indistinguishable from my own hardware driver board. Many ways to do this, but the basic concept is proven.

A further refinement (which is probably unnecessary) is to use a Hall sensor to monitor incoming dc current.
This runs off +5v and produces a nominal +2.5v at zero current.
Increased inverter loading causes the +2.5v from the Hall sensor to increase in proportion.
A very small proportion of that increase can be added to the voltage reference input to the A/D converter through an adjustment potentiometer.

The result is that increasing inverter load, increases the reference voltage of the A/D slightly, causing the A/D to read slightly less.
That can increase the inverter ac output voltage with increasing load. Its possible to tweak it so the ac output voltage remains constant with increasing load, or can even be set to rise slightly with increasing load. Its completely stable too.

That might be a handy feature, if there is a very long feeder cable between the inverter and house. It would overcompensate at the inverter to correct for voltage drop in the long cable.
I have built and tested a prototype Hall system, but did not think the improvement justified laying out a new circuit board.

At least one other person has Built a Warpverter with a Hall sensor, and he is very happy with it.
 
Back
Top