Final Year Project Report

advertisement
Indoor Wireless
Location Determination
using the
Trapeze LA200
George Jude McGlinchey
(B00362061)
BSc. (Hons) Computer Science
Supervisor: - Dr. Kevin Curran
April 2009
1
Abstract
The ability to track and check the location of people or equipment in real time
has a number of application areas such as child safety, prisoner tracking and
supply chain to name but a few. Wi-Fi location determination is a technology
that has been developed in recent years, that utilises existing Wi-Fi equipment
such as those installed in personal computers, personal data assistant’s
(PDA) and
mobile phones.
The
technology uses modulated
Wi-Fi
transmission signals to detect the presence of a device, which does not
necessarily have to be connected to the network in question, just visible to it,
the system is then able to determine the position of the device based on the
signals received from the various Access Points (AP).
Increasingly in the current economic climate, industry is looking at ways of
reducing waste, improving quality without a lot of additional capital
expenditure. To do this various improvement methodologies are used these
include the ‘Lean Methodology’ which uses experts known as ‘Lean
Practitioners’ to increase the product flow through a facility by removing waste
and activities that do not add value to the final product. Another methodology
that is complimentary to Lean is known as the ‘Six Sigma Methodology’ which
uses experts known as “Black Belts” who use data and statistical analysis to
reduce variation and eliminate defects. Typically these methodologies are
combined and referred to as Lean Six Sigma.
This research examines whether Wi-Fi Location determination can be used by
industry to gather movement data useful to methodologies that improve work
practices?” The report will record the stages of a project which investigates
the feasibility of using Wi-Fi location determination to answer the question,
then
presents
a
comprehensive
investigation
into
Wi-Fi
location
determination; its present uses and proposes a system that could be used by
the author to gather movement data. The report then presents the system
requirements, a design proposal and a prototype implementation. Finally the
system is evaluated and a conclusion drawn on the work of the project.
2
Acknowledgements
I would like to thank my project supervisor, Dr. Kevin Curran for highlighting
the availability of the Trapeze LA200 equipment and the subsequent idea of
utilising it in my work and in this project, his assistance and understanding of
my situation that enabled me to complete the report.
I would also give a special word of thanks to Eoghan Furey, a current PHD
student who was a fellow part-time student, for his advice and guidance in the
location awareness arena, not forgetting the other part time students namely
Jason McDevitt, Gerald Galway and Francis Doherty for their help and
encouragement over the last five years.
I also wish to acknowledge Stelios Haji-Ioannou and Michael O’Leary for low
cost airlines; these have enabled me to travel from my new home in Geneva
to complete the last year of the course.
I wish to thank my wife, family and friends for their support and prayers over
the years.
And finally you, who ever you are, for taking the time to read this report.
3
Declaration
“I hereby declare that for a period of two years following the date, on which
the dissertation is deposited in the Library of the University of Ulster, the
dissertation shall remain confidential with access or copying prohibited.
Following the expiry of this period, I permit the Librarian of the University of
Ulster to allow the dissertation to be copied in whole or in part without
reference to me on the understanding that such authority applies to the
provision of single copies made for study purposes or for inclusion within the
stock of another library. This restriction does not apply to the copying or
publication of the title and abstract of the dissertation.
IT IS A CONDITION OF USE OF THIS DISSERTATION THAT ANYONE
WHO CONSULTS IT MUST RECOGNISE THAT THE COPYRIGHT RESTS
WITH
THE
AUTHOR
AND
THAT
NO
QUOTATION
FROM
THE
DISSERTATION AND NO INFORMATION DERIVED FROM IT MAY BE
PUBLISHED UNLESS THE SOURCE IS PROPERLY ACKNOWLEDGED.”
George Jude McGlinchey
4
List of Acronyms
AP
Access Point
API
Application Programming Interface
BBC
British Broadcasting Corporation
DGPS
Differential Global Positioning System
EPE
Ekahau Positioning Engine
ESS
Ekahau Site Survey
FM
Frequency Modulation
GNSS
Global Navigation Satellite System
GPS
Global positioning system
GSM
Global System for Mobile Communications
GUI
Graphical User Interface
HCI
Human Computer Interaction
IEEE
Institute of Electrical and Electronics Engineers
IR
Infrared
MAC
Media Access Control
PDA
Personal Digital Assistant
PPS
Precise Positioning Service
RADAR
Radio Detection and Ranging
RF
Radio Frequency
RFID
Radio Frequency Identification
RSSI
Received Signal Strength Indication
RTLS
Real Time Location System
SPS
Standard Positioning Service
TDOA
Time Difference of Arrival
VoWi-Fi
Voice over Wi-Fi
WLAN
Wireless Local Area Network
WPAN
Wireless Personal Area Network
WYSIWYG
What You See Is What You Get
XML
Extensible Mark-up Language
5
Table of Contents
Abstract .........................................................................................................................2
Acknowledgements .....................................................................................................3
Declaration ...................................................................................................................4
List of Acronyms ..........................................................................................................5
Table of Contents ........................................................................................................6
List of Figures ............................................................................................................10
List of Tables ..............................................................................................................12
1 Introduction...........................................................................................................13
1.1
Aims & Objectives .....................................................................................14
1.2
Thesis Overview ........................................................................................14
2 Location Determination Technologies .............................................................16
2.1
Radio Detection And Ranging - RADAR ...............................................16
2.2
Mobile Cellular Systems...........................................................................16
2.3
Optical Vision .............................................................................................17
2.4
Global Positioning System .......................................................................17
2.5
ZigBee .........................................................................................................18
2.6
Rosum .........................................................................................................19
2.7
Skyhook hybrid positioning system (XPS) ............................................20
2.8
Ultrasonic Location Determination .........................................................20
2.9
Infrared Location Determination .............................................................20
2.10 Bluetooth Location Determination ..........................................................21
2.11 Inertia tracking ...........................................................................................21
2.12 RFID Location Determination ..................................................................21
2.13 Wi-Fi ............................................................................................................22
2.14 Wi-Fi Fingerprinting...................................................................................23
2.15 Location Determination Applications .......................................................23
2.15.1 Mapoint ..................................................................................................23
2.15.2 Dodgeball...............................................................................................23
2.15.3 Friend finder ..........................................................................................24
2.16 Potential applications of Wi-Fi Location Determination.......................24
2.16.1 Prisoner Monitoring ..............................................................................24
6
2.16.2 Child Safety ...........................................................................................24
2.16.3 Indoor gaming .......................................................................................24
2.16.4 Supply Chain .........................................................................................24
2.16.5 Security ..................................................................................................25
2.16.6 Healthcare .............................................................................................25
2.16.7
Location Based Access ......................................................................25
3 Wi-Fi Location Determination Technologies ...................................................26
3.1
Microsoft Research Group RightSPOT..................................................27
3.2
Microsoft Research Group RADAR system ..........................................27
3.3
Trapeze LA200 ..........................................................................................27
3.4
Place Lab software ...................................................................................27
3.5
AeroScout Wi-Fi RFID ..............................................................................28
3.6
Ekahau RTLS.............................................................................................29
4 Trapeze LA200 Wi-Fi Location Determination ..............................................31
4.1 LA200 major components ...........................................................................32
4.1.1 The Trapeze Dashboard ..........................................................................32
4.1.2 The Trapeze Webpage Dashboard ........................................................34
4.2
Limitations of the Trapeze LA200 ...........................................................38
4.3
Advantages of the Trapeze LA200 .........................................................38
5 Lean Six Sigma - Work Study ...........................................................................39
5.1 Aeroscout and IMEC Technologies ..........................................................40
5.2 Ekahau and Polycom ..................................................................................40
5.3 Ekahau & Rautakesko .................................................................................40
5.4 Aeroscout and Mine Site Technologies ...................................................41
5.5 Product flow analysis ...................................................................................41
6 Requirements Specification and Analysis .......................................................44
6.1
Problem Specification ...............................................................................44
6.2
Objectives of System ................................................................................44
6.3
Design Methodology .................................................................................45
6.3.1
Waterfall Methodology .........................................................................45
6.3.2
Evolutionary development ..................................................................46
6.3.3
Design Methodology Selection ..........................................................46
6.4
Requirements Specification .....................................................................47
7
6.4.1
Functional Requirements ....................................................................47
6.4.1.1 User ..........................................................................................................47
6.4.1.2 System .....................................................................................................47
6.4.2
Non-Functional Requirements ...........................................................47
6.4.3
Hardware Requirements .....................................................................48
6.4.4
Software Requirements .......................................................................49
6.4.5
Development Languages ....................................................................49
6.5
7
User Interface ............................................................................................49
Design Phase .....................................................................................................50
7.1
Hardware Components ...........................................................................50
7.2
Software Components .............................................................................50
7.3
Design Considerations ............................................................................50
7.4
HCI Considerations ..................................................................................51
7.5
System Architecture .................................................................................51
7.6
Stages of the System ...............................................................................53
7.6.1 User Use Case Diagram ........................................................................53
7.6.2 User Use-Case Diagram Descriptions.................................................53
7.6.3
System Use Case Diagram .................................................................54
7.7 Class Diagram...............................................................................................55
8
9
7.8
Activity Diagram .........................................................................................55
7.9
Sequence Diagram ...................................................................................56
Implementation ..................................................................................................57
8.1
Equipment Connection .............................................................................57
8.2
Program GUI ..............................................................................................57
8.4
LA200 Database ........................................................................................62
Testing ..................................................................................................................63
9.1
Unit Testing ................................................................................................63
9.1.1
Splash Screen & Login ........................................................................63
9.1.1
LA200 System and network ................................................................64
9.1.2
GUI to API component ........................................................................64
9.1.3
API to the LA200 & LA200 Database component ...........................65
9.1.4
GUI to local replica database component ........................................65
9.1.5
Reporting and Graphing Component ................................................66
8
9.2
Integration Testing ....................................................................................66
9.3
Performance Testing ................................................................................67
10 Evaluation .............................................................................................................68
10.1 Database Component...............................................................................68
10.2 Graphics......................................................................................................69
10.3 Calibration ..................................................................................................69
10.4 Issues during development ......................................................................69
10.5 Future Work................................................................................................71
11 Conclusion ............................................................................................................73
References .................................................................................................................74
Appendix A – LA200 database schema ................................................................76
9
List of Figures
Figure 1: How location is determined from satellites .......................................... 18
Figure 2: ZigBee Mesh Structure Network ............................................................ 19
Figure 3: Rosum System Architecture ................................................................... 19
Figure 4: Trolley Scan RFID-Radar System ......................................................... 22
Figure 5: Wireless base systems and their location range resolution ............. 26
Figure 6: Key components in the Place Lab architecture .................................. 28
Figure 7: AeroScout Active RFID tag ..................................................................... 29
Figure 8: Ekahau Tag ............................................................................................... 30
Figure 9: Trapeze LA200 Appliance ..................................................................... 31
Figure 10: Trapeze Dashboard for the LA200 ...................................................... 32
Figure 11: Trapeze LA200 Connection Details Form .......................................... 33
Figure 12: Trapeze Dashboard Device List Screen Appliance .......................... 33
Figure 13: Trapeze Dashboard Layout Locales ................................................... 34
Figure 14: Trapeze Dashboard fingerprint locations ........................................... 34
Figure 15: Trapeze Web Dashboard login screen ............................................... 35
Figure 16: Trapeze Web Dashboard Summary screen ...................................... 35
Figure 17: Trapeze Web Dashboard Device List screen .................................... 36
Figure 18: Trapeze Web Dashboard Monitor screen .......................................... 36
Figure 19: Trapeze Web Dashboard Monitor Screen ......................................... 37
Figure 20: Trapeze Web Dashboard Fingerprint screen .................................... 37
Figure 21 A heat map from the Ekahau / Rautakesko system ..................................... 41
Figure 22: Lean Six Sigma Point to Point Diagram .................................................... 42
Figure 23: Point to Point after improvements .............................................................. 43
Figure 24: Traditional Waterfall Methodology ...................................................... 45
Figure 25: Evolutionary Development Model ........................................................ 46
Figure 26: Trapeze System Concept ..................................................................... 52
Figure 27: Overview of the System ........................................................................ 52
Figure 28: User Use Case Diagram ...................................................................... 53
Figure 29: System Use Case Diagram .................................................................. 54
Figure 30: Class Diagram ........................................................................................ 55
Figure 31: Display report for selected user ........................................................... 55
10
Figure 32: High-Level Sequence Diagram for the system .................................. 56
Figure 33: Trapeze Web Dashboard Summary screen ................................................ 57
Figure 34: The application splash screen ..................................................................... 58
Figure 35: The login screen ......................................................................................... 58
Figure 36: The main GUI screen ................................................................................. 59
Figure 37: Connect LA200 online database................................................................. 60
Figure 38: Connect to local replica .............................................................................. 60
Figure 39: MAC address selection ........................................................................ 60
Figure 40: Graph of places visited ............................................................................... 61
Figure 41: Graph of routes taken ................................................................................. 61
Figure 42: Successful login confirmation .................................................................... 63
Figure 43: Unsuccessful login ..................................................................................... 63
Figure 44: LA200 API connection error ...................................................................... 64
Figure 45: Successful connection to LA200 database ................................................. 65
Figure 46: Successful connection to local replica........................................................ 65
Figure 47: Unsuccessful connection to local replica ................................................... 65
11
List of Tables
Table 1: LA200 Tracking performance ................................................................. 32
Table 2: Trapeze LA200 Dashboard hardware requirements ............................ 50
Table 3: Summary of Main Screen Components Shown in Figure 36 ............. 59
Table 4: Integration Testing ..................................................................................... 66
Table 5: Evaluation against User Functional Requirements .............................. 68
Table 6: Evaluation against System Functional Requirements ......................... 68
12
1
Introduction
With the development of GPS, high speed Wi-Fi and mobile computing there
has been a growth in the areas of location determination and supplying an
individual and others with current location information relevant to the
individual or a piece of equipment current location. Location determination can
also be used to track social patterns for example finding out who interacts with
whom, how often and for how long. Location determination and the current
and historical movement of people and equipment is a useful tool for example
when looking to develop more efficient work practices by removing wasted
time or movements. A current highly promoted example into equipment
movements is being carried out by the British Broadcasting Corporation
(BBC).
They are carrying out an experiment on tracking the movement of a
shipping container by attaching a Global Positioning System (GPS) receiver to
a single shipping container and are following the containers movement around
the world for a year.1
Wi-Fi indoor location determination is a process of estimating physical
location of a Wi-Fi enabled tag or piece of equipment in relation to a set of
reference access points (AP) within a building or other predefined area. This
research will focus on the utilisation of the information available from a
wireless local area network (WLAN) equipped with a Trapeze Networks
LA200 location awareness module.
Trapeze Networks quote a ninety five percent accuracy rate to less than three
meters for their LA200 system for indoor Wi-Fi location determination which,
when compared to other location determination technologies is quite good
when you consider other technologies such as Global Positioning System
(GPS) technology, which simply does not work indoors as it requires a direct
line of sight to the satellites, and mobile phone positioning systems that have
1
http://news.bbc.co.uk/2/hi/in_depth/business/2008/the_box/default.stm
13
an accuracy of around one hundred meters, Radio Frequency Identification
(RFID) can offer better accuracy as long as the item or person being tracked
is very close to the sensor.
1.1
Aims & Objectives
This project aims to investigate the capabilities and demonstrate the use of
Wi-Fi technology to track the location of Wi-Fi enabled equipment or any item
or person equipped with a special Wi-Fi tag in an indoor locale. The objective
of the project is the design, development, implementation and subsequent
review of a prototype system that will create a graphical user interface, (GUI),
to provide analysis charts on the movements of people or equipment in an
area from the present location and historical movement’s information provided
by a Trapeze networks LA200 WLAN based system.
1.2
Thesis Overview
Chapter two describes the various location determination technologies that
are available.
Chapter three describes in detail the Wi-Fi based location determination
systems that are available.
Chapter four specifically describes in detail the LA200 Wi-Fi location
determination system supplied by Trapeze Networks, its components,
software, hardware and the benefits and drawbacks it brings to this project.
Chapter five discusses the relationship between the Lean methodology and
Six Sigma Methodologies to this project and gives some examples.
Chapter six describes the requirements needed to implement the proposed
system namely the problem specification, system objectives, design
methodology, the functional and non-functional requirements, the hardware
and software requirements and the user interface.
14
Chapter seven describes the design phase of the project and in particular
discusses the hardware and software components in detail, the design
constraints, HCI guidelines and system architecture.
Chapter eight describes the implementation of the system and the different
components within the system.
Chapter nine describes the testing methodologies and the testing phase of the
project.
Chapter ten is a critical evaluation of the project against the requirements laid
out in chapter six and finally the opportunities for future work in this arena.
Chapter eleven is the conclusion which gives a review of the project and
information contained within this report.
15
2
Every
Location Determination Technologies
location
determination
technology
has
its
advantages
and
disadvantages in a number of areas namely; if they are designed to operate
inside or outside, how they determine their position internally or via a network
connection, their cost, their susceptibility to interference and their location
determination accuracy.
2.1
Radio Detection And Ranging - RADAR
An early example of using radio waves to detect the location of an object was
the detection of aircraft using radio detection and ranging, (RADAR).2 The
acronym RADAR has since lost the capitalisation and become a word in the
English language. A radar system operates by transmitting a radio wave and
then listening for the echo of the wave reflected back from the surface of the
distant object. The distance of the object is calculated on the time it takes for
the echo to return, while the speed of the object is calculated by measuring
the echo’s Doppler shift.3
2.2
Mobile Cellular Systems
Mobile phone companies are offering to their customers a form of location
determination using a customer’s mobile phone. They can calculate the
location of the mobile phone by measuring the mobile phone signal strength
and the signal travel time relative to the different towers with in a cell.
LocateMobiles.com offers this service commercially, for example to parents
wishing to find the current location of their teenage children. They state that
the average accuracy of the location determination using this technology is
around fifty meters4 albeit highly dependant on the number of towers with in
2
http://www.answers.com/topic/radar
3
http://science.howstuffworks.com/radar.htm
4
http://www.locatemobiles.com
16
the cell at the location and other factors such as interference from large
buildings and the terrain.
2.3
Optical Vision
Computer visual techniques can be used in location determination systems.
A desktop augmented reality system using optical markers was reviewed by
Kato et al (2000). It used the desktop area as they envisaged it as system for
virtual face to face meetings that would be held around a table. The computer
would then use the special markers to track the meeting attendees in a virtual
manner. Alternatively the optical markers could be used to track movement
and ultimately location in a motion capture system (Benford, 2005).
2.4
Global Positioning System (GPS)
Global Positioning System (GPS) is an outdoor location determination system
originally developed for military use by the United States Department of
Defence. Today GPS has many uses albeit outdoor only activities such as
route navigation, emergency location finding, surveying and mapping to name
but a few.
The GPS is a Global Navigation Satellite System (GNSS) that comprises of a
network of twenty-four satellites and ground stations. Each satellite transmits
a signal containing the time and its location back to the earth synchronised by
its internal atomic clock. Using a minimum of three satellite signals a GPS
receiver triangulates its position by calculating its distance from each of the
satellites using the information contained in each satellite signal. This method
of triangulation is referred to as trilateration.5 Prior to May 2000 the accuracy
of GPS for civilian use was restricted by the United States Department of
Defence to round one hundred meters known as Standard Positioning Service
(SPS). In May 2000 President Clinton announced that the SPS would have
the same capability as the military version which was accurate to ten meters
or less. The military version was known as Precise Positioning Service (PPS).
5
http://electronics.howstuffworks.com/gps1.htm
17
To improve the accuracy even further the use of ground stations in
conjunction with the satellites improves the accuracy to three meters or less
this is known as the Differential Global Positioning System (DGPS). GPS
does have some limitations namely receivers must be in ‘line of sight’ with the
satellites which means they cannot work indoors or near tall buildings which
block or reflect the signal, a phenomenon known as ‘urban canyon effect’.
Figure 1 shows how a location is determined from satellites orbiting the earth.
Figure 1: How location is determined from satellites 6
2.5
ZigBee
ZigBee is a name given to the IEEE 802.15.4 standard. The term is derived
from the erratic flight patterns that bees make while they are collecting pollen
from flowers, and is similar to the numerous connections between all the
devices in a totally wireless network. ZigBee is aligned to connectivity
between small packet devices, its ‘bigger brother’ in the Wireless Personal
Area Networks (WPAN) arena, Bluetooth, is aligned to the connectivity
between large packet devices such laptops, cellular mobile phones and
headsets.7
6
http://encarta.msn.com/encyclopedia_761579727_2/Global_Positioning_System.html
7
http://www.wisegeek.com/what-is-zigbee.htm
18
In a ZigBee mesh structure network, as shown in Figure 2, a mobile nodes
location can be triangulated by using Received Signal Strength Indication,
(RSSI), to an accuracy of five meters from three or more adjacent static nodes
(Cambridge Consultants, 2006).
Figure 2: ZigBee Mesh Structure Network
2.6
Rosum
Rosum uses commercial digital, analogue and mobile television signals for
location determination. Its advantage over other systems is that it is a hybrid
system that combines the benefits of GPS with television transmitter signals
to determine location. When the GPS component cannot determine the
location accurately typically in an urban area or inside a building the location
can be derived from television transmitter signals which can penetrate a
building.8 Figure 3 shows the Rosum system architecture.
Figure 3: Rosum System Architecture 9
8
http://www.rosum.com/rosum_technology.html
9
http--www.rosum.com-images-architecture.jpg
19
2.7
Skyhook hybrid positioning system (XPS)
XPS is a hybrid location determination system for such as dual-mode
equipped devices such as a mobile phone, laptop or PDA. The technology
uses the location data from GPS, mobile cellular masts and nearby Wi-Fi
access points to calculate the position of a mobile device. Based on the
required accuracy of the location determination and in an effort to reduce
power usage the system disables or enables input from the various
information sources. GPS and mobile cellular system location determination
are calculated using the methods discussed in earlier sections of this report.
However the Wi-Fi method is section is more complex, to calculate the
position using Wi-Fi a Skyhook database is utilised that contains millions of
access point records from across Asia, Europe and North America. The
records are collected by a fleet of vehicles that drive around the roads
detecting the signal from access points. From an access point the Media
Access Control (MAC) address is read, recorded and time stamped along with
the vehicle’s location at the time of detection. This means that the actual
physical location of an access point is not recorded but a signal fingerprint
from the access point. Then later when required to calculate a location it is the
fingerprint that is actually used not the actual access point location10.
2.8
Ultrasonic Location Determination
Ultrasonic systems similar to the Lighthouse Museum tour guide system
(Brown et al, 2003), use the time of flight of ultrasonic sound chirps to
triangulate position. Typically this can be expensive; however a low cost
version was developed by the University of Bristol (Randell and Muller, 2001).
2.9
Infrared Location Determination
Infrared (IR) systems operate by either the user taking some action to
highlight their presence to a sensor or as in the case of the IntelliMotion
10
http://www.skyhookwireless.com/howitworks/faq.php
20
system the light pulses worn by a user are detected by sensors and the
location of the user is display on a computer11. With IR technology and due to
the fact that light cannot pass through walls, a sensor would be required in
every room, behind every blocking wall and in every corridor of a facility using
this technology.
2.10 Bluetooth Location Determination
A Bluetooth system like Tadly’s Topaz System
12
is made up of three major
components namely the positioning server, the access points and the tags.
The tags can be either special Topaz System Bluetooth tags or any Bluetooth
equipped device such as a mobile phone. The system can provide with ninety
five percent reliability an accuracy of around two meters. It can detect a
Bluetooth tag by several methods namely, using RSSI to triangulate the
location, putting an access point in every room and the nearest AP to the tag
indicates its location. They also offer for a highly compartmented area the
use of a hybrid Bluetooth-IR system.
2.11 Inertia tracking
Inertia tracking can be used as a means of determining location.
Accelerometers can be embedded into mobile devices and these can be used
to calculate velocity. Digital compasses can be added to these devices in
order to measure orientation, (Benford, 2005).
2.12 RFID Location Determination
Radio Frequency Identification tags can be easily added into most everyday
objects. Trolley Scan’s RFID-radar system is a an example of an indoor RFID
based location determination system that has the accuracy capability of less
than fifty centimetres in an area up to one hundred meters deep however this
depends on the tags used and may be as little as ten meters. The system can
11
12
http://findarticles.com/p/articles/mi_m0EIN/is_/ai_18655803
http://www.tadlys.co.il/Pages/Product_content.asp
21
track up to fifty tags and locate their location within a few seconds. The
system has three main components, the reader, the antenna array and the
tags. The reader measures the distance of the signals from the tags, the
antenna array for energising the tags and finally the tags themselves. Figure 4
shows these main components. The system works by measuring the distance
the signal travels to two of the antenna arrays then calculating the angle from
each.
Movement can be detected by repeating this process continuously
(rfid-radar.com, 2007). To improve accuracy ‘chokepoints’ may be used, these
are additional readers and antenna that are installed at entry and exit points,
they are used to detect when a tag enters or leaves a particular area.
Antenna array
Reader
Tags
Figure 4: Trolley Scan RFID-Radar System
2.13 Wi-Fi
Wi-Fi is the generic name given to any of the 802.11 group of specifications
for the wireless local area network (WLAN) interface developed by the
Institute of Electrical and Electronic Engineers (IEEE). With the increasing
number of hotspots, public access points, high speed internet access and the
ability to easily set up a network without the need for any cabling has led to
the take off in popularity of WLAN’s
22
2.14 Wi-Fi Fingerprinting
A number of Wi-Fi location determination systems utilise a Wi-Fi fingerprint to
determine location.
A finger print is done by taking a Wi-Fi device to a
specific point where it senses the signals from all the fixed access points that
are in its detection range. From these signals a unique fingerprint for that
location is generated from the measurements of all the detected access
points. The actual location determination occurs at a later date when a Wi-Fi
device is taken to a location and the system determines the probable location
based on the fingerprints. The greater number of fingerprints taken will
improve the accuracy of the location determination.
2.15 Location Determination Applications
There are a number of location determination applications available however
they fall into three general categories:
1. Applications for users who do not want to disclose their position to
anyone else
2. Applications for users who display their position to a selected group
3. Applications for users who want disclose their position to everyone
2.15.1 Mapoint
Mappoint.com is an example of an application for users who do not disclose
their position to anyone else; it displays the user’s position on a map and
nearby points of interest.
2.15.2 Dodgeball
www.dodgeball.com is an example of an application for users who wish to
display their position to a select group; it is used by mobile phone users and
works by users telling www.dodgeball.com who their friends are, then when a
user is out and about they sent a text message to Dodgeball with their
location, Dodgeball then send a text message to all their friends and reports
back if there are any of their friends in the vicinity.
23
2.15.3 Friend finder
mMode’s Friend Finder is another example of this type of application was it
was developed by AT&T. These types of applications are typically more
popular in big cities.
2.16 Potential applications of Wi-Fi Location Determination
The use of Wi-Fi location determination technology could be utilised in a
number of applications namely:
2.16.1 Prisoner Monitoring
For example a system using tamper-proof, Wi-Fi tags worn by prisoners. The
system could be used to restrict prisoners to certain areas of the prison by
notifying prison wardens if prisoners enter restricted areas. This will help to
prevent escape attempts and allow prison guards to monitor prisoner
whereabouts at all times.
2.16.2 Child Safety
For example a Wi-Fi based system could be used by those with the
responsibility of supervising children in a school, crèche or theme park
environment. The child would wear an Ekahau tag. Some of the Ekahau tags
have a call-button which a child could activate if they were distressed or in
need of help. The system could be configured to notify the nearest teacher,
carer or park staff about the issue with the child.
2.16.3 Indoor gaming
For example a large scale version of Pac-man could be played with people
quipped with tags playing the roles of Pac-man and the Ghosts.
2.16.4 Supply Chain
For example Wi-Fi tags could be attached to product in a warehouse to
enable stock or inventory level tracking.
24
2.16.5 Security
For example, if valuable equipment is no longer detected in its normal area
this action could activate an alarm for the security staff and then allow them to
track and find it while it is still within the range of the WLAN.
2.16.6 Healthcare
For example in a hospital environment patients could wear wristband tags that
allow them to be tracked throughout the hospital. If a patient tries to leave
without being discharged, nurses are alerted to the situation and are able to
get them and return them to their ward. This would be particularly useful for
patients suffering from dementia or Alzheimer’s disease. Additionally it could
be advantageous if important staff may wear tags that would allow,
particularly in an emergency situation their location to be quickly identified.
2.16.7 Location Based Access
For example only providing Wi-Fi access to users who are within a certain
building or area, therefore the system could prevent those who maybe
engaged in war-driving activities. The Trapeze Smart-Pass® application used
in conjunction with their LA200 Location Appliance provides Wi-Fi access and
dynamic authorization based on the physical location of a user.
25
3
Wi-Fi Location Determination Technologies
A number of different systems have previously used WLAN access points as
beacons from which to estimate location. Numerous other indoor location
systems have been developed that make use of the sensory technologies
discussed earlier but the major drawback with these is that they all require the
installation of specialised hardware in the environment to be maintained. The
high costs of these technologies are also prohibitive making them unsuitable
for personal or social applications that are to be used in people’s daily lives.
They do however offer very high accuracy levels and are therefore used by
many commercial organisations.
Figure 5 depicts a rough outline of the current wireless-based location
positioning systems and their accuracy resolutions.
Figure 5: Wireless base systems and their location range resolution 13
13
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C: APPLICATIONS AND REVIEWS,
VOL. 37, NO. 6, NOVEMBER 2007 Page 1073
26
3.1
Microsoft Research Group RightSPOT
Microsoft research group developed an algorithm, that they called
RightSPOT, which used a ranking system of the available Frequency
Modulation (FM) radio stations rather than their relative signal strengths to
determine location.
With eight radio stations they were able to get an
accuracy rate of approximately eighty percent (Krumn et al, 2003).
3.2
Microsoft Research Group RADAR system
Microsoft research group developed a system called RADAR, The system for
was able to locate and track users inside a building with a resolution of
between two and three meters. It uses two inputs to calculate the location
namely RSSI from the access points and a simple signal propagation model.
(Bahl et al, 2000)
3.3
Trapeze LA200
Trapeze Networks offer a Wi-Fi hardware based solution to location
determination that allows wireless equipped devices visible to the WLAN to be
tracked and located to room level.
The LA200 system is installed in the
University of Ulster Magee Campus and is discussed in more detail in chapter
four of this report.
3.4
Place Lab software
The Place Lab is an open source software toolkit, from Intel Research in
Seattle, that can run on a number of varied devices such as mobile cellular
phones, laptops, PDA’s and different operating systems such as Windows XP,
Linux, Mac OS X, Pocket PC, Windows CE and Symbian S60. The “spotter”
software component ‘listens’ for the unique identifiers from various radio
beacons in its range such as Wi-Fi access points, mobile cellular phone
towers, and fixed location Bluetooth devices. The ‘mapper’ software
component then looks up each of the beacons position in the “landmarks
database” and finally the ‘tracker’ software component takes the ‘mapper’
27
output and estimates its own position and shows it on a locally cached map.
Providing that the system can get signals from around five beacons then the
accuracy for the system is around twenty meters. Figure 6 shows the main
components, (LAMARCA et al., 2005).
Figure 6: Key components in the Place Lab architecture 14
3.5
AeroScout Wi-Fi RFID
The AeroScout System (www.aeroscout.com) uses a standard Wi-Fi network
to monitor its own brand active RFID tags. Figure 7 shows an example of an
AeroScout active RFID tag. The AeroScout system locates the position of the
tags by using a RSSI algorithm however if a network is equipped with its own
brand location receivers, location points and exciters then it allows for both
indoor and outdoor capability using time difference of arrival (TDOA)
functionality and also chokepoint detection as tags pass through doors or
gateways. The system also provides its own frontend software to monitor tags
know as MobileView. 15
14
http://www.placelab.org/publications/pubs/pervasive-placelab-2005-final.pdf
15
http://www.aeroscout.com/leadcapture/files/AeroScout+System+Data+Sheet_0.pdf
28
Figure 7: AeroScout Active RFID tag
A trial in Yokohama City, Japan, in 2005 using an AeroScout system tracked
school children and monitored their safety as they went to and from school.
Each child was given an AeroScout active RFID tag to wear. The MobileView
software was able to track each child based on the RSSI from the city’s Cisco
WLAN AP’s. The active RFID tags could be read up to three hundred meters
from the AP’s and the location determination had an accuracy of around ten
meters. Each tag also has an additional feature of an a call-button that could
be activated by the child if they needed help, on activating the tag an email
showing the childs location on a map was sent to the child’s parents.16
3.6
Ekahau RTLS
The Ekahau Real Time Location System is a software suite that uses an
existing WLAN network without the need for additional special network
hardware to determine the location of a Wi-Fi equipped device. The suite has
three main of components namely the Ekahau Site Survey (ESS), the Ekahau
Positioning Engine (EPE) and the Ekahau Application Programming Interface
(API) that utilises the EPE system to create custom applications.17
16
http://www.rfidjournal.com/article/articleview/2050/1/1/
17
http://www.ekahau.com/?id=4510
29
The EPE uses software based algorithms to calculate the position of a tag.
However before the EPE can determine the location work it needs the site
survey calibration information from the ESS. The ESS collects the information
on the coverage and RSSI of each AP in the network across the area to be
covered. The ESS gathers the calibration information by a person carrying
the system and walking around the area to be covered.
18
Ekahau have also
developed Wi-Fi tags an example of which is shown in Figure 8.
Figure 8: Ekahau Tag19
18
http://www.ekahau.com/?id=4130
19
http://www.ekahau.com/?id=4220
30
4
Trapeze LA200 Wi-Fi Location Determination
The LA200 unit was developed originally by Newbury Networks, who in
December 2008, were bought over By Trapeze Networks. Trapeze then in
turn rebranded the unit as the Trapeze Networks Location Appliance LA200.
However prior to this Newbury Networks strategic business partners had
rebranded the unit under several different names namely the Meru Networks
Meru E(z)RF Location Manager, the Nortel Networks Nortel WLE2340 and
now the Trapeze Networks Trapeze LA200.20 The unit will only be referred to
as the LA200 in this report. A picture of the actual unit is shown in Figure 9.
Figure 9: Trapeze LA200 Appliance 21
The Trapeze Networks Location Appliance LA200 provides the ability in real
time to quickly and accurately locate and track assets, people or practically
anything that has a or is attached to a Wi-Fi transmitter over an existing Wi-Fi
network. The LA200 can offer location determination for up to two thousand
Wi-Fi devices over a WLAN. It also provides the capability to run custom or
enterprise applications that require the ability to provide location sensitive
content or security and track assets. To ensure compatibility the LA200 is fully
Wi-Fi compliant this allows the system to use the active Wi-Fi tags from other
companies such as, AeroScout, Ekahau, Newbury Networks and Pango.
A summary of the tracking performance of the Trapeze Networks LA200 is
shown in table 1:
20
http://www.newburynetworks.com/company-about.htm
21
http://www.mobiledataforce.com/Products/pointsyncRFID_Overview.stm
31
Test
Performance
Accuracy at 10 meters
99%
Accuracy at 5 meters
97%
Accuracy at 3 meters
95%
Average seek time
30 sec
Fastest seek time
10 sec
Number of devices tracked
2000
Table 1: LA200 Tracking performance 22
4.1 LA200 major components
This section provides an overview of the major components of the system.
4.1.1 The Trapeze Dashboard
The Trapeze Dashboard is a graphical console that uses the information from
the LA200 to provide a real time view of the activity and location of each Wi-Fi
device visible to the system to a room and floor level. It also provides layered
views for multiple floors. The example shown in Figure 10 is from the
University of Ulster System at the Magee Campus.
Figure 10: Trapeze Dashboard for the LA200
To use the Dashboard software a connection must be established from the LA200
Dashboard software to a LA200 Appliance by completing the ‘Enter Connection
22
Source la200 datasheet
32
Details’ form with the appropriate details, the example shown in Figure 11 is from
the University of Ulster System at the Magee Campus
Figure 11: Trapeze LA200 Connection Details Form
After the Dashboard connects to the LA200 Appliance a ‘Device List Screen’
appears, it shows a summary of each device visible to the LA200. Options are
available to view devices by server, locale or network. Figure 12 shows a
typical device list view on the Dashboard.
Figure 12: Trapeze Dashboard Device List Screen Appliance
An image file containing a scaled plan of a building can be imported into the
system and different locales added by the user. For example from the
University of Ulster System the light blue area in Figure 13 represents the ‘MG
Floor2 Staff2’ locale, which contains a number of smaller offices.
33
Figure 13: Trapeze Dashboard Layout Locales
After the locales have been identified the actual physical of the fingerprints an
AP’s are added. The points where fingerprints have been taken are
represented by a green flag as shown in Figure 14 the example is from the
University of Ulster System at the Magee Campus.
Figure 14: Trapeze Dashboard fingerprint locations
4.1.2 The Trapeze Webpage Dashboard
The LA200 system also comes with a web based dashboard interface to
access the system; it provides similar functionality to the dedicated
Dashboard application, however it does not have the capability to display the
live maps only a data table of the information. The next section will describe
the main web interface screens from the University of Ulster LA200 system at
the Magee Campus. Figure 15 shows the web based Dashboard login screen.
34
Figure 15: Trapeze Web Dashboard login screen
Figure 16 shows the web based Dashboard summary screen that displays summary
information on the system, network and devices visible to the network.
Figure 16: Trapeze Web Dashboard Summary screen
The web based Dashboard device list screen that displays information on all the
devices visible to the network is shown in Figure 17.
35
Figure 17: Trapeze Web Dashboard Device List screen
By clicking on a particular device from the device list screen as shown in
Figure 17 the system will display the recent activity of the tag. The activity list
is shown in Figure 18.
Figure 18: Trapeze Web Dashboard Monitor screen
Using the web based Dashboard monitor screen as shown in Figure 18 the
user can then enter a particular MAC address and date range for any given
time period in the last thirty days and the system will display the location of
that tag for the given date range as shown in the example in Figure 19.
36
Figure 19: Trapeze Web Dashboard Monitor Screen
The system will also display the fingerprint information it holds for a particular
fingerprint point. For example in Figure 14 fingerprint ‘mp24’ is shown in the
graphic. From the web based Dashboard fingerprint screen Figure 20 shows
the detail of the ‘mp24’ fingerprint location in a graphical representation using
green and purple bars.
Figure 20: Trapeze Web Dashboard Fingerprint screen
37
4.2
Limitations of the Trapeze LA200
While the LA200 has many advantages it does have certain limitations, issues
and costs. These include:

Requires the purchase of the LA200 system box for the network which
at current prices, is around fifteen thousand US dollars.

There are range limitations due to the penetration of Wi-Fi signals,
through solid objects such as building walls;

While not purely a LA200 issue there are privacy issues, namely the
ability to track individuals without their consent.

While the system is fully compatible with Wi-Fi and can use the Wi-Fi
signals from laptops, PDA’s etc any piece of equipment or person to be
tracked requires a Wi-Fi tag and these cost around fifty pounds each
which if you wanted to give one to every student on a campus or
employee in a business could end up quite expensive.
4.3
Advantages of the Trapeze LA200
Trapeze Networks list a number of benefits of the LA200 system, these
include23:

Provision of user access control based on their location, this feature
could also be used to prevent those with stolen Wi-Fi equipment such
as laptop accessing the network.

The system has the ability to collect network access points RSSI data.

Fully Wi-Fi compliant and therefore does need not specialized
hardware or software on the Wi-Fi devices

The Dashboard allows the ability to view the real time movement and
track up to two thousand Wi-Fi enabled devices simultaneously with a
granularity of five minutes without additional network load and then
store all this data for each device for a maximum of thirty days and at a
ten meter precision level it can locate all devices to a room level in
under thirty seconds with an accuracy level of ninety nine percent.

23
It comes with an Application Programming Interface (API).
http://www.trapezenetworks.com/file.cfm?content=443&pageId=84&tagId=111
38
5
Lean Six Sigma - Work Study
Lean Six Sigma is the collective term given to the parsing of the Lean
Methodology and the Six Sigma methodology. The term Lean is used to
describe process of reviewing work methods to improve standards, increase
productivity and make better use of resources. It involves reviewing the
activity and removing the waste in the process by removing unnecessary or
non value adding work. Arranging or adding equipment to make the activity
easier or take less time to complete. The Six Sigma term is used to describe
the process of applying statistical analysis on data to devise solutions that will
reduce the causes of variation and defects.
In a lot of cases improvements can be made to the time taken to conduct a
task and waste removed without the additional cost of new equipment to the
business by simply rearranging the process sequence steps. The total time
taken to do a task, typically measured in ‘man hours’ or ‘machine hours’, is a
function of the actual time to do the task plus additional time taken caused by
poor design of the product, materials, manufacturing processes, human
intervention reasons and work practices.
It could be envisaged that Wi-Fi location technology will have little impact on
the design of the product or the type of materials used however it could have
a significant impact on improving the manufacturing processes, human
intervention reasons and work practices. By analysing the movements and
non-movements of people, equipment, raw materials and finished product in
the manufacturing process, it could be possible to discover the actual sources
of waste.
Waste could be caused by improper utilisation of the available space,
incorrect layout, wasted movements of raw materials or finished product,
incorrect sequences of work, cost of having excess inventory to cover waste
in earlier or later steps. Non-movements in the process could highlight
bottlenecks or broken down equipment, Reasons of waste due to human
39
action include those working at a slower pace, due to their capability, training
or other issues. Some recent examples of the use of where Wi-Fi and Lean
Six Sigma methodologies have been used together include.
5.1 Aeroscout and IMEC Technologies
Aeroscout and IMEC Technologies developed and implemented a parts
replacement system using WiFi-enabled Active RFID technology for Thermo
King Corporation. The system enabled the implementation of Lean Six Sigma
Methodologies, known as Kanban, so that when components used in the
process reach a predetermined level a worker just activates a button on a WiFi tag attached to the parts bin and more parts will be ordered to refill the
bin.24 25
5.2 Ekahau and Polycom
Developed a system where workers carry a Polycom voice over Wi-Fi (VoWiFi) telephone equipped with an Ekahau tag, this allows them to receive
production information for their particular location. Another example where
they use this hardware in industry is when a worker goes to a particular area
in the facility that has special safety equipment requirements then they will get
a text message to the telephone to remind them of the correct safety
equipment to be worn for that particular area.26
5.3 Ekahau & Rautakesko
Ekahau developed a system in conjunction with the retailer Rautakesko to
track shopper’s movements around their store. The system works by
shoppers voluntarily taking a Wi-Fi tag when they enter the store which they
carry with them as they go around the store. Later the store can analyse the
24
http://www.sixthsigma.com/2009/02/flexible-e-kanban-manufacturing.htm
25
http://www.aeroscout.com/content/news-and-events/press-releases/thermoking-170209/thermo-king-
improves-manufacturing-operatio
26
http://www.wi-fiplanet.com/news/article.php/3707806
40
data to see in which areas the shoppers are going to, or spending the most
and adjust their product arrangements accordingly. Figure 21 shows a heatmap produced by the system. 27
Figure 21 A heat map from the Ekahau / Rautakesko system
5.4 Aeroscout and Mine Site Technologies
Aeroscout and Mine Site Technologies have developed various systems for
the mining industry to track people and equipment in a mining environment to
improve productivity and safety by the better management of equipment and
people through Wi-Fi tracking to know exactly where they are. The tags can
be incorporated into the miners helmet light.28
5.5 Product flow analysis
Product flow analysis is a tool used in the Lean methodology to provide a
thorough understanding of the waste associated with a product as it traverses
a facility. This involves reducing and eliminating non value adding steps and
optimising the value adding steps through the use of practical, graphical, and
27
http://www.wi-fiplanet.com/news/article.php/3788656
28
http://www.minesite.com.au/wi_fi_rfid_tracking_solutionsc
41
analytical type tools to make it easier to understand the product flow and
potential improvements.
In the real work a person or product is followed by an auditor who literally will
attach them selves to that person or object and follow and record their every
movement or lack of movement and record all the information on a various
data collection sheets. One such sheet is the point to point diagram shown in
Figure 22. The circles represent doing a task and the lines represent
movement from one area to another.
In Figure 22 it is quite apparent that there is a lot of wasted time for the
person moving between the bench area and the oven area because these two
pieces of equipment are far apart and the waste comes from the fact they are
used quite a lot. It would be better if the equipment was rearranged so that
these two pieces of equipment were much closer together and some of the
steps consolidated.
AREA NAME: BEFORE - Carrier Assembly - Ball Bearings
SUPERVISOR:
PREPARED BY:
DATE:
NOTE: Depict rough scale of equipment layout; and, draw a point to point diagram of the complete product flow
40
35
OVEN
33
31
B en ch
21
P ress
19
23
Tool
B ox
26
24
22
14
39
3018
13
42
V ice
28
41
36
8
2
12
T ra sh
4
9
16 20
34
44
6
10
38
32
P art 1 5
B ox 17
43
29
37
27
25
3
1
5
7
11
P arts R ack
Figure 22: Lean Six Sigma Point to Point Diagram
Figure 23 shows the same process as Figure 22 after the product flow
analysis component of the Lean methodology has been applied.
In this
instance some steps have been consolidated, reduced from forty two to
twenty eight.
42
2
3
4
5
6
7
8
9
11
14
17
20
23
10
12
15
18
21
24
13
16
19
22
25
26
Press
Oven
Press
Broach
1
27
28
Figure 23: Point to Point after improvements
It is areas such as this that the proposed application could be used to
generate the data automatically without the need for a person to watch and
record the person or item being followed through the and record all the data
manually.
43
6
Requirements Specification and Analysis
This chapter will specify the problem; list the system objectives, the chosen
design methodology, specification of the functional, non-functional, software
and hardware requirements.
6.1
Problem Specification
In industry today companies are under a lot of pressure to be more efficient,
reduce costs and remove defects, errors and waste from their work practices.
Some of the methodologies that they can use to be more efficient are known
‘Six Sigma’ and ‘Lean Manufacturing’.
Six Sigma black belts’ and ‘lean
practitioners’ are people who are specially trained experts in these
methodologies and who will lead teams to improve the work practices.
A
prototype system will be developed within the University of Ulster at Magee to
test the feasibility of using it in a real life industrial or other scenario by these
experts so that they can track the movements of people, equipment or product
through a process to see where the inefficiencies or sources of waste are.
Today this work would typically have to be done manually by the expert
observing and recording all the necessary information by hand. Implementing
a location determination and tracking system using Wi-Fi in this scenario is
well suited any where there is a Wi-Fi signal so indoors or outdoors and utilise
the existing company WLAN network and requiring the installation of the
Trapeze LA200 device.
6.2
Objectives of System
The objective of this project is to develop a system that demonstrates the use
of a WLAN to determine the location of Wi-Fi tagged people, equipment or
product. The system will use the Trapeze Networks LA200 system to monitor
the Wi-Fi tags in a room or area in a building on a floor by floor basis as
required. The LA200 system can store location data for each tag in its
monitored area in an internal database for the previous thirty days. The
software for the new application will create a graphical user interface, (GUI),
to provide analysis charts on the movements this will be done by extracting
44
the data from the LA200 database using the LA200 Application Programming
Interface (API) using code written in Perl, Ruby or Python. The data will then
be imported into Microsoft Excel for analysis and charting and then imported
into the GUI for use by the user. The application will run on any Windows XP
operating system, with service pack two or later installed. The user interface
will contain number of selectable options that will access the data from the
LA200 database and present the data in a graphical form to the black belt or a
lean practitioner.
6.3
Design Methodology
Two design methodologies were considered for this application namely
waterfall, and evolutionary development.
6.3.1 Waterfall Methodology
Figure 24: Traditional Waterfall Methodology 29
With Waterfall methodology a rigid, linear and sequential schedule is followed
and the goals for each phase are clearly defined and must be completed
before moving onto the next one, after having moved on there is no turning
back. While the Waterfall methodology has a number of advantages around
project discipline it also some disadvantages and for this project they are that
29
http://www.maxwideman.com/papers/plc-models/1990s.htm
45
the waterfall methodology is typically intended for large projects which this
project is clearly not and more importantly the methodology does not have the
ability to easily handle major change or upgrades late in the process which
are envisaged in this system.
6.3.2 Evolutionary development
The evolutionary development model is geared towards small to medium
sized projects and uses a concept of developing an initial system showing it to
the end-user and upgrading it with their feedback. While this may be an
advantage for the end-user in that they get what they want however the
disadvantage for the developer is that this methodology tends to result in
additional cost and poorly structured systems.
Figure 25: Evolutionary Development Model
6.3.3 Design Methodology Selection
The chosen methodology for this project will be the evolutionary development
model because this suits this new technology so that as prototypes are
developed they can be either further improved on or if aspects of the new
technology is prove to be unworkable then they can be rejected. However an
awareness of the disadvantages of this methodology, cited earlier, by those
involved in the project will help to ensure that the project is not totally
susceptible them.
46
6.4
Requirements Specification
The requirements for this project are split into two distinct areas: functional
requirements and non-functional requirements. The software and hardware
requirements are also listed in order that the full functionality can be
successfully implemented.
6.4.1 Functional Requirements
The functional requirements are further broken down into two groups namely
user requirements and system requirements.
6.4.1.1 User
After starting the program, the user should be able to:

Quit the program;

Access the menu screen;

Select the data that they require from the database;

Report the data in a format that they desire;

Export the data to Microsoft Excel – if desired;

Graph the data on the GUI;

View the software help at any time;
6.4.1.2 System
The LA200 provides and stores all the location data.
The system should:

Have a permanent network and intranet connection;

Have access to the LA200 and Dashboard;

Have fully working GUI for the user;

Run on any recent computer using Windows XP SP2 operating system;

Access the location data provided by the LA200 system;
6.4.2 Non-Functional Requirements
47

Accessibility – The software should be easy to use with little training or
experience.

Time Constraint – See project Gantt chart attachment A and the
required project completion date is 28th April 2009;

Reliability – The system work all the time and provide a means to
handle errors with little or no input from the user. The data provided by
the system should be validated and verified were possible;

Performance – The system should be able to carry out each task
requested by the user as quickly as possible;

Extensibility – The system should be developed with future upgrades
and additional functionality being added at a later date;

Maintainability – The program coding should be well documented and
laid out particularly to facilitate
future upgrades and additional
functionality being added at a later date;

Scalability – The system should be able to provide data for the current
maximum number of tags presently two thousand for a period of thirty
days in what ever format the user decides;

Efficiency – The system should operate with the minimum adequate
resource levels to that ensure it performs at a level acceptable to the
user;

HCI
standards
must
be
adhered
to.
6.4.3 Hardware Requirements

Wi-Fi network with 802.11a/b/g with installed Trapeze Networks
Location Appliance LA200.

Wi-Fi tags or supported Wi-Fi enabled devices such as laptops, PDA’s
and mobile phones.

IP addressing for all tracked devices.

Current specification Wi-Fi equipped Laptop with Windows XP SP2 will
be required to do fingerprinting.

Computer running Windows XP SP2 and with a network connection to
access the LA200 appliance.
48
6.4.4 Software Requirements

Latest version of the Java Runtime Environment (JRE)

Trapeze Networks Dashboard

Trapeze Networks webpage

Perl, Ruby, Python or Soap programming systems (as required)

Visual Studio 2005

Microsoft Excel 2003

Custom made application
6.4.5 Development Languages
While the LA200 Dashboard supplied by Trapeze is written in Java, the
company provide and API that can utilise various programming languages to
communicate with the LA200 and its database. For the main user GUI it was
decided to use Visual Basic 2005.
6.5
User Interface
There will be three main user interfaces that will need to be designed the first
will give the user the option to query the LA200 database and retrieve the
information based on the selection or combination of selections they have
made from a series of drop down lists or pop-ups. After selecting the data the
user will be offered the second interface which is to export the data to a third
party application such as Microsoft Excel or finally a third interface to display
the data on the screen in the form of charts and reports showing the desired
data in a presentable format.
49
7
Design Phase
This chapter will discuss the detail of each component in the design phase of
the project.
7.1
Hardware Components
The hardware utilised in the implementation of the system include a
laptop/desktop computer, meeting the requirements listed in table 2, a
Trapeze Wi-Fi network equipped with a LA200 location appliance and Wi-Fi
capable transmitters such as tags, laptops or mobile phones.
Processor
Pentium III (or later)
Processor Speed
1GHz (or greater)
Memory
512MB RAM (or more)
Hard-drive
200MB free
Operating System
Windows XP with Service Pack 2
Table 2: Trapeze LA200 Dashboard hardware requirements
7.2
Software Components
The major software component, used to create the custom software
application was the “What You See Is What You Get” (WYSIWYG) Microsoft
Visual Studio 2005 developer tool using the .Net framework. This can be used
to create applications using Visual J#, Visual C++, Visual C# or Visual
Basic.Net. This system will be created with Visual Basic.Net and the Trapeze
supplied API.
7.3
Design Considerations
As the position of a tag at a particular time is known and recorded in the
Trapeze LA200 database and can be displayed in real-time using the supplied
Trapeze Dashboard application then there is no need to apply any design
consideration for the proposed system to re-create this functionality namely
the creation of a graphical representation of the various tags on a map. The
50
Trapeze Dashboard needs to be configured in advance so that it knows where
all the wireless access points are in the area and as it can determine a Wi-Fi
tags position to a room or locale level each of which should have the
recommended number of fingerprints carried out.
7.4
HCI Considerations
HCI standards must be adhered to.
o Consistency

User input, system output, form layouts and colour schemes
should be consistent across all screens;
o Minimise user input
o Feedback

Provide user feedback for all actions performed
o Error Prevention

Validate user inputs and disable inactive form controls.
o Aesthetics & User Expectation

Clear and uncluttered design with clear functionality for each
form.
7.5
System Architecture
Figures 26 and 27 give an overview of the system architecture and system
concept. The Custom made application which will be developed in this project
will utilise the Application Programming Interface (API) to communicate with
the LA200 and the database within the unit to obtain the appropriate
information on each of the tags or Wi-Fi devices that the LA200 had detected
and monitored on the WLAN network. Each individual person or piece of
equipment that is to be tracked needs to have a Wi-Fi device, otherwise they,
need to be given a Wi-Fi tag. The LA200 System calculates the position of the
Wi-Fi tag using the fingerprints that it has stored and records the position or
locale and the details of the access point that has detected the tag in the
LA200 database.
51
Trapeze
Custom
Dashboard App.
Made
Positioning model Creation,
Application
Maintenance and analysis
802.11a/b/g
Trapeze LA200
Wi-Fi network
Positioning Server
Trapeze
API
& Database
Clients
Trapeze Web
Dashboard
To LA200
Figure 26: Trapeze System Concept
WI-Fi
Access Point
Network
Person with
Tag or Wi-Fi
source
API
LA200
LA200
Database
On-Screen
Display
of new
application
Figure 27: Overview of the System
52
7.6
Stages of the System
This section will show the use case diagrams showing different user activities
and the system functionality.
7.6.1 User Use Case Diagram
Start Location
Awareness Application
Remove Person /
tag from List
Start Graphing User
«extends»
«uses»
Select User To
Graph
«extends»
User
Display /
Print
Reports / Graphs
Add Person / tag
to List
View Help
Exit Application
Figure 28: User Use Case Diagram
7.6.2 User Use-Case Diagram Descriptions
Use Case Name
Start Location awareness Application
Primary Actor
User
Data
None
Description
The user starts the application.
Preconditions
None
Post Conditions
The application loads.
Use Case Name
Select tag to track
Primary Actor
User
Data
None
Description
The user selects the tag to review in the system
Preconditions
The LA200 equipment is switched on.
Post Conditions
The Trapeze System starts tracking the Wi-Fi.
53
Use Case Name
Display reports
Primary Actor
User
Data
Location history records
Description
The user requests the reports to be displayed
Preconditions
The LA200 equipment is switched on.
There is at least one record for the appropriate tag.
Post Conditions
7.6.3
The appropriate report is displayed.
System Use Case Diagram
Interface with
«uses» LA-200 API Software
Start Location
Awareness Application
«uses»
Connect to LA-200
Database
Start Graphing User
«extends»
Remove Person /
tag from List
«uses»
Select User To
Graph
«extends»
System
Add Person / tag
to List
Show
Reports / Graphs
«uses»
«uses»
«uses»
Print Graphs
Exit Application
Get graphs
from Excel
Show Help Screen
Pass values
to Excel
Figure 29: System Use Case Diagram
54
7.7 Class Diagram
Figure 30 shows the classes, their properties and associations used in the
application.
MainForm
LA200 Database
-port : SerialPort
-TotalRange : double
+MainForm()
+MainForm_Load()
+connectLA200()
+disconnectLA200()
+sendUserToExcel(in message : string)
+selectUser()
+RemoveUser()
+refreshData()
+displayGraph()
+printGraph()
+mainForm_Quit()
+helpScreen()
1
1
Figure 30: Class Diagram
7.8
Activity Diagram
Figure 31 showing and activity diagram to show the process of selecting the
user MAC address to display.
Select user
Mac address
[ MAC Exists ]
[ No Wi-Fi
records ]
[ error
message ]
[ Wi-Fi
Records ]
Display
Report
Figure 31: Display report for selected user
55
7.9
Sequence Diagram
Figure 32 is a high level sequence diagram showing the messaging between
different components in the system.
Location Awareness
Application
API
Interface
LA200
Database
LA200
Network
All_tagData
btn_selectUserClick()
getSelectedUserData()
queryResult
queryResult
Figure 32: High-Level Sequence Diagram for the system
56
8
Implementation
This chapter describes the functionality of the system and the implementation
stage of the project.
8.1
Equipment Connection
The first step of the implementation is to ensure that the LA200 is installed
and working on the network, for the University of Ulster system at Magee, this
can be done quickly in two ways using either the GUI application or using the
Trapeze web interface. To log into the web interface at the following webpage
https://193.61.189.25/admin and entering the appropriate username and
password. (Not given in this report as they are a security item). The next step
was to establish this two-way communication between the various
components, namely the LA200 database, the LA200 API and the GUI
software.
Figure 33: Trapeze Web Dashboard Summary screen
8.2
Program GUI
The GUI software that processes data from the Trapeze LA200 database was
created using Microsoft Visual Studio 2005 and utilises the functions within
the Trapeze API. When the GUI software is loaded, the user is presented with
a splash screen followed three seconds later by the login screen. After the
user has logged in to the system the main GUI screen of the system is
displayed. These displays are shown in figures 34 to 36.
57
Figure 34: The application splash screen
As the prototype has the ability to track people this creates a “big brother”
issue and therefore would benefit from some sort of security system that
would have a username and password to gain access and restrict report to a
few “test” or special tags and the users own MAC address Therefore so it was
decided to add this feature to the scope, iterative and incremental approach
allows this unlike the waterfall methodology.
Figure 35: The login screen
58
4
1
2
3
Figure 36: The main GUI screen
The components of the main GUI screen are shown in Table 3.
No.
Component Function
1
Connect to the LA”00 through the API
2
Connect to a local replica of the database
3
Select the MAC address to be reviewed
4
Menu item used to access the File and Help screens.
Table 3: Summary of Main Screen Components Shown in Figure 36
59
From the main GUI the use then can elect to connect to the online database
in the LA200 as shown in Figure 37 or use a local replica copy of the
database stored on the machine as shown in Figure 38.
Figure 37: Connect LA200 online database
Figure 38: Connect to local replica
To begin the user selects a MAC address from the dropdown list. The
dropdown list, as shown in Figure 39, this has all the MAC addresses that are
available to provide a report for the user.
Figure 39: MAC address selection
After selecting the desired MAC address the user can then select from the
options to export the information to Excel or to display the graphs and reports
on the screen. Examples of the graphs are shown in Figures 40 and 41
60
Figure 40: Graph of places visited
Figure 41: Graph of routes taken
61
8.4
LA200 Database
The GUI utilises the database within the Trapeze LA200 device to access the
data a Trapeze supplied API is available as a data access layer to enable
simple read only data retrieval from the LA200 database. The LA200
database is quite complex and outside the remit of this project, however in the
Appendix A, a full list tables, their showing configuration and fields has been
provided.
62
9
Testing
This chapter describes the testing section of the project. This is important part
of the process as it ensures that the system performs satisfactorily and meets
all the users’ requirements as laid down in the requirements specification in
chapter six.
9.1
Unit Testing
By breaking the overall system down into units and testing each unit
thoroughly to ensure that it works correctly then if an error or problem arises
because it is a smaller component that is being tested it is theoretically easier
to find the problem and correct it. There are three main components in the
system which have been subjected to unit testing – The GUI connection
through the API, the API connection to the LA200 database and the GUI
reporting and graphing component.
9.1.1 Splash Screen & Login
When the GUI is started up the user should see a splash screen followed
three seconds later by a login screen. The Program was started up and the
login screen was displayed. A correct and incorrect user name and password
were entered and the appropriate messages were displayed, see Figure 42
and Figure 43.
Figure 42: Successful login confirmation
Figure 43: Unsuccessful login
63
9.1.1 LA200 System and network
The Trapeze LA200 equipment is central to the whole project and the
information it gives is only as good as the configuration and setup work done
when the system is installed. After the system has been set up to the
manufactures recommendations, this is an enormous task outside the remit of
this report. Testing of the setup can actually be done with one person using a
Wi-Fi enabled laptop connected to the network and running the Trapeze
Dashboard software, then as they walk around they can see themselves on
the Dashboard display and verify that all is correct with the configuration, if
errors are found then addition calibrations will have to be carried out in the
area.
Trapeze recommends the minimum number of fingerprints for any building:
Create one RF fingerprint for every 3,000 square feet
Create two additional RF fingerprints per entrance, one inside and one outside
Create four additional RF fingerprints outside the building.
Create four additional RF fingerprints outside the building at each compass point30
9.1.2 GUI to API component
This test will pass a value namely the MAC address to the API and ensure
that the API receives the value. Unfortunately even requesting help from the
Trapeze support staff we were unable to get this component to work
correctly,, so if the user tried this option they will get an error message as
shown in Figure 44. Therefore in this report all work will be done on a local
replica. This is not an issue for the user as a backup can be taken just before
use and this will give almost live data.
Figure 44: LA200 API connection error
30
Trapeze LA200 Deployment Guide Version 6.0
64
9.1.3 API to the LA200 & LA200 Database component
Having received the MAC address the API must now select all the rows of
data history relevant to that MAC address, and then pass these rows back to
the GUI. Unfortunately this is also failed as per section 9.1.2. However if the
system had worked correctly then the user would get a confirmation message
as shown in figure 45.
Figure 45: Successful connection to LA200 database
9.1.4 GUI to local replica database component
This test will test the ability to connect to local replica of database; a
successful connection displays a confirmation message as shown in Figure
46. If the file is not present then the user will get the message as shown in
Figure 47.
Figure 46: Successful connection to local replica
Figure 47: Unsuccessful connection to local replica
65
9.1.5 Reporting and Graphing Component
Having received the rows of data the system need to pass them into Microsoft
Excel where they can be manipulated into graphs and displayed for the user.
Figures 40 and 41 shown earlier in the report display typical results.
9.2
Integration Testing
This section describes the integration testing. When all the individual
components listed earlier have been tested successfully, then it is time to
move on and test if they all integrate seamlessly with each other.
A number of tests were conducted to ensure that the various components in
the system operate correctly together; these are listed in Table 4.
N
1
2
3
4
Predicted
Result
Actual Result
P/F
The splash, then
login then main
screen is
displayed.
The GUI starts
up, the splash
screen is
displayed then
the login in
screen is
displayed after
correct login
details entered
the main GUI is
displayed
Pass
The 3 tags are
there
The 3 tags are
there
Pass
The data is
available for
graphing and
reporting
API component
failed only able
to use local
replica
Partial
Pass
The correct data
and graph is shown
Graphs are
displayed
Pass
Test Case
The GUI starts up
The three test MAC addresses
from the Ekahau tags are available
in the dropdown list to select.
The selected tag is passed to the
API and the appropriate data is
selected from the LA200 database,
and passed back to the GUI for
reporting.
The GUI displays the report and
graph
Table 4: Integration Testing
66
9.3
Performance Testing
In this section the systems performance against the non-functional
requirements listed in the requirements analysis subsection, 6.4.2, are
checked.

Accessibility – The software is easy to use even with little or no training
or experience. Only a few mouse clicks are required.

Time Constraint – Project completed in time for required closing date of
28th April 2009;

Reliability – Coding has been completed to handle errors and the data
provided by the system should be validated and verified were possible;

Performance – The system can quickly carry out each task requested
by the user.

Extensibility – The system was developed using the evolutionary model
and is well suited for adding upgrades and additional functionality at a
later date.

Maintainability – The program coding is clear, structured and with
comments and documentation.

Scalability – The system can provide data for the current LA200 limit of
a maximum number of two thousand tags for a period of thirty days in
what ever format the user decides;

Efficiency – The system does not use an exorbitant amount of memory
or CPU.

HCI guidelines have been followed.
67
10
Evaluation
The evaluation stage is a very important phase in a project as it reviews the
success of the final product against the desired outcomes that were specified
in the requirements section. This chapter checks the prototype system
developed in this project against the functional requirements from Chapter 6
and determines if the required functionality is present and acceptable.
Table 5 lists the user’s functional requirements, and whether each
requirement was satisfied.
Requirement
Satisfied?
Access the menu screen
Yes
Select the data that they require from the
Yes by doing backup from
database
server
Report the data in a format that they desire
Export the data to Microsoft Excel – if required
Yes
File available in local replica
Plot the data on the GUI
Yes
Quit the program at any time
Yes
View the software help at any time
Yes
Table 5: Evaluation against User Functional Requirements
Table 6 lists the system function requirements, and whether each requirement
was satisfied.
Requirement
Satisfied?
Run on any desktop / laptop computer with Windows XP SP2
Yes
operating system;
Have a fully working GUI for the user
Partial
Have access to the LA200
Fail
Have a permanent network and intranet connection
Yes
Access the location data provided by the LA200 system
Fail
Table 6: Evaluation against System Functional Requirements
10.1 Database Component
68
The LA200 database is quite complex and a list of tables and field is included
in Appendix C, the access through the API was very difficult and even with
promises from the Trapeze engineer’s to supply program code not in the API
manual on how to manipulate the database easily was never forthcoming so
an XML extract was used as an interim measure, due to the time constraints
of the project.
10.2 Graphics
It was decided not to add graphics to the system showing the location of Wi-Fi
devices as this functionality is already available on the LA200 dashboard also
this project is working on developing a just prototype system and due to the
time constraints, and limitations in the graphics capability of the Visual Basic
.NET Framework it was decided that this level of functionality was too
complex and outside this projects scope.
10.3 Calibration
Calibration was performed during the implementation of the LA200 system
and again by the Trapeze engineers in February 2009, however they
concentrated on a relatively small area, namely a single floor in a building in
comparison to the total area under Wi-Fi coverage at the University of Ulster
at Magee Campus.
To improve the accuracy you could give the floor plans for all the buildings in
the campus to the Trapeze engineers and let the choose the locations for all
the access points which could potentially mean moving every access point as
historically they were located in the centre of a room, however moving access
points is not really a cost effective option, it would be easier to add more
fingerprints this would give additional clarity especially if it was done at both
sides of every entrance and exit point.
10.4 Issues during development
69
This section records the issues during the development and that may impact
future work in this arena.
10.4.1 API issues
To connect to the LA200 with out being an expert in the designated API
languages of Soap and Perl proved to be very difficult and time consuming
task for the author with no success at the end. Emails were sent to vendor for
help with getting data using the API with little success. Upon review for this
project and doing the data analysis live data directly from the LA200 database
is functionality that was more a nice to have than a necessity especially when
an almost live database could be extracted from database.
10.4.2 Setup effort
One of the selling points of the LA200 by the manufacture is the minimal
additional hardware and setup required to get it up and running, while this is
true it doe not allow for the accuracy of results. So to achieve high levels of
data accuracy would require a lot of extra effort to increase the number of
fingerprints per locale and maybe even total redesign and implementation of
access points.
10.4.3 TAG testing
A test was done with two tags from different manufactures carried on the
same route around the MS building. This test was done for comparability of
results however the results from the system were totally different. This creates
another issue for measurement error
10.4.4 Stationary - Additional records
When in a stationary location the system had a propensity to switch between
access points, so that when reviewing the data there were many nonmovement outside the locale records just an access point change, this
creates an added level of complexity when analysing the data namely a
record but with no movement as such.
70
10.4.5 Reporting of wrong location
Errors on the location reporting, a demonstrated example was during the test
of the three users, the system was reporting the tag in locale MS129 when
they were actually inside locale MS130, even though previously tit was
reporting correctly. Investigation showed that the user had moved to a slight
different location at their desk. As this was the test case and was being
monitored it resulted in the manual correction of records namely having to
rename the records from MS129 to MS130. This would not be acceptable or
sustainable as generally through out the test required a lot of manual effort to
“clean up the data”. to use the data to carry out significant statistical analysis.
If this had not been done then there would have been a lot of false
interpretations made.
10.4.6 WLAN coverage / Inactive result
The system gives an inactive fault when it cannot detect the tag or device
typically this occurred on the gap between buildings not under Wi-Fi coverage
for example between buildings MS & MG. While this is a minor point it still
needs to be either resolved or kept in mind.
10.5 Future Work
The system was envisaged as a prototype from which to build upon in its
niche market, as a lot of the typically functionality required in allocation
awareness application is already available in the LA200 dashboard or other
software from Trapeze such as Smart-Pass®.
However while this was envisaged as a niche market for use by those looking
to analyse movement of people, equipment, product or inventory such as
Lean Practitioners or Six Sigma Black belts then there is a lot of scope to
improve the system and utilise the full capabilities of the information that the
LA200 can prove, especially if the system could provide heat maps Figure 21
and point to point diagrams Figure 22.
71
Any work to improve or rearrange & improve the configuration of the wireless
network would be a big advantage to the calibration of the LA200 which would
provide greater accuracy
To utilise the information in the LA200 database fully is quite a complex task
and requires an in depth knowledge of Perl, Ruby and Soap scripting
language so to allow the system to be modified to extract live data into an
algorithm that would plot “point to point” diagrams on a map showing the
historical movements of people and equipment.
72
11
Conclusion
While a number of the more familiar location determination technologies have
limitations when it comes to working inside buildings, at a small area level of
resolution, fairly high accuracy rate without the need for substantial capital
investment the recent advancements with the Trapeze LA200 WLAN location
awareness system have allowed Wi-Fi technology to provide accurate live
and historical positional information. This project aimed to investigate the use
of the LA200 to provide information for an application for use by Lean
Practitioners or Six Sigma Black Belts to monitor the movements of people,
equipment, products or inventory in an area that was covered by a WLAN and
produce reports and graphs for them to use.
Initial requirements set out during analysis phase called for a GUI program,
created with Visual Studio 2005 that would interface with the LA200 database
and API and provide location data for the user’s selected MAC address. The
GUI program would then take the information and produce charts and a report
on the movements.
The specifics of the programs were defined in the design section, these
included diagrams showing the functionality of components, along with
software, hardware and HCI requirements. The design information was then
taken implemented into an application created to meet these requirements.
Before being released for general use and to validate and verify that
everything was as it should be testing was carried out in various forms namely
unit tests, functional tests, integration tests and performance tests. To
conclude, this project has been successful in delivering a prototype that can
use the information from the Trapeze LA200 system to monitor, chart and
report the movements of Wi-Fi tags around an area. However, it has also
shown that accuracy is not perfect and to achieve a high level may require
additional capital expenditure to purchase additional access points not
forgetting the setup time required to accurately verify the calibrations.
73
References
BAHL, P., PADMANABHAN, V. (2000) ‘RADAR: An In-Building RF-Based
User Location and Tracking System’ Proceedings of IEEE INFOCOM, pp.
775-784 (Tel-Aviv, Israel). [Available Online at:
http://research.microsoft.com/enus/um/people/padmanab/papers/infocom2000.pdf
BENFORD,
S.
TechWatch.
(2005).
‘Future
Bristol:
Location-Based
JISC.
Experiences’.
[Available
online
JISC
at:
http://www.jisc.ac.uk/uploaded_documents/jisctsw_05_01.pdf]
BROWN, B., MacCOLL, I., CHALMERS, M., GALANI, A., RANDELL, C.,
STEED, A. (2003). ‘Lessons from the Lighthouse: Collaboration in a shared
mixed reality system’. In: Cockton, G., Korhonen, P. 2003. CHI '03:
Proceedings of the conference on human factors in computing systems. New
York,
NY:
ACM
Press,
pp.
577-584.
[Available
Online
at:
http://www.equator.ac.uk/var/uploads/Brown&MacColl2003.pdf]
Cambridge Consultants (2006), Zonal Location and Asset Tracking with
ZigBee Technology (using RSSI) – [Available Online at:
http://www.zigbee.org/imwp/idms/popups/pop_download.asp?contentID=9567
]
KATO, H., BILLINGHURST, M., POUPYREV, I., IMAMOTO, K., TACHIBANA,
K. (2000). ‘Virtual Object Manipulation on a Table-Top AR Environment’. In:
KLINKER, G., BEHRINGER, R. (Eds). 2002. Proceedings of the IEEE and
ACM International Symposium on Augmented Reality. IEEE Computer
Society,
pp.
111–119.
[Available
http://www.hitl.washington.edu/artoolkit/Papers/isar2000.pdf]
74
Online
at:
KRUMM, J., CERMAK, G. & HORVITZ, E. (2003) ‘RightSPOT: A Novel Sense
of Location for a Smart Personal Object’, Paper presented at the UbiComp
2003. [Available Online at:
http://research.microsoft.com/~jckrumm/Publications%202003/rightSPOT%20
publish.pdf]
LAMARCA, A. et al. (2005) ‘PlaceLab: Device Positioning Using Radio
Beacons in the Wild’. In Proceedings of Pervasive 2005, pp. 116-133.
[Available
Online
at:
http://PlaceLab.org/publications/pubs/pervasive-
PlaceLab-2005-final.pdf]
McMullan C., Cahill D., Fry D. (2007) Place Lab Geo-positioning
System [Available online at:
http://ntrg.cs.tcd.ie/undergrad/4ba2.05/group1/index.html
Myerson, J. (2006), RFID In the Supply Chain, CRC Press, ISBN 0849330181
Pellerin, C. (2006), United States Updates Global Positioning System
Technology - Available online at:
http://usinfo.state.gov/xarchives/display.html?p=washfileenglish&y=2006&m=February&x=20060203125928lcnirellep0.5061609
RFID-Radar.com (2007) – [Available Online at: http://www.rfid-radar.com ]
RANDELL, C., MULLER, H. (2001). ‘Low Cost Indoor Positioning System’. In:
ABOWD, G. (Ed). 2001. UbiComp '01: Proceedings of the 3rd international
conference on Ubiquitous Computing. Springer-Verlag, pp. 42-48. [Available
Online at: http://www.cs.bris.ac.uk/Publications/Papers/1000573.pdf]
75
Appendix A – LA200 database schema
name2
name3
primaryKey
required
type
size
ACL
ACL_ID
TRUE
TRUE
VARCHAR
256
ACL
ENTITYID
FALSE
FALSE
VARCHAR
256
ACL
ACLMODE
FALSE
FALSE
VARCHAR
256
ACL
ACLTYPE
FALSE
FALSE
VARCHAR
256
ACLENTRIES
ACLENTRY_ID
TRUE
TRUE
VARCHAR
256
ACLENTRIES
NAME
FALSE
FALSE
VARCHAR
256
ACLENTRIES
PERMISSION
FALSE
FALSE
VARCHAR
256
ACLENTRIES
ACL_ID
FALSE
FALSE
VARCHAR
256
ADJACENCIES
SIGNATURE
FALSE
TRUE
VARCHAR
256
ADJACENCIES
ADJACENTSIGNATURE
FALSE
TRUE
VARCHAR
256
ALERTCONFIGS
UUID
TRUE
TRUE
VARCHAR
256
ALERTCONFIGS
ALERTTYPEID
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
VARIANTID
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
ALERTTYPENAME
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
LOCUUID
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
NAME
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
PRIORITY
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
DESCRIPTION
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
KEYWORDS
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
SEVERITY
FALSE
FALSE
VARCHAR
256
ALERTCONFIGS
ISACTIVE
FALSE
TRUE
SMALLINT
5
ALERTCONFIGS
PARAMETERS
FALSE
FALSE
LONGVARCHAR
32700
AREAS
UNIQUEID
TRUE
TRUE
BIGINT
19
AREAS
ELEMENTNAME
FALSE
FALSE
VARCHAR
255
AREAS
ELEMENTTYPE
FALSE
FALSE
INTEGER
10
AREAS
X
FALSE
TRUE
DOUBLE
52
AREAS
Y
FALSE
TRUE
DOUBLE
52
AREAS
HEIGHT
FALSE
TRUE
DOUBLE
52
AREAS
WIDTH
FALSE
TRUE
DOUBLE
52
CLUSTER_NODES
NODEID
TRUE
TRUE
VARCHAR
256
CLUSTER_NODES
NAME
FALSE
FALSE
VARCHAR
256
CLUSTER_NODES
DESCRIPTION
FALSE
FALSE
VARCHAR
256
CLUSTER_NODES
PROFILEID
FALSE
FALSE
VARCHAR
256
CLUSTER_NODES
ADDRESS
FALSE
FALSE
VARCHAR
256
CLUSTER_NODES
FAILOVER_ID
FALSE
FALSE
VARCHAR
256
CLUSTER_NODES
CAPACITY
FALSE
TRUE
INTEGER
10
CLUSTER_NODES
NODE_ENABLED
FALSE
TRUE
SMALLINT
5
CLUSTER_NODES
LOADBALANCE_ENABLED
FALSE
TRUE
SMALLINT
5
CONDITIONS
UUID
TRUE
TRUE
VARCHAR
256
CONDITIONS
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
76
CONDITIONS
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
CONDITIONS
ACKTIME
FALSE
FALSE
TIMESTAMP
26,6
CONDITIONS
ALERTID
FALSE
FALSE
VARCHAR
256
CONDITIONS
VARIANTID
FALSE
FALSE
VARCHAR
256
CONDITIONS
CONFIGID
FALSE
FALSE
VARCHAR
256
CONDITIONS
ALERTNAME
FALSE
FALSE
VARCHAR
256
CONDITIONS
PRIORITY
FALSE
FALSE
VARCHAR
256
CONDITIONS
HIGHLOW
FALSE
TRUE
SMALLINT
5
CONDITIONS
CONDITIONCODE
FALSE
TRUE
INTEGER
10
CONDITIONS
PRIMARIES
FALSE
FALSE
LONGVARCHAR
32700
CONDITIONS
SECONDARIES
FALSE
FALSE
LONGVARCHAR
32700
CONDITIONS
TERTIARIES
FALSE
FALSE
LONGVARCHAR
32700
CONDITIONS
KEYWORDS
FALSE
FALSE
LONGVARCHAR
32700
DATATAPS
DATATAPID
TRUE
TRUE
VARCHAR
256
DATATAPS
NAME
FALSE
FALSE
VARCHAR
256
DATATAPS
OBSERVERNAME
FALSE
FALSE
VARCHAR
256
DATATAPS
DESCRIPTION
FALSE
FALSE
VARCHAR
256
DATATAPS
PROFILEID
FALSE
FALSE
VARCHAR
256
DATATAPS
ADDRESS
FALSE
FALSE
VARCHAR
256
DATATAPS
ENABLED
FALSE
TRUE
SMALLINT
5
DATATAPS
DEFAULTUSED
FALSE
TRUE
SMALLINT
5
DATATAPS
PASSWORD
FALSE
FALSE
VARCHAR
256
DATATAPS
SERVICE
FALSE
FALSE
VARCHAR
256
DATATAPS
CHANNELS
FALSE
FALSE
VARCHAR
256
DEVICES
DEVICE_ID
TRUE
TRUE
VARCHAR
256
DEVICES
LOCATION
FALSE
FALSE
VARCHAR
256
DEVICES
TYPE
FALSE
TRUE
INTEGER
10
DEVICES
ACTIVITY
FALSE
FALSE
INTEGER
10
DEVICES
DEVICEADDRESS
FALSE
TRUE
VARCHAR
250
DEVICES
INETADDRESS
FALSE
FALSE
VARCHAR
256
DEVICES
LASTSEEN
FALSE
TRUE
BIGINT
19
DEVICES
DEVICELABEL
FALSE
FALSE
VARCHAR
256
DEVICES
CHANNEL
FALSE
TRUE
INTEGER
10
DEVICES
SSID
FALSE
FALSE
VARCHAR
256
DEVICES
ENCRYPTION
FALSE
FALSE
VARCHAR
256
DEVICES
RXADDRESS
FALSE
FALSE
VARCHAR
256
DEVICES
DEVICEUSER
FALSE
FALSE
VARCHAR
256
DEVICES
ACCESSSTATUS
FALSE
FALSE
VARCHAR
256
DEVICES
SPOOFSTATUS
FALSE
FALSE
VARCHAR
256
DEVICES
LASTMOVE
FALSE
TRUE
BIGINT
19
DEVICES
SIGNATURE
FALSE
FALSE
VARCHAR
256
GEOMETRY
UNIQUEID
TRUE
TRUE
BIGINT
19
GEOMETRY
NAME
FALSE
FALSE
VARCHAR
255
GEOMETRY
SCALE
FALSE
TRUE
DOUBLE
52
GEOMETRY
BACKGROUND
FALSE
FALSE
VARCHAR
255
77
GEOMETRY
ORIGIN_UNIQUEID
FALSE
FALSE
BIGINT
19
GEOMETRY_AREAS
GEOMETRY_UNIQUEID
TRUE
TRUE
BIGINT
19
GEOMETRY_AREAS
AREAS_UNIQUEID
FALSE
TRUE
BIGINT
19
GEOMETRY_AREAS
AREA_IDX
TRUE
TRUE
INTEGER
10
GEOMETRY_POSITIONS
GEOMETRY_UNIQUEID
TRUE
TRUE
BIGINT
19
GEOMETRY_POSITIONS
POSITIONS_UNIQUEID
FALSE
TRUE
BIGINT
19
GEOMETRY_POSITIONS
POS_IDX
TRUE
TRUE
INTEGER
10
GROUPS
GROUP_ID
TRUE
TRUE
VARCHAR
256
GROUPS
NAME
FALSE
FALSE
VARCHAR
256
GROUPS
TYPE
FALSE
FALSE
VARCHAR
256
HIBERNATE_UNIQUE_KEY
NEXT_HI
FALSE
FALSE
INTEGER
10
HISTORYCONDITIONMAPPING
HISTORYID
FALSE
TRUE
VARCHAR
256
HISTORYCONDITIONMAPPING
CONDITIONID
FALSE
TRUE
VARCHAR
256
JMS_MESSAGES
MESSAGEID
TRUE
TRUE
INTEGER
10
JMS_MESSAGES
DESTINATION
TRUE
TRUE
VARCHAR
255
JMS_MESSAGES
TXID
FALSE
FALSE
INTEGER
10
JMS_MESSAGES
TXOP
FALSE
FALSE
CHAR
1
JMS_MESSAGES
MESSAGEBLOB
FALSE
FALSE
BLOB
1073741824
JMS_ROLES
ROLEID
TRUE
TRUE
VARCHAR
32
JMS_ROLES
USERID
TRUE
TRUE
VARCHAR
32
JMS_SUBSCRIPTIONS
CLIENTID
TRUE
TRUE
VARCHAR
128
JMS_SUBSCRIPTIONS
SUBNAME
TRUE
TRUE
VARCHAR
128
JMS_SUBSCRIPTIONS
TOPIC
FALSE
TRUE
VARCHAR
255
JMS_SUBSCRIPTIONS
SELECTOR
FALSE
FALSE
VARCHAR
255
JMS_TRANSACTIONS
TXID
TRUE
TRUE
INTEGER
10
JMS_USERS
USERID
TRUE
TRUE
VARCHAR
32
JMS_USERS
PASSWD
FALSE
TRUE
VARCHAR
32
JMS_USERS
CLIENTID
FALSE
FALSE
VARCHAR
128
LAYOUTS
LAYOUTID
TRUE
TRUE
VARCHAR
256
LAYOUTS
PROFILEID
FALSE
FALSE
VARCHAR
256
LAYOUTS
USERID
FALSE
FALSE
VARCHAR
256
LAYOUTS
GROUPID
FALSE
FALSE
VARCHAR
256
LAYOUTS
PERMISSIONS
FALSE
TRUE
INTEGER
10
LAYOUTS
LAYOUTNAME
FALSE
FALSE
VARCHAR
256
LAYOUTS
LAYOUTDATA
FALSE
FALSE
BLOB
2147483647
LICENSE
ID
TRUE
TRUE
BIGINT
19
LICENSE
LICENSEKEY
FALSE
FALSE
VARCHAR
255
LICENSE
ACTIVATIONDATE
FALSE
FALSE
DATE
10
LINKAGES
LINKID
TRUE
TRUE
VARCHAR
256
LINKAGES
SOURCESTRING
FALSE
FALSE
VARCHAR
256
LINKAGES
LINKVALUE
FALSE
TRUE
DOUBLE
52
LINKAGES
LINKTYPE
FALSE
FALSE
VARCHAR
256
LOCALES
LOCATIONID
TRUE
TRUE
VARCHAR
256
LOCALES
LOCATIONNAME
FALSE
FALSE
VARCHAR
256
LOCALES
LOCATIONDESCRIPTION
FALSE
FALSE
VARCHAR
256
78
LOCALES
PROFILEID
FALSE
FALSE
VARCHAR
256
LOCALES
ZONEID
FALSE
FALSE
VARCHAR
256
LOGACTIVITIES
UUID
TRUE
TRUE
VARCHAR
256
LOGACTIVITIES
HISTORYID
FALSE
FALSE
VARCHAR
256
LOGACTIVITIES
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGACTIVITIES
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGACTIVITIES
ACTIVITY
FALSE
FALSE
VARCHAR
256
LOGASSOCIATIONS
UUID
TRUE
TRUE
VARCHAR
256
LOGASSOCIATIONS
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGASSOCIATIONS
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGASSOCIATIONS
APHISTORYID
FALSE
FALSE
VARCHAR
256
LOGASSOCIATIONS
CLIENTHISTORYID
FALSE
FALSE
VARCHAR
256
LOGHISTORIES
UUID
TRUE
TRUE
VARCHAR
256
LOGHISTORIES
ENTITYID
FALSE
FALSE
VARCHAR
256
LOGHISTORIES
TYPE
FALSE
FALSE
VARCHAR
256
LOGHISTORIES
MACADDRESS
FALSE
FALSE
VARCHAR
256
LOGIPADDRESSES
UUID
TRUE
TRUE
VARCHAR
256
LOGIPADDRESSES
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGIPADDRESSES
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGIPADDRESSES
IPADDRESS
FALSE
FALSE
VARCHAR
256
LOGIPADDRESSES
HISTORYID
FALSE
FALSE
VARCHAR
256
LOGLABELS
UUID
TRUE
TRUE
VARCHAR
256
LOGLABELS
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGLABELS
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGLABELS
LABEL
FALSE
FALSE
VARCHAR
256
LOGLABELS
HISTORYID
FALSE
FALSE
VARCHAR
256
LOGLOCATIONS
UUID
TRUE
TRUE
VARCHAR
256
LOGLOCATIONS
HISTORYID
FALSE
FALSE
VARCHAR
256
LOGLOCATIONS
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGLOCATIONS
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGLOCATIONS
LOCATIONID
FALSE
FALSE
VARCHAR
256
LOGLOCATIONS
LOCATIONNAME
FALSE
FALSE
VARCHAR
256
LOGPOPULATIONS
UUID
TRUE
TRUE
VARCHAR
256
LOGPOPULATIONS
HISTORYID
FALSE
FALSE
VARCHAR
256
LOGPOPULATIONS
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGPOPULATIONS
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGPOPULATIONS
ACTIVITY
FALSE
TRUE
INTEGER
10
LOGPOPULATIONS
ACTIVE_APS
FALSE
TRUE
INTEGER
10
LOGPOPULATIONS
ACTIVE_STATIONS
FALSE
TRUE
INTEGER
10
LOGPOPULATIONS
ACTIVE_ADHOCS
FALSE
TRUE
INTEGER
10
LOGSSIDS
UUID
TRUE
TRUE
VARCHAR
256
LOGSSIDS
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGSSIDS
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGSSIDS
SSID
FALSE
FALSE
VARCHAR
256
LOGSSIDS
HISTORYID
FALSE
FALSE
VARCHAR
256
79
LOGTYPES
UUID
TRUE
TRUE
VARCHAR
256
LOGTYPES
STARTTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGTYPES
ENDTIME
FALSE
FALSE
TIMESTAMP
26,6
LOGTYPES
DEVICETYPE
FALSE
FALSE
VARCHAR
256
LOGTYPES
HISTORYID
FALSE
FALSE
VARCHAR
256
POSITIONS
UNIQUEID
TRUE
TRUE
BIGINT
19
POSITIONS
ELEMENTNAME
FALSE
FALSE
VARCHAR
255
POSITIONS
ELEMENTTYPE
FALSE
FALSE
INTEGER
10
POSITIONS
X
FALSE
TRUE
DOUBLE
52
POSITIONS
Y
FALSE
TRUE
DOUBLE
52
PRINCIPAL_GROUP_MAPPING
PRINCIPAL_ID_FK
FALSE
TRUE
VARCHAR
256
PRINCIPAL_GROUP_MAPPING
GROUP_ID_FK
FALSE
TRUE
VARCHAR
256
PRINCIPALS
PRINCIPAL_ID
TRUE
TRUE
VARCHAR
256
PRINCIPALS
NAME
FALSE
FALSE
VARCHAR
256
PRINCIPALS
TYPE
FALSE
FALSE
VARCHAR
256
PROFILES
PROFILEID
TRUE
TRUE
VARCHAR
256
PROFILES
PROFILENAME
FALSE
FALSE
VARCHAR
256
PROFILES
PROFILEDESCRIPTION
FALSE
FALSE
VARCHAR
256
PROFILES
PROFILEACTIVE
FALSE
TRUE
SMALLINT
5
PROPERTIES
ENTITY
FALSE
TRUE
VARCHAR
256
PROPERTIES
RELATEDENTITY
FALSE
TRUE
VARCHAR
256
PROPERTYSET
PROPERTY_SET_ID
TRUE
TRUE
VARCHAR
256
PROPERTYSET
ENTITYID
FALSE
FALSE
VARCHAR
256
PROPERTYSET
TYPE
FALSE
FALSE
VARCHAR
256
PROPERTYSET
PROPERTYKEY
FALSE
FALSE
VARCHAR
256
PROPERTYSET
DATASTRING
FALSE
FALSE
VARCHAR
256
PROPERTYSET
DATABOOL
FALSE
FALSE
SMALLINT
5
RELATIONS
RELATEDENTITY
FALSE
TRUE
VARCHAR
256
RELATIONS
ENTITY
FALSE
TRUE
VARCHAR
256
SAMPLEDATA
SOURCESTRING
FALSE
FALSE
VARCHAR
256
SAMPLEDATA
SAMPLEVALUE
FALSE
TRUE
DOUBLE
52
SAMPLEDATA
SAMPLEDATAID
TRUE
TRUE
VARCHAR
256
SAMPLEDATA
SAMPLEID
FALSE
FALSE
VARCHAR
256
SAMPLES
SAMPLENUMBER
FALSE
TRUE
INTEGER
10
SAMPLES
SAMPLEID
TRUE
TRUE
VARCHAR
256
SAMPLES
SIGNATUREID
FALSE
FALSE
VARCHAR
256
SCHEDULETASKS
UUID
TRUE
TRUE
VARCHAR
256
SCHEDULETASKS
IDENTIFIER
FALSE
FALSE
VARCHAR
256
SCHEDULETASKS
PROPERTIES
FALSE
FALSE
BLOB
2147483647
SCHEDULETASKS
CALLBACKVALUE
FALSE
FALSE
VARCHAR
256
SCHEDULETASKS
TIMESPEC
FALSE
TRUE
BIGINT
19
SIGNATURES
SIGNATUREID
TRUE
TRUE
VARCHAR
256
SIGNATURES
SIGNATURENAME
FALSE
FALSE
VARCHAR
256
SIGNATURES
SIGNATUREDESCRIPTION
FALSE
FALSE
VARCHAR
256
SIGNATURES
SIGNATURETYPE
FALSE
FALSE
VARCHAR
256
80
SIGNATURES
PROFILEID
FALSE
FALSE
VARCHAR
256
SIGTRANSLATION
LOCATION
FALSE
TRUE
VARCHAR
256
SIGTRANSLATION
SIGNATURE
FALSE
TRUE
VARCHAR
256
SNIPERS
SNIPERID
TRUE
TRUE
VARCHAR
256
SNIPERS
NAME
FALSE
FALSE
VARCHAR
256
SNIPERS
DESCRIPTION
FALSE
FALSE
VARCHAR
256
SNIPERS
PROFILEID
FALSE
FALSE
VARCHAR
256
SNIPERS
ADDRESS
FALSE
FALSE
VARCHAR
256
SNIPERS
ENABLED
FALSE
TRUE
SMALLINT
5
SNIPERS
DEFAULTUSED
FALSE
TRUE
SMALLINT
5
SNIPERS
PASSWORD
FALSE
FALSE
VARCHAR
256
SNIPERS
SERVICE
FALSE
FALSE
VARCHAR
256
TIMERS
TIMERID
TRUE
TRUE
VARCHAR
80
TIMERS
TARGETID
TRUE
TRUE
VARCHAR
250
TIMERS
INITIALDATE
FALSE
TRUE
TIMESTAMP
26,6
TIMERS
TIMERINTERVAL
FALSE
FALSE
BIGINT
19
TIMERS
INSTANCEPK
FALSE
FALSE
BLOB
2147483647
TIMERS
INFO
FALSE
FALSE
BLOB
2147483647
VERSION61
UNIQUEID
TRUE
TRUE
BIGINT
19
VERSION61
INFO
TRUE
TRUE
VARCHAR
256
VIEWS
VIEWID
TRUE
TRUE
VARCHAR
256
VIEWS
PROFILEID
FALSE
FALSE
VARCHAR
256
VIEWS
USERID
FALSE
FALSE
VARCHAR
256
VIEWS
GROUPID
FALSE
FALSE
VARCHAR
256
VIEWS
PERMISSIONS
FALSE
TRUE
INTEGER
10
VIEWS
VIEWNAME
FALSE
FALSE
VARCHAR
256
VIEWS
LAYOUTNAME
FALSE
FALSE
VARCHAR
256
VIEWS
VIEWDATA
FALSE
FALSE
BLOB
2147483647
WORKSPACE_APS
AP_ID
TRUE
TRUE
VARCHAR
256
WORKSPACE_APS
DEVICEADDRESS
FALSE
FALSE
VARCHAR
256
WORKSPACE_APS
INETADDRESS
FALSE
FALSE
VARCHAR
256
WORKSPACE_APS
APNAME
FALSE
FALSE
VARCHAR
256
WORKSPACE_APS
APMODEL
FALSE
FALSE
VARCHAR
256
WORKSPACE_APS
APTYPE
FALSE
FALSE
VARCHAR
256
WORKSPACE_APS
APCOMMUNITY
FALSE
FALSE
VARCHAR
256
WORKSPACE_APS
POLICY_ID
FALSE
FALSE
VARCHAR
256
WORKSPACE_POLICIES
POLICY_ID
TRUE
TRUE
VARCHAR
256
WORKSPACE_POLICIES
POLICYNAME
FALSE
FALSE
VARCHAR
256
WORKSPACE_POLICIES
SECRET
FALSE
FALSE
VARCHAR
256
ZONES
ZONEID
TRUE
TRUE
VARCHAR
256
ZONES
ZONENAME
FALSE
FALSE
VARCHAR
256
ZONES
DESCRIPTION
FALSE
FALSE
VARCHAR
256
ZONES
PROFILEID
FALSE
FALSE
VARCHAR
256
81
Download