Control stepper motors in both directions
Stepper motors need bidirectional control in automatic machines or robotic applications. The circuit in Figure 1 lets you control bipolar stepper motors and run them in both rotations. You can use the circuit in automatic devices and as an evaluation circuit for testing stepper motors. The circuit comprises clock oscillators IC3A and IC3B; a bidirectional, two-phase translator using an SN74HC74D dual flip-flop, IC2,with a directional selector, IC3C and IC3D; and a push-pull L293DD channel-driver, IC1. The circuit needs one power source, which depends on the stepper-motor specification. You can use a step-down voltage regulator to provide 5V dc. In many applications, an L7805A voltage regulator is suitable. Switch S2 turns the motor on, and switch S1 controls the motor's direction. Both signals can come from a sensor or a circuit with an open-collector output.
A circuit surrounding transistor Q1 starts the motor. A forced starting is necessary because generators that employ two CMOS or TTL inverters are sometimes unstable after powering and can oscillate at a frequency of approximately 18 MHz. Thus, you need a delay after applying power to the circuit before sending the “on” command. The delay must be at least 100 µsec, but a delay of a few milliseconds is best. Capacitor C5 eliminates the negative influence of bounce from S2's contacts. The rotation of a rotor of the stepper motor begins when S2 presents a low level to Point A. C5 is unnecessary if a low-level signal from a circuit with an open collector comes to Point A—but not mechanical switches or buttons. Switch S1 can be any suitable signal, such as that from a safety stop switch with a timer, trigger, or any open-collector output that connects to Point B. LED D1 is a step indicator in “on” mode.
The speed of rotation of a stepper motor depends on its specification from a step angle of the stepper motor and the frequency of the clock oscillator. Figure 2 shows a timing diagram of the reversal mode of the circuit.