scenarioHohmann

Overview

This Example simulates a single Hohmann transfer about earth. The spacecraft switches between a Hill frame and an inertial frame aligned with the burn direction, although alignment with the burn is purely visual and the delta V will be applied in te correct direction regardless of the attitude.

Compared to scenarioOrbitManeuver which also implements impulsive orbit maneuvers, here a set of pointing modes are defined. The Basilisk event system is used to then switch between the flight modes by selectively turning on/off flight mode tasks.

The detail of the simulation script is as follows. This script sets up a basic spacecraft which starts on a circular orbit around Earth aligned with a Hill reference frame. The spacecraft aligns with the orbit trajectory shortly before delta V’s are applied at the beginning and end of the transfer and returns to the Hill frame for the duration of the simulation.

The required delta V is found by taking the difference between the velocity on the elliptical transfer orbit, found using

\[V_{transfer} = \sqrt{\frac{2\mu}{r} - \frac{\mu}{a_{transfer}}}\]

and that of the circular orbit, defined as

\[V = \sqrt{\frac{\mu}{r}}\]

The delta V is then added to the current spacecraft velocity. This calculation is done at each transfer point using the respective radius (inner or outer).

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

python3 scenarioHohmann.py

Illustration of Simulation Results

show_plots = True

Plots below illustrate

../_images/scenarioHohmann1.svg../_images/scenarioHohmann2.svg../_images/scenarioHohmann3.svg../_images/scenarioHohmann4.svg
scenarioHohmann.run(show_plots, rFirst, rSecond)[source]

The scenarios can be run with the followings setups parameters:

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

  • rFirst (double) – radius of the initial circular orbit about Earth

  • rSecond (double) – radius of the final circular orbit about Earth