Electronics Exercise 3: Uni-Polar Stepper Motor Controller / Driver
Electronics Exercise 3: Uni-Polar Stepper Motor Controller / Driver
Electronics Exercise 3: Uni-Polar Stepper Motor Controller / Driver
1. Objectives
A stepper motor is used when open loop control of position is needed. Unlike a typical DC motor, the output
shaft of a typical stepper motor can be rotated (“stepped”) anywhere between 1.8 degrees per step to 15
degrees per step depending on the particular stepper motor. There are two types of stepper motors: bipolar and
uni-polar. Current flows only in one direction through the coils of a uni-polar motor. Current needs to flow in
two directions though coils of a bi-polar stepper motor. Motors need controllers to adjust their position and
speed.
A driver is needed to amplify a controller’s low output current to a larger current required by a motor. The
advantages and disadvantages between bi-polar stepper motor, uni-polar stepper motor, and DC motors are
given in Table 1.
The uni-polar stepper motor shown in Figure 1 has a 45 degree per step configuration. The rotor will point to
the closest coil with power applied to it. The rotor will rotate counter clockwise if coils A1, B1, A2, B2, A1, B1,
etc. are energized in sequence. The rotor will rotate clockwise if coils A1, B2, A2, B1, A1, B2,etc.. are energized in
sequence. Another set of A1,B1,A2, and B2 coils will produce a 30 degree per step configuration. Two additional
sets of A1,B1,A2, and B2 coils will produce a 22.5 degree per step configuration. More sets of A1, B1, A2, and B2
coils will produce even finer degrees per step configurations. The schematic symbol for a uni-polar stepper
motor regardless of degree per step is given in Figure 2
There are a many ways of energizing stepper motor coils in the proper sequence. A microcontroller may be used
as a uni-polar stepper motor controller but this will take memory and processing time. This is especially true in
final projects where three or more stepper motors are used. It would be advantageous to make a uni-polar
stepper motor controller circuit. Inputs into a uni-polar stepper motor controller circuit should be when to step
and which direction to turn. This can be accomplished using a universal shift register as a controller.
The universal shift register is a standardized logic chip (74LS194) manufactured by various companies. The
universal shift register pinout is shown in Figure 3.
Figure 3 Universal Shift Register (74LS194) Pin out
Only CLK, S0, and S1 inputs need to be manipulated in order to control a uni-polar stepper motor using the circuit
in Figure 4. Setting rotation direction and initialization of the circuit is done using inputs S0 and S1. The stepper
motor steps when there is a transition from 0V to 5V on the clock pin. Therefore, the speed of rotation can be
controlled by controlling the number of transitions on the clock pin per second. An example of how to step an
uni-polar stepper motor 6 steps clockwise then 6 steps counter clockwise using the above circuit is shown below
in table 3.
Table 4 Example of stepping uni-polar stepper motor using circuit show in Figure 4
(L – 0V, H – 5V, X – does not matter, ↑ - transition from 0V to 5V)
CLK S0 S1 QA (A1 Coil) QB (B1 Coil) QC (A2 Coil) QD (B2 Coil) Operation Description
(Table 3)
X X X X X X X Circuit Power On
↑ H H H L L L 5 Initialize
Controller
↑ L H L L L H 3 Clockwise Step 1
↑ L H L L H L 3 Clockwise Step 2
↑ L H L H L L 3 Clockwise Step 3
↑ L H H L L L 3 Clockwise Step 4
↑ L H L L L H 3 Clockwise Step 5
↑ L H L L H L 3 Clockwise Step 6
↑ H L L L L H 4 Counter Clockwise
Step 1
↑ H L H L L L 4 Counter Clockwise
Step 2
↑ H L L H L L 4 Counter Clockwise
Step 3
↑ H L L L H L 4 Counter Clockwise
Step 4
↑ H L L L L H 4 Counter Clockwise
Step 5
↑ H L H L L L 4 Counter Clockwise
Step 6
4. Uni-Polar Stepper Motor Driver
The power output from a universal shift register is inadequate for energizing coils in a stepper motor. Four NPN
transistors and diodes are needed to create a uni-polar stepper motor driver. An NPN transistor has three pins:
collector, base, and emitter. The circuit symbol for an NPN transistor is shown in Figure 5
The NPN Transistor will allow a large current to flow from collector to emitter when there is a smaller current
from base to emitter. The schematic for a uni-polar stepper motor driver using four NPN transistors and diodes
is given in Fig. 6. Diodes are used to protect the transistor from reverse currents generated by the motor. (Note:
Transistors will be covered in greater detail during class lectures.)
Your task is to assemble the circuit shown in Figure 7 on a perforated protoboard. You will also have a uni-polar
stepper motor to test your circuit with. The Bill of Materials is given in 7. The pinouts are given in 8.
Figure 7 Schematic of Uni-polar Stepper Motor Controller/Driver (Transistors have diodes already incorporated)
Questions:
a) Connect the TTL output pulse of the function generator to Node A in Fig. 7. Connect the ground of the
function generator to ground in Fig. 7. The function generator is now acting as the clock input into the
controller. Vary the rotational speed by varying the frequency of the function generator. Slowly increase the
rotational speed. At what frequency does the stepper motor stop rotating? Why?
6. Lab Deliverables
Demonstrate a working circuit setup to your lab instructor in person. And submit your answers to the above
questions by the due date.
7. Bill of Materials
The stepper motor wiring is not consistent across all motors. To check the correct wiring configuration, read
the resistance across the coils. The resistance between two coil ends should be double the resistance
between one end and the center. For example, in the diagram below, the resistance across A1-AC is XΩ,
across AC-A2 is also XΩ but is 2XΩ across A1-A2. Coil A and B are not connected, thus no resistance value to
be expected.
Side View
A1 AC A2
Stepper Motor
B1 BC B2
NPN Transistor
Top View
E B C