Re: Simple 555 PWM - disappointing performance



Herbert Blenner wrote:
Replace Q1 with a PNP transistor in common collection configuration.
Now this circuit can take advantage of the sizable current sink
capability of the 555 timer. Further since you are now switching
voltage across the motor,  D1 is not needed.


Thanks, Herbert, but according to the LM555 data***, a 555 "output
can source or sink 200 mA."

and besides, he is completely wrong about the "dont need the diode",
which of course you still do. The diode is placed to ensure the motor
current has somewhere to commutate to when the switch turns off. for a
pnp switch, the pnp collector goes to the motor and the cathode of the
diode; the other end of the motor and the diode anode are at zero volts.

advice like that you can live without.


Connecting the emitter to the motor places the pnp transistor in a
common collector configuration. Hence the transistor approximates a
voltage switch. The current however will slew between on and off due to
the inductance of the motor.

thats a fairly piss-poor description, indicative of a deep lack of understanding.


---+-- +4V | [motor] | | | |/e 555--[R]-----| pnp |\c | ---+-- 0V


Dont forget the 555 runs from +15V.

When the 555 o/p pulls low, the motor turns on, but where does the
substantial base current required come from?


If my memory is correct, the output stage of the 555 has an open
collector and grounded emitter.  In this case a second resistor from
the 4 volt supply to the base of the pnp transistor would ensure prompt
turn off.
Alternately if the output stage of the 555 has active source and sink
stages then you must reconnect the timer to a lower voltage and omit
the second resistor.

Incorrect, its always been a totem-pole output stage (which is why 555's draw 300mA current spikes on each switching edge, as both totem-pole transistors momentarily conduct, hence the need for a hefty bypass cap right across the pins of the device). The totem-pole output can sink much more than it can source, for much the same disappearing Ibase reason as this terrible idea.


Since the output sinks more than it sources, the turnon base current in
a pnp transistor would be higher than with a npn unit.

*NO* not with the circuit as drawn, because the voltage across which the base current is developed, GETS SMALLER as the transistor turns on. This is because when the transistor turns on, Vce tends to zero (ish). Therefore Vbe tends to zero, and so does the voltage across Rbase (because the 555 output is at zero-ish)




I am not discussing turn off here at all, merely turn on. As the pnp turns on, the emitter voltage falls, therefore so does the base, therefore so does the voltage across the 555-to-base resistor.


Adjust the resistor to compensate for the change in voltage. The bottom
line is to get the base current up to the proper value.

this gets tricky, as the voltage across Rb changes a *lot* - from 4V or so at the onset of turn-on to a few hundred mV when the transistor is on (or at least as on as it gets)




my simulation shows this clearly, and I use an ideal voltage source (ie
one that can sink and source many trillions of amps)


As the emitter pulls down,
the voltage across Rbase drops, so Ibase drops, so PNP turns off.
Besides, even if we magically required almost no base current (eg
darlington, Ibase = 3A/10,000 = 300uA) the emitter will *always* be Vbe
above the base, losing a large chunk of the available 4V supply. The
reducing base drive "feature" of this POS *forces* the transistor to
dissipate far more power than it would if switched properly.


You forget that bipolar transistors are not the only kind.

*you* said "Replace Q1 with a PNP transistor"

please explain to me how I can have a pnp transistor that is *not* bipolar?


After you objected to the higher Vce of the pnp transistor, I reminded
you that not all transistors are bipolar.

Herbert, the *reason* Vce is high is twofold:

1) Ve is *always* Vbe *above* the base voltage, which (if you want any base current) is *always* above the 555 output "zero". This is due to the circuit topology, rather than the bjt itself. If you want low Vcesat, dont do it this way. Likewise, dont use a Darlington, for much the same reason. the original NPN arrangement has a much lower Vcesat, yet is a BJT, because Vbe doesnt get in the way.

2) the disappearing base drive causes real problems here.


When the 555 o/p goes to +15V, where does the motor current flow to? by
Lenz' law, the emitter voltage will rise, until the base-emitter diode
is forward biased (IOW about 15.7V) at which point the pnp will turn on,
shunting the motor current to 0V. Of course Vce = 15.7V, with 3A across
it, ramping down to zero in time t = Lmotor*Ipeak/15.7V. dissipation
acros the pnp is thus 23.5W for however long it takes. The motor current
ramps down a lot faster than it ramps up, as it has almost 3x the
voltage across it.


You should never allow Vbe of a pnp transistor to go positive. This is
especially true for power transistors, whose base-emitter junctions
have low reverse breakdown voltages.


read it again. I said "until the base-emitter diode is forward biased" which of course means Ve > Vb for a pnp. This is implicit in the "about 15.7V" statement immediately thereafter.


Driving the base resistor from a 15 Volt output of a 555 reverse biases
the base-emitter junction of the pnp transistor and causes reverse
breakdown.

only for a very short period of time. The 555 output has a finite, non-zero slew rate. As Vb rises above 4V, the transistor turns OFF, and the inductive current has to go somewhere. It wants to keep flowing in the same direction, so charges up whatever C is lying around, and makes the pnp emitter voltage *rise* (again, finite non-zero slewing). It keeps rising until its at 15.7V or so, at which point the pnp B-E junction becomes forward-biased again, and the motor current flows thru the emitter to 0V - except for 1/Hfe, which flows out the base and *into* the 555 (where else can it go?)


this is exactly analagous to the npn switch case - when the npn turns off, Vce rises, forced by the inductive load attempting to commutate somewhere (anywhere). If no commutation path is found, Vce rises to +4V + LdI/dt (actually more like 4+IZo but thats a whole 'nother thang). Normally this is a very high value. Consider 1A, 1mH and 1us turn-off - Vce rises to about 4V + 1mH*1A/1us = 1004V, which will kill the npn switch (thereby giving the current somewhere to commutate to...). Hence the so-called freewheeling diode.



although it is possible, depending on stray capacitances and the 555
dV/dt, to apply a momentarily high reverse voltage across the
base-emitter junction. yet another reason not to do it this way.


If the output stage of the 555 has active source and sink stages then
connecting the timer supply to four or five volts ensures proper
biasing of the transistor.

I should mention that, unless the 555 has output clamp diodes (or a FET output stage) the pnp wont work at all, as all base current has to flow *into* the 555 output when it is high.


When the output of the 555 is high, the pnp transistor is off and no
base current flows.

if the pnp is OFF, where does the motor current go to? its an inductor.....if when the switch is on, current is flowing from +4V into the inductor, its going to want to keep flowing that way when the switch turns off. And it does, as both a simple explanation and SPICE show.




An LMC555 will do that just fine
(FETs dont care which way the current goes) but I cant recall OTTOMH
what the vanilla 555 output stage looks like. They probably do have
clamp diodes, and its probably *not* a good idea to bung more than a few
mA thru them, lest you trigger the internal SCR which sits across the
device supply rails (thereby shorting out the 15V supply thru the 555,
and cooking it quick-smart).

changing the supply voltage to 4V does not change the circuit behaviour,
only the voltage at which the pnp turns on again (Ve = 4.7V or so), and
of course the rate-of-change of motor current. Its still a rat***
circuit, which explains why *nobody* does this.

the magical disappearing base current alone is enough to consign this
POS to the wastepaper basket, where it truly belongs :)




If D1 is left connected across the motor, this turn-off behaviour does
not happen, as motor current commutates thru D1, keeping about 0.7V
across the motor (so current downslope is about 5-6 times *slower* than
the up-slope)

I did a simple simulation in Simetrix, using an MJD2955 and a 1mH
inductor (no winding R), chopped at 100Hz with 15V square-wave base
drive. Peak current is controlled *entirely* by Rbase (ergo by Hfe, so
all over the show with time, temperature and type of transistor). To get
2.5A, I needed Rb = 50 Ohms, and Vcesat actually pulls right up to the
supply rail! The turn-off current commutation behaviour is as described.

In conclusion, this is a *terrible* idea, and will not work.


I suggest doing the circuit analysis. You will find that switching
current in an inductance produces voltage spikes. By contrast switching
voltage across the inductance gives a continuous change in current with
slope discontinuity. Voltage switching in inductive circuits is not an
idea, instead it is standard practice in electromechanical controls
systems.

Herbert

I'd love to see your circuit analysis of this. Admittedly I dont know much about pissant little motors (definition: anything a human can lift unaided), but my calculus is OK. yes, V=dLambda/dt = LdI/dt (if and only if L is constant, otherwise add in an IdL/dt term) so dI/dt = V/L.


The response, i(t),  of a series connection of R and L to a voltage
source V u(t) is V / R ( 1 - e ^ ( - R / L t) ).
                                     ^^^^^^^^^
no its not, but I assume its just a typo on your part. e^(-Rt/L)

Now a current source, I u(t), driving the series connection of R and L
develops a voltage v(t)  = I R u(t) + L I du(t) / dt = a step plus an
impulse.

yep. that of course has nothing to do with you appalling circuit.



all that happens in this case (apart from the appallingly low
efficiency, due to piss-poor base drive and linear operation) is that
the pnp transistor functions as the clamp diode, but in a much more
lossy fashion. For Vcc(555) = 4V, 0.7V is dropped across the motor
(exactly the same as with D1) *but* the C-E voltage of the pnp
transistor is 4.7V, so it dissipates 4.7/0.7 = 6.7 times more power than
D1 would in the same situation.


When Vce is 4.7 V the pnp transistor is off and the current is zero.
During turn on Vce is about 1 volt, which entails three times the power
dissipation of a saturated common emitter transistor.  However this
additional dissipation is merely cause to fet.

Herbert




BTW, the point Ban made is quite correct. The motor has some inductance,
Lmotor. This is what "forces" the current to keep flowing when the
2n3055 switches off. When the switch is on, current ramps up, current
slope = dI/dt = Vbattery/Lmotor. Eventually this current gets so high
the voltage drop across the winding resistance gets in the way (eg in a
relay, Rwinding sets Irelay). When the transistor switches off, the
voltage on the winding reverses (Lenz' law) forward biasing the diode
to, say, 1V. The inductor current now ramps down, dI/dt = Vdiode/Lmotor


In common emitter configuration the 2N3055 approximates a current
switch.  Now switching the current produces voltage spikes and
necessitates the diode.

Herbert




Because Vdiode is small (1V cf 15V) the current ramps down slowly. This
will limit the performance you get from the machine. A simple fix for a
low power single-ended circuit is to add a zener in series with the
diode (or a few more diodes), but beware the losses!


Cheers Terry .