I'm trying to control the speed of DC motor but unsure of the relationship between speed and PWM. I'm aware that the bigger the duty cycle, the larger the speed, but how exactly would this relationship play out?

Would double the duty cycle make the speed double too?

  • $\begingroup$ I'll write a decent answer, but first, can you tell if the motor is a simple PMDC or EMDC? I guess you try to controle the speed with 555 timer correct me if i'm wrong. Would double the duty cycle make the speed double too? Short answer is nope. The relation is $E = k\phi_m \Omega$. E is voltage and $\Omega$represents the speed $k\phi_m$ is motor characteristic and measured experimentally , by doubling the duty cycle, you double the power, power voltage relation is $P = I_aE$. Do the math. $\endgroup$
    – user14407
    Feb 9, 2019 at 22:28

2 Answers 2


In a complex way that is only approximately linear.

First, you have the static friction - at lowest duty cycles the motor won't budge until it overcomes the static friction, and once it does move, the dynamic friction is lower, so it will immediately get up to a somewhat higher RPM which you could then dial down lowering the duty cycle (so, a hysteresis effect, zero on the up-ramp, decreasing RPM on the down-ramp).

Then losses and efficiency start playing a role; the dynamic friction offsets the curve from y=ax by a certain value, magnetic field losses will make the curve bend, as both very low and very high field strength create more magnetic losses than "nominal" (the field of the rotor extending outside the stator and short-circuiting through structural elements and the air), and at higher RPM viscous friction of lubricant in bearings and air drag will apply a quadratic RPM drop-off factor. Add to that response to rapid changes of input delayed by inertia of the rotor, add induction reactions due to rapid voltage changes of PWM, and you're getting a model complex enough there's no point trying to write exact equations - either apply the linear approximation accepting the resulting error, or measure the response, and create a look-up table for input:output values.

  • $\begingroup$ Proportional does not really imply linear. $\endgroup$
    – joojaa
    Feb 12, 2019 at 14:26
  • $\begingroup$ @jojaa: And what does my first sentence say? Plus "Would double the duty cycle make the speed double too?" - that is a question about linear proportionality. $\endgroup$
    – SF.
    Feb 12, 2019 at 16:08

You can look at that through voltage at terminals of DC motor, because with PMW, You are controlling input voltage. That is connection, and how input voltage affects its speed, well it depends on the parameters of motor. For separately excited motor, use this equation:

$$U = RaI + k\Phi n$$

Where U is input voltage, Ra is armature resistance, and I is armature current, n is speed of motor

If You are using PMW to control excitation voltage, then you only affect the excitation, so it will change speed in different way

  • 1
    $\begingroup$ With PWM you're applying always the same voltage but varying duty cycle between voltage applied and not applied. $\endgroup$
    – SF.
    Feb 12, 2019 at 12:47
  • $\begingroup$ I know, but output voltage of regulator is input voltage for motor, and that is U in formula $\endgroup$
    – kr3mn1
    Feb 12, 2019 at 14:07
  • $\begingroup$ But a PWM controller is not a voltage regulator. It outputs only two levels of voltage (max and 0), And while you might try to average that over time, response to PWM controller won't be identical to response to an analog regulator outputting same voltage as the average. $\endgroup$
    – SF.
    Feb 12, 2019 at 16:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.