Simple Walker Robot

by randofo in Circuits > Robots

139516 Views, 365 Favorites, 0 Comments

Simple Walker Robot

main2.jpg
main3.jpg

Building a simple walking robot is really easy. Don't let the number of steps fool you into believing otherwise. This robot is basically made with a handful of household items and some simple electronics that you can easily pick up at Radioshack. In fact, this robot is entirely zip tied together, which makes building it and modding it extremely easy. If at any point you are unhappy with how its built, cut the zip ties away and zip tie it together differently.

The "brains" of this robot are also easily modifiable since it is based on an Arduino development board. Programming it and changing the code is extremely straight-forward. Even people with no programming experience can usually get up to speed pretty quickly and start coding their own robotic routines.

For me, this robot was mainly an experiment to see what would happen if I built a full-on robot that was like one of the many Simple Bots that I have built. It was interesting to see how much more robust one of these creatures become when you give it some computer logic.


Check out my book Homemade Robots for more projects!


Go Get Stuff

1A.jpg

You will need:

(x4) Rubber spatulas
(x2) 6" turnbuckles
(x1) 2" x 48" aluminum ruler
(x1) Ballpoint pen
(x1) 4-40 x 1/4" nut and bolt
(x1) Arduino Uno REV 3
(x2) Standard Servo
(x2) 3x1 male header pins (strips of 40 available)
(x1) Parallax Ping Sensor
(x1) 9V Snap Connectors
(x1) 9-Volt Battery Holder
(x1) DC Power Plug
(x1) Multipurpose PC Board
(x1) Stranded 22AWG hookup wire
(x1) 9 Volt Battery
(x1) 5-1/2" Zip Ties

(Please note that some of the links on this page contain Amazon affiliate links. This does not change the price of any of the items for sale. However, I earn a small commission if you click on any of those links and buy anything. I reinvest this money into materials and tools for future projects. If you would like an alternate suggestion for a supplier of any of the parts, please let me know.)

Saw

2A.jpg
2B.jpg
2C.jpg
Get a 2" wide aluminum ruler.

Cut a 10" section off one end using a hacksaw.

Bend

3A.jpg
3B.jpg
Clamp the cut section of ruler in a bench vise such that 5" are sticking out.

Bend the aluminum slightly (to about 30 degrees) using a rubber mallet or hammer.

If you don't have a bench vise, hang the ruler halfway off the edge of your workbench, place a block of wood atop the ruler and clamp it firmly in place. You have now made an impromptu bending rig.

Simply hammer down on the ruler until it bends down over the edge of the workbench.

Take Apart

4A.jpg
4B.jpg
4C.jpg
4D.jpg
4E.jpg
Take your turnbuckles and remove all of the eyelets.

Set them aside for some other project.

Drill

5A.jpg
5B.jpg
5C.jpg
Widen the second hole from center with a 1/8" drill bit on each arm of the servo horn.

Repeat this for the second servo.

Mark and Drill

6A.jpg
6B.jpg
6C.jpg
6D.jpg
6E.jpg
6G.jpg
6H.jpg
Place the turnbuckle on edge. Measure 3" across one of the turnbuckles. Make a mark at this point. Repeat on the second turnbuckle.

Place the servo horn at the 3" center point on the turnbuckle.

Position the horn such that it is making a "V" perpendicular to the length of the turnbuckle. This should, by default, position two more "V" shapes pointing to each side of the turnbuckle. Make marks in the valley of each of these "V" shapes.

Finally, drill these two marks with a 1/8" drill bit.

Repeat on the second turnbuckle.

Mark

7A.jpg
7B.jpg
7C.jpg
One inch from the edge of each of the far sides of the ruler, make a centered mark.

Drill

8A.jpg
8B.jpg
8C.jpg
8D.jpg
8E.jpg
Drill the two marks that were just made with 3/4" spade bits.

Remove

9A.jpg
9B.jpg
Remove the servo horn from the servo by unscrewing the set screw.

Mark Again

10A.jpg
10B.jpg
10C.jpg
Center the servo's shaft in one of the 3/4" holes. Use the servo's mounting holes to make 4 marks on the ruler.

Rotate the servo 180 degrees and repeat on the opposite side.

Drill Again

11A.jpg
11B.jpg
11C.jpg
Drill each of the mounting marks that you have just made with an 1/8" drill bit.

Zip Tie

12A.jpg
12B.jpg
12C.jpg
Zip tie the servos to the ruler using the mounting holes you just drilled.

Trim away the excess zip tie tails.

Reattach the Horn

13A.jpg
13B.jpg
13C.jpg
Turn the servo's motor shaft entirely to the right or left.

Put the first servo horn back on such that all of the "V" shapes are parallel to each of the edges.

Fasten it in place with the mounting screw.

Repeat for the second servo motor.

Mark and Drill a Bit More

14A.jpg
14B.jpg
14C.jpg
14D.jpg
14E.jpg
14F.jpg
14G.jpg
14H.jpg
14I.jpg
14J.jpg
Between one of the far edges of the ruler and the servo, place the PCB and make marks on the ruler through each of its mounting holes.

On the other side of the same servo, place the Arduino board and make marks in each of its mounting hole. Try to fit the whole thing to one side of the ruler's bend.

On the opposite side of the ruler's bend, place the battery mount and make a mark.

Drill all of the marks that you have just made with a 1/8" drill bit.

Insert

15A.jpg
15B.jpg
15C.jpg
Insert two zip ties into each of the holes drilled in the turnbuckles from the inside out.

Attach

16A.jpg
16B.jpg
16C.jpg
16D.jpg
Place a turnbuckle centered atop a servo horn, and perpendicular to the ruler. Zip tie the turnbuckle firmly in place, and then trim away any excess zip ties.

Repeat this process for the second turnbuckle.

Mounting Holes

17A.jpg
17B.jpg
17C.jpg
17D.jpg
17E.jpg
17F.jpg
17G.jpg
Position the handle of the spatula about halfway up the turnbuckle such turnbuckle intersect perpendicularly. Next, rotate the spatula slightly outward (about 10 to 25 degrees).

Make multiple marks on the spatula's handle on all sides of the turnbuckle to indicate drill holes for zip tying it to the turnbuckle.

Drill the marks that you have just made with a 1/8" drill bit.

Flip the spatula upside down, and place the other spatula on top of it right-side-up. Align them so they are of matching height.

Use the first set of drill holes as guides to drill another set of holes in the other spatula. This should end up as a mirror image of the first (i.e. inverted, but otherwise identical).

Front Legs

18A.jpg
18B.jpg
18C.jpg
18D.jpg
Using the holes you have just drilled, zip tie the spatulas to the turnbuckle closest to the holes that were drilled to mount the PCB.

For the best results, make sure they roughly mirror each other in position and height.

These two spatulas will serve as the front legs.

Hind Legs

19A.jpg
19B.jpg
19C.jpg
19D.jpg
19E.jpg
19F.jpg
19G.jpg
19H.jpg
Repeat the process for the front legs to make rear legs.

Note that the rear legs of this bot were slightly shorter than the front legs. However, this is not a hard rule. Experiment and see what works for you.

Spacers

20A.jpg
20B.jpg
20C.jpg
20D.jpg
Take apart a ball point pen.

Cut the pen's tube into 1/4" sections using a razor blade.

These will be used as spacers for mounting components

Trim

21A.jpg
21B.jpg
21C.jpg
21D.jpg
Using a paper cutter or pair of scissors, trim the prototyping board down to about 1".

9V Adapter

22A.jpg
22B.jpg
22C.jpg
22D.jpg
Screw apart the M-type plug and slide the casing onto the 9V connector wires, such that you will be able to screw it back together later (after it is soldered).

Solder the red wire to the central terminal and the black wire to the plug's outer terminal.

Screw back on the plug's cover.

Sensor Board

23A.jpg
23B.jpg
23D.jpg
23C.jpg
Place the ground lead of the Ping sensor into one of the long conductive rails that travels the length of the board, and place the power lead in the other. The signal lead should be in one of the smaller conductive rails that spans 3 holes.

Solder the Ping sensor in place at a slight angle such that if you hold the board parallel to the ground, it would appear to be rotated about 45 degrees clockwise. This should counter-balance the fact that the PCB will get mounted to the board at about a 45 degree angle.

One the opposite side of the PCB that the Ping was soldered to, nstall two 3-pin male headers such that each one has a pin that is soldered to the ground rail, and a pin the is soldered to the power rail.

Wires

24A.jpg
24B.jpg
24C.jpg
Solder a 6" red wire to the power rail.

Solder a 6" black wire to the ground rail.

Solder a 6" green wire to the terminal that the Ping's signal pin is connected to.

Solder a 6" green wire to each of the remaining header pins that are not connected to a power or ground connection. These two wires will correspond to the signal pins for each of the servos.

Program

32A.jpg
The code below includes the necessary bare bones minimum to make the robot walk forward and back away from something that gets too close.

This code could definitely be more robust, but I will leave it up to you to expand upon it.

Sensor

26A.jpg
26B.jpg
26C.jpg
26D.jpg
26E.jpg
Place a spacer between each of the PCB mounting holes and the PCB.

Zip tie it firmly in place.

If the sensor is not level to the ground, gently bend its pins until it is.

Arduino

27A.jpg
27B.jpg
27C.jpg
27D.jpg
27E.jpg
27F.jpg
Place a spacer between the Arduino and each of its mounting holes on the ruler.

Zip tie it firmly in place.

Attach

28A.jpg
28B.jpg
Attach the 9V battery holder to its mounting hole using the a 4-40 nut and bolt.

Plug

29A.jpg
29B.jpg
Plug the servo female socket into the male header pins on the PCB, making certain that black is lined up with ground, red with power, and white with the green signal wire.

Wire It Up

30A.jpg
Plug the red wire from the PCB into the Arduino 5V socket.

Plug the black wire from the PCB into the Arduino Ground socket.

Plug the green wire from the Ping sensor into the socket for digital pin 7.

Plug the green wire from the front servo into the socket for digital pin 9.

Plug the green wire from the rear servo into the socket for digital pin 10.

Power

31A.jpg
31B.jpg

Connect the battery to Arduino, secure it in the battery holder, and it is good to go.

Did you find this useful, fun, or entertaining?
Follow @madeineuphoria to see my latest projects.