Joule Thief - still not working....

Jon Kirwan wrote:

)

This isn't what you came up with.
What I came up with didn't involve frequency or L,
so it's hard to tell at first glance. Let's try to
find out whether they're equivalent...

Consideration of the charging and discharging times
of the inductor gives

t_on = L * I / Vin

t_off = L * I / Vout

for a total period

t_total = t_on + t_off

= L * I * (1/Vin + 1/Vout)

Defining

N = Vout / Vin

we have

t_total = L * I * (N/Vout + 1/Vout)

= L * I * (N + 1) / Vout

Substituting into

Ic_peak^2 = 2 * Vout * Iout * t_total / L

we get

Ic_peak^2 = 2 * Vout * Iout * L * I * (N + 1) / (Vout * L)

which cancels to give

Ic_peak = 2 * Iout * (N + 1)

which I'm relieved to find is not entirely dissimilar
to what I came up with before. :)

Now assume for a moment that the capacitor is 'somewhat smaller' and
that there is some change in voltage during operation
Considering those sorts of effects will complicate things,
of course. But the above should be good enough to get
a first approximation of the Ic_peak you need to aim
for, I think.

It's about accounting for energy, not accounting for current.
Sure, that's another way of approaching it. The way
I derived it short-circuits any consideration of
frequency or inductance, though, and gets there more
directly.

Of course, I'm a hobbyist.
So am I, and I'm learning things from all this too.
Wouldn't still be following the thread if I wasn't!

--
Greg
 
John Larkin wrote:

Without a capacitor in the base circuit, it's hard to determine the
on/off duty cycle. If it runs in continuous mode and the duty cycle is
not exactly right, huge currents can accumulate in the inductor,
limited by beta, and the transistor will fry.
I don't see how that can happen. The off-time
will be just what is needed to reduce the current
in the inductor back to zero.

So it doesn't matter that you can't control the
on and off times separately, because you don't
need to, or even want to. The duty cycle takes
care of itself.

--
Greg
 
fungus wrote:
With the ferrite bead the current through the
LEDs drops off as the number of turns of wire increases.
With seven turns I get 12mA ... with 30 turns I only get 1mA.

For comparison I just tried one of my iron powder rings
and I got completely the *opposite* effect - more turns
gave more output current.
Are you altering the number of turns on both
windings together, or only on one winding?

Theoretically, if you change the number of turns
on both windings by the same amount, and leave
everything else the same, there should be no
change in the output current -- the only thing
that should happen is a change in frequency.

However, this assumes that the core doesn't
saturate, the transistor doesn't run into some
operating limit, etc.

Without looking at waveforms, it's going to be
hard to make any headway on understanding what's
really going on in your circuit.

nb. The transistor was getting hotter with every extra turn
That doesn't sound good.

despite the oscillation frequency going down
Are you certain that the frequency *is* actually
going down, or are you just assuming that? Can
you tell what the frequency actually is?

It seems that transistor temperature
is more strongly related to output current than frequency.
You can expect some increase in temperature with
current, because Vce won't be *exactly* zero even
with the transistor turned hard on, so it will
dissipate some power. But again, without seeing
waveforms, it's impossible to tell whether this is
the major contributor to your transistor heating
problem or not.

What would happen if I put two transistors in parallel? Would the
load be halved or would differences in manufacturing tolerance
mean one of them took most of the load?
When putting BJTs in parallel, you need to put a
small resistor in series with each emitter to make
sure they share the current equally.

However, before doing this, it would be better to
find out why the transistor is getting hot, otherwise
you risk treating the symptom rather than the
real cause.

PS: FWIW I measured the efficiency of this new circuit and it
was 61% - a bit better that the 55% I get with a ferrite circuit
with has similar output
Yeah, but it means 39% is still going somewhere other
than the LEDs, and it sounds like most of it is ending
up in your transistor. :-(

--
Greg
 
fungus wrote:
Does it matter where R1 is, relative to L1?
Shouldn't make any difference that I can think of.
The only way it could matter would be through
changes in stray inductances and capacitances,
and that's not likely to be a problem at these
frequencies.

--
Greg
 
fungus wrote:

Aside: Does wire thickness make any difference?
At the frequencies you're using, all that matters is
keeping the resistance as low as possible, to
minimise losses. This means using as thick a wire as
you can while still fitting in the required number of
turns.

--
Greg
 
fungus wrote:

At the moment the voltage at the base of the transistor
ramps up as the inductor fills up.
Are you looking at this with a scope?

What does the voltage waveform between the collector
and emitter look like? That's the important thing with
regard to transistor dissipation.

Some variation in Vbe with collector current is
probably to be expected. It doesn't necessarily
indicate any inefficiency.

Vce, on the other hand, should be a sharp square
wave, otherwise you're not switching cleanly.

What if I add a zener diode before the base of the transistor
and a pull-down resistor between the base of the transistor
and ground.
No, that doesn't make much sense.

What *might* help is putting a small capacitor
across the base resistor, to give the base a small
"kick" at turn-on and turn-off. Not too big, though,
or it could cause problems of its own.

--
Greg
 
On Sat, 25 Jul 2009 20:54:51 +1200, greg <greg@cosc.canterbury.ac.nz>
wrote:

Jon Kirwan wrote:

Ic_peak = SQRT(2 * V_out * I_out / [frequency * L])

This isn't what you came up with.

What I came up with didn't involve frequency or L,
so it's hard to tell at first glance. Let's try to
find out whether they're equivalent...

Consideration of the charging and discharging times
of the inductor gives

t_on = L * I / Vin

t_off = L * I / Vout

for a total period

t_total = t_on + t_off

= L * I * (1/Vin + 1/Vout)

Defining

N = Vout / Vin

we have

t_total = L * I * (N/Vout + 1/Vout)

= L * I * (N + 1) / Vout

Substituting into

Ic_peak^2 = 2 * Vout * Iout * t_total / L

we get

Ic_peak^2 = 2 * Vout * Iout * L * I * (N + 1) / (Vout * L)

which cancels to give

Ic_peak = 2 * Iout * (N + 1)

which I'm relieved to find is not entirely dissimilar
to what I came up with before. :)

Now assume for a moment that the capacitor is 'somewhat smaller' and
that there is some change in voltage during operation

Considering those sorts of effects will complicate things,
of course. But the above should be good enough to get
a first approximation of the Ic_peak you need to aim
for, I think.

It's about accounting for energy, not accounting for current.

Sure, that's another way of approaching it. The way
I derived it short-circuits any consideration of
frequency or inductance, though, and gets there more
directly.

Of course, I'm a hobbyist.

So am I, and I'm learning things from all this too.
Wouldn't still be following the thread if I wasn't!
Well, this is indeed fun. So I did some more thinking about it and I
agree with you. Case closed!

A design can now start with the computation of Ic_peak. I'd modify
your N in this way, when there is a freewheeling diode (Vd) present
and taking into account the average Vcesat value (say 0.1V):

N = (Vout+Vd-Vcesat)/(Vin-Vcesat)

That's very close to your own definition, but I think this one covers
a little more ground.

An interesting thing about all this is that the peak Ic value doesn't
care about the transformer inductance -- which you can change around
all you like and still get the same energy delivered per unit time. So
the frequency can be selected independently, at will. Very nice.

So here goes. Inputs are Vout, Iout, Vd (for a schottky diode likely
around .35V), Vcesat (probably a midpoint value between 0V and 0.2V,
or 0.1V), and the frequency of operation, f.

N = (Vout+Vd-Vcesat)/(Vin-Vcesat)
Ic_peak = 2 * Iout * (N + 1)
Lprimary = (Vin-Vcesat)*(Vout+Vd-Vin)/(Ic_peak*(Vout+Vd-Vcesat)*f)
Lsecondary = Lprimary ... unless you want to change this, of course.

Now look up Ic_peak on your BJT datasheet to find estimated Vbe and
beta. Assuming Lprimary=Lsecondary and a new value that is the lowest
possible Vce where the BJT beta is still close to the value picked off
the datasheet, which I'll call Vce_beta and where I usually use a
value that is equal to Vbeon. (The reasoning here is that the beta
picked off the datasheet is usually for Vce=1V. If you want, you can
plug in 1V instead of setting Vce_beta=Vbeon, though.)

Rbase = beta*(2*Vin-Vbeon-Vce_beta)/Ic_peak
= 2*beta*(Vin-Vbeon)/Ic_peak [if Vce_beta=Vbeon]

This should get pretty close, I think.

....

So, let's try some values. Assume that these 3.3V LEDs are stacked
six up, for 19.8V... call it 20V. Let's assume for a moment that at
20V for the stack, there is 30mA (I'm calling it a bit high just for
fun) flowing through them (assume this is validated with a simple
test.) And let's assume Vcesat(avg) = 0.1V, Vd=.35V (schottky used),
and Vin=4.5V (three fresh batteries.)

N = (20+.35-.1)/(4.5-.1) = ~4.6
Ic_peak = 2*30mA*(N+1) = ~340mA

Figure a frequency of 100kHz:

Lprimary = (4.5-.1)*(20+.35-4.5)/(340mA*(20+.35-.1)*1e5) = ~100uH

Now the resistor. Looking at the 2N2222 datasheet for Ic=340mA, I see
that Vbeon=0.86V and beta reads out 90 at 25C and Vce=1V.

Rbase = 2*90*(4.5-0.86)/340mA = ~2kOhm

The other bound on this is to look at where the beta is at, at lower
currents -- about 200, or so. If that were the case,

Rbase = 2*200*(4.5-0.86)/340mA = ~4.3kOhm

I'd probably start with something like 3.3k and work up or down from
there. Split the difference. Then tweak Rbase until Ic_peak is where
I need it to be (or where the LED current is about right.)

Jon
 
On Jul 25, 7:48 am, ehsjr <eh...@NOSPAMverizon.net> wrote:
The site you reference below, shows the joule thief producing
BELOW 15 mA for every datapoint.
That's because the transistor dies if I go much higher... :-(
 
On Jul 25, 11:35 am, greg <g...@cosc.canterbury.ac.nz> wrote:
What does the voltage waveform between the collector
and emitter look like? That's the important thing with
regard to transistor dissipation.
Looks like this: http://www.artlum.com/jt/b_to_e.gif

It's running at about 166kHz.
 
Jon Kirwan wrote:
On Fri, 24 Jul 2009 08:51:39 -0700, John Larkin
jjlarkin@highNOTlandTHIStechnologyPART.com> wrote:
<snip>

At any
rate, the value of R influences both the ON time and the OFF time.
<snip>

The OFF time is NOT determined by R1, so far as I can tell.
John Larkin is right.

Go to the bench, put a variable R in the base circuit
and observe for yourself.

By the way, did you ever build the air core version?
It eliminates core saturation from consideration when
trying to understand how the circuit functions.

Ed
 
On Jul 25, 2:55 pm, fungus <openglMYSO...@artlum.com> wrote:
On Jul 25, 11:35 am, greg <g...@cosc.canterbury.ac.nz> wrote:



What does the voltage waveform between the collector
and emitter look like? That's the important thing with
regard to transistor dissipation.

Looks like this:http://www.artlum.com/jt/b_to_e.gif

It's running at about 166kHz.
More info...

The total power being drawn is about 400mW (105mA at 3.8V)
and there's about 220mW going through the LEDs (13mA at 16.6V)
so the missing power, ie. 180mW must be going through the
transistor (it's the only other path to ground).

The wave in that pic has about a 20% duty cycle. Does that mean
that about 45mW is being converted to heat by the transistor?
 
On Sat, 25 Jul 2009 20:59:56 +1200, greg <greg@cosc.canterbury.ac.nz>
wrote:

John Larkin wrote:

Without a capacitor in the base circuit, it's hard to determine the
on/off duty cycle. If it runs in continuous mode and the duty cycle is
not exactly right, huge currents can accumulate in the inductor,
limited by beta, and the transistor will fry.

I don't see how that can happen. The off-time
will be just what is needed to reduce the current
in the inductor back to zero.

So it doesn't matter that you can't control the
on and off times separately, because you don't
need to, or even want to. The duty cycle takes
care of itself.
If you get the turns ratio right, it does. If the base winding doesn't
produce enough turnoff voltage (ie its negative peak doesn't exceed
Vbatt) the transistor doesn't totally turn off and efficiency will be
rotten. If the turns ratio is too high, the transistor will zener and
beta will degrade over time. If it's just right, R1 will see a lot of
voltage when it's pumping the base of the transistor (Vbatt +
Vtransformer - 0.7) and will waste a lot of power. Terrible circuit,
especially as the battery goes past a single cell. Leakage inductance
and ringing and variation in battery voltage and various boost ratios
will make it worse.

One improvement is to drive one end of the feedback winding from a
voltage divider. That way, you can use a much higher turns ratio,
reduce the feedback winding voltage, use a much lower R, and get most
of the base current from ground, not from V+. There's a diode trick
that's even better.

John
 
On Sat, 25 Jul 2009 06:43:07 -0700 (PDT), fungus
<openglMYSOCKS@artlum.com> wrote:

On Jul 25, 2:55 pm, fungus <openglMYSO...@artlum.com> wrote:
On Jul 25, 11:35 am, greg <g...@cosc.canterbury.ac.nz> wrote:



What does the voltage waveform between the collector
and emitter look like? That's the important thing with
regard to transistor dissipation.

Looks like this:http://www.artlum.com/jt/b_to_e.gif

It's running at about 166kHz.

More info...

The total power being drawn is about 400mW (105mA at 3.8V)
and there's about 220mW going through the LEDs (13mA at 16.6V)
so the missing power, ie. 180mW must be going through the
transistor (it's the only other path to ground).

The wave in that pic has about a 20% duty cycle. Does that mean
that about 45mW is being converted to heat by the transistor?
That looks way too "clean." What is the bandwidth of your scope?
Blocking oscillators are notorious for producing overshoot,
undershoot, and ringing.

If the transistor heats that's where most of the waste power is going.
You can't always count on a digital meter to give accurate readings in
circuits where there are non-sinusoidal wave forms. Even when
measuring what are assumed to be DC readings.
--
 
On Sat, 25 Jul 2009 07:48:45 -0700 (PDT), fungus
<openglMYSOCKS@artlum.com> wrote:

I think we can definitely assume that the ferrite was
saturating or something
Probably "or something."

Iron powder usually has way more permeability than ferrite - ferrites
claim to fame is it is more permeable than air and able to handle high
frequencies with lower loss. Some iron powder alloys can go to 100's
of megahertz, but iron is usually used in the kilohertz range.

In any event, when you select a core you are selecting for the
characteristics you need - and it is usually more accurate to say
"magnetic material, or magnetic material mix" than iron or ferrite.
--
 
fungus wrote:

<snip>

This also assuming we can solve the transistor heating problem.
What would happen if I put two transistors in parallel? Would the
load be halved or would differences in manufacturing tolerance
mean one of them took most of the load?
One could take the whole load. You can overcome that problem by
putting a small resistance in the emitter circuit of each
transistor.
Vcc
|
[Rload]
|
+-----+-----+
| |
\c c/
|---+---|
/e | e\
| Ib |
[R1] [R2]
| |
Gnd -------+-----------+

When one transistor tries to conduct more current than
the other, the current through its emitter resistor
causes the voltage at its emitter to rise. That reduces
Vbe, which causes the transistor to conduct less current.

If you use 1 ohm resistors for R1 and R2, it will give
you a convenient measurement point. The voltage across
the resistor will equal the current through the transistor.

Ed
the 1 ohm resistor will read in miliamps



PS: FWIW I measured the efficiency of this new circuit and it
was 61% - a bit better that the 55% I get with a ferrite circuit
with has similar output


[*] PC PSUs are a real goldmine of parts if you really get in
there....
 
greg wrote:
whit3rd wrote:

That kind of oscillator (blocking oscillator) depends on saturation
of the core


Actually, no. That's what I thought at first, but
Jon pointed out that the Joule Thief most likely
works by a different mechanism.

The collector current rises until it reaches the
maximum supportable by the base current, which
depends on the induced voltage in the base winding
and the base resistor. Then the collector voltage
begins to rise, whereupon positive feedback via
the base winding causes the transistor to turn
off sharply.

So the on-time depends on the feedback ratio, the
base resistor and the beta of the transistor. The
latter is rather unpredictable, so you have to
adjust the base resistor by experiment to get the
result you want.

I've speculated that a version of the Joule Thief
circuit could be designed to work by core saturation,
and that the results would be more predictable.
But I don't know of anyone who's actually built one
that way yet.
It works by transistor saturation, not core saturation.
A saturated inductor will take more current, as long as
the transistor is capable of pumping more current into
the inductor. As long as the current continues to flow
in the same direction, there is no polarity reversal
and no pulse created.

Ed
 
On Jul 25, 1:38 pm, Jon Kirwan <j...@infinitefactors.org> wrote:
I'd probably start with something like 3.3k and work up or down from
there.  Split the difference.  Then tweak Rbase until Ic_peak is where
I need it to be (or where the LED current is about right.)
I've always had doubts about this theory because I tried
a variable resistor and it didn't do much.

But ... I just tried it with my new iron powder bead and it
works! I can dial the LED current up and down beautifully.

On my circuit I got 20mA at around 400 Ohms, lower than
that and it went towards 30mA but then I chickened out
because I was scared about my transistor.

I think we can definitely assume that the ferrite was
saturating or something and that we haven't found the
limits of the iron powder yet. I need to try the thin wire
and put a lot of turns on one until I find where it hits
the maximum.
 
On Sat, 25 Jul 2009 15:40:36 GMT, ehsjr <ehsjr@NOSPAMverizon.net>
wrote:

Jon Kirwan wrote:
On Fri, 24 Jul 2009 08:51:39 -0700, John Larkin
jjlarkin@highNOTlandTHIStechnologyPART.com> wrote:


snip

At any
rate, the value of R influences both the ON time and the OFF time.

snip

The OFF time is NOT determined by R1, so far as I can tell.

John Larkin is right.
In the sense that Ic_peak is higher. The off time equation is:

t_off = Ic_peak * Lprimary / (Vout + Vschottky - Vbattery)
t_on = Ic_peak * Lprimary / (Vbattery - Vcesat)

I suppose I failed to follow John's point because I was looking at
these as separate processes and the fact that while frequency is
indeed influenced by Rbase, that it isn't important because it is also
influenced by Lprimary and that can be adjusted, as needed.

So I like to look at the design process here as choosing the necessary
Ic_peak from what greg and I were talking about earlier:

N = (Vout+Vd-Vcesat)/(Vin-Vcesat)
Ic_peak = 2 * Iout * (N + 1)

And then using Lprimary by selecting a desired 'f':

Lprimary = (Vin-Vcesat)*(Vout+Vd-Vin)/(Ic_peak*(Vout+Vd-Vcesat)*f)

Rbase isn't selected due to off time, on time, etc., but instead based
upon the BJT and Ic_peak:

Rbase = 2*beta*(Vin-Vbeon)/Ic_peak

In other words, the ratio of OFF time to OFF+ON time is already cast
in concrete by the desired output voltage and the available input
voltage. That's a done deal. Ic_peak is then set by the desired
Iout, taking into account that required ratio. Lprimary is used to
then tweak in the desired frequency of operation (wind or unwind, as
needed.) And then Rbase is designed to compensate for the BJT's
operating beta and the design Ic_peak (tweak up or down, as needed.)

The frequency of operation, within practical bounds set by volt-secs
and reverse transit times to name two, has no apparent impact on power
out. Ic_peak, itself a function of both Vout and Iout, is established
by that. So the frequency (if you only use Lprimary windings to
adjust it) can be moved around independently without changing Ic_peak,
as Rbase has already fixed that in place.

I was so focused on that aspect of it that I didn't realize John was
talking at cross purposes to where my mind was mired.

Go to the bench, put a variable R in the base circuit
and observe for yourself.

By the way, did you ever build the air core version?
It eliminates core saturation from consideration when
trying to understand how the circuit functions.
I will try and get some time to do that, today. Actually, I just
wound up some various ferrite cores, as well (7 of them.) What I
don't have handy

Jon
 
On Sat, 25 Jul 2009 18:38:34 GMT, Jon Kirwan
<jonk@infinitefactors.org> wrote:

What I don't have handy
....is a way to measure inductance. (Never bought such a tool.) But
actually, I can approximate that by observing frequency of operation.

Jon
 
On Sat, 25 Jul 2009 18:38:34 GMT, Jon Kirwan
<jonk@infinitefactors.org> wrote:

On Sat, 25 Jul 2009 15:40:36 GMT, ehsjr <ehsjr@NOSPAMverizon.net
wrote:

Jon Kirwan wrote:
On Fri, 24 Jul 2009 08:51:39 -0700, John Larkin
jjlarkin@highNOTlandTHIStechnologyPART.com> wrote:


snip

At any
rate, the value of R influences both the ON time and the OFF time.

snip

The OFF time is NOT determined by R1, so far as I can tell.

John Larkin is right.

In the sense that Ic_peak is higher. The off time equation is:

t_off = Ic_peak * Lprimary / (Vout + Vschottky - Vbattery)
t_on = Ic_peak * Lprimary / (Vbattery - Vcesat)

I suppose I failed to follow John's point because I was looking at
these as separate processes and the fact that while frequency is
indeed influenced by Rbase, that it isn't important because it is also
influenced by Lprimary and that can be adjusted, as needed.

So I like to look at the design process here as choosing the necessary
Ic_peak from what greg and I were talking about earlier:

N = (Vout+Vd-Vcesat)/(Vin-Vcesat)
Ic_peak = 2 * Iout * (N + 1)

And then using Lprimary by selecting a desired 'f':

Lprimary = (Vin-Vcesat)*(Vout+Vd-Vin)/(Ic_peak*(Vout+Vd-Vcesat)*f)

Rbase isn't selected due to off time, on time, etc., but instead based
upon the BJT and Ic_peak:

Rbase = 2*beta*(Vin-Vbeon)/Ic_peak
That's the thing I don't like about this circuit, the large value of
Rb, which wastes power and seriously slows down transistor switching
time, wasting more power. All this gets worse as Vin increases.

Transistor turnoff is especially ugly.

The base only needs 0.7 volts or so; it's silly to get that from a 5
volt supply, or more like 10 when the transformer feedback winding
signal is added.

John
 

Welcome to EDABoard.com

Sponsor

Back
Top