scenarioFormationMeanOEFeedback

Overview

This script sets up a formation flying scenario with two spacecraft. The deputy spacecraft keeps a given mean orbital element difference based on Lyapunov control theory.

This script is found in the folder basilisk/examples and executed by using:

python3 scenarioFormationMeanOEFeedback.py

The simulation layout is shown in the following illustration. Two spacecraft are orbiting the earth at close distance. Only \(J_2\) gravity perturbation is included. Each spacecraft sends a Module: simpleNav output message of type NavAttMsgPayload message at a certain period to Module: meanOEFeedback, where mean orbital element difference is calculated and necessary control force is output to extForceTorque module.

../_images/test_scenarioFormationMeanOEFeedback.svg

Illustration of Simulation Results

show_plots = True, useClassicElem = True

In this case, target orbital element difference is set based on classical orbital element. This resulting feedback control error is shown below.

../_images/scenarioFormationMeanOEFeedback11.svg
show_plots = True, useClassicElem = False

In this case, target orbital element difference is set based on equinoctial orbital element. This resulting feedback control error is shown below.

../_images/scenarioFormationMeanOEFeedback20.svg
scenarioFormationMeanOEFeedback.run(show_plots, useClassicElem, numOrbits)[source]

At the end of the python script you can specify the following example parameters.

Parameters
  • show_plots (bool) – Determines if the script should display plots

  • useClassicElem (bool) – Determines if classic orbital element is used

  • numOrbits (float) – Number of orbits the simulation should run