Go to Otherpower.com Home Page Go to Forcefield Shopping Cart Go to Wondermagnet.com Home Page
Front Page - [Homebrewed Electricity-- (wind) (solar) (hydro) (steam) (controls) (storage) (mechanical)] - Classifieds - Site News
Everything - Newbies - [Remote Living-- (housing) (heat) (light) (water)] - Rants & Opinion - Diaries - Our Products
Small scale solar MPPT wins 21


By elt, Section Controls
Posted on Tue Aug 26th, 2008 at 10:38:41 PM MST
Boosting 12 panel to 24 volts

I did some testing with the 36 cell, 12 volt panel I made and it wasn't as good as I hoped; I expected around 20 watts but it suffers heat fade badly ... without any load it quickly drops from 20 volts open circuit to about 15 volts. :(



Connected to a fully charged 12v 200 AH battery bank it does make float volts producing .51 amps at 13.4 volts ... 6.834 watts

I connected the panel to the MPPT booster I made and a 24 volt 200 AH battery bank:


I used a serial LCD for debug and testing. The LCD isn't need to run the booster and the power usage given for the booster (.015mA@ 7 volts) is without the LCD.

In use, controller draws .78 amps at 12.16 volts = 9.485 watts out of the solar panel. At that time the battery bank was at 25.4 volts and taking in .33 amps = 8.382 watts. 8.382/9.485 = 88.4% efficiency. In this case, the open circuit voltage is 15.1 volts and the controller is programed to load the panel to 80% of the open circuit voltage.

The little micro running the booster is power hungry and consumes 90 milliwatts to the net power produced is 8.292 watts.

Compared to the 6.834 watts going into the 12 volt bank, boosting it and getting 8.292 watts into the 24 volts bank represents a 8.292/6.834 = 21.3% gain in power.

Whoopee!

I was surprised to see that over time the battery volts raised to 26.8 volts, I thought more power would be needed to reach float volts.

Anyway, it's just a basic booster circuit (cause I don't know how to do better!) The logic FET is driven by one of the processors PWM pins at 72KHz. It adjusts the duty cycle to load down the panel to about 80% of the open circuit voltage. Every two seconds it unloads the panel for 15 ms and checks the open circuit voltage again.



Hmm... maybe using a Schottky instead of that SB540 would get a little better efficiency.

- Ed.

Small scale solar MPPT wins 21% | 47 comments (47 topical, 0 editorial)

Re: Small scale solar MPPT wins 21% (3.00 / 0) (#1)
by commanda (alwynne at unwired dot com dot au) on Tue Aug 26th, 2008 at 05:07:13 PM MST
(User Info)

The logic FET is driven by one of the processors PWM pins at 72MHz.

I trust that is a typo?

If the current going into the battery was an analog input to the micro, you could dither the pwm, see which gives the greater current, then move the average pwm in that direction.

Amanda



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#2)
by elt on Tue Aug 26th, 2008 at 06:15:42 PM MST
(User Info)

Hi Amanda,

That sure is a typo! But it's only off by thirty ... db.

The micro switches the FET at 72KHz (k_i_l_o_h_e_r_t_z), thanks for pointing that out.

... but the whole idea is to not sample the output current. Turns out that a plot of maximum I*V at different levels of Sun is practically a straight line, at the point where the loaded voltage is somewhere between 70 and 80 percent of the open circuit voltage. Where I could find specs, it looks like the single datum given by panel makers is about 70%. So (as usual) I allow the parameters to be set, changed and stored in EEPROM.

I got the idea from a wikpedia image. Maybe it only implements "pretty good" power point tracking, but with the simplicity I'm hoping that's good enough.

What I'm really jazzed about, though, it the thought of taking the idea to a buck converter. I thinking that a low power converter could handle something like the three panel $200 USD Harbor Freight panels in series (nominally 36 volts) and do MPP feeding to either a 12 or 24 volt system and, while it's at it, doing the charge control as well.

 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#3)
by TomW on Tue Aug 26th, 2008 at 06:26:05 PM MST
(User Info)

Ed;

Fixed the MHZ typo to be KHZ. Just so it was in there correctly for anyone researching and not reading the replies.

Tom

"Education consists mainly of what we have unlearned."--Mark Twain
[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#17)
by commanda (alwynne at unwired dot com dot au) on Fri Aug 29th, 2008 at 08:27:41 AM MST
(User Info)

Ed,

What I was getting at with current monitoring, is then you can use the same circuit for your windmill. Unloading the mill really won't work.

I typically use commercial 1 milliohm shunts with an op-amp amplifier. This cct without the analog meter. Scale the gain to suit adc input on micro.
http://www.fieldlines.com/story/2004/9/4/193922/2839

Amanda

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#19)
by elt on Fri Aug 29th, 2008 at 10:43:49 PM MST
(User Info)

Hi Amanda,

Yes, I'm learning that you need the full-boat to control wind. I used a hall effect sensor in my first booster, then used the battery cable as the shunt in the second. The first approach seemed more reliable than the second, at least as far as my abilities could take it. This booster is pretty much a cut and paste from the advice I got building those two, though the "control section" is different in all three.

So far, I haven't used a commercial shunt but one thing that I like from looking at them is the real terminals for attaching real cables. Yes, the Allegro current sensors have really big fat pins but that sticks me with having to implement the part between the cables and the pins and I just don't have that much experience with more than digital power levels. Seeing an experienced engineer like you using a commercial shunt is very persuasive.

For wind, I'm hopeful that the sensing the FET voltage idea suggested elsewhere in this thread works. I'll build a testbed to see if I like it; if not I'll dig out the $10 and get a shunt like yours.

Thanks again,
 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#20)
by s4w2099 (movlw0x13h@yahoo.com) on Sun Aug 31st, 2008 at 07:54:31 PM MST
(User Info) http://www.s4wsbox.com/

Just a comment about C3 and C2. I dont want to start a flame war about this but I would not remove those capacitors from the circuit and this is why.


Removing those will enable track and wire inductance to act as an open circuit for very small time. Hard to explain but here it goes.


Current in an inductor increases with time. At t=0, when mosfet switches off (t=time) the inductor will be an open circuit. This would be very bad for your mosfet as the voltage spike created by the boost converter will have no place to go, thus nothing to clamp that voltage down. That situation might enable that voltage to exceed your mosfet's Vgs.


Another thing is that with such a fast dV/dt (rate of change of voltage) the parasitic capacitor between the drain and the mosfet gate will create a voltage in the gate. This is very very bad as this voltage will turn on the mosfet when it should not be on.


If you make the path from your mosfet drain-diode-C3 very very short you will be running on the safe side as this huge spike's energy will just be stored in C3. C3 will not let the voltage spike so high then.


It is extremely important for the survival of the booster that the output inductance it sees is minimal, and that is achieved by shortening tracks and adding capacitance.


I am not great at explaining things but I hope you get the idea.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#4)
by tecker on Tue Aug 26th, 2008 at 10:35:01 PM MST
(User Info)

  I don't understand the blue glazing . The circuit is interesting C3 can go away it's just there to keep the ripple shunted . batteries like ripple just fine As a matter of fact the caps won't react at all across a battery . looks like your wasting power at Qi   Sb540 is a 5A schottky . Looks like fun

 



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#5)
by elt on Wed Aug 27th, 2008 at 08:24:01 AM MST
(User Info)

In hindsight, it was probably a mistake - I thought that painting the inside of the box blue would make it look more like a "real" panel at a distance. Now I think that it adds to the heating and voltage loss. At any rate, the glazing is clear Lexan.

> [...] C3 can go away

C3 is a .22 uF polypropylene cap; IIRC, it was suggested that I put one in a different design to protect the FET from switching spikes and I just copied it into this one. That cap is big and expensive, I'd be happy to put it back in the cap pile if you think it's not needed here.

Thank you,
 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#6)
by tecker on Wed Aug 27th, 2008 at 09:41:21 AM MST
(User Info)

There's no spikes the battery doesn't obsorb here and no doubt the caps is retaining battery voltage . Keep working on it

[ Parent ]


Re: Small scale solar MPPT wins 21% (3.00 / 0) (#7)
by scottsAI (user name at eml dot cc) on Thu Aug 28th, 2008 at 01:33:33 AM MST
(User Info)

Hello elt,

Good job.

Back ground of panel should be white or silver to reflect light between cells. Reduces heating.
Cooling panel is an option, many ways to do this. Some are even practical.
Large panel active cooling system can be worth doing. Stay above dew point.

MPPT
Max power as you state is I*V, important to know which V and I are used.
The V is the load (or battery in this case) once translated by the inductor.
The battery V is fixed (more or less between samples).
Thus maximizing current will maximize Power! Keep it simple.

Rshunt introduces an undesirable power loss... why else not use it?
There are other ways, interesting is a current sense MosFet. About 0.5% loss.
Current sense MosFets are not know for being accurate, here accuracy is not needed.
Hall sensors are another, maybe the best.

Let me know if your interested.

Have fun,
Scott.




Re: Small scale solar MPPT wins 21% (3.00 / 0) (#8)
by oztules (oztules__at__bigpond.com) on Thu Aug 28th, 2008 at 03:47:08 AM MST
(User Info) http://www.anotherpower.com/gallery/Oztules-toys

Would it be useful to sample the voltage drop over the switching fet when on to gain the current info (opposite to the sampling the voltage open circuit of mthe panel, sample the voltage drop over the fet when it shorts the inductor). As it is a necessary resistance, you might as well use it.

.......oztules
Flinders Island Australia
[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#9)
by DamonHD (d@hd.org) on Thu Aug 28th, 2008 at 06:10:28 AM MST
(User Info) http://www.earth.org.uk/

I'd have thought that it could be a very strange and difficult-to-gauge sort of 'resistance', with possible negative/transconductance/tunnel/bizarre elements to it, at least potentially.  But I've never tried, so I don't know.

Nonetheless, it could possibly be calibrated once with known currents (and gate voltage, etc) and simply looked up in a table thereafter (with interpolation).

Rgds

Damon

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#10)
by oztules (oztules__at__bigpond.com) on Thu Aug 28th, 2008 at 06:30:24 AM MST
(User Info) http://www.anotherpower.com/gallery/Oztules-toys

I have used this technique for current monitoring for DC motor speed control. (analog though) I sync it so that I measure the voltage drop during on periods..... seems to work ok for over current monitoring.

You may be right for sensitive realtime things.... although worth a thought.

.........oztules
Flinders Island Australia
[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#14)
by scottsAI (user name at eml dot cc) on Thu Aug 28th, 2008 at 12:12:40 PM MST
(User Info)

Oztules, DamonHD,

Yes, this is possible. Might be more difficult than your expecting.

Remember this MPPT is boosting the panels output voltage, more commonly MPPT reduce voltage to match the battery.

The current in the Fet is ever changing with the inductor:
http://www.ngsir.netfirms.com/englishhtm/RL.htm

The current peak will be controlled by how long the Fet is on.
So as the on time is varied the current will vary.
Fets resistance changes over temperature... effect should be slow enough to not be a problem.
Fets on time is short 72khz, will require a sample and hold to capture reading.
Goal is to hit the Power Nee, current can peak higher than desired. Making control more difficult.

More may be required, my first look at doing it this way.
Over all an interesting possibility. Will have to think about it some more.

Have fun,
Scott.


[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#12)
by elt on Thu Aug 28th, 2008 at 11:27:23 AM MST
(User Info)

Hi Scott,

Regarding my panel, I should be able to slip some silver mylar between the gaps in the rows to cut down on the heating. I have some left over so I will give that a try.

I didn't really care about current sensing in this build; the idea was to test the simple solar cell model: V(maximum power from the cell) = V(open circuit) * 80% or perhaps some slightly different tunable ratio. So far, this looks very promising.

Hi Scott, oztules, Damon,

Current sensing MosFets???

!!!

I am very interested in trying this idea. Not sure about measuring the voltage drop across a regular FET though, other than thinking that's what I'm already doing to measure the panel voltage. I haven't tried syncing the PWM and ADC to see what's happening at the microsecond level but I could do that if you guys think it would tell me something...

I did google current sense MosFets and got hits from NXP and IRF but I haven't found where to get less than 400x quantities.

What I'm really thinking is that a current sense mosfet would be very nice for my windmill MPPT because I am having sensing issues there and doing the equivalent to the solar technique of unloading the mill every now and then doesn't sound like a good path (though I think I've read of one commercial controller that does exactly that.)

So, where can I get one of them current sensing mosfets?

Thank you very much,

 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#15)
by DamonHD (d@hd.org) on Thu Aug 28th, 2008 at 01:40:16 PM MST
(User Info) http://www.earth.org.uk/

I think we're both just talking about measuring the voltage across the (switched-on) FET, and knowing what current that that implies, either by knowing the on-resistance of the FET for your gate voltage OR by having seen X voltage across the FET when Y amps is flowing for enough values of X and Y to make a little lookup table.

No magic 'current-sensing' FET.

Rgds

Damon

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#18)
by elt on Fri Aug 29th, 2008 at 09:14:20 PM MST
(User Info)

Hi Damon,

I've some studying today and here's where I'm at:

I don't see how a single measurement would be enough to do MPPT but I think that I can sync the ADC with the PWM and digitize the charge/discharge curve of the coil. If I did the math right then that sum of squares of the voltages measured at any point is proportional to the power in the coil (because the voltage was measure over the sampling time) and that the part of the curve where the voltage is greater than the battery volts plus V(f) of the diode identifies the power that goes to the battery side..

I think that the right hand side of the pic on http://www.4qdtec.com/mircl.html
shows what happens inside a magic current sensing FET in a discrete component kind of way... other than perhaps being a better impedance match for the ADC, I don't see the advantage over a simple voltage divider. (So I suppose that I need to keep reading!)

Anyway, from what little I've able dig into it, it seems complicated but doable...

Thanks to all,
 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#24)
by scottsAI (user name at eml dot cc) on Mon Sep 8th, 2008 at 02:01:26 PM MST
(User Info)

Elt,
Had a chance to think about this some more.
Not sure where your at. (on to something else?)

The load is a fixed voltage (battery), thus controlling the FET to maximize current will be maximizing Power. The inductor is an energy transferring device, by measuring current in it represents overall energy stored cycle by cycle on a PWM system. The solar panel has a fixed power out it can deliver, if the output load is exceeded the current can continue to go up a bit, over all power delivered will drop due to panels output voltage dropping. When charging an inductor as an energy device if the panel is over loaded the overall energy delivered into the inductor will decrease, measuring the current will tell you if it was more or less than the last time!

The power converter has a low side switch, current sensing FET is not needed. Like DamonHD said measure the voltage across the FET at the end of the PWM on time for peak current. By adjusting the on time for max current will be the max power point.

Simulation may be a place to start.
Found IV and PV spice model of solar cell:
http://chuck-wright.com/apppv/pv_spice.html

Simulation of the boost converter is possible without building anything!
Watch how the energy changes based on the power out with different on times.
Let me know how its going.

Have fun,
Scott.


[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#25)
by elt on Tue Sep 9th, 2008 at 09:34:28 AM MST
(User Info)

Hi Scott,

Actually, this is perfect timing as I was just about to etch a circuit as a testbed to see what I can see using this technique.

I have to admit that try to learning Spice exceeded my educational time budget and I've given up on it for now. I am still using the same toy simulator package that I've had for a while.

> Like DamonHD said measure the voltage across the FET at the end of the PWM on time for peak current.

I'm still not seeing it. I may not be simulating it properly, but it looks to me that a higher duty cycle always means a higher initial voltage at the point the FET is turned off ...which is just what I'd expect from a boost circuit. But I notice that you've written to adjust the "on-time", not the duty cycle. Are you suggesting a fixed off-time? I think that off-time is variable too. It looks to me that off-time should end as soon as the coil voltage drops below battery voltage and that is easily determined.

I see varying amounts of the decay curve in the simulator but without integrating the entire curve, I'm thinking that averaging the voltages at the start of the FET off-time with the voltage at the end of the off time may be a fair approximation

If I didn't wander off track, then I think that the eval function would be (Vwhenthefetisturnedoff + Vbatt)/2 * Tfetoff ... times (1-dutycycle) since power is only transferred during the off time. So I guess there's a question; is that correct? Overly complicated?

If that idea survives the walk through, here's a plan

  1. Set Ton
  2. use the ADC to measure coil voltage just after when the FET is turned off
  3. use the analog comparator to determine Toff
  4. evaluate and direct change in Ton
What do you think of that?

Well, not having an oscilloscope doesn't help so I'm putting together a little board with a serial port so that it can run an experiment and then dump the results to a PC. What protection would you recommend putting on the ADC input other than perhaps diodes to the rails?

Thank you very much,
 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#26)
by scottsAI (user name at eml dot cc) on Wed Sep 10th, 2008 at 12:46:54 AM MST
(User Info)

OK elt,

Darn was hoping you would run the simulations and show how it worked!.

Seriously:
Basic, inductors store energy = power * time.
P = iv = Li * di/dt current looks like the only factor. Not true.
http://hyperphysics.phy-astr.gsu.edu/Hbase/electric/indeng.html

Inductance is Henry = volt second/amp
http://hyperphysics.phy-astr.gsu.edu/Hbase/electric/induct.html#c1

Take a look at Faraday's Law:
http://hyperphysics.phy-astr.gsu.edu/Hbase/electric/farlaw.html#c1

Key is the Volt sec, need voltage across the inductor to increase the energy stored.

Going back to the spice model link:
http://chuck-wright.com/apppv/pv_spice.html

Look at the Power into a load plotted on panels output. (page or two down on the web page)
Goal is to Match load to panel to maximize power transferred.

Back to the boost converter and FET voltage. Must determine on the fly the proper loading.

FET voltage while on is NOT panels voltage. FET is a resistive on/off switch.
The voltage developed across the FET when on is V = IR based on the current flowing through the FET.

Inductor connected across a voltage source:
http://hyperphysics.phy-astr.gsu.edu/Hbase/electric/indtra.html#c1
Notice how the current keeps going up until DC conditions are met. Little energy in the inductor at the end point, even with the largest current!

Back to solar panel, all that above to get to this point:

As the on time increased the current will increase to a point.
Once the energy absorbed by the inductor exceeds panels maximum power the current will stop rising and even decrease. Think of it as the transient conditions i = V/R, and the V has come crashing down! Thus by monitoring the FETs cycle by cycle voltage, you can determine the max power point. The FETs on time should be varied about this point to continuously determine if max power point has moved. Adjust to the edge of time for max current. If kept on for couple micro sec longer with same current then back off. (shorten on time).

A FETs resistance changes with temperature, so not considered a good Rshunt. Here looking for a relative maximum, absolute value is Not important. FET shunt should work fine.

Just to be clear measuring the FET voltage while the FET is ON and just before its turned OFF.
72Khz PWM rate snap shot at end of time is faster than most Micro ADC can handle. High speed sample and hold will be necessary. Protection from voltage generated while FET is off is needed.

Assumptions. PWM is generally done at a fixed frequency. Varying the on time, off time completes the fixed cycle time.
Yes, Off time can be fixed with varying on time and many other combinations.
Most inductors have a range of power they can handle, about 10x as a rule (not a steed fast rule).

Have fun,
Scott.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#27)
by elt on Thu Sep 11th, 2008 at 09:33:55 AM MST
(User Info)

Hi Scott,

Detecting the solar MPP on a cycle by cycle basis sounds like an interesting idea. If I understood, this sounds like a simple two state circuit. I quote "simple" because it sounds simple conceptually but I really have no idea how it would be implemented:

  1. With fet is turned off, sample and hold the voltage across the FET (which will be Vopencircuit.)
  2. Turn on the FET to charge the coil
  3. When voltage drops to .6 times Voc (".6" is discussed below) turn off the FET to discharge the coil.
  4. When the voltage drops below Vbatteryplusdiodedrop, sample and hold. (This is the new Voc). Go to step 2.
The factor ".6" might not be correct. The idea is to average .8 time Voc since that is as close enough to Vmaximumpowerpoint as to not matter to try to get better.

I believe that this approach not only adjusts the duty cycle to achieve the MPP boost but will also increase the PWM frequency at lower power levels (which I've taken to see as a good thing.)

How's that sound?

- Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#28)
by scottsAI (user name at eml dot cc) on Sat Sep 13th, 2008 at 05:11:02 PM MST
(User Info)

Working on a reply,
Decided I could use this, so designing it.
Maybe by tomorrow I will be done.

Have fun,
Scott.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#29)
by elt on Sun Sep 14th, 2008 at 10:51:41 AM MST
(User Info)

Can't wait to see it!

 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#30)
by scottsAI (user name at eml dot cc) on Mon Sep 15th, 2008 at 06:02:05 PM MST
(User Info)

Well another day. Two problems came along Sunday.
First, lost power for 20 hours did not get to finish it last night as expected.
My backup power covers lighting and Water... no computer or Internet.

Design problems, Inductor has min and peak current, battery will see average current. Panel will deliver average current so inductor does not get "charged" up to peak current. By adding Cap on input fixes this. Problem inductor can 'take' more current for a while than the panel can deliver, making the software more complex. For a while did not think it had a solution. Figured it out... I think!-)

Hold on for another day or two OK?

Have fun,
Scott.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#31)
by elt on Tue Sep 16th, 2008 at 05:51:32 PM MST
(User Info)

I'm glad to hear that you had some backup power and that everything is okay. We were lucky this time, just a few small branches and leaves.

But software? I thought you could do one this with an op-amp and couple of caps ... :-)

- Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#32)
by scottsAI (user name at eml dot cc) on Tue Sep 16th, 2008 at 11:41:00 PM MST
(User Info)

Elt,

It will work. Monitoring only MosFET current.
Intelligence is required to control for MPPT.
Using your above circuit connected to a Microprocessor.

Current monitoring
Analog switch to capture peak current in FET.
Don't forget must Handle Boosted voltage!

Input capacitor to Inductor is required to supply peak current.
Size the cap to limit voltage change to 30mv or less.
C = i * delta(t)/delta(v)
Delta(t) is PWM on time, delta(v) is the allowed voltage change.
Battery side cap should be as large. On booster circuit board to limit EMI.
Please note large cap's have leakage currents losses, don't make larger than needed.

ADC input
Signal from MosFET is small, amplify it some.
Target half ADC range for normal operations. 10 bits may be needed.

How to make it work?
You have the math down for the boost converter. So not covered here.
ADC must sample at the LC time constant or slower. Input Cap.

Set Ton time, watch current, going up, same, decreasing.
Create a decision tree based on power curve and the Panels effects by being over loaded or under loaded. Code not looking too bad.

Due to input Cap, the inductor can draw extra current for a few cycles, that is why sample current at LC time constant rate, giving it time to respond to the new conditions.

If Ton is too long, the current will not keep going up.
The driving force into the inductor is the voltage across it. See my above long posting.
When the panel is over loaded the output voltage will drop, with same Ton will end with less current!
Vary Ton to find Max current point. Constantly vary Ton to see if Max point has changed.

I sent this figuring you may want to get yours going while I work on mine!

Have fun,
Scott.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#33)
by elt on Wed Sep 17th, 2008 at 08:34:49 PM MST
(User Info)

Hi Scott,

Let me test my understanding...

C = 5 amps * .000008 seconds / .030 volts
C = 1,333 uF

Since caps loose their uf over time, probably want larger value?

> Current monitoring - Analog switch to capture peak current in FET.

I'm not sure how an analog switch would do that but since R (isn't "R" = Rdson?) is fixed, isn't peak current at the same time as peak voltage... which would be just as the inductor is turned on? Then why not sample that with the micro's ADC?

> ADC must sample at the LC time constant or slower. Input Cap.

I google nil on LC time constant. Is that perhaps RC with R being the R of the coil or maybe LR with R being the R of the FET or do I need to keep looking for "LC"?

I'm guessing RC ... I'm using a JW Miller 2312-V-RC with a DCR of .037 ohms times .001333 farad = 49 uS. That's 20KHz or slower so that's okay.

Okay. I still think that peak current(FET voltage) will vary strictly with duty cycle but, if I understand, cap voltage will drop as the panel is loaded so cap volts times FET volts will vary as the power does and I can use that to direct towards MPP.

Well, I did go off track?

BTW, the reason that I keep hanging on to using the micro's ADC on the FET is that the timing of the sample and hold is very well defined and even though it has to be started before the PWM pulse, it can be scheduled to an accuracy of a single clock cycle. Also, while the aperture on the sample and hold is many clock cycles, the cap itself is only 14 pf (if I read the data sheet correctly) and I think (read "guess") that that will respond in sub-microsecond timing.

What do you think?

Thanks again!
- Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#34)
by scottsAI (user name at eml dot cc) on Thu Sep 18th, 2008 at 12:57:13 AM MST
(User Info)

Hi elt,

I had made an error in my cap size, so suggested 0.03v thinking it would only be 10uf.

The current should be the panels current.
Your test example above is few watts?
Was the 5 amps the peak inductor current? Or do you have 85w panel just waiting to be used?

I would not use a cap that big.
The voltage change can be larger than 0.03v, lets try it again with 0.1v to get a more reasonably sized cap. Like 400uf, much better. For over temp and life 470uf works. Assuming 5a and 8us.
The cap only needs to supply the current when it exceeds the panels capability, which it must so the average current in the inductor is equal to the panels peak power point current:-)
Realized inductors current is above the panels for less than half the time, the cap can be sized to half the above calculated. 250uf.

The ADC must be protected from the Battery voltage across the FET after it turns OFF.
The FET's voltage should be captured just BEFORE it turns OFF. When Inductors current will be at its peak. If you can protect the ADC input and measure it at the right time then great! Do what ever works. Input voltage to ADC must NOT exceed its supply voltage.

LC time constant = square root (LC)
After making a change to the on time (Ton) wait LC time constant before making a decision.
The capacitor will supply extra current for a few cycles before the system stabilizes to the new condition. Looking too soon can miss lead you into thinking you can transfer more power than is available. Nothing wrong with waiting even longer, just don't want seconds to go by.

"Okay. I still think that peak current(FET voltage) will vary strictly with duty cycle"
Go back and look at the panels output voltage vs current.
Starting out the panels output is limited by the output voltage.
As the load current increases the output voltage droops a little but is more or less constant.
As the load exceeds the POWER capacity of the panel, the voltage crashes as the current is increased to the shorted condition. Without a cap before the inductor, when the inductor's current exceeds the panels current limit, the voltage will drop preventing the inductor's current from increasing, the inductor may give back...

The driving force for an inductor is Voltage.
Using your inductor as an example, with 20v across it what will the current be in 8us? Then try that with 10v? Current will be half at the end of the same 8us.

Have fun,
Scott.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#35)
by elt on Fri Sep 19th, 2008 at 07:31:15 PM MST
(User Info)

Hi Scott,

Okay, I've been looking at the other part of the curve...

Here's an example of an inductor voltage(yellow) vs FET off time(purple) plot that my simple simulator shows:



This is 17 volts in at 1 amp, 29 volts out, period = 20uS and duty cycle 50%

I think that the integration of the first part of the waveform is directly related to input power, if that can be done then no other sensors are needed for MPPT.

Also, no calculation would been needed for the off-time as the FET voltage drops to the input voltage as soon as it droops below the output voltage. (In this simulation, the FET is off for about three times longer than it should be.)

> The FET's voltage should be captured just BEFORE it turns OFF. When Inductors current will be at its peak.

Okay, I have to turn up the gain on my pretend o-scope to see the FET on-time...



... I think that you are saying that, with the proper sized cap, that I can use the current calculated from end of that curve times the voltage across the cap as the power calculation?

> If you can protect the ADC input and measure it at the right time then great! Do what ever works. Input voltage to ADC must NOT exceed its supply voltage.

Okay, what I was thinking of was putting a voltage divider in there to get the peak voltage below Vcc but then running it into the 20x gain stage. Not sure yet but am thinking that Vcc or less presented to gain stage might saturate the ADC at higher volts (but not blow anything) yet still amplify the lower voltages to get more accurate readings there.

I can schedule the sample and hold aperture on the ADC to the clock cycle and guess that with its 16pF capacitor that the value held will be the voltage very close to the end-time of the window. I haven't done the programing yet but think that by sliding the aperture across a few PWM cycles that I can super sample the discharge curve and get a fair digitization of it... just theory at this point.

> Was the 5 amps the peak inductor current? Or do you have 85w panel just waiting to be used?

I wish! In a nutshell, I hope to get a Harbor Freight panel set and test the three panels both in parallel and in series. I'm guessing that bucking will be better than boosting but would like both circuits to handle two or perhaps three sets of panels. I can't invest much in solar right now but think that 5 amps could conceivably be a lot of watts in the buck version ...

How does that sound?

- Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#36)
by scottsAI (user name at eml dot cc) on Fri Sep 19th, 2008 at 10:13:52 PM MST
(User Info)

Elt,

I do not understand your plots. Need plots like:
http://en.wikipedia.org/wiki/Boost_converter
Please use this for a discussion:-)
Fig 3 shows inductor current, input and output voltage, on / off time.

Inductor current should be ramping up with FET on.
Output voltage boosted while FET is off, inductors current decreasing.

Output power = IV, with a fixed output voltage, by maxing current we max power.
The inductor currents wave form is the same each time just maybe higher / lower.
Therefore by maxing the peak = max power, only one sample is required.
Exactness is not required, if all samples are acquired the same way, method needs to show relative size. If bigger shows up as bigger and vice versa, should be good enough.

Boosting maybe better. If series connected panels are exactly the same then same.
My panels are not the same, expecting 15% more power by boosting each separately.

Bucking can be better if the voltage is high, thinner wire back to battery where its bucked down...
Many ways to look at this!

What simulator are you using, do not recognize pictures.

Have fun,
Scott.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#37)
by elt on Sat Sep 20th, 2008 at 09:09:42 AM MST
(User Info)

Hi Scott,

I think we're looking at apples and oranges... er, coils vs. FETs. My toy-ish simulator only gives me a virtual DVM and virtual oscilloscope for analysis. Yes, if I put the leads across the coil, then I get results similar to fig.3.

I thought that we were going to measure the voltage across the FET? As I understand fig.3, the FET voltage isn't shown.... The plots I posted simulate the standard boost circuit with the o-scope ground on ground, channel one on gate and channel two on drain.

The duty cycle in this sim was 50% and is seen by the square waveform in red. The voltage on the drain-source channel (yellow) is at 10v/div when the FET is turned off and shows a quick voltage spike to 50 volts or more that trails off until the voltage drops below battery volts (about 30v), then it slams down to input volts (about 17 volts).

The second image shows the voltage across the FET when it is turned on. Channel two is set to 50mv/div to show the detail during this phase. ( The voltage looks flat in the first image but it's not, it's just lost in the larger voltage scale.)

If I understood your instructions, I am to measure the FET voltage just before the FET is turned off, that would represent the approx 150mV shown on channel two in the second image.

If I understood your instructions, the volts measured just before the FET is turned off would be multiplied by the voltage across the cap. Power = Vcap * Vfet/Rdson but R is constant for purposes of relative comparison so forget about it. Is that right?

That seems to represent maximizing power in from the solar panel. When you first wrote of measuring current by using Rdson as "the shunt", I assumed you meant on the output (battery) side. Based on that, I was suggesting that the "tall area" in the left hand part of the yellow waveform in the first image, starting just after when the FET gate is turned off until the voltage drops below battery volts represents the power that is transferred to battery. Now we're considering (Vds x Rdson) x Vbatt. Similar to the previous case, Rdson is fixed and can be dropped from the calculation but now Vbattery is constant for purposes of relative comparison so we can forget about it as well. All that leaves to consider is volts across the FET for as long as the diode is conducting. From what I've seen from a few different input-power setups, I'm suspecting the using the diode conduction time alone might be adequate to track the MPP... hm, "maximizing conduction time of diode with a pwm output" sounds like a good description for MPPT on a chip.

Do you have an analog solution? I know that many folk would prefer an analog solution but it seems hard for me to beat the functionality of a two dollar microprocessor chip.

Is this making any sense?

 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#38)
by scottsAI (user name at eml dot cc) on Sat Sep 20th, 2008 at 09:04:18 PM MST
(User Info)

Hi Elt,

We are on the same page! Some clarifications:
I assume Vcap is the capacitor on the Solar Panels side?
Power = Vcap * (Vfet/Rdson) / 2, correct for the panel side.
Inductor Current is a ramp must Divide by 2 for the average current:-)
As the panel is loaded Vcap will change (a lot), therefore power is dependent on it.
As you state Rdson cycle by cycle is the same (dependent on temperature)

The energy in the inductor is the same for the charging and discharging equations:
Power = Vbat * (Vfet/Rdson) / 2 (if discharging current is a ramp)
Since Vbat is constant only need to max Vfet to Max power!
If discharging is not ramp not sure if valid comparison? Need to think about this.
Time PWM cycle to keep some current in the inductor at the end of the cycle to get ramp.
(As long as the load side conditions remain the same, expect OK to let current go to zero.)
Then comparisons of peak currents are representative of more energy = more power.
Power transfer with inductor current going to zero requires larger Peaks currents to get the same average. 4 = 8/2, if current goes from 2 to 6 = 4 same average current.
Peak currents are the root of most problems in a switcher.

Timing the length of inductor output is more difficult than measuring Vfet once.

Do you have an analog solution?
No, I could...
Couple years ago saw a very complex circuit doing MPPT. Much more Costly.
May have been in a patent. (where I go to learn how things work:-)

Have fun,
Scott.


[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#39)
by elt on Sun Sep 21st, 2008 at 01:56:33 PM MST
(User Info)

Scott wrote:

> Timing the length of inductor output is more difficult than measuring Vfet once.

!!!

Can it be that simple? Timing the inductor output is free when using a 16 bit timer for PWM on the AVR micros. Simply set up the input capture unit to trigger on the analog comparator...

I'm going to restart this reply down at the bottom of the page; in thread-view mode we are so far to the right of the page that only little words will fit on the screen...

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#11)
by GlutealCleft on Thu Aug 28th, 2008 at 09:40:01 AM MST
(User Info)

Very, very cool stuff - terrific work!

A 21% increase is nothing to sneeze at.  It would be interesting, though, to see if the addition of a current sensor could get you any significant boost over what you've got already.  Perhaps a hall-effect sensor, so you're not dealing with resistive drops?  5-A DC units from Allegro are only a few dollars.



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#13)
by elt on Thu Aug 28th, 2008 at 11:44:08 AM MST
(User Info)

I do have a few 50 amp Allegro sensors in project box; I think I'll go to their website and ask for samples of smaller units..

When the display is attached, I can manually step the PWM up or down and see shat happens. Inside or when cloudy, the power dropped and rose quickly with small changes in duty cycle. More then enough milliamps to power the board but not enough to get excited about. In full light, +/- 10% is barely detectable on my cheap meters. With a lot more power, it might matter more. The interesting range is about 45% to 70% duty cycle so I did see that is beneficial to change the boost versus a simpler circuit using a fixed boost... another question I had.

 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#16)
by tecker on Fri Aug 29th, 2008 at 07:32:44 AM MST
(User Info)

I 've been messin around with the buck, boost, Cuk for a while. I won't steel the tread you have going .I got some stuff to put up later. Mosty about buckin down X10 limited current voltages to get the current for lower voltage devices and storage .
A thing to remember here is  battery impedance. They have much slower return voltage times if you hold that voltage two to 4 volts above ,the electrolyte stores the charge without a lot of heat(if the batteries are good)factor batteries or the battery bank into your circuit where the bias is good for switching I ran across this .In this PDF are a good explanations of switching  copper to  do this and more. They talk about a charge pump .It's more static than coil functions but looks interesting . Food for clarity anyway.
   http://www.jaycar.com.au/images_uploaded/dcdcconv.pdf I also uploaded a Doc file with buck boost calculations.
http://www.otherpower.com/images/scimages/1431/buck_boost_basics.pdf
Good stuff hang in there.



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#21)
by elt on Mon Sep 1st, 2008 at 06:49:14 PM MST
(User Info)

I'm going to have to figure out whether a regular buck or a cuk is better (or if it matters) for  converting high current and voltage levels down to battery volts on my windmill ... any thoughts on that?

Thank you,
- Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#23)
by tecker on Thu Sep 4th, 2008 at 07:57:15 PM MST
(User Info)

I think I got some stuff that will be easy enough to setup .I'm back on the axil for a week or so .

[ Parent ]


Re: Small scale solar MPPT wins 21% (3.00 / 0) (#22)
by boB on Mon Sep 1st, 2008 at 09:32:22 PM MST
(User Info) http://bob.gudgel.org


>>http://www.otherpower.com/images/scimages/1431/buck_boost_basics.pdf

Some interesting stuff in there, but they got the output polarity of the Buck-Boost
backwards (it inverts) and the output diode is labeled as an "L" on more than one schematic.  (cut and paste errors I'm sure)

boB

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#40)
by elt on Sun Sep 21st, 2008 at 02:25:29 PM MST
(User Info)

This continues as a reply to scottsai that way off to the right of the page...

Scott wrote (way back here):

> Timing the length of inductor output is more difficult than measuring Vfet once.

Can it be that simple?

Timing the inductor output is free when using a 16 bit timer for PWM (on the AVR micros.) Simply set up the input capture unit to trigger on the analog comparator. Compare the voltage on the FET side of the diode to the battery voltage and use the value recorded as the PWM on-time. If the capture value is equal to or greater than the on-time, increase the on-time until you see the inductor time lag. The built-in noise canceler adds four clock cycle to the compare timer so that can be taken into account when setting the duty cycle. I've got the input capture pins available on the test rig (pictured above) so I ought to be able to wire that up for testing...

> Couple years ago saw a very complex [analog] circuit doing MPPT.

... am still thinking that MPP tracking based on targeting 70 or 80 percent of the panel's open circuit voltage might enable a simple analog solution but I haven't found a fast and cheap sample and hold chip; for me, the $2 micro is hard to beat.

- Ed.



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#41)
by scottsAI (user name at eml dot cc) on Mon Sep 22nd, 2008 at 02:21:56 PM MST
(User Info)

elt,

> Timing the length of inductor output.
Timing the inductor output is free...

Please show me this Free measurement?

Can sample and hold the FETs voltage for 18 cents in parts from DigiKey. Unit One.
Using 10 Bit ADC, can skip amplifier. May need to average several samples... not a problem.

>thinking that MPP tracking based on targeting 70 or 80 percent
You could be right. Question most panes OCV is like 20v, loaded is 17v or 85%??
In your first post using about 10 watt solar panel with 44uf.
Less than 1ms needed to get OCV.

Have fun,
Scott.


[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#42)
by elt on Mon Sep 22nd, 2008 at 04:29:16 PM MST
(User Info)

Hi Scott,

>Free measurement?

You got to remember that "free" to a software guy means no (or little) code...

The input capture unit (included on most 16 timers in AVRs) can time stamp the analog comparator. Use the same timer for PWM and capture and then you get the pulse end time in the input capture register. The pulse with will be contents of the capture register - PWM match register.

Unfortunately, my favorite TINY85 doesn't have a 16 bit register but an ap note shows how to time the analog comparator with just a few cycles of latency. (The less expensive TINY2313 and the larger footprint TINY84 both have 16 bit resisters and can do the timing without polling the comparator bit.)

> Can sample and hold the FETs voltage for 18 cents in parts from DigiKey.

Please, how? Darned if I could find anything fast enough for less than $12 USD (but all I know to search for is "sample and hold")

I didn't think an ADC would be needed. I was thinking something like a JK flipflop, two comparators and a sample and hold.

Drain voltage dropping below battery volts would turn on FET, the panel voltage dropping below x% of the panel's OC voltage would turn off the FET. The only trick is a little delay is needed after the drain voltage drops to the OC panel voltage do the sample and hold before the FET can be turned back on... I think that works in theory but not sure if it's doable.

Does that make any sense?

 - Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#43)
by scottsAI (user name at eml dot cc) on Mon Sep 22nd, 2008 at 06:08:26 PM MST
(User Info)

Ed,

Sample and hold:
I will give you a hint, let you discover it, if cant then I will tell you?
Parts are 2N7002 and 30nf cap.

Free measurement: Not so free:-)
Circuitry is required to detect the voltage above panel. What is this in parts? What does it cost?

Yes I understand about the software, input capture etc.
I have spent as many years programming micros as Hardware design.
The Freescale RS08 has 16 bit reg for capture 20 pins. 99 cent in 25 quantity!

Have fun,
Scott.


[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#44)
by elt on Mon Sep 22nd, 2008 at 07:43:53 PM MST
(User Info)

> Sample and hold:

Okay, I think I'm close; I could see a p-fet charging the cap and then turning off to hold; do I need one of them high side drivers to use the same with am n-fet? I'll throw this in the simulator and see what happens...

> Not so free:-) Circuitry is required to detect the voltage above panel. What is this in parts? What does it cost?

Okay, no incremental cost because I want to make a charge controller as well. But for MPPT only, that'd be a buck for the micro plus 4 resistors to make the two voltage dividers. Add twenty-five cents more to move up to a temperature compensated charge controller.

RS08!? No.No.No.No. I went to Freescale on two designs because they cost less; used the RS's big brothers: a QT60 in a Zigbee radio and a GB80 on a remote sensor board. I probably popped 40% of the chips just programming them and half of what remained in use in the field. I usually got pins shorting to high current; not just on the I'm-not-an-EE boards that I designed myself but the OEM Zigbee radios boards I bought as well. Now I have to stock chips for repair. Makes me very skittish every time I put a BDM cable on one. They seem fragile to me (though I really do like CodeWarrior for development.)

Perhaps I don't have an ESD Best Practices procedure in place here but on the other hand, I've never burned an ATMEL chip unless it really, really deserved it and certainly never just by handling it or a board it was in.

> >thinking that MPP tracking based on targeting 70 or 80 percent
> You could be right. Question most panes OCV is like 20v, loaded is 17v or 85%??

I think that a fix boost calculated to do 17v to 29v would work fine for good panels in full sun. I know there's some power in party-cloudy but I honestly don't know whether it's worth the extra dollar to get MPPT or not. One big advantage of spending a dollar for the micro, though, is that it can automatically optimize itself to different panels connected to it.

Having fun!
- Ed.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#45)
by scottsAI (user name at eml dot cc) on Mon Sep 22nd, 2008 at 08:43:56 PM MST
(User Info)

Ed,

In my humble opinion is insane to not MPPT if the cost is a micro with some code.
Even your first stab at it boosted power 21%!
The micro cost a buck, can't get 1 watt solar cell for that little.

Thanks for the FYI about the Freescale micro. Dealing with ESD is not difficult.
I noticed on the demo board a few parts not on their recommended circuits.
Demo board is S08, been working great. Not using BDM yet.

Sample and hold: use the 2N7002 N-channel and cap nothing else.

Okay, no incremental cost...
I do not think so. The panels voltage can change as batteries.
Circuit needs to detect when Inductors output drops to panels.
How you going to make this work? Interested to see your circuit.
Do not do it unless your interested in humoring me or plan to use it.
Expect it to be more complicated than the sample and hold... !-)

Yes, Having fun,
Scott.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#46)
by elt on Thu Sep 25th, 2008 at 04:07:30 PM MST
(User Info)

Hi Scott,

> I will give you a hint, let you discover it, if cant then I will tell you?
Parts are 2N7002 and 30nf cap.

Okay, I give...best I got is two FETs and a diode (and the cap). I can get one diode and a cap to hold the sample when the panel volts go higher than what is sampled but it my cap follows the panel voltage if it goes less than the sample. If I put a diode in to stop that, it cap never goes lower to a lower voltage so then I need another FET (and control line) clear it. And maybe a resistor to limit the current when I drain the cap... I can't touch an eighteen cent solution; I'm stuck at more than double that.

> Expect it to be more complicated than the sample and hold... !-)

If you mean more complicated software, it surely will be but I really like the idea of all the sensing being inside the FET; it's a very portable and reusable idea. I'll report one way or the other.

- Ed,.

[ Parent ]



Re: Small scale solar MPPT wins 21% (3.00 / 0) (#47)
by scottsAI (user name at eml dot cc) on Thu Sep 25th, 2008 at 06:32:23 PM MST
(User Info)

Ed,

OK.

Power FET
D connects to inductor, G to micro, S to ground. (as expected?)
2N7002
D connects to inductor, G to micro, S to 30 nF cap then cap to ground.
S + cap node connects to ADC input on Micro.
Cap will have power FET delta voltage across it.

Sample cap voltage anytime the gate is low (off) for the last sample.
Do not sample when the gate is on.

Voltage delta across power FET is less than 1 volt. (Or somethings wrong)
While FET is turned on, Vbat when off or Vpanel.
2N7002 is turned on by couple volts, cap is not much load at these speeds.

ADC with 10 bits resolves 5mv, should be enough, Or sample 4 times or more and average to enhance ENOB.

Simple!?

Have fun,
Scott.


[ Parent ]



Small scale solar MPPT wins 21% | 47 comments (47 topical, 0 editorial)
Display: Sort:
Menu
· create account
· How to use the board
· FAQs
· search the board
· Google search the board
· Old Otherpower Board

Login
Make a new account
Username:
Password:

Total Views
  199 Scoop users have viewed this posting.

Related Links
· Also by elt

Powered by Scoop
You must be a registered user to post here. It's easy and free, and the link is on the upper right side of your page.
All trademarks and copyrights on this page are owned by their respective companies. Postings are owned by the poster, but may be deleted or moved at the ADMIN's sole discretion. The Rest © 2003 Forcefield.
You can Email the board ADMIN here. PLEASE include the username you signed up with!