Title: 6.964 Pervasive Computing ContextAware Networking
16.964 Pervasive ComputingContext-Aware Networking
- Stephen J. Garland
- October 11, 2001
- MIT Laboratory for Computer Science
- Networks Mobile Systems
- http//nms.lcs.mit.edu/
2Cricket Indoor Location System
- Support for mobile, indoor applications
- Location-aware scenarios
- Active maps
- Resource discovery and interaction
- Way-finding and navigation
- Stream redirection
3Where am I?(Active Map)
4Whats near me? Find me a (Resource Discovery)
Location by intent Print map on a color
printer. System response Locates nearby free
color printer Sends data there Tells you
where it is
5Whats over there?(Interaction)
Viewfinder Point-and-use interface
6How do I get to Haris office?How do I get to
Compaqs booth at Comdex?(Navigation)
7Cricket Functionality
- What space am I in?
- Application-dependent notion
- Room 510, NE-43, MIT, Compaqs booth,
- Basic Cricket
- What are my (x,y,z) coordinates?
- Relative to arbitrary inertial frame
- Cricket GPS
- Which way am I pointing?
- Relative to fixed point in inertial frame
- Cricket compass
8Design Goals for Cricket
- Operates well indoors
- Detects boundaries well
- Preserves user privacy (doesnt track users)
- Facilitates innovation in applications
- Operates with low energy
- Easy to deploy and administer
9Determining Distance
Beacon
Ultrasound (pulse)
Listener
- Beacon transmits simultaneous RF, ultrasound
- RF carries location data, ultrasound is narrow
pulse
- Listener measures time between reception
- Velocity of ultrasound 1/ms ltlt velocity of RF
10ProblemDetermining Space from Distance
Room A
Room B
I am at B
11Solution Beacon Placement
Room A
Room B
x
x
I am at A
- Position beacons to detect the boundary
- Multiple beacons per space are possible
12Problem Multiple Beacons
Beacon A
Beacon B
Incorrect distance
t
Listener
RF B
RF A
US B
US A
- Hard to correlate RF and ultrasound signals
- Beacon transmissions are uncoordinated
- Ultrasonic signals reflect heavily
- Ultrasonic signals are pulses (no data)
- Can lead to incorrect distance estimates
13Solutions Avoiding Interference
- Limit stray signal interference
- Envelop all ultrasonic signals with RF
- Carrier-sense, randomized transmission
- Reduce chances of concurrent beaconing
- Listener inference algorithm
- Use distance samples to estimate location
14Limiting Stray Signal Interference
RF B
US B
RF A
US A
t
- Envelop ultrasound by RF
- Stray ultrasound causes RF signals to collide
- Listener does a block parity error check
- To detect collision and discard reading
15Reducing Concurrent Beaconing
- Randomize beacon transmissions
- do while (true)
- pick r UniformT1, T2
- delay(r)
- xmit_beacon(RF,US)
-
- Optimal T1, T2 can be calculated analytically
- Trade-off latency against collision probability
- Erroneous estimates do not repeat
16Estimation AlgorithmWindowed MinMode
A
Frequency
B
5
Distance (feet)
5
10
17Determining Coordinates
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!)
18Determining Orientation
B
Beacons on ceiling
Orientation relative to B on horizontal plane
?
Cricket listener with compass hardware
Mobile device (parallel to horizontal plane)
19Trigonometry 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
Heading
20Differential 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!
21Making This Idea Work
Beacon
d2
d3
d1
L23
L12
t
3l/2
4l/2
Estimate 2 phase differences to estimate
d2-d1 Can do this when L12 and L23 are relatively
prime multiples of l/2
22System Administration
- Authentication (password) for configuration
- Currently, coordinates entered manually
- algorithm to deduce them from other beacons
- Database with Web front-end
- Centrally managed relational DBMS
- Challenge queries that dont divulge device
location, but yet are powerful
23Cricket 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
24Deployment Beacon Placement Considerations
- Must support correct inference of space
- Boundaries between spaces need to be detected
- Must support 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
25Deployment
26Some 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, smart meeting notifier,
- Probably no single killer app, but a whole suite
of apps that might change the way we do things