4. • Primary references was wall mounted
maps in hospitals malls and museums
• Ground Positioning System (GPS) is not
reliable indoors due to interference
• Research identified some possible
techniques such as Wi-Fi access points
and Bluetooth which are the most
common
5. • After performing localization, navigation
to the desired place is then needed
6. Software and Hardware Used
• JAVA Programming language
• Android open source operating system
• IDE : Eclipse with Android SDK
• Phone : Sony Xperia Z
• TP-Link MR-3420 Wi-Fi Access points
19. Wi-Fi Landmarks
• Six Routers used in six different rooms to
cover the whole area for RSS to be
measured
• Rooms are divided into smaller areas
represented by nodes for referencing
• Corridors are treated as one room with
several node points
20. Database
• Purpose of using it
• SQL Database
Storing RSS, corresponding
position(x , y) and room name for
each area (10 readings to
minimize error)
Time Consuming to fill
23. Positioning
• Get current RSS
• Enter database and compare row by row
• Using mean square error to make
localization and get current position of the
user
24. Positioning
• Mean Square error equations for each area
Error1= (R`1- R11)2 +(R`1- R21)2+(R`1- R31)2+…..+(R`1- R101)2
Error2= (R`2- R12)2 +(R`2- R22)2+(R`2- R32)2+…..+(R`2- R102)2
Error3= (R`3- R13)2 +(R`3- R23)2+(R`3- R33)2+…..+(R`3- R103)2
Total1= Error1+ Error2+ Error3+…..+ Error10
• Area with least error is the user’s location
25. Positioning - Displacement
• Displacement obtained from the acceleration
signal by double integration with respect to time
𝑉𝑓 = 𝑉𝑖 + 𝑎 ∗ 𝛥𝑡
𝑑 = 𝑉𝑓 ∗ 𝑎 +
1
2
𝑎 ∗ 𝛥𝑡
• Error handling using Zero Velocity Update
• Velocity is set to zero when the user’s foot is
detected to be stationary
26. Positioning - Displacement
• the application gets the initial time (ti). With the
same procedure when the user stops the final time
(tf)
∆t = tf – ti
D = average velocity * ∆t
X
Y
27. Positioning - Displacement
• Three scenarios were considered
Gait type Average velocity
Walking 0.7 m/s
Jogging 1.0 m/s
Running 1.7 m/s
28. Positioning - Angle
•Initial orientation of the user
is determined by acquiring
the angle with respect to
north by magnetic sensor
with an offset of 100° to
match the map on the
device
29. Positioning - Angle
•The angle of movement of
the user is then acquired
through the Gyroscope to
determine the user’s rotation
32. Map View
• A canvas is created with the map
bitmap size
• An Arrow is drawn on the map
indicating the user’s position with it’s
tip pointing to the user’s direction in
the building
• The position and orientation of the
arrow changes according to the
accelerometer and the gyroscope
34. Nodes
• Pixels of each
divided area of
the rooms with
the reference
nodes were
obtained
• Pixels of each
room door point
were referenced
as nodes
35. Routing Algorithm
• Numbering of nodes
• Get initial node number (Room or
corridor)
• Final node number is obtained
from the GUI
• Next node number is obtained
by the numbering
• Draw Path between the nodes
36.
37.
38. User Interface
• Pinch to zoom for map
• Automatic Scroll with user mark on map
• Rotating The Map
• Details about desired places
Web Interface
• Download map, ability to provide the user with
suggestions , offers and promotions
39. Productivity
• Web Interface with GPS to
download maps upon
reaching the building
• Different localization algorithm
• Dijkstra navigation algorithm
• Make the app available for
low end devices without a
gyroscope
40. • Wi-Fi Fingerprinting and
building database
• Dead Reckoning after
localization by Wi-Fi
• Navigation by nodes and
numbering algorithm