Aus Linux-Magazin 07/2009

Linux in der Luft- und Raumfahrt

Keine andere Wissenschaftsdisziplin besitzt für Laien ein solches Glänzende-Augen-Potenzial wie die Luft- und Raumfahrt. Zwei DLR-Angehörige berichten über Strömungssimulationen und Satellitensoftware. In einem Kasten beschreibt ein anderer Autor, wie die ESA dem Big Bang nachspürt.

In der Luft- und Raumfahrt spielen Computer eine zentrale Rolle. Die darauf laufende Software lässt sich grob in folgende Gattungen einteilen:

  • Missionskritische Software, die meist echtzeitfähig und in
    ein übergeordnetes technisches System eingebettet ist. Sie
    läuft oft autonom, reagiert auf Sensoren und steuert Aktoren
    an. Beispiel ist die Onboard-Software in Satelliten oder
    Flugzeugen.
  • Effiziente Codes, vor allem Simulationsalgorithmen mit hohen
    Anforderungen an Performance, Datendurchsatz und Genauigkeit.
    Beispiele sind Strömungssimulation oder die Berechnung
    chemischer Reaktionen.
  • Software, die bei komplexen Anwendungen oder im Umgang mit
    umfangreichen Datenbeständen unterstützt. Hierzu
    gehören Workflow-Managementsysteme sowie Visualisierungs- und
    Virtual-Reality-Anwendungen.
  • Systeme mit vielen Benutzern, meist Internet-, Intranet- oder
    E-Mail-Anwendungen, zum Beispiel Informations- und
    Dokumentationssysteme. Auch ein Webshop für den Verkauf von
    Satellitendaten an Banken oder Versicherungen zählt zu dieser
    Kategorie.

Der folgende Artikel beleuchtet zwei Anwendungsgebiete im Deutschen Zentrum für Luft- und Raumfahrt (DLR), wo sich Linux einer gewissen Dominanz erfreut.

Numerische Strömungssimulation

Moderne Entwurfsarbeiten in den Ingenieurwissenschaften erfordern es, die zugrunde liegenden physikalischen Prozesse hochgenau numerisch zu simulieren. In der Luft- und Raumfahrt trifft dies beispielsweise zu für die Simulation des Wiedereintritts von Raumfahrzeugen oder die frei fliegender, manövrierender Flugzeuge oder die Simulation der Strömungsverhältnisse im Inneren von Triebwerken. Um eine möglichst hohe Genauigkeit zu erzielen, koppeln die Rechnungen mehrere Fachdisziplinen, zum Beispiel Strömung und Struktur.

Mehrere Institute des DLR entwickeln dazu Software für die numerische Strömungssimulation (Computational Fluid Dynamics, kurz: CFD), die Universitäten, Industrie und das DLR selbst für unterschiedliche Simulationsaufgaben einsetzen. So simuliert der Code TAU vom Institut für Aerodynamik und Strömungstechnik [1] vornehmlich Außenströmungen (Abbildung 1a), TRACE vom Institut für Antriebstechnik [2] dagegen Strömungen innerhalb von Triebwerken (Abbildungen 1b).

Rechenintensives auf Linux

Da hohe Genauigkeiten sehr hohe Rechenleistung und viel Speicherplatz beanspruchen, laufen die Algorithmen auf Höchstleistungsrechnern, oft mit mehreren Tausend Multicore-Prozessoren. Als Betriebssystem kommt im DLR fast ausnahmslos Linux zum Einsatz, meist als Suse Linux Enterprise Server oder das auf Red Hat Enterprise Linux fußende Scientific Linux [3]. Für Linux sprechen seine gute Skalierbarkeit, insbesondere bei den 64-Bit-Varianten, und die vielen Open-Source-Bibliotheken und -Entwicklungstools. Weil die meisten Wissenschaftler im DLR Linux auch als Desktop-Betriebssystem fürs Entwickeln einsetzen, vermeidet das zugleich einen Bruch zwischen den Desktop- und HPC-Server-Welten.

Damit Ingenieure die High-Performance-Rechner einfach nutzen und mit Kollegen in Industrie und Universitäten effizient zusammenarbeiten, entwickelt die DLR-Einrichtung “Simulations- und Softwaretechnik” [4] grafische Benutzerschnittstellen wie Datafinder [5]. Die in Python implementierte Open-Source-Software ist im D-Grid-Projekt Aerogrid [6], also in der Luftfahrtforschung, aber auch andernorts im Einsatz. Sie startet Simulationscodes über Grid-Computing-Schnittstellen oder das Scheduling-System auf HPC-Rechnern. Auch hilft sie die anfallenden Daten verwalten (Abbildung 4).

ESA auf der Spur des
Urknalls

Bei Redaktionsschluss lief bei der ESA ein Countdown, um ihren Satelliten namens Planck am 14. Mai mit einer Rakete des Typs Ariane 5 vom Weltraumbahnhof Kourou (Südamerika) in den Weltraum zu schießen ([8], Abbildung 2). Seine Mission: In einer Reihe mit Sonne und Erde – auf dem so genannten Lagrange-Punkt 2 (L2) – zwei Jahre lang dem Universum die Hand auf die Stirn legen.

Planck soll das Nachglühen des Urknalls messen. Es besteht aus Mikrowellen, die das gesamte Weltall durchziehen, im Fachjargon Mikrowellen-Hintergrundstrahlung. Ihre Entdecker, Penzias und Wilson, erhielten 1978 den Nobelpreis für Physik, 2006 verlieh die Nobel-Stiftung einen weiteren an die Physiker Mather und Smoot für die erste genaue Vermessung dieser Strahlung.

Der Planck-Satellit soll sie nun in noch größerer Präzision aufzeichnen. Dazu wird er kleinste Temperaturschwankungen beobachten, die infolge winziger Dichte-Unterschiede auftreten. Die Temperaturunterschiede belaufen sich auf lediglich 0,0000001 Prozent der mittleren Strahlungstemperatur von 2,73 Kelvin.

Abbildung 2: Der in UV-Licht getauchte Planck-Satellit bei den letzten Vorbereitungen im vergangenen März vor dem Starttermin im Mai.

Abbildung 2: Der in UV-Licht getauchte Planck-Satellit bei den letzten Vorbereitungen im vergangenen März vor dem Starttermin im Mai.

Klein, aber oho

Immerhin: Aus diesen winzigen Variationen haben sich alle Galaxien, Sterne und Planeten entwickelt. Plancks Messergebnisse dienen beispielsweise dazu, den Anteil dunkler Energie und dunkler Materie exakt zu bestimmen. Auch die Krümmung der Raumzeit des Universums lässt sich mit Planck hoffentlich ermitteln.

Planck misst die Temperatur in allen Richtung des Weltalls. Dadurch entstehen kugelförmige Temperaturfelder. Solche Daten vermag das Programmpaket Healpix darzustellen (Hierarchical Equal Area ISO-Latitude Pixelization), das Daten auf Kugeloberflächen projiziert [9]. Es ist eine Entwicklung des kalifornischen Instituts für Technologie [10] und der Nasa. Obwohl die Software bei Sourceforge als GPL-Software gelistet ist [11], bitten die entwickelnden Wissenschaftler dringend um Nennung, wenn sie jemand verwendet – ein Reflex des Reputationsdrucks unter Wissenschaftlern.

Healpix hatte primär die Analyse der Hintergrundstrahlung zum Zweck, erfreut sich aber auch in Bereichen außerhalb der Astronomie großer Beliebtheit, zum Beispiel für geografische Karten der Erdoberfläche.

Kugeln bemalen

Zur Darstellung der Daten unterteilt das Programm die Kugeloberfläche in gleich große Pixel und ordnet ihnen Daten zu. Dazu verwendet es ein geschicktes Verfahren zur Flächenzerlegung (Tesselation), das es mit verschiedenen Auflösungen, also Pixelzahlen, durchführen kann. Abbildung 3 zeigt eine mit Healpix generierte Karte von Plancks Vorgängermission WMAP [12]. Die Farben geben die Temperatur der einzelnen Pixel an. Da die Temperaturunterschiede so klein sind, verwendet diese Healpix-Karte eine logarithmische Farbskala: Die roten Bereiche sind heiß, die blauen kalt. Planck wird eine ähnliche Karte erzeugen, allerdings mit deutlich höherer Auflösung.

Solch ein Bild stellt erst mal nur die Messdaten dar. Für deren wissenschaftliche Auswertung berechnen Forscher mittels einer Fourier-Analyse, wie die heißen und kalten Bereiche genau verteilt sind. Healpix enthält Routinen, die die Fourier-Zerlegung auf die Kugeloberfläche anwenden, genauer: eine Zerlegung in Anteile von Kugelflächenfunktionen. Damit erhalten die Wissenschaftler ein Spektrum der Temperaturschwankungen, aus dem sie andere Eigenschaften des Universums ableiten wollen.

Abbildung 3: In einer Karte der Mikrowellen-Hintergrundstrahlung zeigen rote Bereiche wärmere, blaue Bereiche kühlere Werte als die mittlere Temperatur.

Abbildung 3: In einer Karte der Mikrowellen-Hintergrundstrahlung zeigen rote Bereiche wärmere, blaue Bereiche kühlere Werte als die mittlere Temperatur.

Hubble für zu Hause

Wer nun meint, die Healpix-Software verschlinge gewaltige Rechenkapazitäten, der irrt zum Glück. Sie läuft auf einem handelsüblichen Rechner. Die aktuelle Version 2.11 enthält auch Routinen für C, C++, Fortan90, IDL und Java. Neben der angesprochenen Tesselation und Winkelzerlegung enthält Healpix zahlreiche weitere Funktionen, etwa um dieselben Daten in verschiedenen Projektionen darzustellen. Auch lassen sich sehr einfach einzelne Pixel der Karte manipulieren.

Die Installation sollte ohne Probleme verlaufen und ist in der Dokumentation ausführlich beschrieben. Healpix speichert seine Karten im FITS-Format (Flexible Image Transport System, [13]). In der astronomischen Gemeinschaft ist das freie FITS-Format weit verbreitet und die International Astronomical Union erkennt es an. Es speichert sehr verschiedene Daten wie Bilder, Spektren und Tabellen, beispielsweise auch auf dem Hubble Space Telescope.

Welche neuen Details des Universums wird Planck den Astrophysikern verraten? Es sieht so aus, als würden die größten wissenschaftlichen Fragen unserer Zeit mit freier Software gelöst. (Mark Vogelsberger/ake)

Entwickeln für Satelliten-Echtzeitsysteme

Die Abteilung Zentralavionik am DLR Institut für Raumfahrtsysteme in Bremen [7] entwickelt nicht nur die Hardware für Satelliten, sondern auch die dazu passende Software. Die Forschungs- und Entwicklungsarbeiten reichen von der Implementierung eines eigenen echtzeitfähigen Onboard-Betriebssystems bis hin zu den Applikationen, die den Satelliten steuern und Daten transferieren. Die Thermalkontrolle, die Ladekontrolle, die Lageregelung und andere Anwendungen laufen jeweils als eigene Threads parallel, die die Programmierer bei mehreren (redundanten) Bordrechnern als verteilte Anwendungen über mehrere Rechenknoten des Satelliten hinweg aufsetzen.

Die Anforderungen an Satellitensoftware in Bezug auf Fehlertoleranz, Robustheit und Ausfallsicherheit sind extrem hoch. Statische Codeanalysen, Codeverifikation und vor allem das ständige Testen der Software sollen das Erfüllen dieser Anforderungen garantieren. Das Problem beim Test des Gesamtsystems (Betriebssystem, Middleware, Applikationen) ist, dass die Zielhardware, der Satellit selbst, erst spät im Designzyklus zur Verfügung steht.

Abbildung 4: Die Benutzerschnittstelle Datafinder steuert hier eine Triebwerkssimulation auf HPC-Rechnern.

Abbildung 4: Die Benutzerschnittstelle Datafinder steuert hier eine Triebwerkssimulation auf HPC-Rechnern.

Linux-Schicht vereinheitlicht

Abhilfe schafft das DLR mit einem eigenen Hardware-abhängigen Layer, für den es je nach Zielplattform verschiedene Implementierungen gibt. Eine davon setzt auf Linux auf. Abbildung 5 zeigt, wie Linken des Realtime-OS gegen eine mit Linux arbeitende Schicht das Hardware-unabhängige Testen ermöglicht. Linux punktet hier durch seine saubere Struktur, mit zugänglichen Schnittstellen, und wegen seiner weiten Verbreitung kann auch ein verteilt arbeitendes Ingenieursteam auf einer Plattform gemeinsam entwickeln und testen.

Abbildung 5: Für das Testen eines Satelliten-Bootimage greift der Linker statt auf die Zielhardware auf eine gleichwertige Linux-Implementierung zurück.

Abbildung 5: Für das Testen eines Satelliten-Bootimage greift der Linker statt auf die Zielhardware auf eine gleichwertige Linux-Implementierung zurück.

In der Praxis bedeutet dies, dass die Wissenschaftler lange vor Fertigstellung der Onboard-Rechner mit den Softwaretests beginnen dürfen, was sich auf die Qualität und die Laufzeit eines Satelliten-Projekts positiv auswirkt. (jk)

Infos

[1] DLR Institut für Aerodynamik und Strömungstechnik: [http://www.dlr.de/as]

[2] DLR Institut für Antriebstechnik: [http://www.dlr.de/at]

[3] Scientific Linux: [http://www.scientificlinux.org]

[4] DLR Simulations- und Softwaretechnik: [http://www.dlr.de/sc]

[5] Datafinder: [http://datafinder.sourceforge.net]

[6] Aerogrid: [http://www.aero-grid.de]

[7] DLR Institut für Raumfahrtsysteme [http://www.dlr.de/irs]

[8] Planck-Homepage mit Start-Countdown: [http://sci.esa.int/science-e/www/area/index.cfm?fareaid=17]

[9] Healpix: [http://healpix.jpl.nasa.gov]

[10] Caltech: [http://www.caltech.edu]

[11] Healpix auf Sf.net: [http://sourceforge.net/projects/healpix/]

[12] WMAP: [http://map.gsfc.nasa.gov]

[13] FITS-Format: [http://fits.gsfc.nasa.gov]

Die Autoren

Frank Dannemann hat Physik und Informatik an der Universität Oldenburg studiert. Er arbeitet als Wissenschaftler am Institut für Raumfahrtsysteme im Deutschen Zentrum für Luft- und Raumfahrt e.V. (DLR) in Bremen. In der Abteilung Zentralavionik ist er für das Design und die Implementierung von eingebetteter Software hauptsächlich für Satellitensysteme zuständig.

Andreas Schreiber hat Technomathematik an der TU Clausthal studiert. Er arbeitet als Wissenschaftler im DLR in Köln-Porz. Er leitet die Abteilung für Verteilte Systeme und Komponentensoftware.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 3 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben