Maker Pro
Maker Pro

PWM control of a DC motor

M

Mike

Jan 1, 1970
0
Hi All,

I have a basic question about PWM control of DC motors: Can all DC brush and
brushless vibration motors, even soleniod-type, (think cell phone and pager
vibramotors to alert the user of an incoming call) that are looking for a
fixed input voltage for a rated RPM be controlled using a PWM? Would
changing the duty cycle of a given PRF change the effective motor RPM? Or is
it changing the actual PRF and the duty cycle that controls the speed of the
motor (up to the max RPM that is).

As an example, I have an application that requries PWM control of a
vibration motor (small DC brushless or even solenoid type motor design) to
vibrate at particular frequency, 250Hz nominally). If the choosen motor is
rated for 3V / 15000 RPM ( 15000/60=250Hz), then 3VDC should be fine, I
believe. If the motor has a higher RPM rating, say, 20000 RPM, would
utilizing a PWM at 75% (15000/20000) duty cycle allow me to achieve 250 Hz
requirement? I am thinking that since 15000 RPM is 75% of the rated RPM of
the motor, then utilizing a 75% duty cycle would allow this unit to ramp up
to about 15000 RPM nominally assuming some sort of linear relationship
between the average DC seen by the motor. Am I on the right track?

However, its not clear what role the PRF plays here. If I use a pulse period
of 3ms (333Hz) @ say at 75% duty cyle, could I not achieve my target
vibration frequency for a 3V / 20000RPM vibration motor? So wouldn't this be
turning the motor on and off 250 times per second? How does the pulse
amplitude factor in? I would believe the average DCV seen by the vibration
motor would still need to be whatever the input rated voltage is, in this
case 3V. So in continuation of the example above using the 75% duty cycle,
then the pulse amplitude should be 3V / .75 = 4V. Thus, a 4V, 75% duty cycle
pulse with a PRF of 3ms would work?

Some one was trying to explain this to me using a carrier system anology
where the motor is rated for 20000RPM and it tries to achieve that target
during the "on" portion of the duty cycle, but it will never quite reach
that because your duty cycle is less than 100% and hence you use duty cycle
to control the speed. This makes sense to me but wouldn't the PRF also
contribute to the resulting vibration frequency? The resulting motor
vibration from a 50% duty cycle with 4ms period is different than 50% duty
cycle of a 2ms period, right?

Can someone please validate my calculations above and if they are incorrect,
please explain what the pulse waveform would look like based on a 3V /
20000RPM vibration motor to achieve 250 Hz vibration frequency and how they
arrived at those values?

Thanks in advance,

Mike
 
J

John Fields

Jan 1, 1970
0
Hi All,

I have a basic question about PWM control of DC motors: Can all DC brush and
brushless vibration motors, even soleniod-type, (think cell phone and pager
vibramotors to alert the user of an incoming call) that are looking for a
fixed input voltage for a rated RPM be controlled using a PWM? Would
changing the duty cycle of a given PRF change the effective motor RPM? Or is
it changing the actual PRF and the duty cycle that controls the speed of the
motor (up to the max RPM that is).

As an example, I have an application that requries PWM control of a
vibration motor (small DC brushless or even solenoid type motor design) to
vibrate at particular frequency, 250Hz nominally). If the choosen motor is
rated for 3V / 15000 RPM ( 15000/60=250Hz), then 3VDC should be fine, I
believe. If the motor has a higher RPM rating, say, 20000 RPM, would
utilizing a PWM at 75% (15000/20000) duty cycle allow me to achieve 250 Hz
requirement? I am thinking that since 15000 RPM is 75% of the rated RPM of
the motor, then utilizing a 75% duty cycle would allow this unit to ramp up
to about 15000 RPM nominally assuming some sort of linear relationship
between the average DC seen by the motor. Am I on the right track?
---
Yes.
---

However, its not clear what role the PRF plays here. If I use a pulse period
of 3ms (333Hz) @ say at 75% duty cyle, could I not achieve my target
vibration frequency for a 3V / 20000RPM vibration motor? So wouldn't this be
turning the motor on and off 250 times per second? How does the pulse
amplitude factor in? I would believe the average DCV seen by the vibration
motor would still need to be whatever the input rated voltage is, in this
case 3V. So in continuation of the example above using the 75% duty cycle,
then the pulse amplitude should be 3V / .75 = 4V. Thus, a 4V, 75% duty cycle
pulse with a PRF of 3ms would work?

---
Usually, with PWM, the ampltude of the pulse stays constant, but the
ratio of the ON time to OFF time varies in order to change the speed
of rotation. Using your example, if your motor turns at 15000 RPM
with 3V across it, all the time, a motor rated for 20000 RPM will
turn at 15000 RPM with 3V across it three-quarters of the time and
0V across it it the gest of the time, assuming instantaneous ramp-up
and ramp-down. The selection of the frequency of the PWM signal is
going to depend on how smooth you want the motor to run and on how
much power you can waste. For example, if your 20000 RPM motor is
to be run at 15000 RPM, then one revolution at 15000 RPM will occur
in 4 milliseconds. Three quarters of that is 3ms, and you'd pump 3V
into the 20000 RPM motor for 3ms in order to get it to turn one
revolution and then plug it for 1ms in order to delay it for the
proper amount until it was time to hit it with the next pulse.

So, under those conditions you'd be getting an entire revolution out
of the motor every 4ms, but that might be too coarse, in which case
you might want to get a half-turn for every pulse, in which case
you'd turn the motor on for 1.5mS and off for 0.5ms. In the first
case your PRF would be 250Hz with a 75% duty cycle, and in the
second the PRF would be 500Hz with a duty cycle of 75%. While
smoothness increases with a higher PRF, you've got more stops and
starts to contend with, which will waste power and heat up the motor
more than with a slower PRF.
---
Some one was trying to explain this to me using a carrier system anology
where the motor is rated for 20000RPM and it tries to achieve that target
during the "on" portion of the duty cycle, but it will never quite reach
that because your duty cycle is less than 100% and hence you use duty cycle
to control the speed. This makes sense to me but wouldn't the PRF also
contribute to the resulting vibration frequency? The resulting motor
vibration from a 50% duty cycle with 4ms period is different than 50% duty
cycle of a 2ms period, right?

---
No. Neglecting the angle eaten up by the starts and stops (twice as
much for a 2ms period as for a 4ms period the average rotation rate
of the motor's armature will stay the same for the same duty cycle
redgardless of the period. There _are_ limits, though, on both
ends. For example, if you try to run the motor at 1MHz it's inertia
and its electricals are going to keep it from turning at all, while
if you run the motor with a 1Hz signal it's going to be going
full-bore for half the time and stopped for half the time, but it's
going to feel like it's vibrating for 1 second and then nothing, and
then vibrating again for another second. It's _average_ rate of
rotation will be half of it's full speed output, but it sure won't
feel like it!
Can someone please validate my calculations above and if they are incorrect,
please explain what the pulse waveform would look like based on a 3V /
20000RPM vibration motor to achieve 250 Hz vibration frequency and how they
arrived at those values?

Your numbers are fine, except for the voltage part. What would
happen if you decreased the ON time to 75% of the cycle but
increased the voltage by 25% during that time is that the motor
would go faster because the voltage was higher and you'd wind up
with the motor going 20000 RPM!
 
J

John Fields

Jan 1, 1970
0
---
Usually, with PWM, the ampltude of the pulse stays constant, but the
ratio of the ON time to OFF time varies in order to change the speed
of rotation. Using your example, if your motor turns at 15000 RPM
with 3V across it, all the time, a motor rated for 20000 RPM will
turn at 15000 RPM with 3V across it three-quarters of the time and
0V across it it the gest of the time, assuming instantaneous ramp-up
and ramp-down. The selection of the frequency of the PWM signal is
going to depend on how smooth you want the motor to run and on how
much power you can waste. For example, if your 20000 RPM motor is
to be run at 15000 RPM, then one revolution at 15000 RPM will occur
in 4 milliseconds. Three quarters of that is 3ms, and you'd pump 3V
into the 20000 RPM motor for 3ms in order to get it to turn one
revolution and then plug it for 1ms in order to delay it for the
proper amount until it was time to hit it with the next pulse.

So, under those conditions you'd be getting an entire revolution out
of the motor every 4ms, but that might be too coarse, in which case
you might want to get a half-turn for every pulse, in which case
you'd turn the motor on for 1.5mS and off for 0.5ms. In the first
case your PRF would be 250Hz with a 75% duty cycle, and in the
second the PRF would be 500Hz with a duty cycle of 75%. While
smoothness increases with a higher PRF, you've got more stops and
starts to contend with, which will waste power and heat up the motor
more than with a slower PRF.
---

---
The point I was trying to make, but didn't quite, was that as long
as the duty cycle stays at 75% the average rate of rotation of the
motor's armature will remain constant. With limits as described
later...
---
 
Top