Skip to content

Overview of functionalities of the Flight-Software

The functionalities of FSW varies a lot! It all depends on the type of the mission, the mission objectives and constraints. This is a brief overview of some of the functionalities that a FSW could include. We can divide its functions into two main categories:

Data handling

The FSW is responsible for understanding and interpreting the messages sent from the ground segment, providing mission operators with the means to control the satellite and each of its subsystems.

At the same time, it transmits information about the status of the spacecraft and its subsystems back to Earth, allowing operators to monitor the health of the spacecraft and receive payload data.

Tip

In summary, the FSW acts as the interface between the ground segment and the satellite.

Subcategories:

  • Telecommands: Execute actions received from ground stations.
  • Telemetry: Collect, store, and transmit information from the spacecraft subsystems and payload.
  • Data processing: Process data on-board before transmission.

Telecommands

Telecommands (TC) enable the remote control of a spacecraft through commands transmitted over a communication link. Rather than sending the actual instructions or procedures themselves, telecommands typically transmit an identifier, such as a number or code, indicating which onboard procedure must be executed. These procedures are already stored within the satellite as part of the FSW. Spacecraft onboard procedures may consist of machine-level instructions integrated into the FSW or interpreted scripts written in specialized languages, such as the PLUTO language defined by ECSS.

Note

The term Telecommand is often abbreviated as TC.

Telecommanding Functionalities

  • Unpack/decode telecommands
  • Verify the telecommand format
  • Retrieve the corresponding procedure
  • Execution:
    • Immediate execution
    • Scheduled execution
  • Capture the result:
    • Send the result back to Earth
    • Store the result for later transmission

Flight Planning Functionalities

It is also possible to schedule the execution of TCs. This is known as scheduling or flight planning. Triggering the execution of TCs can be based on different criteria.

Time-based criteria
  • Timer
  • Periodic execution
  • Absolute date and time
Event-based criteria
  • Geographic location
  • Orientation
  • Internal parameters (e.g., battery voltage, temperature, etc.)
  • External parameters (e.g., solar illumination, cosmic radiation levels, etc.)

Telemetry

Telemetry means the remote measurement of physical quantities and the subsequent transmission of the information to the system operator. The term comes from the Greek tele, meaning “distance,” and metron, meaning “measure” [Wikipedia].

Note

The term Telemetry is often abbreviated as TM.

Telemetric Parameters

Telemetry data is composed of one or many parameters. A parameter is a characteristic or value that helps us model or describe a system. For example: battery voltage, processor temperature, pointing angle on the x-axis of the AOCS, measurements of payload instruments, or current time of the OBC.

Telemetry Functionalities

  • Collect telemetry
  • Store telemetry in on-board memory
  • Process telemetry for later transmission
  • Transmit telemetry to the ground segment or other spacecrafts
Housekeeping

Very often the term Housekeeping is used to refer to a special kind of telemetry that exclusively describes health and status of the spacecraft itself. This does not include payload or scientific data. For example: batteries status, solar panels status, temperature readings, memories and processor statuses.

Note

When referring to both concepts together, Telemetry and Telecommands, is usually abbreviated as TM/TC.

Communications data processing

Besides TM/TC, the FSW usually has to perform telecommunications related functionalities.

Packet processing

In any communication system, it is useful to split the data to be sent into blocks of a known maximum size, as this simplifies communication control, these blocks are called packets or frames. Processing of communication protocol packets refers to handling network or data packets, which are the individual blocks into which information is divided for transmission at the network layer. Functionalities of the FSW can include:

  • Read packets coming from communication interfaces.
  • Interpret packet segments and take actions based on them.
  • Packet routing: Forward packets to end devices or to the ground segment (GS).
  • Packet retransmission and reordering
  • Encoding and decoding: Convert the representation of information so that it can be understood by other devices.
  • Error Detection and Correction (EDAC).

Miscellaneous data processing

Other data processing related functionalities include.

  • Data Storage

    • Manage storage units.
    • Store telemetry and payload data in files.
    • File download and reception (File Transfer Protocol, FTP).
  • Security

  • Encryption
  • Authentication

  • Data compression

Control of the spacecraft and subsystems

The onboard software is the component responsible for commanding each subsystem, enabling the satellite to perform its tasks autonomously. At the same time, it continuously monitors the status and proper functioning of all other subsystems, and in the event of an anomaly, it takes corrective actions to ensure mission success.

Tip

In summary, the FSW provides autonomy to the satellite.

Subcategories:

  • Modes of Operation
  • Control and monitoring of subsystems
    • Attitude and Orbit Control Subsystem (AOCS)
    • Electrical Power Subsystem (EPS)
    • Thermal Subsystem
    • Communications Subsystem (COMS)
    • Payload and instruments
  • Fault Detection, Isolation, and Recovery (FDIR)

Modes of Operation

Modes of operation are a way of organizing mission execution by dividing it into distinct stages. In each stage, a specific objective is pursued by carrying out a defined set of actions. Each mode represents a specific behavior that the FSW should follow, such as: initialization, deployment, idle, self-test, AOCS pointing, science observation. Functionalities include:

  • Transition Between Modes of Operation
    • Autonomous transition: Triggered by an event or anomaly
    • On demand (via telecommands)
  • Execution of predefined actions
Apollo modules
Modes of Operation transitions [Phoenix CubeSat, Arizona State University]

Attitude and Orbit Control Subsystem (AOCS)

Processing of sensor information: converting analog/digital signals into attitude or position with respect to a reference frame.

  • Gyroscope → Rotation rate and orientation
  • Sun sensor → Position of the Sun
  • Earth sensor → Position of the Earth’s horizon
  • Magnetometer → Direction of the magnetic North Pole
  • Star tracker → Position with respect to the stars
  • GPS → Longitude, latitude, altitude

Data fusion: combining information from multiple sensors to determine a unified estimate of the satellite’s attitude, position, and trajectory with respect to a reference frame.

  • Kinematic integration
  • Kalman filter
  • Ephemeris propagation
  • Orbital propagation

Actuator control: commanding actuators in order to control the satellite’s attitude and orbit.

  • Magnetorquers
  • Gyroscope
  • Reaction wheels
  • Thrusters

Electrical Power Subsystem (EPS)

  • Control power consumption
  • Control battery charging
  • Control solar panel orientation

Thermal Subsystem

  • Control the internal temperature of the satellite’s essential components.
  • Activate/deactivate heaters
  • Activate/deactivate radiators

Communications Subsystem (COMS)

  • Deploy antennas once in orbit.
  • Control antenna pointing.
  • Activate/deactivate radio transmitters.

Payload and Scientific Instruments

Functions are highly mission-dependent

  • Deploy payload and scientific instruments once in orbit
  • Calibrate instruments and sensors
  • Control instrument and sensor pointing
  • Collect data

Fault Detection, Isolation, and Recovery (FDIR)

  • Monitor system status (through telemetry )
  • Detect failures
    • Check whether telemetric parameter values are within nominal ranges (e.g.: Voltage, amperage, temperature)
    • Heartbeats
    • Built-in tests
  • Perform corrective actions in case of failures
    • Transition to Safe Mode
    • Switch to redundant hardware
    • Restart subsystems
    • Reconfigure subsystems
    • Disable subsystems

Time keeping

  • Synchronizing the on-board time with external reference (Gond Segment, other spacecraft or GNSS)
  • Distribute on-board time to other subsystems and payloads.