Prevention of Child Trafficking
Prevention of Child Trafficking
This project is proposed design cost-effective, reliable and has the function of accurate
tracking. When number of objects were spread out over ground, the owner corporations often
found it difficult to keep track of what was happening. They required some type of system to
determine where each object was at any given time and for how long it travelled. And the
need of tracking is to prevent the loss. GSM and GPS based tracking system will provide
effective, real time child location and reporting. A GPS-GSM based tracking system will
inform where your device is and where it has been, how long it has been. The system uses
geographic position and time information from the global positioning satellites. This module
consists of GPS receiver, a GPRS modem and Arduino. It can provide tele-monitoring and
management system. The system takes advantage of wireless technology in providing
powerful management transportation engine. The use of GSM and GPS technologies about
the device. Once it is kept in all children’s bag, then it is easy to track the child any time.
Tracking system uses the GPS to locate the geographic coordinate of the child. The
device itself is basically a radio receiver tuned into the frequency of the transmitting
frequency of the GPS satellites in which it enables the receiver to compute its geographic
coordinate. There are several data sets that can be obtained from the GPS satellites such as
the accurate position of the receiver within the certain radius, number of satellites received by
the unit, speed of the GPS receiver moving and accurate date/time based on the Universal
Time Coordinated.
Distance between the transmitting satellites and the GPS receiver is determined by using
accurate time lapse between the satellites-which uses very accurate atomic clock-and the
receiver using less accurate quartz crystal.
Signal send by the satellite include the time stamp of the signal send and the receiver will
determine the distance by measuring the time to travel to the receiver. Using a triangulation
method based on the distance from the GPS satellites, the position of the GPS receiver will be
known precisely within a few meters. This can be achieved because the precise position of
the GPS satellites is excellent and reliable. Uncertainties of the distance can be arise because
of several physical phenomena such as temperature gradient on the atmosphere, signal
bounce due to objects, and strength of satellites signal received by the GPS receiver.
1
Together with the measurement of the position of the receiver, the GPS receiver can
also process and provide information such as accurate time of day, speed of GPS receiver
moving, heading of the movement of the GPS receiver, accuracy of position, number of
satellite signal received, and the strength of the signal received. With the signals of three
satellites (with good strength), the position of the receiver including altitude can be
determined within several matters. Because the GPS receiver accepts radio signal from the
satellites, when the receiver is located inside a relatively sealed building, then the position
cannot be determined due to the lack of satellite signal. The GPS receiver will receive the
satellite signals and process the signal and provide the data.
Based on the NMEA-0183 standard, the serial data rate of the GPS receiver is 4800 bits
per second with 8 bits of data and one stop bit (4800 bps) other than sending data via this
serial connection, setting of the GPS receiver can be performed via this serial connection.
Setting includes the data format, unit of measurement, and time information. Data
information from the GPS receiver is kept in child bag. There should be a method to send the
information of the child, so that the information can be processed further. Arduino which can
process the data (latitude and longitude) further and presented to the user.
The data will be sent using the packet oriented data service known as GRPS (general
packet radio service). Data rate sent via this GPRS network can be as highest 128kbit/sec
which exceeds the speed of the GPS data. Connection via the GPRS network will use a GPRS
modem which is available easily and the communication with the model will go via serial
communication similar to the communication with the GPS. Data sent via the GPRS modem
will be received to module which is connected to the internet to the internet can monitor the
position and condition of the device.
2
This system designed for users in land construction and transport business, provides
real-time information such as location, speed and expected arrival time of the user is moving
vehicles in a concise and easy - to- read format. This system may also useful for
communication process among the two points. Currently GPS vehicle tracking ensures their
safety as travelling. This vehicle tracking system found in clients vehicles as a theft
prevention and rescue device. This system installed for the four wheelers, Vehicle tracking
usually used in navy operators for navy management functions, routing, send off, on board
information a security. The applications include monitoring driving performance of a parent
with a teen driver. Vehicle tracking systems accepted in consumer vehicles as a theft
prevention and retrieval device. If the theft identified, the system sends the SMS to the
vehicle owner.
3
This GSM modem will receive the SMS and send to the Arduino MEGA328 with the
child. The Arduino MEGA328 will receive this SMS and If everything matches then it will
perform the request required by the owner with a link that has longitude &latitude for Google
Map in order to show the location of the child. Figure 1 shows the architecture of real time
GPS tracking system.
1.3 APPLICATIONS:
1. Locating Positions
This is the main and most common application of GPS tracking locations. Suppose
you are hiking with your friends and you get separated, GPS can help you find one another’s
location.
If you are going on a road trip or are traveling to a place you’re not familiar with,
GPS can assist you arrive at your destination safely and on time by showing you the best
route or shortcut available going to your destination.
In case you encounter an accident or any emergency in an isolated area and need
immediate assistance, you can call pre-programmed emergency numbers on your smart
phone. One of the most noteworthy uses of GPS is that even without giving location details,
emergency crew will be able to trace your current location.
Being an excellent anti-theft device is one of the uses of GPS. Installing tracking
device on vehicles will allow you to trace and locate it in case your car is stolen by someone.
There are already several reports of recovered stolen vehicles, thanks to GPS technology.
GPS can also be used in mapping and surveying project. The use of GPS in surveying
saves companies time and cost. This is the best way to survey positions in the shortest time
possible. The project could be mapping of highways, power lines, crops, soil types, rivers etc.
4
5. Tracking for Law Enforcement
The police also take advantage of the uses of GPS. These devices can also be used by
police and investigators in catching criminals using GPS tracking. The authorities will just
have to slickly attach a tiny GPS tracking device on the suspect’s vehicle to track the crime
location. GPS can help them collect useful evidences.
There are a lot of reasons your pet escapes or wanders away from your home. Dogs and cats
are easily frightened by loud noises like thunderstorms and fireworks. They are also easily
get distracted and lured by food, sound, or other things. Just like that and your pet becomes
missing or stolen.
By embedding GPS microchip in their skin or letting them wear a collar equipped with a GPS
pet tracking device, you can immediately track your pet’s location and recover them.
One of the widely known uses of GPS is keeping tabs on the elderly. GPS for elderly
helps you take care of a senior family member who has a tendency to wander alone and have
difficulty finding way back to home. Some health facilities find the technology truly helpful
in looking after their patients with dementia.
There’s a button in these devices that an elderly can press to make emergency calls
for medical assistance to arrive immediately. Like for example if an elderly fall down
somewhere and needs help to get up or can’t find their destination. The emergency button
allows them to call for help.
8. Finding Treasure
GPS are also used by tech-geeks when having treasure hunting with friends. Clues are
hidden on various sites as programmed on treasure maps. They then upload the maps on Web
sites so those who joined the activity can look for the prizes.
9. Mining
GPS tracking system is also useful in mining. Miners track the minerals in various
layers of the surface of the earth with the help of the device.
5
10. Securing Artworks
The price of paintings and other artworks are worth as high as hundreds of millions
when sold or auctioned in galleries. No wonder they are called investments. Most of it are
insured to protect the owners from loss since such expensive pieces are often the targets of
thieves. As an additional layer of security, owners put a small tracking device on those
artworks so they can trace the thieves and get back their “investment.”
6
DESCRIPTION OF THE PROJECT
POWER
SUPPLY
REMOTE USER
ARDUINO WITH INTERNET
GSM/GPS MODULE
UNO SIM 808
1. Power Supply
2. Ardunio ATMEGA328
7
2.2.1 POWER SUPPLY:
All power supplies have a power input connection, which receives energy in the form
of electric current from a source, and one or more power output connections that deliver
current to the load. The source power may come from the electric power grid, such as
an electrical outlet, energy storage devices such as batteries or fuel
cells, generators or alternators, solar power converters, or another power supply. The input
and output are usually hardwired circuit connections, though some power supplies
employ wireless energy transfer to power their loads without wired connections. Some power
supplies have other types of inputs and outputs as well, for functions such as external
monitoring and control.
8
Over the years Arduino has been the brain of thousands of projects, from everyday
objects to complex scientific instruments. A worldwide community of makers - students,
hobbyists, artists, programmers, and professionals - has gathered around this open-source
platform, their contributions have added up to an incredible amount of accessible
knowledge that can be of great help to novices and experts alike.
Arduino was born at the Ivrea Interaction Design Institute as an easy tool for fast
prototyping, aimed at students without a background in electronics and programming. As
soon as it reached a wider community, the Arduino board started changing to adapt to new
needs and challenges, differentiating its offer from simple 8-bit boards to products
for IOT applications, wearable, 3D printing, and embedded environments. All Arduino
boards are completely open-source, empowering users to build them independently and
eventually adapt them to their particular needs. The software, too, is open-source, and it is
growing through the contributions of users worldwide.
Every Arduino board needs a way to be connected to a power source. The Arduino
UNO can be powered from a USB cable coming from your computer or a wall power supply
9
(like this) that is terminated in a barrel jack. In the picture above the USB connection is
labeled (1) and the barrel jack is labeled (2).
The USB connection is also how you will load code onto your Arduino board. More
on how to program with Arduino can be found in our Installing and Programming Arduino
tutorial.
The pins on your Arduino are the places where you connect wires to construct a
circuit (probably in conjuction with a breadboard and some wire. They usually have black
plastic ‘headers’ that allow you to just plug a wire right into the board. The Arduino has
several different kinds of pins, each of which is labeled on the board and used for different
functions.
• GND (3): Short for ‘Ground’. There are several GND pins on the Arduino, any of
which can be used to ground your circuit.
• 5V (4) & 3.3V (5): As you might guess, the 5V pin supplies 5 volts of power, and the
3.3V pin supplies 3.3 volts of power. Most of the simple components used with the
Arduino run happily off of 5 or 3.3 volts.
• Analog (6): The area of pins under the ‘Analog In’ label (A0 through A5 on the
UNO) are Analog In pins. These pins can read the signal from an analog sensor (like a
temperature sensor) and convert it into a digital value that we can read.
• Digital (7): Across from the analog pins are the digital pins (0 through 13 on the
UNO). These pins can be used for both digital input (like telling if a button is pushed)
and digital output (like powering an LED).
• PWM (8): You may have noticed the tilde (~) next to some of the digital pins (3, 5, 6,
9, 10, and 11 on the UNO). These pins act as normal digital pins, but can also be used
for something called Pulse-Width Modulation (PWM). We have a tutorial on PWM,
but for now, think of these pins as being able to simulate analog output (like fading an
LED in and out).
• AREF (9): Stands for Analog Reference. Most of the time you can leave this pin
alone. It is sometimes used to set an external reference voltage (between 0 and 5
Volts) as the upper limit for the analog input pins.
10
Reset Button:
The Arduino has a reset button (10). Pushing it will temporarily connect the reset pin
to ground and restart any code that is loaded on the Arduino. This can be very useful if your
code doesn’t repeat, but you want to test it multiple times. Unlike the original Nintendo
however, blowing on the Arduino doesn’t usually fix any problems.
Just beneath and to the right of the word “UNO” on your circuit board, there’s a tiny
LED next to the word ‘ON’ (11). This LED should light up whenever you plug your Arduino
into a power source. If this light doesn’t turn on, there’s a good chance something is wrong.
TX RX LEDs:
TX is short for transmit, RX is short for receive. These markings appear quite a bit in
electronics to indicate the pins responsible for serial communication. In our case, there are
two places on the Arduino UNO where TX and RX appear – once by digital pins 0 and 1, and
a second time next to the TX and RX indicator LEDs (12). These LEDs will give us some
nice visual indications whenever our Arduino is receiving or transmitting data (like when
we’re loading a new program onto the board).
Main IC:
The black thing with all the metal legs is an IC, or Integrated Circuit (13). Think of it
as the brains of our Arduino. The main IC on the Arduino is slightly different from board
type to board type, but is usually from the ATmega line of IC’s from the ATMEL company.
This can be important, as you may need to know the IC type (along with your board type)
before loading up a new program from the Arduino software. This information can usually be
found in writing on the top side of the IC. If you want to know more about the difference
between various IC’s, reading the datasheets is often a good idea.
Voltage Regulator:
The voltage regulator (14) is not actually something you can (or should) interact with
on the Arduino. But it is potentially useful to know that it is there and what it’s for. The
11
voltage regulator does exactly what it says – it controls the amount of voltage that is let into
the Arduino board. Think of it as a kind of gatekeeper; it will turn away an extra voltage that
might harm the circuit. Of course, it has its limits, so don’t hook up your Arduino to anything
greater than 20 volts.
Each of the 14 digital pins on the arduino Uno can be used as an input or output. They
operate at 5 volts. Each pin can provide or receive a maximum of 40mA and has an internal
pill-up resistor (disconnect by default) of 20-50k ohms.
SERIAL :
PIN 0 (RX) and 1(TX). Used to receive (RX) and transmit (TR) TTL serial data.
These pins are connected to the corresponding pins of the ATmega8U2 USB-to-TTL serial
chip.
EXTERNAL INTERRUPTS:
Pins 2 and 3. These pins can be configured to trigger an interrupt on a low value, a
rising of falling edge, or a change in value. See the attach interrupt () function for details.
PWM:
3,5,6,9,10 and 11. Provide 8-bit PWM output with the analog write () function.
SPI:
10(SS) ,11(MOSI) ,12(MOSI) ,13(SCK). These pins support SPI communication using
the SPI library.
LED:
There is a build-in LED connected to digital pin 13. When the pin is HIGH value, the LED is
ON. When the pin is LOW,it’s OFF.
The UNO has 6 analog inputs, labeled A0 through A5, each of which provide 10 bits
of resolution (i.e 1024 different value). By default they measure from ground to 5 volts,
12
through is it possible to change the upper and of their range using the analog reference ()
function.
AREF:
Reference voltage for the analog inputs. Used with analog reference ().
RESET:
Bring this line LOW to reset the microcontroller. Typically used to add a reset button
to shield which block the one on the board.
13
2.2.3.1ATCommand:
Commands Description
OK
Parameters
+CGNSPWR: <mode>
Read Command
AT+CGNSPWR? OK
Parameters
Response
14
AT+CGNSPWR=< Parameters
mode> <mode> 0 Turn off GNSS power supply
OK
Parameter
See Write Command
Read Command Response
AT+CGNSSEQ? TA returns the current setting of last sentence parsed:
+CGNSSEQ: <last sentence>
OK
Parameter
See Write Command
Write Command Response OK
AT+CGNSSEQ=<last ERROR
sentence>
Parameters
<last sentence> is a string type parameter:
“GGA” refer to ”GPGGA” or “GLGGA”or “GNGGA”
“GSA” refer to ”GPGSA” or “GLGSA”or “GNGSA”
“GSV” refer to ”GPGSV” or “GLGSV”or
“GNGSV”“RMC refer to ”GPRMC” or
“GLRMC”or”GNRMC”
Reference Note
Factory setting is: AT+CGNSSEQ=”RMC”.
15
GNSS receiver operating mode, satellites
GSA GP, GN
used in the position solution, and DOP
values
Parameters Description
UTC Time Parsed from “$--RMC” NMEA sentence
fix status Parsed from “$--RMC” NMEA sentence
16
Satellites Used Parsed from “$--GGA” NMEA sentence
HPA Reserved
VPA Reserved
<Fix Mode>,<Reserved1>,<HDOP>,<PDOP>,
OK
Parameters
17
2 Fix status -- 0-1 1
dd: [1,31]
hh: [0,23]
mm: [0,59]
ss.sss:[0.000,60.9
99]
4 Latitude ±dd.dddddd [-90.000000,90.000000] 10
5 Longitude ±ddd.ddddd [- 11
d 180.000000,180.000000
]
6 MSL Altitude meters 8
7 Speed Over Ground Km/hour [0,999.99] 6
11 HDOP -- [0,99.9] 4
12 PDOP -- [0,99.9] 4
13 VDOP -- [0,99.9] 4
14 Reserved2 0
18 Reserved3 0
18
AT+CGNSURC GNSS navigation, GEO-fences and speed alarm URCreport
Test Command Response
AT+CGNSURC=? +CGNSURC: (0-255)
OK
Parameters
OK
Parameters
<Fix Mode>,<Reserved1>,<HDOP>,<PDOP>,
<VDOP>,<Reserved2>,<Satellites in View>,
Parameters
19
…
255Turnon navigation data URC report,andreport
every 255 GNSSFIX
Reference Note
“+CGNSINF:”return.
Parameters
See Write Command
Write Command Response If send ok: OK
AT+CGNSCMD=<Cmdt If send false:
y ERROR
pe>,<CmdString>
Parameters
<CmdType>
20
0 NMEA style command
OK
Parameters
See Write Command
Read Command Response
AT+CGNSTST? GNSS test modeon/off
+CGNSTST: <mode>
OK
Parameters
See Write Command
Write Command Response
AT+CGNSTST=<mod OK ERROR
e
>
21
Table 2.4: CME Error Code:
The following errors are related to GPS. The format is like this:
+CME ERROR: <err>. The detail error code and description is list in the following
table.
Code Description
895 GNSS baud rate selected by HW
891 GNSS data check sum err
parsed C”
Read GNSS navigation AT+CGNSINF +CGNSINF:
information
1,1,20150327014838.000,31.2
21783,121.354528,114.600,0.
28,0.0,1,,1.9,2.2,1.0,,8,4,,,42,,
OK
Set URC reporting every AT+CGNSURC= OK
2(1-255) 2
GNSS fix
Turn off URC reporting AT+CGNSURC= OK
0
Send Command to GNSS AT+CGNSCMD= OK
0,”$
22
PMTK000*32”
Appendix:
Abbreviation Definition
APN Access Point Name
URC Unsolicited Result Code
FTP File Transfer Protocol
GGA Global Positioning System Fixed Data
GLL Geographic Position – Latitude/Longitude
GNSS Global Navigation Satellite System
GPS Global Positioning System
AGPS Assisted GPS
DGPS Differential Global Positioning System
GPRS General Packet Radio Service
GSA GNSS DOP and Active Satellites
GSV GNSS Satellites in View
HPA Horizontal Position Accuracy
VPA Vertical Position Accuracy
GEO-Fence A geographic area
HTTP The Hypertext Transfer Protocol
HDOP Horizontal Dilution of Precision
HTTP Hypertext Transfer Protocol
NMEA National Marine Electronics Association
NMEA National Marine Electronics Association
PDOP Position Dilution of Precision
PDP Packet Data Protocol
23
RMC Recommended Minimum Specific GNSS Data
VDOP Vertical Dilution of Precision
VTG Course Over Ground and Ground Speed
ZDA Time & Date
FEATURES:
❖ Quad-band 850/900/1800/1900MHz.
❖ Weight:3.3g.
❖ Operation temperature:-40℃~85℃.
24
2.2.3.2 GPS MODULE:
The positions can even be computed in three-dimension views with the help of four
GPS satellite signals. The space segment of the global positioning system consists of 27
Earth-orbiting GPS satellites. There are 24 operational and 3 extra (in case one fails) satellites
that move round the earth each 12 hours and send radio signals from space that are received
by the GPS receiver. These monitoring stations help in tracking signals from the GPS
satellites that are continuously orbiting the earth. Spaces vehicles transmit microwave carrier
signals. The users of global positioning systems have GPS receivers that convert these
satellite signals so that one can estimate the actual position, velocity and time.
25
In order to make the simple mathematical calculation the GPS receiver must know
two things. First it must know the location of the place is to be traced by at least three
satellites above the place. Second, it must know the distance between the place and each of
those space vehicles. Units that have multiple receivers that pick up signals from several GPS
satellites at a same time. These radio waves are electromagnetic energy that travels at the
speed of light. On the average without any special antenna a GPS receiver can detect 7-11
satellites at the same time with signal strength between 11-25 dB with accuracy of about 15
meters.
A GPS navigation device, GPS receiver, or simply GPS is a device that is capable of
receiving information from GPS satellites and then to calculate the device's geographical
position. Using suitable software, the device may display the position on a map, and it may
offer directions. The Global Positioning System (GPS) is a global navigation satellite system
(GNSS) made up of a network of a minimum of 24, but currently 30, satellites placed into
orbit by the U.S. Department of Defense.[1]
The GPS was originally developed for use by the United States military, but in the
1980s, the United States government allowed the system to be used for civilian purposes.
Though the GPS satellite data is free and works anywhere in the world, the GPS device and
the associated software must be bought or rented.
A GPS device can retrieve from the GPS system location and time information in all
weather conditions, anywhere on or near the Earth. A GPS reception requires an unobstructed
line of sight to four or more GPS satellites,[2] and is subject to poor satellite signal conditions.
In exceptionally poor signal conditions, for example in urban areas, satellite signals may
exhibit multipath propagation where signals bounce off structures, or are weakened by
meteorological conditions. Obstructed lines of sight may arise from a tree canopy or inside a
structure, such as in a building, garage or tunnel. Today, most standalone GPS receivers are
used in automobiles. The GPS capability of smartphones may use assisted GPS (A-GPS)
technology, which can use the base station or cell towers to provide a faster Time to First Fix
(TTFF), especially when GPS signals are poor or unavailable. However, the mobile network
part of the A-GPS technology would not be available when the smartphone is outside the
range of the mobile reception network, while the GPS aspect would otherwise continue to be
available.
26
The Russian Global Navigation Satellite System (GLONASS) was developed
contemporaneously with GPS, but suffered from incomplete coverage of the globe until the
mid-2000s. GLONASS can be added to GPS devices to make more satellites available and
enabling positions to be fixed more quickly and accurately, to within 2 meters.
Using the GPS information and subject to the sophistication of installed GPS software, a
GPS device used as an automobile navigation system may be used in a number of contexts,
including:
❖ maps, including street maps, displayed in human readable format via text or in a
graphical format,
❖ turn-by-turn navigation directions to a human in charge of a vehicle or vessel via text
or speech,
❖ directions fed directly to an autonomous vehicle such as a robotic probe,
❖ traffic congestion maps (depicting either historical or real time data) and suggested
alternative directions,
❖ information on nearby amenities such as restaurants, fueling stations, and tourist
attractions.
27
When GPS signals are weak, for example indoors, the extra processing power can be used to
integrate weak signals to the point where they can be used to provide a position or timing
solution.
GPS signals are already very weak when they arrive at the Earth’s surface. The GPS
satellites only transmit 27 W (14.3 dBW) from a distance of 20,200 km in orbit above the
Earth. By the time the signals arrive at the user's receiver, they are typically as weak as −160
dBW, equivalent to one tenth of a million-billionth of a watt (100 attowatts). This is well
below the thermal noise level in its bandwidth. Outdoors, GPS signals are typically around
the −155 dBW level (−125 dBm).
Conventional GPS receivers integrate the received GPS signals for the same amount
of time as the duration of a complete C/A code cycle which is 1 ms. This results in the ability
to acquire and track signals down to around the −160 dBW level. High Sensitivity GPS
receivers are able to integrate the incoming signals for up to 1,000 times longer than this and
therefore acquire signals up to 1,000 times weaker, resulting in an integration gain of 30 dB.
A good High Sensitivity GPS receiver can acquire signals down to −185 dBW, and tracking
can be continued down to levels approaching −190 dBW.
High Sensitivity GPS can provide positioning in many but not all indoor locations.
Signals are either heavily attenuated by the building materials or reflected as in multipath.
Given that High Sensitivity GPS receivers may be up to 30 dB more sensitive, this is
sufficient to track through 3 layers of dry bricks, or up to 20 cm (8 inches) of steel reinforced
concrete for example.
28
GPRS (General packet radio service) is a service within the network, just like the two most
popular service SMS and voice connection. GPRS is used transmitting data in the GSM network in
form of packets. The connection to the remote station is not reserved and left open during the entire
connect time, but is occupied only at the time of actual data transmission.
The GSM shield by Arduino is used to send /receive message and make/receive calls
just like a mobile phone by using a SIM card by a network provider. We can do this by
plugging the GSM shield into the Arduino board and then plugging in a SIM card from an
operator that offers GPRS coverage. The shield employs the use of a radio modem by SIM
Com. We can communicate easily with the shield using the AT commands. The library
contains many methods of communication with the shield.
This GSM modem can work with any GSM network operator SIM card just like a
mobile phone. Advantage of using this modem will be that its RS232 port can be used to
communicate and develop embedded applications. Applications like SMS control, data
transfer, remote control and logging can be developed easily using this. The modem can
either be connected to PC serial port directly or to any controller through MAX232. It can be
used to send/receive SMS and make/receive voice calls.
It can also be used in GPRS mode to connect to internet and run many applications
for data logging and control. In GPRS mode you can also connect to any remote FTP/HTTP
server and upload files for data logging. This modem is a highly flexible plug and play quad
band SIM900 GPRS modem for direct and easy integration to RS232 applications.
29
GPRS network. It requires a SIM (Subscriber Identity Module) card just like mobile phones
to activate communication with the network. Also they have IMEI (International Mobile
Equipment Identity) number similar to mobile phones for their identification. A GSM/GPRS
MODEM can perform the following operations:
GSM (Global System for Mobile Communications, originally Group Special Mobile),
is standard developed by the European Telecommunications Standards Institute (ETSI).
It was created to describe the protocols for second-generation (2G) digital cellular
networks used by mobile phones and is now the default global standard for mobile
communications – with over 90% market share, operating in over 219 countries and
territories.
General Packet Radio Service (GPRS) is a packet oriented mobile data service on the
2G and 3G cellular communication system’s global system for mobile communications
(GSM). GPRS was originally standardised by European Telecommunications Standards
Institute (ETSI) in response to the earlier CDPD and i-mode packet-switched cellular
technologies. It is now maintained by the 3rd Generation Partnership Project (3GPP).A
GSM/GPRS modem is a class of wireless modem, designed for communication over
the GSM and GPRS network. It requires a SIM (Subscriber Identity Module) card just like
mobile phones to activate communication with the network. Also, they have
IMEI(International Mobile Equipment Identity) number similar to mobile phones for their
identification.
30
➢ The MODEM needs AT commands, for interacting with processor or controller,
which are communicated through serial communication.
➢ These commands are sent by the controller/processor.
➢ The MODEM sends back a result after it receives a command.
➢ Different AT commands supported by the MODEM can be sent by the
processor/controller/computer to interact with the GSM and GPRS cellular network.
All data is transmitted in the form of sentences. Only printable ASCII characters are allowed,
plus CR (carriage return) and LF (line feed). Each sentences starts with a “$” sign and ends with
<CR><LF>. There are three basic kinds of sentences: talker sentences, proprietary sentences and query
sentences.
The software programming is done in ‘C’ language. Data (co-ordinates) NMEA
(National Marine Electronics Association) protocol is the main purpose of developing this
software. The username should be included in the software programming in the order to
receive the location values from the SIM card which we are using in GPRS modem.
The Arduino IDE once it’s been opened. It opens into a blank sketch where
you can start programming immediately. First, we should configure the board and
port settings to allow us to upload code. Connect your Arduino board to the PC via
the USB cable.
31
Arduino first and foremost is an open-source computer hardware and software
company. The Arduino Community refers to the project and user community that
designs and utilizes microcontroller-based development boards. These
development boards are known as Arduino Modules, which are open-source
prototyping platforms. The simplified microcontroller board comes in a variety of
development board packages.
You have to tell the Arduino IDE what board you are uploading to. Select
the Tools pull down menu and go to Board. This list is populated by default with
the currently available Arduino Boards that are developed by Arduino. If you are
using an Uno or an Uno-Compatible Clone (ex. Funduino, SainSmart, IEIK, etc.),
select Arduino Uno. If you are using another board/clone, select that board.
32
Fig No: 2.7, IDE: Board Setup
If you downloaded the Arduino IDE before plugging in your Arduino board,
when you plugged in the board, the USB drivers should have installed
automatically. The most recent Arduino IDE should recognize connected boards
and label them with which COM port they are using. Select the Tools pull down
menu and then Port.Here it should list all open COM ports, and if there is a
recognized Arduino Board, it will also give it’s name. Select the Arduino board
that you have connected to the PC. If the setup was successful, in the bottom right
of the Arduino IDE, you should see the board type and COM number of the board
you plan to program. Note: the Arduino Uno occupies the next available COM
port; it will not always be COM3.
33
Fig No: 2.8, Arduino IDE: COM Port Setup
At this point, your board should be set up for programming, and you can
begin writing and uploading code
One common procedure to test whether the board you are using is properly
set up is to upload the “Blink” sketch. This sketch is included with all Arduino
IDE releases and can be accessed by the File pull-down menu and going to
Examples, 01.Basics, and then select Blink. Standard Arduino Boards include a
surface-mounted LED l abled “L” or “LED” next to the “RX” and “TX” LEDs,
that is connected to digital pin
➢ This sketch will blink the LED at a regular interval, and is an easy way to
confirm if your board is set up properly and you were successful in uploading
code. Open the “Blink” sketch and press the “Upload” button in the upperleft
34
Fig No: 2.9, Arduino IDE: Loading Blink Sketch
35
➢ Error Message: avrdude: stk500_recv(): programmer is not responding
The IDE says “Uploading…” after pressing the upload button, but nothing is
happening.
❖ Double-check that you have the correct board selected in the Tools
menu.
❖ Depending on the size of your program, it may take a few seconds to
upload. If you feel like it is taking too long, it may be encountering an
error and you can try unplugging and plugging in the Arduino board.
Guide Summary:
36
NMEA MESSAGE FORMAT :
GPS module sends the data related to tracking position in real time,and it sends so
many data in NMEA format. NMEA format consist several sentences, in which we only need
one sentences. Thissentences starts from $GPGGA and contains the coordinates, time and
other useful information. This GPGGA is referred to Global Positioning System Fix Data.
We can extract coordinate from $GPGGA string by counting the commas in the string.
Suppose you find $GPGGA string and stores it in an array, then Latitude can be found after
two commas and Longitude can be found after four commas.
$GPDCN-Decca Position
$GPDPT-Depth
37
$GPGLC-Geographic Position, Loran-C
$GPGXA-TRANSIT Position
$GPHDT-Heading, True
$GPMTW-Water Temperature
$GPMWD-Wind Direction
$GPROT-Rate of Turn
$GPRPM-Revolutions
38
$GPRTE-Routes
$GPSTN-Multiple Data ID
The NMEA protocol consists of set of message. These messages are ASCII character
set. GPS receives data and present it in the form of ASCII comma- delimited message strings.
‘$’ sign is used at the starting of each message. The location (latitude and longitude) have the
format of ddmm.mmmm.i.e .degree minutes and decimal minutes.
39
DATA USING GPRS UPLOADING:
start
Check gps
data
break
Gps_status=1
X<string length
Gps_string[x]==’,’
X++
Comma++
Comma=2 Comma=4
Latitude Longitude
Stop
40
AT COMMAND:
Device like GPRS use AT commands to communicate with other device. These
commands are used to control TCP connection. Almost every line with commends starts with
AT, followed by one or more commends and terminated with a carriage return. GPRS sends
the information to internet with the use of these commends.
COMMAND DESCRIPTION
If the circuit connects to the server successfully, the IP address of the clients
together with connection numbers <n> will be displayed at server side. Then the server an
receive TCP data from remote clients. Also you can use command “AT+CIPSTART=<n to
send data to remove client<n>. Simultaneously, you can connect time server SIM900 to
remove servers by TCP/UDP using command “AT+CIPSTART=<n>,<mode>,<IP
address>,<port>”,command “AT+CIPSERVER=0” can be used to close the listening status.
You can use command AT+CIPCLOSE=<n>to close one specific connection with number
<n> and use AT+CIPSHUT to close all connections.
41
Start
END
42
WORKING
The program is verified and implemented on the kit. The GPS (global positioning
system) describes its location. The Arduino(microcontroller) gets the current location of the
GPS. The GSM/GPRS is connected to the microcontroller to transmit the location to the user.
The Arduino process the location and deliver it to GPRS. The GPRS transmits the
location as data. The user identifies the location in his/her mobile phone through the text
message.
3.1 CONNECTIONS:
1.Connection between Arduino UNO & SIM808 is simple.
2. Gnd to Gnd
3. Tx of SIM808 to Rx of Arduino (soft serial digital pin 7)
4. Rx of SIM808 toTx of Arduino (soft serial digital pin 8)
5. A separate power adapter of 12v 2amp is required for SIM808 board.
6. Insert valid SIM on to the slot at the back of SIM808 board
7. Power on & notice the NETWORK LED.It blinks fast initially & when it
gets network it blinks slowly, once per second.
43
3.2 PROGRAM
#include <SoftwareSerial.h>
SoftwareSerial sim808(7,8);
charphone_no[] = “xxxxxxx”; // replace with your phone no.
String data[5];
#define DEBUG true
String state,timegps,latitude,longitude;
void setup() {
sim808.begin(9600);
Serial.begin(9600);
delay(50);
sim808.print(“AT+CSMP=17,167,0,0”); // set this parameter if empty SMS received
delay(100);
sim808.print(“AT+CMGF=1\r”);
delay(400);
sendData(“AT+CGNSPWR=1”,1000,DEBUG);
delay(50);
sendData(“AT+CGNSSEQ=RMC”,1000,DEBUG);
delay(150);
}
void loop() {
sendTabData(“AT+CGNSINF”,1000,DEBUG);
if (state !=0) {
Serial.println(“State :”+state);
Serial.println(“Time :”+timegps);
Serial.println(“Latitude :”+latitude);
Serial.println(“Longitude :”+longitude);
sim808.print(“AT+CMGS=\””);
sim808.print(phone_no);
sim808.println(“\””);
delay(300);
sim808.print(“http://maps.google.com/maps?q=loc:”);
sim808.print(latitude);
44
sim808.print(“,”);
sim808.print (longitude);
delay(200);
sim808.println((char)26); // End AT command with a ^Z, ASCII code 26
delay(200);
sim808.println();
delay(20000);
sim808.flush();
} else {
Serial.println(“GPS Initializing…”);
}
}
voidsendTabData(String command , constint timeout , boolean debug){
sim808.println(command);
long int time = millis();
inti = 0;
while((time+timeout) >millis()){
while(sim808.available()){
char c = sim808.read();
if (c != ‘,’) {
data[i] +=c;
delay(100);
} else {
i++;
}
if (i == 5) {
delay(100);
gotoexitL;
}
}
}exitL:
if (debug) {
state = data[1];
timegps = data[2];
45
latitude = data[3];
longitude =data[4];
}
}
String sendData (String command , constint timeout ,boolean debug){
String response = “”;
sim808.println(command);
long int time = millis();
inti = 0;
while ( (time+timeout ) >millis()){
while (sim808.available()){
char c = sim808.read();
response +=c;
}
}
if (debug) {
Serial.print(response);
}
return response;
}
46
RESULT AND ANALYSIS
Latitude and longitude is received by the GPS and sent to the Arduino. The data get
processed and it is sent to receiver through GPRS using AT commands.
47
5.1 FUTURE ENHANCEMENT:
We can send multiple SMS to multiple mobile number. Also, we can dial a call to the
mobile number. By developing the GPS the latitude and longitude can be sent to user from a
closed area. We can send data to a server using IOT (Internet Of Things) and then we can see
the location by accessing the website through internet.
48
5.2 CONCLUSION:
The information is transmitted to tracking server using GPS/GPRS modem on
network by using direct IP connection with tracking server through GPRS. Tracking server
also has GPRS modem that receives location information via network and stores this
information in database. This information is available to authorized users of the system via
website over the internet. For tracking in real time, the device must be placed in anywhere
and web server is used to view the data. It will reduce the overall size, because the usage of
number of components is reduced and it will also reduce the cost of the device. We can track
both in case of personal as well as business purpose which improves safetyand security and
keeps monitoring on them.
49
REFERENCES
1. Ambade Shrut Dinkar and S.A Shakh, Design and Implementation Of Vehicle
Tracking System Using GPS, Journal of Information Engineering and Applications,
ISSN 2224-5758 ,Vol 1,No.3,2011.
2. AsaadM.J.AlHindawi, IbrahemTalib, “Experimentally Evaluation of GPS/GSM
Based System Design”,Journal of Electronic Systems Volume 2 Number 2
June2012.
3. KunalMaurya, MandepSingh, Nelu Jain, “Real Time Vehicle Tracking System
using GSM and GPS Technology- An Anti-theft Tracking System,” International
Journal of Electronics and Computer Science Engineering. ISSN 2277-1956/V1N3-
1103-1107.
4. Vikram Kulkarni &Viswapraksh Babu, “embedded smart car security system on
face detection’, special issue of IJCCT, ISSN(Online):2231-0371, ISSN(Print):
0975-7449, volume-3,issue-1.
5. V.Ramya, B.Palaniappan, K. Karthick, “Embedded Controller for Vehicle In-Front
Obstacle Detection and Cabin Safety Alert System”, International Journal of
Computer Science & Information Technology (IJCSIT) Vol 4, No 2, April2012.
6. Kai-Tai Song, Chih-Chieh Yang, of National Chiao Tung University,
Taiwan,“Front Vehicle Tracking Using Scene Analysis”, Proceedings of the IEEE
International Conference on Mechatronics&Automation2005.
7. Chen Peijiang, Jiang Xuehua, “Design and Implementation of Remote monitoring
system based on GSM,”vol.42,pp.167-175.2008.
8. Albert Alexe, R.Ezhilarasie, “Cloud Computing Based Vehicle Tracking
Information Systems”, ISSN: 2229 - 4333 (Print) | ISSN: 0976 - 8491
(Online)IJCST Vol.2, Issue1, March 2011.
9. http://www.mouser.com/ds/2/737/adafruit-fona-808-cellular-plus-gps-shield-for-ard-
765048.pdf
10. https://www.adafruit.com/product/1991
50