Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Les codes sources du module lunaire Apollo 11 (Luminary099) et du module de commande (Comanche055)
Sont disponibles en open source

Le , par Stéphane le calme

74PARTAGES

17  0 
L'Apollo Guidance Computer (AGC) est l'ordinateur embarqué de navigation et de pilotage installé dans les vaisseaux spatiaux des missions Apollo. C'est le premier ordinateur à avoir recours aux circuits intégrés (CI). Il y avait un AGC dans le module de commande et un autre dans le module lunaire Apollo utilisé en temps réel par l'astronaute-pilote pour recueillir et fournir des informations de vol, et pour le contrôle automatique de toutes les fonctions de navigation du vaisseau spatial.

L'AGC est un ordinateur effectuant des traitements en temps réel. Il est multitâche (jusqu'à 6 tâches exécutées en parallèle). La mémoire utilise des mots de 16 bits : elle est composée de 72 ko (36 864 mots) de mémoire morte contenant l'ensemble des programmes et de 4 ko (2 048 mots) de mémoire vive (effaçable) utilisée par les traitements. Les deux types de mémoire sont constituées de tores magnétiques : les programmes sont implantés dans l'ordinateur à la fabrication. Le processeur est constitué de plus de 5 000 portes NOR réalisées à l'aide de circuits intégrés. Il pèse environ 32 kg.

Lors de la mission Apollo 8, première satellisation autour de la Lune, la navigation fut quasi autonome, à partir des données de la centrale inertielle et des mesures angulaires effectuées au sextant par l'équipage. Les missions suivantes firent davantage appel à des mesures de vitesse et de positions obtenues à partir d'antennes au sol.

Chaque vol à destination de la Lune (à l'exception d'Apollo 8, qui n'a pas pris de Module Lunaire dans sa mission en orbite lunaire) avait deux AGCS, l'un dans le module de commande et l'autre dans le module lunaire. L'AGC dans le module de commande était le centre du système de guidage, de navigation et contrôle de l'engin (GNC).
Chaque mission lunaire avait également deux autres ordinateurs :
  • Un calculateur de vol sur l'instrumentation d'anneau du lanceur Saturn V, appelé le Launch Vehicle Digital Computer (LVDC) – ordinateur de série construit par IBM Federal Systems Division ;
  • Un ordinateur secondaire dans le module lunaire, désigné Abort Guidance System (AGS), construit par TRW et destiné à être utilisé en cas d'échec de la PGNCS (Primary Guidance, Navigation and Control System). L'AGS peut être utilisé pour décoller de la Lune et assurer le rendez-vous avec le module de commande, mais pas pour l'atterrissage. Lorsqu'il est activé, il déclenche automatiquement la séparation du module de remontée (AM, Ascent Module) du LEM de celui de descente (PDM, Powered Descent Module).



Le code source de l’AGC pour la commande et les modules lunaires

Le code source original de l'ordinateur de guidage Apollo 11 pour le module de commande (Comanche055) et le module lunaire (Luminary099) a été numérisé par des personnes du Virtual AGC et du MIT Museum. Le but est d'être un référentiel pour le code source original d'Apollo 11. Les pull request sont les bienvenus pour tous les problèmes identifiés entre les transcriptions dans le référentiel et les scans source originaux pour Luminary 099 et Comanche 055, ainsi que pour tous les fichiers qui ont été oubliés.


Concernant Comanche055, il s’agit de la partie du code source de Colossus 2A, le module de commande (CM) Ordinateur embarqué de navigation (AGC), pour Apollo 11. Concernant Luminary099, il s’agit de la partie du code source de Luminary 1A, le module de lunaire (LM) Ordinateur embarqué de navigation (AGC), pour Apollo 11.

Sur le site Web, il est expliqué que le but de ce projet est de fournir des simulations informatiques des ordinateurs de guidage embarqués utilisés dans les missions lunaires du programme Apollo - mais principalement du calculateur de guidage Apollo (AGC) utilisé dans le module de commande et le module lunaire - et de vous permettre d'en savoir plus sur ces ordinateurs de guidage. Étant donné que les ressources disponibles dans ce projet ont tellement augmenté au fil des ans, son exploration pour la première fois peut être assez intimidante. Aussi, les personnes à l'origine du projet vous invitent à consulter une page d'introduction « plus douce » avant de vous plonger dans les détails présentés par la plus grande partie du site.


En savoir plus

Source : référentiel GitHub

Voir aussi :

Ludwig : le framework open source de deep learning d'Uber permet de former et tester des modèles sans écrire de code
Facebook publie en open source Hermes, un moteur JavaScript léger optimisé pour exécuter React Native sur Android
Mattermost lève 50 MM$ pour faire progresser son alternative à Slack et rêve d'un service de messagerie open source mainstream en entreprise
GitHub supprime de sa plateforme les versions open source de DeepNude, l'application qui crée des images de femmes nues en quelques secondes

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de psychadelic
Expert confirmé https://www.developpez.com
Le 19/07/2019 à 0:52
72ko de mémoire, à base de tores magnétiques, à 400.000km de la terre...j'imagine l'angoisse des codeurs lors d' Apollo 11.

Quand à la motivation d' Amstrong et Aldrin, pour rentrer dans cette boite en alu, avec le recul, je trouve cela hallucinant
5  0 
Avatar de TheLastShot
Membre extrêmement actif https://www.developpez.com
Le 18/07/2019 à 22:58
Citation Envoyé par dragonofmercy Voir le message
En même temps le code date d'avant 1969...
C'était une boutade.... En plus leur langage est surement un langage "assembleur" avec des instructions spécifiques à leur matériel (comme c'est plus ou moins le cas pour chaque processeur, il n'y a d'ailleurs pas qu'un seul langage assembleur).
1  0 
Avatar de TheLastShot
Membre extrêmement actif https://www.developpez.com
Le 18/07/2019 à 23:59
Citation Envoyé par abriotde Voir le message
N'ayant ni le CPU ni aucun matériel s'y rapprochant, ça n'a vraiment aucun intérêt. ou alors ils mettent a minima le CPU et le module entier en open Source. C'est comme si la pierre de rosette ne contenait que l'égyptien elle aurait perdu tout son intérêt même public. C'est qu'une fois l'égyptien décrypté que tous les hiéroglyphes ont eu un intérêt.
C'est pas tant le CPU qu'il faudrait, mais le doc du CPU. Car en effet comme ça, ça ne sert à rien car on ne comprend même pas le langage. En revanche avec la doc du CPU on pourrait comprendre le fonctionnement du bousin.
1  0 
Avatar de LittleWhite
Responsable 2D/3D/Jeux https://www.developpez.com
Le 19/07/2019 à 10:41
A tous ceux qui sont intéressés par cette news, je conseille cette conférence :
1  0 
Avatar de earhater
Membre éclairé https://www.developpez.com
Le 18/07/2019 à 19:37
Quelqu'un comprend quelque chose au code ?
0  0 
Avatar de vivid
Nouveau Candidat au Club https://www.developpez.com
Le 18/07/2019 à 20:34
c'est pourtant simple.. franchement

bref, c'est aussi utile que de pressurisé un habitacle spatial a l'oxygène pur....
1  1 
Avatar de TheLastShot
Membre extrêmement actif https://www.developpez.com
Le 18/07/2019 à 20:46
Sérieusement ? Ils avaient besoin de créer un langage encore moins compréhensible que l'assembleur ?
0  0 
Avatar de dragonofmercy
Membre à l'essai https://www.developpez.com
Le 18/07/2019 à 22:19
Citation Envoyé par TheLastShot Voir le message
Sérieusement ? Ils avaient besoin de créer un langage encore moins compréhensible que l'assembleur ?
En même temps le code date d'avant 1969...
0  0 
Avatar de abriotde
Membre expérimenté https://www.developpez.com
Le 18/07/2019 à 23:20
N'ayant ni le CPU ni aucun matériel s'y rapprochant, ça n'a vraiment aucun intérêt. ou alors ils mettent a minima le CPU et le module entier en open Source. C'est comme si la pierre de rosette ne contenait que l'égyptien elle aurait perdu tout son intérêt même public. C'est qu'une fois l'égyptien décrypté que tous les hiéroglyphes ont eu un intérêt.
0  0 
Avatar de TheLastShot
Membre extrêmement actif https://www.developpez.com
Le 19/07/2019 à 0:58
Citation Envoyé par psychadelic Voir le message
Quand à la motivation d' Amstrong et Aldrin, pour rentrer dans cette boite en alu, avec le recul, je trouve cela hallucinant
Oui enfin les astronautes étaient sélectionnés parmi les pilotes d'essais, donc habitués à piloter des engins que personne n'avait testé avant... Donc c'était pas spécialement le courage ou la témérité qui leur faisait défaut à la base.
0  0