PWM Motor Speed Controller Circuit Using IC556

Controlling or varying a DC motor speed may appear to be not so difficult
and you may find plenty of circuits for it. However these circuits do not
guarantee consistent torque levels at lower motor speeds, making the functioning
quite inefficient.

Moreover at very low speeds due to insufficient torque, the
motor tends to stall. Another serious drawback is that, there’s no motor reversal
feature included with these circuits. The proposed circuit is completely free
from the above shortcomings and is able to generate and sustain high torque
levels even at lowest possible speeds.

Circuit Description
Before we discuss the proposed PWM motor controller circuit, we would want also
to learn the simpler alternative which is not so efficient, yet may be
considered reasonably good as long as the load over the motor is not high and
as long as the speed is not reduced to minimum levels.
The figure shows how a single 555 IC can be employed for
controlling DC motor speed, we won’t go into the details, the only notable
drawback of this configuration is that the torque is directly proportional to
the speed of the motor.
Coming back to the proposed high torque DC motor speed controller circuit design, here we have used two 555
ICs instead of one or rather a single IC 556 that contains two 555 ICs in one

PWM Motor Speed Controller Circuit Using IC556

Briefly the proposed DC motor controller includes the
following interesting features:
Speed can be varied continuously right from zero to maximum,
without stalling.
The torque is never affected by the speed levels and remains
constant even at minimum speed levels.
The motor rotation can be flipped or reversed within a
fraction of second.
The speed is variable in both the directions of the motor
The two 555 ICs are assigned with two separate functions.
One sections is configures as an astable multivibrator generating 100 Hz square
wave clocks which is fed to the preceding 555 section inside the package.
The above frequency is responsible for determining the
frequency of the PWM.
The transistor BC 557 is used as a constant current source
which keeps the adjoining capacitor at its collector arm charged.
This develops a saw-tooth voltage across the above capacitor,
which is compared inside the 556 IC with the sample voltage applied externally
over over the shown pin-out. 
The sample voltage applies externally can be
derived from a simple 0-12V variable voltage power supply circuit. 
This varying
voltage applied to the 556 IC is used to vary the PWM of the pulses at the output
and which eventually is used for the speed regulation of the connected motor.
The switch S1 is used to instantly reverse the motor
direction whenever required.

Parts List for the proposed high torque DC motor speed controller circuit
R1, R2, R6 = 1K,
R3 = 150K,
R4, R5 = 150 Ohms,
R7, R8, R9, R10 = 470 Ohms,
C1 = 0.1uF,
C2, C3 = 0.01uF,
C4 = 1uF/25V
T1, T2 = TIP122,
T3, T4 = TIP127
T5 = BC557,
T6, T7 = BC547,
D1—D4 = 1N5408,
Z1 = 4V7 400mW
IC1 = 556,
S1 = SPDT toggle switch

The above circuit was inspired from the following circuit which was published long back in elecktor electronic India magazine.

PWM Motor Speed Controller Circuit Using IC 555

The first diagram can be much simplified by using a DPDT switch for the motor reversal operation, and by using an emitter follower transistor for the speed control implementation, as shown below: