Projektziel: Ein Space Shuttle startet am Kennedy Space Center, umrundet die Erde und landet in Leipzig/Halle, durchgehend in einem einzigen Lauf, ohne Eingriff und in Echtzeit. FlightGear hat dafür ein sehr detailliertes Shuttle-Modell. Mein Python-Skript bedient es von außen, so wie sonst die Besatzung. Nach mehreren verunglückten Testflügen klappte es: gut zwei Stunden Flug, Stillstand 0,4 m neben der Mittellinie.

Space Shuttle beim Abheben vom Kennedy Space Center in FlightGear
Bild 1 - Abheben am Kennedy Space Center. Der Boden besteht aus echten Luftbildern

Warum Leipzig?

Das Shuttle ist nie in Deutschland gelandet. In meinen Flügen fliege ich aber vor allem durch Mitteldeutschland, dort liegen auch die schärfsten Luftbilder. Mit Bahn 08R und 3589 m Länge ist Leipzig/Halle lang genug. Das Flugzeug kennt den Platz allerdings nicht, also trägt ein kleines Skript ihn in die Landeplatzliste des Flugzeugpakets ein.

Der Ablauf

Zeit ab ZündungAbschnittErgebnis im Abschlussflug
0:18AbhebenVorher APUs und Startautomatik aktiviert
8:38Haupttriebwerke aus106 km hoch, Bahn 226 × 40 km
etwa 35 minZündung OMS-2186 ft/s, Bahn 234 × 227 km
etwa 75 minAbstiegszündung262 ft/s in 152 s, Bahn taucht in die Atmosphäre
etwa 91 minDrehen in die Eintrittslage40° Anstellwinkel, Schräglage fast null
etwa 103 minStärkste Hitze2454 °F, Warnung käme erst bei 3050 °F
etwa 130 minLandung auf Bahn 08R−3,6 ft/s, 169 kt über Grund

Das Shuttle bringt für den Aufstieg, den Eintritt und den Endanflug eigene Automatik mit. Das Skript setzt die Schalter zur richtigen Zeit, berechnet die Zündungen und übernimmt alles, was die Automatik nicht kann. Dazu gehören die OMS-Zündungen, das Drehen vor dem Eintritt, Bremsschirm, Bugrad und Bremsen.

Space Shuttle mit Außentank kurz vor der Trennung über der Erde
Bild 2 - Kurz vor der Trennung vom Außentank

Die Bahn so legen, dass Leipzig passt

Zuerst wollte ich nur einmal um die Erde fliegen. Das geht nicht: Der Eintrittspunkt läge dann rund 8300 nm vor Leipzig, weit außerhalb der Gleitreichweite. Deshalb plant das Skript die Abstiegszündung aus dem echten Bahnzustand: Es rechnet durch, wo das Shuttle bei welchem Zeitpunkt und welcher Stärke in die Atmosphäre eintritt, und nimmt die Lösung, die rund 4300 nm vor Leipzig ankommt.

Dieser Abstand ist kein Zufall. Bei nur 3340 nm hatte das Shuttle zu viel Energie für die Strecke. Die Führung rollte bis 120° Schräglage, um sie abzubauen, und der Hitzeschild versagte.

Fehler 1: Die Zündung ohne Schub

Beim ersten durchgehenden Versuch blieb die Abstiegszündung einfach aus, und das Shuttle kreiste weiter. Meine erste Erklärung war falsch, ich hatte einen negativen Zielwert in Verdacht. Die Ursache lag in den Heizungen: Sie waren bis zur Eintrittsvorbereitung aus. Unter 275 K verliert die Treibstoffleitung im Modell laufend an Zustand, und dieser Wert geht direkt in den Schubhebel ein. Das OMS-Triebwerk zündet erst ab 60 % Schub, die Leitung stand aber nur noch bei 1,7 %.

Die Lösung war eine Zeile: Die Heizungen laufen jetzt ab der Tanktrennung. Außerdem prüft das Skript nach jeder Zündung den Schub und bricht mit einer klaren Meldung ab, statt endlos zu warten.

Fehler 2: Das Pendeln

Der erste Flug in echter Echtzeit stürzte über Neufundland ab. Das Shuttle pendelte, und die Steuerdüsen im Heck verbrauchten fast den ganzen Treibstoff: von 945 lbs waren noch 14 übrig, bevor die Steuerklappen in der dünnen Luft griffen. Die Ursache: Nach der Abstiegszündung fliegt das Shuttle rückwärts. Mein Skript ließ es erst in der Eintrittssteuerung umdrehen, und die hat bei so wenig Luft nur 10 % ihrer Gierkraft.

Das echte Shuttle dreht deshalb früher, noch mit der Orbitsteuerung. Genau das macht jetzt auch das Skript: Ab 175 km dreht es auf dem kürzesten Weg um eine einzige Achse in die Eintrittslage.


tempo = min(2.5, grad * 0.15)   # Grad pro Sekunde, kurz vor dem Ziel langsamer

Dabei gab es noch eine Falle: Das Vorzeichen des Gierens ist in Orbit- und Eintrittssteuerung umgekehrt. Mit der richtigen Fassung stand das Shuttle bei 135 km auf rund 40° Anstellwinkel, fast ohne Schieben, und das Heck-RCS hatte am Ende noch 404 und 367 lbs.

Die Landung

Unter 15.000 ft übernimmt die Autoland-Funktion des Flugzeugs. Der Anflug ist kein Fehler der Simulation: Mit 17–20° ist er fünf- bis sechsmal so steil wie bei einem Verkehrsflugzeug, und einen zweiten Versuch gibt es nicht. Beim Aufsetzen schaltet die Autoland-Funktion ab, ab da regelt das Skript das Ausrollen.

  • Bremsschirm: Das Flugzeug lehnt ihn ab, solange es keinen Bodenkontakt meldet. Darum löst das Skript ihn wiederholt aus.
  • Bugrad: Die Nase sinkt langsam, damit die Grenze von 2° pro Sekunde hält.
  • Spur: Das Ruder regelt Ablage und Kursfehler, gebremst wird so stark, wie die Restbahn es verlangt.
Space Shuttle im Endanflug auf den Flughafen Leipzig/Halle
Bild 3 - Endanflug auf Leipzig/Halle, unten die echten Luftbilder
Space Shuttle kurz vor dem Aufsetzen auf der Bahn 08R in Leipzig/Halle
Bild 4 - Kurz vor dem Aufsetzen in Leipzig/Halle

Das Ergebnis

WertAbschlussflug
Dauergut 2 Stunden, Orbit in echter Echtzeit
Aufsetzen−3,6 ft/s, 169 kt über Grund, Nase 14,7°
Stillstand0,4 m neben der Mittellinie, 540 m Bahn übrig
Bildrateim Mittel 58 fps

Was noch nicht perfekt ist

Das ist kein Nachflug einer echten Mission, Bahn und Landeplatz sind erfunden. Master Alarm und Warnmeldungen gehen im Flug mehrmals an, weil das Skript nicht jedes System wie eine Besatzung bedient. Die, die ich geprüft habe, sind in diesem Flug harmlos, zum Beispiel Hydraulik vor dem APU-Start oder ein zu kaltes Freon. Die Bodenbilder und die Erde aus dem All beschreibe ich im Beitrag Echte Luftbilder aus offenen Kartendiensten.

Fazit

Das Shuttle-Modell verzeiht wenig, und genau das macht es spannend: Beide großen Fehler kamen nicht aus der Flugphysik, sondern aus Abläufen, die eine echte Besatzung selbstverständlich erledigt, Heizung einschalten und rechtzeitig drehen.