Académique Documents
Professionnel Documents
Culture Documents
SUPERVISED BY
MR. ASIF IQBAL
2009-2013
SUPERVISED BY
MR. ASIF IQBAL
EE-09-6394
EE-09-6391
Dedicated to our parents and teachers for their guidance and prayers
and to our friends who helped us out in every possible manner.
iv
FINAL APPROVAL
This is to certify that we have read the project title submitted by Muhammad Ahkam Khan and
Muhammad Waqar as mentioned on the title page. It is our judgment that this project is of
standard to warrant its acceptance by National University of Computer and Emerging SciencesFAST Peshawar, for the degree of BS (EE).
Examination Committee:
1. Project Supervisor:
_____________________
Mr. Asif Iqbal
Lecturer
Department of Electrical Engineering
National University of Computer and Emerging Sciences-FAST
2. FYP Coordinator:
_____________________
Mr. Ahmed Saeed Qazi
Assistant Professor
Department of Electrical Engineering
National University of Computer and Emerging Sciences-FAST
_____________________
Mr. Ahmed Saeed Qazi
National University of Computer and Emerging Sciences-FAST
v
STUDENTS DECLARATION
I declare that this project entitled WIRELESS GESTURE CONTROLLED ROBOT, submitted
as requirement for the award of BS (EE) degree, does not contain any material previously
submitted for a degree in any university; and that to the best of my knowledge it does not contain
any material previously published or written by another person except where due reference is
made in the text.
(p09-6394)
SIGNATURE__________________
Muhammad Waqar
(p09-6391)
SIGNATURE__________________
vi
ACKNOWLEDGEMENT
Thanking ALLAH for His Blessings, Mercy & Favors. We would like to acknowledge our
Parents and all Teachers, who supported us both morally and technically, especially our
supervisor Mr. Asif Iqbal who helped us at every step in the making of our project, helped us in
the clarification of our queries related to our project and technical problems.
Also our special thanks to all class fellows and seniors, who helped us in clarification of any
issue as well as implementation and in documentation.
vii
ABSTRACT
Gesture Controlled Robot is a robot which can be controlled by simple gestures. The user just
needs to wear a gesture device which includes a sensor. The sensor will record the movement of
hand in a specific direction which will result in the movement of the robot in the respective
direction. The robot and the Gesture device are connected wirelessly via radio waves. The
wireless communication enables the user to interact with the robot in a more friendly way.
viii
TABLE OF CONTENTS
CHAPTER 1: INTRODCUTION........................................................................... 1
1.1 Robot ................................................................................................................. 1
1.2 Human Machine Interaction ............................................................................. 1
1.2 Gesture .............................................................................................................. 2
1.1 Motivation For Project ...................................................................................... 2
1.2 Objective Of Project ........................................................................................ 2
ix
CHAPTER 1: INTRODUCTION
Recently, strong efforts have been carried out to develop intelligent and natural interfaces
between users and computer based systems based on human gestures. Gestures provide an
intuitive interface to both human and computer. Thus, such gesture-based interfaces can not only
substitute the common interface devices, but can also be exploited to extend their functionality.
1.1 ROBOT
A robot is usually an electro-mechanical machine that can perform tasks automatically. Some
robots require some degree of guidance, which may be done using a remote control or with a
computer interface. Robots can be autonomous, semi-autonomous or remotely controlled. Robots
have evolved so much and are capable of mimicking humans that they seem to have a mind of
their own.
Page | 1
1.3 GESTURE
A gesture is an action that has to be seen by someone else and has to convey some piece of
information. Gesture is usually considered as a movement of part of the body, esp. a hand or the
head, to express an idea or meaning.
Page | 2
Page | 3
2.2 APPLICATIONS
Through the use of gesture recognition, remote control with the wave of a hand of various
devices is possible.
Gesture controlling is very helpful for handicapped and physically disabled people to
achieve certain tasks, such as driving a vehicle.
Gestures can be used to control interactions for entertainment purposes such as gaming to
make the game player's experience more interactive or immersive.
Page | 4
Accelerometer
Decoder
MCU
Comparator
RF Receiver
Motor Driver
Encoder
RF Transmitter
Motors
Page | 5
We divided our task into two parts to make the task easy and simple and to avoid complexity and
make it error free. The first is the transmitting section which includes the following components:
Accelerometer
Comparator IC
Encoder IC
RF Transmitter Module
The second is the receiving end which comprises of following main components:
RF Receiver Module
Decoder IC
Microcontroller
Motor Driver IC
DC Geared Motors
Page | 6
SYMBOL
FUNCTION
ST
GND
VCC
Page | 8
PIN NO.
SYMBOL
FUNCTION
Output 1
Input 1-
Input1+
VCC
Input 2+
Input 2-
Output 2
Output 3
Input 3-
10
Input 3+
11
Ground
Ground (0V)
12
Input 4+
13
Input 4-
14
Output 4
Page | 9
Page | 10
PIN NO.
SYMBOL
FUNCTION
1-8
A0-A7
Address pins
Vss
Ground pin
13-10
D0-D3
Output pins
14
TE
15-16
Osc1-Osc2
17
Dout
18
Vcc
5V supply voltage
Page | 11
FUNCTION
VCC
5V supply
GND
Ground pin
Data
Ant
Page | 12
PIN
FUNCTION
VCC
5V supply
GND
Ground pin
Data
Ant
Page | 13
SYMBOL
FUNCTION
1-8
A0-A7
Address pins
Vss
Ground pin
13-10
D0-D3
Output pins
14
Din
Input from RF
15-16
Osc1-Osc2
17
VT
18
Vcc
5V supply voltage
Page | 14
Page | 15
A crystal oscillator is attached to the pins 18 and 19 of the microcontroller. The oscillator creates
an electrical signal of a very precise frequency which is used to keep track of time. Two
capacitors are connected in parallel with the oscillator to remove unwanted frequencies.
Page | 16
Page | 17
and clever design is a H-bridge circuit where transistors are arranged in a shape that resembles
the English alphabet "H".
Turning off all the switches gives the motor a free wheel drive.
Turning on A & C at the same time or B & D at the same time shorts the entire circuit.
So, never try to do it.
Page | 18
3.8 DC MOTORS
A machine that converts DC power into mechanical power is known as a DC motor. Its operation
is based on the principle that when a current carrying conductor is placed in a magnetic field, the
conductor experiences a mechanical force.
DC motors have a revolving armature winding but non-revolving armature magnetic field and a
stationary field winding or permanent magnet. Different connections of the field and armature
winding provide different speed/torque regulation features. The speed of a DC motor can be
controlled by changing the voltage applied to the armature or by changing the field current.
Page | 19
Page | 20
CHAPTER 4: IMPLEMENTATION
The accelerometer records the hand movements in the X and Y directions only and outputs
constant analog voltage levels. These voltages are fed to the comparator IC which compares it
with the references voltages that we have set via variable resistors attached to the IC. The levels
that we have set are 1.7V and 1.4V. Every voltage generated by the accelerometer is compared
with these and an analog 1 or 0 signal is given out by the comparator IC.
Page | 21
Page | 22
Page | 23
This transmitted signal is received by the RF receiver, demodulated and then passed onto the
decoder IC. The decoder IC decodes the coded waveform and the original data bits are
recovered. The input is a serial coded modulated waveform while the output is parallel. The pin
17 of the decoder IC is the Valid Transmission (VT) pin. A led can be connected to this pin
which will indicate the status of the transmission. In the case of a successful transmission, the led
will blink.
The parallel data from the encoder is fed to the port 1of the microcontroller. This data is in the
form of bits. The microcontroller reads these bits and takes decisions on the basis of these bits.
What the microcontroller does is, it compares the input bits with the coded bits which are burnt
into the program memory of the microcontroller and outputs on the basis of these bits. Port 2 of
the microcontroller is used as the output port. Output bits from this port are forwarded to the
motor driver IC which drives the motors in a special configuration based on the hand
movements.
At a dead stop, a motor produces no voltage. If a voltage is applied and the motor begins to spin,
it will act as a generator that will produce a voltage that opposes the external voltage applied to
it. This is called Counter Electromotive Force (CEF) or Back Electromotive Force (Back EMF).
If a load stops the motors from moving then the current may be high enough to burn out the
motor coil windings. To prevent this, flyback diodes are used. They prevent the back emf from
increasing and damaging the motors.
The schematic of receiving end can be seen below:
Page | 24
Page | 25
4.1 SIMULATION
We performed a simulation of our project in PROTEUS and the code was written in C language
using KEIL MICROVISION. We wrote a code for the microcontroller to run DC motors using
the H-Bridge IC (L293D). In the simulation we sent the relevant data to the Microcontroller
(AT89C51) through switches. The Microcontroller processed the data and sent the information to
the Actuator IC (L293D). The Actuator IC upon receiving information showed response by
driving the DC motors. The simulation schematic is as follow:
Page | 26
CHAPTER 5: CONCLUSION,
LIMITATIONS AND FUTURE WORK
5.1 CONCLUSION
We achieved our objective without any hurdles i.e. the control of a robot using gestures. The
robot is showing proper responses whenever we move our hand. Different Hand gestures to
make the robot move in specific directions are as follow:
The robot only moves when the accelerometer is moved in a specific direction. The valid
movements are as follows:
DIRECTION
ACCELEROMETER ORIENTATION
Forward
+y
Backward
-y
Right
+x
Left
-x
Stop
Rest
Page | 28
Figure5-6 Robot-2
Page | 29
Page | 30
Page | 31
Page | 32
The on-board batteries occupy a lot of space and are also quite heavy. We can either use
some alternate power source for the batteries or replace the current DC Motors with ones
which require less power.
Secondly, as we are using RF for wireless transmission, the range is quite limited; nearly
50-80m. This problem can be solved by utilizing a GSM module for wireless
transmission. The GSM infrastructure is installed almost all over the world. GSM will not
only provide wireless connectivity but also quite a large range.
Thirdly, an on-board camera can be installed for monitoring the robot from faraway
places. All we need is a wireless camera which will broadcast and a receiver module
which will provide live streaming.
Page | 33
6.1 SOFTWARE
We targeted to choose a language that is easy to understand and program. So we chose assembly
language for our project. Assembly language is the basic language of microcontrollers. Although
its not user friendly in terms of programming but still one can learn it quickly.
6.2 HARDWARE
We chose accelerometer as the sensing device because it records even the minute movements.
We could also have completed our project using Arduino but chose microcontroller instead
because its cost is low and is easily available everywhere. There are a number of dc geared
motors available but the ones we chose are capable of supporting loads up to 6kgs.
6.3 EXPENSES
This project is quite cost effective. The components used are easily available in the market apart
from accelerometer, RF modules and the motors. These components are quite cheap as compared
to the motors which are the only expensive part in our whole project. But these particular motors
are capable of providing support to loads up to 6kgs which is what we wanted.
Page | 34
S. NO
COMPONENT
COST (PKR)
12
24
100
100
1uF Capacitor
10
Accelerometer (ADXL335)
2360
2360
Comparator IC (LM324)
15
15
20
Encoder IC (PT2262)
200
200
RF Module (Rx/Tx)
1013
1013
10
LED
11
12
Decoder IC (PT2272)
325
325
13
Microcontroller (AT89C51)
85
85
14
10
10
15
33pF Capacitor
16
110
110
17
1N4007 Diode
18
6V/4.5A Battery
490
980
19
DC Gear Motors
8000
16000
20
Base
300
Page | 35
21
Vero Board
85
170
22
Wires
10
30
23
Free Wheels
100
200
24
Hand Assembly
150
Total
22120
Page | 36
MICROCONTROLLER CODE
;;;;;;;;;;;;;gesture based robot;;;;;;;;;;;;;;;
org 00h
mov p1,#0ffh
mov p2,#00h
start:mov a,p1
anl a,#0fh
;;;;;;;;;;;;;For Stopping;;;;;;;;;;;;;;;;;;;;;;
cjne a,#0ch,nxt
clr p2.0
clr p2.1
clr p2.2
clr p2.3
;;;;;;;;;;;;;For moving Forward;;;;;;;;;;;;;;;;
nxt:cjne a,#08h,nxt1
setb p2.0
setb p2.2
clr p2.1
clr p2.3
;;;;;;;;;;;;;For Reverse;;;;;;;;;;;;;;;;;;;;;;;
nxt1:cjne a,#04,nxt2
setb p2.3
setb p2.1
clr p2.2
clr p2.0
Page | 37
Page | 38
Page No.
Page | 40
REFERENCES
[1] Gesture Controlled Robot PPT
<http://seminarprojects.com/s/hand-gesture-controlled-robot-ppt>
[2] Gesture Controlled Tank Toy User Guide
<http://www.slideshare.net/neeraj18290/wireless-gesture-controlled-tank-toy-transmitter>
[3] Embedded Systems Guide (2002)
<http://www.webstatschecker.com/stats/keyword/a_hand_gesture_based_control_interface_for_a
_car_robot>
[4] Robotic Gesture Recognition (1997) by Jochen Triesch and Christoph Von Der Malsburg
<http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.37.5427>
[5] Real-Time Robotic Hand Control Using Hand Gestures by Jagdish Lal Raheja, Radhey
Shyam, G. Arun Rajsekhar and P. Bhanu Prasad
[6] Hand Gesture Controlled Robot by Bhosale Prasad S., Bunage Yogesh B. and Shinde
Swapnil V.
[7]< http://www.robotplatform.com/howto/L293/motor_driver_1.html>
[8]< http://en.wikipedia.org/wiki/Gesture_interface>
[9]< http://www.wisegeek.com/what-is-a-gear-motor.htm>
Page | 41
[10]<http://www.scribd.com/doc/98400320/InTech-Real-Time-Robotic-Hand-Control-UsingHand-Gestures>
[11]< http://en.wikipedia.org/wiki/DC_motor>
[12]<http://electronics.stackexchange.com/questions/18447/what-is-back-emf-counterelectromotive-force>
[13]< http://en.wikipedia.org/wiki/Robots>
[14]<www.alldatasheet.com>
[15]<www.google.com>
[16]<www.wikipedia.com>
Page | 42