Abstract

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.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.