In this instructable I will detail how I went about making a quick and easy, Arduino compatible, H-bridge shield. But first, a brief intro into what got me motivated to make it.
A couple of years ago, I started wanting to learn more about micro-controllers. This led me to want to make my own robot, which then led me to Arduino. Then I wanted to make something move. It was then that I learned that in order to control a motor, I would need a H-bridge.
I had to learn quite a bit in order to make something that worked, and then I had to go that extra step to make something that could be used on different vehicle platforms a little more seamlessly. The first one I made wasn't very user-friendly.
If you like this instructable don't forget to vote for this in the Arduino contest. Thanks in advance.
Step 1: Materials Needed
The first thing to do is to figure out what you need and then find a place to get it from. For me that currently is one of two places: Radio Shack or Sparkfun. The list of items I used is comprised of the following items:
1 - Project PCB board, Radio Shack,
1 - Mini breadboard, Sparkfun, http://www.sparkfun.com/products/7916
1 - Long pin headers, Sparkfun,
1 - PCB board screw terminals, Radio Shack
1- SN754410, Sparkfun, http://www.sparkfun.com/products/315
1 - Hookup Wire, Radio Shack or Sparkfun, (I use stranded wire, not solid)
Total approx. cost = around $10.00-$12.00
Loads of fun = priceless!
Step 2: Tools Needed
For this project you will need the following tools:
1 - wire stripper
1 - soldering iron
1 - solder spool
1 - tabletop vise or a third hand. You'll need this to hold the pcb board while you solder component to it.
1 - voltmeter / conitnuity checker
Step 3: Cut Male Headers to Size
I started by figuring out two things 1) Where the headers need to go and 2) Where I wanted to put the other things.
Step one is to cut the header pins to size. I placed the header pins into the Arduino female headers so that I knew exactly what I needed. Then I added one pin more and that's where I cut it from the whole piece. Then I remove the one extra pin. It's a little bit tricky cutting to length when the end is in the middle of the header pin set.
Step 4: Solder Header Pins to Board
Before I soldered the pins to the board, here is how I set it up:
I placed the male headers so that they lined up with the contacts on the project board where there were three contacts. This will allow for having male header pins and female headers. Male AND female headers allow the board to fit the Arduino female headers and also allow for another shield to be attached to the top of the H-bridge shield if needed.
Once you have the male and female headers where you need them, go ahead and solder them to the board.
Step 5: IC Socket
I placed the IC socket so that the pins lined up with the contacts on the project board where there were three contacts as well. This will later allow for connecting the h-bridge pins to the header pins that will connect with the Arduino. The second picture is intended to show this but the pins from the socket are hard to see, but they are there protruding through the board.
Once you have the IC socket where you are happy with its location.
Solder the socket to the board.
Step 6: Finish the Assembly
I'll use this one picture to illustrate the next steps...
1) Label the pins on the shield you are making. Reference the Arduino board so you know what pins correspond to what.
2) Use the hookup wire to connect the pins from the h-bridge to the pins on the arduino.
3) For this project I connected pin Vcc1 on the h-bridge to the 5 volt pin.
4) I also connected the Enable pins on both sides of the h-bridge to the 5 volt pin, (Enable will always be on but this should save two output pins later). Or, you could connect each of the enable pins to one of the analog pins so that you could use PWM. This will allow for some speed control.
5) I connected h-bridge pins 1A, 2A, 3A, and 4A to pins 9, 10, 11, and 12, respectively.
6) I connected the h-bridge ground pins to the ground pins on the shield.
7) I added the mini breadboard
8) Added the pcb screw terminals
9) Added a battery connector to h-bridge pin Vcc2 and ground.
10) Then I wired h-bridge pins 1Y and 2Y to one of the pcb screw terminals
11) Then I wired h-bridge pins 3Y and 4Y to the other pcb screw terminal.
Step 7: Final Product
Here are some pictures of the shield by itself and also mounted to the Arduino board.