the cricket indoor location system hari balakrishnan bodhi priyantha, allen miu, jorge nogueras,...

31
The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller MIT Laboratory for Computer Science http://nms.lcs.mit.edu/

Upload: jonathan-morris

Post on 19-Jan-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

The Cricket Indoor Location System

Hari Balakrishnan

Bodhi Priyantha, Allen Miu,

Jorge Nogueras, John Ankcorn, Kalpak Kothari,

Steve Garland, Seth Teller

MIT Laboratory for Computer Science

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

Page 2: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Motivation

• Location-awareness will be a key feature of many future mobile applications

• Many scenarios in pervasive computing– Active maps– Resource discovery and interaction– Way-finding & navigation– Stream redirectors

• Cricket focuses mainly on indoor deployment and applications

Page 3: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Where am I?(Active map)

Page 4: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

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 tellsyou how to get there Location by “intent”

Page 5: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

What’s in this direction?(Viewfinder)

Point-and-use UIs

Page 6: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

How do I get to Satya’s office?How do I get to Compaq’s booth at Comdex?

Page 7: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Desired Functionality

• What space am I in?– Room 510, reception area, Compaq’s booth,…– 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”

Page 8: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Design Goals for Cricket

• 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

Page 9: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

System Components

• Location inference modules– Hardware, software, algorithms for space, position

coordinates, orientation

• Programming (using) Cricket– API; language-independent “RPC”– Customized beaconing

• Deploying and managing a Cricket deployment– Configuration, security, data management

Page 10: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Cricket Architecture

Beacon

Listener

No central beacon control or location databasePassive listeners + active beacons preserves privacyStraightforward deployment and programmability

No central beacon control or location databasePassive listeners + active beacons preserves privacyStraightforward deployment and programmability

info = “a1”

info = “a2”

Estimate distancesto infer location

Page 11: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Beacons onceiling

B

<SPACE> NE43-510 <ID>34</ID></SPACE><COORD>146 272 0</COORD><MOREINFO> http://cricket.lcs.mit.edu/</MOREINFO>

Obtain linear distance estimatesPick nearest to infer “space”Solve for mobile’s (x, y, z)Determine w.r.t. each beacon and deduce orientation vector

Obtain linear distance estimatesPick nearest to infer “space”Solve for mobile’s (x, y, z)Determine w.r.t. each beacon and deduce orientation vector

Machinery

Mobile deviceMobile device

Cricketlistener

Page 12: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

MOREINFO Database

<SPACE> NE43-510 <ID>34</ID></SPACE><COORD>146 272 0</COORD><MOREINFO> http://cricinfo.lcs.mit.edu/</MOREINFO>

Space ID INSName Aura MOTD etc.Server(Oxygen)

AppDB Query

Centralized DB key to simple administration

Page 13: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

• 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 ultra sound << velocity of RF

• 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 ultra sound << velocity of RF

Determining Distance

RF data(space name)

Beacon

Listener

Ultrasound(pulse)

Page 14: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Multiple Beacons Cause Complications

• 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

• 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

Beacon A Beacon B

tRF B RF A US B US A

Incorrect distance

Listener

Page 15: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

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

Page 16: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Bounding 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

• Engineer RF range to be larger than ultrasonic range– Ensures that if listener can hear ultrasound,

corresponding RF will also be heard

tRF A US A

Page 17: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

t

S/b

r/v (max)

S = size of space advertisementb = 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

• No “naked” ultrasonic signal can be valid!• No “naked” ultrasonic signal can be valid!

Page 18: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Estimation AlgorithmWindowed MinMode

Distance(feet)

Frequency A B

5 10

5

109Majority

6.47.2Mean (feet)

86Mode (feet)

86Actual distance (feet)

BA

Page 19: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Orientation relative to Bon horizontal plane

Mobile device(parallel to horizontal plane)

Beacons onceiling

B

Cricket listener withcompass hardware

Orientation

Page 20: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Trigonometry 101

d1 d2 z

sin = (d2 - d1) / sqrt (1 - z2/d2)where d = (d1+d2)/2

Heading

Beacon

Idea: Use multiple ultrasonic sensorsand estimate differential distances

CricketCompass

Two terms need to be estimated: 1. d2 – d1 2. z/d (by estimating coordinates)

Page 21: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Differential Distance Estimation

• Problem: for reasonable values of parameters (d, z), (d2 - d1) must have 5mm accuracy– Well beyond all current technologies!

d2 d1

= 2(d2 – d1)/tL

Beacon

Estimate phase difference between ultrasonic waveforms!

Page 22: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Making This Idea Work

d1

t

3

d2 d3

4

Estimate 2 phase differences to uniquely estimate d2-d1Can do this when L12 and L23 are relatively-prime multiples of

L12 L23

Beacon

Page 23: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Beacons onceiling at known

coordinates

B

Coordinate Estimation

vt1 vt2 vt3 vt4

(x,y,z)

Four equations, four unknownsVelocity of sound varies with temperature, humidity

Can be “eliminated” (or calculated!)

Page 24: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Deployment: 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 < 40 degrees– sin = (d2 - d1) / sqrt (1 - z2/d2),

so goes as tan

Page 25: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Problem: Closest Beacon May Not Reflect Correct Space

I am atB

Room A Room B

Page 26: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Correct Beacon Placement

Room A Room B

x x

I am atA

• Position beacons to detect the boundary

• Multiple beacons per space are possible

Page 27: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

System Administration

• Password-based authentication for configuration

• Currently, coordinates manually entered– Working on algorithm to deduce this from other

beacons

• MOREINFO database centrally managed with Web front-end– Relational DBMS– Challenge: queries that don’t divulge device

location, but yet are powerful

Page 28: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Ultrasonicsensor

RF antenna

Ultrasonicsensor

RF module (rcv)

Atmelprocessor

Listener Beacon

RF module (xmit)

RS232i/f

Cricket v1 Prototype

Host software libraries in Java; Linux daemon (in C) for Oxygen BackPaq handhelds

Several apps…

Page 29: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Deployment

Page 30: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

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, smart meeting notifier,…

• Probably no single killer app, but a whole suite of apps that might change the way we do things

Page 31: The Cricket Indoor Location System Hari Balakrishnan Bodhi Priyantha, Allen Miu, Jorge Nogueras, John Ankcorn, Kalpak Kothari, Steve Garland, Seth Teller

Summary

• Cricket provides location information for mobile, pervasive computing applications– Space– Position– Orientation

• Flexible and programmable infrastructure• Deployment and management facilities• Starting to be used by other research groups

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