CNC Stepper controller

The heart of each CNC machine, and many more automated systems for that matter, is the stepper motor. This motor allows for precise control over the spin of it’s rotor by applying pulses to the stepper’s coils. This project explains how to build a cheap and simple controller for such a motor, and it does that step by step, hehe.

The components used come from an old scanner. You need a stepper, a ULN2003 IC and the two steel rods on which the scanning lamp slides. The ULN2003 has seven high current darlington transistors and four of them will be used to drive the coils of the stepper motor. The control pulses will be given by a PC software through the parallel port. Nowadays PC’s don’t have the parallel port anymore so look for an old computer. Parallel port is also called printer port on some machines.

Pins 2 to 9 of the DB25 parallel port are assigned to Data bits, in our case the first four bits are of interest. The logic words that come out on the data bus of the parallel port are given by a pc software, Turbo CNC. Of course this can be taken into a much more developed project. As presented, if a bit is set to “1” then the associated coil gets one pulse because the ULN2003’s darlingtons act as inverters.

The project provides a test program to see your controller in action. For this you will need to use those metal rods to form a testing rig. Fairly simple thing if you know your way with a screwdriver.

A PCB layout and information for a three axis controller is provided as well. With the three axis all output pins from the parallel port are used and three ULN2003 ICs but you could use only two because each one has seven darlingtons under the hood.

It is really a good project, educational as well as practical if you need a low cost controller, and steppers can be found anywhere today… look inside your cd-player for example. So go for it!

CNC Controller made from scanner components: [Link]

September 10th, 2008

3in1 Stepper Motor Controller

This article was submited by morgoth and is part of the PCB giveaway program, so for submitting he’s work morgoth will receive a free PCB. Also in the future we’ll see more of he’s projects.

Of-course there are other projects based on this idea around the web, but what makes this one special, it’s he’s features. There are 3 stepper motors controlled by a single ATmega8 that runs at 8 MHz, and a motor driver for each motor. The motors and their drivers were recovered from an old printer.

3in1 Motor stepper controller

Although the motors are controlled by the same microcontroller each one can move independent. The board can receive commands to drive the motors trough serial interface from a computer. There is also a PC software that enables you to send commands from a nice graphical interface.


As you can see this is a very practical application, for example it can be easily developed into a CNC machine. I personally like morgoth’s coding skils and i think he has some more great projects to show.

And in the ending here is a movie with the motors in action.

You need to a flashplayer enabled browser to view this YouTube video

Here are some downloads:

And here are the downloads for unipolar stepper motors:

© 2007-2011 YourITronics | Any logo, trademark and project represented here are property of their respective owners | Wordpress | Privacy Policy    RSS