Author Topic: Built an MPPT Booster... again  (Read 8451 times)

0 Members and 1 Guest are viewing this topic.

elt

  • Sr. Member
  • ****
  • Posts: 328
Built an MPPT Booster... again
« on: September 30, 2007, 09:56:48 PM »
I haven't written about my first MPPT power booster for some time.

(http://www.fieldlines.com/story/2006/10/16/16467/958)


It worked fine but along the way I decided to increase the air gap and cut-in speed on my alternator and the first booster circuit I built wouldn't handle the current at the new and higher cut-in speed. (But it works fine boosting my meager 12v solar panels up to 24 volts so it's not wasted!)


Recap: I built my 24v mill to have a high cut-in (about 13MPH) so that it would be more efficient and a better power match in high winds. The plan is to use an MPPT power booster at lower voltages to recover the power on the low end of the curve.


The new booster is basically an identical circuit to the first booster, I just built it a little differently to handle more current.




The few circuit changes: I had good luck using the battery cable as a shunt in my dump controllers so I used the same technique here. The original circuit used a hall-effect current sensor; this one simply connects each end of the battery's ground cable to an analog to digital converter and measures the voltage drop (which is proportional to the current flow.) Also, I added a button an LED to configure and test the circuit. To handle more power there's two inductors in parallel, two sided and wider copper in the high current areas and bigger heat sinks.


So far, I've only done low current testing (with the booster connected to main rectifier with alligator clips.) Here's a picture -





The booster is sitting on top of the main rectifier's heat sink; that's the digital watt meter I built to right of it.


IT WORKS!


In "manual mode" I can vary the duty cycle and watch the mill speed up and slow down... very cool.


I haven't seen cut-voltage for the mill today but in "automatic mode" the MPPT booster is still extracting power. Cut-in for the main rectifier is about 240 RPM; I've set the booster to cut in at about 60 RPM... it doesn't quite pull steady power out of 60 RPM but it gets a steady 3 or 4 watts at 70 RPM. No that's not a lot of power but it's more than enough to power my control system... I'm not really in a position to know if it's getting "maximum power" but I think it is: I can read out amps and voltage with the LED and button and they read correctly so I've no reason to think the little microprocessor can't to the math correctly...


Well, I picked today for the first tests because there's very little wind. Tomorrow forecasts more so I'll beef up the connections and I'll follow up with more results as I get them.


- Ed.

« Last Edit: September 30, 2007, 09:56:48 PM by (unknown) »

Boondocker

  • Full Member
  • ***
  • Posts: 193
Re: Built an MPPT Booster... again
« Reply #1 on: September 30, 2007, 07:10:26 PM »
Thanks for the update.   I've incorporated boosting into my project because of the details discussed in your posts.   Just started working on the MPPT portion as well.    I'm curious on the algorithm you are using for the MPPT boost?  Based on a posting by jimovonz, here is the method I'm pursuing:


If  amp > amp_old   AND  rpm < rpm_old  Then    No_Chg_Bst

If  amp < amp_old   AND  rpm > rpm_old  Then    Inc_Bst       

If  amp < amp_old   AND  rpm < rpm_old  Then    Dec_Bst

If  amp > amp_old   AND  rpm > rpm_old  Then    Last_Bst

« Last Edit: September 30, 2007, 07:10:26 PM by Boondocker »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #2 on: September 30, 2007, 09:10:18 PM »
My algorithm is


    IF amp < amp_old THEN step_direction = -step_direction

    duty_cycle = duty_cycle + duty_cycle_increment * step_direction


I do check that the duty cycle doesn't go negative or greater than a configured maximum value. I also check the input voltage to the booster and turn off the boost if it goes above or below those configuration values... I wouldn't care about voltages at all except that I don't want to boost above the rated voltages of the output diode and MOSFET.

« Last Edit: September 30, 2007, 09:10:18 PM by elt »

domwild

  • Sr. Member
  • ****
  • Posts: 357
Re: Built an MPPT Booster... again
« Reply #3 on: September 30, 2007, 11:09:31 PM »
elt,


Thanks for that. Very interesting. At some stage I intend to use a Picaxe for the control.


Regards,

« Last Edit: September 30, 2007, 11:09:31 PM by domwild »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #4 on: October 01, 2007, 08:10:23 AM »
I have to admit that I don't completely understand jimo's algorithm... for example, the first line says "if amps go up and rpm goes down, don't change the duty cycle."


But my understanding is, for example, that if the mill is underloaded (or unloaded) then increasing the duty cycle will increase the amps and decrease the RPM, however, one increment in duty cycle is not likely to get you to the maximum power point and you may need to increment the duty cycle again rather than "don't change the duty cycle." I don't see how this line gets (or keeps) the mill moving toward the maximum power point. My technique will continue to load the mill as long as amps are going up.


(Let me say that when I write "my technique" I only mean the one I'm using, I don't claim invention or ownership!)


The next line says that if the amps go down and the rpm goes up, then increase the duty cycle. How can that happen? Well, if you had just unloaded the mill when you were below the MPP (reduced the duty cycle) then the amps would go down and RPM could go up. My technique would say to reverse the step direction yielding the same effect, the duty cycle would be increased.


A change in wind can not effect this test. At any given duty cycle, if the wind increases, amps will go up so this case wouldn't apply. If the wind decreases, RPM will go down so this case doesn't apply.


The third line says that if the amps go up and RPM goes up to "do the same thing as last time." My technique always does the same thing if amps go up so they yield the same effect.


The fourth line says if the amps goes down and the rpm does down then decrement the duty cycle. Well, if you have incremented and overloaded the mill beyond the MPPT then both the RPM and amps will go down. My technique says to reverse the step direction (always) if amps go down so it will decrement the duty cycle as well. Same effect.


Can a change in wind effect this case? No. At a given duty cycle, if the wind increases the RPMs will go up so this case does not apply. If the wind decreases, RPM will go do and we need to unload the mill; however, the current-only technique does this anyway without the need to check RPM.


... so it looks to me that the current-only technique yield the exact same behavior as the current/RPM technique (except in the first case which doesn't seem correct to me) so I don't see that checking RPM added anything...


Also Jim writes "an algorithm based solely on current measurement would have to change duty relatively slowly to get around the problem of the inertia of the rotating mass."


I don't see that either. My mill will double in speed in about a second so maybe his mill has a lot more inertia than mine. Also, since inertia is the inability of the mill to change RPM, I don't see how checking RPM gets around "the problem" (not that I see what "the problem" is either.) At any rate, I'm running about 5 updates a second with the current-only technique and haven't seen any problems (fingers crossed) yet.


- Ed.

« Last Edit: October 01, 2007, 08:10:23 AM by elt »

Boondocker

  • Full Member
  • ***
  • Posts: 193
Re: Built an MPPT Booster... again
« Reply #5 on: October 01, 2007, 01:48:14 PM »
I also set up similar instruction for turning off the boost.   It is redundant, code will turn off the boost with high/low rpm, voltage high/low,  and high amps.   Can always adjust.


Hopefully Jimovonz he will give us some more insight behind this algorithm.


Obvious I have not tried it out in the field yet.  Here is how I currently have my program written:


When boost condition exist, turn on boost with low pwm and approach to the MPPT from the bottom up.


In the Boost Off subroutine, reset old_rpm and old_amp variables  so Increase Boost  subroutine becomes the default condition when the boost is initially turned back on.


After the first iteration boost now is ON and a load is applied to the turbine.   If winds are constant, for that moment, rpm will drop and amps increase.   This will set the boost to no change.........Hmmm.  Until more wind causing rpm and amps to increase, THEN last boost subroutine.........again ..Hmmm.   Or,  until wind decreases causing rpm to go down along with amps, THEN decrease boost.


Need to give this additional thought.  I do like the simplicity off your algorithm.

« Last Edit: October 01, 2007, 01:48:14 PM by Boondocker »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #6 on: October 01, 2007, 03:57:17 PM »
> Hopefully Jimovonz he will give us some more insight


Well I hope so. I tend to believe folks who say "I did this" and jimovonz says that it was working for him... I do think that his technique works (though I do suspect the first test) it's just that as far as I understand it, I think the two techniques give identical results.


Speaking of results, we didn't get the wind I expected today. The most power I saw was  about 40 watts so there's more testing to do...


 - Ed.

« Last Edit: October 01, 2007, 03:57:17 PM by elt »

jimovonz

  • Sr. Member
  • ****
  • Posts: 339
Re: Built an MPPT Booster... again
« Reply #7 on: October 01, 2007, 06:54:31 PM »
Hi Guys, great to see your persuing this! I have been out of the scene for a while. I no longer have the facilities or time to persue my hobbies after selling up my property and separating from my wife. I currently reside in a rather small rental home with my two pre-school kids. I don't even own a functional computer (The ex trashed my desktop PC by throwing it on the office floor along with the monitor then jumped up  and down on it all the while muttering something about '....bloody Fieldlines board.....' :)


With regard to Boondockers listing based on my previous post:


If  amp > amp_old   AND  rpm < rpm_old  Then    No_Chg_Bst


This basically says that if the current is increasing while the RPM is decreasing then don't change the loading (boost) from the level set in the previous cycle. I included this in the algorithm to improve the response time and to get the tracker to ignore energy derrived from the momentum of the rotating assembly as part of its decision making. With out this the unit 'hunts' and there is a significant lag in the time it takes to reach the MPP. Essentially the loading is never increased while the rpm is slowing down.


Just as a clarification (its not obvious from the way Boondocker listed it) the last line:


If  amp > amp_old   AND  rpm > rpm_old  Then    Last_Bst


says that if both amps and rpm are increasing then do what ever was done last (i.e if the last cycle incremented the loading then increment again and viceversa).

« Last Edit: October 01, 2007, 06:54:31 PM by jimovonz »

solarengineer

  • Full Member
  • ***
  • Posts: 136
Re: Built an MPPT Booster... again
« Reply #8 on: October 01, 2007, 06:54:49 PM »
Hey Ed that thing is Fantastic, would you concider posting a schematic?


Thanks


Jamie

« Last Edit: October 01, 2007, 06:54:49 PM by solarengineer »

Boondocker

  • Full Member
  • ***
  • Posts: 193
Re: Built an MPPT Booster... again
« Reply #9 on: October 01, 2007, 07:07:31 PM »
Elt,


Are you considering doing any data logging?   Currently, I'm working on setting up an anemometer.   Ultimately, want be able to track wind speed, wind direction, prop rpm, amps, voltage.  Hence, able to determine TSR, system Cp in different wind conditions and keep a tally of the total power produced.  Data logging could also provide information on different MPPT boost algorithms.


I like data.......Real world test data.......


Isn't this FUN!


Boondocker

« Last Edit: October 01, 2007, 07:07:31 PM by Boondocker »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #10 on: October 01, 2007, 08:39:50 PM »
Sure...





... and here's a direct link that may be a little easier to read -

http://www.otherpower.com/images/scimages/6527/mppt_1s.gif


If you're not familiar with the tiny85, there's two things under that hood that aren't obvious: 1) Its ADC has an internal gain amplifier so I'm sensing the shunt (voltage drop on the ground cable) at 20x the voltage. 2) WTR to the button, at vcc equal 5.5 volts, logic "0" is about 2.5 volts (logic 1 is about 2.7 volts) so even with the LED pulling the input up, a button press will read as zero. (The "user" pin is normally set to be an output; I set it as an input for a microsecond or so every 10 milliseconds to check for a button press and then turn it back around to an output so the single i/o pin can be used for both LED output and button input.)


Hope that helps,

- Ed.

« Last Edit: October 01, 2007, 08:39:50 PM by elt »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #11 on: October 02, 2007, 06:21:50 AM »
> Are you considering doing any data logging?


Eventually. My next project will be the charge controller and I'm planning on using a "mega" (as opposed to "tiny") microcontroller on it so that it will have plenty of I/O. Also, I included a data line when I ran the power cable from the mill shed to the shop so I can do remote control and monitoring.  


I have been looking at anemometer plans; my favorite so far is this electronic one -

http://www.fieldlines.com/story/2004/2/17/91311/0908

- I'm likely to try that first.


 - Ed.

« Last Edit: October 02, 2007, 06:21:50 AM by elt »

DamonHD

  • Super Hero Member Plus
  • *******
  • Posts: 4130
  • Country: gb
    • Earth Notes
Re: Built an MPPT Booster... again
« Reply #12 on: October 02, 2007, 07:50:04 AM »
Consider using a USB-based digital input (and other stuff) board such as the k8055, with some opto-isolators.  That is easy to log data with in Linux or Windows at least, and is cheap and easy.


Rgds


Damon

« Last Edit: October 02, 2007, 07:50:04 AM by DamonHD »
Podcast: https://www.earth.org.uk/SECTION_podcast.html

@DamonHD@mastodon.social

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #13 on: October 02, 2007, 08:28:21 AM »
That's a good idea but, at least in my case, the strict limit of a couple of meters on USB cable length makes it unsuitable for me.


I've been using these wireless transceivers in other apps so I'm already familiar with them -

http://www.dlpdesign.com/rf/rf2.shtml

I also understand that others have reprogrammed wireless routers as wireless Linux boxes; that sounds like fun too.


- Ed.

« Last Edit: October 02, 2007, 08:28:21 AM by elt »

DamonHD

  • Super Hero Member Plus
  • *******
  • Posts: 4130
  • Country: gb
    • Earth Notes
Re: Built an MPPT Booster... again
« Reply #14 on: October 02, 2007, 09:46:09 AM »
But you can have lots of wire on either side of the opto-isolators the way I do it: hundreds of feet I'm guessing, since it only needs to drive about 1mA.


Keep the USB stuff close to your computer.


The optoisolators are a few pennies each IIRC.


Rgds


Damon

« Last Edit: October 02, 2007, 09:46:09 AM by DamonHD »
Podcast: https://www.earth.org.uk/SECTION_podcast.html

@DamonHD@mastodon.social

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #15 on: October 02, 2007, 11:26:32 AM »
Sorry to hear about the ex; hope you and the kids are doing okay...


>  ignore energy derrived from the momentum of the rotating assembly as part of its decision making[...] Essentially the loading is never increased while the rpm is slowing down.


I guess that's part of what I don't understand, for two reasons:



  • If the wind died (in the last .1 second) why would amps be going up? But if perhaps you had some latency in your amps reading, wouldn't increasing the load on the mill (for another .1 second) help get rid of "the momentum of the rotation assembly" faster and get you to the new maximum power point faster, rather than slower?
  • It's a useless line of code. A test that's unique from all other tests, that says "don't do anything" does nothing. So it doesn't matter whether it's there or not. I realize that you didn't present "code" and as a comment about your algorithm, it's a very good line of text...


But I don't see that as being the right thing to do. Suppose that "doing nothing" gets the mill to a steady state, neither amps nor rpm go up or down on the next iteration. What do you do know? If the wind isn't changing, there are any number of steady state loads but only one load is the maximum power point load... and you're not doing anything to check to see if you're there or to move to it if you're not. It seems to me that you at least need another state saying that "if nothing changes you need do something" ... but  it still doesn't seem like a faster way to get to the MPP, but rather a slower one?


 - Ed.

« Last Edit: October 02, 2007, 11:26:32 AM by elt »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #16 on: October 02, 2007, 03:37:58 PM »
I also set up similar instruction for turning off the boost.  It is redundant, code will turn off the boost with high/low rpm, voltage high/low,  and high amps.  


In general, rpm = "x" times the voltage. With my mill, x=10... 120 RPM = 12 volts, 240 RPM = 24 volts, so having both RPM and volts is redundant. I do need a high voltage cut off though. My wiring has the booster and the main rectifier sharing the same ground return so I can't check for boost amps separately from from un-boosted amps.


I've thought of wiring the ground separately but not until I already had it wired and I'm not sure, other than for curiosity's sake, if it's worth bothering with another wire now.


Good luck with your project!

- Ed.

« Last Edit: October 02, 2007, 03:37:58 PM by elt »

boB

  • Sr. Member
  • ****
  • Posts: 389
  • Country: us
    • boB
Re: Built an MPPT Booster... again
« Reply #17 on: October 03, 2007, 11:22:28 AM »


I'm slightly confused by 3-phase on the left side and mill+

on the right side of the schematic.


boB



« Last Edit: October 03, 2007, 11:22:28 AM by boB »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #18 on: October 03, 2007, 02:22:22 PM »
The design follows one of Flux's ideas posted in his "matching the load" story. Here's the "big picture" -





The booster is in parallel with a high current rectifier and, in fact, uses the lower half (negative side) of the main three-phase rectifier for the return path. (The booster only duplicates the the positive side of the rectifier.) "mill+" is a left-over from when the the boost current was sensed by a hall effect current sensor. "battery+" was on the other side of the sensor so in this circuit mill+ should have been renamed battery+


Hope that makes sense,


 - Ed.

« Last Edit: October 03, 2007, 02:22:22 PM by elt »

DamonHD

  • Super Hero Member Plus
  • *******
  • Posts: 4130
  • Country: gb
    • Earth Notes
Re: Built an MPPT Booster... again
« Reply #19 on: October 03, 2007, 02:30:07 PM »
That's pretty much what I was doing also with my little capacitor-based booster.  Avoiding getting in the way of the normal rectifier when there's lots of power to be had...


Rgds


Damon

« Last Edit: October 03, 2007, 02:30:07 PM by DamonHD »
Podcast: https://www.earth.org.uk/SECTION_podcast.html

@DamonHD@mastodon.social

boB

  • Sr. Member
  • ****
  • Posts: 389
  • Country: us
    • boB
Re: Built an MPPT Booster... again
« Reply #20 on: October 03, 2007, 05:50:50 PM »
>>"battery+" was on the other side of the sensor so in this circuit mill+ should have been renamed battery+


Aha !  Yes, that's what I thought.


boB




« Last Edit: October 03, 2007, 05:50:50 PM by boB »

elt

  • Sr. Member
  • ****
  • Posts: 328
Re: Built an MPPT Booster... again
« Reply #21 on: October 05, 2007, 08:46:00 AM »
I had some problems with this :( and started a new diary entry asking for help fixing the problem.


http://www.fieldlines.com/story/2007/10/5/14442/0479


 - Ed.

« Last Edit: October 05, 2007, 08:46:00 AM by elt »