Anzeige
Anzeige
Fundstück

Das ist das Framework, auf dem der Code der Nasa-Marsdrohne aufsetzt

Das Framework auf dem der Code des jüngsten Mars-Entsandten der Nasa basiert, ist Open Source und Multiplattform-kompatibel und läuft damit auch auf deinem Raspberry PI.

2 Min.
Artikel merken
Anzeige
Anzeige

Mars-Landung des Nasa-Rovers. (Bild: NASA/JPL-Caltech)

Der Mars hat Besuch: Perseverance, wie das Roboterfahrzeug der Nasa heißt, ist am Donnerstagabend nach einer 472 Millionen Kilometer langen Reise sicher auf dem roten Planeten gelandet. Die Drohne führte die komplexe Landung auf der Marsoberfläche exakt so aus, wie die Nasa das geplant hatte. Was ihr vielleicht nicht wusstet: Der zugrundeliegende Code basiert auf einem Open-Source-Framework namens F‘ (F Prime).

Geschrieben in C++ mit Testing-Tools in Python

Anzeige
Anzeige

F Prime ist ein komponentenbasiertes Framework für die Entwicklung sogenannter Embedded Software. Ursprünglich entwickelt vom Jet Propulsion Laboratory, steckt das Framework hinter dem Code mehrerer Raumfahrt-Anwendungen. Es ist auf kleine Raumfahrtsysteme wie Cubesats, Smallsats und Instrumente zugeschnitten, findet aber auch in größeren Systemen Anwendung. Geschrieben wurde das Framework größtenteils in C++, zu kleineren Teilen steckt Python dahinter. Laut Security Code Analysis Platform LGTM ist der Code des Frameworks von herausragender Qualität: Der in Python geschriebene Anteil wurde mit A++ evaluiert, der größere „C++“-Part immerhin mit A.

Das Framework besteht aus mehreren Elementen:

Anzeige
Anzeige
  • Einer Architektur, die die Flight-Software in separate Komponenten mit klar definierten Interfaces zerlegt; einem „C++“-Framework, das Kernfunktionen wie Message-Queues und Threads bereitstellt;
  • Modellierungswerkzeugen zur automatischen Codegenerierung und zur Spezifikation von Komponenten und Verbindungen;
  • Eine wachsende Sammlung von gebrauchsfertigen Komponenten und
  • Testing-Tools zur Durchführung von Unit- und Integration-Tests, die den Python-Anteil stellen.

Cmake, Git und mindestens Python 3.5 erforderlich

Die Installation des Frameworks erfordert Cmake, Git und Python 3.5 oder neuer. Die Readme des zugehörigen Repos auf GitHub empfiehlt außerdem die Installation von F Primes Python Dependencies – am besten in einer virtuellen Python-Umgebung, um Probleme auf Systemlevel zu vermeiden. Die vollständige Installationsanleitung findet ihr im Projekt unter INSTALL.md. Hier die wichtigsten Commands:

Anzeige
Anzeige
git clone https://github.com/nasa/fprime.git
cd fprime
pip install --upgrade wheel setuptools pip
pip install Fw/Python Gds/

Das Repo beinhaltet zwei Beispiel-Deployments: Eine Standardanwendung, anhand der ersichtlich wird, wie die Komponenten zusammengefügt werden sollten, und eine für den Raspberry PI. Die Standardanwendung ist mit Linux oder macOS kompatibel, sodass ihr euch auch ohne Embedded Hardware an dem Framework ausprobieren könnt. Die Raspberry-PI-Anwendung bietet Starthilfe in einem Embedded-Software-Kontext. Wenigstens eines davon solltet ihr klonen und ausführen – allein schon, um sicherzustellen, dass ihr das Framework korrekt installiert habt.

Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
Ein Kommentar
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

kb

Es heißt Perseverance ;)

Antworten
Abbrechen

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige