Title: Pervasive LocationAware Computing
1Pervasive Location-Aware Computing
- Hari Balakrishnan
- Networks and Mobile Systems Group
- MIT Laboratory for Computer Science
- http//nms.lcs.mit.edu/
2Why 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!
3Computing
Input
Output
Processing
4Networked Computing
5Networked, Context-Aware Computing
Environmental Context
6Location-Aware Applications
- Human-centric
- Finding applications
- Embedded
- Sensors actuators
- Devices
- Monitoring and control
- System should support both forms
7This Talk
- Cricket location infrastructure
- Some applications
- System architecture
- Challenges for the future
8Cricket
- 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
9Desired Functionality
- What space am I in?
- Room 510, reception area, seminar room,
- How do I learn more about whats 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
10Design 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 dont track users
- Must be easy to deploy and administer
- Must facilitate innovation in applications
- Low energy consumption
11Cricket Architecture
Beacon
Estimate distances to infer location
Listener
Autonomous No central beacon control or
tracking Passive listeners active beacons
facilitates privacy Straightforward deployment
and programmability
12Machinery
B
Beacons on ceiling
SPACENE43-510 ID34 COORD146 272
0 MOREINFO http//cricket.lcs.mit.edu/
Cricket listener
Mobile device
Mobile device
Obtain linear distance estimates Pick nearest to
infer space Solve for mobiles (x, y,
z) Determine ? w.r.t. each beacon and deduce
orientation vector
13Determining Distance
Beacon
Ultrasound (pulse)
Listener
- A beacon transmits an RF and an ultrasonic signal
simultaneously - RF carries location data, ultrasound is a narrow
pulse
- The listener measures the time gap between the
receipt of RF and ultrasonic signals - A time gap of x ms roughly corresponds to a
distance of x feet from beacon - Velocity of ultrasound ltlt velocity of RF
14Multiple Beacons Cause Complications
Beacon A
Beacon B
Incorrect distance
t
Listener
RF B
RF A
US B
US A
- 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
15Solution
- 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
16Bounding Stray Signal Interference
- Engineer RF range to be larger than ultrasonic
range - Ensures that if listener can hear ultrasound,
corresponding RF will also be heard
17Bounding Stray Signal Interference
S size of space advertisement b RF bit
rate r ultrasound range v velocity of
ultrasound
(RF transmission time) (Max. RF-US
separation
at the listener)
- No naked ultrasonic signal can be valid!
18Bounding stray signal interference
RF B
US B
RF A
US A
t
- Envelop ultrasound by RF
- Interfering ultrasound causes RF signals to
collide - Listener does a block parity error check
- The reading is discarded...
19Preventing repeated interactions
- Randomize beacon transmissions
- loop
- pick r UniformT1, T2
- delay(r)
- xmit_beacon(RF,US)
- Optimal choice of T1 and T2 can be calculated
analytically - Trade-off between latency and collision
probability - Erroneous estimates do not repeat
20Estimation AlgorithmWindowed MinMode
A
Frequency
B
5
Distance (feet)
5
10
21Orientation
B
Beacons on ceiling
Orientation relative to B on horizontal plane
?
Cricket listener with compass hardware
Mobile device (parallel to horizontal plane)
22Trigonometry 101
Beacon
Idea Use multiple ultrasonic sensors and
estimate differential distances
sin ? (d2 - d1) / sqrt (1 - z2/d2) where d
(d1d2)/2
Two terms need to be estimated 1. d2 d1 2.
z/d (by estimating coordinates)
Heading
23Differential Distance Estimation
- Problem for reasonable values of parameters (d,
z), (d2 - d1) must have 5mm accuracy - Well beyond all current technologies!
Estimate phase difference between ultrasonic
waveforms!
24Making This Idea Work
Beacon
d2
d3
d1
L23
L12
t
3l/2
4l/2
Estimate 2 phase differences to uniquely estimate
d2-d1 Can do this when L12 and L23 are
relatively-prime multiples of l/2
25Coordinate Estimation
B
Beacons on ceiling at known coordinates
?
(x,y,z)
Four equations, four unknowns Velocity of sound
varies with temperature, humidity Can be
eliminated (or calculated!)
26Deployment Beacon Placement Considerations
- Placement should allow correct inference of space
- Boundaries between spaces need to be detected
- Placement should provide enough information for
coordinate estimation - No 4 beacons on same circle on a ceiling
- At least one beacon must have ? lt 40 degrees
- sin ? (d2 - d1) / sqrt (1 - z2/d2), so Dq
goes as tan q
27Beacon Placement
Totally arbitrary beacon placement wont
demarcate spaces correctly
Room A
Room B
I am at B
28Correct Beacon Placement
Room A
Room B
x
x
I am at A
- Position beacons to detect the boundary
- Multiple beacons per space are possible
29System 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 dont divulge device
location, but yet are powerful
30Cricket v1 Prototype
RF module (rcv)
RF module (xmit)
Ultrasonic sensor
Ultrasonic sensor
RF antenna
Listener
Beacon
Atmel processor
RS232 i/f
Host software libraries in Java Linux daemon
(in C) for Oxygen BackPaq handhelds Several apps
31Deployment
32Some 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 lt 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
33Where am I?(Active map)
34Whats 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
35Whats in this direction?(Viewfinder)
Point-and-use UIs
36How do I get to Jorgs office?
37Large-Scale Monitoring
Scale ( sensors)
Power, thermal Monitoring control
107
Asset tracking
Fire detection Assisted evacuation
106
Library usage
Motion detection Leaks, floods
Lab equipment monitoring
Cricket network auto-configuration
Physical plant Repair orders
105
HazMat response Local navigation
104
Personal safety Traffic, parking
Irrigation
Days/Hours
Minutes
Seconds
Response time
38Requirements
- Ubiquitous location-sensing
- Heterogeneous sensor networking/comm. protocols
- Resource discovery
- Event handling
- Query processing
- Spatial databases
- Mapping and representation
- Navigation
- User interfaces
39Strawman Architecture
Fixed sensor proxy (sensor integration, pruning)
Mobile sensor proxy
40Alternative Architecture (Active Badge, Bat
Systems)
Location DB
ID u?
Networked sensor grid
ID u
Responder
Problems privacy administration scalability
deployment cost
41Comparisons
42Summary
- 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
43Collaborators
- 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/