Freie Software in der Weltraumtechnik

Aus LinuxUser 06/2011

Freie Software in der Weltraumtechnik

© European Space Agency / C.Carreau

Mission possible

Dass Linux auch in der Hochtechnologie eine wichtige Rolle spielt, beweist die Firma von Hoerner & Sulger: Sie entwickelt mit freier Software unter anderem Messinstrumente für Raumsonden.

Dornröschen lässt grüßen. Das kleine Örtchen Schwetzingen in der Kurpfalz zwischen Mannheim und Heidelbergim mutet auf den ersten Blick so an, als wäre die Zeit die letzten 100 Jahre stehen geblieben: Ein Schlösschen, enge Gassen und alte Häuser, die den Weg vom 19. ins 21. Jahrhundert weitgehend unbeschadet überstanden haben. Hinter einer dieser unscheinbaren Fassaden (Abbildung 1) verbirgt sich nicht etwa ein Schuster oder Bäcker, sondern eine High-Tech-Schmiede, die sich als Zulieferer für bedeutende Raumfahrtprojekte von ESA und NASA einen Namen gemacht hat.

Abbildung 1: Der Schein trügt: Hinter der biederen Fassade verbirgt sich ein High-Tech-Unternehmen der besonderen Art.

Abbildung 1: Der Schein trügt: Hinter der biederen Fassade verbirgt sich ein High-Tech-Unternehmen der besonderen Art.

Die Firma von Hoerner & Sulger [1] arbeitet seit über 40 Jahren unter anderem mit verschiedenen Max-Planck-Instituten zusammen und ist in dieser Rolle maßgeblich beteiligt an der Entwicklung wichtiger Forschungsinstrumente. Dazu zählen beispielsweise das Massenspektrometer Cosima (Abbildung 2) als Kernstück der Rosetta-Mission [2] oder das CIDA (Cometary and Interstellar Dust Analyzer) als Massenspektrometer für die Mission Stardust [3].

Abbildung 2: Das Massenspektrometer Cosima (hier in der Transportbox) dient als eines der wichtigsten Bestandteile der Rosetta-Mission, die voraussichtlich 2014 den Kometen 67P/Churyumov-Gerasimenko erreicht.

Abbildung 2: Das Massenspektrometer Cosima (hier in der Transportbox) dient als eines der wichtigsten Bestandteile der Rosetta-Mission, die voraussichtlich 2014 den Kometen 67P/Churyumov-Gerasimenko erreicht.

Beide dienen dazu, die Zusammensetzung von Partikeln aus Kometenschweifen zu analysieren und das Ergebnis an die Erde zu funken. In jüngerer Vergangenheit entwickelte das Unternehmen unter anderem verschiedene Mars-Roboter (Abbildung 3), die bislang jedoch noch nicht zum Einsatz kamen. Der unscheinbare Auftritt der autonomen Fahrzeuge täuscht: Die Herausforderungen in der Raumfahrtentwicklung unterschieden sich grundlegend von den irdischen Anforderungen (siehe Kasten “Herausforderung Weltraum”).

Abbildung 3: Zwar wirken die Mars-Rover Solero (links) und Nanokhod (rechts) wie frisch aus dem Spielzeugladen, die technischen Anforderungen an das Equipment sind jedoch enorm.

Abbildung 3: Zwar wirken die Mars-Rover Solero (links) und Nanokhod (rechts) wie frisch aus dem Spielzeugladen, die technischen Anforderungen an das Equipment sind jedoch enorm.

Zur Zeit arbeiten etwa 23 Mitarbeiter bei von Hoerner &Sulger, von denen etwa ein Drittel Linux als Arbeitsplattform benutzt. So gut wie alle setzen jedoch freie Software in der täglichen Arbeit ein, teils in Emulatoren wie Cygwin.

Herausforderung Weltraum

Im Weltraum gibt es keine Servicetechniker, die in der Lage wären, eben mal defekte Bauteile auszutauschen. Daher rühren die hohen Anforderungen und Hürden bei der Auswahl sämtlicher Elemente in der Weltraumtechnik. Hohe Temperaturdifferenzen und hohe Strahlenbelastung erfordern den Einsatz spezieller elektronischer Bauteile, die nicht selten über 10?000 US-Dollar kosten, ihr irdischer Vertreter aber gerade einmal ein Tausendstel davon. Der Grund für diese enorme Preisdifferenz liegt meist nicht einmal in einem unterschiedlichen Aufbau des Bauteils, sondern in der sogenannten Qualifizierung, bei der die Hersteller aufwändige Tests – teils in der Chipfabrik – bewerkstelligen. Diese kosten viel Zeit und menschliche Arbeitskraft in der sonst weitgehend automatisierten Chipindustrie. Doch sie sind notwendig, um sicherzustellen, dass die eingesetzten “Space”-Bauteile nicht während der Weltraum-Mission ausfallen, was einen weit größeren finanziellen Verlust bedeuten würde, als die Mehrkosten durch die Qualifizierung.

Da viele Softwareaufgaben programmierbare Logikbausteine übernehmen, diese aber auch nur einmal programmierbar sind, muss auch die zur Programmierung verwendete Software um jeden Preis fehlerfrei funktionieren. Schon in der Entwicklung achten die Mitarbeiter darauf, mögliche Schwachstellen im Workflow, welche die Mission gefährden könnten, sowohl hard- als auch softwareseitig zu vermeiden. Unabdingbare Bereiche wie Stromversorgung oder Kommunikation zur Erde legen die Entwickler in den Satelliten meist redundant aus.

Weiße Kittel?

Ähnlich unkonventionell wie das Gebäude anmutet, sieht es im Inneren aus: Nichts wirkt auf den ersten Blick so, wie man sich eine Forschungseinrichtung für Weltraumzubehör vorstellt. Die Mitarbeiter tragen ganz leger Jeans (Abbildung 4), manche Labor-Arbeitsplätze verraten Elektronik-Freaks (Abbildung 5). Doch hinter dem saloppen Outfit verbirgt sich geballtes Wissen, das jeder Mitarbeiter nach seiner Fasson kanalisiert. Und weiße Kittel gibt es freilich auch – allerdings nur bei der Montage im Reinraum.

Abbildung 4: Weiße Kittel findet man in der Regel nur im nahen Reinraum. Die normale Arbeitskleidung der Mitarbeiter besteht aus Jeans und Pulli.

Abbildung 4: Weiße Kittel findet man in der Regel nur im nahen Reinraum. Die normale Arbeitskleidung der Mitarbeiter besteht aus Jeans und Pulli.

Abbildung 5: Was auf den ersten Blick wie ein heilloses Durcheinander wirkt, entpuppt sich auf den zweiten als wohldurchdachter Versuchsaufbau.

Abbildung 5: Was auf den ersten Blick wie ein heilloses Durcheinander wirkt, entpuppt sich auf den zweiten als wohldurchdachter Versuchsaufbau.

Wie in vielen anderen modernen Betrieben arbeiten die Angestellten in erster Linie projektorientiert. Wie sie die gesetzten Ziele erreichen, bleibt ihnen weitgehend selbst überlassen. Das gilt auch für die Wahl des Betriebssystems und der Applikationen, mit denen sie arbeiten. Die Idee, Linux und freie Software einzusetzen, trug Mitte der Neunziger Jahre einer der Junior-Chefs in die Firma. Viele Mitarbeiter erkannten schnell den Mehrwert, den ihnen das System bietet. Denjenigen, die Linux einsetzen, geht es in erster Linie um die Vorzüge, die das freie Betriebssystem gegenüber Windows bietet. Hier zählen keine ideellen Werte, sondern ausschließlich die projektbezogene Alltagstauglichkeit.

Volle Kontrolle

Eines der wichtigsten Argumente für Linux stellt die Nachhaltigkeit dar – in vielen Belangen (Abbildung 6). Viele der Projekte erstrecken sich über mehrere Jahre und erfordern in diesem Zeitraum eine konstante Ausgangsbasis, die geschlossene Software in dieser Form oft nicht bietet. Das beginnt bei Inkompatibilitäten verschiedener Dokumentenformate bis hin zur Softwareentwicklungsumgebung. Darüber hinaus birgt der Einsatz freier Software nicht das Risiko einer wechselnden Firmenpolitik der Hersteller.

Abbildung 6: Die geforderte Nachhaltigkeit manifestiert sich nicht nur in der täglichen Arbeit: Gerätetester aus früheren Projekten bewahrt die Firma teilweise über Jahrzehnte auf.

Abbildung 6: Die geforderte Nachhaltigkeit manifestiert sich nicht nur in der täglichen Arbeit: Gerätetester aus früheren Projekten bewahrt die Firma teilweise über Jahrzehnte auf.

Ein weiteres Argument für den Einsatz von Linux sehen die Mitarbeiter in der Vielzahl der Tools, die für dieses System bereitstehen. Zwar beanspruchen viele davon eine höhere Einarbeitungszeit, was jedoch angesichts der Projektlaufzeiten keine große Rolle spielt. So genügt nach dem Einrichten der erforderlichen Arbeitsumgebung häufig ein initialer Anstoß, beispielsweise via Shellskript oder Makefile, um eine ganze Reihe von Prozessen in Gang zu setzen, die am Ende das gewünschte Ergebnis liefern.

Der GCC-Compiler kommt meist nur für PC-Software zum Einsatz, seltener für Simulationen. Oft handelt es sich um Interface-Programme, um die Weltraumelektronik anzusprechen, Daten auszulesen oder Messwerte zu erfassen. Hin und wieder kommt es zu Problemen zwischen den Windows-Versionen unter Cygwin und den nativen Programmen für Linux. Da aber alle notwendigen Bestandteile im Quelltext vorliegen, ließen sich solche Inkompatibilitäten in der Vergangenheit bisher immer beseitigen.

In der Weltraumforschung unerlässlich ist das Simulieren elektrischer und physikalischer Vorgänge. Hier kommt das in Universitäten weit verbreitete und mächtige Octave [5] zum Einsatz, die freie Variante von Matlab [6]. In erster Linie geht es in der Praxis umd die Simulation von Prinzipien: Was muss die Software oder Elektronik generell leisten, um den Kundenwunsch zu erfüllen? Daraus resultiert, was in Software und was Hardware umgesetzt wird. Damit einhergehen: Wie wirken sich Störgrößen und Störungen an verschiedenen Stellen auf das Messeergebnis aus.

Als Skriptsprachen verwenden die Mitarbeiter unter anderem Perl und Python, und in den letzen Jahren zunehmend Lua [7]. Sie dienen unter anderem dazu, unkompliziert rohe digitale Werte in andere, beispielsweise Temperaturwerte umzurechenen oder zum Umwandeln von Formaten, damit Programm A in der Lage ist, Daten von Programm B weiterzuverarbeiten. Die Interpretersprache Lua erlaubt durch seine elegante Schnittstelle zu C-Code, Verbindungen zu Low-Level-Treibern herzustellen, und so ganze Raumfahrtsysteme über Skripte zu steuern.

Weiterhin verwendet das Unternehmen – sowohl unter Cygwin als auch unter Linux – Gnuplot [8] zur grafischen Darstellung von Messdaten und mathematischen Funktionen. Das freie Programm ist nicht zuletzt wegen seiner freien Anpassbarkeit und Skriptsteuerung das Mittel der Wahl. Darüber hinaus unterstützt es viele verschiedene Ausgabeformate.

Dokumentation

Nachhaltigkeit ist den Mitarbeitern jedoch nicht nur bei der Wahl ihrer Tools sondern auch der Dokumentation wichtig. Um Inkompatibilitäten zu späteren Zeitpunkten zu vermeiden, verwenden sie deswegen oft das Textsatzprogramm pdfLaTeX. Es verfügt besonders bei Dokumenten mit hunderten von Seiten über eine sehr hohe Stabilität, und es gewährleistet zu praktisch jedem Zeitpunkt eine Kompatibilität der erzeugten PDF-Dateien mit den Viewern der Kunden. Gerade bei der Erstellung vielvolumiger Dokumentenpakete (100 Dokumente je Projekt sind keine Seltenheit) garantieren die Style-Dateien von LaTeX für ein konsistentes Erscheinungsbild und Verlinkung zwischen den Dokumenten.

Ein wesentlicher Vorteil des pdfLaTeX-Ansatzes gegenüber WYSIWIG in der Dokumentation für die Raumfahrt ist auch, daß die Dokumenten-Inhalte durch natürlich lesbaren Quellcode dauerhaft repräsentiert werden. Dieser lässt sich sehr elegant mittels Revisionskontrolle, etwa Subversion, verwalten, und mehrere Ingenieure können gleichzeitig an verschiedenen Dokumententeilen arbeiten. Auch lässt das System es zu, die Dokumentenquellen über viele Jahre hinweg zu ergänzt und erweitern, was besonders bei langfristigen Raumfahrtprojekten wichtig ist.

In letzter Zeit kommt bei vH&S zur Dokumentation auch zunehmend das neue Programm LuaTeX [9] zum Einsatz, welches über einen eingebauten Lua-Interpreter verfügt. Die Verbindung der bewährten LaTeX-Eingangssprache mit der freien Programmierbarkeit über Lua erlaubt das Erstellen wesentlich komplexerer Dokumente, zum Beispiel die direkte Einbeziehung von Datenbanken beim Schreiben von Pflichtenheften, oder einen sich selbst dokumentierenden Systemtest.

Grenzfälle

Vor allem bei der Arbeit mit so genannten programmierbaren Logikbausteinen (FPGAs) nehmen die Hersteller den Mitarbeiter die Wahl des Betriebssystems aus der Hand, das sie die zur Programmierung notwendige Software lediglich für Windows ausliefern. Die IC-Fertigung und Qualifizierung von Logikbausteinen ist eine ausgereifte und häufig eingesetzte Technologie, weshalb solche FPGAs viel öfter im Weltall vorkommen, als beispielsweise Prozessoren.

Zur Funktionsdefinition der Logikbausteine dienen die Standardprogrammiersprachen VHDL (vor allem in Europa verbreitet) oder Verilog (in USA dominant). Da sich der Aufbau der Bausteine von Hersteller zu Hersteller unterscheidet, setzt nur herstellerspezifische Software diese Beschreibung korrekt in die eigentliche Logikfunktion und “Verdrahtung” um. Deswegen sind die Entwickler auf die Nutzung der proprietärer Herstellersoftware angewiesen – die in der geforderten Qualität bislang nur für Windows bereitsteht.

Auch der Einsatz von Windows in einer virtuellen Maschine scheidet in diesem Anwendungsfall aus, da diese beim finalen Programmieren der FPGA eine zusätzliche Fehlerquelle darstellt. Der Vorgang dauert etwa zwei Stunden, und jede Unterbrechung der Übertragung würde das rund 10?000 US-Dollar teure HR-FPGA irreparabel beschädigen.

Ein weiterer Grund für das Verwenden unfreier Software liegt zu einem Teil in der Firmenhistorie, zum anderen Teil schlicht am Fehlen geeigneter Programme unter Linux. So kommt im Unternehmen als Platinenlayoutprogramm seit etwa 10 Jahren das Programm Protel [10] zum Einsatz, der Vorgänger von Altium [11]. Der Wechsel zu einem anderen Programm würde einerseits den vielfach bewährten Workflow über den Haufen werfen. Zum anderen stehen derzeit schlicht keine freien Alternativen zur Verfügung, die den Ansprüchen genügen.

Zur eigentlichen Steuerung von Raumfahrzeugen und technischen Geräten kommen ausschließlich speziell entwickelte und angepasste Systeme zum Einsatz, die unabhängig von gängigen Betriebssystemen entstanden.

Fazit

Linux ist auch bei von Hoerner & Sulger nicht das Allheilmittel. Das freie Betriebssystem bietet jedoch viele Ansätze, die es der Firma erlauben, ihren Workflow deutlich effizienter zu gestalten, als das mit Windows möglich wäre. Darüber hinaus erfüllen Linux und Open Source gerade in den Punkten Nachhaltigkeit und Flexibilität einige der Grundanforderungen an die Weltraumforschung, da die Projekte meist über mehrere Jahre laufen. 

Glossar

FPGA

Steht für Field Programmable Gate Array. Dabei handelt es sich um programmierbare Logikbausteine. Sie zeichnet aus, dass sie durch die Konfiguration interner Strukturen in der Lage sind, beinahe beliebige digitale Schaltungen abzubilden.

RH

Radiation Hard. Der Hersteller der FPGAs garantiert eine Strahlenfestigkeit, die für den Einsatz im Weltraum ausreicht.

LinuxUser 06/2011 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben