Voice Controlled Robot Through Android
Voice Controlled Robot Through Android
Voice Controlled Robot Through Android
Most of Artificial Intelligence will eventually lead to robotics. Most neural networking,
natural language processing, image recognition, speech recognition/synthesis research aims at
eventually incorporating their technology into the epitome of robotics - the creation of a fully
humanoid robot.
The field of robotics has been around nearly as long as Artificial Intelligence - but the
field has made little progress. This is only natural, since the field not only attempts to conquer
intelligence, but also the body that embodies it - a formidable task. Robotics, though, is not just
about humanoid robots; but also about their commercial applications in manufacturing, safety
and hundreds of other fields.
It is only relatively recently that robots have started to employ a degree of Artificial
Intelligence in their work - many robots required human operators, or precise guidance
throughout their missions. Slowly, robots are becoming more and more autonomous. Robotics is
an absolutely fascinating field that interests most people. Robot is a system that contains sensors,
control systems, manipulators, power supplies and software all working together to perform a
task. Robot should have Sensing, Movement, Energy and Intelligence characteristics.
This project deals with one of the application of vehicles. In this project one moving
object is developed such that it is moved as per commands given by the voice recognition
module and that command is received by microcontroller using wireless communication. This
project is equipped with DC motor, Voice Recognition module, ZigBee module, Micro controller
along with the Power supply unit. Vehicle finds it applications in the real time.
INDEX
CONTENTS
PAGE NO.
ACKNOWLEDGEMENT
ABSTRACT
INDEX
LIST OF FIGURES
LIST OF TABLES
ABBREVIATIONS
I
II
VIII
X
XI
CHAPTER 1
(01-12)
INTRODUCTION
1.1 INTRODUCTION
1.2 SPEECH RECOGNIZATION
1.3 WHY BUILD ROBOTS?
1.4 ANDROID
1.4.1 ANDROID MEET ROBOT
1.5 BLOCK DIAGRAM
1.5.1 MICROCONTROLLER
1.5.2 RPS
1.5.3 BLUETOOTH MODULE
1.5.4 LCD
1.5.5 DRIVER
1.6 CONCLSION
01
01
03
04
05
06
07
09
09
10
11
12
(13-29)
13
13
14
14
17
18
23
23
23
24
24
25
25
25
25
26
26
26
27
CHAPTER 3
3.1 INTRODUCTION:
3.2 CIRCUIT
3.3 CIRCUIT EXPLANATION
3.3.1 SOLAR PANEL
3.3.1.1 BASIC OPERATION
3.3.2.1 BASIC PRINCIPLE
3.3.2 TRANSFORMER
3.3.2.1 BASIC PRINCIPLE
3.3.2.2 DETAILED OPERATION
3.3.3 BRIDGE RECTIFIER
3.3.3.1 BASIC OPERATION
3.3.3.2 OUTPUT SMOOTHING (USING CAPACITOR)
3.3.4 VOLTAGE REGULATOR
3.4 CONCLUSION
CHAPTER 4
BLUETOOTHMODULE
4.1 INTRODUCTION
4.2 BLUETOOTH PROFILES
4.2.1 BLUETOOTH VS WI-FI IN NETWORKING
4.3 BLUETOOTH DEVICES
4.4 OPERATING SYSTEM SUPPORT
4.5 MOBILE PHONE REQUIREMENTS
4.6 COMMUNICATION AND CONNECTION
4.6.1 SETTING UP CONNECTIONS:
4.6.2 PAIRING
4.6.3 AIR INTERFACE
4.7 HC SERIAL BLUETOOTH PRODUCTS
4.8 SELECTION OF THE MODULE
4.8.1 FEATURES:
4.8.2 STEP TO CONNECT
3
27
27
27
27
27
28
28
28
28
29
(30-38)
30
31
31
31
32
33
33
34
34
35
35
36
37
38
(39-49)
39
40
41
41
41
42
42
43
43
44
44
45
48
48
4.8.3 USAGE
4.9 CONCLUSION
48
49
CHAPTER 5
5.1 INTRODUCTION
5.2 SHAPES AND SIZES
5.3 PIN DESCRIPTION
5.3.1 CONTROL LINES
5.3.2 LOGIC STATUS ON CONTROL LINES
5.3.3 WRITING DATA TO THE LCD
5.3.4 READ DATA FROM DATA LINES (IF IT IS READING) ON LCD
5.4 ENTERING TEXT
5.5 FEATURES
5.6 INITIALIZATION BY INSTRUCTIONS
5.7 CONCLUSION
CHAPTER 6
DRIVER
(50-58)
50
50
52
53
54
54
54
54
55
57
58
(59-69)
6.1 INTRODUCTION
6.2 MOTOR DRIVER AND H-BRIDGE BASICS
6.3 L293D CONNECTIONS
6.4 TRUTH TABLE
6.5 VOLTAGE SPECIFICATION
6.6 DC MOTOR
6.7 TYPES OF DCMOTORS
6.7.1 BRUSHED DC MOTORS
6.7.2 BRUSHLESS DC MOTORS
6.7.3 CORELESS DC MOTORS:
6.8 WORKING OR OPERATING PRINCIPLE OF DC MOTOR
6.9 CONCLUSION
59
60
61
62
63
63
64
64
64
64
65
69
CHAPTER 7
SCHEMATIC REPRESENTATION
7.1 INTRODUCTION
7.2 SCHEMATIC DIAGRAM
7.2.1 CRYSTAL OSCILLATOR
7.2.2 CAPACITORS
7.2.3 RESISTOR
7.2.4 SWITCHES
7.2.5 MOTORS
7.2.6 LCD
7.2.7 MICROCONTROLLER
7.2.8 DRIVER IC
7.2.9 SOLAR PANEL
7.2.10 SOLAR CHARGED BATTERIES
7.2.11 REGULATOR
7.2.12 CONNECTING WIRES
7.3 CONCLUSION
CHAPTER 8
8.1 INTRODUCTION
8.2 HARDWARE
8.3 SOFTWARE
8.3.1 FEATURES
8.3.2 EMBBEDED C
8.3.3 PROGRAM
8.4 CONCLUSION
CHAPTER 9
(70-75)
70
70
72
72
73
73
73
73
74
74
74
74
75
75
75
(76-94)
76
76
77
77
77
77
93
HARDWARE ANALYSIS
9.1 INTRODUCTUION
9.2 ASSEMBLING THE BOARD
9.2.1 ASSEMBLING PROCESS
9.2.2 COMPLETION OF ASSEMBLING PROCESS
9.3 ANDROID APPLICATIONS
9.3.1 BLUETOOTH SPP TEST
9.3.2 BLUETOOTH AMR (ANDROID MEETS ROBOT)
9.4 ROBOTS WORKING MECHANISM
9.5 TESTING
9.6 CONCLUSION
CHAPTER 10 EVALUTION
(95-98)
95
95
96
96
96
97
97
97
98
98
(99-103)
10.1 APPLICATIONS
10.1.1 HOME AUTOMATION
10.1.2 WHEELCHAIRS
10.1.3 SURVEILLANCE DEVICE
6
99
99
99
100
CONCLUSION
BIBLOGRAPHY
100
101
101
102
102
103
104
105
PAGE NO.
02
06
07
08
09
10
11
15
16
17
20
22
31
32
33
33
34
35
36
36
37
37
38
46
46
51
51
52
52
57
59
60
61
63
65
65
67
68
68
69
71
72
95
96
97
99
100
100
101
PAGE NO.
10
19
20
28
29
40
40
47
50
53
56
62
98
ABBREVIATIONS
CPU
SRC
APP
RAM
ROM
DSP
CMOS
RPS
AC
DC
USB
LED
LCD
ALU
IC
ISP
UART
GND
TTL
RST
ALE
PC
SFR
PAN
GFSK
SIG
ISM
EDR
AMR
-------
------------------------
CHAPTER 1
INTRODUCTION
1.1 INTRODUCTION
It has always been a dream of human being to create machines that behave like humans.
Recognizing the speech and responding accordingly is an important part of this dream. With the
improvements of the technology and researches on artificial intelligent, this dream comes true
relatively.
11
In this project, it is aimed to make a contribution to this dream. Controlling the machines
and environment with speech makes human life easier and more comfortable. This project is a
simple implementation of this approach. A robot is controlled by voice commands. Voice
command is taken through a microphone, processed in computer and sent to the robot and finally
the robot acts accordingly.
Speech is the most used way of communication for people. We born with the skills of
speaking learn it easily during our early childhood and mostly communicate with each other with
speech throughout our lives. By the developments of communication technologies in the last era,
speech starts to be an important interface for many systems. Instead of using complex different
interfaces, speech is easier to communicate with computers.
In this project, it is aimed to control a robot with speech commands. The robot is able to
recognize spoken commands to move correctly. To give a direction to robot, first the voice
command is send to the ANDROID phone. The android recognizes the command by speech
recognition system. And then android converts the voice command to direction command that
predefined and recognizable by robot. When the robot gets the direction command, it moves
according to spoken command.
12
speech recognition allows the user to perform parallel tasks, (i.e. hands and eyes are busy
elsewhere) while continuing to work with the computer or appliance.
Robotics is an evolving technology. There are many approaches to building robots, and no
one can be sure which method or technology will be used 100 years from now. Like biological
systems, robotics is evolving following the Darwinian model of survival of the fittest. Suppose
you want to control a menu driven system. What is the most striking property that you can think
of? Well the first thought that came to our mind is that the range of inputs in a menu driven
system is limited. In fact, by using a menu all we are doing is limiting the input domain space.
Now, this is one characteristic which can be very useful in implementing the menu in standalone
systems. For example think of the pine menu or a washing machine menu. How many distinct
commands do they require?
characteristics that a robot must have and this might help you to decide what is and what not a
robot is. It will also help you to decide what features you will need to build into a machine before
it can count as a robot. A robot has these essential characteristics:
SENSING - First of all your robot would have to be able to sense its surroundings. It would
do this in ways that are not unsimilar to the way that you sense your surroundings. Giving
your robot sensors: light sensors (eyes), touch and pressure sensors (hands), chemical
sensors (nose), hearing and sonar sensors (ears), and taste sensors (tongue) will give your
robot awareness of its environment.
MOVEMENT - A robot needs to be able to move around its environment. Whether rolling
on wheels, walking on legs or propelling by thrusters a robot needs to be able to move. To
count as a robot either the whole robot moves, like the Sojourner or just parts of the robot
moves, like the Canada Arm.
ENERGY - A robot needs to be able to power itself. A robot might be solar powered,
electrically powered, battery powered. The way your robot gets its energy will depend on
what your robot needs to do.
INTELLIGENCE - A robot needs some kind of "smarts." This is where programming enters
the pictures. A programmer is the person who gives the robot its 'smarts.' The robot will have
to have some way to receive the program so that it knows what it is to do.
Well it is a system that contains sensors, control systems, manipulators, power supplies and
software all working together to perform a task. Designing, building, programming and testing
robots is a combination of physics, mechanical engineering, electrical engineering, structural
engineering, mathematics and computing. In some cases biology, medicine, chemistry might also
be involved.
A study of robotics means that students are actively engaged with all of these disciplines in
a deeply problem-posing problem-solving environment.
15
1.4 ANDROID
Android is an operating system based on the Linux kernel, and designed primarily
for touch screen mobile devices such as smart phones and tablet computers. Initially developed
by Android, Inc., which Google backed financially and later bought in 2005, Android was
unveiled in 2007 along with the founding of the Open Handset Alliance a consortium
of hardware, software, and telecommunication companies devoted to advancing open
standards for mobile devices.
The first publicly available smart phone running Android, the HTC Dream, was released on
October 22, 2008. The user interface of Android is based on direct manipulation, using touch
inputs that loosely correspond to real-world actions, like swiping, tapping, pinching and reverse
pinching to manipulate on-screen objects.
Internal hardware such as accelerometers, gyroscopes and proximity sensors are used by
some applications to respond to additional user actions, for example adjusting the screen from
portrait to landscape depending on how the device is oriented. Android allows users to customize
their home screens with shortcuts to applications and widgets, which allow users to display live
content, such as emails and weather information, directly on the home screen. Applications can
further send notifications to the user to inform them of relevant information, such as new emails
and text messages.
16
For example if you say Hello the android phone will return a sting *Hello# to your Bluetooth
module *and # indicate the start and stop bits Can Be used with any micro controller which can
handle strings.
Examples Platforms: Arduino, ARM, PICAXE, MSP430, 8051 based and many other processors
and controllers.
17
Block diagrams rely on the principle of the black box where the contents are hidden from
view either to avoid being distracted by the details or because the details are not known. We
know what goes in, we know what goes out, but we can't see how the box does its work.
???????????????????????????????????????????????????????????????????????????
Fig 1.3: Block diagram of voice control robo
The above diagram shows the important blocks involves in this project. There are mainly
five blocks in this project.
There are:
1.
2.
3.
4.
5.
Microcontroller
RPS
Bluetooth Module
LCD
Driver
1.5.1 MICROCONTROLLER
A microcontroller (sometimes abbreviated C, uC or MCU) is a small computer on a
single integrated circuit containing a processor core, memory, and programmable input/output
peripherals. Program memory in the form of NOR flash or OTP ROM is also often included on
chip, as well as a typically small amount of RAM. Microcontrollers are designed for embedded
applications, in contrast to the microprocessors used in personal computers or other general
purpose applications.
Microcontrollers are used in automatically controlled products and devices, such as
automobile engine control systems, implantable medical devices, remote controls, office
machines, appliances, power tools, toys and other embedded systems. By reducing the size and
cost compared to a design that uses a separate microprocessor, memory, and input/output
devices, microcontrollers make it economical to digitally control even more devices and
processes. Mixed signal microcontrollers are common, integrating analog components needed to
control non-digital electronic systems.
Some microcontrollers may use 4-bit words and operate at clock rate frequencies as low as
4 kHz, for low power consumption (single-digit milli watts or microwatts). They will generally
have the ability to retain functionality while waiting for an event such as a button press or other
18
interrupt; power consumption while sleeping (CPU clock and most peripherals off) may be just
nanowatts, making many of them well suited for long lasting battery applications. Other
microcontrollers may serve performance-critical roles, where they may need to act more like
a digital signal processor (DSP), with higher clock speeds and power consumption.
1.5.2 RPS
A regulated power supply is an embedded circuit; it converts unregulated AC into a
constant DC. With the help of a rectifier it converts AC supply into DC. Its function is to supply
a stable voltage (or less often current), to a circuit or device that must be operated within certain
power supply limits. The output from the regulated power supply may be alternating or
unidirectional, but is nearly always DC (Direct Current).
The type of stabilization used may be restricted to ensuring that the output remains within
certain limits under various load conditions, or it may also include compensation for variations in
its own supply source. The latter is much more common today. In the chapter 3 we discussed in
detailed about RPS.
19
HC-04 is an industrial grade product; HC-06 is a commercial grade product. The modules with
the HC-09 firmware are replacements for the HC-06 and HC-07 modules.
1.5.4 LCD
These LCD screens are limited to monochrome text and are often used in copiers, fax
machines, laser
printers,
industrial
test
equipment,
networking
equipment
such
as routers and storage devices. The screens come in a small number of standard configurations.
Common sizes are 8x1 (one row of eight characters), 162, 202 and 204. Larger custom sizes
are made with 32, 40 and 80 characters and with 1, 2, 4 or 8 lines. The most commonly
manufactured larger configuration is 404characters, which requires two individually
addressable HD44780 controllers with expansion chips as a single HD44780 chip can only
address up to 80 characters. A common smaller size is 162, and this size is readily available as
surplus stock for hobbyist and prototyping work. Character LCDs can come with or
without backlights, which may be LED, fluorescent, or electroluminescent.
1.5.5 DRIVER
21
22
1.6 CONCLSION
In this chapter we have introduction about robot. It has always been a dream of human
being to create machines like humans. In this project robot is controlled by giving a voice or
speech commands. Speech recognition is a technology where the system understands the words
(not its meaning) given through speech. In our project android mobiles internal voice recognition
to pass voice commands to your robot Pairs with Bluetooth Serial Modules and sends in the
recognized voice as a string. In this chapter we have a small introduction about Microcontroller,
RPS, Bluetooth Module, LCD, Driver.
23
CHAPTER 2
MICRO CONTROLLERS
2.1 INTRODUCTION
The true computer on a chip is nothing but a microcontroller. The design incorporates all of
the features found in a microprocessor CPU, ALU, PC, SP and registers. It also had added the
other features needed to make a complete computer. ROM, RAM, parallel I/O, serial I/O,
Counters and a clock circuits. Microprocessors are intended to be general-purpose digital
computers whereas microcontrollers are intended to be special-purpose digital Controller.
Microprocessor contains a CPU, memory-addressing circuits and Interrupt handling circuits.
Microcontrollers have these features as well as timers, parallel and serial I/O, and internal RAM
and ROM. Microcontroller models vary in data size from 4 to 32 bits. Four-bit units are produced
in huge volumes for very simple applications; and8-bit units are the most versatile. 16 and 32-bit
units are used in high-speed control and signal processing applications. Many models feature
programmable pins that allow external memory to be added with the loss of I/O capability.
RAM, ROM, serial interface, parallel interface, timer, and interrupt handling circuit).
Applications: Microprocessors are commonly used as a CPU in computers while
microcontrollers are found in small, minimum component designs performing control
oriented activities.
Microprocessor instruction sets are processing Intensive.
Their instructions operate on nibbles, bytes, words, or even double words.
Addressing modes provide access to large arrays of data using pointers and offsets.
They have instructions to set and clear individual bits and perform bit operations.
24
They have instructions for input/output operations, event timing, enabling and setting
25
26
2.5 FEATURES:
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 1sare written to port 0 pins, the pins can be used as high impedance
inputs.
Port 0 can also be configured to be the multiplexed low order 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.
Port 1
Port 1 is an 8-bit bi-directional I/O port with internal pull-ups. 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
Port 2
Port 2 is an 8-bit bi-directional I/O port with internal pull-ups. 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
Port 3
Port 3 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 3 output buffers can
sink/source four TTL inputs. When 1s are writ 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 also serves the functions of various special features of the AT89S52, as shown in the
following table.
Port 3 also receives some control signals for Flash programming and verification.
31
CHAPTER 3
RPS (REGULATED POWER SUPPLY)
3.1 INTRODUCTION:
A power supply is a device that supplies electric power to an electrical load. The term is
most commonly applied to electric power converters that convert one form of electrical energy to
another, though it may also refer to devices that convert another form of energy (mechanical,
chemical, solar) to electrical energy. A regulated power supply is one that controls the output
voltage or current to a specific value; the controlled value is held nearly constant despite
variations in either load current or the voltage supplied by the power supply's energy
source.Every power supply must obtain the energy it supplies to its load, as well as any energy it
consumes while performing that task, from an energy source. Depending on its design, a power
supply may obtain energy from:
Electrical energy transmission systems. Common examples of this include power supplies
device that is hardwired to its load. Examples of the latter case include the low voltage DC
power supplies that are part of desktop computers and consumer electronics devices.Commonly
specified power supply attributes include:
the amplitude of the signal. The available voltage signal from the mains is 230V/50Hz which is
an AC voltage, but the required is DC voltage (no frequency) with the amplitude of +5V and
32
+12V for various applications.In this section we have Transformer, Bridge rectifier, are
connected serially and voltage regulators for +5V and +12V (7805 and 7812) via a capacitor
(1000F) in parallel are connected parallel as shown in the circuit diagram below.
3.2 CIRCUIT:
From this project we specially designed RPS(regular power). This RPS is ecofriendly
because it is designed especially by solar charged batteries to give power to the robot. From solar
charged batteries directly DC voltage is given to the regulator. From this regulator the required
voltage is coming out put it is generally +5V. This circuit is both solar and transform based
power supply. The below Figure shows the power supply circuit diagram.
its DC output power under standard test conditions (STC), and typically ranges from 100 to 320
watts. The efficiency of a module determines the area of a module given the same rated output an 8% efficient 230 watt module will have twice the area of a 16% efficient 230 watt module. A
single solar module can produce only a limited amount of power; most installations contain
multiple modules. A photovoltaic system typically includes a panel or an array of solar modules,
an inverter, and sometimes a battery orsolar tracker and interconnection wiring.
Fig 3.2 (a) Solar Panel& (b) Solar Panel Back side.
Solar modules use light energy (photons) from the sun to generate electricity through
the photovoltaic effect. The majority of modules use wafer-based crystalline silicon cells or thinfilm cells based on cadmium telluride or silicon. The structural (load carrying) member of a
module can either be the top layer or the back layer. Cells must also be protected from
mechanical damage and moisture.
3.3.2 TRANSFORMER
A transformer is a device that transfers electrical energy from one circuit to another through
inductively coupled electrical conductors. A changing current in the first circuit (the primary)
creates a changing magnetic field; in turn, this magnetic field induces a changing voltage in the
second circuit (the secondary). By adding a load to the secondary circuit, one can make current
flow in the transformer, thus transferring energy from one circuit to the other.
35
The secondary induced voltage VS, of an ideal transformer, is scaled from the primary VP
by a factor equal to the ratio of the number of turns of wire in their respective windings:
Fig 3.5: An ideal step-down transformer showing magnetic flux in the core.
negligible reluctance with two windings of zero resistance. When a voltage is applied to the
primary winding, a small current flows, driving flux around the magnetic circuit of the core. The
current required to create the flux is termed the magnetizing current; since the ideal core has
been assumed to have near-zero reluctance, the magnetizing current is negligible, although still
required to create the magnetic field.
37
the bridge alone supplies an output voltage of fixed polarity but pulsating magnitude (see
diagram above).
39
3.4 CONCLUSION
RPS is a regulated power supply. A power supply is a device that supplies electric
power to an electrical load. RPS converts AC line voltage to DC voltage. Fig 3.1 shows circuit
diagram of RPS. Here we are used ecofriendly electrical energy that is solar panel. Solar modules
use light energy (photons) from the sun to generate electricity through the photovoltaic effect.
Solar cells convert light energy into electrical energy either indirectly by first converting it into
heat, or through a direct process known as the photovoltaic effect.The most common types of
solar cells are based on the photovoltaic effect, which occurs when light falling on a two-layer
semiconductor material produces a potential difference, or voltage, between the two layers. In
RPS bridge is used to When used in its most common application, for conversion of alternating
current (AC) input into direct current (DC) output.
40
CHAPTER 4
BLUETOOTHMODULE
4.1 INTRODUCTION
Bluetooth is a wireless protocol utilizing short-range communications technology
facilitating data transmission over short distances from fixed and/or mobile devices, creating
wireless personal area networks (PANs). The intent behind the development of Bluetooth was the
creation of a single digital wireless protocol, capable of connecting multiple devices and
overcoming issues arising from synchronization of these devices.
Bluetooth uses a very robust radio technology called frequency hopping spread spectrum. It
chops up the data being sent and transmits chunks of it on up to 75 different frequencies. In its
basic mode, the modulation is Gaussian frequency shift keying (GFSK). It can achieve a gross
data rate of 1 Mb/s. Bluetooth provides a way to connect and exchange information between
devices such as mobile phones, telephones, laptops, personal computers, printers, GPS receivers,
digital cameras, and video game consoles over a secure, globally unlicensed Industrial,
Scientific, and Medical (ISM) 2.4 GHz short-range radio frequency bandwidth.
The Bluetooth specifications are developed and licensed by the Bluetooth Special Interest
Group (SIG). The Bluetooth SIG consists of companies in the areas of telecommunication,
computing, networking, and consumer electronics. Bluetooth is a standard and communications
protocol primarily designed for low power consumption, with a short range (power-classdependent: 1 meter, 10 meters, 100 meters) based on low-cost transceiver microchips in each
device.
Bluetooth enables these devices to communicate with each other when they are in range.
The devices use a radio communications system, so they do not have to be in line of sight of each
other, and can even be in other rooms, as long as the received transmission is powerful enough.
Bluetooth device class indicates the type of device and the supported services of which the
information is transmitted during the discovery process.
41
Class
Range
(approximate)
Class 1
~100 meters
Class 2
2.5 mW (4 dBm)
~10 meters
Class 3
1 mW (0 dBm)
~1 meter
Version
Data Rate
Version 1.2
1 Mbit/s
3 Mbit/s
WiMedia Alliance
(proposed)
53 - 480 Mbit/s
43
features Bluetooth support since its 4.0 release. Its Bluetooth stack has been ported to OpenBSD
as well.
44
Device name.
Device class.
List of services.
Technical information, for example, device features, manufacturer, Bluetooth specification used,
clock offset.
Any device may perform an inquiry to find other devices to connect to, and any device can
be configured to respond to such inquiries. However, if the device trying to connect knows the
address of the device, it always responds to direct connection requests and transmits the
information shown in the list above if requested. Use of device services may require pairing or
acceptance by its owner, but the connection itself can be initiated by any device and held until it
goes out of range. Some devices can be connected to only one device at a time, and connecting to
them prevents them from connecting to other devices and appearing in inquiries until they
disconnect from the other device.Every device has a unique 48-bit address. However these
addresses are generally not shown in inquiries. Instead, friendly Bluetooth names are used, which
can be set by the user. This name appears when another user scans for devices and in lists of
paired devices.Most phones have the Bluetooth name set to the manufacturer and model of the
phone by default. Most phones and laptops show only the Bluetooth names and special programs
that are required to get additional information about remote devices. This can be confusing as,
for example, there could be several phones in range named T610 (see Bluejacking).
4.6.2 PAIRING:
Pairs of devices may establish a trusted relationship by learning (by user input) a shared
secret known as a passkey. A device that wants to communicate only with a trusted device can
cryptographically authenticate the identity of the other device. Trusted devices may also encrypt
the data that they exchange over the airwaves so that no one can listen in. The encryption can,
however, be turned off, and passkeys are stored on the device file system, not on the Bluetooth
chip itself. Since the Bluetooth address is permanent, a pairing is preserved, even if the Bluetooth
name is changed. Pairs can be deleted at any time by either device. Devices generally require
pairing or prompt the owner before they allow a remote device to use any or most of their
45
services. Some devices, such as mobile phones, usually accept OBEX business cards and notes
without any pairing or prompts.
is made. This Bluetooth connection is equivalently liked to a serial port line connection including
RXD, TXD signals. And they can use the Bluetooth serial module to communicate with each
other.
2. When MCU has Bluetooth salve module, it can communicate with Bluetooth adapter of
computers and smart phones. Then there is a virtual communicable serial port line between MCU
and computer or smart phone.
3. The Bluetooth devices in the market mostly are salve devices, such as Bluetooth printer,
Bluetooth GPS. So, we can use master module to make pair and communicate with
them.Bluetooth Serial modules operation doesnt need drive, and can communicate with the
other Bluetooth device that has the serial. But communication between two Bluetooth modules
requires at least two conditions:
(1) The communication must be between master and slave.
(2) The password must be correct.
However, the two conditions are not sufficient conditions. There are also some other
conditions basing on different device model. Detailed information is provided in the following
chapters. In the following chapters, we will repeatedly refer to Linvors (Formerly known as
Guangzhou HC Information Technology Co., Ltd.) Material and photos.
47
PIN 1
UART_TXD, Bluetooth serial signal sending PIN, can connect with MCUs RXD
PIN
UART_RXD, Bluetooth serial signal receiving PIN, can connect with the MCUs
PIN2
TXD PIN; there is no pull-up resistor in this PIN. But It needs to be added an eternal
PIN11
pull-up resistor.
RESET, the reset PIN of module, inputting low level can reset the module, when the
PIN12
PIN13
PIN31
able mode. IfPIN34 is input high level, then the module will enter to AT mode, but
the output of PIN31 is still 2Hz square wave.
After the pairing, PIN31 output 2Hz square ware.
Note: if PIN34 keep high level, all the commands in the AT command set can be in
application. Otherwise, if just excite PIN34 with high level but not keep; only some
PIN32
PIN34
module is at communication, the module can enter to the AT mode if PIN34 is input
high level. Then it will go back to the communication mode if PIN34 is input low
level again.
Table 4.3: PIN description of HC-05
4.8.1 FEATURES:
User can connect 3.3 to 5VDC and connect TX and RX to your control IO (general 3.3 to 5V
Connect the wiring, power up, while the device is not connected, the Bluetooth module board
4.8.3 USAGE:
Coupled Mode: Two modules will establish communication automatically when powered.
PC hosted mode: Pair the module with Bluetooth dongle directly as virtual serial.
Bluetooth protocol : Bluetooth Specification v2.0+EDR
Frequency : 2.4GHz ISM band
Modulation : GFSK(Gaussian Frequency Shift Keying)
Speed : Asynchronous: 2.1Mbps(Max) / 160 kbps, Synchronous: 1Mbps/1Mbps
Security : Authentication and encryption
Profiles : Bluetooth serial port
CSR chip : Bluetooth v2.0
Wave band : 2.4GHz-2.8GHz, ISM Band
Protocol : Bluetooth V2.0
Voltage : 5V (3.6V-6V, NO more than 7V)
User defined Baud rate: 4800, 9600, 19200, 38400, 57600, 115200, 230400,460800,921600,
and 1382400.
4.9 CONCLUSION
Bluetooth is a wireless protocol utilizing short-range communications technology
facilitating data transmission over short distances from fixed and/or mobile devices. Creating
wireless personal area networks (PANs).Bluetooth uses a very robust radio technology called
frequency hopping spread spectrum. It chops up the data being sent and transmits chunks of it on
up to 75 different frequencies. Works under (ISM) 2.4 GHz short-range radio frequency
bandwidth. In this chapter we have about Bluetooth, Bluetooth devices, working range, setup
50
connection of Bluetooth. How the Bluetooth is connected, pairing of Bluetooth. Here we are
used HC-05 Bluetoothdevice. In this project we are connection as step wise at android side
search Bluetooth Found name called "HC-05" device Connect it, and pass code is "1234" While
connection is ok, you can see the LED become always on. this is pairing way of Bluetooth to
voice control robot.
51
CHAPTER 5
LCD (LIQUID CRISTAL DISPLAY)
5.1 INTRODUCTION:
A liquid crystal display (LCD) is a thin, flat display device made up of any number of color
or monochrome pixels arrayed in front of a light source or reflector. Each pixel consists of a
column of liquid crystal molecules suspended between two transparent electrodes, and two
polarizing filters, the axes of polarity of which are perpendicular to each other. Without the
liquid crystals between them, light passing through one would be blocked by the other. The
liquid crystal twists the polarization of light entering one filter to allow it to pass through the
other.
A program must interact with the outside world using input and output devices that
communicate directly with a human being. One of the most common devices attached to an
controller is an LCD display. Some of the most common LCDs connected to the controllers are
16X1, 16x2 and 20x2 displays. This means 16 characters per line by 1 line 16 characters per line
by 2 lines and 20 characters per line by 2 lines, respectively.
When the LCD display is not enabled, data lines are tri-state and they do not interfere with
the operation of the microcontroller.Data can be placed at any location on the LCD. For 161
LCD, the address locations are:
55
Finally, the data bus consists of 4 or 8 lines (depending on the mode of operation selected
by the user). In the case of an 8-bit data bus, the lines are referred to as DB0, DB1, DB2, DB3,
DB4, DB5, DB6, and DB7.
that you know which bits you are setting). Replacing the d.i.l. switch pack with a of re-wiring is
necessary. The switches must be the type where On = 0, so that when they are turned to the zero
position, all four outputs are shorted to the common pin, and in position F, all four outputs are
open circuit. All the available characters that are built into the module are shown in Table 3.
Studying the table, you will see that codes associated with the characters are quoted in binary and
hexadecimal, most significant bits (left-hand four bits) across the top, and least significant bits
(right-hand four bits) down the left.
Most of the characters conform to the ASCII standard, although the Japanese and Greek
characters (and a few other things) are obvious exceptions. Since these intelligent modules were
designed in the Land of the Rising Sun, it seems only fair that their Katakana phonetic symbols
should also be incorporated. The more extensive Kanji character set, which the Japanese share
with the Chinese, consisting of several thousand different characters, is not included! Using the
switches, of whatever type, and referring to Table 3, enter a few characters onto the display, both
letters and numbers. The RS switch (S10) must be up (logic 1) when sending the characters, and
switch E (S9) must be pressed for each of them. Thus the operational order is: set RS high, enter
character, and trigger E, leave RS high, enter another character, trigger E, and so on.
5.5 FEATURES:
microprocessor.
Numerous instructions
Clear Display, Cursor Home, Display ON/OFF, Cursor ON/OFF, Blink
Character, Cursor Shift, Display
57
58
5.7 CONCLUSION
In this chapter we are discussed briefly LCD. A liquid crystal display (LCD) is a
thin, flat display device made up of any number of color or monochrome pixels arrayed in front
of a light source or reflector. Program must interact with the outside world using input and output
devices that communicate directly with a human being. One of the most common devices
attached to a controller is an LCD display. Fig 5.1 shows different types of LCD.n our project we
are used 1x16 lines LCD.in this project port0 (32 to 39) pins are connected to LCD.in LCD 1, 2,
3 pins are given to power supply,4,5&6 pins are EN,RS & RW control lines respectively.EN is
enable,RS is register select,RW is read write.From 7 to 14 pins data bit lines pins. And also from
this chapter we will know how the data is entered. And how the logic pins are enabled or
disabled by using logic 1 & 0.
59
CHAPTER 6
DRIVER
6.1 INTRODUCTION
L293D is a dual H-bridge motor driver integrated circuit (IC). Motor drivers act as current
amplifiers since they take a low-current control signal and provide a higher-current signal. This
higher current signal is used to drive the motors. L293D contains two inbuilt H-bridge driver
circuits. In its common mode of operation, two DC motors can be driven simultaneously, both in
forward and reverse direction. The motor operations of two motors can be controlled by input
logic at pins 2 & 7 and 10 & 15. Input logic 00 or 11 will stop the corresponding motor. Logic 01
and 10 will rotate it in clockwise and anticlockwise directions, respectively.
(VCC2) has a wide range from 4.5V to 36V, which has made L293D a best choice for DC motor
driver.A simple schematic for interfacing a DC motor using L293D is shown below.
many, one of the most common 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
Lastly turning on A & C at the same time or B & D at the same time shorts your entire
circuit. So, do not attempt this.
H-bridges can be built from scratch using relays, mosfets, field effect transistors (FET), bi-
polar junction transistors (BJT), etc. But if your current requirement is not too high and all you
need is a single package which does the job of driving a small DC motor in two directions, then
all you need is a L293D IC. This single inexpensive package can interface not one, but two DC
motors. L293, L293B and few other versions also does the same job, but pick the L293D version
62
as this one has an inbuilt fly back diode which protects the driving transistors from voltage
spikes that occur when the motor coil is turned off.
Pin1 and Pin9 are "Enable" pins. They should be connected to +5V for the drivers to
function. If they pulled low (GND), then the outputs will be turned off regardless of the input
states, stopping the motors. If you have two spare pins in your microcontroller, connect these
pins to the microcontroller, or just connect them to regulated positive 5 Volts.
Pin4, Pin5, Pin12 and Pin13 are ground pins which should ideally be connected to
microcontroller's ground.
Pin2, Pin7, Pin10 and Pin15 are logic input pins. These are control pins which should be
connected to microcontroller pins. Pin2 and Pin7 control the first motor (left); Pin10 and
Pin15 control the second motor (right).
Pin3, Pin6, Pin11, and Pin14 are output pins. Tie Pin3 and Pin6 to the first motor, Pin11 and
Pin14 to second motor, Pin16 powers the IC and it should be connected to regulated +5Volts
Pin8 powers the two motors and should be connected to positive lead of a secondary battery.
As per the datasheet, supply voltage can be as high as 36 Volts.
63
Pin 2
Pin 7
Function
High
High
Low
High
Low
High
High
High
High
Stop
High
Low
Low
Stop
Low
Stop
64
can drive pretty big motors with this l293d.VCC pin 16 is the voltage for its own internal
Operation. The maximum voltage ranges from 5v and up to 36v.
6.6 DC MOTOR
A DC motor is designed to run on DC electric power. Two examples of pure DC designs
are Michael Faraday's homopolar motor (which is uncommon), and the ball bear in motor, which
is (so far) a novelty. By far the most common DC motor types are the brushed and brushless
types, which use internal and external commutation respectively to create an oscillating AC
current from the DC source -- so they are not purely DC machines in a strict sense.
Brushed DC Motors
Brushless DC motors
Coreless DC motors
6.7.1 BRUSHED DC MOTORS:
The classic DC motor design generates an oscillating current in a wound rotor with a split
ring commutator, and either a wound or permanent magnet stator. A rotor consists of a coil
wound around a rotor which is then powered by any type of battery.Many of the limitations of
the classic commutator DC motor are due to the need for brushes to press against the
commutator. This creates friction. At higher speeds, brushes have increasing difficulty in
maintaining contact. Brushes may bounce off the irregularities in the commutator surface,
65
creating sparks. This limits the maximum speed of the machine. The current density per unit area
of the brushes limits the output of the motor.
66
[v = dL/dt]
or F = IL X B = ILB Sin
or F = BIL Sin
67
From the 1st diagram we can see that the construction of a DC motor is such that the
direction of electric current through the armature conductor at all instance is perpendicular to the
field. Hence the force acts on the armature conductor in the direction perpendicular to the both
uniform field and current is constant.
i.e. = 90
So if we take the current in the left hand side of the armature conductor to be I, and current at
right hand side of the armature conductor to be I, because they are flowing in the opposite
direction with respect to each other.
Then the force on the left hand side armature conductor, Fl = BIL Sin90 = BIL
Similarly force on the right hand side conductor Fr = B( I)L.Sin90 = BIL
We can see that at that position the force on either side is equal in magnitude but opposite
in direction. And since the two conductors are separated by some distance w = width of the
armature turn, the two opposite forces produces a rotational force or a torque that results in the
rotation of the armature conductor.Now let's examine the expression of torque when the armature
turns crate an angle of with its initial position.
The torque produced is given by
Torque = force, tangential to the direction of armature rotation X distance.
or = Fcos.w
or = BIL w cos
Where is the angle between the plane of the armature turn and the plane of reference or
the initial position of the armature which is here along the direction of magnetic field.The
presence of the term cos in the torque equation very well signifies that unlike force the torque at
all position is not the same. It in fact varies with the variation of the angle . To explain the
variation of torque and the principle behind rotation of the motor let us do a stepwise analysis.
68
69
70
point of null torque. Once the rotor crosses over this position the angle between the actual
position of the armature and the initial plane again decreases and torque starts acting on it again.
6.9 CONCLUSION
From this chapter we conclude that L293D is a dual H-bridge motor driver integrated
circuit (IC). Motor drivers act as current amplifiers since they take a low-current control signal.
The motor operations of two motors can be controlled by input logic at pins 2 & 7 and 10 & 15.
Input logic 00 or 11 will stop the corresponding motor. Logic 01 and 10 will rotate it in
clockwise and anticlockwise directions and provide a higher-current signal. This higher current
signal is used to drive the motors. In chapter 6.3, 6.4 we are shown connections and
truthtable.L293D will use this to drive the motor. It means if you want to operate a motor at 9V
then you need to provide a Supply of 9V across VSS Motor supply.
71
CHAPTER 7
SCHEMATIC REPRESENTATION
7.1 INTRODUCTION
A schematic, or schematic diagram, is a representation of the elements of a system using
abstract, graphic symbols rather than realistic pictures. A schematic usually omits all details that
are not relevant to the information the schematic is intended to convey, and may add unrealistic
elements that aid comprehension. For example, a subway map intended for riders may represent
a subway station with a dot; the dot doesn't resemble the actual station at all but gives the viewer
information without unnecessary visual clutter.
A schematic diagram of a chemical process uses symbols to represent the vessels, piping,
valves, pumps, and other equipment of the system, emphasizing their interconnection paths and
suppressing physical details. In an electronic circuit diagram, the layout of the symbols may not
resemble the layout in the physical circuit. In the schematic diagram, the symbolic elements are
arranged to be more easily interpreted by the viewer.
A circuit diagram (also known as an electrical diagram, elementary diagram, or electronic
schematic) is a simplified conventional graphical representation of an electrical circuit.
A pictorial circuit diagram uses simple images of components, while a schematic diagram shows
the components of the circuit as simplified standard symbols; both types show the connections
between the devices, including power and signalconnections. Arrangement of the components
interconnections on the diagram does not correspond to their physical locations in the finished
device.
72
CRYSTAL OSCILATOR
CAPACITORS
RESISTORS
SWITCHES
MOTORS
LCD
MICROCONTROLLER
DRIVER IC
SOLAR PANEL
73
7.2.2 CAPACITORS
A capacitor (formerly known as condenser) is a device for storing electric charge. The
forms of practical capacitors vary widely, but all contain at least two conductors separated by a
non-conductor. Capacitors used as parts of electrical systems, for example, consist of metal foils
separated by a layer of insulating film. A capacitor is a passive electronic component consisting
of a pair of conductors separated by a dielectric (insulator). An ideal capacitor is characterized by
a single constant value, capacitance, measured in farads. This is the ratio of the electric charge on
each conductor to the potential difference between them. In this Project we used 1000uF/50V
and 100uF/50V.
7.2.3 RESISTOR
74
A resistor is
a passive
two-terminal electrical
component that
implements electrical
resistance as a circuit element. Resistors act to reduce current flow, and, at the same time, act to
lower voltage levels within circuits. Resistors may have fixed resistances or variable resistances,
such as those found in thermistors, varistors, trimmers, photo resistors and potentiometers.
Resistors are common elements of electrical networks and electronic circuits and are ubiquitous
in electronic equipment. Practical resistors can be composed of various compounds and films, as
well as resistance wires (wire made of a high-resistivity alloy, such as nickel-chrome).
7.2.4 SWITCHES
In electrical engineering, a switch is an electrical component that can break an electrical
circuit, interrupting the current or diverting it from one conductor to another. 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. Each set of contacts can be in one
of two states: either "closed" meaning the contacts are touching and electricity can flow between
them, or "open", meaning the contacts are separated and the switch is no conducting.
7.2.5 MOTORS
A DC motor is designed to run on DC electric power. Two examples of pure DC designs
are Michael Faraday's homo polar motor (which is uncommon), and the ball bear in motor, which
is (so far) a novelty. By far the most common DC motor types are the brushed and brushless
types. In any electric motor, operation is based on simple electromagnetism. A current-carrying
conductor generates a magnetic field; when this is then placed in an external magnetic field, it
will experience a force proportional to the current in the conductor, and to the strength of the
external magnetic field.
7.2.6 LCD
A liquid crystal display (LCD) is a thin, flat display device made up of any number of
color or monochrome pixels arrayed in front of a light source or reflector. Each pixel consists of
a column of liquid crystal molecules suspended between two transparent electrodes, and two
75
polarizing filters. One of the most common devices attached to an controller is an LCD display.
Some of the most common LCDs connected to the controllers are 16X1.
7.2.7 MICROCONTROLLER
The true computer on a chip is nothing but a microcontroller. The design incorporates all
of the features found in a microprocessor CPU, ALU, PC, SP and registers. It also had added the
other features needed to make a complete computer. ROM, R AM, parallel I/O, serial I/O,
Counters and a clock circuits. In this project we used AT89S52 C. The AT89S52 is a lowpower, high-performance CMOS 8-bitmicrocontroller with 8K bytes of in-system programmable
Flash memory. It is a 8051 microcontroller family.
7.2.8 DRIVER IC
L293D is a dual H-bridge motor driver integrated circuit (IC). Motor drivers act as current
amplifiers since they take a low-current control signal and provide a higher-current signal. This
higher current signal is used to drive the motors. L293D is a dual H-Bridge motor driver, So with
one IC we can interface two DC motors which can be controlled in both clockwise and counter
clockwise direction and if you have motor with fix direction of motion the you can make use of
all the four I/O s to connect up to four DC motors.
solar batteries will stores the light energy as an electrical energy which is available from the
sunlight. Solar charged batteries are low cost, can be rechargeable. No expansive.
7.2.11 REGULATOR
A voltage regulator is an electrical regulator designed to automatically maintain a constant
voltage level. Electronic voltage regulators are found in devices such as computer power
supplies where they stabilize the DC voltages used by the processor and other elements. In
automobile alternators and central power station generator plants, voltage regulators control the
output of the plant. In an electric power distribution system, voltage regulators may be installed
at a substation or along distribution lines so that all customers receive steady voltage independent
of how much power is drawn from the line.
7.3 CONCLUSION
From this chapter we conclude that schematic, or schematic diagram, is a representation
of the elements of a system using abstract, graphic symbols rather than realistic pictures. A
schematic usually omits all details that are not relevant to the information the schematic is
intended to convey. Fig 7.1 shows the schematic diagram of voice control robot through android.
This fig shows the overall project representation of the project and we are able to know in which
way every pin of the microcontroller involves in this project. And also we are discussed about
each component in this project. Fig 7.1 shows the schematic diagram of voice control robot
through android. This fig shows the overall project representation of the project and we are able
77
to know in which way every pin of the microcontroller involves in this project. And also we are
discussed about each component in this project.
CHAPTER 8
HARDWARE AND SOFTWARE
8.1 INTRODUCTION
Embedded systems are designed to do some specific task, rather than be a general-purpose
computer for multiple tasks. Some also have time performance constraints that must be met, for
reasons such as safety and usability; others may have low or no performance requirements,
allowing the system hardware to be simplified to reduce costs. Embedded systems are not always
standalone devices. Many embedded systems consist of small, computerized parts within a larger
device that serves a more general purpose. For example, the Gibson Robot Guitar features an
embedded system for tuning the strings, but the overall purpose of the Robot Guitar is, of course,
to play music.[7] Similarly, an embedded system in an automobile provides a specific function as
a subsystem of the car itself. The program instructions written for embedded systems are referred
to as firmware, and are stored in read-only memory or Flash memory chips. They run with
limited computer hardware resources: little memory, small or non-existent keyboard or screen.
8.2 HARDWARE
Embedded systems range from no user interface at all, in systems dedicated only to one
task, to complex graphical user interfaces that resemble modern computer desktop operating
systems. Simple embedded devices use buttons, LEDs, graphic or character LCDs (for example
popular HD44780 LCD) with a simple menu system. More sophisticated devices which use a
graphical screen with touch sensing or screen-edge buttons provide flexibility while minimizing
space used: the meaning of the buttons can change with the screen, and selection involves the
natural behavior of pointing at what's desired. Handheld systems often have a screen with a
"joystick button" for a pointing device. Some systems provide user interface remotely with the
help of a serial (e.g. RS-232, USB, IC, etc.) or network (e.g. Ethernet) connection. This
approach gives several advantages: extends the capabilities of embedded system, avoids the cost
of a display, simplifies BSP, allows us to build rich user interface on the PC. A good example of
78
this is the combination of an embedded web server running on an embedded device (such as
an IP camera) or a network routers. The user interface is displayed in a web browser on a PC
connected to the device, therefore needing no bespoke software to be installed.
8.3 SOFTWARE
In this project we used keil software. The Keil C51 C Compiler for the 8051
microcontroller is the most popular 8051 C compiler in the world. It provides more features than
any other 8051 C compiler available today. The C51 Compiler allows you to write 8051
microcontroller applications in C that, once compiled, have the efficiency and speed of assembly
language. Language extensions in the C51 Compiler give you full access to all resources of the
8051. The C51 Compiler translates C source files into relocatable object modules which contain
full symbolic information for debugging with the Vision Debugger or an in-circuit emulator. In
addition to the object file, the compiler generates a listing file which may optionally include
symbol table and cross reference information.
8.3.1 FEATURES
8.3.2 EMBBEDED C
Embedded C is a set of language extensions for the C Programming language by the C
Standards committee to address commonality issues that exist between C extensions for different
79
8.3.3 PROGRAM
The below program is used in this project.
/*===========================================*/
/*------------btrobo programming------------*/
/*------PH:89C51RD+,28/01/11-----------------*/
/*===========================================*/
LCD_DPort EQU P0
LCD_Rs
EQU P1.5
EQU P1.7
DATA 30h
DATA 31h
DATA 32h
DATA 61h
ljmpPower_on
org 23h
ljmpserial_ISR
/*-------------------------------------*/
org 100h
Power_on:
mov R0,#00h
clr A
LclearNxtRAM:
mov @R0,a
inc R0
cjne R0,#0FFh,LclearNxtRAM
mov R0,#00h
acallLCD_Init
acallwelcomedata
call delay1sec
mov TMOD,#20h
mov TH1,#0FDh
mov SCON,#50h
mov IE,#90h
setb TR1
Call Btinit
call delay1sec
mov P2,#0F0h
MOV R1,#00H
/*-------------------------------------*/
MainLoop:
//
jnb P2.4,backrf
//
jnb P2.5,fwdrf
//
jnb P2.6,rightrf
81
//
jnb P2.7,leftrf
jbFDispRFID,RFIDLoop
call delay500ms
jmpMainLoop
/*--------------------------------------*/
/*backrf:
mov P2,#0f5h
calllcdclear
call displine1
movdptr,#BWD
call DISPDATA
movdptr,#robobwd
callserialsend
call delay500ms
acallwelcomedata
call delay1sec
mov P2,#0F0h
jmpMainLoop
fwdrf:
mov P2,#0fAh
calllcdclear
call displine1
movdptr,#FWD
call DISPDATA
movdptr,#robofwd
callserialsend
call delay500ms
acallwelcomedata
call delay1sec
mov P2,#0F0h
82
jmpMainLoop
rightrf:
mov P2,#0F2h
calllcdclear
call displine1
movdptr,#RT
call DISPDATA
movdptr,#robolft
callserialsend
call delay500ms
acallwelcomedata
call delay1sec
mov P2,#0F0h
jmpMainLoop
leftrf:
mov P2,#0F8h
calllcdclear
call displine1
movdptr,#LFT
call DISPDATA
movdptr,#robort
callserialsend
call delay500ms
acallwelcomedata
call delay1sec
mov P2,#0F0h
jmpMainLoop */
/*****************************************/
RFIDLoop:
clrFDispRFID
83
cjne R1,#38h,backlp
mov P2,#55h
calllcdclear
call displine1
movdptr,#BWD
call DISPDATA
movdptr,#robofwd
callserialsend
call delay500ms
acallwelcomedata
jmpMainLoop
backlp:
cjne R1,#32h,rightlp
mov P2,#0AAh
calllcdclear
call displine1
movdptr,#FWD
call DISPDATA
movdptr,#robobwd
callserialsend
call delay500ms
acallwelcomedata
jmpMainLoop
rightlp:
cjne R1,#36h,leftlp
mov P2,#022h
calllcdclear
call displine1
movdptr,#RT
call DISPDATA
84
movdptr,#robolft
callserialsend
call delay500ms
acallwelcomedata
jmpMainLoop
leftlp:
cjne R1,#34h,stop
mov P2,#88h
calllcdclear
call displine1
movdptr,#LFT
call DISPDATA
movdptr,#robort
callserialsend
call delay500ms
acallwelcomedata
jmpMainLoop
/****************************/
stop:
cjne R1,#35h,EXIT1
mov P2,#00h
calllcdclear
call displine1
movdptr,#ST
call DISPDATA
movdptr,#robost
callserialsend
call delay500ms
acallwelcomedata
85
jmpMainLoop
EXIT1:
jmpMainLoop
/***************************************/
Btinit:
mov dptr,#mycmnd0
callserialsend
call delay1sec
mov dptr,#mycmnd1
callserialsend
call delay1sec
mov dptr,#mycmnd2
callserialsend
call delay1sec
ret
mycmnd0:
mycmnd1:
DB
BACKWARD***",0Dh,0Ah,0
mycmnd2:
"**********CONTROLKEYS:
8-FORWARD,2-
robost:
DB "**********ROBOT STOPPED***********************",0Dh,0Ah,0
LITE:
DB "**********LIGHT DETECTED**********************",0Dh,0Ah,0
FIRE:
DB "**********FIRE DETECTED***********************",0Dh,0Ah,0
OBJ:
DB "**********OBJECT DETECTED*********************",0Dh,0Ah,0
/****************************************/
serialsend:
looop:
86
clr a
movc a,@a+dptr
jz exit
movSBUF,a
call delay20ms
incDptr
jmplooop
exit:
ret
/*--------------------------------------*/
serial_ISR:
jbRI,RX_Service
jbTI,TX_Service
reti
RX_Service:
clr RI
mova,sbuf
mov R1,a
call delay20ms
call delay20ms
setbFDispRFID
ljmpEnd_isr
TX_Service:
clr TI
ljmpEnd_isr
End_isr:
reti
/****************************************/
/*-----welcome data programming---------*/
/****************************************/
87
welcomedata:
calllcdclear
call displine1
movdptr,#mydata
call DISPDATA
call displine2
mov dptr,#mydata1
call DISPDATA
ret
mydata : DB" ANDROID BASED",0
mydata1: DB" ROBOT CONTROL ",0
FWD:
BWD:
LFT:
RT:
ST:
call LCD_CMND_OUT
mov a,#01h
call LCD_CMND_OUT
RET
/*******************************************/
/*-------lcd command programming-----------*/
/*******************************************/
LCD_CMND_OUT:
calllcd_busy
movLCD_DPort,a
clr LCD_Rs
clrLCD_Rw
setbLCD_En
nop
nop
clrLCD_En
RET
/****************************************/
/*-------lcd data programming-----------*/
/****************************************/
LCD_DATA_OUT:
calllcd_busy
movLCD_DPort,a
setb LCD_Rs
clrLCD_Rw
setbLCD_En
nop
nop
clrLCD_En
RET
89
/****************************************/
/*----------busy check programming------*/
/****************************************/
lcd_busy:
mov LCD_DPort,#0ffh
CLR LCD_Rs
SETB LCD_Rw
AGAIN1:
CLR LCD_EN
NOP
NOP
SETB LCD_EN
JB p0.7,AGAIN1
RET
/***************************************/
/*-----Display the string&send---------*/
/***************************************/
DISPDATA:
Next_Char:
clr a
movc a,@a+dptr
jzEnd_Str
call LCD_DATA_OUT
incdptr
jmpNext_char
End_Str:
RET
/***************************************/
/*---------display routine-------------*/
/***************************************/
90
lcdclear:
mov a,#01h
call LCD_CMND_OUT
ret
displine1:
mov a,#80h
call LCD_CMND_OUT
ret
displine2:
mov a,#0c0h
call LCD_CMND_OUT
ret
displine1A:
mov a,#8Ah
call LCD_CMND_OUT
ret
/*-------Delay routine-------------------*/
delay1sec:
mov DELAY1,#10
wait2: mov DELAY2,#200
wait1: mov DELAY3,#250
wait:
djnz DELAY3,wait
djnz DELAY2,wait1
djnz DELAY1,wait2
ret
delay500ms:
mov DELAY2,#183
wait12:
mov DELAY3,#250
ret
delay20ms:
wait32:
mov DELAY2,#40
wait31:
mov DELAY3,#250
8.4 CONCLUSION
In this chapter we are discussed about embedded system. Embedded systems are
designed to do some specific task, rather than be a general-purpose computer for multiple tasks.
Some also have time performance constraints that must be met. The program instructions written
for embedded systems are referred to as firmware, and are stored in read-only memory or Flash
memory chips. The Keil C51 C Compiler for the 8051 microcontroller is the most popular 8051
C compiler in the world. From this chapter we conclude that embedded C is a set of language
extensions for the C Programming language by the C Standards committee to address
commonality issues that exist between C extensions for different embedded systems.
Historically, embedded C programming requires nonstandard extensions to the C language in
order to support exotic features such as fixed-point arithmetic, multiple distinct memory banks,
and basic I/O operations. And also we have discussed about embedded and keil features. And
program of voice control robot is shown in this chapter.
92
CHAPTER 9
HARDWARE ANALYSIS
9.1 INTRODUCTUION
In this chapter we will discuss about the assembling process of voice control robot
through android and assembling process. In this we will also discuss about android, android
applications. How the android will be useful in this project. Which android applications are used
in this project. In the android applications how the commands are used to control the robots and
also in this chapter we will discuss about robots working mechanism. They are briefly explained
below.
94
Voice
9.5 TESTING
From the following commands our robot will be follows. The following commands are
same as both android apps. What we given to robot via android whther it is voice command or
touch command the following commands are same for the robot movement. They are
COMMAND
ROBOT MOVEMENT
2(TWO)
4(FOUR)
5(FIVE)
6(SIX)
8(EIGHT)
BACKWARD
LEFT
STOP
RIGHT
FORWARD
Table 9.1: TESTING RESULT
9.6 CONCLUSION
In this chapter we were discussed about the assembling process of voice control robot. In
this chapter we were discussed about android, android applications. How the android
applications are used in this project. in this chapter we will discuss about robots working
mechanism.
96
CHAPTER 10
EVALUTION
10.1 APPLICATIONS:
We believe such a system would find wide variety of applications. Menu driven systems
such as e-mail readers, household appliances like washing machines, microwave ovens, and
pagers and mobiles etc. will become voice controlled in future.
10.1.2 WHEELCHAIRS:
Based on our project the robo is controlled by giving a voice commands though android
mobile. We can move wheel easily giving direction commands to android without hand
movement.
97
98
10.2 ADVANTAGES
By using robos we can control live video feed by giving voice commands.
We can use voice control robot for a multiple ways. We can move any clockwise,
anticlockwise direction, forward and backward by giving voice commands.
In industries we can control the machines by using robos.
It is used in hazardous places.
They are no need of food, nutrients need only electrical energy by means of battery storage,
solar energy etc.
You can program them to make them do exactly what you want them to do.
They are more accurate than humans Eg no shaking when in a very important surgery, puts
every screw in fabricating a car etc.
You can send them to very dangerous places.
You can make them do your job for you.
They can perform tasks faster than humans and much more consistently and accurately. They
can capture moments just too fast for the human eye to get, for example the Atlas detector in
the LHC project can capture ~ 600000 frames per second while we can see at about 60.
Most of them are automatic so they can go around by themselves without any human
interference
They can also useful for physically handicapped persons through wheel chairs etc.
They can reduce the labour work in industry by it portable takes the load from one place to
another place. They able to work always 24x7.
10.3 DISADVANTAGES
They are very expensive to make they can reproduce but it could cost money for the
materials.
You need the right materials to make them.
They can be very hard to program.
You need highly trained people to make them.
People can lose jobs in factories.
It needs maintenance to keep it running.
streaming service desired. Some of interfacing applications which can be made are controlling
home appliances, robotics movements, Speech Assisted technologies, Speech to text translation,
and many more. In future industries, home auto machine, agriculture is also developed by
robotics. To reduce the labour efficiency, work efficiency, to reduce the working time to increase
the productivity.
101
CONCLUSION
A highly reliable and easy system to accomplish a purpose design specific task such as
distribution of medicine and food to the bed ridden patients specially in infected & inaccessible
areas of the hospitals and medical Centre have been reported. The on-board intelligence helps
providing situational awareness a basic requirement of the system to be operated by voice / tele
confined for ascertaining a majority of other tasks in open loop environment. The operation by
voice command could best be used for handicapped.
The outcome of the thesis is a simple robot which is controlled by a smart android
phone& also receives the voice commands. This thesis aims to provide simple guidelines for
people interested in building robots. As mentioned earlier, the project has been carried out
several times and the aim of this thesis is to familiarize the students with fundamentals of
Arduino and Android to build anything possible. Although the thesis projects very little about the
robots use in real world, but with the help of guidelines and the abundance of resources the
outcome could be very beneficial for many people in the world. People with physical limitations
such as handicapped people could use the feature to their wheel chair from this thesis to
compensate their abilities.
102
BIBLOGRAPHY
The Micro controller and Embedded Systems.
Muhammad Ali Mazidi
Janice Gillispie Mazidi
The Micro controller Architecture, Programming & Applications
Kenneth J.Ayala
Fundamentals of Micro processors and Micro computers
B.Ram
Micro processor Architecture, Programming & Applications
Ramesh S.Gaonkar
Electronic Components
D.V.Prasad
Answers.com. Online dictionary, and much more, URL http://www.answers.com.
Wikipedia.com, complete information website.
http://en.wikipedia.org/wiki/Solar_battery_charger
Scribd.com, the worlds largest online library. URL:http://www.scribd.com
Encyclopedia of regulators, capacitors, diodes, resistors
http://www.morldtechgossips.com, simple way of understand
Other websites
http://www.elprocus.com/solar-panel-facts/
http://org.ntnu.no/solarcells/pages/introduction.php
http://www.facstaff.bucknell.edu
http://hyperphysics.phy-astr.gsu.edu/hbase/electronic/leds.html
www.national.com
www.atmel.com
www.microsoftsearch.com
www.geocities.com
103