Mission Planning#
The Satcat SDK supports integration with Satcat’s Mission Planning feature suite, including ground visibility analysis and orbit maintenance maneuvers.
Visibility Analysis#
Satcat’s Ground Visibility feature allows operators to create a predicted pass schedule for satellites over selected ground locations. This feature can be used both for planning contact windows with ground stations as well as predicting passes for ground-based sensors.
# Define a ground station observer
observers = [
satcat.sdk.mission_planning.models.VisibilityRequestObserver(
id="SVALBARD",
definition=satcat.sdk.mission_planning.models.GroundStationDefinition(
latitude_deg = 78.22875,
longitude_deg = 15.39964,
altitude_m = 498.520,
)
)
]
# Define the RSO using TLE data
tle = """1 65440U 25194G 26007.49418320 .00002373 00000-0 16858-3 0 9992
2 65440 97.6013 224.1375 0001757 89.2044 270.9384 15.05652204 20441"""
visibility_request=satcat.sdk.mission_planning.models.VisibilityWindowsRequest(
observers=observers,
primary_rso_data_source=satcat.sdk.mission_planning.models.VisibilityRequestTLEDataSource(
source_type="TLE",
line1=tle.splitlines()[0],
line2=tle.splitlines()[1],
)
)
# Submit the request and retrieve the predicted visibility windows
result = client.mission_planning.list_visibility_windows(
config=visibility_request
)
Primary RSO Data Sources#
Satcat supports several data source types to define the spacecraft’s trajectory for visibility analysis:
TLE (Two-Line Element): defined using
VisibilityRequestTLEDataSourceEphemeris: an Ephemeris ID from the Satcat Ephemeris Repository, defined using
VisibilityRequestEphemerisDataSource
Note
By default, the TLE is propagated from epoch forward by 3 days; this interval is configurable using propagation_start_time and propagation_end_time. The maximum allowed propagation interval is 30 days.
Observer Definitions#
Visibility requests predict the visibility windows of one or more observers to selected satellites. An observer might be a ground station or a sensor location. Observers can be defined in the following ways:
Ground Station: A simple ground station defined by latitude, longitude, and altitude, with an optional maximum elevation angle; defined using
GroundStationDefinitionUDL Sensor Location: A sensor defined using the Unified Data Library (UDL) sensor API. UDL sensors allow complex sensor visibility constraints in azimuth/elevation space to be defined for each sensor; defined using
UDLGroundSensorDefinition
Visibility Windows#
Satcat returns visibility predictions as a list of windows which detail the predicted acquisition of signal (AoS) and loss of signal (LoS) times for each observer. Some additional information is included with each window, such as the maximum elevation angle achieved during the pass and the elevation angles at AoS and LoS.
for window in result.windows:
print(f"Observer ID: {window.observer_id}")
print(f" AoS: {window.aos_time} at {window.aos_el_deg:.2f} deg")
print(f" Max El: {window.max_el_time} at {window.max_el_deg:.2f} deg")
print(f" LoS: {window.los_time} at {window.los_el_deg:.2f} deg")