Suivre les satellites

J’ai trouvé qu’il n’y avait pas beaucoup de références sur le suivi de satellites en français, autre que ce qui pourrait être glané via une navigation rapide sur wikipedia. Et puis il y a bien des sites internet spécialisés mais ça n’explique pas comment ça marche, et de toute façon je n’aime pas les sites web qui ont du javascript à outrance (ni même qui utilisent google maps comme fond de carte).

Bon alors, première étape : comment savoir où se trouve le satellite. La réponse est simple il y a une base de donnée qui est alimentée par le NORAD. On a connu mieux en terme de souveraineté et d’indépendance mais bon il faut pas cracher dans la soupe. Les radars américains (voir ici ) cartographient le ciel et déterminent les objets en orbite autour de la terre ; enfin uniquement ceux qui sont “non sensibles” d’un point de vue renseignement.

Revenons au suivi des satellites : chaque objet est identifié par un numéro correspondant à sa date de lancement, et via le site Space-Track, on trouve les informations orbitales de cet objet. On appelle ça un TLE (au début on croyait que ça voulait dire Très Long à Expliquer parce que personne n’arrivait à comprendre comment ça marche, mais il s’avère que ça veut juste dire Two-Line Element, c’est un peu décevant), tout simplement parce qu’un objet est bien décrit par ces deux lignes de 69 caractères (un bel héritage des cartes perforées qui nous manquent tant aujourd’hui, mais la nostalgie c’est pour un autre jour). Voici à quoi ressemble le TLE du satellite NOAA 19 au 29 novembre 2014. En gros dedans il y a tout ce qui permet d’identifier la position du satellite, l’heure de validité des information, sa vitesse, l’excentricité de son orbite etc …

1 33591U 09005A   14331.50140858  .00000288  00000-0  18232-3 0  4787
2 33591  98.9647 276.1925 0014379  23.0039  85.2261 14.11815469299036

En fait, ces informations sont quand même un peu pointues et ont été développées pour servir d’argument à la bibliothèque SGP4/SDP4. Ces deux bibliothèques permettent la résolution des équations différentielles du mouvement du satellite dans le référentiel héliocentrique tout en prenant en compte diverses perturbations du champs de gravité (la terre n’est malheureusement pas exactement sphérique contrairement à ce qu’on essaye de nous faire croire (en fait, il y en a même d’autre qui nous font croire qu’elle est elliptique, tout ça parce qu’un gros barbu un jour aurait appuyé aux extrémités de la planète, mais cette explication me semble décousue)). Ces modèles permettent une prédiction de la position du satellite avec une précision de l’ordre du kilomètre mais avec une dérive autour de 5 km par jour. C’est déjà bien assez pour ce qu’on veut faire : savoir quand est-ce qu’un satellite météo passe au dessus de chez nous pour savoir où diriger l’antenne, sachant qu’on tremblera suffisemment pour espérer viser le satellite à un moyen (et puis les antennes ne sont pas tellement directives). On utilisera par la suite SGP4, du fait de la proximité des objets que l’on veut suivre : SDP4 s’adresse plutôt pour le suivi des objets de l’espace profond.

D’un point de vue schématique, il suffit de donner à la bibliothèque les paramètres fournis dans le TLE, calculer le jour sidéral de l’instant actuel, et la biliothèque s’occupe d’intégrer petit à petit l’équation différentielle pour en obtenir les coordonnées x,y,z du satellite. En fait il n’y a même pas besoin de savoir ce que c’est qu’une équation différentielle. Toutefois, à partir de ces coordonnées et de la position de l’observateur (tristement, l’origine des latitudes s’effectue depuis le méridien de Greenwich (petite ville que je ne connais pas et que j’imagine perdue dans la campagne anglaise), alors que le méridien de Paris passe en plein milieu du jardin du Luxembourg, ça aurait été plus simple mais allez comprendre !) on en déduit l’azimuth et l’élévation du satellite. Je fais un petit schéma pour que ce soit clair : (pour bientôt, les dessinateurs sont en grève en ce moment).

Et alors me direz vous ? Ben je sais pas trop. C’est déjà pas mal de savoir où est le satellite. Ah oui je peux aussi dessiner une petite carte. Je prend donc un fond de carte en projection plate carrée sur le site de la NASA (oui c’est pas beau pour les proportions, mais au moins c’est plus facile d’interpoler la position du satellite comme ça). C’est ça d’être aussi fainéant qu’une couleuvre, mais c’est sans doute aussi parce que je veux qu’on me foute la paix avec ça.

Du coup maintenant je peux tracer la trajectoire du satellite et je dessine en rouge quand il passe au dessus d’un certain seuil d’élévation. Voici donc une petite capture d’écran de mon programme terminé :

Capture d'écran de la carte de suivi. Après calcul de la position on prédit que d'ici 4 heure 30 environ, le satellite passera à la verticale de Paris (tout de même !)
Capture d’écran de la carte de suivi. Après calcul de la position on prédit que d’ici 4 heure 30 environ, le satellite passera à la verticale de Paris (tout de même !)

L’extrémité de la grosse ligne jaune correspond à la position du satellite à l’instant actuel, la fin de cette même ligne correspond à la fin de la ‘marque de temps’ indiquée en bas. C’est à dire, dans ce cas, c’est la position du satellite 4h après maintenant. Le pas de temps c’est la précision du tracé (en général 60 secondes ça suffit) et la durée correspond à longueur temporelle de la trajectoire représentée.

Le mieux c’est quand même d’essayer le programme, même s’il n’est pas complètement terminé mais doit être fonctionnel pour des petits essais. Les sources sont disponibles sur mon github. Dans un prochain article, je vous expliquerai comment acquérir des images provenant des satellites météo.

Published by

paul_f4hed

Bricoleur du samedi matin, programmeur du dimanche.

Leave a Reply