Voyager 1 : mise à jour d’un code à 24 milliards de km

Le défi du jour est à la hauteur du projet. Les équipes de la NASA ont patché du code de sa sonde Voyager 1 lancée en 1977. Il y a fallu trouver un développeur FORTRAN, créer le correctif et surtout l’envoyer vers la sonde depuis la Terre. Voyage 1 se situe à plus de 24 milliards de km de notre planète ! Voyager 2 a aussi reçu le patch. 

Les sondes Voyager communiquent via une antenne pointée vers la Terre. Elles peuvent s’orienter sur 3 directions. Depuis 2022, Voyage 1 n’arrivait plus à envoyer les données quotidiennes à l’agence américaine. Il fallait donc patcher le code même si l’équipe travaillait un peu à l’aveugle. Un élément a été isolé : l’AACS (attitude articulation and control system). Il envoyait de mauvaises commandes de direction. Le module avait basculé sur un mauvais mode de fonctionnement même si la cause de ce basculement n’est pas connue. Solution : patcher le code Fortran pour rétablir le bon fonctionnement et éviter tout nouveau problème à l’avenir. 

Il faut plus de 18 heures pour que le code envoyée soit reçu et installer par le système. Normalement, le nouveau code est en place depuis le 20 octobre mais ce n’est que le 28 octobre que la NASA saura réellement si le nouveau code fonctionne correctionement. Le code initial de Voyage est écrit en Fortran 5. Depuis, une partie a été porté en Fortran 77 puis partiellement en C. 

Les sondes embarquent 3 ordinateurs différents : Computer Command System, Flight Data System et Attitude and Articulation Control System. Ils fonctionnent avec à peine 69 Ko de mémoire ! La capacité de traitement est de 81 000 instructions par seconde. Le taux de transfert entre la sonde et à la Terre est d’environ 160 bits par seconde. Les circuits utilisent des composants TTL mais tous les ordinateurs embarqués n’utilisent pas la même architecture. L’ordinateur de vol utilise un composant CMOS. 

Découvrir la partie hardware des sondes : https://www.allaboutcircuits.com/news/voyager-mission-anniversary-computers-command-data-attitude-control/