Suggested Searches

2 min read

Applying Model-Based Development to Flight Software

Implementing autocoded GNC algorithms.

This landscape of “mountains” and “valleys” speckled with glittering stars is actually the edge of a nearby, young, star-forming region called NGC 3324 in the Carina Nebula. Captured in infrared light by NASA’s new James Webb Space Telescope, this image reveals for the first time previously invisible areas of star birth.
NASA, ESA, CSA, and STScI

This article is from the 2015 NESC Technical Update.

The Orion Multi-Purpose Crew Exploration Vehicle (MPCV) Guidance, Navigation, and Control (GNC) design and analysis team is developing the onboard GNC flight software (FSW) algorithms using the Matlab/Simulink tool suite as a model-based approach to FSW development. This approach uses the Matlab/Simulink tool suite for developing the architecture, design, and modeling the GNC executive and its algorithmic computer software unit components. The methods supported unit-level and closed-loop testing simulation, test environments, and the test and verification of the auto-generated code products.

Past GNC flight software development processes on NASA’s human-rated spacecraft have been more traditional in nature, whereby the GNC design and analysis team is chartered to develop and validate subsystem level requirements and document the lower-level functional subsystem software requirements (FSSR) in a form of pseudocode within that documentation. In this paradigm, the GNC team is “hands-off” of the actual flight software implementation. The FSSR documentation is delivered by the GNC design team to the FSW team for implementation, and it then becomes the GNC team’s task to interpret the written word and manually translate it into handwritten executable code, which becomes the onboard FSW. The Space Shuttle GNC FSW followed this development process. For the International Space Station (ISS), the development process increased the amount of autogenerated code (known as autocode). The ISS GNC FSW was a mix of handwritten code and from the graphical-based tool MATRIXx. The current Orion MPCV GNC FSW development process intends to use the Matlab/Simulink modeling tools to auto-generate 100% of the GNC algorithmic FSW as C++ code. This approach will involve the GNC design and analysis team working side-by-side with the FSW team in the production of the software artifacts that will lead directly to the onboard flight code.

This landscape of “mountains” and “valleys” speckled with glittering stars is actually the edge of a nearby, young, star-forming region called NGC 3324 in the Carina Nebula. Captured in infrared light by NASA’s new James Webb Space Telescope, this image reveals for the first time previously invisible areas of star birth.
NASA, ESA, CSA, and STScI