Description

The Geodetic Ephemeris Translation Software is a flight software module that converts geodetic coordinates (latitude, longitude, and altitude) into a standard ephemeris message in the inertial reference frame. This transformation is essential for representing ground-based locations, target coordinates, or any geographically-defined positions within the same coordinate framework used by orbital objects. The module supports both static coordinate inputs and dynamic geodetic message inputs, providing flexibility for various mission scenarios including ground station modelling, target tracking, and geographic reference point definition.


Example Use Cases

  • Ground Station Representation: Convert ground station geodetic coordinates to inertial ephemeris for communication link analysis with spacecraft.
  • Target Definition: Specify observation targets using familiar latitude/longitude coordinates and convert to ephemeris for pointing calculations.
  • Geographic Waypoints: Define mission waypoints in geodetic coordinates for trajectory planning and analysis.
  • Coordinate System Bridging: Interface geographic information systems with orbital mechanics tools using a common ephemeris format.

Module Implementation

The Geodetic Ephemeris Translation Software is a Software component that processes geodetic coordinates and planetary state information to produce an ephemeris message in the inertial reference frame.

Input Sources

The module accepts geodetic coordinates from two possible sources:

SourcePriorityDescription
In_GeodeticMsgPrimaryDynamic geodetic message containing latitude, longitude, and altitude
Static ParametersSecondaryDirect latitude, longitude, and altitude values configured on the module

If a geodetic message is connected, its values take precedence over the static parameters. This allows the module to operate in both static and dynamic modes.

Input Messages

Input MessageTypeDescription
In_GeodeticMsgGeodeticMessageOptional dynamic geodetic coordinates
In_PlanetStateMsgPlanetStateMessageReference planet state including position, rotation, and radius

By default, the planet state message is initialised to Earth from the Solar System.

Geodetic Coordinate Definition

Geodetic coordinates specify a location relative to a planetary reference ellipsoid:

ParameterSymbolUnitsDescription
LatitudedegAngle north or south of the equatorial plane
LongitudedegAngle east or west of the prime meridian
AltitudemHeight above the reference surface

Coordinate Transformation

The transformation from geodetic coordinates to inertial ephemeris proceeds through two stages: conversion to Planet-Centred Planet-Fixed (PCPF) coordinates, then rotation to Planet-Centred Inertial (PCI) coordinates.

Geodetic to PCPF

For a spherical planet with radius , the PCPF position vector is computed from the geodetic elements. First, the radial distance from the planet centre is:

The Cartesian coordinates in the PCPF frame are:

where and are the latitude and longitude converted to radians.

The PCPF position vector is:

PCPF to PCI

The PCPF position is transformed to the Planet-Centred Inertial (PCI) frame by accounting for the planet’s rotation. The rotation matrix transforms vectors from the planet-fixed frame to the inertial frame:

where is the planet’s J2000 rotation angle (Greenwich Sidereal Angle for Earth).

The position in the PCI frame is:

PCI to Inertial

Finally, the planet’s position is added to obtain the position in the solar system inertial frame:

where is the planet’s position relative to the inertial origin.

Velocity Handling

The module does not compute velocity from the geodetic coordinates. The velocity in the output ephemeris message is set to zero:

This is appropriate for static ground locations. For applications requiring velocity due to planetary rotation, additional processing would be needed.

Output Message

The module produces an EphemerisMessage containing:

FieldSymbolUnitsDescription
Position_BN_NmPosition vector in inertial frame
Velocity_BN_Nm/sVelocity vector in inertial frame (zero)

Update Sequence

At each simulation time step, the module performs the following operations:

  1. Validate Input: Check that the planet state message is connected; skip update if missing.
  2. Select Coordinate Source: Use geodetic message values if connected; otherwise use static parameters.
  3. Create Geodetic Elements: Package latitude, longitude, and altitude into a geodetic elements structure.
  4. Convert to PCI: Transform geodetic coordinates through PCPF to PCI using the planet’s rotation angle and radius.
  5. Add Planet Position: Offset the PCI position by the planet’s inertial position to obtain the final ephemeris position.
  6. Set Zero Velocity: Assign a zero velocity vector to the output ephemeris.

Dynamic vs Static Operation

The module supports two operational modes:

ModeConfigurationBehaviour
StaticIn_GeodeticMsg not connectedUses Latitude, Longitude, Altitude parameters directly
DynamicIn_GeodeticMsg connectedReads coordinates from the geodetic message each update

In dynamic mode, the geodetic message can be updated by other software modules, enabling time-varying geographic positions to be converted to ephemeris format.


Assumptions/Limitations

  • The planet is modelled as a sphere with uniform radius; oblate spheroid geometry is not considered.
  • Velocity due to planetary rotation is not computed; the output velocity is always zero.
  • The geodetic coordinates are assumed to be in degrees for latitude and longitude; radians are converted internally.
  • The altitude parameter unit annotation incorrectly shows degrees; it should be interpreted as metres.
  • No validation is performed on input coordinate ranges; latitudes outside ±90° or longitudes outside ±180° may produce unexpected results.
  • The transformation assumes the planet’s rotation axis is aligned with the -axis of the inertial frame.
  • Terrain elevation and geoid undulations are not modelled; altitude is measured from the reference sphere.
  • The module defaults to Earth if no planet state message is explicitly connected.
  • Static parameters are only used when no geodetic message is connected; partial overrides are not supported.
  • The position vector is copied to a new instance to ensure independence from