Often, people attempt to control DC motors with a variable resistor or variable resistor connected to a transistor. While the latter approach works well, it generates heat and hence wastes power. This simple pulse width modulation DC motor control eliminates these problems. It controls the motor speed by driving the motor with short pulses. These pulses vary in duration to change the speed of the motor. The longer the pulses, the faster the motor turns, and vice versa.
1 Meg 1/4W Resistor
0.1uF 25V Ceramic Disc Capacitor
0.01uF 25V Ceramic Disc Capacitor
4011 CMOS NAND Gate
Motor (See Notes)
Case, Board, Heatsink, Knob For R2, Socket For U1
1. R2 adjusts the speed of the oscillator and therefore the speed of M1.
2. M1 can be any DC motor that operates from 6V and does not draw more than the maximum current of Q1. The voltage can be increased by connecting the higher voltage to the switch instead of the 6V that powers the oscillator. Be sure not to exceed the power rating of Q1 if you do this.
3. Q1 will need a heatsink.
4. Q1 in the parts list can handle a maximum of 5A. Use the IRF620 for 6A, if you need any higher.
Source: Electronics Lab