You are on page 1of 4

Hexapod Structure from Printed Circuit Board Compatible with Arduino and Android

Program for Smart Phones


Adil Adilli, Doan Yldz, Emin en, Mustafa alayan Durmaz, members of ME462 courses
With the help of Asst. Prof. Dr. A. Bura KOKU
E-mail: e174951@metu.edu.tr, e167750@metu.edu.tr, e167793@metu.edu.tr, e162846@metu.edu.tr

Abstract- In this paper a Hexapod model which is made


from PCB is presented. The model uses the android and
arduino platforms to track and object and sustain the
communication between legs. The main purpose of this
hexapod system is showing the applicability of smart
phones in different mechatronic platforms. Also by
using the PCB it is aimed to get rid of the cable content
in system.
Keywords Hexapod, Android, Arduino, PCB
I-INTRODUCTION
In mechatronic design hexapod applications have important
research area. Commonly Hexapod part contains lots of
cables. This situation causes unaesthetic appearance on
system. In this design hexapod system is designed on PCB
(Printed Circuit Board) to get rid of the cable contents. All
parts of the hexapod including the arm and base are
structures from PCB.
Moreover, todays world smart phones are the most popular
technological devices. With regard to smart phone, all
sensor and processor capabilities come in one place.
Therefore by using the properties of smart phone, PCB and
hexapod application are assembled.
To sustain the communication between hexapod and the
smart phone, Arduino which is another most popular open
source processor is used. To sustain the autonomous
movement of hexapod, Android OS is preferred. By using
camera of the smart phone with help of image processing
tool of Open CV object tracking is satisfied. Finally the
communication protocol between arms of the hexapod is
effectuated with I2C.

In general design procedure of the hexapod criteria that is


indicated below is considered.
Must to Have

Good to Have

Cable content requirement will be minimum.( Mostly


Connecion parts of arms)
Compatibility for all android OS smart phones
Robotic structure should give a permisson to construct
different platforms for different functions.
Structure will be PCB.

Gains from Project

PCB as a structure of the Hexapod parts


Smart Phone compatibility
Image processing with Android
Using the communication protocol I2C

Usage of wheel in robotic arm and make


transformation between robotic arm and wheel.

Constraints

Briefly, the general aspects of the hexapod can be listed as;

Android and arduino communication


Kinematic and dynamic design of robotic arm on PCB.
Design of PCB base structure which is compatible
with smart phone, arduino, external sensors and
actuators.
Incorporate the PCB base structure with robotic arm
platform to create hexapod robots.
Using smart phone sensors and processors for robotic
applications.
Usage of the robotic base with arduino without smart
phone.

Basically learning how to make and prepare a


mechatronic design. And to experience preparation
stages for a design.
In technical perspective, learning and making
functional a robot arm both in mechanical and
electronical manner.
Experiencing with the smart phone software
environment. And learning how to prepare a GUI
application in smart phone.

Integrating the smartphone with arduino.

II-HEXAPOD STRUCTURE
A.

NA =

TorkC = NA (L1 Cos(angle) + L2)


are used.[2]

Mechanical Calculation

As mechanical calculation it is measured whether system


will be stable or not with the total weight of structure.

According to calculation results the max torque results in


1.269 kg.cm at point C. The servo motor ( Sanwa sx-091)
has capability of 1.25 kg.cm which is close the our
calculation result.
B.

Printed Circuit Board Design

As indicated before the main aim of using PCB is reducing


the cable needs for the designer. The PCB structure can be
divided into three parts These parts are

Base
Link1 of the arm
Link2 of the arm

These connection can be also seen in figure 2.

Figure 1

Base

Link 2

The calculations are made on mid location arms. [1]From


the excel calculation the most critical position found at the
position which is given in figure 1. The symbols
explanations which are used in calculation are given below;
Link 1

WL1: total weight at link 1(A-B)


WL2: total weight at link 2(B-C)
WL4: total weight at link 3 and 4(C-C)
L1: length of link 1(A-B)
L2: length of link 2(B-C)
L4: length of link 4(D-D)
NA: reaction force at the connection point between link 1
and ground
angle: angle between link1 and ground

To calculate maximum torque needed at B:

NA =

Tork B = NA L1 cos(angle)

To calculate maximum torque needed at C:

Figure 2
There are a lot of components take place on PCB. For
example base includes;

Arduino Mega
6 Servo motors to use as legs
1 servo motor to use as arm
3 ultrasonic distance sensors
Bluetooth
Regulator
Battery

In link 2 there is Arduino mini and in link a servo


connection takes place. For the convenience the PCB
assembly parts are designed for one layer only. All wire
connections are collected at bottom copper layer. The
general appearance of the PCB structure can be found in
pictures 3, 4 and 5.

to user to open the bluetooth. By selecting the bluetooth


device from the menu, user can freely select the tracking
object via touch screen. By selecting the simple area in
touched region, programs detects the all similar areas
according to HSV value of the environment. The general
flow diagram of the program is given in figure 6. [3]

Figure 3

Figure 4
Figure 6
D.

Figure 5
All parts are designed in ARES-ISIS program. All wire
connection are carefully designed to make sure that no
connection failure and on conflict between the hole
locations and wire path.
C.

Android Programming Feature

Smart phones mostly used for the image processing part of


the project. By using the camera of the smart phone the
object tracking feature is tired to achieve. To gain the object
tracking feature to hexapod system Open CV open source
code is used. Also combining the activities of object
tracking and bluetooth data transmission in a single activity
provides the easy to use for the users. The working
principle can be explained as; firstly program needs for the
open CV manager to run the image processing code.
Therefore at the beginning of the program, it asks to
download the open CV manager from Google market store.
After that to transmit the position in x, y coordinate for
right and left movement of hexapod and the area changes
for the front and back movement of hexapod program asks

Communication Protocol

For the communication protocol between arms of hexapod


and the arduino I2C is used. Briefly I2C is based on the
communications between master and slave elements in
electronic structure. The master is always the device that
drives the SCL clock line. The slaves are the devices that
respond to the master. A slave cannot initiate a transfer over
the I2C bus, only a master can do that. There can be, and
usually are, multiple slaves on the I2C bus, however there is
normally only one master. It is possible to have multiple
masters, but it is unusual and not covered here. On your
robot, the master will be your controller and the slaves will
be our modules such as the SRF08 or CMPS03. Slaves will
never initiate a transfer. Both master and slave can transfer
data over the I2C bus, but that transfer is always controlled
by the master. The standard clock (SCL) speed for I2C up
to 100KHz. Philips do define faster speeds: Fast mode,
which is up to 400KHz and High Speed mode which is up
to 3.4MHz. All of our modules are designed to work at up
to 100KHz. The master can continue to send data bytes to
the slave and these will normally be placed in the following
registers because the slave will automatically increment the
internal register address after each byte. When the master
has finished writing all data to the slave, it sends a stop
sequence which completes the transaction. So to write to a
slave device:

1. Send a start sequence


2. Send the I2C address of the slave with the R/W bit low
(even address)
3. Send the internal register number you want to write to
4. Send the data byte
5. [Optionally, send any further data bytes]
6. Send the stop sequence.

Figure 7
III-Conclusion
In this paper a basic introduction the hexapod design is
shown to the people who interests in this area. Also this
project is shared in ME462 course site as a open source
document.
For the further investigation this project also provides a
basis. With a new controller algorithm for the movement
system can be made more stable. Or by implementing the
obstacle detection the field of application can be enlarged.
On PCB there are also different places to transmit sensor
signals. Therefore besides the smart phone sensors,
different sensors can be used in Hexapod design for
different applications.
For the future application the android code can be upgraded
to sustain different GUI for different application Such as
controlling the hexapod arms via smart phone. Lastly
because of the design of the hexapod system is shared as
open source, the most elegant system can be design based
on these knowledge.
ACKNOWLEDGMENT
This work is supported both financially and strategically by
Prof. Dr. Bura Koku and Assistant Kadri Bura ztemiz.
REFERENCE
[1] Xilun Ding, Zhiying Wang, A. Rovetta, J. M. Zhu,
Locomotion analysis of hexapod robot, Climbing and Walking
Robots, March 2010, ISBN: 978-953-307-030-8 pp.291-310 India.
[2] J. Barreto, A. Trigo, P. Menezes, J. Dias, Kinematic and
dynamic modeling of a six legged robot.
[3] http://opencv.org/
[4] W. Krzysztof, B. Dominik, K. Andrzej, Control and
Environmentsensing system for a six-legged robot, Journal of
Automation,Mobile Robotics & Intelligent Systems, Vol 2 No3
2008.