Introduction: Arduino Based Four Legged Robot
In this instructable, I will try to show you the basic steps to making your own walking robot for the most bang for your buck.
You may be asking why did I use balsa wood as the body for the robot. The reason I did this was to make the robot as lite weight as possible. In order to make the robot as cheap as possible I had to use the cheapest servos I could find since there is so many needed and because the servos are so cheap they have a low torque and can't handle much weight and in turn, balsa wood. Plus balsa wood is really easy to work with.
Step 2: Equipment and Supplies
I have created a list of equipment and supplies you will need to build you own robot. I have attached an excel file that list all the items and website links for the supplies. The total cost for the basic robot is just a little over a $100, but this does not include shipping. Some things you may want to consider going to a store nearby that sells these products, like the balsa which can normally be found in a hobby store or craft store.
I also added some optional items. I suggest holding off, on getting the battery for they can be a little expensive and the one listed doesn't even come with a charger. I suggest just getting a 5 - 6 volt source and run a wire, because the robot won't be walking very far, very fast. Finally I would suggest getting the accelerometer to help the robot balance itself, but it may be a little hard for someone that doesn't have much experience in programming.
Step 3: Robot's Body
This video is just showing me cutting out the legs using a table saw.
Step 4: Schematic
When the schematic was originally designed there were many different features, but for simplicity I redesigned the schematic for the main goal of having a walking robot. I would recommend if you have enough money in your budget, to add the accelerometer. The accelerometer would be a very useful sensor to help the robot to balance itself.
As marked in the schematic there is a 5 - 6 volt source. This is the main source for all the servos and with so many servos they can pull quite a bit current. Make sure to only use a source that can handle 1A or more, like listed on the Equipment and Supplies list, a battery or a power supply. DO NOT use the 5v source on the Arduino to power the servo, only use the Arduino source to power the PWM driver.
To put all the components together I would suggest using a protoboard and solder them all together. Since we were doing this project for class, I had a PCB outsourced to Advanced Circuits. Advanced Circuits is a great company to get your boards made for a great price.
Step 5: Software
For an example code to try out your robot is the one seen in the first video. If everything works properly the robot should stand up, lift one leg, and wave to the world for all eternity. In order for the code to work you must install the TLC5940 drivers, which are available on this website.
One error you may run into, due to the poor instructions, would be that the legs move in the opposite ways. The easiest way to fix this would be to modify the code. In the code you will see multiple function that look like, tlc_setServo(4, 100). The first parameter is the motor you want to control and the second parameter is the angle of the servo. Just modify the second parameter until it reacts how you think it should.
Like I said previously, I would suggest that you use the accelerometer to help the robot balance itself, but I haven't had enough time to add that feature. There is example codes available online to test your accelerometer though.
Step 6: Conclusion
I wish everyone luck who attempts to build a robot like this and I would love to see what you create, so leave me a comment to show me what you created. Try adding IR range finder sensors, an adjustable camera, stronger servos, or wireless communication. There are so many possibilities.
Also leave a comment if you think there is something I need to improve on this instructable.
airfoil233 made it!
We have a be nice policy.
Please be positive and constructive.