Der AGC und die Fast-Katastrophe bei Apollo 14
Hallöchen. Inzwischen habe ich, da es auch wieder Temperaturen gab bei denen man arbeiten konnte marin nächstes Buch (Arbeitstitel: „Apollo – Raumfahrzeuge und Saturn“) begonnen. Den Anfang, denn der Anfang ist immer schwer macht der AGC, der Apollo Guidance Computer als Kombination meines Hobbys Raumfahrt und meiner Vorbildung als Softwaretechniker.
Einen Splitter des Buchs, nämlich die Erklärung des Bedienkonzepts des AGC anhand einer besonders kritischen Situation will ich euch nicht vorenthalten. Sie kam bei der Apollo 14 Mission vor.
Als die Mondfähre Antares mit Piloten Edgar „Ed“ Mitchell und Kommandant Alan Shepard abgelegt hatte und man die Systeme einschaltete, stellte die Missionskontrolle fest, das ein Bit in der Telemetrie falsch war. Es war nicht nur ein Bit, es stand für die Stellung des Abort-Schalters. Es signalisierte das dieser aktiv war. So funkte man die Mondfähre an um dies zu prüfen. Capcom war Fred Haise:
104:29:57 Haise: Okay, Antares; Houston. We’d like you to back out of that (P)52. We need to look at a bit here.
104:30:07 Mitchell: Roger. Do you have some pads ready for me this pass, Fred?
104:30:15 Haise: Okay. They’re coming up in a minute, Ed. You ready to copy a couple of steps here?
104:30:25 Mitchell: Yes. Go ahead.
104:30:26 Haise: Okay. We’d like a VERB 11 NOUN 10 ENTER, 30 ENTER.
Verb nn Noun nn ist die typische Eingabesequenz des AGC. Sie bestand aus dem Drücken der Taste „Verb“ gefolgt von einer Aktion, u.B. Abrufen eines Wertes, Beobachten eines Wertes, Verändern eines Wertes. Verb 11 steht für das Beobachten eines Wertes in Register 1. Beim Beobachten wird der Wert einmal pro Sekunde ausgelesen und angezeigt, dazwischen die Anzeige jeweils gelöscht. Es folgt dann ein Druck auf die Taste Noun womit dann spezifiziert wird was gemacht werden muss. Dem konnten weitere Eingaben folgen z. B., wenn ein Wert verändert werden musste dann wurde eine Adresse angegeben. Die jeweils mit Enter übergeben wurden. In dem Fall war das Noun 10 was für den spezifizierenden Kanal steht, also man gab das Ziel als weiteren Parameter an. Das war der Kanal 30. Damit wurde angewiesen den Status dieses Kanals, das war der Abortbutton auszulesen und dies sollte auch, wenn das Bit nur im Computerspeicher „umgekippt“ war den Status erneuern. Es half jedoch nicht:
104:31:02 Haise: Antares, Houston. What we’re looking at there is the abort bit, and it looks set. And we’d like to proceed with the following to reset it.
104:31:13 Mitchell: Okay. Give me the words.
104:31:15 Haise: Okay. We need the STOP pushbutton, push. And the next thing is the ABORT pushbutton, depress. And wait on that one.
Mitchell sollte also die beiden Buttons STOP (für Triebwerksstop) und ABORT drücken. Das war ungefährlich, weil diese nicht direkt eine Aktion auslösen, sondern ihr Status durch den AGC abgerufen wurde und das nur wenn ein entsprechendes Programm lief. Das Bit verschwand, tauchte aber später wieder in der Telemetrie auf. Parallel zu den Anweisungen an Mitchell alarmierte man das MIT die nach Lösungen suchen sollten, wenn das Bit dauerhaft gesetzt blieb.
Das Abort-Bit war missionskritisch. Der Abortschalter würde, wenn er aktiv wäre die Landung abbrechen. Sprengladungen würden die Abstiegsstufe von der Aufstiegsstufe trennen und das Aufstiegstriebwerk zünden. Würde das unabsichtlich passieren so wäre im einfachsten Fall die Landung gescheitert, es könnte aber auch eine gefährliche Situation auftreten, denn das war der entscheidende Punkt. Die Abfrage würde erfolgen, sobald das Abstiegsprogramm P63 aktiv wird. Das heißt das Antares sich von einer vollen Abstiegsstufe trennen würde und das noch im ursprünglichen Orbit. Die Aufstiegsstufe würde nur kurz Arbeiten aber Antares in einen höheren Orbit befördern. Die Ankopplung an das CSM Kitty Hawak wäre dadurch nicht gerade einfach.
Es tauchte in der Telemetrie das Bit wieder auf und eine Stunde später kam die Missionskontrolle mit einer ersten Lösung:
105:41:09 Haise: Okay. And, Antares, we’re showing the abort bit set again, and we’re working on a procedure to reset it. And, also, another procedure to lock it out after starting PDI.
… (andere Konversation weggelassen)
105:45:49 Haise: Okay. I see you’re back to P00 now. We’d like to do a VERB 11 NOUN 10 ENTER; 30 ENTER; and look at that bit again. (Pause)
105:46:05 Mitchell: Okay. VERB 11 NOUN 10. (Long Pause)
105:46:21 Roosa: Houston, Kitty Hawk. Are you through with the computer?
105:46:23 Haise: Roger, Kitty Hawk. (To Ed) And, while we got that display up, Ed, could you tap on the panel around the ABORT pushbutton and see if we can shake something loose?
105:46:51 Mitchell: Yeah, Houston, it just changed while I was tapping there.
105:46:54 Haise: You sure tap nicely.
P00 ist das Idle Programm in dem der AGC nichts tut. Erneut wurde mit der gleichen Sequenz das Bit abgefragt und nun sollte Mitchell gleichzeitig die Stelle um den Abortbuttom abklopfen. Man vermutete in der Missionskontrolle, dass sich eine Lötstelle gelöst hatte, nun in der Schwerelosigkeit frei herum schwebte und eine Lötbrücke bildete. Mitchell hatte dieselbe Idee und äußerte dies auch in der Kommunikation: (inzwischen vertrat Tom Stafford Fred Haise).
106:25:29 Mitchell: Hello, Tom. Do you think we’re going to come up with something on this problem with the ABORT button?
106:25:35 Stafford: Roger. We’re working it right now and also MIT’s working it. Needless to say, we’re busy here, but we think we got a solution.
106:25:44 Mitchell: Good enough. Something – is it something like a solder ball?
Später zeigten Röntgenstrahleninspektionen, dass zahlreiche Konsolen der Mondfähre gelöste Lotpunkte hatten, was den sowieso nicht besonders guten Ruf der Arbeit von Grumman noch weiter beschädigte.
Inzwischen hatte man beim MIT das Problem analysiert. Technisch war es so, das die Programme zuerst nach einem LETABORT Flag schauten. Das war eine Absicherung. Solange dieses Flag nicht gesetzt war fragten sie den Schalter nicht ab. Das verhinderte das der Schalter zur Unzeit einen Abort auslösen würde. Das erfolgte zyklisch, also regelmäßig. Würde man dieses Flag zurücksetzen, so würde auch ein gedrückter Abortschalter beim Abstiegsprogramm keinen Abort auslösen. Dieser müsste im Notfall manuell durchgeführt werden. Zuerst gibt also Haise durch, was Die Besatzung machen muss um einen Abort auszulösen wenn sie eine Lösung haben, um das Flag zu löschen:
106:31:53 Haise: Roger, Al. I’ll be giving you some changes to the time line here, whereby we’ll be starting initiating PDI in PNGS, ATT HOLD, and MANUAL THROTTLE. The next consideration is if the bit sets during ullage, your procedure will be: STOP pushbutton to set and exit P63, or rather P70 in this case. And we’ll have some further words on how you’re to do that exit.
Das sind die Anweisungen um das Abstiegsprogramm P63 zu beenden und in das Programm P70 zu wechseln. Das ist Abbruch der Landung ohne Trennung der Aufstiegsstufe von der Landestufe, aber Nutzung des Triebwerks der Landestufe um wieder in den Orbit zu kommen. Als nächsten kommen die Anweisungen für das Rücksetzen des LETABORT Flags:
106:34:17 Haise: Okay. The procedure is VERB 25 NOUN 7 ENTER; 105 ENTER; 400 ENTER; 0 ENTER. (Long Pause)
Verb 25 steht für Load Compontent 1,2,3 to R1,R2,R3 Noun 7 steht für Liste von Bits die modifiziert werden. Es folgen die beiden Adressen für das LETABORT Flag und der neue Status nämlich 0.
Der Hintergrund der Anweisung, die Mitchell direkt nach dem Start von P63, dem Abstiegsprogramm eintippen sollte ist, das der AGC automatisch nach dem Start von P63 das LETABORT-Flag setzt, genau 0,2 s nach dem Triebwerksstart. Nun sollten die Anweisungen es wieder deaktivieren.
Das Restrisiko dieser Vorgehensweise war, das zwischen dem Start von P63 und dem Abschließen der Sequenz mit dem letzten Enter die lose Lötstelle wieder einen Kontakt ermöglichen könnte und dann automatisch Programm P70 für den Abbruch gestartet wird. Daher arbeitete man am MIT an einer anderen Lösung. Die man später zu den Astronauten funkte.
Sie bestand darin das Modusregister (MODREG) zu überschreiben. Es sollte in der Bedienungsphilosophie nur dazu dienen die Besatzung über das Programm zu informieren, das gerade lief. Bei nur 2.048 Worte RAM war es aber auch gleichzeitig der Speicherplatz für die Programmnummer. Schrieb man in diesen Speicherplatz die Nummer eines der beiden Abbruchprogramme (70/71) so unterblieben die Aktionen, die beim Start der Programme erfolgten, da sich der Computer schon in diesem Programm wähnte. Nun konnte Mitchell das LETABORT Flag zurücksetzen.
Der Nachteil: Die Startroutine beim Start setzte auch das ZOOMFLAG, das 26 s nach dem Zünden des Triebwerks es auf vollen Schub brachte und die Steuerung des Triebwerks übernahm der AGC nur, wenn er im MODREG P63 fand und das ZOOMFLAG gesetzt war. So musste Mitchell auch das ZOOMFLAG setzen und Shepard manuell das Triebwerk mit dem Steuerknüppel auf vollen Schub hochfahren. Zuletzt würde Mitchell den Wert 63 wieder in das MODRG schreiben und Shepard den Steuerknüppel loslassen, damit der Computer übernimmt.
107:32:55 Haise: Okay, Ed. The first (of the procedure changes) is after P63 selected and you’re to NOUN 92, which, in the time line, is right aft(er)… correction NOUN 62 which is right after your ENTER at minus 4 minutes.
Mitchell soll zuerst, nachdem das Programm P63 eingegeben wurde nachprüfen ob NOUN 62 anzeigt wird. Das ist so wichtig, das Haise es zweimal wiederholt.
107:33:49 Haise: Okay. After the ENTER and check (✓) DET (second line after ‚-4 PRO-FINAL TRIM‘), Ed; we need a VERB 21 NOUN 1 ENTER; 10 10 ENTER; 107 ENTER.
Verb 21 steht für Load Compononent 1 in R1. Noun 1 steht für Specify Maschine Adress. Damit wird der Code für Programm 71 (107) in das MODREG geschrieben.
107:34:22 Mitchell: Okay, Fred, I understand. After P63 and NOUN 9… (correcting himself) NOUN 62 (appears) at about 4 minutes (before PDI), we want to enter VERB 21 NOUN 1; 101 ENTER; 107 ENTER.
107:34:38 Haise: Antares, Houston. Correction on your readback. It’s VERB 21 NOUN 1 ENTER; 10 10 ENTER; 107 ENTER.
107:34:54 Mitchell: Roger; got you. 10 10 ENTER; 107 ENTER.
107:35:01 Haise: Okay, that’s correct. From there on, you can follow the nominal procedures through ignition. After ignition…
107:35:13 Mitchell: Okay.
107:35:16 Haise: Okay. After ignition, at plus 26 seconds on page 6, we need MANUAL THROTTLE UP. And, so you don’t misconstrue what I’m saying, we’re… we have the THROTTLE (Control) switch in AUTO (Timeline page 5 about halfway down the lefthand column), but we’re going to manually override it to FULL THROTTLE at 26 seconds.
107:35:39 Mitchell: Okay. We understand that at ignition plus 26, we will MANUAL THROTTLE UP, overriding the AUTO.
Shepard soll den Schalter für den Schub von Auto auf Manuell stellen und mit dem Stick nach 26 Sekunden den Schub auf den vollen Wert bringen. Im originalen Handbuch für die Besatzung von Apollo 14 finden sich genau diese Einträge und das „Auto“ ist dort durchgestrichen.
107:35:52 Haise: That’s correct. Okay. After we… after we get by THROTTLE UP, it’s VERB 25 NOUN 7 ENTER; 101 ENTER; 200 ENTER; 1 ENTER. And this will enable guidance and give you steering at that time.
107:36:23 Mitchell: Okay. Understand after THROTTLE up, we enter VERB 25 NOUN 7; 101 ENTER; 200 ENTER; 1 ENTER. And this enables guidance steering at that point.
Diese Aktion (Verb 25 wurde schon als Load Component 1,2,3 in R1,R2,R3 erklärt) setzt das ZOOMFLAG auf 1.
107:36:40 Haise: Roger. Okay the next entry. VERB 25 NOUN 7 ENTER; 105 ENTER; 400 ENTER; 0 ENTER. (Pause)
107:37:07 Mitchell: Okay. Understand VERB 25 NOUN 7 ENTER; 105 ENTER; 400 ENTER; 0 ENTER. And this looks like our procedures you gave us earlier.
Das ist die schon vorher erklärte Aktion zum Zurücksetzen des LETABORT Flags.
107:37:18 Haise: That’s right, Ed. This’ll disable P70, P71 . Okay, the next entry: VERB 21 NOUN 1 ENTER; 10 10 ENTER; 77 ENTER.
107:37:45 Mitchell: Okay. VERB 21 NOUN 1 ENTER; 10 10 ENTER; 77 ENTER.
Nun folgt wieder das Setzen der Programmnummer von P63 (77 ist der Code dafür) in den MODREG Speicherplatz.
107:37:56 Haise: Okay. This gets the P63 in the MODREG which gets us right for landing radar. Now, the same words apply if…
107:38:08 Mitchell: Okay.
107:38:08 Haise: …an abort requirement exists. We’re going to be on the AGS. And one thing maybe I didn’t make clear before, is the procedure for re-enabling P70, P71. You’re not to perform (those procedures), unless you do abort on AGS.
107:38:35 Mitchell: Roger. Roger. Understand that, in an abort situation, we will abort on AGS and use the re-enable procedure previously given up.
Haise betont, dass sie nun den Abbruch durch den AGC abgeschaltet haben. In einem Fall des Abbruchs der Landung, müssen die den zweiten Computer der nur für diesen Fall zusätzlich hinzugenommen wurde, den AGS nutzen. Daneben müssen sie im AGC wieder manuell P70/P71 aktivieren.
107:38:48 Haise: Okay. And the only other thing I can say is, as you already know, be sure and get MANUAL THROTTLE UP at 26; and after the last entry, Ed, add one more thing; we need THROTTLE to MINIMUM setting.
107:39:10 Mitchell: Okay. Got that. The last entry we return the COMMANDER’s THROTTLE to MINIMUM setting.
Haise betont, dass nachdem man das Triebwerk 26 s nach dem Start auf vollen Schub hochfährt der Commander (Shepard) den Stick loslassen soll, dann übernimmt der AGC wieder die Steuerung des Triebwerks.
Man sieht an dieser Episode zweierlei. Das eine ist, das es wegen der fest durch Verdrahtung vorgegebenen Software keine Möglichkeit gab, das Problem durch „Umprogrammierung“ oder „Softwareupodate“ zu lösen, wie man es heute machen würde. Die einzige Möglichkeit die es gab war es den Inhalt des Speichers direkt zu ändern.
Das zweite was die Episode zeigt war, das die Bedienung sehr arbeitsintensiv war. Die Astronauten mussten während einer normalen Mission über 10.000 Tastendrücke machen. Das war aber so gewollt, denn sie wollten ja so viel wie möglich selbst kontrollieren, was implizierte das sie an vielen Stellschrauben drehen konnten und auch Programme und Equipment selbst starten und mit Daten versorgen sollten. Das Verfahren war langwierig, weil die Funkverbindung nicht besonders gut war. Mitchell musste die Angaben die ihm Haise gab aufschreiben und dann nochmals vorlesen, sehr oft musste dies weil man die Sprache nicht richtig verstand korrigiert werden. Dazu kam eine minimale Funkverzögerung von 3 s für einmal Mond hin- und zurück.
Das Problem das durch „Dreck“ ein Computer eine Fehlfunktion hatte, kam auch schon vor Apollo 14 und danach vor, als Beipiel genannt STS-9/Columbia.
Der Computer hatte keine Fehlfunktion. Er verarbeitete nur den elektrischen Input den die Schalter lieferten. Dort gab es die Lötbrücke.