This paper investigates different strategies for end-to-end flight software development that support having both desktop and embedded environments while minimizing the existing gap between them, in order to facilitate reiteration back and forth of the flight application. For desktop prototyping, the use of Python as a user-facing language wrapping C/C++ algorithm source code is considered. The Basilisk software testbed is presented as a specific incarnation of this desktop development proposal. For embedded development and testing, two different approaches are reviewed and demonstrated: the use of NASA’s core Flight System, which is a well-known middleware layer, and the use of MicroPython, which is a new, lean, and efficient implementation of the Python 3 programming language optimized to run on constrained environments. The migration flow of flight algorithms from the Basilisk desktop environment into each of the considered embeddable targets is described and numerical results from embedded testing are shown. While the Basilisk–core Flight System strategy is explained through the experience of its use in an actual mission, the Basilisk-MicroPython strategy is proposed as a promising and novel strategy that is still under investigation.
Flight Software Development, Migration, and Testing in Desktop and Embedded Environments
Journal of Aerospace Information Systems ; 18 , 4 ; 157-174
2021-02-22
18 pages
Aufsatz (Zeitschrift)
Elektronische Ressource
Englisch
Flight Computer Software Testing
British Library Conference Proceedings | 2004
|Inexpensive Portable Desktop Flight Simulation Task
NTIS | 1997
|AIRSIM, a Desktop Research Flight Simulator
British Library Conference Proceedings | 1998
|