Tracking Prasun Dewan Department of Computer Science University of North Carolina dewan@unc.edu.

Post on 01-Jan-2016

217 views 1 download

Tags:

Transcript of Tracking Prasun Dewan Department of Computer Science University of North Carolina dewan@unc.edu.

Tracking

Prasun Dewan

Department of Computer Science University of North Carolina

dewan@unc.edu

2

Triangulation

Need to solve for x, y, z Assume orientation not an issue

Need distance to three points with known coordinates Can solve for x, y, z

3

Issues

What are the three known points? How to determine distances? Expense Privacy

4

GPS

Satellites are known points Their current location known 24 hrs in advance

upto accuracy of a few meters Used for tuning?

They also broadcast their position Measure time takes for signal to each receiver

Signal frequency 1575.42 MHz and 1227.6 MHz Code division multiple access to eliminate

interference Time of flight of signal gives distance

5

Clock Synchronization

Clocks of satellites synchronized Clock of receiver not synchronized Offset same for all satellites One more variable Need four satellites

6

Excerpt from Hopper’s Slides

Start of excerpt

7

Sentient ComputingUbiquitous Computing vision

Computing devices everywhere

Access to applications anywhere

Whatever is on hand is available

Sentient Computing visionUbiquitous Computing made context-aware

Physical context used for automatic control

Sensors and space are part of computing systems

8

Programming With Space

The componentsNotions and representations of

physical spaceData and computational modelsSensor information

User interface the real world

9

Components for Programming With Space

Devices

Platforms

Sensors

Networks

+Architecture

Conduits

10

Components for Programming With Space

Devices

Platforms

Sensors

+Architecture

11

Sensors: Location Information

Containment GSM, UMTS, broadband radio Active badge

Proximity Bluetooth, IrDA PICOnet

Co-ordinate GPS Active bat

12

Sensors: Location Information

Containment GSM, UMTS, Broadband Radio Active Badge

Proximity Bluetooth, IrDA PICOnet

Co-ordinate GPS Active bat

13

Containment: Active Badge

Infra-Red Network 10 meter range

diffuse

room-scale location

14

Sensors: Location Information

Containment GSM, UMTS, Broadband Radio Active Badge

Proximity Bluetooth, IrDA PICOnet

Co-ordinate GPS Active Bat

15

Sensors: Location Information

Containment GSM, UMTS, broadband radio Active badge

Proximity Bluetooth, IrDA PICOnet

Co-ordinate GPS Active bat

16

Ultrasonic Location System

Mobile transmitter (Bat)

Fixed receiversCeiling

Active BatsUltrasonic transponder

Measure pulse time-of-flight

Radio synchronised

17

DSP Ceiling Array

25,000 MIPS to cover AT&T Laboratories Cambridge!

18

Components for Programming With Space

Devices

Platforms

Sensors

Networks

+Architecture

Conduits

19

Telephone318

Computer“Pumpkin”

Computer“Papaya” Person

“Mike”

Person“Pete”

Representing the Real World

Model real world as collection of objects

Computer“Plantain”

Person“Andy”

Follow-mePhonebook

MobileDesktop

Telephone241

Telephone217

CTIswitch

Resourcemonitor

Keyboardmonitor

Locationservice

Applications

Software objects

Sensors

Objects maintain state using sensor data Applications query relevant sets of objects

20

Data Model Visualisation

21

Spatial Monitoring

Vague spatial facts formalised as geometric containment and overlapping relationships between spaces

X

M

‘X is holding the microphone M’‘X can be seen by

camera B but not by camera A’

A

B

X

22

Spatial Indexing

Generates all positive/negative overlapping or containment events

thro

ug

hp

ut

(‘00

0 u

pd

ates

s-1)

1

3

2

4

population (‘000)10 20 30

non-overlapping spaces

overlapping spaces

23

Putting It All TogetherMove user’s desktop to screen in front of them

Visible

A

Visib

le

B

Visible

C

Callbacks

Registration+ve Containment (Andy)-ve Overlapping (Andy)

-ve Overlapping(Andy,”Visible B”)

CLEAR DESKTOP FROM B

-ve Overlapping(Andy,”Visible A”)

CLEAR DESKTOP FROM A

+ve Containment(Andy,”Visible B”)

MACHINE B: NOT IN USEMOVE DESKTOP TO B

+ve Containment(Andy,”Visible C”)MACHINE C: IN USE NO ACTION

24

Example Applications

Corporate memoryRecord me / what’s around meAnnotate multimedia stream

Camera field-of-view

Flat display

Compositedisplay

“Plonk-and-play” systemsSpatial configuration determines

logical configuration

No need to know device IDs

Automatic personalisation

25

Sentient Computing: New User Interfaces

Non-user interfaces!

Objects and people are cursors in the real-world of icons

Aural and visual feedback

Nissanka B. Priyantha Anit Chakraborty

Hari Balakrishnan

MIT Lab for Computer Science

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

The Cricket Location-Support System

27

Motivation

Emergence of pervasive computing environments

Context-aware applications Location-dependent behavior

User and service mobility Navigation via active maps Resource discovery

Cricket provides applications information about geographic spaces they are in

28

Design Goals

Preserve user privacy Operate inside buildings Recognize spaces, not just physical

position Good boundary detection is important

Easy to administer and deploy Decentralized architecture and control

Low cost and power consumption

29

Traditional Approach

Controller/Location database

Base stations

ID = u

Transceivers

• Centralized architecture• User-privacy issues• High deployment cost

ID = u ? ID = u ? ID = u ?

ID = u ?

30

Cricket Architecture

Beacon

Listener

SpaceA

SpaceB

SpaceC

I am atC

• Decentralized, no tracking, low cost• Think of it as an “inverted BAT”!

31

Determining Distance

A beacon transmits an RF and an ultrasonic signal simultaneously RF carries location data, ultrasound is a

narrow pulse Velocity of ultra sound << velocity of RF

RF data(location name)

Beacon

Listener

Ultrasound(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

32

Uncoordinated Beacons

Multiple beacon transmissions are uncoordinated

Different beacon transmissions can interfere Causing inaccurate distance measurements

at the listener

Beacon A Beacon B

timeRF B RF A US B US A

Incorrect distance

Handling Spurious Interactions

Combination of three different techniques: Bounding stray signal interference Preventing repeated interactions

via randomization Listener inference algorithms

34

Bounding Stray Signal Interference

RF range > ultrasonic range Ensures an accompanied RF signal with

ultrasound

tRF A US A

35

t

S/b

r/v (max)

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

36

Bounding Stray Signal Interference

• Envelop ultrasound by RF• Interfering ultrasound causes RF signals to

collide• Listener does a block parity error check

– The reading is discarded

tRF A US A

RF B US B

37

Preventing Repeated Interactions

Randomize beacon transmissions:

loop:pick r ~ Uniform[T1, T2];delay(r);xmit_beacon(RF,US);

Erroneous estimates do not repeat Optimal choice of T1 and T2 can be calculated

analytically Trade-off between latency and collision

probability

Inference Algorithms

MinMode Determine mode for each beacon Select the one with the minimum mode

MinMean Calculate the mean distance for each beacon Select the one with the minimum value

Majority (actually, “plurality”) Select the beacon with most number of readings Roughly corresponds to strongest radio signal

Inference Algorithms

Distance(feet)

Frequency A B

5 10

5

A B

Actual distance (feet) 6 8

Mode (feet) 6 8

Mean (feet) 6.14 6.4

Number of samples 7 10

40

Closest Beacon May Not Reflect Correct Space

I am atB

Room A Room B

41

Correct Beacon Positioning

Room A Room B

x x

I am atA

• Position beacons to detect the boundary

• Multiple beacons per space are possible

42

Implementation Cricket beacon and listener

• LocationManager provides an API to applications

• Integrated with intentional naming system for resource discovery

43

Implementation Cricket beacon and listener

• LocationManager provides an API to applications

• Integrated with intentional naming system for resource discovery

Micro-controller

RF

US

Micro-controller

RF

USRS232

44

Static listener performance

Interference

L2

L1

• Immunity to interference– Four beacons within

each others range– Two RF interference

sources

• Boundary detection ability– L1 only two feet

away from boundary

I1 I2

L1 0.0% 0.0%

L2 0.3% 0.4%

I1

I2

% readings due to interference of RF from I1

and I2 with ultrasound from beacons

Room B

Room C

Room A

45

Inference Algorithm Error Rates

Error Rates Measured With Listener At L1

0

5

10

15

20

25

30

35

40

45

10 20 30 40 50 60 70 80 90 100

Number of readings

Err

or R

ate

(%)

MinMean

MinMode

Majority

46

Mobile listener performance

Location Algorithm Error Rates

0

2

4

6

8

10

12

14

16

18

20

2 3 4 5 6

Sampling Interval

Erro

r Rat

e (%

)

MinMean

MinMode

Majority

Room A Room B

Room C

47

ComparisonsBat Active

badgeRADAR Cricket

Track user location?

Yes Yes No, if client has signal map

No

Deploymentconsiderations

Centralized controller +matrix ofsensors

Centralized database + wired IR sensors

RF signal mapping and good radios

Spacenamingconvention

Position accuracy

Few cm Room-wide Room-wide ~2 feet forspatialresolution

Attribute

System

48

Summary

Cricket provides information about geographic spaces to applications Location-support, not tracking Decentralized operation and administration

Passive listeners and no explicit beacon coordination Requires distributed algorithms for beacon

transmission and listener inference Implemented and works!

49

50

51

Decentralized

52

53

Preserves user privacy Good granularity Component cost U.S. $10

54

Beacon positioning

• Imaginary boundaries

• Multiple beacons per location

Location X

X1 X2

X3

ImaginaryBoundary

55

Future work

Dynamic transmission rate with carrier-sense for collision avoidance.

Dynamic ultrasonic sensitivity. Improved location accuracy. Integration with other technologies such

as Blue Tooth.

57

Inference algorithms

Compared three algorithms Minimum mode Minimum arithmetic mean Majority

58

Minimizing errors.

Proper ultrasonic range ensures overlapping RF and ultrasonic signals RF data 7 bytes at 1 kb/s bit rate RF signal duration 49 ms Selected ultrasonic range = 30ft < 49 ft Signal separation < 49 ms

59

Minimizing errors.

Interfering ultrasound causes RF signals to collide

Listener does a block parity error check The reading is discarded

60