# Récepteur GPS

Le système de navigation et de positionnement par satellite capte et analyse les signaux émis par une constellation de satellites. Les systèmes les plus connus sont GPS, GLONASS, Galileo et Beidu. Malgré la simplicité apparente de la technique, le traitement des signaux et le calcul de la position d'un récepteur sont complexes. Le récepteur décrit ici concerne le système GPS, mais la description est généralisable aux autres systèmes.

## Principe

Les satellites émettent en permanence sur deux fréquences L1 (1 575,42 MHz) et L2 (1 227,60 MHz). Elles sont modulées en phase par la combinaison des données numériques et de deux codes ; cette combinaison est une addition modulo 2. Les codes sont un code pseudo aléatoire C/A (acronyme de coarse acquisition, acquisition grossière) qui est une séquence à 1,023 Mbit/s et de période 1 milliseconde et un code pseudo aléatoire P, pour précision, à 10,23 Mbit/s avec une période de 280 jours. Le premier est librement accessible, le second est réservé aux utilisateurs autorisés ; il est le plus souvent chiffré.
En ce qui concerne les signaux accessibles librement c'est la porteuse L1 qui est utilisée. Chaque satellite GPS transmet sur cette porteuse le code d’acquisition C/A et les données. Le code C/A est unique pour chaque satellite parmi un ensemble de 31. Les données transmises à 50 bit/s incluent des informations sur la totalité de la constellation GPS : éphémérides permettant de calculer la position des satellites, correction d'horloge, données pour la correction ionosphérique, ainsi que les messages spéciaux du système. Les données des satellites sont transmises dans une trame toutes les 30 secondes. Le temps requis pour transmettre l'almanach complet du système est de 12,5 minutes.
L'éphéméride contient les paramètres orbitaux détaillés pour tous les satellites. Les données d'éphéméride changent d'heure en heure, mais sont valables pendant quatre heures environ. La partie contrôle de la trame GPS met à jour l'almanach du système chaque semaine et met à jour à chaque heure l’éphéméride à travers trois stations de contrôle terrestres. En fonctionnement normal continu, un récepteur GPS met à jour ces éphémérides stockés dans sa mémoire de façon continue et souvent toutes les 30 minutes.
Le calcul de la position du récepteur est effectué à partir des données numériques de l'almanach et du repérage temporel de moments caractéristiques des séquences de code C/A. Les récepteurs actuels peuvent suivre un grand nombre de satellites simultanément sur autant de canaux dédiés ; 12 canaux est un chiffre courant. La performance d'un récepteur GPS lors de sa mise sous tension est déterminée en grande partie par les satellites en visibilité et la disponibilité dans la mémoire du récepteur d'un almanach du système de GPS.
De la même manière on fait intervenir un deuxième satellite qui connaît la distance le séparant du récepteur GPS. L’intersection des deux sphères forme un cercle. Ce cercle représente l’ensemble des positions que peut avoir le récepteur GPS.

## Démarrage à froid

Le terme démarrage à froid décrit la performance d'un récepteur GPS à sa mise sous tension lorsqu’il n’y a aucune donnée de navigation disponible, par exemple lors de la première mise en service. Le démarrage à froid signifie que le récepteur n'a pas encore d’almanach à jour en mémoire, ni de données sur les orbites des satellites, ni de position géographique initiale, ni temps de référence.
Au cours du démarrage à froid, le récepteur choisit automatiquement un ensemble de satellites et dédie un canal individuel à la recherche du signal de chaque satellite de la constellation en appliquant éventuellement des décalages Doppler sur ces fréquences. Si aucun des satellites n'est acquis après une période prédéterminée, appelée en anglais time out, le récepteur choisit un nouvel ensemble de recherche de satellites et ensuite il répète le processus jusqu'à ce que les données d’un premier satellite soient acquises.
Pendant que des satellites sont acquis, le récepteur rassemble automatiquement les données de l'almanach qu'il commence à enregistrer. Le récepteur emploie l'information obtenue lors de l'acquisition des données d’un satellite spécifique pour, naturellement, éliminer de l'ensemble de recherche les satellites au-dessous de l'horizon. Cette stratégie améliore l'acquisition des données des satellites additionnels exigés pour effectuer le premier calcul d’une position. Les ensembles de recherche de démarrage à froid sont établis pour s'assurer qu'au moins trois satellites sont acquis au cours des deux premières périodes d'arrêt. Dès que quatre satellites sont acquis, le récepteur calcule une première localisation. Un récepteur GPS réalise typiquement un démarrage à froid en moins de deux minutes.
Un almanach complet du système n'est pas exigé pour réaliser un premier positionnement. Il sera enregistré en totalité par la suite. L'almanach est utilisé dans les démarrages à chaud suivants, et pour faciliter l’acquisition des satellites GPS en visibilité.

## Démarrage à tiède

Au démarrage à tiède, le récepteur possède un almanach à jour, une première position, à moins de 3 000 kilomètres, et l’heure précise, à cinq minutes près, stockés en mémoire. Pour forcer un démarrage à chaud, l'almanach, le temps, et la position initiale doivent être téléchargés par le récepteur.
Pendant un démarrage à tiède, le récepteur identifie les satellites qu'il s'attend à recevoir, grâce aux données de l'almanach, de la position initiale et de l’heure. Le récepteur calcule l'altitude et l'effet Doppler de chaque satellite dans cet ensemble prévu, et il assigne à ses différents canaux une recherche parallèle de ces satellites. Si l'erreur interne de l'oscillateur est connue, le récepteur compense ce décalage afin d’optimiser la recherche. Si le décalage n'est pas connu, les algorithmes de recherche sont élargis pour tenir compte de la tolérance d'oscillateur, du vieillissement, et des erreurs liées à la température.
Si le récepteur possède un almanach et une première position, mais s’il n'a pas l’heure actuelle, il déclenche une recherche de démarrage à froid jusqu'à ce que le premier satellite soit acquis. Une fois que ces données du premier satellite sont acquises, le récepteur GPS peut obtenir une heure approximative et ensuite basculera en mode démarrage à chaud pour acquérir les satellites additionnels. Bien que le temps de la première acquisition soit légèrement plus long dans ce cas, il est sensiblement plus court qu’un démarrage à froid complet. La durée de démarrage à la première acquisition est habituellement inférieure à 50 secondes.
Si le récepteur ne récolte pas l'ensemble des données des satellites prévus dans un délai de quelques minutes lors d'un démarrage à chaud, par exemple parce que l’antenne GPS est dans un environnement obstrué, un des canaux est attribué afin de mener une recherche en mode démarrage à froid. Cette stratégie réduit au minimum le temps d’acquisition à la première position dans les cas où l'almanach, la position et l’heure stockés sont invalides.

## Démarrage à chaud

Une stratégie de démarrage à chaud s'applique quand l'almanach, la position, l’heure, les données d'éphéméride (données éphémères) dans la mémoire sont valides. La stratégie de recherche en démarrage à chaud est semblable à un démarrage à tiède, mais puisque les données dans la mémoire sont considérées à jour et valides, le temps d'acquisition est en général de moins de 30 secondes.

## Précision du positionnement

L'exactitude de la position GPS est dégradée par l'influence sur les signaux de la traversée de l'ionosphère et de la troposphère, les dérives d'horloge des satellites, les erreurs d'horloge du récepteur, des réflexions parasites. La disponibilité sélective n'est plus appliquée depuis l'an 2000.
Des modèles ont été développés afin de corriger au maximum l'impact des effets troposphériques et ionosphériques. L'impact des dérives d'horloge des satellites est réduit au minimum en incorporant les données de correction transmises pour chaque satellite utilisé dans la détermination de la position. Le calcul de la position du récepteur a aussi pour conséquence d'asservir la fréquence de son oscillateur interne sur la fréquence des signaux reçus, autrement dit sur la fréquence des oscillateurs ou horloges internes des satellites. Les données contenues dans l'almanach permettent alors au récepteur de calculer et d'afficher l'heure UTC ou l'heure légale.
Un récepteur GNSS à double fréquence permet d'améliorer la précision, surtout dans les villes. La première puce double fréquence pour appareils grand public (notamment pour les smartphones) a été lancée par Broadcom fin 2017 sous le nom BCM47755$^,$. Le Xiaomi Mi 8 est le premier smartphone à l'intégrer. Qualcomm et HiSilicon ont suivi fin 2018 avec respectivement le modem Snapdragon X24 LTE intégré dans le Snapdragon 855 et le Kirin 980$^,$.

## Systèmes des coordonnées

La position est exprimée par défaut dans un format donnant la latitude, la longitude et l'altitude dans le système WGS84. Ces coordonnées peuvent être facilement converties dans un autre système de référence propre au pays où se situe le récepteur. Les récepteurs courants offrent généralement un choix de plus de 170 systèmes.

## Taux de mise à jour

Un récepteur GPS met à jour sa position toutes les secondes ou plus (jusqu'à 100 Hz).

## Limites dynamiques

Les limites de fonctionnement dynamique pour les diverses conceptions de récepteur sont identifiées ci-dessous. Ces limites de fonctionnement supposent que le récepteur GPS est correctement installé et que le système global GPS est conçu pour fonctionner dans les mêmes conditions dynamiques.

## Ré-acquisition

Quand un signal d’un satellite donné est momentanément interrompu pendant l'opération normale, le récepteur continue à rechercher le signal perdu à la dernière fréquence connue du satellite. Si le signal perdu n'est pas encore acquis dans un intervalle de 15 secondes, le récepteur lance une recherche de fréquence plus large. Le récepteur emploie les dernières informations connues afin d’établir la fréquence centrale et la gamme de la recherche. Par exemple toutes les 15 secondes, jusqu'à ce que le signal perdu soit rétabli, une nouvelle fréquence centrale avec sa plage de recherche est calculée. Chaque plage de fréquence est recherchée par pas de 500 Hz.
Si les données d'éphéméride ou d'almanach sont encore disponibles pour le satellite momentanément perdu, alors la vitesse du satellite est intégrée dans le calcul de la fréquence centrale de la porteuse. L'ancienneté d'un almanach est prise en compte par la largeur de la plage de recherche. Si les données d'éphéméride ni almanach ne sont toujours pas disponibles, alors le récepteur cherche pendant deux minutes avec la dernière prise d’information du satellite valide avant que le signal ait été perdu.
Si le satellite n'a pas été réacquis par l’antenne GPS, alors le dernier signal reçu est recherché à la fréquence Doppler, basée sur la dynamique satellite pendant un maximum de deux minutes.
Si la position actuelle n'est pas exactement connue, la largeur de la plage de recherche est élargie. Le temps de ré-acquisition pour des signaux GPS perdus momentanément, sont typiquement inférieur à quelques secondes.

## Architecture de système

Un récepteur GPS typique incorpore un processeur de signal numérique DSP, qui fonctionne à la fréquence L1 (1 575,42 MHz). Les signaux reçus des satellites par l'antenne sont filtrés et amplifiés par un préamplificateur et alimentent ensuite un convertisseur RF/IF. Ce traitement est souvent fait au niveau de l'antenne. Un circuit traite la fréquence reçue, acquiert le code C/A du signal reçu de plusieurs satellites simultanément. Les récepteurs actuels peuvent traiter simultanément les signaux reçus de douze satellites. Le microprocesseur exploite les données et exécute les calculs de navigation, en plus il pilote les canaux de DSP. L'ensemble est piloté par l'oscillateur à quartz du récepteur.