dimarts, d’octubre 24, 2006

Un número massa gran

Un dels ridículs més grans de la NASA va ser el perdre una sonda que va impactar contra la superfície de Mart perquè es van fer un embolic entre una estació que expressava les distàncies en quilòmetres i una altra que ho feia en milles. Però l’ESA, l’Agència Espacial Europea, també han tingut alguna planxa notable. I la més espectacular va ser en el vol inicial del coet Ariane-5, que va esclatar 39 segons desprès del llançament.

Va ser un cop dur, perquè era el primer llançament de la nova generació de coets europeus, més grans, més potents i amb més capacitat que els predecessors Ariane-4.

El motiu del desastre va ser ridícul: Una de les unitats de 64 bits que controlaven la trajectòria va fer uns càlculs i va emetre un número que va enviar a una unitat de 16 bits. Aquesta no va poder processar el resultat perquè el número era massa gran i simplement no hi cabia en 16 bits! Per tant, va fer el que fan els ordenadors: Va donar un missatge d’error i es va desconnectar.

Hi havia un sistema d’emergència que es va posar en funcionament immediatament, però el software era idèntic al que havia fallat, de manera que l’error es va repetir exactament igual. La unitat també es va desconnectar, el coet va quedar sense control i adéu!

El problema amb aquestes unitats va ser que, en realitat aprofitaven el sistema operatiu dels coets Ariane-4. Després de tot, aquell sistema havia funcionat molt bé. I si alguna cosa funciona correctament el millor és no tocar-ho (Bé, això és cert a no ser que siguis una multinacional de la informàtica que per mantenir el negoci necessitis vendre cada 4 anys un nou sistema operatiu).

Però, tot i que el sistema anava molt bé per l’Ariane-4, algunes coses no servien per l’Ariane-5. I aquesta era una d’elles.

La unitat que va fallar calculava els desplaçaments horitzontals del coet, i els tècnics no s’havien de preocupar per si donava un valor massa alt, perquè l’Ariane-4 mai es desplaçava tant de pressa. El problema era que l’Ariane-5 era molt més ràpid i potent i si que ho feia. De manera que quan el sistema va detectar aquell desplaçament lateral, no va poder calcular-ho perquè la realitat anava més enllà del que els dissenyadors havien previst (correctament) que podia fer un Ariane-4. Tot plegat va fer que l’ordinador central perdés les dades de trajectòria del coet, i el desastre va ser inevitable. La trajectòria no es va poder corregir de cap manera i al final es va desintegrar per efecte de les forces aerodinàmiques degut a que començava a anar “de costat”.

I el més irònic és que aquell sistema ja no li feia falta al coet. La unitat que va fallar estava dissenyada per calcular els desplaçaments horitzontals en els primers segons del llançament, abans que s’estableixi el “mode de vol”, com si diguéssim quan el coet ja ha arrencat del tot. Això requereix 40 segons pels Ariane-4, però sòls 3 segons per l’Ariane-5.

De manera que el desastre va passar perquè va fallar un processador que, en realitat, ja no servia per a res! Un interessant camí que comença en un error en assumir que no calia modificar el disseny d’un programa informàtic i acaba en un fracàs de 7 mil milions d’euros.

Ja sabem que no hi ha cap sistema 100% lliure d’errors, però de vegades això es posa de manifest de maneres ben espectaculars.

7 comentaris :

Anònim ha dit...

Genial, Dan ... Quina cagada!!!

Salut!

Anònim ha dit...

no pot ser... resulta increïble! sembla mentida que gent que es passa hores i diners pensant en tot plegat no ho encerti a pensar quan toca... increïble...

Anònim ha dit...

La planxa de la sonda de Mart va ser força comentada, aquesta de l'Ariane coneixia el resultat, però no els motius.
Segur que amb això de les subcontractacions devia rebre un pobre programador XDXD

Anònim ha dit...

Els informàtics, ja se sap....

Dan ha dit...

Omalaled Ja ho saps que de cagades d'aquestes l'historia de la ciencia i la tecnica n'es plena. No tot han de ser éxits!

Aina, ostres, es que el sistema informatic d'un coet ha de ser una passada de complex. Aquell sofware havia de calcular on era el coet respecte del cpol nord magnetic de la terra i si es desplaçava segons el previst. Buf, a mi em sorpren que no fallin mes vegades.

Aixo segur pd40. Al final sempre reb un cap de turc.

caront. No dire res dels informatics, que despres m'ho fan pagar car... (pero com tu dius, ja se sap...) :-)

Anònim ha dit...

Més que no pas informàtica, l'errada va ser humana; o, si no, ¿de qui va ser la decisió de mantenir-hi aquest software innecessari? de l'home o de la màquina?

Dan ha dit...

Je je. La maquina va fer el que havia de fer, l'errada va ser de l'informatic que va decidir deixar-ho tal qual. (o l'enginyer, o el tecnic, o el comité...)