MokaByte Numero 10 - Luglio 1997
Foto
 
NASA-Missione Marte: 
un caffe' rosso per favore...
 
di
Fabrizio Giudici
PaParliamo della missione Marte della NASA e del primo progetto di consultazione  interattiva dei risultati ottenuti dal pianeta rosso

 


 



Le cronache di giornali e telegiornali dei primi giorni di Luglio contengono molti riferimenti all’impresa della sonda Pathfinder, inviata dalla NASA ad esplorare la superficie di Marte. Dopo qualche anno di stasi, dovuto alla fine della Guerra Fredda, la conquista dello spazio va di nuovo di moda, grazie anche ad accorte campagne di marketing (che non sono certamente estranee alla sincronia dell’atterraggio della sonda con la festa USA del 4 Luglio), volte a convincere l’opinione pubblica che è "buona cosa" destinare parte dei soldi dei contribuenti a questo tipo di attività. Sojourner, il robot autonomo della sonda Pathfinder, a cui è delegato il compito dell’analisi della superficie del Pianeta Rosso, non ha scoperto (almeno per il momento) tracce di vita marziana, però ha trovato tracce di… caffè!




Eh già… Java è entrato, almeno in parte, nella progettazione della missione su Marte. I Jet Propulsion Lab (nome mitico, legato ad importanti innovazioni tecnologiche in campo aerospaziale negli ultimi quarant’anni) hanno infatti progettato un applet Java che consente agli utenti di Internet di accedere con facilità ai dati acquisiti su Marte dalla sonda Pathfinder. L’applet si chiama WITS ("Web Interface for TeleScience") ed è solo un assaggio per capire quale sarà il ruolo di Java nelle future missioni su Marte (previste per il 2001, 2003 e 2005).

 

Chiunque può interagire con WITS…

Per "giocare" con WITS è sufficiente seguire il link http://mars.graham.com/wits ed attendere qualche minuto perché il suo caricamento sia completato. Una volta lanciato, WITS visualizza in un pannello il fotomosaico ottenuto dal Pathfinder, che permette di ricostruire un’ampia visuale della zona del pianeta dove la sonda è atterrata (per i primi giorni della missione, in attesa che i dati da Marte vengano opportunamente elaborati, viene in realtà visualizzato un angolo di deserto californiano – che, a parte il colore, agli occhi di un profano non è poi molto dissimile dalla superficie di Marte…).

Si possono ottenere ingrandimenti di alcuni dettagli, e far disegnare in sovrapposizione il punto esatto dove si trova il Sojourner ed i suoi "waypoints".

In un secondo pannello viene mostrata una mappa in visuale dall’alto della stessa zona, con sovrapposti alcuni dati come l’elevazione del terreno e la posizione di alcuni oggetti ritenuti "interessanti". WITS ci consente di "simulare" una missione di Sojourner, stabilendo quali sono i target da visitare, quali sono le zone da evitare perché "pericolose" (cioè troppo accidentate perché il sei-ruote possa attraversarle), misurando distanze tra vari oggetti, e così via.

 

Non solo un giocattolo, però!

Attenzione: non si abbia l’impressione che WITS sia solo un giocattolino creato dalla NASA per scopi pubblicitari! Se è vero che l’attuale versione è dedicata a scopi puramente promozionali, la versione definitiva, pronta per le missioni del prossimo secolo (termine altisonante per dire "tra tre/quattro anni"), verrà completamente integrata con i programmi usati dalla NASA per la pianificazione delle missioni esplorative (la parte server, che gira su un Sun Netra,  è prevalentemente scritta in C, visto che si è riutilizzato codice esistente, ma la NASA è già al lavoro per tradurre tutto in Java ed usare il Sun Java Server).

A causa della grande distanza che richiede una decina di minuti ai segnali radio per arrivare da Marte, il Sojourner non può essere realmente teleguidato da Terra in tempo reale (il controllo manuale è riservato ai casi di emergenza). Per questo motivo, il robot deve già "conoscere" quale è la sua missione, cioè quali sono i punti sulla superficie che deve raggiungere ed analizzare, e questa missione viene pre-programmata prima della partenza dalla Terra. Nei prossimi anni, gli scienziati sguinzaglieranno il robot verso quei punti che riterranno più interessanti dal punto di vista scientifico, e questa pianificazione verrà condotta sentendo il parere di parecchie centinaia di scienziati da tutto il mondo. Operazioni come quella appena descritta sono già avvenute negli anni passati, quando si sono programmate le missioni esplorative della Luna, degli altri pianeti e del Sistema Solare… ma con elevati costi dovuti al trasferimento ed al soggiorno del personale negli USA.

WITS consentirà a scienziati di tutto il mondo di programmare le missioni future, permettendo loro di risparmiare costosissime trasferte negli USA. Insomma, questo è un esempio piuttosto eclatante di quel "Collaborative Work" di cui si sta parlando ormai da un paio d’anni e che sarà uno dei servizi WWW più importanti del nostro prossimo futuro.

 

Perché Java?

Va bene, tutto molto interessante… Però ora, dal momento che Mokabyte è una rivista di programmazione e non di astronomia, parliamo di software. Per quale motivo è stato scelto Java?

La risposta è semplice: il software per la pianificazione della missione attualmente usato dalla NASA è un misto di C, C++, programmazione grafica sotto X Windows e rendering tridimensionale, e può girare solo su un sistema dedicato ai Jet Propulsion Lab, richiedendo agli scienziati di essere fisicamente presenti nei laboratori USA. Dal 2001 in poi, grazie a Java, basterà un semplice browser Netscape o Internet Explorer (magari versione 7?).

Inoltre, i softwaristi NASA, per bocca di Paul Backes, capo progettista, sono rimasti piacevolmente sorpresi dal ridottissimo "time-to-market" che sono riusciti ad ottenere grazie a Java. Infatti il progetto WITS è sensibilmente in anticipo (!) rispetto alle previsioni, dal momento che al JPL non si pensava che il primo oggetto funzionante sarebbe stato pronto prima del 2001. Visto che si poteva già "vedere" qualcosa, hanno ben pensato di distribuire un primo prototipo dimostrativo, ed è proprio questo quello che possiamo scaricare da Internet oggi. L’utilità di questo anticipo non è stata solo promozionale: un certo numero di classi di studenti di scuole superiori, statunitensi ed europee, hanno potuto avvalersi di WITS per scopi didattici. Insomma, per la NASA l’investimento sulla tecnologia Java è stato certamente una carta vincente.

Per completare questa panoramica, Pathfinder non è l’unico esempio di uso di Java in campo astronomico. Al Goddard Space Flight Center, nel Maryland, dove c’è i centro di controllo del telescopio orbitante Hubble, hanno progettato il Control Center System (CCS), un insieme di applet Java per tenere il satellite sotto controllo.


Anche in questo caso, l’uso di Java ha drasticamente semplificato le cose, dal momento che la versione originale del software di controllo di Hubble è stata scritta in FORTRAN, C, X Windows ed OpenVMS. "[L’approccio Java] è stato giudicato da tutti come diverso e migliore", dice Jeff Johnson, responsabile del reparto Graphical User Interface per il progetto Vision 2000 della NASA.

Java ha quindi ottenuto la definitiva consacrazione come il linguaggio per il progetto e la realizzazione di interfacce grafiche, specialmente per la distribuzione di dati, tradizionali o multimediali.

Ma Paul Backes e Jeff Johnson vanno ancora più avanti, e già immaginano che nel 2001 il linguaggio di Sun potrà essere usato su Marte, per il software di controllo della sonda e del rover. Infatti Java e JavaOS sono in grado di girare su dispositivi embedded semplici e leggeri (una caratteristica essenziale per una sonda spaziale), e sono inerentemente più robusti di C e C++… Da questo punto di vista, può essere utile ricordare che l’ultimo incidente nei lanci dei vettori Ariane è stato causato da un crash di un programma per il controllo della direzione del missile. Il calcolatore su cui girava si era resettato ed ha tentato di ripartire, ma troppo tempo prezioso era stato sprecato, e l’assetto del vettore non era più controllabile. Per fare una battuta (le cose in pratica sono sempre più complicate di quanto sembrano), forse una bella try/catch in Java avrebbe meglio figurato…

Che dire in conclusione? Certamente, per avere una visuale più oggettiva bisogna saper sfrondare gli entusiasmi, tenendo anche conto del non trascurabile influsso dell’attività di marketing di Sun. Ma c’è un fatto certo: nella storia dell’informatica non è certo mai accaduto che un linguaggio di programmazione così giovane (Java ha poco più di due anni) abbia colto importanti successi applicativi in così poco tempo.

Chi è interessato a dettagli più tecnici (come le velocità di trasmissione dei dati da Pathfinder a Terra, l'architettura hardware della sonda e la pipeline di processamento dei dati a terra) potrà soddisfare le sue curiosità leggendosi l’articolo "Mars WITS: Under the Hood", sul sito di JavaSoft. E vale la pena di dare un'occhiata anche agli altri siti citati nei riferimenti...

 

Riferimenti
 

  1. "Java: to Mars… and Beyond!", http://www.javasoft.com/features/1997/july/mars.html
  2. "Deep Space Java: Hubble Does Applets", http://www.javasoft.com/features/1997/july/hubble.html
  3. Hubble CCS Home Page, http://ccs.hst.nasa.gov/ccs.htm
  4. NASA Jet Propulsion Laboratory Home Page, http://www.jpl.nasa.gov/

 

Le foto e le immagini contenute in questo articolo sono state create con il supporto dello Space Telescope Science Institute, operato dall’Association of Universities for Research in Astronomy, Inc., contratto NASA NAS5-26555, e dal Jet Propulsion Laboratory della NASA.

 
 
  

 

MokaByte rivista web su Java

MokaByte ricerca nuovi collaboratori
Chi volesse mettersi in contatto con noi può farlo scrivendo a mokainfo@mokabyte.it