This is the project report of my Final year Project which bagged us
"Best Project Award" at NATIONAL LEVEL in "13th ISTE Tamilnadu & Puducherry Section Annual Convention for Engineering Students - 2014" held on 23rd - 24th January, 2014."
Maneuvering Robotic Vehicle based on Motion Sensor Feedback
1. i
MANEUVERING ROBOTIC VEHICLE BASED ON
MOTION SENSOR FEEDBACK
A PROJECT REPORT
Submitted by
Gopinath.B
Ishan Malpotra
Raghuram.S
In the partial fulfillment of the award of the degree
of
BACHELOR OF ENGINEERING
in
ELECTRONICS AND COMMUNICATION ENGINEERING
ADHIPARASAKTHI ENGINEERING COLLEGE,
MELMARUVATHUR
ANNA UNIVERSITY:CHENNAI 600 025
APRIL 2014
2. ii
ANNA UNIVERSITY:CHENNAI 600025
BONAFIDE CERTIFICATE
Certified that this project report ”MANEUVERING ROBOTIC
VEHICLE USING MOTION SENSOR FEEDBACK” is the bonafide work
of
GOPINATH.B 40110106021
ISHAN MALPOTRA 40110106026
RAGHURAM.S 40110106067
who carried out the project under my supervision.
SIGNATURE SIGNATURE
(Dr.V.Nagarajan) (Dr.S.Jayashri)
HEAD OF THE DEPARTMENT SUPERVISOR
Professor, Professor,
Dept. of ECE, Dept. of ECE,
Adhiparasakthi Engineering College, Adhiparasakthi EngineeringCollege,
Melmaruvathur - 603 319 Melmaruvathur - 603 319
Submitted for the university exam held on___________________
INTERNAL EXAMINER EXTERNALEXAMINER
3. iii
ABSTRACT
Disasters are not limited to specific parts of world, though certain areas
might be more prone to certain specific types of disasters. Some countries are
more prone to terrorist activities, some coastal areas are more prone to cyclones,
some areas are more prone to floods while some other areas are prone to oil
spills. Loss of human life and property are obvious consequences of disasters.
However, the level of preparedness is the key element that can limit the extent
of damage. Use of sensor network based technologies can enhance the level of
preparedness and the ability to handle consequences of the disaster. This higher
level of preparedness can provide a better control over the loss. Robotics is the
branch of technology that deals with the design, construction, operation, and
application of robots, as well as computer systems for their control, sensory
feedback, and information processing. The design of a given robotic system will
often incorporate principles of mechanical engineering, electronic engineering,
and computer science (particularly artificial intelligence). A team of mobile
robots can quickly set up a network of mobile sensors and actuators for rapid
action. This project deals with a robotic vehicle which is being controlled by
wireless network. The robotic vehicle is interfaced with an android phone where
the sensors such as accelerometer, gyro meter and compass are brought into use.
The robot is interfaced with an android phone using an Arduino board. The
robot does the work of finding a specific location which is being programmed in
a java interface. It provides the path of a certain location via Wi-Fi network. For
more convenience, it has been attached with a wireless webcam which will give
the live telecast of a specific location respectively.
4. iv
ACKNOWLEDGEMENT
First and foremost, we would like to thank our president HIS HOLINESS
ARUL THIRU AMMA and our vice president SAKTHI THIRUMATHI
AMMA, for all of the support they have given through all of these years. We
would also like to extend our gratitude to our Correspondent SAKTHI THIRU
Dr.G.B.SENTHIL KUMAR for his encouragement. We also express our sincere
thanks to our Principal Dr.V.RAMASAMY and our Head of the Department
Dr.V.NAGARAJAN who showed faith in us in all our endeavors.
We would fail in our duties if we miss to thank our Supervisor
Dr.S.JAYASHRI who has been with us in all our up’s and down’s and for her
valuable suggestions. We extend our gratitude to our Project Coordinator
Dr.J.RAJA for giving us full freedom and providing us with various facilities for
carrying out our project work.
We also whole heartedly thank Mr. S.SAKTHI THARAN, Asst. Prof./CSE
and Mr. VISHNU VIGNESHWAR for helping us out and guiding us through the
software portion of our project work, without them our project never would have
become a successful one.
We profoundly thank all faculties of our department and also the staff members of
other department’s, who contributed their ideas for the betterment of the project.
It’s been our friends who bore all our anger and distress through the course of this
work. We are not going to thank and separate them because all of them are
definitely a part of this project work.
5. v
TABLE OF CONTENTS
CHAPTER NO. TITLE PAGE NO.
ABSTRACT III
ACKNOWLEDGEMENT IV
LIST OF FIGURES VIII
LIST OF TABLES XI
LIST OF ABBREVATIONS XII
1. INTRODUCTION 1
1.1 OVERVIEW 1
1.2 LITERATURE SURVEY 2
1.3 OBJECTIVE OF THE
PROJECT 6
1.4 BLOCK DIAGRAM 6
1.5 ORGANIZATION OF THE
REPORT 8
2. HARDWARE DETAILS 9
2.1 ROBOT SPECIFICATIONS 9
2.1.1 Arduino Board 9
2.1.1.1 Interfacing 12
6. vi
2.1.2 Relay Network 12
2.1.2.1 Interfacing 15
2.1.3 DTMF Decoder 16
2.1.3.1 Interfacing 19
2.1.4 Power Supply 19
2.1.4.1 Power Supply To
Ardiuno Board 20
2.1.4.2 Power Supply To
Relay Network 20
2.2 WIRELESS CAMERA 20
2.2.1 Transmitter Section 21
2.2.1.1 Transmitter Specifications 21
2.2.2 Receiver Section 22
2.2.2.1 Receiver Specifications 22
2.2.3 Power Supply 23
2.3 WATER SPRAYER CIRCUIT 23
2.3.1 Heat Sensor 24
2.3.2 DC Motor 26
2.3.3 Power Supply 28
3. SOFTWARE SPECIFICATIONS 29
8. viii
LIST OF FIGURES
FIGURE NO. TITLE PAGE NO.
1.1 Block Diagram of the Robot 7
2.1 Arduino Board Layout 10
2.2 Interfacing the arduino board
with the other components 12
2.3 ULN2003 pin diagram 14
2.4 Darlington amplifiers connection 14
2.5 Stepper motor interface 15
2.6 Interfacing relay network with the
stepper motor 15
2.7 DTMF Decoder Block 16
2.8 Interfacing DTMF decoder with
other components 19
2.9 9V alkaline battery 20
2.10 12V lead acid battery 20
2.11 The total architecture of the
Wireless Camera Unit 21
2.12 Wireless T.V. Transmitter 22
2.13 Wireless T.V. Receiver 23
2.14 LM35 Pin Diagram 24
9. ix
2.15 Plastic Package 24
2.16 Flowchart to connect
heat sensor with motor 26
2.17 DC Motor 28
3.1 Sample program in Arduino
Software BETA 1.5.5 31
3.2 Android Jellybean 4.2 Interface 33
3.3 Sensor Application 35
3.4 Gyroscope Output 35
3.5 Connection between Client
and Server 37
3.6 Peer-Peer Connection 38
3.7 Direct Connection 38
4.1 Side view of Robot 41
4.2 Components of the Robot 42
4.3 Front view 42
4.4 Full view 43
4.5 Circular output 44
4.6 Straight Line 44
4.7 Square output 45
11. xi
LIST OF TABLES
FIGURE NO. TITLE PAGE NO.
2.1 ATMega 328 Details 11
2.2. Frequency limits for Numerical
Buttons 17
2.3. LM35 Characteristics 25
12. xii
LIST OF ABBREVATIONS
Wi-Fi Wireless Fidelity
DTMF Dual-Tone Multi-frequency
DC Direct Current
PWM Pulse Width Modulation
USB Universal Serial Bus
ICSP Internet and Computer Service Provider
AC Alternating Current
FTDI Future Technology Devices International3
SSR Solid State Relay
ULN Ultra-Low Noise
NPN Negative-Positive-Negative transistor
LED Light Emitting Diode
Op-amp Operational amplifier
VREF Voltage Reference
IC Integrated Circuit
TOE Theory Of Everything
PAL Phase Alternating Line
CCIR Consultative Committee for International Radio
13. xiii
NTSC National Television System Committee
EIA Environmental Impact Assessment
LM Light Microscopy
P2P Peer to Peer
UDP User Datagram Protocol.
14. 1
CHAPTER 1
INTRODUCTION
1.1 OVERVIEW
A robot is being designed which is used as a path finder. The control and the
navigation of the vehicle is carried out with the help of android phone via Wi-Fi
network. The smart phone attached to the robot acts as a wireless remote. The
vehicle makes use of various sensors such as gyrometer, compass and
accelerometer present in the smart phone. The smart phone is integrated to the
vehicle with the help of the Arduino - UNO board.
It consists of 2 parts i.e., hardware module and software module. The
hardware consists of the arduino board, DTMF decoder, relay circuit, gear motor,
power supply and an android phone. These components are being coupled with
each other to work as a robot. Some devices such as arduino Board, DTMF
decoder are being used for getting the input whereas devices such as relay circuit
and gear motor are responsible for the output.
The pairing of 2 android phones takes place through Wi-Fi Hotspot. One
phone acts as a server and another phone acts as a client. The coding for the
trajectory application are being written in ECLIPSE software which works in a
JAVA platform. The command for arduino board are executed using ARDUINO
BETA 1.5.5 version software which are written in C language with specific syntax.
To be more versatile, various features such as automatic water spraying
mechanism and live tracing of the path using wireless web camera is attached with
the device.
15. 2
1.2 LITERATURE SURVEY
Moustafa Youssef [Apr 2010]. In this paper, a low-energy calibration free
localization scheme based on the available internal sensors in many of today’s
phones has been introduced. A hybrid GPS/accelerometer/compass scheme has
been used that depends mainly on using the low-energy accelerometer and
compass sensors and uses the GPS infrequently for synchronization. They
implemented their system on Android-enabled cell phones and evaluated it in both
highways and intra-city driving environments. The results show that the proposed
hybrid scheme had an exponential saving in energy, with a linear loss in accuracy
compared to the GPS accuracy. AK8976A chipset provides the functionality of
“both the accelerometer and compass”. The AK8976A chip is a 6-axis electronic
compass that combines a 3-axis geomagnetic sensor with a 3-axis acceleration
sensor in an ultra-small package in [1].
Prof. (Dr.) Yusuf Mulge [June 2013]. In this paper, an embedded wireless
sensor network prototype for remote room temperature monitoring. This network
will be used for management of fire rescue operations. It will give the Android
registered user freedom to continuously monitor the remote room temperature and
in this way it provides better fire controlling technique .The proposed system
provides an android user interface for registered user to access the current
temperature and a flash/beep message in case of fire. LM35 sensor senses the
remote room temperature and temperature status is transmitted to the smart phone
via GPRS. Remote room temperature data transfer between the smart phone and
application server that is connected to temperature sensor via USB cable is done
using Google’s C2DM service. The application server which analyzes the
temperature data, then inform a registered user for taking proper action in case of
fire. The main limitation of temperature sensing application is that the flash/beep
16. 3
message delivered on Android user handset in case of fire, details regarding this is
described in [2].
Jong Hoon Ahnn [May 2207]. This project outlines the strategy adopted for
establishing two kinds of communications. One is for wireless communication
between a mobile Robot and a remote Base Station, another for serial
communication between a remote Base Station and a GUI Application. The aim is
to command and control the Robot wirelessly by the GUI Application. The
principle task of this project was to program the AVR microcontroller interfaced to
a radio packet controller module (operating at a frequency of 7433 MHz) which
would enable us to wirelessly control the Robot. Details of wireless control of
robot is further explained in detail in [3].
Dinesh Nair [June 1998]. This paper presents a system that detects
unexpected moving obstacles that appear in the path of a navigating robot, and
estimates the relative motion of the object with respect to the robot. The system is
designed for a robot navigating in a structured environment with a single wide-
angle camera. The objective of the system is to detect moving obstacles in order to
gradually stop the robot to avoid collision; maneuvering around the obstacle is not
considered here. The system has been assembled using pieces of existing vision
techniques with a strong emphasis on real-world applications and very fast
processing with conventional hardware. The system uses polar mapping to simplify
the segmentation of the moving object from the background. The polar mapping is
performed with the focus of expansion (FOE) as the center. A vision-based
algorithm that uses the vanishing points of segments extracted from a scene in a
few three dimensional (3-D) orientations provides an accurate estimate of the robot
orientation. This is used to maintain the motion of the robot along a purely
translational path and also used to subtract the effects of any drifts from this path
17. 4
from each image acquired by robot. By doing so, the determination of the FOE is
simplified. In the transformed space qualitative estimate of moving obstacles is
obtained by detecting the vertical motion of edges extracted in a few specified
directions. Relative motion information about the obstacle is then obtained by
computing the time to impact between the obstacles and robot from the radial
component of the optical flow. The system was implemented and tested on an
indoor mobile robot at our laboratory. Results from the robot navigating in real
environments are presented and analyzed here. The system is able to detect moving
obstacles at 100 ms/frame and can be used as a cueing mechanism for moving
obstacles. Details of this paper are further explained in [4].
M.F.L. Abdullah [July 2011]. The issue of flu outbreak especially influenza
H1N1 has been widely discussed nowadays. For those medical personnel who are
exposing to measure temperature of a potential patient is recognized as a risky
mission. Besides the medical personnel, firefighter also facing the similar risk
related with temperature in their career. Heat injury is the major problem for the
firefighter since they wear insulated clothing which is not able to shed the heat
generated from physical exertion when they extinguish fire. Hence, a temperature
sensing mobile robot via Bluetooth is proposed as an alternative solution for
temperature measurement. In this project, a prototype mobile robot with simple
locomotion mechanism and temperature sensor has been developed to measure
human and environment temperature. This prototype includes KC-21 Bluetooth
module as a platform to communicate with mobile Bluetooth, and LM35z
temperature sensor to measure temperature. The mobile robot can move around
and measure temperature according to the command or instruction of the user
using mobile Bluetooth. The control range of this mobile robot is around 10m and
it can measure temperature up to 150°C. A circuit controller board based on
18. 5
PIC16F877A is developed. Results show that, the temperature sensor has about
2.356% error when measuring human temperature while 0.88% error for
measuring environment temperature. Details of this paper are further explained in
[5].
19. 6
1.3 OBJECTIVE OF THE PROJECT
The main objective of our project is to design a robot that can be used for
disaster management.
The main reason behind designing such a robot is to reduce the risk factor
involved with the human life.
The proposed plan is so simple, that it requires an android smart phone
connected to the robot which is being controlled by Wi-Fi network.
1.4 BLOCK DIAGRAM
Two android phones are paired using a Wi-Fi medium. One acts as a
transmitter and other acts as a receiver. The instructions that are given by the user
through the transmitter is received by the receiver (smart phone) attached to the
vehicle. The signals received are decoded using a DTMF decoder. The instruction
is passed to the relay through the arduino board to which the smart phone is
interfaced. With the help of the motor, the robot is navigated to different
directions.
The heat sensor (lm 35) is also coupled to the arduino board which is
programmed to sense certain temperature limit and spray the water when the
temperature crosses that limit. The power supply is given through a 12V D.C.
battery to the relay circuit and a 9V D.C. battery to the arduino board, DTMF
decoder and the wireless camera.
21. 8
1.5 ORGANIZATION OF THE REPORT
Chapter 1 gives the overview of the project, literature survey, block diagram,
description of the block diagram and organization of the project report.
Chapter 2 deals with the hardware details which consists of the specification
regarding the arduino board, relay network, DTMF decoder, wireless camera,
water spraying circuit and the power supply.
Chapter 3 deals with the software details which includes the software
required for arduino programming, android programming and pairing between
phones through Wi-Fi hotspot.
Chapter 4 deals with deals with the final results and discussion.
22. 9
CHAPTER 2
HARDWARE DETAILS
2.1 ROBOT SPECIFICATIONS
In this chapter, the internal organization and construction of robot is considered.
The basic components of the robot are as follows
Ardiuno board
Relay network
DTMF decoder
Power supply
Each component has a unique role to play with. The specification and the
working of each component is discussed in detail in the coming chapters.
2.1.1 Ardiuno Board
The Arduino Uno is a microcontroller board based on the ATmega328. It has 14
digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs,
a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a
reset button. It contains everything needed to support the microcontroller; simply
connect it to a computer with a USB cable or power it with a AC-to-DC adapter or
battery to get started. The Uno differs from all preceding boards in that it does not
use the FTDI USB-to-serial driver chip. Instead, it features the Atmega8U2
programmed as a USB-to-serial converter.
"Uno" means one in Italian and is named to mark the upcoming release of
Arduino 1.0. The Uno and version 1.0 will be the reference versions of arduino,
moving forward. The Uno is the latest in a series of USB Arduino boards, and the
23. 10
reference model for the Arduino platform; for a comparison with previous versions,
The specifications of the board is tabulated below.
Figure 2.1. Arduino board layout
24. 11
Table 2.1. ATMega 328 Details
Microcontroller ATmega328
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 6
DC Current per I/O Pin 40 mA
Clock Speed 16 MHz
Flash Memory 32 KB (ATmega328) of which 0.5 KB
used by boot loader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
25. 12
2.1.1 Interfacing the arduino board with the other components
Figure 2.2. Interfacing the arduino board with the other components
2.1.2 Relay Network
A relay is an electrically operated switch. Many relays use an electromagnet to
mechanically operate a switch, but other operating principles are also used. Relays
are used where it is necessary to control a circuit by a low-power signal (with
complete electrical isolation between control and controlled circuits), or where
several circuits must be controlled by one signal. The first relays were used in long
distance telegraph circuits as amplifiers. They repeated the signal coming in from
one circuit and re-transmitted it on another circuit. Here, the relays are exclusively
used to control the gear motor. The motor controls the direction of the robot. There
are many types of relays available they are:
26. 13
Latching relay
Reed relay
Mercury-wetted relay
Mercury relay
Polarized relay
Machine tool relay
Ratchet relay
Coaxial relay
Contactor
Solid-state relay
Solid state contactor relay
Buchholz relay
Forced-guided contacts relay
Overload protection relay
Vacuum relays
We are using ULN2003 which is a solid state relay to control the robot. A Solid
State Relay (SSR) is a solid state electronic component that provides a similar
function to an electromechanical relay but does not have any moving components,
increasing long-term reliability. Every solid state device has a small voltage drop
across it. This voltage drop limits the amount of current a given SSR can handle.
The minimum voltage drop for such a relay is a function of the material used to
make the device. Solid state relays rated to handle as much as 1,200 amperes have
become commercially available. Compared to electromagnetic relays, they may be
falsely triggered by transients and in general may be susceptible to damage by
extreme cosmic ray and EMP episodes.
27. 14
Figure 2.3. ULN2003 pin diagram Figure 2.4. Darlington amplifiers connection
A ULN2003A is a high-voltage, high-current darlington transistor array.
Basically, the driver consists of 16 pins. Load current of 500 mA for each of the
seven drivers is provided. It consists of seven NPN darlington pairs that feature
high voltage outputs with common cathode for switching inductive loads. Typical
usage of the ULN2003A is to drive relays, lamp and LED displays or stepper
motors.
Features :
500 mA rated collector current (single output)
50 V output
Includes output flyback diodes
Inputs compatible with various types of logic circuits
28. 15
Figure 2.5. The diagram depicts how the darlington arrays present inside the relay
are interfaced with the DC motor.
2.1.2.1. Interfacing relay network with the DC motor
Figure 2.6. Interfacing relay network with the stepper motor
29. 16
2.1.3 DTMF
Dual-tone multi-frequency signaling (DTMF) is used for telecommunication
signaling over analog telephone lines in the voice frequency band
between telephone handsets and other communications devices and the switching
center. The version of DTMF that is used in push button telephones for tone
dialing is known as Touch Tone. It was developed by Western Electric and first
used by the Bell System in commerce, using that name as a registered trademark.
The DTMF decoder circuit identifies the dial tone from the telephone line and
decodes the key pressed on the remote telephone.
Figure 2.7. DTMF decoder block
30. 17
The working of this technique can more clearly explained with the help of the
tabulation that is given below.
Table 2.2. Frequency limits for Numerical Buttons
Explanation for the Tabulation
There is an inbuilt Op amp present inside the M-8870 decoder IC. The
electrical signals from microphone pin are fed to inverting input of the Op
Amp via a series of resistance (100kΩ) and capacitance (0.1 µF).
The non inverting input of Op-amp is connected to a reference voltage (pin4
-VREF). The voltage at VREF pin is Vcc/2.
31. 18
Working of the DTMF decoder:
Pin 3 - (GS) is the output of internal op-amp, the feedback signal is given by
connecting the output pin (pin3- GS) to inverting input pin (pin2 - IN)
through a resistor (270kΩ). The output of op-amp is passed through a
pre filter, low group and high group filters (filter networks). These filters
contain switched capacitors to divide DTMF tones into low and high
group signals (High group filters bypass the high frequencies whereas
low group filter pass low frequencies). Next processing sections inside
the IC are frequency detector and code detector circuits. Filtered
frequency passed through these detectors. At last the four digit binary
code is latched at the output of M-8870 DTMF decoder IC.
Pin 5 - INH is an active high pin, inhibits detection of A, B, C, D tones of
character.
Pin 6 - PWDN is an (active high), inhibits the working of oscillator thus stops
the working of our circuit.
Pin 10 - TOE is the output enable pin which is active high logic and enables the
latching of the data on the data pins Q0, Q1, Q2, and Q3.
Pin 15 - Std is the Data valid pin, turn out to be high on detection of valid DTMF
tone or else it remains low.
Pin 7 - (OS1) and 8 (OS2) are used to connect crystal oscillator. An oscillator of
frequency 3.579545 MHz is used here.
Hence, the working of the dual tone multi frequency decoder is explained clearly
in the above chapter.
32. 19
2.1.3.1 Interfacing DTMF decoder with other components
Figure 2.8. Interfacing DTMF decoder with other components
2.1.4 Power Supply
Generally, for any electronic device it is hard to make it work without a
power supply in other words we can say that it doesn’t work without a power
supply. Two types of power supply are used in the vehicle.
9 volt dc alkaline battery
12 volt dc lead acid battery
Here, the 9V supply is given to the ardiuno board because as mentioned
earlier to provide stability and to avoid malfunctioning of the board, this range of
voltage is used. This 9V battery is also the source to the DTMF decoder. A 12V
lead acid battery is the source for the relay network. Here, the 12V battery over a
9V battery is preferred to operate the relay continuously which generates pulses for
the robot to move. The 9V battery has to be changed or replaced periodically.
33. 20
Figure 2.9. 9V alkaline battery Figure 2.10.12V lead acid battery
2.1.4.1 Power supply to the ardiuno board
VIN The input voltage to the arduino board is given through this pin.
GND Ground pin.
2.1.4.2 Power supply to the relay network
VIN The positive terminal of the 12V lead acid battery is given to the VIN pin.
GND The negative terminal is connected to the GND pin.
2.2 WIRELESS CAMERA
The main purpose of attaching a wireless camera to the vehicle is to track
the direction of the robot. With the help of this camera the path of the robot can be
viewed and altered accordingly.
The main components of this wireless camera are as follows
Transmitter module
Receiver module
Power supply unit
34. 21
Figure 2.11. The total architecture of the wireless camera unit
2.2.1 Transmitter Section
The transmitter module is the camera. Thus camera is permanently attached
to the vehicle. It captures the live streaming of the events such as the path travelled
by the robot, information about any disaster and transmits to the receiver module
through the antenna which is affixed with it. The detailed specification of the
transmitter module is mentioned.
2.2.1.1 Specifications of the transmitter module
Video Camera Parts : 1/3" 1/4" Image Sensors
Horizontal Definition : 380 TV Lines
Output Electrical Level : 50mW
Output Frequency : 900MHz ~ 1200MHz
Transmission Signal : Video
Linear Transmission Distance : 50-100m
Voltage : DC +9V
Current : 300mA
Power Dissipation : 640mW
35. 22
Figure 2.12. Wireless TV transmitter
2.2.2 Receiver section
The term receiver basically refers to an amplifier that has a built in radio
tuner. With A/V receivers, the basic functionality is to receive an audio and video
signal and to pass it to a display device such as a projector or a television. If the
transmitter transmits the captured image, a receiving unit is used to receive and
display the information sent by the transmitting unit. The key specification the
receiver unit is mentioned.
2.2.2.1 Specification of the receiving unit
Receiving Method : Electronic Frequency Modulation
Reception Sensitivity : +18dB
Receiving Frequency : 900MHz ~ 1200MHz
Receiving Signal : Video
Voltage : 12V DC
Current : 500mA
36. 23
Figure 2.13. Wireless T.V. Receiver
2.2.3 Power Supply Unit
The power supply to the camera is given by two ways.
Using A.C. Adapter
Using a 9V D.C. Alkaline Battery
Since we are operating our robot as a mobile device the D.C. mode of power
supply is preferred over the A.C. adapter.
2.3 WATER SPRAYER
An additional feature of Water sprayer is being used for spraying water in
the environment where the temperature rises above a certain threshold level.The
several components of the water sprayer are
1. Heat Sensor
2. Relay Network
3. DC Motor
4. Power Supply
37. 24
2.3.1 Heat Sensor
A few characteristics of the heat sensor are
Low Cost due to wafer level trimming
It can measure temperature more accurately than a thermistor.
The sensor circuitry is sealed and not subject to oxidation, etc.
The LM35 generates a higher output voltage than thermocouples and hence
amplification of output voltage is not require.
It has an output voltage that is proportional to the celsius temperature.
The Scale factor is 0.01V/o
C
The LM35 does not require any external calibration or trimming and
maintains an accuracy of +/-0.4o
C at room temperature and +/- 0.8o
C over a
range of 0o
C to +100o
C.
Another important characteristic of the LM35DZ is that it draws only 60
micro amps from its supply and possesses a low self-heating capability. The
sensor self-heating causes less than 0.1o
C temperature rise in still air.
Figure 2.14. LM35 Pin diagram Figure 2.15. Plastic Package
38. 25
Table 2.3. LM35 Characteristics
Characteristics Range
Calibrated Directly in ° Celsius (Centigrade)
Linear Scale Factor + 10 mV/°C
0.5°C Ensured Accuracy at +25°C
Rating Range −55°C to +150°C
Operating Voltage 4 to 30 V
Current Drain Less than 60-μA
Low Self-Heating 0.08°C
Nonlinearity Only ±¼°C Typical
Low Impedance Output 0.1 Ω for 1 mA Load
This has three pins
PIN 1: VCC (2.7 – 5.5V)
PIN 2: ANALOG VOLATGE OUT (201mV at 20.1°C)
PIN 3: GROUND
39. 26
Flowchart to connect heat sensor with Motor
Figure.2.16. Flowchart to connect heat sensor with motor
2.3.3 DC Motor
A DC motor relies on the fact that like magnet poles repel and unlike
magnetic poles attract each other. A coil of wire with a current running through it
generates a electromagnetic field aligned with the center of the coil. By switching
the current on or off in a coil its magnet field can be switched on or off or by
switching the direction of the current in the coil the direction of the generated
magnetic field can be switched 180°. A simple DC motor typically has a stationary
set of magnets in the stator and an armature with a series of two or more windings
of wire wrapped in insulated stack slots around iron pole pieces (called stack teeth)
with the ends of the wires terminating on a commutator. The armature includes the
mounting bearings that keep it in the center of the motor and the power shaft of the
40. 27
motor and the commutator connections. The winding in the armature continues to
loop all the way around the armature and uses either single or parallel conductors
(wires), and can circle several times around the stack teeth. The total amount of
current sent to the coil, the coil's size and what it's wrapped around dictate the
strength of the electromagnetic field created. The sequence of turning a particular
coil on or off dictates what direction the effective electromagnetic fields are
pointed. By turning on and off coils in sequence a rotating magnetic field can be
created. These rotating magnetic fields interact with the magnetic fields of the
magnets (permanent or electromagnets) in the stationary part of the motor (stator)
to create a force on the armature which causes it to rotate. In some DC motor
designs the stator fields use electromagnets to create their magnetic fields which
allow greater control over the motor. At high power levels, DC motors are almost
always cooled using forced air.
The commutator allows each armature coil to be activated in turn. The
current in the coil is typically supplied via two brushes that make moving contact
with the commutator. Now, some brushless DC motors have electronics that switch
the DC current to each coil on and off and have no brushes to wear out or create
sparks.
41. 28
Figure 2.17. DC Motor
2.3.4 Power Supply
A 12V lead acid battery is given as the power supply to the Water Sprayer circuit
which is already discussed above.
42. 29
CHAPTER 3
SOFTWARE SPECIFICATIONS
3.1 ARDUINO PROGRAMMING
The Arduino UNO can be programmed with the arduino software.
The ATmega328 on the arduino uno comes preburned with a boot loader that
allows to upload new code to it without the use of an external hardware
programmer. It communicates using the original STK500 protocol.
The boot loader can also be bypassed and the microcontroller is programmed
through the ICSP (In Circuit Serial Programming) header. The ATmega16U2 (or
8U2 in the rev1 and rev2 boards) firmware source code is available.
The ATmega16U2/8U2 is loaded with a DFU bootloader, which can be activated
by:
On rev1 boards: connecting the solder jumper on the back of the board (near
the map of Italy) and then resetting the 8U2.
On rev2 or later boards: there is a resistor that pulling the 8U2/16U2 HWB
line to ground, making it easier to put into DFU mode.
We can then use Atmel's FLIP software (Windows) or the DFU programmer (Mac
OS X and Linux) to load a new firmware. Or we can use the ISP header with an
external programmer (overwriting the DFU boot loader) will be used.
Automatic (Software) Reset
Rather than requiring a physical press of the reset button before an upload,
the arduino uno is designed in a way that allows it to be reset by software running
on a connected computer. One of the hardware flow control lines of the
43. 30
ATmega8U2/16U2 is connected to the reset line of the ATmega328 via a 100 nano
farad capacitor. When this line is asserted (taken low), the reset line drops long
enough to reset the chip. The Arduino software uses this capability to upload code
by simply pressing the upload button in the Arduino environment.
This setup has other implications. When the uno is connected to either a
computer running Mac OS X or Linux, it resets each time a connection is made to
it from software (via USB). For the following half-second or so, the bootloader is
running on the Uno. While it is programmed to ignore malformed data (i.e.
anything besides an upload of new code), it will intercept the first few bytes of data
sent to the board after a connection is opened. If a sketch running on the board
receives one-time configuration or other data when it first starts, make sure that the
software with which it communicates waits a second after opening the connection
and before sending this data.
The Uno contains a trace that can be cut to disable the auto-reset. The pads
on either side of the trace can be soldered together to re-enable it. It's labeled
"RESET-EN".
3.1.1 Arduino-Uno Beta 1.5.5 Software
The basic commands which are used for giving instructions to the Arduino Board
are -
pinMode() - Used for initialization of a command
digitalWrite() - Used for getting output.
digitalRead() - Used for providing the input.
The language used for writing the basic commands is basic C programming. A
sample program is being shown.
44. 31
Figure 3.1. Sample program in Arduino Software BETA 1.5..5
3.2 ANDROID PROGRAMMING
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
45. 32
the Open Handset Alliance - a consortium of hardware, software, and
telecommunication companies devoted to advancing open standards for mobile
devices.
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.
Interfacing
Android's user interface 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. The response to user input is
designed to be immediate and provides a fluid touch interface, often using the
vibration capabilities of the device to provide haptic feedback to the user. 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, or
allowing the user to steer a vehicle in a racing game by rotating the device,
simulating control of a steering wheel.
46. 33
Figure 3.2. Android Jellybean 4.2 Interface
Android devices boot to the home screen, the primary navigation and
information point on the device, which is similar to the desktop found on PCs.
Android home screens are typically made up of app icons and widgets; app icons
launch the associated app, whereas widgets display live, auto-updating content
such as the weather forecast, the user's email inbox, or a news ticker directly on the
47. 34
home screen. A home screen may be made up of several pages that the user can
swipe back and forth between, though Android's home screen interface is heavily
customizable, allowing the user to adjust the look and feel of the device to their
tastes. Third-party apps available on Google Play and other app stores can
extensively re-theme the home screen, and even mimic the look of other operating
systems, such as Windows Phone. Most manufacturers, and some wireless carriers,
customize the look and feel of their Android devices to differentiate themselves
from their competitors.
3.2.1 Gyrometer tracking output
Android Sensor Box detects all available sensors on android device, and
vividly shows how they work with amazing graphics. Android sensor box also tells
which sensors are supported by the hardware, and provides extremely useful sensor
tools that could be used in our daily life.
Gyroscope
Gyroscope sensor can measure six directions at a time. The effects will be
seen immediately by rotating the phone slightly. Now, gyroscope sensor is mostly
used in 3D game development, and possibly indoor navigation in future.
Proximity
Proximity sensor measures the distance between two objects, usually the
device screen and our hands/face etc. The effect is tested by moving the hand
forward and backward in front of the device in Android sensor box.
48. 35
Accelerometer
Accelerometer sensor is applied to detect device directions, i.e. auto rotate
screen when the device is rotated vertically. It is also widely used in game
development.
Android sensor box only detects changes. It may not show the correct
temperature, proximity, light and pressure values if no changes occur. For better
performances, sensors are usually used together. Check out the live demonstration
inside the application! Any feedback the email address below is the best way to get
in touch with us.
Figure 3.3. Sensor Application Figure 3.4. Gyroscope Output
49. 36
3.3 PAIRING BETWEEN PHONES
The pairing between the 2 phones is being done with the help of Wi-Fi
Hotspot. One phone acts as a Client and another phone acts as Server and a third
phone is accessed to act as a Wi-Fi hotspot which connects both server and client
phones.
3.3.1 Wi-Fi hotspot
A hotspot is a site that offers Internet access over a wireless local area
network (WLAN) through the use of a router connected to a link to an Internet
service provider. Hotspots typically use Wi-Fi technology.
Hotspots may be found in coffee shops and various other public
establishments in many developed urban areas throughout the world.
Software hotspots
Many Wi-Fi adapters built into or easily added to consumer computers
include the functionality to operate as hotspots. Manufacturers can enable this
functionality through driver-level support. Modern consumer operating systems,
including Windows Vista and later and Apple OS X 10.6 and later added features
to support this. Third-party software vendors, offer applications to allow users to
operate their own hotspot, whether to share an existing connection or extend the
range of another hotspot.
50. 37
Hotspot 2.0
Also known as HS2 and Wi-Fi Certified Pass point, hotspot 2.0 is a new
approach to public access Wi-Fi by the Wi-Fi Alliance. The idea is for mobile
devices to automatically join a Wi-Fi subscriber service whenever the user enters a
hotspot 2.0 area. The intention is to provide better bandwidth and services-on-
demand to end-users, whilst also alleviating mobile carrier infrastructure of traffic
overheads.
Hotspot 2.0 is based on the IEEE 802.11u standard, which is a new set of
protocols to enable cellular-like roaming. If the device supports 802.11u and is
subscribed to a hotspot 2.0 service it will automatically connect and roam.
Figure 3.5. Connection between Client and Server
3.3.2 Peer – Peer Communication
A peer-to-peer (P2P) network is a type of decentralized and distributed
network architecture in which individual nodes in the network (called "peers") act
as both suppliers and consumers of resources, in contrast to the centralized client–
51. 38
server model where client nodes request access to resources provided by central
servers.
In a peer-to-peer network, tasks (such as searching for files or streaming
audio/video) are shared amongst multiple interconnected peers who each make a
portion of their resources (such as processing power, disk storage or network
bandwidth) directly available to other network participants, without the need for
centralized coordination by servers.
Figure 3.6. Peer-Peer Connection Figure 3.7. Direct Connection
A peer-to-peer (P2P) network in which interconnected nodes ("peers")
share resources amongst each other without the use of a centralized administrative
system
A network based on the cli,ent-server model, where individual clients
request services and resources from centralized servers
The decentralized nature of P2P networks increases robustness because it
removes the single point of failure that can be inherent in a client-server based
system. As nodes arrive and demand on the system increases, the total capacity of
52. 39
the system also increases, and the likelihood of failure decreases. If one peer on the
network fails to function properly, the whole network is not compromised or
damaged. In contrast, in a typical client–server architecture, clients share only their
demands with the system, but not their resources. In this case, as more clients join
the system, fewer resources are available to serve each client, and if the central
server fails, the entire network is taken down.
3.3.3 UDP Network
User Datagram Protocol (UDP) is one of the core members of the Internet
protocol suite (the set of network protocols used for the Internet). With UDP,
computer applications can send messages, in this case referred to as datagram, to
other hosts on an Internet Protocol (IP) network without prior communications to
set up special transmission channels or data paths.
UDP uses a simple transmission model with a minimum of protocol
mechanism. It has no handshaking dialogues, and thus exposes any unreliability of
the underlying network protocol to the user's program. As this is normally IP over
unreliable media, there is no guarantee of delivery, ordering, or duplicate
protection. UDP provides checksums for data integrity, and port numbers for
addressing different functions at the source and destination of the datagram.
UDP is suitable for purposes where error checking and correction is either
not necessary or performed in the application, avoiding the overhead of such
processing at the network interface level. Time-sensitive applications often use
UDP because dropping packets is preferable to waiting for delayed packets, which
may not be an option in a real-time system. If error correction facilities are needed
53. 40
at the network interface level, an application may use the Transmission Control
Protocol (TCP) or Stream Control Transmission Protocol (SCTP) which are
designed for this purpose.
54. 41
CHAPTER 4
RESULTS AND DISCUSSION
4.1 RESULTS
In this section, the results of the project are analyzed. The hardware consists
of two android phones which are paired using a Wi-Fi medium. One acts as a
transmitter and other acts as a receiver. The instructions that are given by the user
through the transmitter is received by the smart phone attached to the vehicle. The
signals received are decoded using a DTMF decoder. The instruction is passed to
the relay through the arduino board to which the smart phone is interfaced. With
the help of the motor, the robot is navigated to different directions.
The results regarding the block diagram are shown in figure 4.1, 4.2, 4.3 and 4.4.
Figure.4.1. Side view of robot
57. 44
The Android application which gives the details about the trajectory of the
robot gives the output in the form of a graph. Three sample outputs are being
shown which are taken with the help of Gyro meter Sensor and Accelerometer
Sensor. The samples are shown in figure 4.5, 4.6 and 4.7.
Fig. 4.5. Circular output Fig. 4.6. Straight Line
58. 45
Fig. 4.7. Square output
The results regarding Wi-Fi pairing between the client phone and server
phone are done with the help of Wi-Fi Hotspot which is being maintained by
another phone. The client phone gets the commands from the server phone through
the Wi-Fi hotspot. The client phone makes the robot to move according to the
commands specified by the server. The results are shown in figure 4.8 and 4.9.
60. 47
CONCLUSION
We have designed a robotic car which works on the signals given via Wi-Fi
network. It consists of two android phones which are paired using a Wi-Fi
medium. One acts as a transmitter and other acts as a receiver. The instructions that
are given by the user through the transmitter is received by the receiver (smart
phone) attached to the vehicle. The signals received are decoded using a DTMF
decoder. The instruction is passed to the relay through the Arduino board to which
the smart phone is interfaced. With the help of the motor, the robot is navigated to
different directions.
The heat sensor (lm 35) is also coupled to the arduino board which is
programmed to sense certain temperature limit and spray the water when the
temperature crosses that limit. The power supply is given through a 12V D.C.
battery to the relay circuit and a 9V D.C. battery to the arduino board, DTMF
decoder and the Wireless camera.
The Robot can be fed in with the feature of Artificial Intelligence. With the
help of this feature the robot analyses the situation and act upon it, besides this the
commands for the robot can also be randomly generated from the server.
With the help of the feature of AI the robot would be able to act smartly
when it comes to disaster management which reduces the risk involved in human
life to certain extent apart from this the trajectory of a calamity condition can be
found out exactly without even knowing any details beforehand.
61. 48
REFERENCES
1.Moustafa Youssef, Mohamed Amir Yosef, Mohamed El-Derini, “GAC:
Energy- Efficient Hybrid GPS-Accelerometer-Compass GSM Localization”
[J], arXiv:1004.3174 v1 [cs.NI],19 Apr 2010.
2.Prof. (Dr.) Yusuf Mulge, “Remote Temperature Monitoring Using LM35
sensor and Intimate Android user via C2DM Service” [J], International Journal
of Computer Science and Mobile Computing
IJCSMC, Vol. 2, Issue. 6, June 2013, pg.32 – 36.
3.Jong Hoon Ahnn, “Robot control using the wireless communication and the
serial communication” [J]. Master of Electrical Engineering Program, Cornell
University,NASA Design Project Report - May 2007.
4. Dinesh Nair, Jagdishkumar K. Aggarwal, “Moving Obstacle Detection From a
Navigating Robot” [J], IEEE transactions on robotics and automation, vol. 14,
no. 3, june 1998.
5.M.F.L. Abdullah, Lee Mei Poh, “Mobile Robot Temperature Sensing
Application via Bluetooth” [J], International Journal of Smart Home Vol. 5, No.
3, July, 2011.
62. 49
PUBLICATIONS
Dr. Jayashri.S, Ishan Malpotra, Gopinath.B, Raghuram.S, “MANUVERING
ROBOTIC VEHICLE BASED ON MOTION SENSOR FEEDBACK” in
13th
ISTE TAMILNADU AND PUDUCHERRY SECTION ANNUAL
CONVENTION FOR ENGINEERING STUDENTS - 2014 at Adhiyaman
College of Engineering, Hosur on 23rd
- 24th
January,2014.