NOS3
Documentation:
Home
Introduction
Modules
FAQ
Why should NOS3 be used?
When should NOS3 be used?
How should I go from NOS3 as is to my specific mission?
How to move from software / simulator to hardware once it arrives?
What can NOS3 give me during Integration and Testing (I&T)?
How do I create a new component in NOS3?
Getting Started
Installation
Running
Igniter
The Configuration Tab
Master Config
Spacecraft Config
The Build Tab
The Launch Tab
Architecture
Satellite(s)
Middleware - NOS Engine
Dynamics
Directory Layout
Flight Software
Standalone Checkout
core Flight System (cFS)
Operating System Abstraction Layer
Platform Support Package
Hardware Library
cFS Heritage Applications
cFS Tables
DS Tables
SC Relative Time Sequence (RTS) Tables
F’
Configuring NOS3 to Use F-Prime:
Sending a Sample NOOP Command:
Creating an F-Prime Component in NOS3:
F-Prime NOS3 Time Component (Nos3Time):
Ground Systems
YAMCS - Yet Another Mission Control System
YAMCS Studio Integration
YAMCS and OpenMCT
COSMOS 4
COSMOS 4 to cFS Command and Telemetry Link Up
COSMOS 5
COSMOS 5 to cFS Command and Telemetry Link Up
AIT
F Prime GDS
Selecting Ground System
Packet Formatting
Components
Generic Components
Component Information
Component Development
Integrated Algorithms
Attitude Determination and Control System (ADCS)
CryptoLib
OnAir
Synopsis
Generating a New Component
Step-by-Step Guide
Key Takeaways
Simulators
Architectural Whys
Why NOS Engine?
Why Hardware Models, plug-ins, abstract factories, etc.?
Why Data Providers?
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
STF - Concept of Operations (ConOps)
Mission Overview
Requirements
Spacecraft
Bus
Payload
Ground Segment
Ground Station
Mission Operations Center (MOC)
Science Operations Center (SOC)
Operations
Spacecraft Modes
Launch and Commissioning
Nominal Operations
Science Mode
Per Pass Operations
Contingency Operations
End-of-Life
STF - Quick Look
Power
Data
Schedule
Data Storage (DS)
Fault Detection and Correction (FDC)
Limit Checker (LC)
Stored Command (SC)
Standard Operating Procedures
Pass Logs
Standard Pass
Patching
STF - Software Development Plan
Required Materials
Software Management Approach
Product Development Team:
Organization:
Roles, Responsibilities, Authority, and Accountability:
Software Technical Approach
Project Life Cycle:
Life Cycle Reviews:
Software Design:
Software Workflow:
Software Implementation:
Static Code Analysis:
Release Plan:
Development and Test Environments
Development and Test Facilities and Equipment:
Verification and Validation:
Test Approach:
Unit Testing:
Code Coverage:
Build Testing:
System Testing:
Simulator vs Hardware:
STF - Verification and Validation (V&V) Plan
1 Introduction
1.1 Purpose and Scope
1.2 Responsibility and Change Authority
2 Applicable and Reference Documents
2.1 Applicable Documents
2.2 Reference Documents
2.3 Order of Precedence
3 System Description
3.1 System Requirements Flowdown
3.2 System Architecture
4 Verification and Validation Process
4.1 Verification and Validation Management Responsibilities
4.2 Verification and Validation Methods
4.2.1 Analysis
4.2.2 Inspection
4.2.3 Demonstration
4.2.4 Test
5 Verification and Validation Implementation
5.1 System Design and Verification and Validation Flow
5.2 Test Articles
5.3 Support Equipment
5.4 Facilities
6 System Verification and Validation
6.1 Complete System Integration
6.1.1 Developmental/Engineering Unit Evaluations
6.1.2 Verification Activities
6.1.3 Validation Activities
7 Program Verification and Validation
8 System Certification Products
Appendix A: Acronyms and Abbreviations
Appendix B: Definition of Terms
Appendix C: Requirement Verification Matrix
Appendix D: Validation Matrix
Scenario - Installation
Learning Goals
Prerequisites
Walkthrough
Option A: create a local virtual machine (VM)
Cloning the repository
Deploying the VM
Option B: you already use Linux or wish to create your own Linux VM
Docker install
NOS3 install
Python setup
Scenario - Demonstration
Learning Goals
Prerequisites
Walkthrough
Commanding the Spacecraft
The Sample Component
ADCS
Scenario - cFS
Learning Goals
Prerequisites
Walkthrough
NOS3 Implementation
Core Services
Data Management
Advanced Operations
Additional References
Scenario - COSMOS
Learning Goals
Prerequisites
Walkthrough
Additional References
Scenario - Commissioning
Learning Goals
Prerequisites
Walkthrough
Identifying Important Commissioning Data
Writing a Commissioning Skeleton
Enabling the Radio
Checking our Power State
Commands as part of templates
Turn the Radio On and Off
Scenario - Nominal Operations
Learning Goals
Prerequisites
Walkthrough
Taking a pass automatically via scripting
Connect to the Spacecraft
Execute the pass script
Taking a pass manually
Connect to the Spacecraft
Confirm Telemetry is Nominal
Send Commands
Downlink Data
Scenario - ADCS Walkthrough
Learning Goals
Prerequisites
Walkthrough
Introduction
Modes
Sensors
Actuators
Ingest and Output
Example
Scenario - Device Fault in Science Mode
Learning Goals
Prerequisites
Walkthrough
Outlining the Problem
Commanding the Spacecraft into Science mode
Triggering a Simulated Fault with the Sample Device
Solving the Problem
Creating Watchpoints for cFS
Creating an Actionpoint for cFS
Creating an RTS
Updating the State Machine
Conclusion
Scenario - Patching an App or Table
Learning Goals
Prerequisites
Walkthrough
Testing a Patch to an RTS
Patching an RTS
Scenario - Commanding ADCS in Science Mode
Learning Goals
Prerequisites
Walkthrough
Step 1 - Planning
Part A: Determining Scope
Part B: Determining Modifications for Behavior
Part C: Considering Edge Cases
Step 2: Implementation
Part A: Enabling and Setting Up Inertial Mode
Part B: Disabling Inertial Mode and Resetting to Sunsafe
Step 3: Verifying Intended Behavior
Conclusion
Scenario - Simulator Expansion
Learning Goals
Prerequisites
Walkthrough
Turn on 42 output in the 42 window
Enhance the Sample simulator to retrieve additional data from 42
Expand the Sample Simulator
Enhance the Sample Flight Software
Enhance the Sample Telemetry Definition
Run NOS3 and view the additional data in the Sample telemetry
Conclusion
Scenario - Command Encryption
Learning Goals
Prerequisites
CryptoLib Config Settings
Walkthrough
Commanding
Enabling Telemetry Output
Other CryptoLib Commands
Scenario - Low Power
Learning Goals
Prerequisites
Walkthrough
Step 1 - Scenario Setup
Step 2 - Identification and Triage
Part A: Pinpointing Possible Issues
Part B: Finding the Cause
Step 3 - Planning the Failsafe
Part A: Determining Scope
Part B: Determining Modifications for Behavior
Part C: Considering Edge Cases
Step 4: Implementation
Step 5: Verifying Intended Behavior
Conclusion
Scenario - Rapid Tumbling
Learning Goals
Prerequisites
Outline
Determining the Problem
Solving the Problem
Scenario - Sample Debug with GDB
Learning Goals
Prerequisites
Walkthrough
Step 1: Build NOS3
Step 2: Build the Sample Checkout App
Step 3: Edit the checkout script
Step 4: Launch the Sample Sim and launch the Sample Checkout App in GDB
Step 5: Use GDB
Optional: Enable TUI Mode
Conclusion
Scenario - Unit Test Creation
Learning Goals
Prerequisites
Walkthrough
File Structure Exploration
Writing Unit Tests
Example of NOOP Test
Building/Running the tests and generating a coverage report
Scenario - Flight Build
Learning Goals
Prerequisites
Walkthrough
Target Toolchain
NOS3 Modifications
cFS Modifications
Building the Flight Target
Conclusion
Scenario - Ground Operations with Random Errors
Learning Goals
Prerequisites
Walkthrough
Conclusions
Scenario - Constellation with Lunar Focus
Learning Goals
Prerequisites
Walkthrough
Background
Top Level Configuration
42 Configuration
Simulation Configuration
Flight Software Configuration
Ground Software Configuration
Scenario - GPS Spoofing
Learning Goals
Prerequisites
Walkthrough
How to Replicate
NOS3
Search
Please activate JavaScript to enable the search functionality.