Thursday, August 21, 2014

Real Time GPS Buddy Tracker

Real Time GPS Buddy Tracker
Frankfurt University of Applied Science 
Md. Kabir Hosen
...........................................................................................................................................
Abstract
Today‘s fast moving services based on location are very much important. As the trend is of smartphones, iphones and the emerging gadgets, it is very important for the user to have location based services. The location based services are accompanied with the help of GPS (Global Positioning System) which provides the positioning to the user. The application will allow the user to locate friends dynamically and can also communicate with them easily and effectively and will also locate the friends on Google Maps. The Global Positioning System (GPS) is a space-based satellite navigation system that provides location and time information in all weather conditions, anywhere on or near the Earth where there is an unobstructed line of sight to four or more GPS satellites. The system provides critical capabilities to military, civil and commercial users around the world. It is maintained by the United States government and is freely accessible to anyone with a GPS receiver. This document will describe the working of the project Real Time GPS Buddy Tracker. We are going to make android application in which people can locate each other with a certain deadline. For which we use Google api in our application. It will locate the target with the given time period. There is real time scheduling in such a way that with some specific time intervals or deadline system will generate the response.
Keyword--- Global Positioning System (GPS), Google Maps, Location Based Services (LBS)

Introduction The idea of using the mobile handsets and phones is to deliver the valuable services except the basic communication that had been started in the early 1990s when Internet was added in Voice Telephony. Various GPS-based tracking systems have been successfully deployed and utilized in various applications such as fleet and vehicle location identification, and in route guidance. Recently, systems that integrate GPS and GSM technologies with Google earth to provide real-time data have also been proposed Global positioning systems and mobile phone networks make it possible to track individual users with an increasing accuracy.

The definitions below are needed as a basis for the subsequent sections where the architectural and operational features of the complete system are described. International Mobile Equipment Identity number is unique to every GSM (Global System for Mobile Communication) and UMTS (Universal Mobile Telecommunications System) mobile phone and for some satellite phones as well. It is basically, a unique 17 or 15 digit code that is used to identify the mobile station to the GSM or UMTS network. GSM network uses the IMEI number to identify the valid devices connected to the networks.
International Mobile Subscriber Identity number is a unique 15-digit code used to identify the mobile phone users on GSM or UMTS networks. The IMSI is stored in the SIM (Subscriber Identity Module) card. When connected to the network, the phone sends the IMSI to the network. The IMSInumber consists of parts namely, Mobile Country Code (MCC), Mobile Network Code (MNC) and Mobile Subscriber Identity Number (MSIN).Media Access Control address is a unique identifier assigned by the manufacturer to network interface cards (NICs) or network adapters, and it is known as the physical address. Real Time GPS Buddy Tracker made finding your loved ones a breeze. See when your relatives land at the Airport, look up with a friend with turn-by-turn directions and even track your employees in real- time.
Background GPS data, or Global Positioning System data, is a technology made possible by the US government. To support their military operations they placed several satellites in orbit to provide signals to devices that interpret and triangulate a position. The accuracy can be quite good.GPS has been used to pinpoint any ship or submarine on the ocean, and to measure Mount Everest. GPS receivers have been miniaturized to just a few integrated circuits, becoming very economical. Today, GPS is finding its way into cars, boats, planes, construction equipment, and movie making gear, farm machinery and even laptop computers. Real Time GPS Buddy Tracker is an android application that helps to locate your friends, family and office colleagues. Moreover, it is capable to trace the current locations of the desired personnel with the specified time intervals.

About Real Time Systems Real time computing means that after the event has occurred a system or application has to respond to that event with a certain deadline.
 Hard real-time systems (e.g., Avionic control).

 Firm real-time systems (e.g., Banking).
 Soft real-time systems (e.g., Video on demand).
Importance Real Time system
Real time system provides:
• Accuracy
• Reliability
• Speed
• Immediate Responses
• Compete with the market
• Time driven events
• Deadlines

About Android:
Google Android is described on its official website as follows: "The Android Platform is a software stack for mobile devices including an operating system and key applications. Developers can create applications for the platform using the Android SDK. Applications are written using the Java programming language, a custom virtual machine designed for embedded use, which runs on top of a Linux kernel."

About GPS (Global Positioning System):
The Global Positioning System (GPS) is a satellite-based navigation system made up of a network of 24 satellites placed into orbit by the U.S. Department of Defense. GPS was originally intended for military applications, but in the 1980s, the government made the system available for civilian use. GPS works in any weather conditions, anywhere in the world, 24 hours a day. There are no subscription fees or setup charges to use GPS.

How it works: GPS satellites circle the earth twice a day in a very precise orbit and transmit signal information to earth. GPS receivers take this information and use triangulation to calculate the user's exact location. Essentially, the GPS receiver compares the time a signal was transmitted by a satellite with the time it was received. The time difference tells the GPS receiver how far away the satellite is. Now, with distance measurements from a few more satellites, the receiver can determine the user's position and display it on the unit's electronic map. A GPS receiver must be locked on to the signal of at least three satellites to calculate a 2D position (latitude and longitude) and track movement. With four or more satellites in view, the receiver can determine the user's 3D position (latitude, longitude and altitude). Once the user's position has been determined, the GPS unit can calculate other information, such as speed, bearing, track, trip distance, distance to destination, sunrise and sunset time and more.

Project Objective: The main objective of the project is to search friend‘s present location and to trace path on which device moves with certain deadlines.
About project:
Real Time GPS Buddy Tracker is an android based application, which will work with android 4.03 versions based mobile devices. Real Time GPS Buddy Tracker is a combination of two different applications; it does not only work as friend Tracker but it can trace your path while you are traveling in new place. It allow you to search your friend without their knowledge but it also take care of privacy of individual by prior connection building process in add friend activity

Development Method:
 Software development which can be delivered fast, quick adaptation to requirements and collecting feedback on required information. We used Agile Model as our development method. The agile software methods and development is practices based approach empowered with values, principles and practices which make the software development process easier and in faster time. Agile methods which encompass individual methods like Extreme programming, Feature Driven Development, Scrum, etc are more coming into the commercial and academic worlds. It is intended to be a collection of values, principles, and practices for model software that can be applied on a software development project in a more flexible manner than traditional model methods. Agile process Model is a supplement to other agile methodologies, in which agile process Model is used to describe how to approach model and documentation. Examples of other agile methodologies include Extreme Programming (XP), Disciplined Agile Delivery, and Scrum.
Agile development model is also a type of Incremental model. Software is developed in incremental, rapid cycles. This results in small incremental releases with each release building on previous functionality. Each release is thoroughly tested to ensure software quality is maintained. It is used for time critical applications. Extreme Programming (XP) is currently one of the most well known agile development life cycle model.
Agile thought process had started early in the software development and started becoming popular with time due to its flexibility and adaptability. The most popular agile methods include Rational Unified Process (1994), Scrum (1995), Crystal Clear, Extreme Programming (1996), Adaptive Software Development, Feature Driven Development, and Dynamic Systems Development Method (DSDM) (1995). These are now collectively referred to as agile methodologies, after the Agile Manifesto was published in 2001. Following are the Agile Manifesto principles Individuals and interactions - in agile development, self-organization and motivation are important, as are interactions like co-location and pair programming.

Working software - Demo working software is considered the best means of communication with the customer to understand their requirement, instead of just depending on documentation. 

Customer collaboration - As the requirements cannot be gathered completely in the beginning of the project due to various factors, continuous customer interaction is very important to get proper product requirements. 

Responding to change - agile development is focused on quick responses to change and continuous development. The main purpose of selection this process models that its very realistic approach to software development promotes teamwork and cross training.
 Functionality can be developed rapidly and demonstrated.
 Resource requirement are minimum.
 Suitable for fixed or changing requirements.
 Delivers early partial working solutions.
 Good model for environments that change steadily.
 Minimal rules, documentation easily employed.
 Enables concurrent development and delivery within an overall planned context.
 Little or no planning required easy to manage as it gives flexibility to developers.

System Architecture:
 The architecture depicted in Figure 1 decomposes the system into various components that seamlessly interact providing a practical solution to the positioning problem. The system follows typical client/server architecture with the client (mobile) running an application specifically built for this project.

A. Server The server functions were implemented using PHP scripts. The server is the hardcore of the system. The main tasks of PHP server are: register users, update the database, retrieve user location, sends out user location information via SMS and post it online.

B. Application On the mobile side, the application developed and implemented for android OS. Android sdk 4.0.3 or above for the device that we will use, at the front end, using java programming language for developing the application using Eclipse IDE(4.3.1) tool and for interfacing with the user.

C. Database The server uses a MySQL database. MySQL is an open source relational database management system which uses Structured Query Language (SQL). MySQL was chosen because of its reliability, speed and flexibility. The server receives requests from the application program. The request can be either to register a new user, update user information, or locate an existing user. The server tokenizes the user requests, and issues the appropriate SQL statement to perform the required action.
More: Contact: kabircse115@gmail.com

No comments:

Post a Comment