Vol 501 d'Ariane 5

Le vol 501 est le vol inaugural du lanceur européen Ariane 5, qui a eu lieu le . Il s'est soldé par un échec, causé par un dysfonctionnement informatique (appelé aussi bug), qui vit la fusée se briser et exploser en vol seulement 36,7 secondes après le décollage.

Schéma d'Ariane 5, avec les quatre satellites de la mission Cluster.

Explication simplifiée

La fusée a explosé à une altitude de 4 000 mètres au-dessus du centre spatial de Kourou, en Guyane. Il n'y a eu aucune victime, les débris étant retombés relativement près du pas de tir et le vol étant inhabité.

L'incident, dû à un dépassement d'entier dans les registres mémoire des calculateurs électroniques utilisés par le pilote automatique, a provoqué la panne du système de navigation de la fusée, causant de fait sa destruction ainsi que celle de la charge utile. Cette charge utile était constituée des quatre satellites de la mission Cluster, d'une valeur totale de 370 millions de dollars.

Analyse de l'incident

Chronologie des événements

Le lancement a lieu le à 9 h 33 min 59 s GMT-3[1] (heure locale), avec 58 minutes de retard sur le planning prévu, en raison de mauvaises conditions météo. Il s'agit alors du premier lancement de la fusée Ariane 5.

  • À 9 h 33, les moteurs de la fusée sont mis à feu, et les deux systèmes de guidage inertiel (principal et secours) commencent à mesurer les mouvements de rotation et d'accélération de la fusée.
  • Après 37 secondes de vol, les fortes accélérations produites par l'évolution de la fusée provoquent un dépassement d'entier dans le calculateur du système de guidage inertiel principal, qui se met aussitôt hors service. Le système de guidage de secours, identique au système principal, subit la même avarie et s'arrête à la même seconde. Le pilote automatique, qui s'appuie justement sur les informations provenant de ces systèmes de guidage inertiels, n'a alors plus aucun moyen de contrôler la fusée. L'échec de la mission est inéluctable.
  • 3 secondes plus tard, le pilote automatique se met en route. À la suite d'une mauvaise interprétation du signal de panne provenant des deux systèmes de guidage inertiels alors hors-service, le pilote automatique ordonne par erreur une violente correction de trajectoire. Les tuyères des deux accélérateurs à poudre (EAP) et du moteur de l'étage central sont braquées jusqu'en butée, et la fusée part violemment en virage serré.
  • La fusée dévie brutalement de sa trajectoire, présentant un dérapage important[Note 1], et les accélérateurs latéraux (boosters) sont arrachés par le fort courant d'air relatif décentré faisant alors apparition. Cet événement déclenche instantanément le mécanisme d'autodestruction préventive de la fusée. Le contrôleur de vol au sol, ayant perdu tout contact avec la fusée, télécommande également sa destruction, mais la fusée a déjà explosé.
  • Les débris de la fusée, qui se trouvent à environ 4 000 m d'altitude, sont projetés au loin et s'éparpillent sur une surface d'environ 12 km2 aux abords du centre spatial de Kourou, en Guyane française.

Causes en amont

En effet, la fusée Ariane 4, avait servi de modèle de programmation pour la fabrication d'Ariane 5. Un copier-coller a été utilisé[réf. nécessaire] afin de dupliquer des données volumétriques (qui avaient valu leur succès selon leur optique scientifique), mais pourtant, Ariane 5 était beaucoup plus vaste et plus lourde.

La pression de la fusée a obéi aux codes de base du système de programmation, causant une défaillance informatique à cause des valeurs volumétriques injustes dupliquées. Une production pressimètrique non adaptée pour le décollage, provoquant fatalement l'explosion. Une erreur qui a coûté très cher, en termes de moyens humains, de travail.

Centrales inertielles

Un système de guidage inertiel, parfois également désigné « plateforme inertielle », est un ensemble composé d'un calculateur interne, d'accéléromètres et de gyroscopes, qui permettent de mesurer les mouvements effectués par un véhicule par rapport à un repère fixe dans l'espace, en trois dimensions. Le calculateur détermine la position, la vitesse et l'inclinaison du véhicule, sur la base des mesures d'accélération et de rotation angulaire obtenues par les capteurs des accéléromètres et des gyroscopes. C'est un équipement standard dans les bateaux, les avions, les missiles et les véhicules spatiaux.

Le système de guidage inertiel qui se trouvait dans la fusée Ariane 5 était le même que celui qui équipait les précédents modèles de la fusée Ariane. Toutefois, le plan de vol suivi par Ariane 5 lors de son lancement diffère beaucoup de celui d'Ariane 4 : sa trajectoire est différente et les accélérations infligées aux instruments par la fusée sont cinq fois plus fortes que celles que produisait son aînée. Les valeurs trop élevées mesurées par les accéléromètres ont provoqué un dépassement de capacité, lors du calcul de la position géographique de la fusée par le dispositif informatique du système de guidage, ce qui a causé son plantage.

Tout comme pour Ariane 4, le système de guidage inertiel d'Ariane 5 est maintenu en mode alignement (calibrage) durant les quarante premières secondes du vol, suivi ensuite par l'allumage du pilote automatique. C'est dans cette période de quarante secondes qu'a justement eu lieu l'incident. Sur Ariane 5, il n'était normalement plus nécessaire de maintenir le mode de calibrage au début du vol, mais il a néanmoins été maintenu pour des raisons de commodité.

Ordinateur de bord

Lorsque l'ordinateur de bord de la fusée détecte une défaillance de la plateforme de guidage inertiel principale, il bascule automatiquement sur celle de secours. Dans le cas du Vol 501 d'Ariane 5, il n'a malheureusement pas détecté le fait que la plateforme de secours était également en panne pour les mêmes causes que la principale, et a continué à interpréter les signaux qu'elle produisait. Ces signaux de panne ont induit en erreur l'ordinateur de bord, qui les a interprété et a ordonné une correction de trajectoire brutale à la fusée, qui s'est alors complètement écarté du plan de vol prévu. L'ordinateur de bord croyait avoir corrigé une trajectoire à la suite d'une déviation qui n'avait en fait jamais eu lieu. La cause semblerait liée à une erreur informatique dans la programmation d'une bribe de code - non corrigée - et pourtant utilisée à diverses reprises sur les écrans de ces développeurs.

Ce virage serré imposé à la fusée lui a alors fait dépasser un angle de dérapage de 20°, ce qui a causé l'arrachement de l'un des deux accélérateurs auxiliaires. Cette perte de l'un des deux boosters active instantanément un interrupteur qui déclenche l'auto-destruction de la fusée, une mesure de sécurité visant à éviter de créer des victimes au sol, si la fusée retombait « en un seul morceau ».

Enquête

Vol 501 d'Ariane 5 et délimitation de la zone des retombées de débris.

Le vol a été largement suivi, par caméra, radar et télémesures, et le dysfonctionnement du système de guidage inertiel a été rapidement cerné par l'équipe d'enquête comme étant la cause de l'incident.

Les informations des télémesures ont été envoyées pour analyse au Centre national d'études spatiales de Toulouse, en France, tandis qu'une équipe sur place s'affairait à récupérer les débris de la fusée. La priorité a été donnée aux débris qui présentaient un risque d'incendie, tels que des réserves d'ergols non brûlés. La récupération des débris a été particulièrement difficile, du fait que cette région est essentiellement composée de mangroves et de savanes gorgées d'eau, après la saison des pluies qui venait de se terminer. Des pièces lourdes telles que les tuyères – pesant plusieurs tonnes – ont été retrouvées sous plusieurs mètres d'eau, profondément enfoncées dans la vase, et n'en ont jamais été retirées.

La récupération des deux systèmes de guidage inertiel parmi les débris de la fusée, et l'analyse des informations encore présentes dans la mémoire des appareils a permis de retracer avec précision les dernières secondes du vol. L'enquête s'est portée sur le cahier des charges du système de navigation, et les essais en laboratoire nécessaires pour obtenir l'autorisation de vol. Des simulations de vol après-coup, utilisant les systèmes de guidage inertiel et l'ordinateur de bord dans les conditions de vol réalistes d'Ariane 5, ont reproduit les événements qui ont conduit à l'explosion de la fusée. Les résultats correspondaient aux informations retrouvées dans les mémoires des appareils qui ont servi durant le vol.

Gilles Kahn est intervenu en tant que membre de la commission d'enquête sur le vol 501 d'Ariane 5 (1996), comme coauteur avec Didier Lombard, permettant de rendre explicite le bug informatique sous-jacent.

Conclusions

Fragment d'un des satellites Cluster.

Dans le rapport de la commission d'enquête, les points suivants ont été soulevés :

  • Des simulations en laboratoire ont en principe lieu avant le décollage. La réussite de ces simulations est une condition nécessaire pour obtenir le certificat de vol. Le système de navigation, utilisé depuis longtemps sur Ariane 4, était réputé fiable et le Centre national d'études spatiales a tout simplement demandé à ne pas effectuer les simulations de vol pour ces appareils, ce qui devait ainsi lui permettre d'économiser 800 000 francs sur le coût des préparatifs avant-lancement. Réalisées en laboratoire après la catastrophe, ces simulations ont justement permis de vérifier que l'explosion était inéluctable.
  • Le bug informatique qui a causé la mise hors service des systèmes de guidage à centrales inertielles a eu lieu durant la procédure d'étalonnage de l'appareil. Dans un usage normal, cet étalonnage mesure de très faibles valeurs lorsque la fusée est immobile, et il n'est donc pas protégé contre des valeurs élevées, telles que l'on peut obtenir lorsque ces mesures sont effectuées durant le vol. Le choix de laisser l'appareil en mode calibrage après le décollage date du début du programme Ariane, plus de dix ans avant l'incident était motivé par le fait que sur les premières fusées Ariane, en cas de retardement du décollage, il était nécessaire de relancer la procédure de calibrage, qui durait plus de 45 minutes. Ce n'est plus le cas avec Ariane 5.
  • L'arrêt automatique du système de guidage inertiel principal, en cas d'avarie, était un choix de conception décidé longtemps avant l'incident. La possibilité d'une avarie simultanée des deux systèmes de guidage (principal et secours) n'avait pas été envisagée, et les conséquences n'avaient donc pas été anticipées avant le décollage d'Ariane 5. D'une manière générale, le cahier des charges du programme Ariane est tourné sur les erreurs aléatoires et momentanées des appareils. Dans ces cas, un appareil de secours identique fait généralement l'affaire. Le problème vient du fait que les deux appareils étaient de conception strictement identiques, et ce qui peut causer la panne de l'un d'entre eux a de fortes probabilités de mettre également en défaut le deuxième. Il est donc fortement possible de « perdre » les deux en même temps, ce qui laisse le pilotage automatique de la fusée dans le flou le plus complet.
  • Une centrale inertielle mesure des grandeurs physiques, telles qu'accélération et vitesse angulaire, qui sont très difficiles à reproduire en laboratoire. Les essais en laboratoire consistent à remplacer les mesures de la centrale inertielle par de fausses valeurs, simulées artificiellement. La vérification fiable de l'ensemble centrale inertielle + ordinateur de bord ne peut se faire que lors de vols d'essai (une pratique courante dans l'industrie aéronautique et astronautique). Selon le cahier des charges de la centrale inertielle, une erreur informatique au sein de l'appareil doit entraîner son arrêt immédiat, l'erreur doit être inscrite dans une mémoire permanente de l'appareil (EEPROM), et un signal de panne doit être transmis aux autres appareils. C'est le choix de conception d'arrêter l'appareil en cas d'incident qui a été fatal à Ariane 5.
  • Le calculateur de la centrale inertielle est équipé de protections, qui évitent qu'une erreur informatique se produise en cas de mesure trop élevée (plantage par dépassement de capacité). Pour certaines valeurs, il est physiquement impossible d'atteindre la limite, ou alors il existe une large marge de sécurité, et il a donc été décidé de ne pas mettre de protection, les concepteurs estimant que ces emplacements mémoire ne pourraient jamais être saturés par une valeur trop grande. C'est pourtant le dépassement d'une valeur non protégée qui a provoqué l'incident. Ces décisions de protection ont été prises de concert entre différents contractants, durant le programme spatial Ariane 4.

Après enquête, les ingénieurs du CNES se sont aperçus que par mesure d'économie, le logiciel de navigation de la fusée Ariane 5 était celui qui avait été conçu pour Ariane 4[2], ce qui a induit une incompatibilité entre le logiciel et le matériel.

    Tout tenait à une seule petite variable : celle allouée à l'accélération horizontale. En effet, l'accélération horizontale maximum produite par Ariane 4 donnait une valeur décimale d'environ 64. La valeur d'accélération horizontale de la fusée étant traitée dans un registre mémoire à 8 bits, cela donne en base binaire 28 = 256 valeurs disponibles, un nombre suffisant pour coder la valeur 64, qui donne en binaire 1000000 et ne nécessite que 7 bits. Mais Ariane 5 était bien plus puissante et brutale : son accélération pouvait atteindre la valeur 300, qui donne 100101100 en binaire et nécessite un registre à 9 bits. Ainsi, la variable codée sur 8 bits a connu un dépassement de capacité, puisque son emplacement mémoire n'était pas assez grand pour accepter une valeur aussi importante. Il aurait fallu la coder sur un bit de plus, donc 9 bits, ce qui aurait permis de stocker une valeur limite de 29-1 = 511, alors suffisante pour coder la valeur 300. De ce dépassement de capacité a résulté une valeur absurde dans la variable, ne correspondant pas à la réalité. Par effet domino, le logiciel décida de l'autodestruction de la fusée à partir de cette donnée erronée.
    [réf. nécessaire]

    Notes et références

    Notes

    1. En aéronautique, un dérapage décrit le phénomène selon lequel un aéronef vole en suivant une direction précise, mais dont son axe longitudinal est décalé par rapport à la route suivie. Cette manœuvre, qu'elle soit volontaire ou non, est normalement contrôlée ou corrigée par la gouverne de lacet.

    Références

    [3]

    1. (en) Ariane 501 Inquiry Board, ARIANE 5 Flight 501 Failure, Paris, , 60 p. (lire en ligne [PDF]), Page 5, Paragraphe 3.
    2. Improving Software Testing: Technical and Organizational Developments, Tim A. Majchrzak
    3. « Rapport de la Commission d'enquête Ariane 501 », sur deschamp.free.fr, (consulté le )

    Voir aussi

    Articles connexes

    Liens externes

    • Portail de la Guyane
    • Portail de Kourou
    • Portail de l’astronautique
    • Portail de l’informatique
    Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.