Guide

Apollo 11 : sur la Lune avec 4 Ko de RAM

David Lee
20/7/2019
Traduction: Stéphanie Casada

Il y a tout juste 50 ans, l'homme marchait pour la première fois sur la Lune. J'ai décidé de me pencher sur l'informatique de l'astronautique d'autrefois. Les moyens étaient dérisoires et les résultats d'autant plus surprenants.

L'atterrissage sur la Lune reste aujourd'hui encore un grand pas pour l'humanité. Réussi pour la première fois le 21 juillet 1969, cet exploit n'a jamais été réitéré depuis 1972. Aujourd'hui, les astronautes ne parcourent qu'environ un millième de la distance parcourue à l'époque : il y a environ 400 km jusqu'à la Station Spatiale Internationale (ISS) et environ 400 000 km jusqu'à la Lune. Les réacteurs étaient aussi beaucoup plus gros : lors de leur lancement, les fusées Apollo étaient si bruyantes que les fenêtres des maisons d'une petite ville située à 18 kilomètres de là se sont brisées.

Aujourd'hui, la technologie informatique est beaucoup plus avancée qu'autrefois. C'est incroyable de se dire qu'ils ont quand même réussi à atterrir sur la Lune.

L'informatique au début de l'astronautique

Dans les années 50, les ordinateurs fonctionnaient avec des tubes. Ils mesuraient plusieurs mètres de long, consommaient une quantité absurde d'électricité, étaient extrêmement sujets aux erreurs et n'étaient pas capables de grand-chose. Les premiers transistors (article en allemand) ont fait leur apparition dans les années 60 ; un énorme progrès.

L'IBM 360 était cependant toujours aussi grand qu'un réfrigérateur XXL et n'avait que 4 Ko de mémoire vive, soit un millionième de la mémoire d'un des moins bons smartphones d'aujourd'hui. Le premier modèle de l'IBM 360 date de 1966.

Panneau de l'IBM 360 Model 91 dans le Goddard Space Flight Center de la NASA, 1966
Panneau de l'IBM 360 Model 91 dans le Goddard Space Flight Center de la NASA, 1966

L'informatique pendant les premières années de l'astronautique

Dans ces conditions, pas étonnant que les premiers satellites spatiaux n'avaient aucun ordinateur à bord. Même les premiers vaisseaux spatiaux habités n'avaient pas encore d'ordinateur. Cela valait aussi bien pour les vaisseaux Vostok de l'URSS (Yuri Gagarin, Valentina Tereshkova) que pour le programme Mercury des États-Unis (programme Mercury).

La plupart des mouvements de commande ont été enregistrés à l'avance et en partie à la main. Impressionnant : grâce à des calculs effectués au préalable, Vostok 3 et 4, ainsi que Vostok 5 et 6 ont pu se rapprocher à jusqu'à quelques kilomètres (ce qu'on a appelé le premier rendez-vous spatial).

John Glenn, le premier Américain dans l'espace en 1962, n'avait pas d'ordinateur dans son vaisseau Mercury.
John Glenn, le premier Américain dans l'espace en 1962, n'avait pas d'ordinateur dans son vaisseau Mercury.

Dans le projet Gemini, la NASA a utilisé un ordinateur de bord pour la première fois. Les missions Apollo qui ont suivi en avaient bien entendu toutes un : Apollo 11 en avait même deux ; un dans le vaisseau spatial et l'autre dans le module lunaire. Un ordinateur de commande d'urgence non utilisé et un ordinateur pour le contrôle de la fusée de lancement (qui n'était plus nécessaire après le lancement).

Pourquoi était-il si important d'avoir des ordinateurs à bord du vaisseau spatial ? D'un côté pour le retard radio de 1,5 seconde par rapport à la Terre et, de l'autre, car aucune connexion radio n'était possible depuis l'autre côté de la Lune. Le vaisseau spatial devait par conséquent être capable d'agir de façon autonome.

La tâche principale de l'ordinateur était de traiter les données de navigation et de contrôler automatiquement le vaisseau spatial. Les astronautes avaient également la possibilité de commander leur navette spatiale manuellement. Ce qui n'était plus possible par la suite. Lors de la phase finale de l'atterrissage, les astronautes d'Apollo ont effectivement pris les commandes eux-mêmes afin de mieux éviter les obstacles.

Malgré cette autonomie, c'est quand même depuis la terre ferme que la plupart des calculs ont été effectués. Les valeurs ont été transmises par radio aux astronautes, qui les ont alors saisies dans l'ordinateur de bord. Pour Apollo 11, plusieurs IBM 360 connectés les uns aux autres ont été utilisés à la station au sol.

Le centre de contrôle de mission de la NASA, ici pour Apollo 9, mars 1969.
Le centre de contrôle de mission de la NASA, ici pour Apollo 9, mars 1969.

L'Apollo Guidance Computer (AGC)

Les deux ordinateurs de bord dans la capsule et dans le module lunaire avaient le même hardware. Ces ordinateurs de guidage Apollo ont été développés au MIT. Pendant tout le projet Apollo, il n'y a eu que deux versions matérielles de l'AGC. La deuxième version a été utilisée pour tous les vols spatiaux habités (à partir d'Apollo 7).

L'ordinateur lui-même pesait 32 kilogrammes et mesurait 61 × 32 × 15 cm. Extrêmement petit et léger pour les standards de l'époque. À cela s'ajoutait un panneau de commande de 8 kilogrammes, composé d'un écran et de touches de commande. L'ordinateur consommait 70 watts.

L'ordinateur et l'interface
L'ordinateur et l'interface

L'AGC utilisait des mots de 16 bits et une fréquence d'horloge de 1 MHz. La version originale avait une mémoire fixe de 4000 mots et une mémoire variable de 256 mots. Cette dernière a été étendue, jusqu'à 36 000 respectivement 2000 mots. Le manque de mémoire a été un problème permanent tout au long du projet Apollo.

Comme vous pouvez le voir sur le panneau de commande, l'AGC ne fonctionnait qu'avec des chiffres, pas des lettres. Les touches « VERB » et « NOUN » permettaient d'entrer des commandes. L'astronaute devait appuyer sur « VERB » et saisir un nombre entre 00 et 99, puis répéter l'opération avec « NOUN ». Pour savoir quel nombre correspondait à quelle commande, il fallait regarder sur une liste. Cette dernière a changé à chaque mission Apollo.

Le panneau de commande DSKY, tout à gauche, les touches « VERB » et « NOUN ».
Le panneau de commande DSKY, tout à gauche, les touches « VERB » et « NOUN ».

Au cours d'un vol spatial, les astronautes appuyaient en moyenne 10 000 fois sur une touche. Un contrôle à partir de la station au sol aurait été techniquement possible, mais les astronautes s'y sont apparemment opposés. Ils voulaient être les seuls à pouvoir prendre des décisions.

Un logiciel anti-panne sorti de nulle part

Le logiciel des deux AGC dans le vaisseau spatial n'était pas le même, mais était adapté aux tâches respectives. C'est une femme, Margaret Hamilton, qui dirigeait le développement du logiciel du programme Apollo au MIT. Elle et son équipe ne sont parties de presque rien. Au début du projet, il n'y avait même pas d'ordinateurs pour tester les programmes. Plus tard, les programmeurs pouvaient certes émuler le logiciel sur un ordinateur, mais ne pouvaient pas le tester sur le hardware réellement utilisé.

Margaret Hamilton avec le logiciel Apollo imprimé.
Margaret Hamilton avec le logiciel Apollo imprimé.

Le MIT utilisait déjà un langage de programmation supérieur afin de ne pas avoir à coder directement dans l'assembleur. Un processus certes plus lent, mais qui permettait d'occuper moins d'espace de stockage.

Vous pouvez essayer l'AGC dans votre navigateur Web. N'oubliez pas de consulter la liste de contrôle dont le lien se trouve sur la page. Sans elle, vous ne pourrez pas faire grand-chose.

Les pannes de l'ensemble du système informatique étaient à l'époque à l'ordre du jour. Du moins, au sol. Dans le vide de l'espace, elles auraient entraîné la mort des astronautes. Il fallait donc les éviter en toutes circonstances. L'ordinateur devait être capable de gérer plusieurs tâches simultanément en temps réel.

C'est pourquoi le logiciel de l'AGC était capable de reconnaître quand l'ordinateur était surchargé et de prioriser les tâches importantes. Si cela n'avait pas été le cas, Apollo 11 n'aurait peut-être même pas pu atterrir. En effet, pendant la phase d'atterrissage, le radar a envoyé une multitude de données insensées à l'ordinateur, qui n'ont pas pu être traitées assez rapidement. Mais comme le code de Margaret a été programmé pour ignorer ces données, le vaisseau a tout de même pu se poser comme prévu sur la lune.

Et nous avons aujourd'hui quelque chose à célébrer.

Cet article plaît à 124 personne(s)


User Avatar
User Avatar

Mon intéret pour l'informatique et l'écriture m'a mené relativement tôt (2000) au journalisme technique. Comment utiliser la technologie sans se faire soi-même utiliser m'intéresse. Dans mon temps libre, j'aime faire de la musique où je compense mon talent moyen avec une passion immense. 


Informatique
Suivez les thèmes et restez informé dans les domaines qui vous intéressent.

Ces articles pourraient aussi vous intéresser

  • Guide

    L'ascension d'un géant : Histoire de l'informatique, partie 5

    par Kevin Hofer

  • Guide

    Papillon, toupie et circuit de billes : mes chats vous révèlent leurs jouets favoris

    par Darina Schweizer

  • Guide

    Tout d'une seule source : les wearables de Coros

    par Patrick Bardelli

19 commentaires

Avatar
later