Pervasive Location-Aware Computing
Download
Report
Transcript Pervasive Location-Aware Computing
Pervasive Location-Aware Computing
Hari Balakrishnan
Networks and Mobile Systems Group
MIT Laboratory for Computer Science
http://nms.lcs.mit.edu/
Why you should care
• Location-awareness will be a key feature of many
future mobile applications
• Many scenarios in pervasive computing
–
–
–
–
Navigation
Resource discovery
Embedded applications, sensor systems
Monitoring and control applications
• The design of good location-aware computing
systems cuts across many areas of CS/EE
– E.g., sensors, signal processing, networking, mobility, data
management, graphics/visualization, planning, HCI, …
– Most of the exciting stuff will happen in the next few years!
Computing
Input
Processing
Output
Networked Computing
Processing
+
communication
Processing
+
communication
Network
Processing
+
communication
Processing
+
communication
Networked, Context-Aware
Computing
Environmental
Context
Sensors
Location
information
Processing
+
communication
Processing
+
communication
Resource
information
Network
Actuators
Processing
+
communication
Processing
+
communication
Location-Aware Applications
• Human-centric
– “Finding” applications
• Embedded
– Sensors & actuators
– Devices
– Monitoring and control
• System should support both forms
This Talk
•
•
•
•
Cricket location infrastructure
Some applications
System architecture
Challenges for the future
Cricket
• Architecture for ubiquitous location-sensing
– No single location-sensing technology works
everywhere today, particularly indoors
• Integrates variety of sensory information
– GPS: wide-open outdoors
– Wireless access info: coarse-grained info
– RF + ultrasonic trilateration: indoors and in urban
areas
• Sensor-independent location API
Desired Functionality
• What space am I in?
– Room 510, reception area, seminar room,…
– How do I learn more about what’s in this space?
– An application-dependent notion
• What are my (x,y,z) coordinates?
– “Cricket GPS”
• Which way am I pointing?
– “Cricket compass”
• Goal: Linear precision of a few centimeters, angular
precision of a few degrees
Design Goals
• Must determine:
– Spaces: Good boundary detection is important
– Position: With respect to arbitrary inertial frame
– Orientation: Relative to fixed-point in frame
•
•
•
•
•
Must operate well indoors
Preserve user privacy: don’t track users
Must be easy to deploy and administer
Must facilitate innovation in applications
Low energy consumption
Cricket Architecture
info = “a2”
Beacon
info = “a1”
Listener
Estimate distances
to infer location
Autonomous: No central beacon control or tracking
Passive listeners + active beacons facilitates privacy
Straightforward deployment and programmability
Machinery
Beacons on
ceiling
SPACE=NE43-510
ID=34
COORD=146 272 0
MOREINFO=
http://cricket.lcs.mit.edu/
Cricket
listener
Mobile device
Obtain linear distance estimates
Pick nearest to infer “space”
Solve for mobile’s (x, y, z)
Determine w.r.t. each beacon and deduce
orientation vector
B
Determining Distance
Beacon
RF data
(space name)
Ultrasound
(pulse)
Listener
• A
The
beacon
listener
transmits
measures
an RF
the and
timean
gap
ultrasonic
between
signal
the
receipt
simultaneously
of RF and ultrasonic signals
–A
gap location
of x ms roughly
corresponds
a
RFtime
carries
data, ultrasound
is a to
narrow
distance
of x feet from beacon
pulse
– Velocity of ultrasound << velocity of RF
Multiple Beacons Cause
Complications
Beacon A
Beacon B
Incorrect distance
Listener
RF B
RF A
US B US A
t
• Beacon transmissions are uncoordinated
• Ultrasonic signals reflect heavily
• Ultrasonic signals are pulses (no data)
These make the correlation problem hard and can lead
to incorrect distance estimates
Solution
• Carrier-sense + randomized
transmission
– Reduce chances of concurrent beaconing
• Bounding stray signal interference
– Envelop all ultrasonic signals with RF
• Listener inference algorithm
– Processing distance samples to estimate location
Bounding Stray Signal Interference
RF A
US A
t
• Engineer RF range to be larger than ultrasonic
range
– Ensures that if listener can hear ultrasound,
corresponding RF will also be heard
Bounding Stray Signal Interference
S
b
r
v
= size of space advertisement
= RF bit rate
= ultrasound range
= velocity of ultrasound
S
b
(RF transmission time)
S/b
t
r/v (max)
r
v
(Max. RF-US separation
at the listener)
• No “naked” ultrasonic signal can be valid!
Estimation Algorithm
Windowed MinMode
A
B
Frequency
5
5
Distance
(feet)
10
A
B
Actual distance (feet)
6
8
Mode (feet)
6
8
Mean (feet)
7.2
6.4
9
10
Majority
Orientation
Beacons on
ceiling
Orientation relative to B
on horizontal plane
Cricket listener with
compass hardware
Mobile device
(parallel to horizontal plane)
B
Trigonometry 101
Beacon
Idea: Use multiple ultrasonic sensors
and estimate differential distances
sin = (d2 - d1) / sqrt (1 - z2/d2)
where d = (d1+d2)/2
d1
d2
Two terms need to be estimated:
1. d2 – d1
2. z/d (by estimating
coordinates)
z
Differential Distance Estimation
• Problem: for reasonable values of parameters
(d, z), (d2 - d1) must have 5mm accuracy
– Well beyond all current technologies!
Beacon
d2
d1
L
t
f = 2p (d2 – d1)/l
Estimate phase difference between ultrasonic waveforms!
Coordinate Estimation
Beacons on
ceiling at known
coordinates
vt1
vt2
vt3
(x,y,z)
vt4
Four equations, four unknowns
Velocity of sound varies with temperature, humidity
Can be “eliminated” (or calculated!)
B
Beacon Placement
Totally arbitrary beacon placement won’t demarcate spaces correctly
Room A
Room B
I am at
B
Correct Beacon Placement
Room A
Room B
x
I am at
A
• Position beacons to detect the boundary
• Multiple beacons per space are possible
x
System Configuration &
Administration
• Password-based authentication for
configuration
• Currently, coordinates manually entered
• Auto-configuration algorithm being developed
• MOREINFO database centrally managed with
Web front-end
– Relational DBMS
– Challenge: queries that don’t divulge device
location, but yet are powerful
Cricket v1 Prototype
RF module (rcv)
Ultrasonic
sensor
Listener
RF module (xmit)
RF antenna
Beacon
Atmel
processor
RS232
i/f
Host software libraries in Java;
Linux daemon (in C) for Oxygen BackPaq handhelds
Several apps…
Deployment
Some Results
• Linear distances to within 6cm precision
• Spatial resolution of about 30cm
• Coordinate estimation to within 6cm in each
dimension
• Orientation to within 3-5 degrees when angle to some
beacon < 45 degrees
• Several applications (built, or being built)
– Stream redirection, active maps, Viewfinder, Wayfinder,
people-locater
– Scalable location-aware monitoring (SLAM) apps: MIT library
book tracking, asset management, MIT physical plant
maintenance
Where am I?
(Active map)
What’s near me?
Find this for me
(Resource discovery)
“Print map on a color printer,”
and system sends data to nearest
available free color printer and tells
you how to get there
Location by “intent”
How do I get to Jorg’s office?
Scale
(# sensors)
Large-Scale Monitoring
Power, thermal
Monitoring & control
107
106
Library usage
105
Physical plant
Repair orders
104
Irrigation
Days/Hours
Asset tracking
Fire detection
Motion detection
Assisted evacuation
Leaks, floods
Lab equipment
monitoring
Personal safety
Traffic, parking
Minutes
Response time
Cricket network
auto-configuration
HazMat response
Local navigation
Seconds
Requirements
•
•
•
•
•
•
•
•
•
Ubiquitous location-sensing
Heterogeneous sensor networking/comm. protocols
Resource discovery
Event handling
Query processing
Spatial databases
Mapping and representation
Navigation
User interfaces
Strawman Architecture
Cricket beacons
(Pervasive)
Fixed sensor proxy (sensor integration, pruning)
Events
Tag reader
Tagged books,
equipment
Actions
Event-handling
& resource discovery
network
Mobile sensor proxy
Sensor
Proxy
Application event handlers
(Distributed)
Sensors & actuators
Data stores
Summary
• Location-aware computing poses numerous
interesting challenges for CS
– An important component of pervasive computing
– Integrating real-world information
– App spectrum from HCI Embedded apps
• Cricket provides location information for
mobile, pervasive computing applications
– Space, position, orientation
– Flexible and programmable infrastructure
– Deployment and management facilities
Collaborators
•
•
•
•
•
•
•
•
•
•
Bodhi Priyantha
Allen Miu
Ken Steele
Rafael Nogueras
Seth Teller
Steve Garland
Dorothy Curtis
Omar Aftab
Erik Demaine
Mike Stonebraker
http://nms.lcs.mit.edu/