Core code for developing Python AMPCS dictionary interfaces.
Project description
Teamtools Dictionary Interface
About Teamtools Studio
Teamtools Studio Utilities is part of JPL's Teamtools Studio (TTS).
TTS is an effort originated in JPL's Planning and Execution section to centralize shared repositories across missions. This benefits JPL by reducing cost through reducing duplicated code, collaborating across missions, and unifying standards for development and design across JPL.
Although Planning and Execution is primarily concerned with flight operations, the TTS suite has been generalized and atomized to the point where many of these tools are applicable during other mission phases and even in non-spaceflight contexts. Through our work flying space missions, we hope to provide tools to the open source community that have utility in data analysis or planning for any complex system where failure is not an option.
For more infomation on how to contribute, and how these libraries form a complete ecosystem for high reliability data analysis, see the Full TTS Documentation.
What is Teamtools Dictionary Interface?
Overview
The TTS Dicitonary Interface is an interoperability solution to ensure that other TTS libraries (Dexter, Tower, Dante, TTS Seq, FRESH) can make common assumptions about how to retreive the metadata on spacraft commands and telemetry they need in order to appropriately interpret it. This helps them answer questions like "is this arugment value valid?" and "what are the units for this telemetry point?".
Dictionaries are a key part of the Flight Ground Interface for any spacecraft. They containing the information needed to translate human-readable commands and arugments to binary files that make sense to a spacecraft's command and sequencing flight software and the to take the stream of ones and zeros returned from the spacecraft back into human-readable telemetry back on the ground. They are the Rosetta Stone of any space mission.
While TTS Dictionary Interface is built around AMPCS's XML dictionary schema, it can ostensibly be used with any format of dictionary so long as it can be made into a Pyhton class that behaves the same way that the SemanticDictionary does. More than anything this is an interoperability layer.
For projects that do not use AMPCS, the easiest way to leverage this library is likely to write some middleware to turn your dictionary format into the kind of XML that would be required if you were using AMPCS. Short of that, it is likely that the only other solution is to write a completely new class that looks to downstream TTS modules as if it were generated by TTS Dictionary Interface. This is likely much harder to validate than simply converting to XML and validating against the multimisison AMPCS schema shared in the DemoSat extension of this library.
Projects Currently Supported
- DemoSat
- Orbiting Carbon Observatory 2 (OCO-2)
- NISAR
Architecture
TTS dependencies
- TTS Utilities
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tts_dictionary_interface-0.2.3.tar.gz.
File metadata
- Download URL: tts_dictionary_interface-0.2.3.tar.gz
- Upload date:
- Size: 15.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c508f7180d604f273f0742d3756d6b6687a567c6acc0c507600f86a3111e2bd
|
|
| MD5 |
a99cdc61b578826853a7c3f674a6a3f1
|
|
| BLAKE2b-256 |
cd3b954754bbd91376facb238009f63d374cdd5123ad824382ae0127b981025c
|
File details
Details for the file tts_dictionary_interface-0.2.3-py3-none-any.whl.
File metadata
- Download URL: tts_dictionary_interface-0.2.3-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b246b1072c05fe49506fd78aa1e1f3a7a3e7aa436a3de2978777b98b54f98b20
|
|
| MD5 |
2c8a5ed65f7988940610e6e773203722
|
|
| BLAKE2b-256 |
95e00950c29cc07488989c22ae98b9068227f66780b8f2ceb407ef64577c9225
|