Introduction: Arduino Hexapod Avoider Robot
Hi Everyone,
Let me introduce my Friend, MBR-L109R
# 12 Servos
# Body made from Acrilic
# 5 Ultrasonics range finder
# Arduino Mega as Controller
# 3300 mAh Li-po power source
# UBEC 5A as Power supply for servos
Step 1: My First Hexapod
That is my MBR-L109
Yess !!!
"R" at MBR-L109R standing for Rebirth
and that is my Photograph 2 Years ago ^^
This Robot I used for Robot Contest "Fire Fighting"
Represent Mercubuana University
Step 2: Mechanic Design
The first thing I do is Design the mechanic.
Mechanic is the first step, but to make a good mechanic, you need to know all part which will be attach to the mechanic.
so I need to know :
# the size of all electronic component and how they will be attached
# the crossing cables from layer to other layer
# the high of the component each layer
# the movement of robot
# Area of Servos to move freely
Step 3: Realize Your Design
I choose to use acrylic and use Laser Cutting to cut more precision.
But Remember , you must really sure before you go to cut.
I use carton to simulate before I go to cut , just to make me sure I did not made some mistake
Step 4: Electronics
Know your component is really important to design mechanic and to program
=========================================================================
Arduino Mega Summary :
- Microcontroller : ATmega2560
- Operating Voltage : 5V
- Input Voltage (recommended) : 7-12V
- Input Voltage (limits) : 6-20V
- Digital I/O Pins : 54 (of which 15 provide PWM output)
- Analog Input Pins : 16
- DC Current per I/O Pin : 40 mA
- DC Current for 3.3V Pin : 50 mA
- Flash Memory : 256 KB of which 8 KB used by bootloader
- SRAM : 8 KB
- EEPROM : 4 KB
- Clock Speed :16 MHz
=========================================================================
Futaba S3003 - Servo Standard :
Basic Information Modulation:
- Analog Torque: 4.8V: 44.0 oz-in (3.17 kg-cm) 6.0V: 57.0 oz-in (4.10 kg-cm)
- Speed: 4.8V: 0.23 sec/60° 6.0V: 0.19 sec/60°
- Weight: 1.31 oz (37.0 g)
- Dimensions: Length:1.57 in (39.9 mm) Width:0.79 in (20.1 mm) Height:1.42 in (36.1 mm)
- Gear Type: Plastic
- Rotation/Support: Bushing
Additional Specifications
- Rotational Range: 60°
- Pulse Cycle: 30 ms
- Pulse Width: 500-3000 µs
- Connector Type: J
=========================================================================
Ping Parallax :
- Supply Voltage – 5 VDC
- Supply Current – 30 mA typ; 35 mA max
- Range – 2 cm to 3 m (0.8 in to 3.3 yrds)
- Input Trigger – positive TTL pulse, 2 uS min, 5 µs typ.
- Echo Pulse – positive TTL pulse, 115 uS to 18.5 ms
- Echo Hold-off – 750 µs from fall of Trigger pulse
- Burst Frequency – 40 kHz for 200 µs
- Burst Indicator LED shows sensor activity
- Delay before next measurement – 200 µs
- Size – 22 mm H x 46 mm W x 16 mm D (0.84 in x 1.8 in x 0.6 in)
Step 5: Design Some Board
I need to make my own PCB board for Jumper and Power Supply.
Jumper board for Servos and Ultrasonics.
Power supply for Arduino and Ultrasonics.
Step 6: Realize Your PCB Design
Test your board and make sure there is no short circuit and all work properly.
Step 7: Assemble All Parts
This robot have 3 layers.
1st Layer for :
- mount legs
- battery
- servos jumper
- UBEC
- Power Switch
2nd Layer for :
- Arduino Mega
- 5vdc Power Supply
3rd Layer for :
- Ultrasonics Jumper
- Ultrasonics
Step 8: Trial Test
Step 9: Programming and Algoritma
This the flow of the program :
- # first turned on , The robot do "Stanby Pose" for 3 second
# Ultrasonics program is running to collect datas
# Foward Function is running as default function
# All LED Indicator turn off
# 1st, 2nd & 3rd ultrasonics is collecting datas
# Robot keep moving foward until 1st, 2nd & 3rd ultrasonics read range < 11 cm - # when 2nd ultrasonic or 3rd ultrasonic read range < 11 cm
# that mean robot in not straight state
# robot will turn right , 1 step when read range < 11 cm at 2nd Ultrasonic
# robot will turn left , 1 step when read range < 11 cm at 3nd Ultrasonic
# when the robot's state is straight , Foward Function is running as default function - # when robot read 1st Checkpoint ( there is wall in front of the robot )
# Robot read data from 4th & 5th Ultrasonics
# robot will turn right , 3 step when read range < 11 cm at 4th Ultrasonic , then 1st LED turn On# robot will turn left , 3 step when read range < 11 cm at 5th Ultrasonic , then 1st LED turn On
# Robot runs 1st and 2nd algoritma (w/o stanby pose) # when robot read 2nd Checkpoint
# Robot read data from 4th & 5th Ultrasonics
# robot will turn right , 3 step when read range < 11 cm at 4th Ultrasonic , then 2nd LED turn On
# robot will turn left , 3 step when read range < 11 cm at 5th Ultrasonic , then 2nd LED turn On
# Robot runs 1st and 2nd algoritma (w/o stanby pose# when robot read 3rd Checkpoint
# Robot read data from 4th & 5th Ultrasonics
# robot will turn right , 3 step when read range < 11 cm at 4th Ultrasonic , then 3rd LED turn On
# robot will turn left , 3 step when read range < 11 cm at 5th Ultrasonic , then 3rd LED turn On
# Robot runs 1st and 2nd algoritma (w/o stanby pose)# when robot read 4th Checkpoint
# Robot read data from 4th & 5th Ultrasonics
# Robot read 3 LEDs at HIGH State and turn left 3 step then 4th LED turn on
# Robot runs 1st and 2nd algoritma (w/o stanby pose)# when robot read there is a wall in front of the robot
# Robot Read all LED Indicator in HIGH state, that mean The robot is FINISH
# Robot standby pose for 10 seconds
Step 10: Finally Done
Okay finally done ^^
Feel free if you have question.
Thank you ,
I hope you inspired