You can build a simple circuit using two 555 Timer ICs to create an H-bridge that will drive a single motor in forward or reverse. An H-bridge circuit is often used in robotics to reverse the polarity of a motor. For example, if the motor is spinning in the forward direction, the robot will move forward and when the polarity of the motor is reversed, the motor will spin in the opposite direction and the robot will move backward.

The diagram of the circuit resembles the letter “H” where the motor is the cross-bar and four switches form the legs.

To change the direction of the motor’s spin, you can open and close the switches using the following combinations. If you close switch 1 (S1), open switch 2 (S2), open switch 3 (S3), and close switch 4 (S4), the motor will spin in reverse. If you open switch 1 (S1), close switch 2 (S2), close switch 3 (S3), and open switch 4 (S4), the motor will spin forward:

The H-bridge is a very simple circuit. Unfortunately it would be impractical to use manual switches to drive a motor from a robot. Several companies make H-bridge integrated circuits (ICs) that are easy to use by simply applying power to a particular pin also called "setting the pin high" to drive the motor in one direction. Cutting the power to that pin and applying power to another pin will drive the motor in the opposite direction. The circuitry inside the H-bridge IC is somewhat complicated, so most folks will choose to use an H-bridge IC rather than building the circuit themselves.

You can also use two 555 Timer ICs to create and H-bridge circuit. The reason why the circuit works isn't exactly intuitive, but it’s a very easy circuit to build since it only requires a few parts.

Parts Needed:

1 9 Volt battery
1 9 Volt battery breadboard clip
1 Motor (I got mine from a broken automatic air freshener dispenser)
2 555 timers
Breadboard jumper wire kit

Here’s the Circuit:

As you turn the potentiometer in one direction, it increases the resistance between pins 6 and 2 on the 555 timer and ground. This makes the motor spin, say, forward. When you turn the potentiometer in the opposite direction it increases the resistance between pins 6 and 2 and the positive terminal on the battery. The motor then spins in reverse.

You can think of it like connecting a single pole double throw switch to pins 6 and 2 on the 555 timer. Using the single pole double throw switch, if I connect pins 6 and 2 to the positive side of the battery, the motor will spin forward and if I connect pins 6 and 2 to ground, the motor will spin in reverse.

If you have an application where you need to drive a motor at a single speed and switch between forward and reverse, the 555 Timer H-bridge circuit is an easy to build solution.

Of course, if you need to drive more than one motor at varying speeds in forward and reverse using a microcontroller, then an H-bridge IC would be the better solution. Connecting a motor directly to your microcontroller could damage it. For an example of driving motors powered by 9 volts with a microcontroller that can only take a maximum of 5 volts, see this article.

--------------------

Notes:

Source for H-bridge circuit: See Steve Hobley’s “Projects in Motion: Control Three Types of Motors with 555 Timers,” Make magazine, http://makezine.com/projects/projects-in-motion-control-three-types-of-m...

555 Timer H-bridge circuit designed using Circuit editor: http://www.docircuits.com/circuit-editor