Pourquoi l'altitude GPS saute-t-elle parfois?

14

Je développe actuellement une petite application sous Android qui utilise le GPS.

Lorsque je clique sur un bouton, je commence à enregistrer une "piste". Si je me promène, j'enregistre ma position chaque seconde dans un fichier. Cela fonctionne parfaitement, sauf pour une chose:

Je ne sauvegarde pas seulement la longitude et la latitude mais aussi l'altitude actuelle. En parcourant les données, j'ai reconnu que l'altitude saute parfois.

Par exemple, les valeurs d'altitude ressemblent à ceci:

271.4073616670083; 271.5165709069828; 345,6; 271.58538936056465;

Les valeurs autour de 270 mètres sont assez bonnes. Les sauts comme ceux-ci se produisent irrégulièrement mais assez souvent (toutes les 15 secondes il y a au moins 1 saut). Et les valeurs montent toujours à quelque chose autour de 340 mètres.

Pendant l'enregistrement de la piste avec mon application, je me suis également promené avec une application appelée NMEA Recorder. Cette application a également enregistré les valeurs d'altitude, mais elles ne sautent pas comme les valeurs que je reçois.

Je sais que les valeurs d'altitude du GPS (calculées par le WGS84-Ellipsoid) ne sont pas très précises mais cela n'explique toujours pas pourquoi les valeurs sautent parfois.

Ce serait bien si quelqu'un pouvait me dire pourquoi de tels sauts se produisent.

Siggy
la source
1
Qu'en est-il des coordonnées lon / lat? Varient-ils également?
RK
Je n'ai pas encore eu de problème de longitude ou de latitude. Ce n'était que l'altitude qui sautait parfois.
Siggy

Réponses:

20

Imaginez plusieurs satellites répartis uniformément au-dessus de vous. Choisissez maintenant un seul satellite. Visualisez une sphère centrée autour de ce satellite avec un rayon de votre distance exacte. Faites de même pour chaque satellite en vue.

Ce que vous voyez maintenant, c'est un tas de sphères qui se croisent exactement là où vous vous trouvez. Voilà comment fonctionne une lecture GPS, essentiellement.

Malheureusement, ces sphères se croisent en plusieurs points. Comme vous le verrez dans l'image suivante, il est possible d'obtenir une fausse lecture en fonction du VDOP. Habituellement, une configuration satellite assez basse ou haute à l'horizon vous donnera cette lecture.

entrez la description de l'image ici

Si vous souhaitez rendre votre application plus précise, vous devrez examiner la qualité des signaux et (si disponible) les calculs DOP avant de «faire confiance» à l'emplacement.

nagytech
la source
Mais alors, les coordonnées ne seront-elles pas aussi erronées?
RK
2
@RK Selon la façon dont les sphères se croisent, l'essentiel de l'erreur peut être vertical.
Dan est en train de jouer par Firelight
2

En tant qu'ingénieur ayant travaillé avec des satellites GPS, je peux vous donner une explication - cela a à voir avec le nombre de satellites GPS dont vous recevez des signaux pour vos lectures. Il y a 24 satellites qui fonctionnent dans le système de position global actuel et selon votre emplacement (à l'intérieur d'un bâtiment, sous des arbres, entre de grands bâtiments, etc., vous choisirez les signaux de 3 ou 4 satellites. Les signaux de 3 satellites se croisent à l'arc entre leurs sphères et les données d'altitude peuvent ne pas être précises. Les signaux de 4 satellites sont assez précis car ils se croisent en un point! J'espère que cela vous aidera.

Steve
la source
Dans ma société, nous avons des modules GPS industriels développés sur mesure et ils donnent TOUJOURS des emplacements corrects, mais dans Android en même temps, de nombreux appareils différents donnent parfois des emplacements de SAUT près de la position de fait. Pourquoi est-ce arrivé?
Développeur