• EUR€
  • £GBP
  • $USD

Spider Robot (Quad robot, Quadruped)

DFRobot Sep 22 2015 1044

Project by RegisHsu on Instructables

This is my first project for the 4 legs robot and it took me about 1 year development.

It is a robot that relies on calculations to position servos and pre-programmed sequences of legs.

I'm doing this is because of it could be fun and educational for 3D design/printing and robot control.

This is the fourth generation of my design, you can take a look here if you are interested the history.

Building this project is fun, however, it should take you more time and patient to implement.

If it is a hard job to you, the product comes from Sunfounder might a good choice.


Before going to next step, please aware that the soldering tools and 3D printer will be used in this project.
Let's get start and have fun!

Step 1: Electrics Parts preparation


Here are the parts:

1x Arduino Pro Mini
1x DC-DC(12-5v/3A output)
1x HC-06 Bluetooth module(option)
12x SG90 servo(3DOF for 4 legs)
1x 3000mhA Li battery
1x 12V Jack
1x 680 Ohm 1/4 watt 5% Resistor
1x 3mm Blue LED
1x Tactile Switch
1x 5x7cm perfboard
Some male and female pin headers
Small guage wire(Solid or Stranded)

I believe that these parts are most popular and not expensive. They are just cost me about 2,000 Taiwan dollar.
Step 2: Make the main-board


Refer to the schematics file, and place all components like the pictures. you can make the board as small as passable.
The main-board that the last one picture is the newest version, just for you reference.
Here are some tips while you are going to building the PCB:
1. Be sure the output voltage of DC-DC module should be 5v before mount to the perfboard.
2. The servos consume a lot of power, almost 3A in full loading condition. Please use more thick wire for "power" and ground" traces.
3. Do the "open/short" test with the multi-meter for your PCB when you finish the soldering, that is the important process.
4. Using the female pin header instead of solder the modules(Arduino, DC-DC) on the perfboard directly
5. The LED will be on while the "Switch" turns off. Why I design this way is because I would like to check the power source is ok or not when I plug in the power source like battery or something else, it is a simple way for protection..
6. While you see the LED turns on after connect the 12v battery to the board, congratulation!
Step 3: Test the main-board
Test process:
1. Don't plug the DC-DC and Arduino Pro Mini into the main-board
2. connect the battery to the 12v-Jack of main-board
3. Check the LED, if LED turns on, that is a good start.
4. Push the POWER-Switch, the LED should be off.
4. Using the multi-meter to check all of +5V and GND pins are correct
5. Push the POWER-Switch back to turn off the power, the LED turns on
6. Plug the DC-DC and Arduino Pro Mini into the main-board
7. Push the POWER-Switch, the LED turns off, but the LED of Arduino Pro Mini turns on
Then power off, and connect a servo to the first row of Leg1 connectors of main-board(pin2 of Arduino)
upload the "servo_test" code to Arduino and you will see the servo sweeps from 0 - 180 degree.
If you are here without any problem, that is a great progress!

Step 4: Building the mechanical parts - Download 3D STL files


This step is going to build the robot mechanical parts, you can print the parts by yourself or ask someone who has 3D printer to help you.
I also open the 3D model design which is design by Sketchup Make version.
You can put your great idea with it.
Download the STL file from http://www.thingiverse.com/thing:1009659
Print parts list:
1x body_d.stl
1x body_u.stl
2x coxa_l.stl
2x coxa_r.stl
2x tibia_l.stl
2x tibia_r.stl
4x femur_1.stl
8x s_hold.stl

Step 5: 3D objects printing


And print them out by your 3D printer.
Please check the configuration of 3D printer before start to print because of it will take a long time about 7~8 hours to print them all. Be patient~~~~
I suggest set the fill density to 35% to get legs structure stronger.
you can print these parts separate by color group.

Step 6: Preparing to assemable


tear down the parts and check the printing quality.
You can use the sandpaper for the surface polish
Refer to here to get more information: http://regishsu.blogspot.tw/2015/07/robot-quadrup...

Step 7: Assemble the body


Put the battery between the upper body case and lower body case with 4 screws(M3x25mm)

Step 8: Assemble the leg
And, install all of servos with legs parts, one leg comes with 3 servos and 4 screws(M1.6x3mm, or glue it anyway)
Notes: 1. Connect to all parts with screws and servos, but do not install the servo rocker arm in this step 2. Be sure the leg direction, refer to the picture 1 Refer to here to get more information:http://regishsu.blogspot.tw/2015/07/robot-quadrupe...

Step 9: Integrate 4 legs to body

connect all of legs to the body, and check all servos and joints are move smoothly.
Step 10: Connect servos to the main-board


Place the main-board onto the body-case and use the polymer clay to fix it.
And then, refer to the picture, follow the pin number which mark by pink color to connect all servo wire to the main-board, and green color is present the signal direction of servo wire, yellow connect to "S", red to "+", brown to "-".
Be sure the servo of legs should match the pin number of main-board and leg direction, otherwise, the legs will get crazy...

Step 11: Locate the initial position for legs


This is an important procedure, the install procedure:
1. upload the "legs_init" code to Arduino to activate the servos
2. place the legs as the position shows the picture 1, and install the servo rocker arm with screws.
3. tighten all of the screw Step 12: Organize the wires

Then, organize the wires of the servos to make it great looking.
Now, all of hardware installation was finished.

Step 13: It is showtime!!

It is excited to go this step.
Let's upload the "spider_open_v1" code to Arduino to make it moves!
you will see the action as following
1. stand up, wait 2 sec
2. step forward 5 steps, wait 2 sec
3. backward 5 steps, wait 2 sec
4. turn right, wait 2 sec
5. turn left, wait 2 sec
6. wave the hand,, wait 2 sec
7. shake the hand, wait 2 sec
8. sit down, wait 2 sec
9. back to 1
spider_open_v1 source code

Step 14: Do something special
you can add more special feature like change the move speed dynamically with remote control, that will let your robot more attractive.
Welcome to share the funny gaits or movement.
Here are some idea share with you in my blog.
Add the IR-detector to detect the obstacle.