This is another one of Wayne's electronics projects that is work in progress on.

Modular Stepper Motor Control

A number of my manufacturing projects are based around using some stepper motors. This electronics project is a modular stepper motor control for a PC with a parallel port and simple TTL integrated circuits.

These days, I am pretty convinced that the least expensive and most flexible way to control one or more stepper motors is to use a programmable microcontroller. However, the use of microcontrollers entails building or buying a microcontroller programmer, writing and debugging the microcontroller program, etc. For now, I am willing to spend a little more on sme the basic stepper motor control using simple circuits.

So what do I mean by modular? Well basically, I have a bunch of modules that can be plugged together either via ribbon cable or by just laying end-to-end on a single printed circuit board (PCB) and connecting the appropriate traces.

Here is the list modules that have been implemented so far (last board modification was at 1999-03-19@14:48:55):

Dual Unipolar Stepper Motor Driver Module
This module can be used to drive two independent unipolar stepper motors. It takes 8-bits as its input, where each bit can be used to activate an individual coil in one of the stepper motors. With this module it is possible to activate 0, 1, 2, 3, or 4 coils at the same time; although it rarely makes sense to activate more than two coils at the same time.
Small Decoder Module
This simple module takes 8-bits as its input and allows 2-bit pairs to control control the stepper motor. This module in conjunction with a pair of the driver modules allows up to four steppers to be controlled.
Printer Adaptor Module
The parallel port interface connects to a parallel port on a PC and produces 8-bits as its `output'.
DC Power Module
The power supply module supplies power to the rest of the modules.
Bus Monitor Module
The debug module is just a bunch of LED's and a button that can be sliced into module chain to see what is going on. It is a very light weight front pannel.
Printer Emulator Module
A bunch of switches and LED's that emulate a parallel port on a computer. This module is used to debug the rest of the system by providing inputs to the Printer Adaptor Module without incurring any risk of frying anything on an actual computer.

The following modules have not been built yet:

Large Decoder Module
This module takes 8-bits as its input and allows the control of up 16 independent stepper motors.
Micro-stepper Module
This module takes 8-bits as its input and allows for micro-stepping of the 2 stepper motors by varying the duty cycle of the of coil drivers.
Counter Module
The counter module allows for independent incrementing and decrementing of the stepper motor positions. The counter module has inputs to prevent stepping past limits.
Front Panel Module
The front panel module allows the user to manually simulate computer control via a simple front panel. It has a selector that allows control to be passed to and from the parallel port module.
Dual Bipolar Stepper Motor Driver Module
This module can be used to drive two independent bipolar stepper motors. Like the bipolar driver, it takes 8-bits as its input, but pairs of bits are used to drive current either one way or the other through each individual stepper motor coil. Basically, each coil is inserted into the middle of an `H' bridge.
AC Power Module
The AC power module takes 110 VAC in and produces +5V DC for the logic and 5-12V DC for the stepper motors. The two power supplies are kept separate to minimize cross-coupling of current spikes induced by the stepper motors onto the logic power supply.
Unipolar Monitor
A stepper motor monitor shows which coils on a unipolar stepper motor have been energized. In addition, it provides a way of simulating when a limit switch has been triggered.
Printer Monitor
A board that monitors the signals running over printer cable.


The first set of modules have been fabricated and assembled into one 4 unipolar stepper motor system. I have the following notes:

Copyright (c) 1995-1998 by Wayne C. Gramlich All rights reserved.