Come trovare l'anello di copertura del satellite GPS sull'ellissoide WGS-84?


14

Dato quanto segue:

  1. Tempo, t
  2. L'insieme di dati effemeridi IS-200, E, di un satellite GPS corrispondente al tempo t
  3. La posizione ECEF del satellite GPS, P = (x, y, z), derivata dal tempo e dalle effemeridi, (t, E).
  4. Supponiamo che la terra sia solo l'ellissoide WGS-84.
  5. Tutti i punti su WGS-84 hanno l'angolo della maschera, m.

Trova il seguente:

  1. l'anello di copertura, R, su WGS-84 del satellite GPS. cioè, il confine che distingue quali punti WGS-84 sono in vista il satellite nel punto P = (x, y, z) e quali punti WGS-84 non sono in vista

Un'illustrazione concettuale del problema.  P è il punto rosso, PRN12;  e l'anello nero è l '"anello di copertura"

Soluzioni accettabili:

  1. Una spline su WGS-84 che approssima R.
  2. Un poligono su WGS-84 che approssima R.
  3. O una formula (s) che mi dà R.

Quello che ho provato finora:

  • Sia e ^ 2 = 0,0066943799901264; eccentricità quadrata

Abbiamo una posizione ECEF WGS-84 per latitudine geodetica phi e longitudine lambda:

r = 1 / (sqrt (1-e ^ 2 sin ^ 2 (phi))) * (cos (phi) * cos (lambda), cos (phi) * sin (lambda), (1-e ^ 2) * sin (phi))

Quindi converto ECEF nella cornice geografica est-nord su (ENU) con phi e lambda usando la matrice:

     (-sin(lambda)                  cos(lambda)                  0       )
C=   (-cos(lambda)*sin(phi)        -sin(lambda)*sin(phi)         cos(phi))
     ( cos(lambda)*cos(phi)         sin(lambda)*cos(phi)         sin(phi))
  • Sia G = C (P - r)
  • Prendi la componente z di G. se la componente z di G è maggiore di sin (m), allora so che il punto, r, è in vista. Ma non è sufficiente ottenere la soluzione che sto cercando. Potrei solo trovare un mucchio di punti che sono in vista e prendere lo scafo convesso di quei punti, ma questo non è affatto efficiente.

1
Ciao @torrho, benvenuto su GIS.stackexchange. Avrai maggiori probabilità di ricevere aiuto se mostri il tuo lavoro: cosa hai provato finora e cosa (nello specifico!) Ti sta dando problemi.
Simbamangu

@Simbamangu Come si usa il markup del lattice in GIS.stackexchange? posso solo dire $$ \ pi $$?
Torrho,

1
@tomfumb No, non si tratta di compiti a casa. Ho pensato di non essere stato l'unico a riscontrare questo problema, quindi ho pensato di chiedere a una comunità che potrebbe avere.
torrho,

1
Vedo che qualcuno su [ meta.gis.stackexchange.com/questions/3423/… pensa che si tratti di compiti a casa. Non si tratta di compiti a casa, ho cercato su Google questo argomento in modo esauriente e non ho trovato nulla su di esso.
torrho,

Purtroppo non riesco a trovare un modo per usare LaTeX in questo sito! Puoi inserire le equazioni nel testo nel miglior modo possibile o collegarti a schermate delle equazioni LaTeX altrove (ad es. Cartella Dropbox; non puoi aggiungere immagini fino a quando non hai una reputazione più elevata). Raccontaci il contesto di questo problema (perché lo stai facendo) e quale componente GIS specifico ti sta causando problemi e quali altre ricerche o risorse hai usato.
Simbamangu,

Risposte:


17

La soluzione per un ellissoide è piuttosto disordinata - è una forma irregolare, non un cerchio - ed è meglio calcolata numericamente piuttosto che con una formula.

Su una mappa del mondo la differenza tra la soluzione WGS84 e una soluzione puramente sferica sarà appena percettibile (si tratta di circa un pixel su uno schermo). La stessa differenza si creerebbe modificando l'angolo della maschera di circa 0,2 gradi o usando un'approssimazione poligonale. Se questi errori sono accettabilmente piccoli, puoi sfruttare la simmetria della sfera per ottenere una formula semplice.

figura

Questa mappa (usando una proiezione equirettangolare) mostra la copertura di un satellite a 22.164 chilometri (dal centro della terra) con un angolo della maschera di m = 15 gradi sullo sferoide WGS84. Ricalcolare la copertura per una sfera non cambia visibilmente questa mappa.

Sulla sfera, la copertura sarà veramente un cerchio centrato nella posizione del satellite, quindi dobbiamo solo capire il suo raggio, che è un angolo. Chiama questo t . Nella sezione trasversale c'è un triangolo OSP formato dal centro terrestre (O), dal satellite (S) e da qualsiasi punto (P) sul cerchio:

  • Il lato OP è il raggio della terra, R .

  • Il SO laterale è l'altezza del satellite (sopra il centro della terra). Chiama questo h .

  • L'angolo OPS è 90 + m .

  • L'angolo SOP è t , che vogliamo trovare.

  • Poiché i tre angoli di un triangolo si sommano a 180 gradi, il terzo angolo OSP deve essere uguale a 90 - ( m + t ).

La soluzione è ora una questione di trigonometria elementare. La (planare) legge dei seni lo afferma

sin(90 - (m+t)) / r = sin(90 + m) / h.

La soluzione è

t = ArcCos(cos(m) / (h/r)) - m.

Come controllo, considera alcuni casi estremi:

  1. Quando m = 0, t = ArcCos (r / h), che può essere verificato con la geometria euclidea elementare.

  2. Quando h = r (il satellite non è stato avviato), t = ArcCos (cos (m) / 1) - m = m - m = 0.

  3. Quando m = 90 gradi, t = ArcCos (0) - 90 = 90 - 90 = 0, come dovrebbe essere.

Ciò riduce il problema a disegnare un cerchio sulla sfera, che può essere risolto in molti modi. Ad esempio, è possibile bufferizzare la posizione del satellite di t * R * pi / 180 utilizzando una proiezione equidistante centrata sul satellite. Le tecniche per lavorare direttamente con i cerchi sulla sfera sono illustrate su /gis//a/53323/664 .


modificare

FWIW, per i satelliti GPS e gli angoli della maschera piccoli (meno di 20 gradi circa), questa approssimazione non trigonometrica è accurata (a pochi decimi di grado e meno di qualche centesimo di grado quando l'angolo della maschera è inferiore a 10 gradi ):

t (degrees) = -0.0000152198628163333 * (-5.93410042925107*10^6 + 
              3.88800000000000*10^6 r/h + 65703.6145507725 m + 
              9.86960440108936 m^2 - 631.654681669719 r/h m^2)

Ad esempio, con un angolo della maschera di m = 10 gradi e un satellite a 26.559,7 km sopra il centro della terra (che è la distanza nominale di un satellite GPS ), questa approssimazione fornisce 66.32159 ..., mentre il valore (corretto per la sfera ) è 66.32023 ....

(L'approssimazione si basa su un'espansione della serie di Taylor attorno a m = 0, r / h = 1/4.)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.