310 likes | 1.07k Views
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 [mobicom00] Location information: room, floor, building, etc.
E N D
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 [mobicom00] • 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 You Are Here… Great, now what?!
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 (5o accuracy)
(x2,y2,z2) (x1,y1,z1) (x3,y3,z3) (x0,y0,z0) vt3 vt1 vt2 vt0 The Cricket Compass Architecture Beacons on ceiling Y X RF + Ultrasonic Pulse Z Cricket listener with RF and ultrasonic sensors Mobile device ( x, y, z) vt3 to solve for unknown speed of sound
Definition of Orientation (x2,y2,z2) (x1,y1,z1) (x3,y3,z3) (x0,y0,z0) (on horizontal plane) (on horizontal plane) B Beacons on ceiling Beacons on ceiling Y X Z Orientation relative to B Mobile device
Approach: Use Differential Distance to Determine Orientation Beacon Assume: Device rests on horizontal plane Method: Use multiple ultrasonic sensors; calculate rotation using measured distances d1, d2, z sin = (d2 - d1) / sqrt (1 - z2/d2) where d = (d1+d2)/2 d z d1 d2 • Need to measure: • a) (d2 - d1) • z/d S1 L S2
Problem: Measuring (d2 – d1) directly requires very high precision! Beacon • Consider a typical situation • Let L = 5cm, d = 2m, z = 1m, = 10º • (d2 – d1) = 0.6cm d • Impossible to measure d1, d2 with such precision • Comparable with the wavelength of ultrasound ( = 0.87cm) z d1 d2 S1 L S2
t Solution: Differential Distance (d2-d1) from Phase Difference () • Observation: The differential distance (d2-d1) is reflected as a phase difference between the signals received at two sensors Estimate phase difference between ultrasonic waveforms to find (d2-d1)! Beacon f = 2p (d2 – d1)/l d1 d2 t S1 S2
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! • Estimate 2 phase differences to find unique solution for (d2-d1) • Can do this when L12 and L23 are relatively-prime multiples of l/2 • Accuracy increases! Beacon d3 d1 d2 S3 S2 S1 t L12 = 3l/2 L23 = 4l/2
Cricket Compass v1 Prototype Ultrasound Sensor Bank 1.25 cm x 4.5 cm RF module (xmit) Ultrasonic transmitter RF antenna Sensor Module 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 Microcontroller RS 232 Driver RF RX
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
(x, y, z, )… (x, y, z, )… System Model Cricket Service Discovery Database Services, Other users
printer@(x,y,z, ) printer@(x,y,z, ) System Model Cricket (x, y, z, )… Service Discovery Database Services pda@(x, y, z, )…
d1 d2 Differential Distance From Phase Difference • Observation: The differential distance (d2-d1) is reflected as a phase difference between the signals received at two sensors Ultrasound signal first hits sensor S1 Beacon t S1 S2
d2 Differential Distance From Phase Difference • Observation: The differential distance (d2-d1) is reflected as a phase difference between the signals received at two sensors The same signal then hits sensor S2 Beacon d1 t S1 S2
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 (d2-d1)! Beacon f = 2p vt/ l = 2p (d2 – d1)/l d1 d2 t R1 t R2 t <= L/v, where v is velocity of sound
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
In this case, we can find a unique solution L/v t Ambiguous Solutions: Example • We know: t <= L/v • Let L = /2 Beacon t