Skip to content

NOS3 Hardware Simulator Framework, Example Simulator

msuder edited this page Nov 2, 2022 · 10 revisions

NOS3 simulator code has been developed in C++ with Boost and relies on the NASA Operational Simulator (NOS) Engine for providing the software busses, nodes, and other connections that simulate the hardware busses such as UART (universal asynchronous receiver/transmitter), I2C (Inter-Integrated Circuit), SPI (Serial Peripheral Interface), CAN (Controller Area Network), and discrete I/O (input/output) signals/connections/busses. NOS Engine also provides the mechanism to distribute time to all the simulators (and to the flight software).

Background and Supporting Concepts

Abstract Factory Design Pattern

XML Configuration

Implementing Your Own Hardware Model (and Data Provider, and Connections)

Configuration Data Property Tree

Hardware Model

Data Provider

Connections

Command Connection

Time Connection

UART Connection

Writing Your Own Simulator

Example Simulator