Mars Ascent Vehicle
PROJECT DESCRIPTION
The Core Flight System (cFS), developed at Goddard Space Flight Center (GSFC), provides a platform independent, reusable software architecture, which allows projects to focus software development efforts on mission-specific needs in the form of a cFS application, a source code module developed to perform a specific task. These applications can communicate across the cFS architecture to carry out the necessary mission tasks, such as commanding, hardware control, and fault detection. The framework, which has considerable flight heritage across CubeSat missions at NASA, can significantly improve project cost and schedule by decreasing software development time and improving reusability. The goal of this project was to enhance MSFC’s expertise in developing flight software using the cFS and by developing prototype applications for new projects, such as the Mars Ascent Vehicle (MAV) and Lander Technologies.
ACCOMPLISHMENTS
Because many projects are baselining the cFS architecture, expertise in the development of mission-specific flight software that will interface with it is critical to securing flight software development work at MSFC on future missions to support landers, ascent vehicles, habitats and other potential projects. The Software Development Branch at MSFC is well-versed in the development of embedded, real-time software for large and small missions; however, until recently, development using cFS had been limited to prototype or component- level software development for commercial partners in Linux-only environments. The opportunity to work through all the design considerations when
building a flight system using the cFS architecture or work with understanding its performance on relevant flight computers and operating systems has proven extremely beneficial to the Software Development Branch in assessing and understanding cFS for use in a flight project. In this technology development effort, MSFC proposed to use the Sphinx Flight Computer as a hardware platform to run cFS and develop mission-specific application source code that will control a hardware component (i.e. valve, IMU, camera) that could ultimately be used by the MAV and Lander Tech projects.
Completing this project has allowed MSFC to work with the projects to prototype working source code that anticipates future project needs while demonstrating MSFC’s expertise. In addition, MSFC has been able to consider cross-project needs and start considering the design elements that could make up more generic sensor applications going forward. This work has allowed MSFC to outline a high-level architecture for MAV using cFS and begin to assess the architecture for use in such a mission, starting with the prototype IMU application.
As part of the 2019 Technology Investment
Program, MSFC surveyed the existing specific and high-level cFS applications available across the Agency and worked with the MAV and Lander Tech projects to determine that development of an Inertial Measurement Unit (IMU) application would provide the most benefits. The team then used proven agile software development processes to define high-level requirements and design for the IMU application and develop the associated source code. In light of the MAV design considerations and available IMUs, the team chose to work with
the Honeywell HG4930. The MSFC team developed high-level requirements, design diagrams, and source code for the HG4930 cFS application. The team performed initial testing and troubleshooting of the application in a Linux environment. Next, the team was able to compare results with their application in Linux to results connecting to the HG4930 directly from a PC through the vendor- provided software.
This project also leveraged in-kind contributions from the MAV of two prototype Sphinx flight computers developed at JPL. With the help of the Avionics Hardware Design branch, the two Sphinx boards were set up in the Small Project Rapid Integration and Test Environment (SPRITE) lab at MSFC. The MSFC team performed initial assessment and testing of the Sphinx prototype boards, including running the Real-Time Executive for Multiprocessor Systems (RTEMS) operating system as well as cFS on the boards. These initial tests showed portability of the cFS to the Sphinx flight computer. Once cFS was running on the Sphinx boards, the cFS IMU application was integrated to run on the Sphinx flight computer connected to the HG4930 IMU hardware in the SPRITE lab. Given that the trade space for IMU selection on the MAV project remains open, the team has also used the knowledge gained through this effort as a step toward developing a high-level design for a more generic IMU application. The team also provided high-level documentation of an overall flight software architecture using cFS for consideration by the MAV project.
SUMMARY
The ability to apply more agile software
development solutions leveraging significant code and artifact reuse by using cFS can enable faster and more cost-effective project start up times. This effort enhances MSFC’s expertise with both using cFS and assessing it for future projects like MAV. The source code produced through this effort provides prototype flight software that the MAV and Lander Tech projects can use, and it allows MSFC a broader view of developing and implementing mission-specific cFS applications on a representative set of hardware for future projects. The effort also lays the foundation for MSFC to begin considering the development of more generic sensor applications for use across many future
projects and missions. Such generic applications will allow MSFC to contribute to the cFS application catalog, reducing time and cost to develop software for future missions across NASA and the cFS open source community. In addition, the effort positions MSFC to contribute to future projects that will utilize the cFS architecture, either through in-house development or as being a smart buyer of commercial solutions.
PRINCIPAL INVESTIGATOR: Stefanie H. Justice FUNDING ORGANIZATION: Technology Investment