Gas Tracker 9000 Semester Project

Post on 28-Jun-2015

608 views 1 download

Tags:

Transcript of Gas Tracker 9000 Semester Project

Gas Tracker 9000Semester Project EEL 6788 Spring 2010

Chris Giles

EEL6788 12-April-2010

University of Central Florida

Contents

Introduction Requirements Architecture Results Applicable Future Work Questions

Introduction

Gas Tracker 9000 resulted in an application for the Android platform with the following end-to-end functional capabilities. The Android application is capable of:

Ubiquitously capturing and posting current real world prices of gasoline to a central server.

Ubiquitously querying and displaying current real world prices of gasoline from a central server.

The central server is capable of: Responding to user posts. Responding to user queries. Displaying a temporal heat map and functional statistical information

of the remotely collected data over a region.

Requirements

Android Handset: Submit price of Gasoline:

Capture current price of gasoline at a gas station. Includes octane, price, and location.

Octane: 87, 89, 93. Dollars and cents. GPS coordinates of purchase.

Captured data is uploaded wirelessly to the server. Ubiquitously sent to central server using Android based device with Gas Tracker

9000 client software. Query price of Gas:

Query the closest location. Includes octane and radius of search.

Octane: 87, 89, 93. Radius: 5 and 10 miles. Haversine Formula: “as the crow flies” distance formula for round objects.

Display results of query. Google map view.

Display details about type, price, and location.

Requirements

Web Server Process post:

Receives captured gasoline data. Store all received posts in a database. Organizes posts.

Add calendar date of reception to post. Replaces duplicates and takes into account data obsolescence.

Process query: Determine cheapest gas from query origination.

Return only 1 solution with limits as specified by the user. Type of gas. Radius. Takes into account data obsolescence.

Stores number of times type of gas is queried for relation to demand.

Requirements

Web Server Display results of analysis of captured data:

Display temporal heat map of the data. Google maps view. Display data as green, yellow, orange, red.

Assigned in quartiles respectively, i.e. most expensive is red.

Display statistical data. Fluctuation of the price and demand for gasoline over

time. Date, type, low price, mid price, high price, &

demand (parametrics).

Network Architecture

Internet

Web Server

www.rigbot.com

Android Device

Cell TowerCell Service Provider

PC

User

Admin

Software Architecture Server

Internet

Post

Data Base

Query

Web Server

Central Server

User

User

Admin

Key Technologies

HTML, PHP, & JavaScript Apache Web Server Web Pages:

HTML forms. Google Maps API. Java based networking.

Additional Key Technologies

Distance formula (2D) http://math.about.com/library/bldistance.htm

Works on 2D Cartesian maps. ~ 69.172 miles per degree of latitude. Doesn’t work for spheres because longitude conjoins at

the north and south poles. Haversine Formula (3D Spheres)

http://www.movable-type.co.uk/scripts/latlong.html Works for spheres (i.e. earth). As the crow flies. Gas Tracker uses this distance formula.

Software Architecture Handset

Post

Query

Android API

HandsetAndroid Device

Activities (Flow)

Launch

Post Query

Map View

Key Technologies

Java Extensive use of Android API.

Grants access to platform functionality. GPS, Time, dalvik virtual machine, etc. Activities & intents.

Requirements to Run Prototype

Android Device or EmulatorGoogle Maps Platform v2.1API level v7

Mozilla Firefox v3.6.3 JRE v6 Gas Tracker 9000

Results

End to end demonstration:Android Emulation Handset.www.rigbot.com

Applicable Future Work

Features Use of GEO Coding. Refinement of database storage methods. Higher degree of precision in distance calculations. Refinement of web side map view

Scalable display of information based on current view. Addition of proactive web based searching via the server.

Not sure if this is possible i.e. resource may not be available because this is expensive information.

Refinement of GUIs. More messages and so forth.

Security… LoL.

Questions