Varying the output of a buck converter

D

Daniel Towner

Guest
Hi,

I am using a buck converter, based on the Zetex 300 to drive a 3V, 1A
Luxeon LED from a 4*AA battery pack (Zetex design note 73). I want to
be able to have some control over the output of the buck converter so
that I can vary the light output. It doesn't need to be that fine
grained - two different power levels of 1A and 300mA would be
sufficient. At the moment, the entire circuit is switched on and off
using a PIC 16F682 controlling a power transistor. Obviously I could
build a buck circuit based on the PIC itself, but is there some easy
way of modifying the Zetex circuit itself so that I can vary its
output? Could I use two current sense resistors of different values,
and use transistors to determine which one is used as the current
sense for the Zetex 300?

thanks,

dan.
 
"Daniel Towner" <public@towner.org.uk> wrote in message
news:f716e658.0411151227.142e009a@posting.google.com...
Hi,

I am using a buck converter, based on the Zetex 300 to drive a 3V, 1A
Luxeon LED from a 4*AA battery pack (Zetex design note 73). I want to
be able to have some control over the output of the buck converter so
that I can vary the light output. It doesn't need to be that fine
grained - two different power levels of 1A and 300mA would be
sufficient. At the moment, the entire circuit is switched on and off
using a PIC 16F682 controlling a power transistor. Obviously I could
build a buck circuit based on the PIC itself, but is there some easy
way of modifying the Zetex circuit itself so that I can vary its
output? Could I use two current sense resistors of different values,
and use transistors to determine which one is used as the current
sense for the Zetex 300?

thanks,

dan.
Instead of tying the current sense resistor into the ISNS pin directly use
something like a 100R series resistor. Then inject current into the ISNS pin
through another resistor from the battery.

bat
_____
|
|
|
\
/
\
/ /
| | |/
DRV |----|----------------|\
| | | \
| | 100R |
ISNS|----'------/\/\/\-------|
| |
/
\
/
\
|
'
---

DNA
 
John Fields <jfields@austininstruments.com> wrote in message news:<c46ip05klv1uoano7tie4ctjvhjef83f58@4ax.com>...
On 15 Nov 2004 12:27:53 -0800, public@towner.org.uk (Daniel Towner)
wrote:

Hi,

I am using a buck converter, based on the Zetex 300 to drive a 3V, 1A
Luxeon LED from a 4*AA battery pack (Zetex design note 73). I want to
be able to have some control over the output of the buck converter so
that I can vary the light output. It doesn't need to be that fine
grained - two different power levels of 1A and 300mA would be
sufficient. At the moment, the entire circuit is switched on and off
using a PIC 16F682 controlling a power transistor. Obviously I could
build a buck circuit based on the PIC itself, but is there some easy
way of modifying the Zetex circuit itself so that I can vary its
output? Could I use two current sense resistors of different values,
and use transistors to determine which one is used as the current
sense for the Zetex 300?

---
It seems like it would be possible, but because of the low value of
the sense resistor you'd need to use something like a MOSFET with a
very low Rds ON as the switch.
As long as I didn't include the transistor in series with the sense
resistor (i.e., measure across the sense resistor only, and not across
the sense resistor and the transistor) does the Rds On matter?

Would the following work (fixed font required, T = switch transistor,
is = current sense pin, Rs = current sense resistor). After passing
through the load the current would go through one or other sense
resistor, depending upon how the transistors are switched. The isense
pin then measures the voltage drop across sense resistor only, and the
transistors RdsON isn't relevent?

|
Load
|
---------
| |
T T
| |
| |
---- |
is--| | |
---^-------|
| |
Rs Rs
| |
---------
|
Gnd

What values of sense resistor do you need for the two different LED
currents?
0.02R and 0.06R for 1A and 300mA respectively.

thanks,

dan.
 
Daniel Towner wrote...
John Fields wrote ...
Daniel Towner wrote:

I am using a buck converter, based on the Zetex 300 to drive a 3V,
1A Luxeon LED from a 4*AA battery pack (Zetex design note 73). I
want to be able to have some control over the output of the buck
converter so that I can vary the light output. It doesn't need to
be that fine grained - two different power levels of 1A and 300mA
would be sufficient. ... Could I use two current sense resistors
of different values, and use transistors to determine which one is
used as the current sense for the Zetex 300?

It seems like it would be possible, but because of the low value of
the sense resistor you'd need to use something like a MOSFET with a
very low Rds ON as the switch.

As long as I didn't include the transistor in series with the sense
resistor (i.e., measure across the sense resistor only, and not
across the sense resistor and the transistor) does the Rds On matter?

Would the following work (fixed font required, T = switch transistor,
is = current sense pin, Rs = current sense resistor). After passing
through the load the current would go through one or other sense
resistor, depending upon how the transistors are switched. The isense
pin then measures the voltage drop across sense resistor only, and
the transistors RdsON isn't relevent?

|
Load
|
---------
| |
T T
| |
| |
---- |
is--| | |
---^-------|
| |
Rs Rs
| |
---------
|
Gnd

What values of sense resistor do you need for the two different
LED currents?

0.02R and 0.06R for 1A and 300mA respectively.
No need to have two transistors and/or two values of current-sense
resistor. I'd use a single current-sense resistor, yielding 19mV
for the ZXSC300 sense input at the low LED-current peak, e.g. 0.063
ohms for 300mA (assuming L is large enough for a ~ steady continuous
current, see an44), and switch to an attenuated version of the sense
voltage to obtain your desired higher LED current level. You can
use a single transistor to select, avoiding a cmos SPDT switch IC.

..
.. Vin one of more LEDs two-setting current-regulated
.. ----+--+--|>|--|>|--|>|--+--, efficient LED switching supply
.. | '-----||----------' |
.. +-----------|<|---------+
.. | Schottky _|_inductor
.. +_|_BFC |___|
.. --- _____ZXSC300 |
.. | | | |--D
.. ---|---|Vcc |-------G |<-
.. | | | |--S Q1
.. | | | sense | logic-level FET
.. | |______|---------, | ZXMN2A14F, etc
.. | | Rs 0.05 | |
.. '------+---+--/\/\---|--+-----,
.. Vreturn | R1 100 | R2 200 |
.. -------------+--/\/\--++--/\/\--+
.. | |
.. '--S D--'
.. G Q2 2n7002
.. |
.. control

In this example, a HI on the control line to the Q2 gate shorts R2
and the Rs sense voltage appears at the ZXSC300 current sense input.
And a LO on Q2's gate lets R2 R1 attenuate Rs voltage by 3x, thereby
increasing the current-peak sense voltage by 3x from 20mV to 60mV.
The higher 60mV drop on the sense resistor is still an insignificant
degradation to the circuit's overall efficiency.

BTW, Zetex's new ZXMN2A14F sot23 MOSFET is better suited for driving
high-current Luxeons than the ZXMN2A01F they suggested in DN73. It
is available from DigiKey at 39 cents each, qty 100, 22 cents qty 3k.

The circuit can be modified to make an adjustable-current LED supply,
simulating a 600-milliohm pot in the version below. 0.6-ohm pots may
be available in spice simulations, but they are not in real life. :>)

..
.. Vin one of more LEDs adjustable current-regulated
.. ----+--+--|>|--|>|--|>|--+--, efficient LED switching supply
.. | '-----||----------' |
.. +-----------|<|---------+
.. | Schottky _|_inductor
.. +_|_BFC |___|
.. --- _____ZXSC300 |
.. | | | |--D
.. ---|---|Vcc |-------G |<-
.. | | | |--S Q1
.. | | | sense |
.. | |______|---------, +-----, cw
.. | | Rs 0.10 | | |
.. '------+---+--/\/\---|--+---> pot
.. Vreturn | R1 100 | | R2 500
.. -------------+--/\/\---+--------'


--
Thanks,
- Win
 
Fred Bloggs wrote...
You may have a problem with your diode placement....
Thanks, Fred.

..
.. Vin one of more LEDs two-setting current-regulated
.. ----+--+--|>|--|>|--|>|--+--, efficient LED switching supply
.. | +-----||----------' _|_
.. | | |___|
.. | | Schottky | inductor
.. | '--------|<|---------+
.. +_|_BFC |
.. --- _____ZXSC300 |
.. | | | |--D
.. ---|---|Vcc |-------G |<-
.. | | | |--S Q1
.. | | | sense | logic-level FET
.. | |______|---------, | ZXMN2A14F, etc
.. | | Rs 0.05 | |
.. '------+---+--/\/\---|--+-----,
.. Vreturn | R1 100 | R2 200 |
.. -------------+--/\/\--++--/\/\--+
.. | |
.. '--S D--'
.. G Q2 2n7002
.. |
.. control

and again,

..
.. Vin one of more LEDs adjustable current-regulated
.. ----+--+--|>|--|>|--|>|--+--, efficient LED switching supply
.. | +-----||----------' _|_
.. | | |___|
.. | | Schottky | inductor
.. | '--------|<|---------+
.. +_|_BFC |
.. --- _____ZXSC300 |
.. | | | |--D
.. ---|---|Vcc |-------G |<-
.. | | | |--S Q1
.. | | | sense |
.. | |______|---------, +-----, cw
.. | | Rs 0.10 | | |
.. '------+---+--/\/\---|--+---> pot
.. Vreturn | R1 100 | | R2 500
.. -------------+--/\/\---+--------'


--
Thanks,
- Win
 
On 16 Nov 2004 04:16:04 -0800, Winfield Hill
<hill_a@t_rowland-dotties-harvard-dot.s-edu> wrote:

Daniel Towner wrote...
John Fields wrote ...
Daniel Towner wrote:

I am using a buck converter, based on the Zetex 300 to drive a 3V,
1A Luxeon LED from a 4*AA battery pack (Zetex design note 73). I
want to be able to have some control over the output of the buck
converter so that I can vary the light output. It doesn't need to
be that fine grained - two different power levels of 1A and 300mA
would be sufficient. ... Could I use two current sense resistors
of different values, and use transistors to determine which one is
used as the current sense for the Zetex 300?

It seems like it would be possible, but because of the low value of
the sense resistor you'd need to use something like a MOSFET with a
very low Rds ON as the switch.

As long as I didn't include the transistor in series with the sense
resistor (i.e., measure across the sense resistor only, and not
across the sense resistor and the transistor) does the Rds On matter?

Would the following work (fixed font required, T = switch transistor,
is = current sense pin, Rs = current sense resistor). After passing
through the load the current would go through one or other sense
resistor, depending upon how the transistors are switched. The isense
pin then measures the voltage drop across sense resistor only, and
the transistors RdsON isn't relevent?

|
Load
|
---------
| |
T T
| |
| |
---- |
is--| | |
---^-------|
| |
Rs Rs
| |
---------
|
Gnd

What values of sense resistor do you need for the two different
LED currents?

0.02R and 0.06R for 1A and 300mA respectively.

No need to have two transistors and/or two values of current-sense
resistor. I'd use a single current-sense resistor, yielding 19mV
for the ZXSC300 sense input at the low LED-current peak, e.g. 0.063
ohms for 300mA (assuming L is large enough for a ~ steady continuous
current, see an44), and switch to an attenuated version of the sense
voltage to obtain your desired higher LED current level. You can
use a single transistor to select, avoiding a cmos SPDT switch IC.

.
. Vin one of more LEDs two-setting current-regulated
. ----+--+--|>|--|>|--|>|--+--, efficient LED switching supply
. | '-----||----------' |
. +-----------|<|---------+
. | Schottky _|_inductor
. +_|_BFC |___|
. --- _____ZXSC300 |
. | | | |--D
. ---|---|Vcc |-------G |<-
. | | | |--S Q1
. | | | sense | logic-level FET
. | |______|---------, | ZXMN2A14F, etc
. | | Rs 0.05 | |
. '------+---+--/\/\---|--+-----,
. Vreturn | R1 100 | R2 200 |
. -------------+--/\/\--++--/\/\--+
. | |
. '--S D--'
. G Q2 2n7002
. |
. control

In this example, a HI on the control line to the Q2 gate shorts R2
and the Rs sense voltage appears at the ZXSC300 current sense input.
And a LO on Q2's gate lets R2 R1 attenuate Rs voltage by 3x, thereby
increasing the current-peak sense voltage by 3x from 20mV to 60mV.
The higher 60mV drop on the sense resistor is still an insignificant
degradation to the circuit's overall efficiency.
---
I sense a problem in that the OP stated that a 20 milliohm sense
resistor is required for a 1 amp output and a 60 milliohm resistor for
300 mA out.

I assume those values are empirical, they work and, if they're
accurate, yield a voltage drop of


E = IR = 1A * 0.02R = 0.02V


for the 1 amp case, and


E = IR = 0.3A * 0.06R = 0.018V


for the 300mA case.



Your circuit:

Iin>----+-------+------> |
| | |
| [200R] O
| |R2 |
[0.05R] +--------+----->Eout
|R1 |
| [100R]
| |R3
Iout<---+-------+-------------->0V


which, with the switch closed, should result in a total sense
resistance of 0.02 ohms for the 1 amp case, doesn't.

Instead, it yields:

R1 R3 0.05 * 100
Rt = --------- = ------------ = 0.04997 ohms
R1 + R3 0.05 + 100


which would result in an output current of substantially less that 1A
WRT the OP's numbers.


With the switch open and Eout = 0.018V (in order to satisfy the sense
voltage requirement 300mA case) the voltage at Iin would have to be:



Eout (R2 + R3) 0.018V * 300R
V(Iin) = --------------- = --------------- = 0.054V
R3 100R

and the current through the string:

E 0.054V
I = ---- = -------- = 180ľA
Rt 300R



Now, in order for 0.054V to be dropped across the 50 milliohm sense
resistor, the current through it would have to be:


E 0.054V
I = ---- = -------- = 1.08A
R 0.05R


Since the sense resistor and the R2R3 string are in parallel, and that
total resistance is in series with the load, the current flowing in
the load must be equal to the sum of the currents flowing through the
sense resitor and the R2R3 string, 1.08018A, which is substantially
higher than 300mA!

--
John Fields
 
I am using a buck converter, based on the Zetex 300 to drive a 3V, 1A
Luxeon LED from a 4*AA battery pack (Zetex design note 73). I want to
be able to have some control over the output of the buck converter so
that I can vary the light output. It doesn't need to be that fine
grained - two different power levels of 1A and 300mA would be
sufficient. At the moment, the entire circuit is switched on and off
using a PIC 16F682 controlling a power transistor. Obviously I could
build a buck circuit based on the PIC itself, but is there some easy
way of modifying the Zetex circuit itself so that I can vary its
output? Could I use two current sense resistors of different values,
and use transistors to determine which one is used as the current
sense for the Zetex 300?

thanks,

dan.
View in a fixed-width font such as Courier.


This is a PFM controller with fixed off time T =1.7us
off


and because V must steady state to 0VDC :
L


(V - V ) x T = (V - V ) x T
batt led on led d off


- or -



V - V
led d
T = ------------- x T
on V - V off
batt led





1 1
Then Frequency= ------------------ x -----
V - V T
led d off
----------- + 1
V - V
batt led



Taking V =3V V =0.5V V =6V T = 1.7us makes
led d batt off



Frequency= 320KHz which exceeds the maximum F =200KHz
max



So that application circuit is not good and it explains


why their component values don't add up- because they are


relying on some fudge delays and possibly other things-


like that high power LED going into the ohmic region. But


this most likely will NOT work at your dimmed 300mA. This


means the LED will not dim as expected because the ZXSC300


cannot turn off fast enough. The most direct fix would be


to externally extend T by shorting that V pin.
off drive
 
On 15 Nov 2004 12:27:53 -0800, public@towner.org.uk (Daniel Towner)
wrote:

Hi,

I am using a buck converter, based on the Zetex 300 to drive a 3V, 1A
Luxeon LED from a 4*AA battery pack (Zetex design note 73). I want to
be able to have some control over the output of the buck converter so
that I can vary the light output. It doesn't need to be that fine
grained - two different power levels of 1A and 300mA would be
sufficient. At the moment, the entire circuit is switched on and off
using a PIC 16F682 controlling a power transistor. Obviously I could
build a buck circuit based on the PIC itself, but is there some easy
way of modifying the Zetex circuit itself so that I can vary its
output? Could I use two current sense resistors of different values,
and use transistors to determine which one is used as the current
sense for the Zetex 300?
---
It seems like it would be possible, but because of the low value of
the sense resistor you'd need to use something like a MOSFET with a
very low Rds ON as the switch.

What values of sense resistor do you need for the two different LED
currents?

--
John Fields
 
On 16 Nov 2004 02:05:31 -0800, public@towner.org.uk (Daniel Towner)
wrote:


As long as I didn't include the transistor in series with the sense
resistor (i.e., measure across the sense resistor only, and not across
the sense resistor and the transistor) does the Rds On matter?

Would the following work (fixed font required, T = switch transistor,
is = current sense pin, Rs = current sense resistor). After passing
through the load the current would go through one or other sense
resistor, depending upon how the transistors are switched. The isense
pin then measures the voltage drop across sense resistor only, and the
transistors RdsON isn't relevent?

|
Load
|
---------
| |
T T
| |
| |
---- |
is--| | |
---^-------|
| |
Rs Rs
| |
---------
|
Gnd
---
That won't work because the two sense resistors are in parallel no
matter what you do with the switches, so the voltage at 'is' will be
the same for any particular value of load current whether either or
both of the switches are on!

Win's way looks like it may be part of the solution, since it
essentially gets rid of the switch resistance, but it may have
problems. (See my reply to his post)

What values of sense resistor do you need for the two different LED
currents?

0.02R and 0.06R for 1A and 300mA respectively.
---
After reading Fred's post, are these values that you've tried and that
work the way you want them to?

Perhaps you can post a schematic of what your circuit looks like?

--
John Fields
 

Welcome to EDABoard.com

Sponsor

Back
Top