Professional Documents
Culture Documents
1 INTRODUCTION.
1.1 PURPOSE
1.2 SCOPE
1.3 OBJECTIVE
1.4 LITERATURE STUDY
1.4.1. COMPONENTS
1.4.2. POSITIONING
1.4.3. NAVIGATION
1.4.4. TIMING
1.4.5. APPLICATION
2 SYSTEM
ANALYSIS..
2.1. SPECIFIC REQUIREMENT
2.2. HARDWARE DESCRIPTION
2.3. SOFTWARE
2.4. DEVELOPMENT ENVIROMENT
2.5. EMBEDED SYSTEM ARCHITECTURE
3 DESIGN.........................
3.1. SRS (Software Requirement Specification)
3.1.1. Purpose
3.1.2. Scope
3.1.3. System Feature
3.1.4. Functional Requirement
3.1.4.1. Parse Location
3.1.4.2. Send Location
3.1.4.3. Update Log
3.1.4.4. View Log
3.1.4.5. Delete Log Entry
3.1.4.6. Show Location
3.1.5. Non-Functional Requirement
3.2. OBJECT RELATIONAL MODEL
3.3. SEQUENCE DIAGRAM
3.4. ANALYSIS CLASS DIAGRAM
3.5. ACTIVITY DIAGRAM
4. SYSTEM TESTING
4.1. Screenshot 1
4.2. Screenshot 2
4.3. Screenshot 3
[Type text]
5. OUTPUT AND REPORT
6. CONCLUSION &
FUTURE ENHANCEMENT..
7. BIBLIOGRAPHY
1. INTRODUCTION:
A GPS tracking unit is a device that uses the Global
PositioningSystem (GPS) to determine the precise location of a vehicle, person, or
other asset to which it is attached and to record the position of the asset at regular
intervals. The recorded location data can be stored within the tracking unit, or it may
be transmitted to a central location data base, or internet-connected computer, using a
cellular (GPRS or SMS), radio, or satellite modem embedded in the unit. This allows
the asset's location to be displayed against a map backdrop either in real time or when
analysing the track later, using GPS tracking software.
1.1. Purpose:
A wide range of tracking systems has been developed so far tracking vehicles
and displaying their position on a map, we can also use the system that has been
developed to tracks the mobility of a human being. Now a day's tracking a person's
mobility has become a crucial issue these days be it tracking a criminal came on
payroll or a detective going to detect a case or any other utility.
1.2. Scope:
1.3. Objective:
1.4.1. Components :
GPS is comprised of three main segments: space, control and users. The space
segment consists of a constellation of U.S. satellites, placed so that at least three
satellites are positioned above the horizon from any point on earth. PNT states that as
of October 2009, 35 GPS satellites were in use. The control segment includes
monitoring stations located worldwide charged with monitoring the GPS system. The
user segment is made up of GPS receivers.
1.4.2. Positioning :
GPS provides the user with a precise location by utilizing radio frequencies. The GPS
receiver translates the information from at least three GPS satellites to provide the
user with a two-dimensional location of latitudinal and longitudinal position on earth.
If a fourth satellite is available, then the receiver can provide the user with three-
dimensional location information, which includes altitude in addition to latitude and
longitude.
1.4.3. Navigation :
Navigation enables a user to process his current location based on GPS data and travel
to his desired location, also based on accurate GPS data. Any user with a working
GPS receiver can navigate to a particular destination, whether traveling on foot, by
automobile, by airplane or by ship. GPS navigation is even accurate underground.
1.4.4. Timing :
Time is the fourth dimension that GPS is set up to provide, by synchronizing each
GPS receiver to the GPS satellites to provide accurate time to the user. The time is
accurate to one hundred-billionth of a second. GPS receivers are able to perform this
function because each GPS satellite includes several atomic clocks.
1.4.5. Applications :
In addition to military use, GPS has multiple civilian applications. GPS has enabled
many businesses to operate more efficiently and effectively by providing accurate
time. Commercial and public transportation companies can save time and money by
routing their carriers to less-congested areas. The average traveller can use GPS to
find the nearest coffee shop, book store or gas station. GPS also can be used to
enhance survival rates in search-and-rescue missions. The possibilities are endless,
and as the use of GPS technology increases, so will the potential applications.
2. SYSTEM ANALYSIS:
OBJECTIVE:
The objective of this chapter is to study the specific requirement hardware , software
design and its function.
For the GPS tracking system we have three module that will be attached to
each other .This three module together will perform as a GPS tracking system.
Arduino uno-R3
GPS shield
GPRS shield
Revision 2 of the Uno board has a resistor pulling the 8U2 HWB line to ground,
making it easier to put into DFU mode.
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
reference model for the Arduino platform; for a comparison with previous versions,
see the index of Arduino boards.
Summary:
Microcontroller ATmega328
Operating Voltage 5V
Input Voltage
7-12V
(recommended)
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
DC Current for 3.3V Pin 50 mA
32 KB (ATmega328) of which 0.5 KB used by
Flash Memory
bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHz
Power:
The Arduino Uno can be powered via the USB connection or with an external
power supply. The power source is selected automatically.
External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or
battery. The adapter can be connected by plugging a 2.1mm center-positive plug into
the board's power jack. Leads from a battery can be inserted in the Gnd and Vin pin
headers of the POWER connector.
The board can operate on an external supply of 6 to 20 volts. If supplied with less than
7V, however, the 5V pin may supply less than five volts and the board may be
unstable. If using more than 12V, the voltage regulator may overheat and damage the
board. The recommended range is 7 to 12 volts.
The power pins are as follows:
VIN. The input voltage to the Arduino board when it's using an external power
source (as opposed to 5 volts from the USB connection or other regulated
power source). You can supply voltage through this pin, or, if supplying
voltage via the power jack, access it through this pin.
5V.This pin outputs a regulated 5V from the regulator on the board. The board
can be supplied with power either from the DC power jack (7 - 12V), the USB
connector (5V), or the VIN pin of the board (7-12V). Supplying voltage via
the 5V or 3.3V pins bypasses the regulator, and can damage your board. We
don't advise it.
3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current
draw is 50 mA.
GND. Ground pins.
IOREF. This pin on the Arduino board provides the voltage reference with
which the microcontroller operates. A properly configured shield can read the
IOREF pin voltage and select the appropriate power source or enable voltage
translators on the outputs for working with the 5V or 3.3V.
Memory:
The ATmega328 has 32 KB (with 0.5 KB used for the bootloader). It also has
2 KB of SRAM and 1 KB of EEPROM (which can be read and written with
the EEPROM library).
The Uno has 6 analog inputs, labeled A0 through A5, each of which provide 10
bits of resolution (i.e. 1024 different values). By default they measure from ground to
5 volts, though is it possible to change the upper end of their range using the AREF
pin and the analogReference() function. Additionally, some pins have specialized
functionality:
TWI: A4 or SDA pin and A5 or SCL pin. Support TWI communication
using the Wire library.
There are a couple of other pins on the board:
AREF. Reference voltage for the analog inputs. Used with analogReference().
Reset. Bring this line LOW to reset the microcontroller. Typically used to add
a reset button to shields which block the one on the board.
Communication:
The Arduino Uno has a number of facilities for communicating with a
computer, another Arduino, or other microcontrollers. The ATmega328 provides
UART TTL (5V) serial communication, which is available on digital pins 0 (RX) and
1 (TX). An ATmega16U2 on the board channels this serial communication over USB
and appears as a virtual com port to software on the computer. The '16U2 firmware
uses the standard USB COM drivers, and no external driver is needed. However, on
Windows, a .inf file is required. The Arduino software includes a serial monitor which
allows simple textual data to be sent to and from the Arduino board. The RX and
TX LEDs on the board will flash when data is being transmitted via the USB-to-serial
chip and USB connection to the computer (but not for serial communication on pins 0
and 1).
A Software Serial library allows for serial communication on any of the Uno's
digital pins.
The ATmega328 also supports I2C (TWI) and SPI communication. The Arduino
software includes a Wire library to simplify use of the I2C bus; see
the documentation for details. For SPI communication, use the SPI library.
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 (DTR) of
theATmega8U2/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 allow you to
upload code by simply pressing the upload button in the Arduino environment. This
means that the boot loader can have a shorter timeout, as the lowering of DTR can be
well-coordinated with the start of the upload.
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". You may also be able to disable the auto-reset by connecting a 110 ohm resistor
from 5V to the reset line; see this forum thread for details.
The Arduino Uno has a resettable polyfuse that protects your computer's USB
ports from shorts and overcurrent. Although most computers provide their own
internal protection, the fuse provides an extra layer of protection. If more than 500
mA is applied to the USB port, the fuse will automatically break the connection until
the short or overload is removed.
Physical Characteristics:
The maximum length and width of the Uno PCB are 2.7 and 2.1 inches
respectively, with the USB connector and power jack extending beyond the former
dimension. Four screw holes allow the board to be attached to a surface or case. Note
that the distance between digital pins 7 and 8 is 160 mil (0.16"), not an even multiple
of the 100 mil spacing of the other pins.
Adding GPS to your Arduino has never been easier. The multiple GPS
receivers attach easily to the shield, you will be able to locate your exact position
within a few meters. Here's where we are. GPS also gives you amazingly accurate
time! A GPS quick start guide is available for this product.
With the GPS Shield you can add GPS functionality to Arduino. A connector
for the popular EM-406 GPS receiver is populated on the board, and footprints for
EM-408 and EB-85A/FV-M8 connectors are also made available (connectors are not
soldered on or included and can be found below in the related items). The regular
GPS pins (RX, TX, PPS, etc.) are also broken out to a 10-pin 0.1" pitch header, and a
small prototyping area is also provided.
GPS Shield
Features:
Coin cell battery socket footprint provided and connected for optional battery
backup of EB-85A GPS module
GPS serial and PPS signals broken out to a 0.1" header for additional device
connections
Description:
This module features two UARTS, an SPI interface, and two 10-bit ADCs. It also
supports Li-ion battery charging, a 4x6 keypad, and an LCD interface. Inputs/outputs
are available for a speaker and microphone. An antenna does come attached to the
module.
Features:
Transmit Power:
Class 4 (2W) for EGSM900/GSM850
Class 1 (1W) for DCS1800/PCS1900
Supported SIM card: 3V/1.8V SIM card. (auto recognize)
4x6 keyboard interface available
UART0 interface with flow control, up to 460kbps
UART1 interface without flow control, two-wire interface, up to 460kbps
LCD interface available, over SPI
2.3 SOFTWARE:
A program or code written for Arduino is called a sketch Arduino programs are
written in C or C++. The Arduino IDE comes with a software library called "Wiring"
from the original Wiring project, which makes many common input/output operations
much easier. Users only need define two functions to make a runnable cyclic
executive program:
The Arduino IDE uses the GNU tool chain and AVR Library to compile
programs, and uses avrdude to upload programs to the board.
As the Arduino platform uses Atmel microcontrollers, Atmel's development
environment, AVR Studio or the newer Atmel Studio, may also be used to
develop software for the Arduino
Arduino is open source hardware: the Arduino hardware reference designs are
distributed under a Creative Commons Attribution Share-Alike 2.5 license and are
available on the Arduino Web site. Layout and production files for some versions of
the Arduino hardware are also available. The source code for the IDE is available and
released under the GNU General Public Licenseversion2.0.
Although the hardware and software designs are freely available under copy
left licenses, the developers have requested that the name "Arduino" be exclusive to
the official product and not be used for derivative works without permission. The
official policy document on the use of the Arduino name emphasizes that the project
is open to incorporating work by others into the official product . Several Arduino-
compatible products commercially released have avoided the "Arduino" name by
using "-duino" name variants.
Middleware is software that has been abstracted out of the application layer
for a variety of reasons. One reason is that it may already be included as part of the
off-the-shelf OS package.
Other reasons to remove it from the application layer are: to allow reusability
with other applications, to decrease development costs or time by purchasing it off-
the-shelf-through a third party vendor, or tosimplify application code. The remaining
sections of this chapter define what middleware and application software is or isn't,
and provide real-world pseudo code examples of middleware and application
software.
Middleware:
In the most general terms, middleware software is any system software that is
not the OS kernel, device drivers, or application software. Note that some OSes may
integrate middleware into the OS executable (see Chapter 9). In short, in an embedded
system middleware is system software that typically sits on either the device drivers
or on top of the OS, and can sometimes be incorporated within the OS itself.
Figure
-1
One of the main strengths in using middleware is that it allows for the
reduction of the complexity of the applications by centralizing software infrastructure
that would traditionally be redundantly found in the application layer. However, in
introducing middleware to a system, one introduces additional overhead, which can
greatly impact scalability and performance. In short, middleware impacts the
embedded system at all layers.
More complex embedded systems usually have more than one middleware
element, since it is unusual to find one technology that supports all specified
application requirements. In this case, the individual middleware elements are
typically selected based upon their interoperability with each other, so as to avoid
later problems in integration.
Also it exist, for mountain activities like free ride, hacking, those automatic
signaling systems which switch on as soon as the rider get caught by an avalanche for
example. It transmits a radio signal to the closest relay and indicate the exact position
of the victim. It helps for the search and often save lives. The portable Tom-tom GPS
proposes a full navigation system with vocal indication.
Figure
-2
3.1.1. Purpose
The Software Requirement Specification (SRS) will provide a detailed
description of the requirement for GPS Tracking System . This SRS will allow for a
complete understanding of what is to be expected of the GPS Tracking System to be
constructed. This SRS will used for constructing.
3.1.2. Scope
The GPS tracking system will enable a user to track online any object attached
with tracking device through a browser , for security, location, route planning
purposes.
3.1.1.1 The system should provide current location of the object being
tracked at request.
3.1.1.2 The system should log position of the object being tracked at a fixed
interval of time.
3.1.1.3 The system should let admin to delete or edit location log .
Description : This function will run on the device at every fixed interval of
time to read the input from GPS receiver and get the location data.
Description : This function runs on the device to send the location data and
time stamp to the server. On receiving the time stamp from the server it knows
that the location data has been logged for the said time
Introduction:
After developing the object relational models, CRC cards, and use case narratives, the
next step is to plan out the relation of objects. To accomplish this, we have created
communication, activity, and analysis diagrams to go with our previously created
object relational models. Using these developmental tools, we can further understand
how the objects in our system interact with each other and the outside world. Our
final goal remains to create a Global Positioning Tracking System that includes two
way communication and remote vehicle operation.
The user is able to access the system through the system interface. From
within the system interface within the vehicle that is linked together to the GPS
tracking unit, and through the GPS 2-way communication is provided to the Base
station. At the base station is where the database is located and through that relation
info is saved in which the user through all its relations can generate reports back to the
user.
Figure
-3
Location Table(Table-1)
ID Latitude Longitud Date Altitude Course Speed Created
e Time at
Two Way Communication
The user interacts with the system interface which through its relations with
the communicator, it can send it into the communicator from there it is able to send it
to another system interface that is within a vehicle.
Figure
Locking and Unlocking of object
-4 :
The USER is able to login to the system interface, the driver through the
system interface in the vehicle request an unlock command. The system interface
within the vehicle is able to receive commands, and unlock the vehicle.
The dispatchers are also able to login to the system interface to set Standard
Auto lock times and standard vehicle disable times. The lock unlock log is
interconnected to the system and is able to connect to the report system in order to
generate reports to the USER either the system interface or into system interface at a
pcomputer.
Figure
-6
Two Way
Figure
Communication :
-8
Figure
-9
Locking and Unlocking of Object:
Figure
-10
When tracking the vehicle, the user can view a location log and file reports;
these reports are viewable by a third party, such as the dispatchers manager.
Privileges Users
1..*
0..1
1 1
GPS Tracking Unit
The communication process begins with the user sending commands to the GPS
tracking unit attached to the object. Once the unit receives this data, it relays it to the
Figure
-11
necessary components for either communication with the driver or remote object
manipulation.
Dispatcher
Set Priviledges Unlock/ Lock Log
1
+View Unlock/Lock Log() Interacts with 1..* +vehiclename
1 +Update Unlock/Lock Log() +vehiclelocation
+Request Unlock Command() +vehiclelockstatus
+vehicledriver
is a
Users
+first_name
+last_name is a
+email
+password
Request Unlock Command
+Privledges
Interacts with +VehicleID
+ManagerID
is a is a
0..*
1
Set Standard Vehicle Disable Times Reports
Can perform 0..*
+disablestarttime
System Controller 0..*
+disableendtime 1..*
0..* 0..* +enablestarttime
1 +Set User Priviledges() +enablesendtime 0..* Manager
+Set vehicle Disable Times() +vehicleID
Unlocks/ Lock Manually +ManagerID 1 +Bypass Standard Times()
0..* +Unlock Vehicle()
+DisableVehicle() 1
+EnableVehicle() +Set Standard AutoLock times()
+Set Standard Disable times()
1 +REquest Unlock command()
+Generate Reports()
0..*
+Unlock Vehicle()
is a
is a
is a is a
Recieves Sends
Enters
* * *
Message Log Message
Figure
-15
4. SYSTEM TESTING :
As a rule, system testing takes, as its input, all of the "integrated" software
components that have successfully passed integration testing and also the software
system itself integrated with any applicable hardware system(s). The purpose of
integration testing is to detect any inconsistencies between the software units that are
integrated together (called assemblages) or between any of the assemblages and the
hardware. System testing is a more limited type of testing; it seeks to detect defects
both within the "inter-assemblages" and also within the system as a whole.
4.1. Screenshot 1:
4.2. Screenshot 2
4.3. Screenshot 3:
Advantage:
The crime rate keeps on increasing in every part of the world and a lot of
highly valuable objects have been, and will, be stolen. It doesnt matter how irrelevant
you think an object or equipment is to others if it is something that is very expensive
you should make sure you install a GPS tracking system on it; for example, a $2
million violin was once stolen from a caf in London and the owner had a hard time
finding it, if the owner of this highly expensive violin had installed a GPS tracking
system in her violin it will be very easy for her to locate it.
It is almost impossible to reduce the crime rate in the world because new
technologies are emerging and it is new technologies that encourage crime and
stealing; however, you can make it easier for you to track any valuable object you
own by installing a GPStrackerinit.
One great function of a GPS tracking system is that it can be used to track anything
irrespective of it being static or flexible, it can also be used to track people and
animals depending on what you need it for. Another great feature of a GPS tracking
system that makes it better is the alarm system it has; for example, you can easily
install a GPS tracking system in a vault where valuable goods are so that you can be
alarmed anytime someone is trying to steal them. You can also use the
GPS technology to ensure things are going fine with people working for you
especially if theyre doing a job that requires a high level of security and
confidentiality; this will be able to track them anywhere they go and when they go
there.
Disadvantages:
Sometimes the GPS may fail due to certain reasons and in that case you need
to carry a backup map and directions.
If you are using GPS on a battery operated device, there may be a battery
failure and you may need a external power supply which is not always
possible.
Sometimes the GPS signals are not accurate due to some obstacles to the
signals such as buildings, trees and sometimes by extreme atmospheric
conditions such as geomagnetic storms.
Benefits:
Real-Time Updates:
Depending on the GPS tracking device used, GPS tracking software can
provide real-time, on screen reporting on the specific location of a person, parcel or
vehicle from any location in the world. This particular feature of GPS tracking
software has provided a cost-effective GPS tracking solution for several industries
including aviation, shipping and commercial fishing, where a GPS tracking device
can likely be found attached to every company asset.
Once considered to provide only crude renditions of the actual terrain, the
mapping capabilities of GPS tracking software have improved greatly over the last
few years. With many types of GPS tracking software fully integrating with readily
available resources such as Google Earth and Microsoft Virtual Earth, GPS tracking
software can now provide detailed real photo maps of the location of any GPS
tracking device.In addition, some GPS tracking software applications will now
accommodate the use of customized digital, paper or marine maps in the event that
standard mapping options do not provide the needed details.
Simultaneous Tracking:
GPS tracking software can now be used to track and map the location of more
than one GPS tracking device at a time. Using highly- sophisticated technology, GPS
tracking software now offers the ability to see an entire fleet of vehicles, given that
each one is fitted with a GPS tracking device, on one screen.
Web Applications:
GPS tracking software and GPS tracking devices, like most other forms of
technology including computers and cell phones, have experienced great
advancements in the last decade. As the cost of the average GPS tracking device
continues to decline, GPS tracking is becoming more affordable and in demand for
individuals and small businesses than ever before, making GPS tracking and GPS
tracking software one of the smartest business choices of the 21st Century.
https://www.sparkfun.com/tutorials/173
http://arduino.cc/en/Guide/HomePage
http://www.seeedstudio.com/wiki/GPRS_Shield_V2.0
http://www.seeedstudio.com/forum/viewforum.php?
f=10&sid=823df9a5e63392b64eb0e93ea4843b6f