Pervasive Location-Aware Computing

mashpeemoveΚινητά – Ασύρματες Τεχνολογίες

24 Νοε 2013 (πριν από 3 χρόνια και 7 μήνες)

55 εμφανίσεις

Pervasive Location
-
Aware Computing

Hari Balakrishnan


Networks and Mobile Systems Group

MIT Laboratory for Computer Science

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

Why you should care


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


Many scenarios in pervasive computing


Navigation


Resource discovery


Embedded applications, sensor systems


Monitoring and control applications


The design of good location
-
aware computing
systems cuts across many areas of CS/EE


E.g., sensors, signal processing, networking, mobility, data
management, graphics/visualization, planning, HCI, …


Most of the exciting stuff will happen in the next few years!

Computing

Input

Output

Processing

Network

Networked Computing

Processing

+

communication

Processing

+

communication

Processing

+

communication

Processing

+

communication

Networked, Context
-
Aware
Computing

Network

Processing

+

communication

Processing

+

communication

Processing

+

communication

Processing

+

communication

Location

information

Sensors

Actuators

Resource

information

Environmental

Context

Location
-
Aware Applications


Human
-
centric


“Finding” applications


Embedded


Sensors & actuators


Devices


Monitoring and control


System should support both forms

This Talk


Cricket location infrastructure


Some applications


System architecture


Challenges for the future

Cricket


Architecture for ubiquitous location
-
sensing


No single location
-
sensing technology works
everywhere today, particularly indoors


Integrates variety of sensory information


GPS: wide
-
open outdoors


Wireless access info: coarse
-
grained info


RF + ultrasonic trilateration: indoors and in urban
areas


Sensor
-
independent location API


Desired Functionality


What space am I in?


Room 510, reception area, seminar room,…


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”


Goal: Linear precision of a few centimeters, angular
precision of a few degrees

Design Goals


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

Cricket Architecture

Beacon

Listener

Autonomous: No central beacon control or tracking

Passive listeners + active beacons facilitates privacy

Straightforward deployment and programmability

info = “a1”

info = “a2”

Estimate distances

to infer location

Beacons on

ceiling

B



SPACE=
NE43
-
510


ID=
34

COORD=
146 272 0

MOREINFO=


http://cricket.lcs.mit.edu/

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

Machinery

Mobile device

Mobile device

Cricket

listener


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 ultrasound << velocity of RF







Determining Distance

RF data

(space

name)

Beacon

Listener

Ultrasound

(pulse)

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 A

Beacon B

t

RF B

RF A

US B

US A

Incorrect distance

Listener

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


Engineer RF range to be
larger

than ultrasonic
range


Ensures that if listener can hear ultrasound,
corresponding RF will also be heard









t

RF A

US A

















t

S/b

r/v (max)

S

= size of space advertisement

b

= RF bit rate

r

= ultrasound range

v

= 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!

Estimation Algorithm

Windowed MinMode


Distance

(feet)

Frequency


A

B

5

10

5

10

9

Majority

6.4

7.2

Mean (feet)

8

6

Mode (feet)

8

6

Actual distance (feet)

B

A

Orientation relative to B

on horizontal plane

Mobile device

(parallel to horizontal plane)

Beacons on

ceiling



B

Cricket listener with

compass hardware

Orientation

Trigonometry 101

d1

d2

z



sin


㴠⡤㈠
-

搱⤠⼠獱牴
ㄠ
-

z
2
/d
2
)

where d = (d1+d2)/2

Beacon

Idea: Use multiple ultrasonic sensors

and estimate differential distances

Two terms need to be estimated:


1. d2


d1


2. z/d (by estimating


coordinates)

Differential Distance Estimation


Problem: for reasonable values of parameters
(d, z), (d2
-

d1) must have 5mm accuracy


Well beyond all current technologies!

d2

d1

f

= 2
p
(搲


d1)/
l

t

L

䉥慣潮

䕳瑩E慴攠灨慳攠摩晦敲d湣攠扥瑷e敮e畬瑲慳潮楣uwav敦潲浳o

Beacons on

ceiling at known

coordinates



B

Coordinate Estimation

vt
1

vt
2

vt
3

vt
4

(x,y,z)

Four equations, four unknowns

Velocity of sound varies with temperature, humidity


Can be “eliminated” (or calculated!)

Beacon Placement


I am at

B

Room A

Room B

Totally arbitrary beacon placement won’t demarcate spaces correctly

Correct Beacon Placement


Room A

Room B

x

x

I am at

A


Position beacons to detect the boundary


Multiple beacons per space are possible

System Configuration &
Administration


Password
-
based authentication for
configuration


Currently, coordinates manually entered


Auto
-
configuration algorithm being developed


MOREINFO database centrally managed with
Web front
-
end


Relational DBMS


Challenge: queries that don’t divulge device
location, but yet are powerful

Ultrasonic

sensor

RF antenna

Ultrasonic

sensor

RF module (rcv)

Atmel

processor

Listener

Beacon

RF module (xmit)

RS232

i/f

Cricket v1 Prototype

Host software libraries in Java;

Linux daemon (in C) for Oxygen BackPaq handhelds

Several apps…

Deployment

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


Scalable location
-
aware monitoring (SLAM) apps: MIT library
book tracking, asset management, MIT physical plant
maintenance

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”

How do I get to Jorg’s office?

Large
-
Scale Monitoring

Response time

Scale

(# sensors)

Days/Hours

Minutes

Seconds

Irrigation

Physical plant

Repair orders

Library usage

Power, thermal

Monitoring & control

Asset tracking

Fire detection

Assisted evacuation

Cricket network

auto
-
configuration

HazMat response

Local navigation

Motion detection

Leaks, floods

Lab equipment

monitoring

Personal safety

Traffic, parking

10
4

10
5

10
6

10
7

Requirements


Ubiquitous location
-
sensing


Heterogeneous sensor networking/comm. protocols


Resource discovery


Event handling


Query processing


Spatial databases


Mapping and representation


Navigation


User interfaces

Cricket beacons

(Pervasive)

Fixed sensor proxy (sensor integration, pruning)

Mobile sensor proxy

Event
-
handling

& resource discovery

network

Application event handlers

(Distributed)

Data stores

Tag reader

Sensors & actuators

Actions

Events

Sensor

Proxy

Tagged books,

equipment

Strawman Architecture

Summary


Location
-
aware computing poses numerous
interesting challenges for CS


An important component of pervasive computing


Integrating real
-
world information


App spectrum from HCI


Embedded apps


Cricket provides location information for
mobile, pervasive computing applications


Space, position, orientation


Flexible and programmable infrastructure


Deployment and management facilities

Collaborators


Bodhi Priyantha


Allen Miu


Ken Steele


Rafael Nogueras


Seth Teller


Steve Garland


Dorothy Curtis


Omar Aftab


Erik Demaine


Mike Stonebraker


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