Submitted By
Harendra Rajput
1106432017
Prateek Gupta
1106432029
Shubham Varshney
1106432037
Vishnu Upadhyay
1106432044
ABSTRACT
ii
ACKNOWLEDGEMENT
Development of this project was a meticulous job and requires a lot of
commitment. It is pleasure for us to express our thanks and heartiest gratitude to
Mr. T.S.S.Subramanian (Asst. Professor, EIE Department) ,Mr. Nitin Bansal
(Project Coordinator) and Mr. S.K. Agrahari (H.O.D) for providing us the
required useful information and guiding us through this project. They were very
encouraging and helpful throughout this project.Our sincere gratitude to HCST,
in general for providing, study material and labs with all facilities for project
development.
We would like to thank all those who helped us directly or indirectly during the
development of this challenging project. We would like to take this opportunity
to thank them all while we cheerfully share the accurate credit for accurate
aspect of this project report, the mistakes and omissions we have to claim as our
alone please bring it out to our notice.
iii
TABLE OF CONTENTS
Title
PageNo.
Certificate........ii
Abstract.. iii
Acknowledgement .iv
Objective. . .ix
CHAPTER 1: INTRODUCTION
1.1 Robot ..x
1.2 Human machine interaction ..xi
1.3 Gesture ....xi
1.4 Motivation for project ...xi
LITERATURE SURVEY.........xi
CHAPTER 2 : COMPONENTS DESCRIPTION
2.1 433.92 Transmitter/Reciever
..xiii-xv
iv
Schematic Diagramsxlvii-xlviii
CHAPTER 4: ADVANTAGESliii-liv
REFERENCES..lvii
LIST OF FIGURES
Figure
Page No
CHAPTER 2
1. 433.92MHz TRANSMITTER/RECIEVER ....xiii-xv
2. MOTOR DRIVER IC (L293D) ...xvi
3. ATMEL AT 89S52 MICROCONTROLLER Pin
Diagramxvii
4. AT 89S52 ICxvii
5. VOLTAGE REGULATOR IC ...xxix
6. CAPACITOR 10F..........................xxx
7. Crystal Oscillators...xxxi
8. PCB..xxvi
9. Single Pole Antenna...xxxiii
10. LED 3mm..xxxiv
11. Batteryxxxv
12. LM324 IC OP-AMP..................................xxxvi
13. LM324 COMPARATOR IC Pin Config..xxxvi
14. LM324 COMPARATOR IC .xxxvii
15. Resistors Coding...xli
16. HT12E ENCODER IC PIN DIAGRAM.. ..xlii
17. HT12D DECODER IC PIN DIAGRAM ..xliii
18.VELOSTAT .. .....xliv
vi
19. Switch.xlv
20. Diode.xlvi
CHAPTER 3
1. Transmitter..xlvii
2. Reciever..xlvii
GLIMPSES OF PROJECTlvii
vii
LIST OF TABLES
TABLE NO.
1
2
viii
TOPIC
PORT 1
CONFIGURATION
PORT 3
CONFIGURATION
PAGE NO.
xxvi
xxvii
OBJECTIVE
1. Humans communicate mainly by vision and gesture; therefore, a manmachine interface would be more intuitive if it made greater use of
gesture recognition. Another advantage is that the user not only can
communicate from a distance, but have no need of physical contact
with the computer. We aim to design hardware instrumentation for
gesture controlled robot
2. Hardware instrumentation-gesture device
3. Hardware instrumentation-robotic device
4. To do real time monitoring of the system
ix
CHAPTER 1
INTRODUCTION
We generally find people working in chemical industries under different
hazardous condition. These people suffer with many dangerous diseases
like skin cancer, lungs problem and many more. So we finally thought of
designing a robot that can copy that instant action of human being under
various conditions and situations .In market many types of robot are
available that are controlled by remote or cellphone or by direct wired
connection but their costs are high even for low end application activities.
So we decided to design a robot that doesnt require any type of remote or
any physical communication module. It is a smart robot which will be
driving itself according to the gestures of user's hand. Hardware required
is very small, and hence low cost and small in size. Thus, monitoring a
number of tasks from a distance wirelessly in a more convenient way is
possible.
Major artifacts related to this project are explained below.
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.
xi
LITERATURE SURVEY
There exist some works in the field gesture recognition in which
instruments are designed and build for man-machine interface using a
video camera to interpret the American one-handed sign language
alphabet and number gestures (plus others for additional keyboard and
mouse control).
Humans communicate mainly by vision and sound, therefore, a manmachine interface is also available which is intuitive. It makes greater use
of vision and audio recognition. Another advantage is that the user not
only can communicate from a distance, but need have no physical contact
with the computer. However, unlike audio commands, a visual system
will be preferable as in noisy environments or at situations where sound
would cause a disturbance.
There is a simplification used in this project, which was not found in any
recognition methods researched. The number of different gestures
recognised and the recognition accuracy are amongst the best found.
xii
CHAPTER 2
COMPONENTS DESCRIPTION
2.1 433.92 MHz TRANSMITTER/RECEIVER
xiii
Transmitter
Specification:
Working voltage: 3V - 12V fo max. power use 12V
Working current: max Less than 40mA max , and min 9mA
Resonance mode: (SAW)
Modulation mode: ASK
Working frequency: Eve 315MHz Or 433MHz
Transmission power: 25mW (315MHz at 12V)
Frequency error: +150kHz (max)
Velocity : less than 10Kbps
xiv
Receiver:
Specification:
Working voltage: 3V - 12V fo max. power use 12V
Working current: max Less than 40mA max , and min 9mA
Resonance mode: (SAW)
Modulation mode: ASK
Working frequency: Eve 315MHz Or 433MHz
Transmission power: 25mW (315MHz at 12V)
Frequency error: +150kHz (max)
Velocity : less than 10Kbps
xv
xvi
xvii
DESCRIPTION
The AT89S52 is a low-power, high-performance CMOS 8-bit
microcontroller with 8K bytes of in-system programmable Flash
memory. The device is manufactured using Atmels high-density
nonvolatile memory technology and is compatible with the
industry-standard 80C51 instruction set and pin out. The on-chip
Flash allows the program memory to be reprogrammed in-system
or by a conventional nonvolatile memory programmer. By
combining a versatile 8-bit CPU with in-system programmable
Flash on a monolithic chip, the Atmel AT89S52 is a powerful
microcontroller which provides a highly-flexible and cost-effective
solution to many embedded control applications. The AT89S52
provides the following standard features: 8K bytes of Flash, 256
bytes of RAM, 32 I/O lines, timer, two data pointers, three 16-bit
timer/counters, a six-vector two-level interrupt architecture, a full
duplex serial port, on-chip oscillator, and clock circuitry. In
addition, the AT89S52 is designed with static logic for operation
down to zero frequency and supports two software selectable
power saving modes. The Idle Mode stops the CPU while allowing
the RAM, timer/counters, serial port, and interrupt system to
continue functioning. The Power-down mode saves the RAM contents but freezes the oscillator, disabling all other chip functions
until the next interrupt or hardware reset.
2.1.2 MICROCONTROLLER SYSTEM
In today present a lot of microcontroller manufactures appeared
almost every major electronic company produce their own
microcontroller to use into their own devices each microcontroller
type may add or improve existing features but all microcontrollers
share basic features that is microprocessor (CPU), memory and an
input-output (I/O) device.
The input components would consist of digital devices such as,
switches, push buttons, pressure mats, float switches, keypads,
radio receivers etc. and analogue sensors such as light dependent
resistors, thermistors, gas sensors, pressure sensors, etc.
xviii
The most obvious choice then for the microcontroller is how many
digital inputs, analogue inputs and outputs does the system require.
This would then specify the minimum number of inputs and
outputs (I/O) that the microcontroller must have. If analogue inputs
are used then the microcontroller must have an Analogue to Digital
(A/D) module inside.
The next consideration would be what size of program memory
storage is required. This should not be too much of a problem when
starting out, as most programs would be relatively small.
The clock frequency determines the speed at which the instructions
are executed. This is important if any lengthy calculations are
being undertaken. The higher the clock frequency the quicker the
micro will finish one task and start another.
Other considerations are the number of interrupts and timer circuits
required how much data EEPROM if any is needed.
Microcontrollers have traditionally been programmed using the
assembly language of the target device. Although the assembly
language is fast, it has several disadvantages. An assembly
program makes learning and maintaining a program written using
the assembly language difficult. Also, microcontrollers
manufactured by different firms have different assembly
languages, so the user must learn a new language with every new
microcontroller he uses.
Microcontrollers can also be programmed using a high-level
language, such as BASIC, PASCAL, or C. High-level languages
are much easier to learn than assembly languages. They also
facilitate the development of large and complex programs.
xix
MEMORY UNIT
Memory, an important part of a microcontroller system, can be
classified into two types: program memory and data memory.
Program memory stores the program written by the programmer
and is usually nonvolatile (i.e., data is not lost after the power is
turned off). Data memory stores the temporary data used in a
program and is usually volatile (i.e., data is lost after the power is
turned off).
xx
RAM
RAM, random access memory, is a general purpose memory that
usually stores the user data in a program. RAM memory is volatile
in the sense that it cannot retain data in the absence of power (i.e.,
data is lost after the power is turned off). Most microcontrollers
have some amount of internal RAM, 256 bytes being a common
amount, although some microcontrollers have more, some less. The
AT89C52 microcontroller, for example, has 256 bytes of RAM.
Memory can usually be extended by adding external memory
chips.
ROM
ROM, read only memory, usually holds program or fixed user data.
ROM is nonvolatile. If power is removed from ROM and then
reapplied, the original data will still be there. ROM memory is
programmed during the manufacturing process, and the user cannot
change its contents. ROM memory is only useful if you have
developed a program and wish to create several thousand copies of
it.
THE CLOCK
All microcontrollers require a clock (or an oscillator) to operate,
usually provided by external timing devices connected to the
microcontroller. In most cases, these external timing devices are a
crystal plus two small capacitors. In some cases they are resonators
or an external resistor-capacitor pair. Some microcontrollers have
built-in timing circuits and do not require external timing
components. If an application is not time-sensitive, external or
internal (if available) resistor-capacitor timing components are the
best option for their simplicity and low cost. An instruction is
executed by fetching it from the memory and then decoding it. This
usually takes several clock cycles and is known as the instruction
cycle. Thus the microcontroller operates at a clock rate that is onequarter of the actual oscillator frequency. The 8051 series of
microcontrollers can operate with clock frequencies up to 40MHz.
TIMERS
Timers are important parts of any microcontroller. A timer is
basically a counter which is driven from either an external clock
pulse or the microcontrollers internal oscillator. A timer can be 8
bits or 16 bits wide. Data can be loaded into a timer under program
control, and the timer can be stopped or started by program control.
Most timers can be configured to generate an interrupt when they
reach a certain count (usually when they overflow). For example,
the AT89C52 microcontroller has three built-in timers.
xxii
RESET INPUT
A reset input is used to reset a microcontroller externally. Resetting
puts the microcontroller into a known state such that the program
execution starts from address 0 of the program memory. An
external reset action is usually achieved by connecting a pushbutton switch to the reset input. When the switch is pressed, the
microcontroller is reset.
INTERRUPTS
Interrupts are an important concept in microcontrollers. An
interrupt causes the microcontroller to respond to external and
internal (e.g., a timer) events very quickly. When an interrupt
occurs, the microcontroller leaves its normal flow of program
execution and jumps to a special part of the program known as the
interrupt service routine (ISR). The program code inside the ISR is
executed, and upon return from the ISR the program resumes its
normal flow of execution.
ANALOG-TO-DIGITAL CONVERTER
An analog-to-digital converter (A/D) is used to convert an analog
signal, such as voltage, to digital form so a microcontroller can
read and process it. Some microcontrollers have built-in A/D
converters. External A/D converter can also be connected to any
type of microcontroller. A/D converters are usually 8 to 10 bits,
having 256 to 1024 quantization levels. Most 8051
microcontrollers with A/D features have multiplexed A/D
converters which provide more than one analog input channel. The
xxiii
Serial Input-Output
Serial communication (also called RS232 communication) enables
a microcontroller to be connected to another microcontroller or to a
PC using a serial cable. Some microcontrollers have built-in
hardware called USART (universal synchronous-asynchronous
receiver-transmitter) to implement a serial communication
interface. The user program can usually select the baud rate and
data format. If no serial input-output hardware is provided, it is
easy to develop software to implement serial data communication
using any I/O pin of a microcontroller.
xxiv
FEATURES:
1. Compatible with MCS-51 Products
2. 8K Bytes of In-System Programmable (ISP) Flash Memory
Endurance: 10,000 Write/Erase Cycles
3. 4.0V to 5.5V Operating Range
4. Fully Static Operation: 0 Hz to 33 MHz
5. Three-level Program Memory Lock
6. 128 x 8-bit Internal RAM
7. 32 Programmable I/O Lines
8. Two 16-bit Timer/Counters
9. Six Interrupt Sources
10. Full Duplex UART Serial Channel
11. Low-power Idle and Power-down Modes
12. Interrupt Recovery from Power-down Mode
13. Watchdog Timer
14. Dual Data Pointer
15. Power-off Flag
16. Fast Programming Time
17. Flexible ISP Programming (Byte and Page Mode)
18. Green (Pb/Halide-free) Packaging Option
Pin Description
VCC: Supply voltage.
GND: Ground.
Port 0: Port 0 is an 8-bit open drain bi-directional I/O port. As an
output port, each pin can sink eight TTL inputs. When 1s are
written to port 0 pins, the pins can be used as high-impedance
inputs. Port 0 can also be configured to be the multiplexed loworder address/data bus during accesses to external program and
data memory. In this mode, P0 has internal pull-ups. Port 0 also
receives the code bytes during Flash programming and outputs the
code bytes during program verification. External pull-ups are
required during program verification.
xxv
Port 1: Port 1 is an 8-bit bi-directional I/O port with internal pullups. The Port 1 output buffers can sink/source four TTL inputs.
When 1s are written to Port 1 pins, they are pulled high by the
internal pull-ups and can be used as inputs. As inputs, Port 1 pins
that are externally being pulled low will source current (IIL)
because of the internal pull-ups. Port 1 also receives the low-order
address bytes during Flash programming and verification.
Table 1
Port Pin
Alternate Function
P1.6
P1.7
P1.8
Port 2: Port 2 is an 8-bit bi-directional I/O port with internal pullups. The Port 2 output buffers can sink/source four TTL inputs.
When 1s are written to Port 2 pins, they are pulled high by the
internal pull-ups and can be used as inputs. As inputs, Port 2 pins
that are externally being pulled low will source current (IIL)
because of the internal pull-ups. Port 2 emits the high-order address
byte during fetches from external program memory and during
accesses to external data memory that use 16-bit addresses (MOVX
@ DPTR). In this application, Port 2 uses strong internal pull-ups
when emitting 1s. During accesses to external data memory that
use 8-bit addresses (MOVX @ RI), Port 2 emits the contents of the
P2 Special Function Register. Port 2 also receives the high-order
address bits and some control signals during Flash programming
and verification.
Port 3: Port 3 is an 8-bit bi-directional I/O port with internal pullups. The Port 3 output buffers can sink/source four TTL inputs.
When 1s are written to Port 3 pins, they are pulled high by the
internal pull-ups and can be used as inputs. As inputs, Port 3 pins
that are externally being pulled low will source current (IIL)
because of the pull-ups.Port 3 receives some control signals for
Flash programming and verification.
xxvi
Table 2
Port
Pin
Alternate Functions
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
RST: Reset input. A high on this pin for two machine cycles while
the oscillator is running resets the device. This pin drives High for
98 oscillator periods after the Watchdog times out. The DIS-RTO
bit in SFR AUXR (address 8EH) can be used to disable this
feature. In the default state of bit DISRTO, the RESET HIGH out
feature is enabled.
ALE/PROG: Address Latch Enable (ALE) is an output pulse for
latching the low byte of the address during accesses to external
memory. This pin is also the program pulse input (PROG) during
Flash programming.ALE is emitted at a constant rate of 1/6 the
oscillator frequency and may be used for external timing or
clocking purposes. Note, however, that one ALE pulse is skipped
during each access to external data memory. If desired, ALE
operation can be disabled by setting bit 0 of SFR location 8EH.
With the bit set, ALE is active only during a MOVX or MOVC
instruction. Otherwise, the pin is weakly pulled high
xxvii
xxviii
2.4
xxix
2.5 CAPACITORS
Fig. 6: CAPACITOR 10 F
xxx
xxxi
2.7
PCB:
Fig. 8: PCB
By generalized, we mean that we are free to make any kind of circuit as
we wish using this PCB. This makes it useful for small scale production
of electronic devices and also for testing out new ideas before production.
Like a normal PCB, it provides a means to hold all of our components
together in one place as a single unit. But it does not provide the
connection between components as provided by a specific purpose PCB
using tracks. So the users have to make the connections their selves using
wires and solder joints. They have holes all over it in a grid like pattern
unlike a specific purpose PCB which only have holes where required. So
in a general purpose PCB, you can place components anywhere you like.
The image below shows the back side of a general purpose PCB.
xxxii
xxxiii
xxxiv
xxxv
xxxvi
xxxvii
Features:
o
o
o
o
o
o
o
Working of LM324:
o
o
o
xxxviii
SOLDERING
Soldering is the process of joining of two metals using an alloy
solder consisting of Tin and Lead (Sn-Pb). Tin determines the
melting whereas the Lead is used to reduce the cost. After the PCB
fabrication is done, the various components are arranged at proper
locations on the PCB and then the soldering is done. All liquids
consist of particles which attract each other. The surface is always
trying to shrink and this is because of surface tension. The
principle behind soldering is that when liquid particles are brought
in contact with the walls of the solid surface, it may happen that the
solid attracts the liquid surface. This property is called adhesive
property
Care must be taken that the melting point of solder is below that of
the metal so that its surface is melted without melting without the
metal.
xxxix
xl
2.12 RESISTORS:
xli
2.13 ENCODER
HT12E is a 212 series encoder IC (Integrated Circuit) for remote
control applications. It is commonly used for radio frequency (RF)
applications. By using the paired HT12E encoder
and HT12D decoder we can easily transmit and receive 12 bits of
parallel data serially. HT12E simply converts 12 bit parallel data in
to serial output which can be transmitted through a RF transmitter.
These 12 bit parallel data is divided in to 8 address bits and 4 data
bits. By using these address pins we can provide 8 bit security code
for data transmission and multiple receivers may be addressed
using the same transmitter.We use HT12E IC for encoding the
signal. This is a 4 bit encoder which encodes the 4 bits into a signal
bit and transmit it via RF transmitter.
xlii
2.15 VELOSTAT:
Velostat is a packaging material made of a polymeric foil
(polyolefines) impregnated with carbon black to make
it electrically conductive. It is used for the protection of items or
devices that are susceptible to damage from electrostatic
discharge It was developed by Custom Materials, now part of 3M.
Due to its properties of changing its resistance with either flexing
or pressure it is becoming popular with hobbyists for making
inexpensive sensors for microcontroller experiments.
Fig 18 Velostat
Features
xliv
2.16 SWITCH
The most familiar form of switch is a manually
operated electromechanical device with one or more sets
of electrical contacts, which are connected to external circuits. A
switch may be directly manipulated by a human as a control signal
to a system, such as a computer keyboard button, or to control
power flow in a circuit, such as a light switch.
Fig 19-Switch
xlv
2.17 Diode
In electronics, a diode is a two-terminal electronic component with
asymmetric conductance;
it
has
low
(ideally
zero) resistance to current in
one
direction,
and
high
(ideally infinite) resistance in the other. A semiconductor diode,
the most common type today, is a crystalline piece
of semiconductor material with a pn junction connected to two
electrical terminals.[5] A vacuum tube diode has two electrodes,
a plate(anode) and a heated cathode.Most diodes are made
of silicon,
but
other
semiconductors
such
asselenium or germanium are sometimes used
xlvi
CHAPTER 3
CIRCUIT DIAGRAM & CODING
Fig 1-Transmitter
xlvii
Fig.2 Reciever
xlviii
3.2 Process to make Hand Glove Circuit : First buy a Velostat sheet. Cut the sheet in 4 sections according
to your fingers length. Now sandwich a wire inside all 4 sheet.
Now connect one side of each sheet to 5V supply and another
side of each sheet to the comparator.
Now paste this circuit on a hand glove on fingers with black tap.
Now make the circuits of transmitter and receiver according to
circuit diagrams.
xlix
Now check the output from hand glove from any finger
when finger not turned with help of multimeter.
Now turned that finger and check the output let it will be 1
volt.
Repeat the above steps for all the fingers and resistors.
li
lii
CHAPTER 4
ADVANTAGES
Quality:
Robotic arms have the capacity to dramatically improve product
quality. Applications are performed with precision and high
repeatability every time. This level of consistency can be hard to
achieve any other way.
Production:
With robotic arms, throughput speeds increase, which directly
impacts production. Because it has the ability to work at a constant
speed without pausing for breaks, sleep, vacations, it has the
potential to produce more than a human worker.
Safety:
Robotic arms increase workplace safety. Workers are moved to
supervisory roles where they no longer have to perform dangerous
applications in hazardous settings.
Savings:
Improved worker safety leads to financial savings. There are fewer
healthcare and insurance concerns for employers. Automated
robotic arms also offer untiring performance which saves valuable
time. Their movements are always exact, minimizing material
waste.
liii
A medical benefit:
The benefits are improved accuracy, efficiency, and the quality of
patient care. "NeuroArm" uses miniaturized tools such as laser
scalpels with pinpoint accuracy and it can also perform soft tissue
manipulation, needle insertion, suturing, and cauterization.
liv
CHAPTER 5
FUTURE USE
In future we can design a wireless robot which can sense hand
gesture by using wireless
technologies.
It can be used in military applications as a robotic vehicle which
can be handled by a soldier to
avoid casualties.
Our system has shown the possibility that interaction with
machines through gestures is a feasible task and the set of detected
gestures could be enhanced to more commands by implementing a
more complex model of a advanced vehicle for not only in limited
space while also in broader
area as in the roads too .
In the future, service robot executing many different tasks from
private movement to a full-fledged advanced automotive that can
make disabled to able in all sense.
lv
CHAPTER 6
CONCLUSION
Robotic arms are becoming increasingly popular in several fields
such as industrial automation, medical applications such as remote
key-hole surgeries and military applications because of its
preciseness and accuracy. In certain critical applications such as
performing surgeries or diffusing a bomb, robotic arms could be of
tremendous use to save lives. In such applications, controlling the
robotic arm precisely is of utmost importance.
The objectives of this project has been achieved which was
developing the hardware and software for a gesture based robotic
arm. From observation that has been made, it clearly shows that its
movement is precise, accurate, and is easy to control and user
friendly to use. The robotic arm has been developed successfully as
the movement of the robot can be controlled precisely. This robotic
arm control method is expected to overcome the problem such as
placing or picking object that away from the user, pick and place
hazardous object in a very fast and easy manner.
lvi
GLIMPSES OF PROJECT
TRANSMITER
lvii
RECEIVER
REFERENCES
Gesture Controlled Robot PPT
<http://seminarprojects.com/s/hand-gesture-controlled-robot-ppt>
Gesture Controlled Tank Toy User Guide
<http://www.slideshare.net/neeraj18290/wireless-gesturecontrolled- tank-toy-transmitter>
Embedded Systems Guide (2002)
<http://www.webstatschecker.com/stats/keyword/a_hand_gesture_
based_control_interface_for_a
_car_robot>
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
>
Real-Time Robotic Hand Control Using Hand Gestures by
Jagdish Lal Raheja, Radhey
Shyam, G. Arun Rajsekhar and P. Bhanu Prasad
Hand Gesture Controlled Robot by Bhosale Prasad S., Bunage
Yogesh B. and Shinde
Swapnil V.
<http://www.robotplatform.com/howto/L293/motor_driver_1.html
< http://en.wikipedia.org/wiki/Gesture_interface>
< http://www.wisegeek.com/what-is-a-gear-motor.htm>
<http://www.scribd.com/doc/98400320/InTech-Real-TimeRobotic-Hand-Control-UsingHand-Gestures>
< http://en.wikipedia.org/wiki/DC_motor>
<http://www.instructables.com/id/Handgesture-controlled-robotwith-robotic-arm/>
lviii