Basic Stepper Motor Driver
This schematic is of a very basic stepper driver. It is controlled by a common 16F84A PIC micro controller. The PIC and the driver IC are powered from the +5V regulated supply. The motor is powered directly from the +12V supply. The UCN5821A driver has 8 open collector outputs that can sink 500mA each.(watch the total power dissipation though) We are using only 4 of the outputs to pull the motor windings down to ground in a very specific sequence. It's that very sequence that causes the motor to rotate. Reversing the sequence will make the motor rotate in the opposite direction. A "real" design would have clamping diodes on each driver output to reduce the overshoot and ringing when the winding is switched off each time. I did try a 1N4007 diode on each output to the +12 supply.(cathodes went towards +12V) This does seems to reduce some of the "singing" in the motor but will impress the spikes onto the +12V supply. Try experimenting with a low value (under 10 ohm) resistor inserted between the diode common cathodes and the +12V supply. This may help but will vary with different motors. I have written a quick bit of PIC assembler code or PIC hex file to go with this schematic. Feel free to use this code as a starting point to learn how to control steppers. The 16F84 is made by Microchip and the UCN5821A is made by Allegro who have the relevant data sheets on their web sites. Anyway, try hooking it all up and programming the PIC. Go on... it's quite good fun!
Stepper Drive Schematic

Main Robotics Page