2010-01-05 18 views
8

In risposta a una domanda sugli esempi di utilizzo di Java, mi sono imbattuto in alcuni articoli in cui la NASA usava Java per il controllo di terra in una missione su Marte ma non sono riuscito a scoprire se è mai stato usato al di fuori della Terra. Sai di questi casi?Java è mai stato utilizzato nello spazio?

+0

Prenderò un'ipotesi e dico "No". – cx0der

+10

Se lo fosse, ciò spiegherebbe l'ultimo incidente dello shuttle – Pierreten

+0

Bene, so che i virus informatici sono stati trovati nello spazio. http://www.geekwithlaptop.com/astronauts-took-virus-infected-laptops-into-space –

risposta

8

Qui troverete un documento riguardante lo stato attuale di utilizzo di Java in applicazioni spaziali:

REAL-TIME JAVA IN SPACE: POTENTIAL BENEFITS AND OPEN CHALLENGES

Dicono:

In breve tempo, è improbabile che con la corrente Implementazioni Java il software completo di veicoli spaziali potrebbe essere scritto in Java. Tuttavia, Java potrebbe essere utilizzato come un piattaforma di isolamento per il software che non è stato assegnato il più alto criticità, mentre il codice critica sarebbe ancora scritto in Ada o C.

Ecco una dello stesso autori rapporti su un volo di prova di successo di un veicolo aereo senza equipaggio (UAV) che utilizza OVM (open source RTSJ (Real Time Specification for Java) implementazione):

A Real-time Java Virtual Machine for Avionics

+0

Questo è un bell'articolo sulle sfide affrontate nell'usare RTSJ nello spazio. Un articolo simile del 2004 è stato pubblicato per Project Golden Gate che si rivolgeva a Java per l'utilizzo nelle missioni spaziali, ma non ha trovato nulla di più oltre a questo: http://trs-new.jpl.nasa.gov/dspace/bitstream/2014/ 37998/1/04-0051.pdf – Anurag

2

Probabilmente sui portatili della documentazione che occupano lì sullo Shuttle, per lo meno.

Java è menzionato anche qui, il che implica che vi sia almeno il codice Java che può parlare con alcuni veicoli spaziali, se non addirittura eseguito su di loro:

+0

Penso che questa sia la migliore scommessa per "Java nello spazio": un sacco di computer portatili di serie hanno volato su missioni Shuttle e ISS, quindi è probabile che alcuni processi Java fossero in esecuzione (anche se forse non in una capacità mission-critical. .) –

+0

lo penso anch'io. Ci sono pochi progetti come Project Golden Gate che stanno cercando di usare Java per compiti legati alle missioni e che risalgono al 2004. Potrebbe essere un'eternità nel mondo informatico ma sicuramente non nell'esplorazione spaziale. – Anurag

1

In base a questo articolo, la Centrale Operativa di terra utilizza per 3D Mapping and Planning. Un comment on this forum claims the Mars Lander runs VxWorks.

Edit: Confermato da Wind River, il Spirit and Opportunity run VxWorks RTOS. Nessun altri riferimenti in cui Java è stato utilizzato in modo esplicito nello spazio.

+0

Trovato questo articolo (http://www.sun.com/aboutsun/media/features/mars.html) datato 16 gennaio (nessun anno) su sun.com che afferma che Java è stato utilizzato sul lato terreno per un comando e sistema di controllo chiamato Maestro. Java è stato usato per controllare il rover da remoto ma nessuna istanza di Java era a bordo di un rover. – Anurag

+0

Stavo per postare quello stesso fino a quando non ho visto che era già stato pubblicato - in effetti puoi persino scaricare (una versione ridotta) di Maestro: ti permette di rendere la posizione della Rover all'interno dei mosaici di Immagini e simulare dando sequenze di comandi a una Rover. – monojohnny

+0

grazie per il suggerimento .. non vedo l'ora di scaricare Maestro e giocare con esso, non appena la loro pagina web diventa disponibile, è proprio in questo momento - http://mars.telascience.org/ – Anurag

0

penso che ho letto un paio di voi un po 'di tempo fa che qualche sonda o satellite usavano Java come parte delle loro apparecchiature di analisi, ma dubito che il software mission-critical verrà sviluppato oggi in Java.

Tuttavia: con tutte le applicazioni utilizzate dagli astronauti sui loro computer portatili, non sarei sorpreso se ci fossero applicazioni scritte in Java. Forse qualche webapp installata localmente usata come bugtracker.

6

Un fatto spesso trascurato è che la maggior parte delle sonde spaziali utilizzano processori più vecchi. Semplicemente non possono eseguire il software commerciale corrente. Non sono abbastanza veloci o abbastanza potenti. I chip IC nello spazio sono esposti a livelli elevati di raggi cosmici. Le particelle energetiche possono distruggere i piccoli componenti del nanometro sulle moderne CPU e altri chip IC. Per lavorare in modo affidabile nello spazio, hai bisogno di circuiti integrati appositamente progettati con componenti ridondanti, spendi molto sulla schermatura pesante o usa chip IC meno recenti che hanno componenti più grandi che possono subire un colpo da un raggio cosmico senza essere distrutti.

La maggior parte di queste CPU precedenti funzionerà con un RTOS come VxWorks e sono programmate in assembler o utilizzando un linguaggio come C e ottengono comunque prestazioni decenti.

0

Non riesco a parlare con alcuna autorità in merito al software di bordo, ma posso dire definitivamente che Java è utilizzato dalla NASA (o dai suoi affiliati) per gestire i dati delle varie missioni. Recentemente ho lavorato in un laboratorio di fisica spaziale, che gestiva dati e telemetria per veicoli spaziali in orbita, e il team di sviluppo (di cui facevo parte) lavorava quasi esclusivamente in Java.

Problemi correlati