Introduction: Arduino Hexapod Avoider Robot

About: Lets learn together !!!

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 :

  1. # 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
  2. # 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
  3. # 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)

  4. # 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

  5. # 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)

  6. # 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)

  7. # 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