Skip to main content

Overview

LeoDOS uses NASA's NOS3 framework to simulate a satellite constellation on a development machine. The same cFS flight software runs in simulation and in flight — application code is identical in both environments, with only the hardware abstraction layer swapped.

Architecture

The simulation has four layers. Flight software at the top communicates with hardware simulators at the bottom through a bus abstraction layer. NOS Engine replaces physical hardware buses with TCP connections. The diagram shows a single simulated satellite.

hwlib — Bus Abstraction

↑ same code in simulation and flight — ↓ NOS Engine replaces real hardware

Attitude
Sun Sensors
IMU
Star Tracker
Magnetometer
Reaction Wheels
Torquers
Thrusters
Navigation & Power
GPS
EPS
Imaging
Orbits
Attitude Dynamics
Gravity (EGM96)
Magnetic Field (IGRF)
Atmosphere
Solar Geometry
Component
Hardware Bus

Simulation time is synchronized at 10 μs per tick. NOS Engine distributes the clock to all components. The simulation can run faster or slower than wall clock time.

Sections