34
Nissanka B. Priyantha Anit Chakraborty Hari Balakrishnan MIT Lab for Computer Science http://nms.lcs.mit.edu/ The Cricket Location-Support System

Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science The Cricket Location-Support System

Embed Size (px)

Citation preview

Page 1: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Nissanka B. Priyantha Anit Chakraborty

Hari Balakrishnan

MIT Lab for Computer Science

http://nms.lcs.mit.edu/

The Cricket Location-Support System

Page 2: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Motivation

• Emergence of pervasive computing environments

• Context-aware applications– Location-dependent behavior

• User and service mobility– Navigation via active maps– Resource discovery

Cricket provides applications information about geographic spaces they are in

Page 3: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Design Goals

• Preserve user privacy• Operate inside buildings• Recognize spaces, not just physical position

– Good boundary detection is important

• Easy to administer and deploy– Decentralized architecture and control

• Low cost and power consumption

Page 4: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Traditional Approach

Controller/Location database

Base stations

ID = u

Transceivers

• Centralized architecture• User-privacy issues• High deployment cost

ID = u ? ID = u ? ID = u ?

ID = u ?

Page 5: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Cricket Architecture

Beacon

Listener

SpaceA

SpaceB

SpaceC

I am atC

• Decentralized, no tracking, low cost• Think of it as an “inverted BAT”!

Page 6: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Determining Distance

• A beacon transmits an RF and an ultrasonic signal simultaneously– RF carries location data, ultrasound is a narrow

pulse– Velocity of ultra sound << velocity of RF

RF data(location name)

Beacon

Listener

Ultrasound(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

Page 7: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Uncoordinated Beacons

• Multiple beacon transmissions are uncoordinated

• Different beacon transmissions can interfere– Causing inaccurate distance measurements at

the listener

Beacon A Beacon B

timeRF B RF A US B US A

Incorrect distance

Page 8: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Handling Spurious Interactions

• Combination of three different techniques:– Bounding stray signal interference– Preventing repeated interactions via

randomization– Listener inference algorithms

Page 9: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Bounding Stray Signal Interference

• RF range > ultrasonic range– Ensures an accompanied RF signal with

ultrasound

tRF A US A

Page 10: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

t

S/b

r/v (max)

S - size of space stringb - RF bit rater - ultrasound rangev - velocity of ultrasound

Bounding Stray Signal Interference

(RF transmission time) (Max. RF US separation at the listener)

S r

b v

Page 11: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Bounding Stray Signal Interference

• Envelop ultrasound by RF• Interfering ultrasound causes RF signals to

collide• Listener does a block parity error check

– The reading is discarded

tRF A US A

RF B US B

Page 12: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Preventing Repeated Interactions

• Randomize beacon transmissions:

loop:pick r ~ Uniform[T1, T2];

delay(r);xmit_beacon(RF,US);

• Erroneous estimates do not repeat

• Optimal choice of T1 and T2 can be calculated

analytically – Trade-off between latency and collision probability

Page 13: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Inference Algorithms

• MinMode– Determine mode for each beacon– Select the one with the minimum mode

• MinMean– Calculate the mean distance for each beacon– Select the one with the minimum value

• Majority (actually, “plurality”)– Select the beacon with most number of readings– Roughly corresponds to strongest radio signal

Page 14: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Inference Algorithms

Distance(feet)

Frequency A B

5 10

5

A B

Actual distance (feet) 6 8

Mode (feet) 6 8

Mean (feet) 6.14 6.4

Number of samples 7 10

Page 15: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Closest Beacon May Not Reflect Correct Space

I am atB

Room A Room B

Page 16: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Correct Beacon Positioning

Room A Room B

x x

I am atA

• Position beacons to detect the boundary

• Multiple beacons per space are possible

Page 17: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Implementation

• Cricket beacon and listener

• LocationManager provides an API to applications

• Integrated with intentional naming system for resource discovery

Page 18: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Implementation

• Cricket beacon and listener

• LocationManager provides an API to applications

• Integrated with intentional naming system for resource discovery

Micro-controller

RF

US

Micro-controller

RF

USRS232

Page 19: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Static listener performance

Interference

L2

L1

• Immunity to interference– Four beacons within

each others range– Two RF interference

sources

• Boundary detection ability– L1 only two feet

away from boundary

I1 I2

L1 0.0% 0.0%

L2 0.3% 0.4%

I1

I2

% readings due to interference of RF from I1

and I2 with ultrasound from beacons

Room B

Room C

Room A

Page 20: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Inference Algorithm Error Rates

Error Rates Measured With Listener At L1

0

5

10

15

20

25

30

35

40

45

10 20 30 40 50 60 70 80 90 100

Number of readings

Err

or R

ate

(%)

MinMean

MinMode

Majority

Page 21: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Mobile listener performance

Location Algorithm Error Rates

0

2

4

6

8

10

12

14

16

18

20

2 3 4 5 6

Sampling Interval

Erro

r Rat

e (%

)

MinMean

MinMode

Majority

Room A Room B

Room C

Page 22: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Comparisons

Bat Activebadge

RADAR Cricket

Track user location?

Yes Yes No, if client has signal map

No

Deploymentconsiderations

Centralized controller +matrix ofsensors

Centralized database + wired IR sensors

RF signal mapping and good radios

Spacenamingconvention

Position accuracy

Few cm Room-wide Room-wide ~2 feet forspatialresolution

Attribute

System

Page 23: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Summary

• Cricket provides information about geographic spaces to applications– Location-support, not tracking– Decentralized operation and administration

• Passive listeners and no explicit beacon coordination– Requires distributed algorithms for beacon

transmission and listener inference

• Implemented and works!

Page 24: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System
Page 25: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System
Page 26: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

– Decentralized

Page 27: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System
Page 28: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

– Preserves user privacy– Good granularity– Component cost U.S. $10

Page 29: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Beacon positioning

• Imaginary boundaries

• Multiple beacons per location

Location X

X1 X2

X3

ImaginaryBoundary

Page 30: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Future work

• Dynamic transmission rate with carrier-sense for collision avoidance.

• Dynamic ultrasonic sensitivity.• Improved location accuracy.• Integration with other technologies such as

Blue Tooth.

Page 31: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Inference algorithms

• Compared three algorithms– Minimum mode– Minimum arithmetic mean – Majority

Page 32: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Minimizing errors.

• Proper ultrasonic range ensures overlapping RF and ultrasonic signals– RF data 7 bytes at 1 kb/s bit rate– RF signal duration 49 ms – Selected ultrasonic range = 30ft < 49 ft– Signal separation < 49 ms

Page 33: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System

Minimizing errors.

• Interfering ultrasound causes RF signals to collide

• Listener does a block parity error check– The reading is discarded

Page 34: Nissanka B. PriyanthaAnit Chakraborty Hari Balakrishnan MIT Lab for Computer Science  The Cricket Location-Support System