27
1 Developing Mobile Applications 2G1722 Johan Montelius Developing Mobile Applications Location based services

Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

1Developing Mobile Applications 2G1722 Johan Montelius

Developing Mobile Applications

Location based services

Page 2: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

2Developing Mobile Applications 2G1722 Johan Montelius

GSM positioning

cell id

A C

B

120 degrees

Page 3: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

3Developing Mobile Applications 2G1722 Johan Montelius

An ideal world

Page 4: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

4Developing Mobile Applications 2G1722 Johan Montelius

in reality, cells are

• diffuse• overlapping• depending on

– geography– buildings– weather

Page 5: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

5Developing Mobile Applications 2G1722 Johan Montelius

Cells vary in size

• Rural area– 35 km in radius

• Urban areas– 4 km

• shopping mall– 100 m

Page 6: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

6Developing Mobile Applications 2G1722 Johan Montelius

Timing advance (TA)

• Base station inform the terminal how much earlier it should transmit to meet its time slot.– granularity aprx 550m

• BSC sends out the first TA as a reply on a random access request. BTS continuously sends TA updates during a call (how often?)

• Efficient to use when cells are large.• However.....

Page 7: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

7Developing Mobile Applications 2G1722 Johan Montelius

No angel

?

?

?

?

?

?

Page 8: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

8Developing Mobile Applications 2G1722 Johan Montelius

when do we have the information?• phone idle

– we only know the location area (a group of base stations)

• during a call (or signaling) – we know the TA of the terminal

related to one base station• how do we we get more information?• can we do triangulation?

Page 9: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

9Developing Mobile Applications 2G1722 Johan Montelius

no easy way out

• The terminal has to make a hand over to produce more TA information. Not easy to force the phone to do hand over.

• TA is deliberately inaccurate since we do not want to send them to often.

• Signal strength is always reported to the system but this will not give us very high accuracy (if you don't create a radio map).

Page 10: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

10Developing Mobile Applications 2G1722 Johan Montelius

Observed Time Difference of Arival (OTDOA)• The terminal also maintains a observed

time difference of base stations within reach. If the real time difference is known, a new TA can be calculated in advance when doing hand over.

Page 11: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

11Developing Mobile Applications 2G1722 Johan Montelius

Observed Time Difference

Real Time Difference

Observed Time Difference

Page 12: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

12Developing Mobile Applications 2G1722 Johan Montelius

Enhanced OTD (E-OTD)

• Base stations use GPS receivers to observe the real time difference between stations.

• Terminals measure exact arrival of synchronization bursts from several base stations.

• The terminal will relay this information to the network that can then do triangulation.

Page 13: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

13Developing Mobile Applications 2G1722 Johan Montelius

Triangulation using E-OTH (ideal)

GPS

GPS

GPS

Page 14: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

14Developing Mobile Applications 2G1722 Johan Montelius

Angle of Arrival (AOA)

• Array antennas at BTS measure the angle to terminal.

• Two measurements is enough• Array antennas are expensive but might

be deployed anyway.• High accuracy in rural areas.• Could be enhanced with measurement of

distance (one BTS is enough)

Page 15: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

15Developing Mobile Applications 2G1722 Johan Montelius

Uplink - Time Difference of Arrival• Based on the uplink measurements

performed by the base stations.• New antenna at BTS that tracks

terminals.• No special handset needed.• Accuracy aprx. 50m

Page 16: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

16Developing Mobile Applications 2G1722 Johan Montelius

What if we did it ...

• Using a dedicated positioning system that was not depending on the mobile network...– GPS

Page 17: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

17Developing Mobile Applications 2G1722 Johan Montelius

Global Positioning System

Page 18: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

18Developing Mobile Applications 2G1722 Johan Montelius

GPS

• 24 satellites, in operation since 1994• satellites orbit the earth in 12 hours at

20.000 km and an inclination of 56 and 65 degrees.

• each satellite transmit: id, time and almanac

• you need four satellites to determine x,y,z – why four?

• accuracy aprx. 10 m • what happened to scrambling of signal?

Page 19: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

19Developing Mobile Applications 2G1722 Johan Montelius

What is the problem

Page 20: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

20Developing Mobile Applications 2G1722 Johan Montelius

Differential GPS

• Place a GPS receiver on a known location.• Record the GPS signals and calculate how

they differ from an ideal situation.• Relay this information to all D-GPS

receivers in the area ( hundreds of km )• How to relay: FM radio, mobile networks ..• Accuracy aprx. 2 m

Page 21: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

21Developing Mobile Applications 2G1722 Johan Montelius

problems with GPS

• weak signals – only works indoors• long time to find and decode the signals

– cold start could take minutes• owned by the US :-) • Russian GLONASS• EU Galileo under deployment

Page 22: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

22Developing Mobile Applications 2G1722 Johan Montelius

Assisted GPS (A-GPS)

• The terminal asks the network which satellites to search for (no cold start).

• Terminal records satellite data but does not do any calculations. All data is sent to a positioning server.

• The server has differential information of the area and can do a very precise calculation.

• The position is relayed to the requested service or to the terminal.

Page 23: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

23Developing Mobile Applications 2G1722 Johan Montelius

Other techniques

• You're close– Use Bluetooth or WLAN access points– If you can hear me you're close

• Tell me what you see– Gather whatever information you have,

send it to a server.– Requires that the fingerprints are

collected and valid over time.

Page 24: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

24Developing Mobile Applications 2G1722 Johan Montelius

J2ME JSR 179// Set criteria to 500 meters horizontallyCriteria cr= new Criteria();cr.setHorizontalAccuracy(500);// Get an instance of the providerLocationProvider lp= LocationProvider.getInstance(cr);// Request the location, setting a one-minute timeoutLocation l = lp.getLocation(60);Coordinates c = l.getQualifiedCoordinates();if(c != null ) { // Use coordinate information double lat = c.getLatitude(); double lon = c.getLongitude();}

Page 25: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

25Developing Mobile Applications 2G1722 Johan Montelius

technology is one thing

• Even when we have a working technology that can give us an accurate position we need to turn this in to a service!– find the nearest Bank :-(– find a friend– find a stolen car – emergency response E112/E911

Page 26: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

PC (web) community

Pervasive street adventure

Join the rebel fight against Global Nation

Tactical battles where brainpower matters

Build the best robot for your career

Multiplayer and singleplayer missions with real and virtual enemies

Strong community features

3-4 months episodes with storyline

J2ME client

Page 27: Developing Mobile Applications - KTHjohanmon/attic/2g1722/lectures/10 positioning… · Developing Mobile Applications 2G1722 Johan Montelius Assisted GPS (A-GPS) • The terminal

27Developing Mobile Applications 2G1722 Johan Montelius

Mobile operators• Cell id has been used for several years

– accuracy is low– need to work with several mobile operators

• 3GPP– S tandardizing in TS 23.271 how positioning

information should be gathered using several techniques (Cell, OTDOA, ..., GPS )

• OMA– Mobile Location S ervice Architecture– How to access positioning information and build

services. Role of operator, privacy, ...