tdm#
CCSDS 503.0-B Tracking Data Message parser and serializer.
Parses the KVN (Keyword=Value Notation) text format for tracking data messages. Supports range, Doppler, and angle measurements between ground stations and spacecraft.
Reference: CCSDS 503.0-B-2 Tracking Data Message.
Installation#
Install with opam:
$ opam install tdm
If opam cannot find the package, it may not yet be released in the public
opam-repository. Add the overlay repository, then install it:
$ opam repo add samoht https://tangled.org/gazagnaire.org/opam-overlay.git
$ opam update
$ opam install tdm
Usage#
let report kvn_text =
match Tdm.of_string kvn_text with
| Ok tdm ->
Fmt.pr "Participants: %s -> %s@." tdm.metadata.participant_1
tdm.metadata.participant_2;
List.iter
(fun obs ->
Fmt.pr " %s: %s = %.6f@." obs.Tdm.epoch obs.Tdm.keyword obs.Tdm.value)
tdm.observations
| Error e -> Fmt.epr "%a@." Tdm.pp_error e
API Overview#
type t-- Complete TDM: header, metadata, observationstype observation-- Epoch + keyword + value (e.g., RANGE, DOPPLER)type metadata-- Participants, modes, path, integration intervalsof_string,of_channel,of_file-- Parse KVN formatto_string-- Serialize back to KVN format
License#
ISC