First, the H-bridge transistors got really hot, which was not a problem when
I simply applied a TTL voltage to the control pins.
Second, at low duty cycles (less than about 50%), the motor didn't turn, but
the circuit emitted an audible whine. The whine went away pretty much as
soon as the motor started to turn. I couldn't tell whether the whine was
coming from the motor or the transistors.
In fact, it seems from today's experiments that any duty cycle of less than
50% was useless for driving a motor. But when I put an LED in place of the
motor, I didn't get any noise, and the LED was noticeably lighting at a duty
cycle of less than 10%. So I know my H-bridge is working.
My question is, would I get better PWM performance if I changed H-bridge
designs? And, if so, do you have any suggestions for improving it? Or do
you think it's just that I'm using a cheap crappy surplus salvage DC motor
(which, indeed, I am)?
Thanks,
K
I'm also interested in the replies to you about the maximum and minimum for
the PWM, I'm finding that the small DC motor I'm driving tends to be a
little jittery below a certain point (though I haven't tried using a cap
across the motor terminals, which I am going to do later tonight).
- Brill Pappin
"Kevin Dooley" <kev...@manageablenetworks.com> wrote in message
news:ddSc9.54973$C8.1...@nnrp1.uunet.ca...
I don't actually know. My OOPic controller chip has a built in PWM
algorithm, so I just wrote a little program that calls it.
> I'm also interested in the replies to you about the maximum and minimum
for
> the PWM, I'm finding that the small DC motor I'm driving tends to be a
> little jittery below a certain point (though I haven't tried using a cap
> across the motor terminals, which I am going to do later tonight).
I wasn't actually surprised that the motor simply cut out at a certain
minimum value, but I was surprised that the practical minimum was
so high. And I was quite alarmed by the whining noise.
> - Brill Pappin
K
Maybe you could find one of those NNTP search engines, and try looking for
it there.
About the math, Yes, I could use some built-in PWM code, but I'm interested
in doing a few "unconventional" things with it (experimenting at this point)
so I want to be able to control the motor myself.
- Brill Pappin
"Kevin Dooley" <kev...@manageablenetworks.com> wrote in message
news:zFSc9.54980$C8.1...@nnrp1.uunet.ca...
Do remember that power transistors are meant to be cooled by a heat
sink. Even a small one helps.
The more efficient the motor, the more likely it will turn at low PWM
ratios. But what you're seeing is quite common in low-cost PM motors.
You might try altering the PWM frequency (but watch the transistors!).
The motors will indeed whine. That's probably what you heard, even if
the motor didn't appear to be turning.
There are a number of ready-made H-bridges that are fairly inexpensive,
and are a good "second course" for experiments. The L298 is a pretty
good one for motors under 3A; several online retailers sell this in a
ready-to-go kit.
Finally, remember caps act to integrate (and therefore smooth out) PWM.
You need to be careful how you select the caps. You might even try
leaving them off, or trying lower values.
-- Gordon
Robot Builder's Bonanza, Second Edition
Robot Builder's Sourcebook - 2,500+ sources for robot parts
-- Gordon
Kevin Dooley wrote:
>
> I'm just learning this stuff, building little circuits and playing with the
> basic
> elements. Today I finally managed to get a little H-bridge circuit to drive
> a DC motor at variable speeds using PWM. I was using a basic H-bridge
> made out of 4 N-channel transistors (TIP-41C) protected by diodes
> between the collector and emitter, and with a capacitor across the leads
> of the motor. I noticed a couple of things that seemed strange to me.
<snip>
K
"Gordon McComb" <"gmccomb "@ gmccomb.com> wrote in message
news:jUSc9.40141$Fb.19...@news1.west.cox.net...
Try using a MOSFET driver. They will be more efficient, as they have lower
drain-to-source resistance. (Rds). Lower resistance means less heat and
therefore more power through the motor. A P-Channel / N-Channel
complimentary pair of MOSFETs will give you an efficient solution. They can
also sink much more current than Darlington transistors like the TIP-41C. I
have used IRF5305 and IRL540 respectively, which can handle about 30A, much
more than the single chip solutions. If your planning on trying this though,
don't try to drive the MOSFET gates at TTL level. These should be swung
between the full range of the motor supply voltage, so you will need an
intermediate BJT transistor stage to interface this to your TTL logic.
The turn on point of your motor is to do with its efficiency. It will
require a certain amount of power in order to overcome its own bearing
friction. Get a better motor, or try running the one you've got at a higher
voltage. The frequency of the motor signal also effects the performance of
the system, and should ideally be matched to the motor. A couple of KHz is a
good starting point.
Hope that helps.
Cheers,
Ben.
"Kevin Dooley" <kev...@manageablenetworks.com> wrote in message
news:ddSc9.54973$C8.1...@nnrp1.uunet.ca...
Thanks for the advice. I will try this. My next experiment is to use an
L298, as Gord McComb suggested. I have a couple of these that I
can play with.
I'd like to try playing with MOSFETs, particularly because some of the
motors I want to work with will draw very high currents (I don't yet know
exactly what I'll need, but it's going to be >3A). Thanks for the tip.
K
"Ben Cook" <benjami...@undergroundhq.fsnet.co.uk> wrote in message
news:3d746ade$0$237$cc9e...@news.dial.pipex.com...
You absolutely do not want a capacitor on the output (unless it is very
small) An HBridge is a voltage switch (low impedance) and will waste a
lot of power (heating your transistors) working into a capacitive load,
an Hbridge works best driving a resistive or inductive load...
A whine indicates that you have a lot of ripple current in the motor,
this can be reduced with a more efficient HBridge, or running in the
HBridge in "slow decay" mode (usually done by turning both low-side
transistors on during the PWM off time), or using a higher switching
frequency.
PCW
Its not uncommon for the small and really unefficient DC motors to need
a high PWM percentage to just get moving. More efficient (read, more
expensive) DC motors will run at lower PWM percentages. If your transistors
are getting really hot with small currents/motors then you may be
experiencing "shoot through" current where current is flowing through both
transistors on a "leg", this is a timing issue. Another possibility is that
you aren't fully turning the transistors on and they are running in their
linear mode, they will dissipate a LOT of energy (and get hot) that way.
Check the hfe of the transistor, which is the gain. Basically your
Ibe (base-emitter current) X hfe = Ice (collector-emitter current). Check
your drive and make sure you've allowed for enough Ibe to fully switch on
your transistor at the current you are putting through it for the motor.
DLC
: I'm just learning this stuff, building little circuits and playing with the
: Thanks,
: K
--
============================================================================
* Dennis Clark Aristocrat at heart d...@frii.com www.techtoystoday.com *
* Be well, do good work, and stay in touch -- Garrison Keillor *
============================================================================
It's not just about efficiency. An efficient motor will usually generate
nearly equal torque at any rotational angle, but some motors are inefficient
and yet designed for low torque vibration. If you turn the motor shaft by hand,
and can feel it pulling in and out of the magnetic detente, and it pulls in
to a preferred position when you let it go, it will take considerable power
to start turning, because it must overcome the detente. You can do low-speed
PWM control of such motors, but you need speed feedback.
I discovered this when trying to drive the main motor in a toy R/C car robot,
which would sit and whine then suddenly take off like a rocket as I increased
the power - see <http://homes.managesoft.com.au/~cjh/electronics/car.html>.
--
Clifford Heath
As another poster said, ditch the cap on the motor. You need no
capacitive "smoothing" anyway. Smoothing can be accomplished by
increasing the PWM frequency. However, unless your driver (transistors
in this case) are specifically rated to switch at your high PWM freq,
they will switch less efficiently and get hotter.
> First, the H-bridge transistors got really hot, which was not a problem when
> I simply applied a TTL voltage to the control pins.
>
> Second, at low duty cycles (less than about 50%), the motor didn't turn, but
> the circuit emitted an audible whine. The whine went away pretty much as
> soon as the motor started to turn. I couldn't tell whether the whine was
> coming from the motor or the transistors.
>
The whine is your PWM signal. Basically, when stalled, your motor is
acting like a loudspeaker, humming at Fpwm. It will also whine when
the motor is turning but you may not notice because (a) the motor is
louder and (b) the whine may be a little quieter.
>
> In fact, it seems from today's experiments that any duty cycle of less than
> 50% was useless for driving a motor. But when I put an LED in place of the
> motor, I didn't get any noise, and the LED was noticeably lighting at a duty
> cycle of less than 10%. So I know my H-bridge is working.
>
> My question is, would I get better PWM performance if I changed H-bridge
> designs? And, if so, do you have any suggestions for improving it? Or do
> you think it's just that I'm using a cheap crappy surplus salvage DC motor
> (which, indeed, I am)?
>
> Thanks,
> K
-RAT
Another benefit: MOSFETs have an intrinsic diode, but beyond that, they
conduct backwards with very low voltage drop when they are 'on'. This
means that during the PWM 'off' period, you can close both high-side or
low-side transistors and short circuit (freewheel) the motor. This is
*essential* for realizing any efficiency whatsoever.
Of course, they are also nastier to drive - if you're running at low
voltages, the Vgs parameters might make it possible to drive all the gates
between Gnd and Vmotor + (drive voltage). Otherwise, you'll need a more
elaborate drive scheme; I tend to use dual mode bootstrap/chargepump
designs.
As for capacitors, they are there to prevent excessive rf interference,
*not* to "smooth out" the voltage. An inductive load driven by PWM is
a constant-current variable-voltage device. That is, every cycle, the
voltage across the motor goes from 0 to Vcc to 0. Specifically, the cap
absorbs (capacitance)x(voltage) coulumbs every cycle. If RF interference
is a problem, use a very small capacitor or possibly an RC or RCD snubber.
It is *possible* to run a motor with a large cap over it, but in that case,
all the voltage that doesn't get to the motor is used to heat your
transistors.
-chris
Don't forget, the PFETs have to be cooled because of 'IRdsOn' (also a
voltage drop) if you are pushing any sort of current at all. Also, the body
flyback diode may not be what you want if you wish to ensure faster
switching on a unipolar application for high speed running. In that case,
another PFET may be required...one for active source, one for active sink on
each leg. And don't forget that 100/150 ohm resister in the gate leg...you
are driving up to a 1nf cap there!
Armand
"Chris Kern" <n...@spam.com> wrote in message
news:al6q4g$bbd$1...@saturn.services.brown.edu...
> My question is, would I get better PWM performance if I changed H-bridge
> designs? And, if so, do you have any suggestions for improving it? Or do
> you think it's just that I'm using a cheap crappy surplus salvage DC motor
> (which, indeed, I am)?
Kevin, have you looked at using the National LMD18200? It's a smart
H-bridge (55 volts max, 3.5A continuous) in an oddball 11-pin
"TO-220F" package. It's got a thermal watchdog output, and a drive
curent monitor output. It's bitchin'.
Of course, it doesn't fit on .100" center perfboard worth a darn. I
layed out some header boards that convert the martian footprint to 16
pin DIP, works great.
If you are going to use a cap, be sure it's bipolar if you are using an
H-bridge. Also, you can filter higher freq pwm into a nice DC voltage with
an LC circuit, but the caps and coils will tend towards the beefy.
The starting torque of your motor will be less thn the running torque, and
in a servo loop, you will notice this. There are solenoid drivers out there
that actually "smack" the solenoid with higher current, and then back off
for just that reason.
"Brill Pappin" <brill...@rogers.com> wrote in message
news:ANSc9.56309$6m61....@news04.bloor.is.net.cable.rogers.com...