Apollo Guidance Computer

Ammettiamolo. Chi non ha mai sognato di utilizzare il proprio personal computer per guidare un modulo di comando Apollo verso la Luna? Per questi temerari ora il sogno può diventare realtà. Sono due, infatti, gli strumenti recentemente pubblicati in versione gratuita sul web: il codice sorgente dell’Apollo Guidance Computer (AGC) e un sito che simula il funzionamento dell’interfaccia DSKY (da desktop-keyboard), dove si possono inserire gli stessi comandi utilizzati dagli astronauti nelle missioni Apollo.

AGC, un piccolo grande computer

ACG era sia il computer a bordo del modulo di comando (command module, CM) sia quello all’interno del Lunar Excursion Module (LEM, anche LM),  utilizzato da tutte le missioni Apollo. Il software fu sviluppato dagli ingegneri del Massachussets Institute Of Technology mentre la componente hardware dalla Raytheon, azienda statunitense nel settore della difesa.

Rispetto ai computer dell’epoca, grandi come frigoriferi, l’AGC aveva dimensioni assolutamente compatte: 61 centimetri di profondità, 32 di larghezza e 17 di altezza, per un peso totale di 32 kg. E’ stato il primo computer a circuiti integrati, tecnologia inventata solo nel 1959 e subito sfruttata dalla NASA che, negli anni Sessanta, assorbiva più della metà della produzione americana di circuiti integrati.

Apollo Guidance Computer (AGC) a sinistra e l’interfaccia DSKY a destra. Crediti: Wikipedia/Wikimedia Commons.

In totale, l’AGC disponeva di 0.0778 megabyte di memoria, di cui 0.003 MB di RAM a nuclei magnetici e 0.0748 di ROM a filamenti di ferrite. Per fare un paragone con le tecnologie moderne, servirebbero più di duecentomila AGC per raggiungere la capacità di memoria di un normale smartphone odierno (con 16 GB di memoria).All’epoca i computer erano utilizzati soltanto dai tecnici informatici che ne conoscevano bene struttura e funzionamento. Diventava quindi fondamentale fornire agli astronauti un modo per interagire con i programmi dell’AGC senza il bisogno di studi specifici sulla neonata ingegneria informatica. Venne quindi introdotta per la prima volta un’interfaccia utente: composta da un tastierino numerico, un piccolo display e qualche indicatore luminoso, la DSKY (come veniva chiamata, da desktop-keyboard), permetteva ai piloti di indicare al computer quale programma avviare e quale operazione eseguire. In un certo senso, è stata una rivoluzione che ha portato poi all’introduzione dei personal computer per uso domestico.

L’interfaccia DSKY montata nel modulo di comando dei programmi Apollo, appena sotto all’indicatore della direzione del volo. Crediti: Wikipedia/Wikimedia Commons.

Lo sviluppo del software dell’AGC è stato affidato ai tecnici dell’Instrumentation Laboratory del MIT, capeggiati da Margareth Hamilton, personaggio di rilievo e di fondamentale importanza per la NASA. La Hamilton, infatti, grazie alle scelte progettuali sue e del suo team durante la scrittura del software per l’AGC, ha di fatto permesso l’atterraggio del Lunar Excursion Module sulla superficie lunare ed evitato l’abbandono della missione.

Margareth Hamilton accanto all’intero codice sorgente dell’AGC sviluppato dal suo team di tecnici al MIT. Crediti: Wikipedia/Wikimedia Commons.

Houston, abbiamo un problema!

Durante la fase più critica dell’allunaggio, giusto tre minuti prima di toccare il suolo, il computer di bordo del LEM subì un sovraccarico, facendo scattare una serie di allarmi e anomalie, tra i quali l’errore 1201 (“Executive overflow – no vacant areas”) e il 1202 (“Executive overflow – no core sets”). Nella pratica, l’AGC stava cercando di eseguire più operazioni di quelle che poteva sostenere. Fortunatamente, grazie all’architettura multitasking del software progettato dal team della Hamilton, il computer fu in grado di riconoscere le operazioni più importanti da mantenere attive e quali, invece, quelle superflue da ignorare. Il risultato? Tre minuti dopo gli allarmi, dal LEM venne trasmessa la comunicazione che l’umanità, incollata ai televisori, stava attendendo: “Houston, the Eagle is landed” (“Houston, l’Aquila è atterata”). Erano le 16.18 del 20 luglio 1969 e la voce quella di Neil Armstrong: un piccolo e primitivo computer aveva appena condotto tre uomini sulla Luna.

Apollo fai-da-te

Oggi è possibile immedesimarsi in quei tre astronauti che per primi hanno calpestato il suolo del nostro satellite. Infatti, il codice sorgente dell’AGC è stato reso pubblico gratuitamente sul portale GitHub. Si possono trovare i software dei due programmi principali eseguiti sul modulo di comando e sul modulo lunare. Il Comanche055, installato nell’AGC a bordo del modulo di comando, permetteva il controllo e la gestione di operazioni quali decollo, navigazione e rientro. Il Luminary099, invece, era installato nel computer a bordo del modulo lunare LEM (Lunar Excursion Module) e si occupava dell’allunaggio e del decollo per il rientro al modulo di comando.

Per chi nel 2016 avesse desiderato entrare virtualmente nel modulo di comando dell’Apollo 11, lo Smithsonian Institute ne aveva realizzato una scansione tridimensionale ad alta risoluzione, con la possibilità di stampare in 3D alcune parti del modulo di comando.

Fonti


Lascia un commento