DC speed control is the process of regulating the rotational velocity of a direct current motor by varying the effective voltage or current applied to its armature. In a real circuit, it changes the duty cycle of a switching signal or the resistance in the power path, directly altering the motor's torque-speed curve without changing the physical load. Beginners commonly confuse true electronic speed control (like PWM) with simple mechanical restriction or using a basic resistor to drop voltage, which wastes massive amounts of power as heat.
The Core Mechanics of DC Speed Control
The speed of a permanent magnet DC (PMDC) motor is governed by the equation N ∝ (V - IaRa) / Φ. Because the magnetic flux (Φ) is fixed by the permanent magnets, the motor's speed is directly proportional to the applied voltage (V) minus the voltage dropped across the armature resistance (IaRa). To change the speed, you must change the effective voltage reaching the armature.
Historically, this was done by placing a variable resistor (rheostat) in series with the motor. Today, modern Texas Instruments motor control application notes universally recommend Pulse Width Modulation (PWM). PWM works by switching the full supply voltage on and off at a high frequency—typically between 1 kHz and 20 kHz. The motor's inductance acts as a low-pass filter, smoothing the pulsed voltage into a steady average DC current. If a 12V battery is switched on for 50% of the time and off for 50%, the motor 'sees' an effective voltage of 6V and runs at roughly half speed, but with vastly different thermal characteristics than a linear dropper.
Worked Numeric Example: Sizing a PWM Controller for a 12V Winch Motor
Let's look at a real bench scenario. You have a 12V DC winch motor rated for 10A continuous current and a 40A stall current. You want to run it at 50% speed to gently pull a load.
The Linear Method (Series Resistor)
To drop the effective voltage to 6V at 10A using a resistor, you need to drop 6V across the resistor. Using Ohm's Law: R = V / I = 6V / 10A = 0.6Ω.
The power dissipated as heat in that resistor is P = I² × R = 100 × 0.6 = 60W. You would need to buy a massive, chassis-mount 75W wirewound resistor (costing around $25 in 2026) and bolt it to a heatsink just to run a small winch at half speed.
The PWM Method (MOSFET Switching)
Instead, we use a PWM controller driving an N-channel MOSFET like the IRF3205, which has an Rds(on) (on-state resistance) of just 8 milliohms (0.008Ω). At a 50% duty cycle, the MOSFET is fully ON half the time.
- When ON: Voltage drop = 10A × 0.008Ω = 0.08V. Power dissipated = 10A × 0.08V = 0.8W.
- When OFF: Current is 0A. Power dissipated = 0W.
- Average Power Dissipated: 50% of 0.8W = 0.4W.
Where You Meet DC Speed Control in Practice
You interact with DC speed control circuits constantly, often without realizing the specific topology being used. Here is where these circuits live in the wild:
- Cordless Power Tools: The variable speed trigger on a 20V DeWalt or Milwaukee drill uses a microcontroller to read a potentiometer and output a PWM signal to an H-bridge made of discrete MOSFETs. This allows high starting torque at low speeds.
- E-Bikes and Scooters: These use Brushless DC (BLDC) motors. The 'throttle' is a Hall-effect sensor sending a 0.8V to 3.6V signal to an Electronic Speed Controller (ESC). The ESC uses 6-step commutation and PWM to regulate speed while monitoring phase currents to prevent overcurrent faults.
- RC Cars and Drones: Hobby ESCs (like the Hobbywing QuicRun series) take a standard 50Hz RC servo PWM signal (1ms to 2ms pulse width) and translate it into high-frequency power PWM for the drive motor, including active braking by shorting the motor terminals.
- Automotive HVAC Blowers: Modern cars have replaced the old multi-tap resistor packs for cabin fans with solid-state PWM blower motor controllers, allowing infinite speed adjustments and reducing parasitic battery drain.
Linear vs. PWM: A Component-Level Comparison
When designing a circuit, choosing between linear voltage dropping and PWM switching dictates your thermal management and component budget. As detailed in standard DC motor tutorials, the efficiency gap is the primary deciding factor.
| Feature | Linear Control (Series Transistor/Resistor) | PWM Control (MOSFET Switching) |
|---|---|---|
| Efficiency at 50% Speed | ~50% (Massive heat loss) | >95% (Minimal switching losses) |
| Low-Speed Torque | Weak (Voltage drops under load) | High (Full voltage pulses maintain magnetic field) |
| Thermal Management | Requires large heatsinks or fan cooling | Often runs cool enough for TO-220 packages without heatsinks |
| EMI / Noise | Silent operation (pure DC) | Generates high-frequency EMI; requires snubber circuits |
| Typical IC / Module | L298N (used in linear mode), discrete BJTs | TB6612FNG, DRV8871, BTS7960 |
DC Speed Control FAQ
Can I use a standard AC dimmer switch for DC speed control?
No. Standard AC dimmers use TRIACs, which rely on the AC waveform crossing zero volts 120 times a second to turn off (commutate). If you apply DC to a TRIAC-based dimmer, it will turn on but will never turn off, effectively locking your motor at full speed and potentially destroying the dimmer due to DC arcing. Always use a dedicated DC PWM controller or a MOSFET-based DC dimmer module.
Why does my DC motor whine when I use PWM speed control?
That high-pitched whine is caused by the physical vibration of the motor windings and laminations at the PWM switching frequency. If your microcontroller (like an Arduino Uno) outputs PWM at its default 490 Hz or 980 Hz, it falls squarely in the human hearing range. To fix this, change the timer prescalers in your code to push the PWM frequency above 18 kHz (ultrasonic), or use a dedicated motor driver IC that handles high-frequency switching internally.
Does PWM speed control reduce the torque of a DC motor?
PWM does not inherently reduce the available torque at a given speed compared to a pure DC voltage source. Because PWM delivers full battery voltage in short bursts, the motor's magnetic field is fully energized during the 'ON' pulse. This means a PWM-driven motor at 50% duty cycle will have significantly better stall torque and low-speed lugging ability than a motor fed 50% voltage via a linear resistor. However, the overall torque-speed curve is still shifted downward because the average RPM is lower.
How do I reverse direction while controlling DC motor speed?
To reverse a DC motor, you must swap the polarity of the voltage applied to the armature. In modern electronics, this is done using an H-Bridge circuit, which utilizes four switches (MOSFETs or BJTs) arranged in an 'H' pattern. By closing the top-left and bottom-right switches, current flows one way; closing the top-right and bottom-left switches reverses the flow. For hobby projects, modules like the TB6612FNG (up to 1.2A continuous) or the dual BTS7960 (up to 43A) integrate the H-bridge and PWM logic into a single breakout board, requiring only two logic-level pins from your microcontroller to control both speed and direction.






