Lecture 2: GPS Pseudorange

42
Lecture 2: GPS Pseudorange GEOS 655 Tectonic Geodesy Jeff Freymueller

Transcript of Lecture 2: GPS Pseudorange

Page 1: Lecture 2: GPS Pseudorange

Lecture2:GPSPseudorange

GEOS655TectonicGeodesyJeffFreymueller

Page 2: Lecture 2: GPS Pseudorange

GPSDesignTimeline•  NAVSTAR=NAVigaEonSystem

withTimingandRanging•  Always-on,instantglobal

posiEoning•  Developmentbeganin1973•  Firstsatelliteslaunched1978•  Userequiptests1980•  1983:KoreanAir007shotdownby

SovietUnion–  Planehadstrayedaconsiderable

distanceintoSovietairspace–  LedUSPres.Reagantomandate

futurecivilianuseofGPS

Page 3: Lecture 2: GPS Pseudorange

GPSUserHardware–Old!

Page 4: Lecture 2: GPS Pseudorange

GPSUserHardware–Modern!

Page 5: Lecture 2: GPS Pseudorange

DifferentModesofUse

Naviga&on•  Instantaneous•  SinglestaEon•  Originalintendeduse•  Accuracy

–  Fewmeters–  Sub-meterw/differenEalcorrecEons

Surveying•  Usuallypost-process•  UsuallymulE-staEon•  Scienceorsurvey•  Accuracy

–  1-2cmatworst–  1-2mmatbest

•  Also“seismology”

Page 6: Lecture 2: GPS Pseudorange

BasicPrinciples:Surveying•  Requiresdatafromn≥4satellites,m≥2receivers

–  PointposiEoningapproachesworkwith1receiver•  RequiresconEnuoustrackingoverEme•  Post-processedbutreal-Emebeingdeveloped•  Usepseudorangeandcarrierphasemeasurementsfromeachsatellitetoreceiver

•  OrbitsofsatellitesfixedoresEmated•  ClockerroronsatellitesesEmatedordifferencedout•  EsEmatereceiverposiEon(X,Y,Z)andclockerror•  Modelawidevarietyofpathdelaysandothereffects

Page 7: Lecture 2: GPS Pseudorange

PosiEoningByRanging1

A 2D example: If you know you are a certain distance from Boise, your position could be anywhere on the circle.

Page 8: Lecture 2: GPS Pseudorange

PosiEoningByRanging2

With two distances, you know you are at one of two points.

Page 9: Lecture 2: GPS Pseudorange

PosiEoningByRanging3

With three distances, you know you are in Denver. In 3D the circles become spheres, and with three distances you still

have two possible locations – one on the surface and one out in space.

Page 10: Lecture 2: GPS Pseudorange

GPSPosiEoning•  MeasureposiEonbymeasuringrangestosatellites– Afewsatellitescanserveanunlimitednumberofusersontheground,anywhereintheworld

•  Howdoweknowwheresatellitesare?– TheybroadcasttheirposiEons(orbits)inanaviga&onmessage

–  (or)someonegivesuspreciseorbits

•  Measuredrangesarecalledpseudoranges•  High-precisionGPSusesthephaseoftheGPScarriersignaltomeasurechangesinrange

Page 11: Lecture 2: GPS Pseudorange

Whycallita“pseudorange”?

•  Rangeisthedistancefromsatellitetoreceiver,pluspathdelays.

•  Pseudorangeisdistancepluseffectsofclockerrors

•  TheterminologyhasoldrootsinnavigaEon.– VLBIandGPSarepseudoranging;SLRisranging

•  Geometricrangeρistruedistance.•  P=ρ+c*(clockerrors)+c*(pathdelays)

Page 12: Lecture 2: GPS Pseudorange

EvolvingSatellites

1970s-1980s: smaller, relatively simple 2000s: big, more complex

Page 13: Lecture 2: GPS Pseudorange

SatelliteConstellaEon

Page 14: Lecture 2: GPS Pseudorange

SatelliteConstellaEonFacts•  Nominally4satellites(SVs)ineachof6equallyspacedorbitalplanes(now5ineachplane).

•  Orbitalplanesinclined55°fromequator.•  NearlycircularorbitsR=26,600km~4RE•  Orbitalperiodis11h58m,twoorbitspersiderealday

•  Siderealdayislengthofdaydefinedbywhenstarsappearinsameplaceinsky– DiffersfromrotaEonaldaybecauseofmoEonofeartharoundthesun.

Page 15: Lecture 2: GPS Pseudorange

Orbits

•  CanesEmateorbitsorfixorbitstopre-determinedvalues•  RepresentaEonoforbit

–  Broadcast:Keplerianelements+Eme-dependentcorrecEons–  TabularfileofXYZsatelliteposiEons–  Trajectory:iniEalcondiEons+integrateequaEonsofmoEon

(neededtoesEmateorbits)

•  InpracEce,highlypreciseorbitsareavailablefromtheIGS–  Ultra-Rapid:includespredict-aheadforrealEmeuse–  Rapid:Availablenextday–  Final:Availablein<2weeks

Page 16: Lecture 2: GPS Pseudorange

KeplerianElements•  AnellipEcalorbitandtheposiEonofabodycanbedescribedby6parameters(Keplerianelements)–  Semi-majoraxis–  Eccentricity–  Fouranglesshownatles

•  Earthisnotapointmass,sosatelliteorbitsarenotexactlyellipEcal.–  Otherforcesalsoperturborbit

Page 17: Lecture 2: GPS Pseudorange

SatelliteGroundTracks

Page 18: Lecture 2: GPS Pseudorange

24hoursofGPSDataskytracks

Southern California Fairbanks

These are the paths you would see in the sky if you could see the satellites

Page 19: Lecture 2: GPS Pseudorange

GPSSignalStructure•  ThreefrequenciesatL-band,L1,L2,andL5

–  L1at154*10.23MHz(~19cm)–  L2at120*10.23MHz(~24cm)–  L5at115*10.23MHz(~25cm)

•  CodesModulated(phasemodulaEon)ontoeachcarrier–  P-codeat10.23MHzonL1+L2–  C/A(CoarseAcquisiEon)codeat1.023MHzonL1+L2(newL2C)

–  NavigaEonmessageat50bitspersecond

•  PandC/Acodesaretypesofpseudo-randomnoise(PRN)codes

Page 20: Lecture 2: GPS Pseudorange

TypesofsignalmodulaEon

Amplitude Modulation (AM)

Frequency Modulation (FM)

Phase Modulation (PM)

Page 21: Lecture 2: GPS Pseudorange

SatelliteSignals

Page 22: Lecture 2: GPS Pseudorange

PrecisionofObservaEons

•  Code“chiplength”isthedistanceassociatedwitheachbitofthecode.–  C/A:293m

•  Repeatsevery~300km

–  P:29.3m

•  Carrierwavelengthisanalogoustochiplength==2-3ordersofmagnitudemoreprecise

“chip length”

Page 23: Lecture 2: GPS Pseudorange

DenialofAccuracy•  USDoDcanreduceaccuracyforreal-Emecivilianusers•  (S/A)SelecEveAvailability–onfrom1990stolate1990s–  Epsilon(introduceerrorsinnavigaEonmessage)–  Dither(introducerapidvariaEoninSVclocks)– Militaryreceivershavespecialchipstoundothis

•  (A/S)AnE-Spoofing–onsince1994–  EncrypEonofP-code–  Prevents“theenemy”fromimitaEng(spoofing)GPSsignal– ModernreceiversgetaroundthisencrypEoninvariousways(includinganear-reverse-engineeringinonecase).

Page 24: Lecture 2: GPS Pseudorange

Pseudo-RandomNoise•  Computerscannotgeneratetruerandomnumbers,butcangenerateasequenceofnumberswithrandomstaEsEcalproperEes.– Butthesequencecanberepeatedexactly– BeginwithsomestarEngvalue,thenperformaseriesofoperaEons

•  C/Acodehas1023bits,repeats1000Emespersecond

•  Pcodehasalotofbits,repeatsevery266.4days;eachSVgetsa7-daypieceofcode

Page 25: Lecture 2: GPS Pseudorange

CodeCorrelaEonforRanging

Receiver generates a copy of the (known) code and correlates with the received code

Page 26: Lecture 2: GPS Pseudorange

PseudorangeObservaEonModel•  ThecorrelaEonEmeshisgivesanesEmateofthetravelEme,whichisthefundamentalpseudorangemeasurement.– TravelEme=(EmeofrecepEon)–(Emeoftransmission)

•  PS=(T–TS)c– T=receiverclockreadingatrecepEon– TS=satelliteclockreadingattransmission– c=speedoflight=299792458m/s

Page 27: Lecture 2: GPS Pseudorange

AccounEngforClockBiases•  Clockbiasorclockerror?

– Error==mistake– Error==bias,measurementerror– Error==esEmateofuncertaintyintheabove

•  VLBI“removed”clockerrorsbyusingultra-stablehydrogenmaserclocks– VLBIactuallymodelsclockbiasesasquadraEc

•  GPSmustesEmatereceiverclockbias(andsatelliteclockbiasforhighprecisionwork)

Page 28: Lecture 2: GPS Pseudorange

ObservaEonModelwithClocks•  PS=(T–TS)c

–  T=t+τ–  TS=tS+τS–  t,tSaretruereceive,transmitEmes,τareclockerrors

•  SubsEtuEng–  PS=[(t+τ)–(tS+τS)]c–  PS=(t-tS)c+(τ–τS)c–  PS=ρS(t,tS)+(τ–τS)c

•  ρS(t,tS)israngefromreceiveratreceiveEmetosatelliteattransmitEme:

ρS (t, t S ) = xS (t S ) − x(t)( )2

+ yS (t S ) − y(t)( )2

+ zS (t S ) − z(t)( )2

|τ|≤1millisecond

|τS|issmall(CesiumorRubidiumclocks)

Page 29: Lecture 2: GPS Pseudorange

LightTimeEquaEon•  ThetransmissionEmeis~0.07sec.ToevaluatethegeometricrangeweneedtomapthesatelliteposiEonbacktothetransmissionEme.ButwestartoutknowingonlythereceiveEme.WecansolvethisproblemiteraEvely:

t(0)S = t = (T − τ)

t(1)S = t −

ρS (t,t(0)S )

c

t(2)S = t −

ρS (t,t(1)S )

c!

First guess: Transmit time = receive time

Next iteration: Correct for satellite position based on the transmit time estimated from the previous iteration.

Page 30: Lecture 2: GPS Pseudorange

SetofSimplifiedObserv.EquaEons

•  Now,generalizetomulEplesatellites.WeuseasuperscripttoidenEfyeachsatellite(don’tconfusewithanexponent).LaterwewillhavetouseasubscripttokeeptrackofmulEplereceivers:– P(1)=[(x(1)–x)2+(y(1)–y)2+(z(1)–z)2]1/2+cτ–cτ(1)– P(2)=[(x(2)–x)2+(y(2)–y)2+(z(2)–z)2]1/2+cτ–cτ(2)– P(3)=[(x(3)–x)2+(y(3)–y)2+(z(3)–z)2]1/2+cτ–cτ(3)– P(4)=[(x(4)–x)2+(y(3)–y)2+(z(3)–z)2]1/2+cτ–cτ(4)

x, y, z, τ: receiver position and clock error

Page 31: Lecture 2: GPS Pseudorange

LinearizingNonlinearEquaEons•  Therearesimplewaysto

solvesystemsoflinearequaEons,likematrixinversionorleastsquares.Butwehaveanonlinearproblem.Oneapproachistolinearize,orconstructalinearapproximaEontothenon-linearproblem.WecandothatwithTaylor’stheorem(TaylorSeries)

f(x)=

Page 32: Lecture 2: GPS Pseudorange

LinearizingPart2

•  WeapproximatebytakingjustthelineartermsoftheTaylorSeries.

•  Welinearizeaboutapproximatevalues(a,b)

•  ParEalderivaEvesarecomputedat(a,b)

Page 33: Lecture 2: GPS Pseudorange

LinearizingOurEquaEons

•  WelinearizeourequaEonsaboutapproximatevalues(x0,y0,z0,τ0)

P(x,y,z,τ ) = P(x0,y0,z0,τ 0) +∂P∂x

x − x0( ) +∂P∂y

y − y0( ) +∂P∂z

z − z0( ) +∂P∂τ

τ − τ 0( )

P(x,y,z,τ ) = P(x0,y0,z0,τ 0) +∂P∂x

Δx +∂P∂y

Δy +∂P∂zΔz +

∂P∂τ

Δτ

P(x,y,z,τ ) − P(x0,y0,z0,τ 0) =∂P∂x

Δx +∂P∂y

Δy +∂P∂zΔz +

∂P∂τ

Δτ

Pobserved − Pcomputed =∂P∂x

Δx +∂P∂y

Δy +∂P∂zΔz +

∂P∂τ

Δτ

Page 34: Lecture 2: GPS Pseudorange

ObservaEonModel•  TosolvetheseequaEons,weneedtowritethemintheformofanobservaEonmodel.– ObservaEons=Model+measurementnoise

•  Pobserved=P(x,y,z,τ)+v

Pobserved = Pcomputed +∂P∂x

Δx +∂P∂y

Δy +∂P∂zΔz +

∂P∂τ

Δτ + v

Pobserved − Pcomputed =∂P∂x

Δx +∂P∂y

Δy +∂P∂zΔz +

∂P∂τ

Δτ + v

ΔP =∂P∂x

∂P∂y

∂P∂z

∂P∂τ

⎝ ⎜

⎠ ⎟

ΔxΔyΔzΔτ

⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟

+ v

Page 35: Lecture 2: GPS Pseudorange

MatrixEquaEon

•  ItiseasiertodealwiththisequaEonifwewriteitasamatrixequaEon:

ΔP (1)

ΔP (2)

ΔP (3)

ΔP (4 )

⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟

=

∂P(1)

∂x∂P(1)

∂y∂P(1)

∂z∂P(1)

∂τ∂P(2)

∂x∂P(2)

∂y∂P(2)

∂z∂P(2)

∂τ∂P(3)

∂x∂P(3)

∂y∂P(3)

∂z∂P(3)

∂τ∂P(4 )

∂x∂P(4 )

∂y∂P(4 )

∂z∂P(4 )

∂τ

⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟

ΔxΔyΔzΔτ

⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟

+

v(1)

v(2)

v(3)

v(4 )

⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟

Page 36: Lecture 2: GPS Pseudorange

EvaluatetheParEalDerivaEves

•  Thisisosenwriyeninmatrixformlike– b=Ax+v Aiscalledthe“Designmatrix”–  Ifρ(i)=[(x0–x(i))2+(y0–y(i))2+(z0–z(i))2]1/2

A =

x0 − x(1)

ρ(1)y0 − y

(1)

ρ(1)z0 − z

(1)

ρ(1)c

x0 − x(2)

ρ(2)y0 − y

(2)

ρ(2)z0 − z

(2)

ρ(2)c

x0 − x(3)

ρ(3)y0 − y

(3)

ρ(3)z0 − z

(3)

ρ(3)c

x0 − x(4 )

ρ(4 )y0 − y

(4 )

ρ(4 )z0 − z

(4 )

ρ(4 )c

⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟

These have the form of trig functions, and can also be written in terms of the azimuth to the satellite and

the inclination of the satellite above the

horizon.

Page 37: Lecture 2: GPS Pseudorange

SolvingtheEquaEons

•  Ifthereare4observaEonsexactly,thenthesystemofequaEonscanbesolvedexactly:– b=Ax+v èx=A-1b(noisev=0isassumed)

•  Ingeneral,wewillhavemorethan4satellitesobservedataEme.Sohowdowefindthe“best”soluEon.Leastsquares!– LeastsquaressoluEonminimizesthesumofsquaresofresiduals,thatis

– FindthexthatgivestheminimumvTv.

Page 38: Lecture 2: GPS Pseudorange

LeastSquaresSoluEon

•  TheleastsquaressoluEon,forequallyweighteddata,is– x’=(ATA)-1ATb

•  Thisassumesthat(ATA)-1exists.Itwillexistaslongasthereare4ormoresatelliteslocatedindisEnctdirecEonsinthesky.Twosatelliteslocatedinexactlythesameplacewouldcountasone.

Page 39: Lecture 2: GPS Pseudorange

BiasesandErrors•  Supposeweknowwhatthe

measurementerrorsare.HowwouldtheseknownerrorsbiasouresEmatesofposiEon(andclockbias)?

–  vx=(ATA)-1ATv–  Youmightusethistodetermine

whetheranewlydiscoverederrorhasabigimpactonyouresEmatedparameters,butingeneralyouwouldsimplywanttocorrectthedata!

•  Inreality,youdon’tknowthemeasurementerrors,butyoumayknowtheirstaEsEcalproperEes.Forexample,youmayknowthatthemeanmeasurementerroris0,withuncertaintyσ,andthatthemeasurementerrorsfollowaGaussianornormaldistribu&on.

In this case: Expectation: E(v) = 0 Covariance: C = E(vvT) = σ2I

Page 40: Lecture 2: GPS Pseudorange

CovarianceMatrix•  Thecovarianceisgivenasa(symmetric)matrix.Fortheproblemwehavejustsolved,– Cx=σ2(ATA)-1

– σ2isthedatanoise.(ATA)-1relatesonlytothegeometry.

•  Orintermsofthecomponents:

Cx =σ 2

σ x2 σ xy σ xz σ xτ

σ yx σ y2 σ yz σ yτ

σ zx σ zy σ z2 σ zτ

στx στy στz στ2

⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟

Page 41: Lecture 2: GPS Pseudorange

LocalCoordinates

•  YoucanalsotransformtheXYZcoordinatestolocalcoordinates(east,north,height).We’llleavetheequaEonsforthatforlater.Butifyoutakejustthecoordinatespartofthecovariance,youget:

CL =σ 2

σ e2 σ en σ eh

σ ne σ n2 σ nh

σ he σ hn σ h2

⎜ ⎜ ⎜

⎟ ⎟ ⎟

Page 42: Lecture 2: GPS Pseudorange

DOPs–DiluEonofPrecision•  YourhandheldGPSprobablyreportsanumbercalled“PDOP”,whichstandsfor“PosiEonDiluEonofPrecision”.TheseareotherDOPsaswell,whichallgivemeasuresofhowthesatellitegeometrymapsintoposiEonorEmeprecision.–  VDOP=σh

–  HDOP=(σe2 + σn

2)1/2 –  PDOP=(σe

2 + σn2 + σh

2)1/2 –  GDOP=(σe

2 + σn2 + σh

2 + c2στ2)1/2

–  TDOP=στ•  MulEplyPDOPbymeasurementprecisiontogetuncertaintyin3DposiEon.

PDOP > 5 considered poor