Home   |   Electronic Store   |   Electronic Schematics   |   Tutorials   |   Downloads   |   Links   |   Search   |   My Account   |   Contact

Controlling Stepper Motor with a Parallel Port



  Part's List:

M42SP-5 Unipolar Stepper Motor (or similar)
ULN2003 IC - stepper motor driver
DB25 Male connector

  Technical Specifications:

Supply Voltage: 12 - 24V




About this Circuit
 

This is an easy to build stepper motor driver that will allow you to precisely control a unipolar stepper motor through your computer's parallel port. With a stepper motor you can build a lot of interesting gadgets such as robots, elevator, PCB drilling mill, camera panning system, automatic fish feeder, etc. If you have never worked with stepper motors before you will surely have a lot of fun with this project.




How Stepper Motor Works?

 
Stepper motors are very different from a regular DC motors. Instead of spinning like DC motors do, stepper motor steps at a specific resolution for each pulse. The motor that we are using needs 48 steps / pulses just to complete a single revolution! That should be enough to tell about its precision.

Another advantage of stepper motors is the fact that their speed of rotation can be achieved almost instantly even if you change the spinning direction.

Stepper motor consists of a rotor - the permanent magnet that rotates inside, and stator - four coils (north, east, south, west) that are part of the case, and which don't move. Rotor can be moved by sequentially applying a pulsed DC voltage to one or two coils at a time.




Stepper Motor Driver

 

In able to move the rotor you will need a driver. Driver is a circuit that applies a voltage to any of the four stator coils. Driver can be built with IC such as ULN2003 (pictured on the circuit diagram), four darlington transistors or four power transistors such as 2N3055.




Stepper Motor Connections

 
Unipolar motor should have five or six connections depending on the model. If the motor has six connections like the one pictured above, you have to join pins 1 and 2 (red) together and connect them to a (+) 12-24V voltage supply. The remaining pins; a1 (yellow), b1 (black), a2 (orange), b2 (brown) should be connected to a driver (ULN2003) as shown on the schematic.




Stepping Modes

 

There are several stepping modes that you can use to drive the stepper motor.

1. Single Stepping - the simplest mode turns one coil ON at a time. 48 pulses are needed to complete one revolution. Each pulse moves rotor by 7.5 degrees. The following sequence has to be repeated 12 times for motor to complete one revolution.

Pulse
Coil a1
Coil b1
Coil a2
Coil b2
1
ON
2
ON
3
ON
4
ON


2. High Torque Stepping - high power / precision mode turns ON two coils on at a time. 48 pulses are needed to complete one revolution. Each pulse moves rotor by 7.5 degrees.
The following sequence has to be repeated 12 times for motor to complete one revolution.

Pulse
Coil a1
Coil b1
Coil a2
Coil b2
1
ON
ON
2
ON
ON
3
ON
ON
4
ON
ON

3. Half Stepping - stepping is doubled and motor needs 96 pulses to complete one revolution. Each pulse moves rotor by approximately 3.75 degrees. Notice the mix of single stepping mode (lighter green) and high torque mode (darker green).

Pulse
Coil a1
Coil b1
Coil a2
Coil b2
1
ON
2
ON
ON
3
ON
4
ON
ON
5
   
ON
6
   
ON
ON
7
 
ON
8
ON
   
ON

  - single stepping mode, normal strength, quiet
  - high torque mode, high strength, slightly louder





Stepper Motor Controller Software

 
Some drivers might also come with a frequency generator / timer that is used to control a rotation speed (LM555 / NE555) and digital IC such as 74LS194 that will use pulses to generate a stepping mode.

In this project, on the other hand we will use computer and a program to perform that functionality. By using a computer you will be able to do much more with your stepper motor and most importantly visualize how current is flowing through individual coils.

The program also includes features such as easy to use graphical user interface, allows you to precisely control the motor speed and direction in real-time and it also allows you to use different stepping modes, such as single stepping, high torque stepping and half stepping modes.



The program will work on any version of Windows (98/ME/2000/XP). If it doesn't work than you have to download and install Microsoft .NET Framework. The Stepper Motor Controller can be downloaded from the download section.



Electronic Schematics for Hobbyists © 2002-2014. All rights reserved.

fm transmitters stereo encoders electronic encoder free schematics circuits diagrams electronics kits electronic projects diy telephone bugs amplifiers pre-amplifiers power supply supplies fm radio receivers 2n4427 2n3866 integrated circuits elektonika schematy zestawy elektroniczne nadajniki fm odbiorniki wzmacniacze predwzmacniacze enkodery dekodery stereo przystawki telefoniczne telefoniczny czesci elektroniczne mierniki cyfrowe fm transmitters stereo encoders electronic encoder free schematics circuits diagrams electronics kits electronic projects diy telephone bugs amplifiers pre-amplifiers power supply supplies fm radio receivers 2n4427 2n3866 integrated circuits elektonika schematy zestawy elektroniczne nadajniki fm odbiorniki wzmacniacze predwzmacniacze enkodery dekodery stereo przystawki telefoniczne telefoniczny czesci elektroniczne mierniki cyfrowe heatsinks large heatsinks extruded heatsinks extrusion heatsink amplifier heatsinks large heatsink aluminum heatsinks large aluminum extruded heatsinks large heat sinks heat sink aluminum heatt sinks