JSTAR Simulation
JSTAR Simulation provides the NASA IV&V Program with the means to verify and validate various mission elements through Independent Testing in the form of dynamic analysis, JSTAR creates software-only simulation environments that emulate the hardware of the mission, and—through their own developed technology known as the NOS Engine (NASA Operational Simulation Engine)—integrates its simulation software.
Hardware Emulation
In the first step of their simulation development, JSTAR begins a process known as hardware emulation. This technique enables a computer system, such as a standard desktop, server, or laptop, to behave like or imitate another computer system. For example, hardware emulation is apparent in video game production—where console/arcade hardware is emulated to allow playing original games in the emulation environment. Likewise, NASA flight computers are often comprised of highly custom and specialized hardware, unlike typical consumer computers. Hardware emulation and custom device modeling allow JSTAR to run unmodified flight software binaries from NASA in their own emulated environments, communicating with supporting hardware as they would in flight. In other words, JSTAR creates their own model of flight computers from NASA missions that will run in their own standalone environment, with the software behaving the same as it does in its original hardware environment.
NASA Operational Simulation (NOS)
The NASA Operational Simulation (NOS), developed by the JSTAR team, allows for multiple developers to build and test flight software with simulated hardware models. The flight software has no knowledge that it’s not actually being run in space, as it obtains all the same inputs that it would during nominal operations.
NOS builds upon the NOS middleware to include a full suite of CubeSat simulations on one Virtual Machine (VM) platform. It integrates a variety of components such as: Nasa’s Core Flight Software (cFS), Hardware Simulators, Vagrant, COSMOS, OIPP, and 42. Each software component is further described below:
- NOS is a JSTAR-developed solution for simulating hardware busses as software only busses. This component provides the connectivity between the flight software and the simulated hardware components.
- NASA’s Core Flight Software (cFS) is an open source, project independent, reusable flight software framework.
- Hardware Simulators are fully customizable software models of a specific piece of flight hardware that often focus on inputs/outputs of the device. Each of these models serve as virtual hardware in order to provide the flight software with an accurate representation of its data.
- Vagrant allows a computer to set up the Virtual Machine necessary to run the applications associated with the NOS suite.
- COSMOS is an open source ground system software developed by Ball Aerospace which is used to provide command and control of the flight software.
- OIPP is a planning tool developed by members of the NASA IV&V team that allows the ground station to know when the satellite will be in view, as well as when the satellite will be in direct sunlight. This allows the IV&V team to plan spacecraft power usage and communication times
- 42 is a NASA-developed, open source visualization and simulation tool for spacecraft attitude and orbital dynamics. 42 provides magnetic field data and positional data as inputs to the magnetometer and GPS simulators.
NOS has been fully developed and is now an open source software: