06854080fc61b1581d0c1960f25c63bd.ppt
- Количество слайдов: 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/
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
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”
What’s in this direction? (Viewfinder) Point-and-use UIs
How do I get to Satya’s office? How do I get to Compaq’s booth at Comdex?
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”
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
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
Cricket Architecture info = “a 2” Beacon info = “a 1” Listener Estimate distances to infer location No central beacon control or location database Passive listeners + active beacons preserves privacy Straightforward deployment and programmability
Machinery Beacons on ceiling <SPACE> NE 43 -510 <ID>34</ID> </SPACE> <COORD>146 272 0</COORD> <MOREINFO> http: //cricket. lcs. mit. edu/ Cricket </MOREINFO> 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
MOREINFO Database <SPACE> NE 43 -510 <ID>34</ID> </SPACE> <COORD>146 272 0</COORD> <MOREINFO> http: //cricinfo. lcs. mit. edu/ </MOREINFO> App Space ID INSName Aura MOTD etc. (Oxygen) Server DB Query Centralized DB key to simple administration
Determining Distance Beacon RF data (space name) Ultrasound (pulse) Listener • A beacon transmits an the and an ultrasonic The listener measures RF time gap between the receipt of RF and signal simultaneously ultrasonic signals A time gap of x ms data, ultrasound is a narrow – RF carries location roughly corresponds to a distance of x feet from beacon pulse – Velocity of ultra sound << 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 r/v (max) r v (Max. RF-US separation at the listener) • No “naked” ultrasonic signal can be valid! t
Estimation Algorithm Windowed Min. Mode 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 = (d 2 - d 1) / sqrt (1 - z 2/d 2) where d = (d 1+d 2)/2 d 1 Two terms need to be estimated: 1. d 2 – d 1 2. z/d (by estimating coordinates) H Cr Co icke mp t as s g din ea d 2 z
Differential Distance Estimation • Problem: for reasonable values of parameters (d, z), (d 2 - d 1) must have 5 mm accuracy – Well beyond all current technologies! Beacon d 2 d 1 L t f = 2 p (d 2 – d 1)/l Estimate phase difference between ultrasonic waveforms!
Making This Idea Work Beacon d 1 L 12 3 l/2 d 3 L 23 4 l/2 Estimate 2 phase differences to uniquely estimate d 2 -d 1 Can do this when L 12 and L 23 are relatively-prime multiples of l/2 t
Coordinate Estimation Beacons on ceiling at known coordinates vt 1 vt 2 vt 3 (x, y, z) vt 4 Four equations, four unknowns Velocity of sound varies with temperature, humidity Can be “eliminated” (or calculated!) B
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 = (d 2 - d 1) / sqrt (1 - z 2/d 2), so D goes as tan
Problem: Closest Beacon May Not Reflect Correct Space 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 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
Cricket v 1 Prototype RF module (rcv) Ultrasonic sensor Listener RF module (xmit) RF antenna Beacon Atmel processor RS 232 i/f Host software libraries in Java; Linux daemon (in C) for Oxygen Back. Paq handhelds Several apps…
Deployment
Some Results • Linear distances to within 6 cm precision • Spatial resolution of about 30 cm • Coordinate estimation to within 6 cm 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
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/
06854080fc61b1581d0c1960f25c63bd.ppt