Software errors in space

Preview:

DESCRIPTION

This is the presentation which was given to very broad audience about software errors in designing and controlling space missions. It covers some of Soviet, American, European and Russian missions. Recent SpaceX Dragon SW and HW design concluded the presentation.

Citation preview

Nedelin 1960

R-16 ICBM

R-16 ICBMDIABLOV JED (HYPERGOLICKÝ ASYMETRICKÝ DIMETHYLHYDRAZIN A OKYSLIČOVADLO AK27I)

PO NATANKOVANÍ DO RAKETY NEJDE VYPUSTIŤ

AK27I84% HNO3

13% N2O4

1–2% H2O }EXTRÉMNE KOROZÍVNEEXTRÉMNE JEDOVATÉEXTRÉMNE ÚČINNÉ

UDMHC2H8N2

80-150 mŕtvych

safety blocks were disabled because of

testing

všetky bezpečnostné poistky vypnuté

zle navrhnutá elektronika

zlá pyrotechnika

jeden spínač

Mariner 1

Atlas LV-3

Agena-B

Mariner

¯̇Rn ;VS

Cena preklepu = $18.5 mil.

(cca $200 mil. v 2013)

"The most expensive hyphen in history"

Pri ICBM vždy veľa chýb

intermezzo

NOAA N-Prime

cena opravy$135 000 000

Phobos 1 & Phobos 2

spolupráca14 krajín

Phobos-1 prestala odpovedať

Chyba bola nájdená v poslanom programe, ktorý deaktivoval trysky na

ovládanie orientácie...

...chyba spôsobená jedným chybným znakom v poslanej riadiacej sekvencii

spôsobila stratu celej sondy

Mars 4 & 7

Ariane 5$500 million

Ariane 5$500 million

converting 64-bit float to 16-bit integer

priceless

Ariane 5$500 million

converting 64-bit float to 16-bit integer

L_M_BV_32  :=  TBD.T_ENTIER_32S  ((1.0/C_M_LSB_BV)  *  G_M_INFO_DERIVE(T_ALG.E_BV));if  L_M_BV_32  >  32767  then P_M_DERIVE(T_ALG.E_BV)  :=  16#7FFF#;elsif  L_M_BV_32  <  -­‐32768  then P_M_DERIVE(T_ALG.E_BV)  :=  16#8000#;else P_M_DERIVE(T_ALG.E_BV)  :=  UC_16S_EN_16NS(TDB.T_ENTIER_16S(L_M_BV_32));end  if;

P_M_DERIVE(T_ALG.E_BH)  :=  UC_16S_EN_16NS  (TDB.T_ENTIER_16S  ((1.0/C_M_LSB_BH)  *  G_M_INFO_DERIVE(T_ALG.E_BH)));

L_M_BV_32  :=  TBD.T_ENTIER_32S  ((1.0/C_M_LSB_BV)  *  G_M_INFO_DERIVE(T_ALG.E_BV));if  L_M_BV_32  >  32767  then P_M_DERIVE(T_ALG.E_BV)  :=  16#7FFF#;elsif  L_M_BV_32  <  -­‐32768  then P_M_DERIVE(T_ALG.E_BV)  :=  16#8000#;else P_M_DERIVE(T_ALG.E_BV)  :=  UC_16S_EN_16NS(TDB.T_ENTIER_16S(L_M_BV_32));end  if;

P_M_DERIVE(T_ALG.E_BH)  :=  UC_16S_EN_16NS  (TDB.T_ENTIER_16S  ((1.0/C_M_LSB_BH)  *  G_M_INFO_DERIVE(T_ALG.E_BH)));

} KONTROLA PRETEČENIA AJ PODTEČENIA

chyba za $500 000 000

L_M_BV_32  :=  TBD.T_ENTIER_32S  ((1.0/C_M_LSB_BV)  *  G_M_INFO_DERIVE(T_ALG.E_BV));if  L_M_BV_32  >  32767  then P_M_DERIVE(T_ALG.E_BV)  :=  16#7FFF#;elsif  L_M_BV_32  <  -­‐32768  then P_M_DERIVE(T_ALG.E_BV)  :=  16#8000#;else P_M_DERIVE(T_ALG.E_BV)  :=  UC_16S_EN_16NS(TDB.T_ENTIER_16S(L_M_BV_32));end  if;

P_M_DERIVE(T_ALG.E_BH)  :=  UC_16S_EN_16NS  (TDB.T_ENTIER_16S  ((1.0/C_M_LSB_BH)  *  G_M_INFO_DERIVE(T_ALG.E_BH)));

Mars Climate Orbiter

$328 million

lbf×svs

N×s

Phobos Grunt

$64.4 million

Cygnus & ISS

10 vs 13 bit

10 vs 13 bit

0 (000000000000 in bits) 1023 (111111111111 in bits)

1980

August 1999

10 vs 13 bit

0 (000000000000000 in bits) 1023 (000111111111111 in bits)

0 (000000000000 in bits) 1023 (111111111111 in bits)

6-metrová prasklina

Recommended