Group SD0605
From ECE Department Wiki
Contents |
Project Title
Wi-Fi Positioning System
Members
Students
L - R: Oluwayemisi (Yemisi), Darren and Ahmed
Advisor
Project Description
Introduction: The Wi-Fi Positioning System is a device that takes in a group of data and information based on the IEEE 802.11x wireless protocol; manipulate the data using pre-defined functions and use the function output to predict location. The working device should tell a user their location at any point ranging from small spaces within a building to highly populated urban area. The functionality of the device is similar to the Global Positioning System (GPS), however the Wi-Fi system makes use of IEEE 802.11x wireless technology. Collecting the signal strengths of wireless access point in range enables the Wi-Fi Positioning System to be more efficient especially in an urban setting where the GPS typically has problems.
This project basically consists of two main parts: The Trainer and the Estimator stages. The Trainer stage (Trainer) uses a Wi-Fi receiver to take signal measurements from various wireless access points in range. A user-interface runs the Trainer, which enables the user to input current location, and to choose when to start or stop taking measurements from the area. The Trainer will use the results of the measurements in a series of probability functions to create a probabilistic model, which will determine the probability of signal strength from a wireless access point for each position. The Bayesian probability approach is in use for this version of the device.
Using the results from the probabilistic model, the Estimator stage (Estimator) determines the probable position of the user. When the client enters a new area, the location result will be displayed on the map and a voice message stating the current location will play. This project should give valuable research knowledge in the field of Wi-Fi technology, and in the future its application could possibly be used as an NSF project to help a vision impaired user.
This project is divided into two main stages; the Trainer and Estimator Stages or simply the Trainer and the Estimator.
Requirements Capture
Design Objective: • Working Estimator and Trainer programs on both the laptop and the PocketPC • Improve the training set for better Estimator accuracy • Minimal system training time • Trainer GUI easy to use • Pick up signals from most reliable Access Points in range • Training data of 20 positions within ECE department • Estimator predict position with 80% accuracy in 20 seconds • Display estimated position on highlighted on map
Functional Requirements: Desktop and Pocket PC compatible code
Design Constraints: Working device should be mobile mobile and portable
Design Flowchart
Trainer Stage
The Trainer comprises of two sub stages; the coding and the actual training using the code. The wireless technology location software used is the placelab freeware. Placelab detects wireless network in the range of the machine in which it is installed which should be equipped with wireless technology such as the Bluetooth. In the case of this project the WiFi wireless network card is in use. It returns information such as the Access Points (APs) and the Signal Strength (SS).
The resulting wireless information (16 bit haxadecimal represenation of APs) is then converted to decimal integers in another code that is part of the project task called the MACIndexTable. The Signal Strengths are also converted to thier absolute values. After conversion, the APs and the SS are stored in a 3D array or the histogram along with the positions from which they are taken. For this semester the NDSU ECE buiding is mapped out for observation.
Estimator Stage
The Estimator or the "User Stage" involves writing codes that use probability functions to estimate the probability of the wireless information got from the Trainer. The functions include conditional probability, forward probability and backward probability. At this point it is assumed that the device is delivered to the user and the program is accessed through a [User Inteface. The user can then positions predicted based on the comparison between the probability model results gogt from training. Below is a sample screen shot of the GUI at the end of the estimation process.
Pocket PC Interface
To Transfer files easily from a development machine to a Pocket PC, the ActiveSync software is used.
To compile java codes on the Pocket PC there are several java virtual machines that can be used. For this project we used the mysaifu freebean and the j9 JVM by IBM.
Software Used
Java 1.3 and 1.5
placelab
mysaifu JVM
ActiveSync 3.8 or better
j9 JVM
Textpad
Netbeans (Optional)






