Spacecraft command language
A spacecraft command language (or satellite control language, spacecraft control language, Systems Test and Operation Language (STOL), Satellite Test and Operation Language, etc.) is a computer command language for commanding spacecraft mission systems. Ultimately such languages are used to command remote spacecraft with telecommands, but they are also used for development and verification of onboard systems (prototype, engineering model, and flight hardware and software), and of ground systems, prior to launch.
Spacecraft command languages are typically written in a format similar to human languages. This is in contrast to telecommand protocols, which are usually binary formats (although they may be displayed in hexadecimal, or broken out into labelled fields by command displays). Some spacecraft command languages, such as SCL or PLEXIL, can be executed on the spacecraft with an onboard executive.
The NASA GSFC Systems Test and Operation Language (STOL) Functional Requirements and Language Description (1978). illustrates the concept:
History
The original language to which the acronym STOL was applied, GSFC Systems Test and Operation Language, was designed in the 1970s at NASA Goddard Space Flight Center to provide a standardized language for functionality that had been previously represented in at least three other satellite operation language efforts at GSFC.
Various STOLs were created at other locations with mission-specific or site-specific names, and proliferated to the extent that a Jargon Interpreter program was prototyped at one GSFC, to convert English statements to a limited set of MSTOL directives, with plans for other STOL dialects. Other languages were later developed and offered by private companies as part of satellite control software suites.
Command Translation Examples
The following examples show natural language CSTOL commands and the lower-level spacecraft commands they are translated into, for a particular spacecraft.
The first two examples show two different CSTOL commands that are translated into the same spacecraft command, indicating that this spacecraft command takes different values as an argument.
In the last example, the CSTOL command is translated to another CSTOL command, which would then be translated into a spacecraft command in still-human-readable textual format. The command can be uplinked as-is if the spacecraft has the ability to read the text format. Otherwise, the command is translated to a packed binary representation on the ground, prior to uplink.
Spacecraft command languages
Open source and government-sourced languages
• | CSTOL | - | (University of) Colorado System Test and Operations Language, University of Colorado. |
• | ETOL | - | ESA Test and Operation Language, European Space Agency. |
• | MSTOL | - | Multi-Satellite Operations Control Center (MSOCC) Applications Executive (MAE) System Test and Operation Language, NASA Goddard Space Flight Center. |
• | PLEXIL | - | Plan Execution Interchange Language, NASA Ames Research Center. |
• | PLUTO | - | Procedure Language for Users in Test and Operations, European Cooperation for Space Standardization (ECSS). |
• | STOL | - | Systems Test and Operation Language, NASA GSFC. |
• | Timeliner‑TLX | - | Command language and executive used on the International Space Station, developed by Draper Lab and NASA-JSC. |
• | TSTOL | - | Transportable Payload Operations Control Center (TPOCC) Systems Test and Operations Language, NASA GSFC. |
Commercial languages
• | Epoch 2000 STOL | - | Epoch 2000 Systems Test and Operation Language, Kratos Defense & Security Solutions. |
• | SCL | - | Spacecraft Command Language, Interface Control Systems, Inc. |
• | Auspice-TLX | - | Commercial version of ISS Timeliner-TLX developed under license by Auspice Corp., possibly defunct. |
See also
- Programming language
- Domain-specific language
- Natural-language user interface
- Synchronous programming language
- Space exploration