Arduino Hexapod Avoider Robot
by Ghild.Zero in Circuits > Robots
18939 Views, 90 Favorites, 0 Comments
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
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
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
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
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)
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.
Realize Your PCB Design
Test your board and make sure there is no short circuit and all work properly.
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
Trial Test
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
Finally Done
Okay finally done ^^
Feel free if you have question.
Thank you ,
I hope you inspired