Please read through this guide carefully before assembling your Hexapod
Hexapod Robot Kit
This uneven terrain traveling hexapod comes with eighteen(18) CDS5516 high performance 300 degree rotation servos which gives this hexapod 18 degrees of freedom. The CDS5516 servos have more than 14kg/cm of max holding torque allowing the hexapod to stand on only two feet.
The CDS5516 servos have the capability of returning their current angle, torque, and working temperature when polled via serial interface. This feature allows for greater accuracy and control of each individual servo. Giving you access to critical information about each servo will also allow you to troubleshoot your sketches. The arduino mega 1280 and Mega IO expansion shield included in this robot kit make this hexapod a powerful, yet DIY-friendly robotics platform. The Mega's 54 I/O pins and multiple serial communications ports allow you to add many additional sensors and modules for all your robotic needs.
Buy it now: Hexapod Robot kit
Specification:
Power supply:
It is possible to power the whole robot with only one 7.4v battery for the Arduino mega board as well as for both servo driver boards.
Servos:
- Max holding torque: >14 kgf.cm
- Weight: 61 g
- Slewing range/servo mode: 300°
- Max rotate velocity: 0.18 sec/60°
Frame kit:
- Frame is made of 2mm surface-oxidized aluminum alloy board.
- 2mm*8mm self-tapping screws.
- 2mm*5mm self-tapping screws.
- 3mm*10mm screws and nuts.
- 3mm*8mm screws and nuts.
- 3mm*5mm screws and nuts.
- Footstep bearing * 6.
- M3*6mm nylon screws and nut * 4.
- M3*50mm hexagonal standoff * 4.
Basic Kit:
- Arduino Mega 1280 microcontroller board * 1.
- Mega IO Expansion Shield for Arduino Mega * 1.
- Hexapod robot frame kit * 1.
- Uptech CDS5516 Servos * 18.
- Servo driver board * 2.
- 7.4v battery * 1.
- Servo debugger board.
- Weight: 2.17 Kg
Wiring Diagram
Sample Code
/*
*Sample code for the hexapod robot.
*Author: Danfei Xu
*Created on Aug 9th, 2011
*You must import the below three libraries first.
*/
#include <CDS5500_2Serials.h>
#include <Hexapod_Servo.h>
#include <ServoConsole.h>
// Below are the ID arrays of servos. You must set the IDs of the servo according
//to the documents :
//IDs of the servos of the left front leg: 0, 1, 2 (inner, middle, outer)
//IDs of the servos of the left middle leg: 10, 11, 12(inner, middle, outer)
//IDs of the servos of the left back leg: 20, 21, 22 (inner, middle, outer)
//IDs of the servos of the right back leg: 30, 31, 32(inner, middle, outer)
//IDs of the servos of the right middle leg: 40, 41, 42 (inner, middle, outer)
//IDs of the servos of the right front leg: 50, 51, 52(inner, middle, outer)
int axisA[] = {0, 20, 40};
int axisB[] = {10, 30, 50};
int hipA[] = {1, 21, 41};
int hipB[] = {11, 31, 51};
int legA[] = {2, 22, 32};
int legB[] = {12, 32, 52};
int axis[] = {0, 10, 20, 30, 40, 50};
int hips[] = {1, 11, 21, 31, 41, 51};
int legs[] = {2, 12, 22, 32 ,42, 52};
// servo controller
ServoConsole console;
void setup(){
Serial.begin(115200); //For printing out data, or debugging.
Serial2.begin(1000000); // Used for control servos on left side.
Serial1.begin(1000000);// Used for control servos on right side.
}
void loop(){
console.Move(legs, 6, 170, 511); //Legs move to 170 for standing up
console.Move(hips,6, 480, 511); // hips move to 480 for standing up
console.Move(axisA, 3, 130, 511); // axis group A move to 130. Prepare for walking
console.Move(axisB, 3, 70, 511); // axis group B move 70. Prepare for walking
delay(1000); // waits for their moving
while(1){
walk();
//walking loop
}
}
void walk(){
delay(500);
console.MoveUp(hipB, 3, 100, 500); //hips group B move up 100
console.MoveUp(axisB, 3, 60, 300);// axis group B move forward 60
console.MoveDown(axisA, 3, 60, 300);// axis group A move backward 60
delay(500);// waits for movement
console.MoveDown(hipB, 3, 100, 500);//hips group B move down 100
delay(500);// waits for movement
console.MoveUp(hipA, 3, 100, 500);//hips group A move up 100
console.MoveDown(axisB, 3, 60, 300);// axis group B move backward 60
console.MoveUp(axisA, 3, 60, 300);// axis group A move forward 60
delay(500);// waits for movement
console.MoveDown(hipA,3, 100, 500);//hips group A move down 100
}
Downloads
Sample code and libraries Zip file includes all Documents, sample code, libraries, and servo testing program