On-Board Software

The On-Board Software of a Satellite needs to offer the following functions:

  • Telecommands can be received and executed
  • Telemetry is generated depending on state and events
  • Sensors and Actuators can be read and commanded
  • Controller algorithms can be executed
  • Faults must be detected and isolated

The software development for the Flying Laptop is done completely at the Institute of Space Systems (IRS). This permits students to direktly participate in the development process.

The On-Board Software of the Flying Laptop uses RTEMS as base and is written completely in C++. The telecommanding and monitoring of the systems implements the ECSS PUS standard. An open mode concept not only allows the definition of system modes but also commanding single components into modes independently of each other.

The software is build from different layers and components:

The layers support hardware abstraction and reusability. The hardware layer accesses hardware directly while the higher layers offer abstract functions. The so called platform layer pursues the idea to build a framework that can be adapted to other satellite applications. The mission layer is built on the platform layer and contains all the functions specialized to the Flying Laptop mission.

OBSW Layerd Architecture

All elements across the layers are collected into components that offer certain features and encapsulate information and functions. One example is the device handling which for example encapsulates the boot and shutdown of each device.

Software Component Overview