DPRG List  

[DPRG] PWM Frequency and torque

Subject: [DPRG] PWM Frequency and torque
From: Chuck McManis cmcmanis at mcmanis.com
Date: Tue Feb 27 00:19:36 CST 2007

Its not that complicated. You need to just remember some basic facts:

1) Torgue is proportional to current, more current = more torque.

2) Current is proportional to voltage, more voltage = more current = more 

3) Voltage is a function of the driver circuit's frequency bandwidth.

So you're pushing a square wave into a motor, the circuit looks something like:

   |                |    |
+-+-+              |   (
|V~ |             ---   ) Effective Motor
+-+-+            C---  (  Inductance
   |                |    )
   |                |    |

And what you're looking at is a "low pass" filter, where the frequency 
determines what the output voltage is across the inductor (aka the motor). 
What you get is a resonant circuit where the voltage across the coil is a 
function of the duty cycle and frequency of the input and that changes the 
motor's torque.

The simplest way to "tune" this circuit is to up the voltage. Basically the 
motor's inductance is going limit the voltage ramp and if you can vary the 
voltage (or build a chopper but more on that in a second) you can precisely 
control the current through the motor and hence its torque.

I'd suggest for home lab users, put your Ammeter (multimeter set to amps) 
in series with your motor. Vary the parameters of the circuit (input 
voltage, frequency, and duty cycle) and watch how that affects the current 
through the motor.

As you've noticed these circuits are not linear in their response to duty 
cycle so if you want a motor controller where 10 is 10% and 50 is 50% and 
100 is 100% of the motors torque, you need to compute the voltage/current 
curve for the resonant circuit and fill in your values from there. what 
you'll find is that 1% torque is like 33% duty cycle and the difference 
between 75% torque and 100% torque is like 95% and 100% duty cycle.

So the simple answer is, there is no simple answer. You can finesse the 
problem by using active feedback.

The simplest form of active feedback is called a chopper circuit. A chopper 
is fairly simple in concept. Basically you apply a voltage across the motor 
and measure the current through the motor using something like a shunt. 
When the current reaches the desired set point you turn off the voltage, 
when it drops below your minimum set point you turn on the voltage. What 
this does is drive the motor with a PWM voltage wave form that is modulated 
by the chopper feed back to provide the desired current. In this way you 
can precisely control motor current, and precisely control motor torque. 
Further, even as the mechanical load on the motor changes, the torque 
output of the motor will remain constant because the chopper circuit will 
compensate. I have to believe that there is probably a 50 line program you 
could put into one of the 8 bit PICs or AVRs to do exactly this.


More information about the DPRG mailing list