What are some of the costliest mistakes ever made in history?
Am 20. Juli 1969 stand die Apollo-11-Mission kurz vor der Landung auf dem Mond. Neil Amstrong, Buzz Aldrin und Michel Collins überprüften in letzter Minute die Vorbereitungen für die Landung. Über ihrem Bordcomputer blinkte etwas, es war Fehler 1201, gefolgt von Fehler 1202. Die erste Landung des Menschen auf dem Mond ist durch zwei Computerfehler gefährdet
Apollo 11 war die erste Mondlandefähre, die Menschen zum Mond brachte. Während des Höhepunktes des Kalten Krieges wollten sowohl die USA als auch die UdSSR ihre Männer auf den Mond bringen. Die Geschichte hat die berühmte Rede von John F. Kennedy ausgezeichnet, in der es heißt "Wir haben uns entschieden, in diesem Jahrzehnt zum Mond zu fliegen und die anderen Dinge zu tun, nicht weil sie leicht sind, sondern weil sie schwer sind." Mit der Finanzierung durch die Regierung der USA konnte die NASA die Apollo-Mission so schnell wie möglich planen.
Apollo 11 war eines der ersten Raumschiffe mit Bordcomputern, wie wir sie in unseren modernen Autos haben. Der Bordcomputer ist für die Navigation und die wesentlichen Komponenten des Raumschiffs zuständig. Das Smartphone, von dem aus Sie diesen Artikel lesen, ist um ein Vielfaches leistungsfähiger als der Apollo-Führungscomputer. Der Apollo-11-Computer hatte ein Logikmodul mit sechs Steckplätzen, in das der Code eingewoben war. Es wurden 40.202 Codezeilen geschrieben, und es entstand eines der berühmtesten Informatikfotos aller Zeiten. Es war Margret Hamilton vom MIT, die für das Kommandomodul und die Mondlandefähre verantwortlich war, die neben dem von ihr geschriebenen Code stand.
Margaret Hamilton's Apollo Code
Apollo Steuerungscomputer
Der Vorteil dieser Computer ist, dass sie über einen magnetischen Read-Only Speicher (Festwertspeicher) verfügen. Der Code wird geschrieben und in die Haupt-CPU eingesteckt, und er führt die Anweisungen in der vom Benutzer vorgegebenen Reihenfolge aus. Die Mission wurde in die Basisstation, die Mondlandefähre und das Orbitmodul unterteilt. Das Orbitmodul übernimmt die Kommunikation zwischen der Basisstation auf der Erde und der Mondlandefähre auf dem Mond.
Der zentrale Mikrocontroller war für die Ausführung aller Befehle gemäß den Anweisungen zuständig. Er erhielt auch parallel dazu Daten von den verschiedenen Sensoren und Aktoren, wie in der folgenden Abbildung erklärt wird:
Quelle: NASA Flughandbuch
Der gesamte Quellcode wurde auf Github veröffentlicht: chrislgarry/Apollo-11
Ein Simulator des Apollo Bordcomputers: Online Apollo Guidance Computer Simulator
Apollo 11 Flugbuch: Mission Documents
Am schönen Tag der Landung, nur wenige Minuten die Mondlandefähre den Boden berührte, gab es zwei Fehler im Bordcomputer der Mondlandefähre. Es handelte sich um die Fehler 1202 und 1201. Dies wurde in der technischen Niederschrift zwischen der Apollo-Crew und der Basisstation auf der Erde anschaulich festgehalten:
Was das Problem verursachte
Der Leitrechner der Mondlandefähre verfügt über verschiedene Sensoren. Sein Zweck ist es, die ständige Kommunikation mit der Basiseinheit aufrechtzuerhalten. Es gab zwei Kommunikationsleitungen. Einer der Astronauten schaltete versehentlich die sekundäre Kommunikationsverbindung ein. Dadurch wurde der Computer mit einer großen Datenmenge überflutet, die er nicht verarbeiten konnte, da er einen Speicherüberlauf verursachte. Die Fehler 1202 und 1201 bedeuten, dass der Speicher voll ist und der Computer immer wieder neu gestartet wurde.
Die Basisstation auf der Erde beurteilte die Situation schnell und informierte die Besatzung, die Mission nicht abzubrechen. Neil Armstrong wurde gebeten, die manuelle Steuerung der Mondlandefähre zu übernehmen. Neil Armstrong manövrierte das Modul manuell zum Mond.
Aus technischen Dokumenten der NASA
Die rechtzeitige Reaktion der Basisstation rettete die Mission. Wenn es zum schlimmsten Fall gekommen wäre, dann hätten Fehler 1202 und 1201 zu den schlimmsten Fehlern der Menschheitsgeschichte gehören können.