The Cricket Compass for ContextAware Mobile Applications Nissanka
The Cricket Compass for Context-Aware Mobile Applications Nissanka Priyantha, Allen Miu, Hari Balakrishnan, Seth Teller MIT Laboratory for Computer Science http: //nms. lcs. mit. edu/
Cricket Location System • Original Version [mobicom 00] – Location information: room, floor, building, etc. • New extensions – The Cricket Compass – Position information • (x, y, z) coordinates within a space – Orientation information • direction at which device faces Mobile device (x, y, z)
You Are Here… Great, now what? ! You are here
Point-and-Use Application
Orientation is important! Orientation is a building block that supports a wide variety of mobile applications
Design Goals • Compact, integrated, self-contained • Should not rely on motion to determine heading (as in GPS navigation systems) • Robust under a variety of indoor conditions • Low infrastructure cost; easy to deploy • Enough accuracy for mobile applications (5 o accuracy)
The Cricket Compass Architecture (x 1, y 1, z 1) Y (x 3, y 3, z 3) (x 0, y 0, z 0) X Z vt 0 vt 1 Cricket listener with RF and ultrasonic sensors Beacons on ceiling vt 3 (x 2, y 2, z 2) RF + Ultrasonic Pulse vt 2 Mobile device ( x, y, z) vt 3 to solve for unknown speed of sound
Definition of Orientation (x 1, y 1, z 1) Y (x 3, y 3, z 3) (x 0, y 0, z 0) B Beacons on (x 2, y 2, z 2) ceiling X Z Orientation relative to B (on horizontal plane) Mobile device (on horizontal plane)
Approach: Use Differential Distance to Determine Orientation Beacon Assume: Device rests on horizontal plane Method: Use multiple ultrasonic sensors; calculate rotation using measured distances d 1, d 2, z sin = (d 2 - d 1) / sqrt (1 - z 2/d 2) where d = (d 1+d 2)/2 d d 1 Need to measure: a) (d 2 - d 1) b) z/d S 1 d 2 L S 2 z
Problem: Measuring (d 2 – d 1) directly requires very high precision! Beacon • Consider a typical situation – Let L = 5 cm, d = 2 m, z = 1 m, = 10º – (d 2 – d 1) = 0. 6 cm d • Impossible to measure d 1, d 2 with such precision d 1 d 2 – Comparable with the wavelength of ultrasound ( = 0. 87 cm) S 1 L S 2 z
Solution: Differential Distance (d 2 d 1) from Phase Difference ( ) • Observation: The differential distance (d 2 -d 1) is reflected as a phase difference between the signals received at two sensors Estimate phase difference between ultrasonic waveforms to find (d 2 -d 1)! Beacon = 2 p (d 2 – d 1)/l d 1 d 2 S 1 t S 2 t
Problem: Two Sensors Are Inadequate • Phase difference is periodic ambiguous solutions • We don’t know the sign of the phase difference to differentiate between positive and negative angles • Cannot place two sensors less than 0. 5 apart – Sensors are not tiny enough!!! – Placing sensors close together produces inaccurate measurements
Solution: Use Three Sensors! • Beacon • d 1 d 2 d 3 • S 3 S 2 S 1 L 12 = 3 l/2 Estimate 2 phase differences to find unique solution for (d 2 -d 1) Can do this when L 12 and L 23 are relatively-prime multiples of l/2 Accuracy increases! L 23 = 4 l/2 t
Cricket Compass v 1 Prototype Ultrasound Sensor Bank 1. 25 cm x 4. 5 cm Sensor Module RF module (xmit) RF antenna Ultrasonic transmitter Beacon
Angle Estimation Measurements • • Accurate to 3 for 30 , 5 for 40 Error increases at larger angles
Cricket Compass Hardware • Improves accuracy • Disambiguates in [ - , ] Amplifiers, Wave shaping, and Selection Circuits RF RX Microcontroller RS 232 Driver
Conclusion The Cricket Compass provides accurate position and orientation information for indoor mobile applications – Orientation information is useful – Novel techniques for precise position and phase difference estimation to obtain orientation information – Prototype implementation with multiple ultrasonic sensors Orientation accurate to within 3 -5 degrees http: //nms. lcs. mit. edu/cricket/
Considerations • Beacon placement – At least one beacon within range – Avoid degenerate configuration (not in a circle) • Ultrasonic reflections – Use filtering algorithms to discard bad samples • Configuring beacon coordinates – Auto-configuration, auto-calibration
Current Orientation Systems Are Not Adequate for Indoor Use • Magnetic based sensors (magnetic compass, magnetic motion trackers) – suffers from ferromagnetic interference commonly found indoors • Inertial sensors (accelerometers, gyroscopes) – used in sensor fusion to achieve high accuracy – require motion to determine heading – suffer from cumulative errors • Other systems require: – Extensive wiring: expensive & hard to deploy – Multiple active transmitters worn by the user: obtrusive, inconvenient, not scalable
Point in the direction of the Service… Not at the Service • Orientation information provides a geometric primitive that is general and useful among a variety of “direction-aware” applications, e. g. – In-building navigation – Point and Shoot User Interfaces • Line-of-sight systems are limited – awkward to use, not robust – do not support navigation Orientation information is useful for context-aware mobile applications!
Is orientation necessary? • Direction-aware applications could be implemented using “TV remotes!” • But orientation information is useful – Application-specific semantics are possible – Convenient for navigation applications – Eliminates the need for a line of sight to target
System Model Cricket (x, y, z, )… Service Discovery Database Services, Other users
System Model Cricket (x, y, z, )… printer@(x, y, z, ) Service Discovery Database pda@(x, y, z, )… printer@(x, y, z, ) Services
Differential Distance From Phase Difference • Observation: The differential distance (d 2 -d 1) is reflected as a phase difference between the signals received at two sensors Ultrasound signal first hits sensor S 1 Beacon d 1 d 2 S 1 S 2 t
Differential Distance From Phase Difference • Observation: The differential distance (d 2 -d 1) is reflected as a phase difference between the signals received at two sensors The same signal then hits sensor S 2 Beacon d 1 d 2 S 1 S 2 t
Where am I? (Active map)
Deployment
Differential Distance From Phase Difference • Observation: The differential distance is reflected as a phase difference between the signals received at two receivers Estimate phase difference between ultrasonic waveforms to find (d 2 -d 1)! Beacon = 2 p v t/ l = 2 p (d 2 – d 1)/l d 1 d 2 R 1 t R 2 t <= L/v, where v is velocity of sound t
Ambiguous Solutions: Example • • We know: t, t’ <= L/v Let L = Observed time difference is t Possible time differences are t and t’ Beacon L/v t t t t’
Requirements • Navigational information – Space • address, room number – Position • coordinate, with respect to a given origin in a space – Orientation • angle, with respect to a given fixed point in a space • Low cost, low power • Completely wireless – Deployable in existing buildings • Scalable • Autonomous – Mobile device determines its own location
Ambiguous Solutions: Example • We know: t <= L/v • Let L = /2 In this case, we can find a unique solution Beacon L/v t t
- Slides: 31