Arduino Control Buck Converter

Morning!

I am looking to use an Arduino to control a buck converter, five independent converters to be exact, but we will just stick with one for now. I need some help with where to start, etc.

The goal is to have a controller with PWM for the new Cree MK-R so that I have extensive control over the brightness… 125mA for 20% flux to 1166mA for 150% flux. However, I can live with any current limitation beyond 700mA since I will have heat dissipation issues.

The voltage source would be LiPo 4S, 5S, and 6S hobby batteries which are 14.8v, 18.5v, and 22.2v respectively. I will have to monitor voltage since these are not protected batteries, but that is not a big deal.

Now my understanding of buck converter (my EE experience is not strong) is that I can use duty cycle to regulate the voltage on the output. So if the Arduino is programmed for the different LiPo batteries called out above, I can just use PWM to regulate the output voltage to 12v no matter the input… unless the components are not sized properly or cannot be versatile enough for this. This is where I need help in selection of of them.

Then to add on to that, how do I regulate the current or the effective on current on the LED to regulate the brightness? How does that play into the buck converter such that the circuit does not become out of balance?

Here is the LED Datasheet: http://www.cree.com/led-components-and- … ampMKR.pdf

What you want is a voltage to current converter, whose output voltage autoranges near 12V so as to provide the current needed. That current to be determine by a PWM waveform output by the Arduino. SFE sells something close but not good enough for your needs.

https://www.sparkfun.com/products/9642

While people have used an external FET to PWM the above, it still won’t provide the current levels you desire. But it’s bigger brother does (with some caveats).

http://www.ledsupply.com/0a009-d-v-1400.php

http://www.luxdrive.com/download/?dltf&dmid=1468 (PDF file)

Those caveats are that the dimming signal is a 0-10V, not a 0-5V PWM signal but that’s easy to work around with a simple additional circuit (see Fig18 in the PDF). The bigger issue is that I don’t think you can get the full 1200 mA over the range of voltages (as it goes from fully charged to discharged) you can expect from a 4S pack. The PDF file for the 1400 mA version shows this relationship :

(click on to open and enlarge)

And from the MK-R PDF you can see what the Vf is vs current through the LED :

(click on to open and enlarge)

1200 mA is going to require an output voltage near 12.2V from the MK-R curve. 1200 mA from the driver will require an input voltage of perhaps 14.5V min. 14.5/4 = 3.63V from each cell (ave). That’s slightly below the 3.7V nominal LiPo voltage, which will range from perhaps 4.2V fully charged to perhaps 3.1V when you cut the battery pack off. So at some point the driver won’t be able to do full current as the battery pack discharges. Is it good enough ?

Are you looking to build something like the above but with a wider range of allowed input voltages ? I stopped at the first place I found the looked semi-close to what you need. Perhaps a more fitting, pre-built solution can be found with more searching. There are lots of people selling high power LEDs and drivers that dim that go with them. There are boost drivers that can run a string of series LEDs with a single driver but I assumed your “five independent converters” meant 5 differing LEDs (wrg to brightness settings).

Thanks for the info. The FlexBlock from LED Supply maybe more appropriate then to ensure the Vf is adequate when I am down to 3.1-3.3 volts per cell. I am not a big fan of it because it is only 700mA constant current and is a little large.

For the Vf vs. I chart you listed, how does that actually come into play? Do I need to scale back the voltage to match the current being output? I have never really understood this chart.

fkatzenb:
For the Vf vs. I chart you listed, how does that actually come into play? Do I need to scale back the voltage to match the current being output? I have never really understood this chart.

If the LED was a resistor instead, that curve would obey Ohms law and so the relationship btw voltage and current would be a linear one. The curve would be a straight line, whose slope is the resistance. Pick a voltage (across the resistor) and see the current that would result. Or pick a current and see the voltage that would result.

It’s best to think of diodes/LEDs as current controlled devices. You inject current into them and get a voltage as a result. That curve is the relationship btw the voltage dropped across the LED with that current flowing through it. You can of course think to put a voltage across the LED and that’s the resulting current but people forget that curve is an average. Each LED will be slightly different and will change somewhat with temperature. If you look at the curve just a tiny change in voltage leads to a large change in current. If you get caught up thinking voltage applied to get current then you’ll be forever trying to account for these tiny voltage differences while trying a nearly constant current.

Think current through the LED and have the voltage pop out, and then design a circuit that is a current source. That’s what these LED drivers really do. They measure current (perhaps indirectly) and adjust as needed to get the desired current. So long as the input voltage is > than the resulting Vf across the LED, the circuit works.

So if I limit my LED to 1000mA, I would just need to ensure that my circuit is designed for 12.0volts.

fkatzenb:
So if I limit my LED to 1000mA, I would just need to ensure that my circuit is designed for 12.0volts.

Almost. You'll need 12V +/- a little on the output. What you need on the input is dependent on the circuitry. If you're going to use the driver mentioned above, you'll need 14+V from the battery pack. Then again you might be able to find a boost converter that runs off a lower voltage (but will then draw a larger current from whatever battery that is). Remember that :

Power out = Power in * efficiency

with Power = voltage * current and efficiency is typically 80 to 90 % for a switching boost (or buck) converter.