Maintaining GEO Slot
STK Premium (Space) or STK Enterprise
You can obtain the necessary licenses for this tutorial by contacting AGI Support at support@agi.com or 1-800-924-7244.
The results of the tutorial may vary depending on the user settings and data enabled (online operations, terrain server, dynamic Earth data, etc.). It is acceptable to have different results.
Capabilities Covered
This lesson covers the following STK Capabilities:
- STK Pro
- Astrogator
Problem Statement
Like any other orbital regime, geosynchronous orbits (GEO) are subject to various perturbation forces that impact the stability of GEO satellites in terms of position (attitude disturbances won’t be covered in this manual). The main sources of perturbation are the Earth’s nonspherical geopotential, solar radiation pressure and third body effects, mainly Moon and Sun. The overall effect is a longitude drift, whose direction depends on the longitude itself, and change in inclination over time. GEO satellite operators keep each spacecraft inside a well-defined box so as to not interfere with other satellites in the surrounding space. This activity is called station keeping. They want to model Station Keeping in STK.
Solution
Use STK's Astrogator capability to see how to design and perform station keeping using Automatic Sequences. We will create a sequence for the East-West station keeping based on longitude control and a sequence for North-South station keeping based on pure inclination control.
What You Will Learn
Upon completion of this tutorial, you will be able to:
- Design a reference GEO Slot
- Create a new VVLH system
- Create and set East-West station keeping Automatic Sequences
- Create and set North-South station keeping Automatic Sequences
Video Guidance
Watch the following video. Then follow the steps below, which incorporate the systems and missions you work on (sample inputs provided).
Model the World!
Before you can begin with any analysis, you need to create a scenario and add a satellite. Let's do that now.
- Create a new scenario and call it GEOStationKeeping.
- Set the analysis time to the following:
Option | Value |
---|---|
Analysis Start Time | 1 Apr 2016 10:00:00.00 UTCG |
Analysis End Time | +450 Days |
This is a good time span to evaluate how many times a single station keeping maneuver is required during extended operations.
Define the Reference GEO slot
- Insert a satellite () using the Orbit Wizard () method.
- In the Type field, select Geosynchronous.
- Name the satellite Reference.
- Set the Subsatellite Point to 13 deg.
- Click .
- Open Reference's () properties ().
- Select the 3D Graphics - Orbit System page.
- Enable the Fixed by Window option on the Orbit System page.
- Disable the Inertial by Window option.
- Select the 3D Graphics - Proximity page.
- Enable the Show field in the Geostationary Box panel.
- Set the following values:
This creates a 13 deg East GEO satellite that is not subject to any disturbance drift force since the propagator used is J2.
The Coordinate System used in this case is Earth / True Of Date
Option | Value |
---|---|
Longitude | 13 deg |
North/South | 0.5 deg |
East/West | 0.5 deg |
Radius | 42166.3 km |
In a real operational model, the GEO Slot box would be much smaller (0.05 deg x 0.05 deg). This lesson is a simple model with a bigger box.
Declutter the 3D Graphics Window
You have some labels and orbit lines you want to remove from the 3D Graphics window.
- Select the 2D Graphics - Attributes page.
- Clear the Inherit from Scenario check box.
- Clear the Show Label and Show Orbit check boxes:
- Click to apply the changes.
- Bring the 3D Graphics window to the front and zoom to Reference satellite to see the station keeping box.
Add the Astrogator satellite
- Insert a satellite () using the Define Properties () method.
- Rename the satellite GEO_Sat.
- On the Basic - Orbit tab, set the Propagator to Astrogator.
- Select the Initial State segment.
- In the Coordinate Type field, select Keplerian.
- Set the following field:
- Select the Propagate segment.
- Set the Trip value to 450 days.
- Disable the "Condition Inherited by Automatic Sequences"
Note that the RAAN variable has been changed to Lon. of Asc. Node.
Option | Value |
---|---|
Semi Major Axis | 42166.3 km |
Eccentricity | 0 |
Inclination | 0 deg |
Lon. of Asc. Node | 13 deg |
Argument of Periapsis | 0 deg |
True Anomaly | 352.96 deg |
Create a New VVLH System
- Bring GEO_Sat's () properties () to the front.
- Select the 3D Graphics - Orbit System page.
- Click .
- Select the Reference satellite, then click .
- Clear the Inertial by Window System.
Set the Orbit Tracks
- Select 3D Graphics - Pass page.
- Set the following options for the Orbit Track:
- Open the Basic - Orbit page.
- Run () the MCS to see the satellite's behavior over the time period.
- Click .
Option | Value |
---|---|
Lead Type | None |
Trail Type | Time |
Time | 720 hr |
The inclination change over time is mainly due to the third body perturbations, and it could vary depending on the initial epoch you set for the scenario. The satellite also drifts eastward – this could change if we change the initial longitude slot.
East-West Station Keeping
We need to keep the satellite within the boundaries of the station keeping box and, since the East threshold is reached first, we’ll implement the East-West station keeping procedure first.
Create custom Calculation Objects
Some of the parameters you will use must be created in the Component Browser. These will be used as results for one of the Autosequences. The goal is to make sure each parameter used is in the correct reference frame.
- Extend the Utilities menu.
- Select the Component Browser... option.
- Expand the Calculation Objects directory.
- Select the Keplerian Elems directory.
True of Date Frame
You can create new components in the True of Date frame. Instead of creating it from scratch you can duplicate and modify existing components.
- Select Inclination.
- Click duplicate ().
- Rename the component TOD Inclination.
- Double-click on TOD Inclination to open the properties.
- Double-click the CoordSystem Value field.
- Change the Filter by selection to Primary Central Bodies.
- Select Earth in the Object list.
- Select TOD in the Systems list.
- Click .
- Click .
- Click to close the Component Browser.
Add the East – West station keeping procedure Autosequence
Since the satellite is drifting eastward, the maneuver to implement the orbit should reduce the angular speed while initiating a westward drift. If you fire along the velocity direction, you are going to increase the semi-major axis and reduce the orbital angular speed.
After the burn, the satellite starts drifting westward. However since the disturbing forces are always present, the drift is reduced over time. After some time there is a turnaround point, where the effects of the burn are nullified by the perturbing forces. Eventually, the satellite starts to drift eastward again and the cycle repeats itself.
The Delta-V magnitude should be calibrated to allow the satellite to have the turnaround point at the west border of the station keeping box: in this way we can minimize the number of burns executed. Let’s model this strategy as an Astrogator Autosequence.
- Open the GEO_Sat’s () properties ().
- Select the Basic - Orbit page.
- From the Automatic Sequence Browser () create a new Sequence and name it EW Station Keeping.
- Double-click the EW Station Keeping sequence to edit it.
- Inside the EW Station Keeping sequence's MCS add a Sequence () and rename it EW_Station_Keeping.
- Nested inside add a Propagate () segment and name it Stop on Apogee.
- Change the Propagate segment color to red.
- Add a new Apoapsis Stopping Condition.
- Delete the default Duration Stopping Condition.
Add a Target Sequence
- Add a Target Sequence () and name it Target Turn Around.
- As nested segments, add the following:
- Maneuver () named EW Burn
- Propagate () named Prop to Second Node
- Return () with a type Enable (except Profiles bypass)
- Propagate () named Prop to Ascending Node
When at apogee, the EW Burn segment fires a Delta-V whose magnitude is an independent variable. After that, we’ll make the propagator run until the second node is reached – this is because we’d like to wait some time before checking for a result (remember that, at this point, the satellite is drifting eastward).
Having the Return segment in the sequence and setting it to bypass, the Prop to Ascending Node that is only run before the convergence of the Differential Corrector.
Define the EW Burn Maneuver
Let’s model the EW Burn maneuver.
- Select the EW Burn () maneuver segment in the MCS.
- Set the Attitude Control to Thrust Vector.
- Set the Thrust Axes to VNC(Earth).
- Set X(Velocity) () as an independent variable.
Define the Prop to Second Node Propagate Segment
- Select the Prop to SecondNode () propagate segment in the MCS.
- Add an Ascending Node stopping condition.
- Set the Repeat Count value to two(2). It will propagate until the second node is reached.
- Set the Coordinate System to Earth TOD.
- Remove the Duration stopping condition.
Define the Prop to Ascending Node Propagate Segment
- Select the Prop to Ascending Node () propagate segment in the MCS.
- Add an Ascending Node stopping condition.
- Set the Coordinate System to Earth TOD.
- Click the ellipsis () button in the Constraints section.
Define the Constraints
- Move () the UserDefined option.
- Double-click in the ComponentName field and change the name to Min_Longitude
- Double-click the Criteria field to set the Value
- In the Selection field, select Greater Than Minimum.
- Click .
- Double-click the value field to set the CalcObject.
- Click the button in the Embedded Component Link Select window to change the Component Name.
- Set the new component to Geodetic > Longitude.
- Click .
- Set the Tolerance to 0.05 deg.
The Greater Than Minimum criteria assures that the propagation will take place until the turnaround point and, when the satellite starts drifting eastward once again, it is stopped as soon as an ascending node is met.
Save and Remove the Duration Stopping Condition
- Click to save your changes and close the window.
- Remove () the Duration stopping condition.
Set the Results
- Select the Prop to Ascending Node segment.
- Click .
- Set a new component as a result, move () Math > Minimum Value as the only dependent variable.
- Change the ComponentName to Minimum_Longitude.
- Change the CalcObject to Geodetic > Longitude:
- Click .
- Click to close the results panel.
Create a Target Sequence
- Select the Target_Turn_Around ().
- Double-click the Differential Corrector.
- Enable the ImpulsiveMnvr.Pointing.Cartesian.X component as a Control Parameter.
- Set the Perturbation to 0.01 m/sec and Max Step to 1 m/sec. The satellite will be conducting small adjustments to maintain the orbit, we want our Max Step and Perturbations to be on a similar scale.
- Enable the Minimum_Longitude as a Result.
- Set the Desired value to 12.55 deg. The satellite will be using the whole box during its maneuvers and we are allowing for a guard band by setting our desired value to 12.55 deg.
- Set the Tolerance to 0.001 deg.
- Click .
- Set the Action field to Run active profiles.
- Click to close the EW Station Keeping properties panel.
Add the North – South station keeping procedure as Autosequence
Inclination correction requires much more fuel than the in-plane correction, so a good strategy is necessary to save fuel and make the operational life longer. Here we will implement a basic procedure in which we wait until an appropriate time to fire along the velocity and orbit normal directions to reduce the inclination while also keeping a circular, geosynchronous orbit (pure inclination control). Other techniques include RAAN control, in which we change the RAAN to get an inclination reduction over time.
- From the Automatic Sequence Browser create a new Sequence and name it NS Station Keeping.
- Double-click NS Station Keeping to edit it.
- Begin adding segments inside the NS Station Keeping sequence's MCS.
- Add a Target Sequence () and name it NS SK Drift.
- Add a Maneuver () segment and name it NS Burn.
- Drag and drop the Maneuver segment, NS Burn, () below the Target Sequence, NS SK Drift, (). The Maneuver is now within the Target Sequence.
When at ascending node, the NS Burn segment fires a Delta-V whose components are independent variables.
Define the NS Burn Maneuver
- Select the NS Burn () maneuver segment in the MCS.
- Set the Attitude Control to Thrust Vector.
- Set the Thrust Axes to VNC(Earth).
- Set X(Velocity) and Y(Normal) () as independent variables.
- Set the Y(Normal) value to -200 m/sec
Define the Results
- Select the NS Burn () segment.
- Click and move () Math > Difference as a component variable.
- Set the ComponentName to SMA_Diff.
- Change the CalcObject to Keplerian Elems > Semimajor Axis.
- Set the DifferenceOrder to Current Minus Initial.
- Move () Keplerian Elems > TOD Inclination as the second component variable.
- Click to close the Results panel.
Define the Thrust Components
- Select the NS SK Drift ().
- Double-click the Differential Corrector.
- Enable the following Control Parameters:
- ImpulsiveMnvr.Pointing.Cartesian.X
- ImpulsiveMnvr.Pointing.Cartesian.Y
- For the X component, set the Perturbation to 0.1 m/sec and Max Step to 10 m/sec.
- For the Y component, set the Perturbation to 0.1 m/sec and Max Step to 10 m/sec.
- Set the following Equality Constraints (Results):
Option Desired Value Tolerance SMA_Diff 0 km 0.01 km TOD_Inclination 0 deg 0.001 deg - Change the Scaling Method to By tolerance.
- Click .
Set Action field
- Set the Action field to Run active profiles.
- Click to close NS Station Keeping properties panel.
- Click to close the Automatic Sequence Browser.
- Save your scenario.
Running the main sequence
After defining the two station-keeping Autosequences, we now need to characterize the main propagation segment. We will add a new stopping condition to limit how long the satellite will propagate for; in the meantime, two things can happen:
- The satellite approaches the East border of the GEO box and a EW Station Keeping maneuver is required
- The satellite approaches the North/South border of the GEO box and a NS Station Keeping maneuver is required
Create Additional Stopping Conditions
Let’s create two additional Stopping Conditions to trigger the Autosequences. First, you will add one stopping condition to trigger the East West stationkeeping autosequence.
- Bring GEO_Sat's () properties () to the front.
- Select the GEO_Sat Basic - Orbit page.
- Select the Propagate () segment.
- Add an Apoapsis Stopping Condition and name it Apoapsis EW.
- In the Sequence section set the Sequence to EW Station Keeping.
- Set the Repeat Count to three (3).
- Click the Advanced button and set the Maximum Propagation Time to 10 yr.
- Click OK to close the Propagator Advanced window
Set a Before Condition for the EW Station Keeping Condition
We will add a condition to limit the distance the spacecraft can travel in the longitudinal direction. Since you do not want to overshoot the border of your geostationary box, you can propagate to its border at 13.5 degree longitude, then perform the maneuver at the apoapsis before the longitude limit has been surpassed.
- Click next to the Before field.
- Click New () to add a Longitude stopping condition.
- Click .
- In the Stop Before window set the Trip value to 13.5 deg.
- Click to close the Stop Before Window.
Add an Ascending Node NS Stopping Condition
Next add a stopping condition to trigger the North South StationKeeping autosequence.
- Add an AscendingNode Stopping Condition and name it AscendingNode NS.
- Set the Sequence to NS Station Keeping.
- Set the Coord. System to Earth TOD.
Set a Constraint for the NS Station Keeping
We will add a constraint to limit the changes in the spacecrafts inclination.
- Click next to the Constraints field.
- Move () the UserDefined option.
- Double-click in the ComponentName field and change the name to MaxInclination..
- Set the Criteria to Greater Than .
- Double-click the value field to set the Calc Object
- Click the Change... button in the Embedded Component Link Select window to change the Component Name.
- Set the new component to Keplerian > TOD Inclination
- Confirm that the CoordSystem Field reference is set to the Earth TOD reference system.
- Click .
- In the Select Constraints window, set the Value to 0.45 deg.
- Click .
- Save your scenario.
This assures that the propagation is stopped before the inclination reaches 0.45 deg.
Run the MCS
- Clear the Graphics.
- Run () the MCS.
- Click the Clear Graphics button to remove the drawn trajectories.
- Increase your animation time and animate your scenario.
The satellite starts drifting eastward and its inclination starts changing over time. When the East border is reached, EW station keeping is performed and the drift is reversed in the opposite direction:
The amount of Delta-V is targeted such that the turnaround occurs at 12.5 deg longitude (the Western edge of the box):
Create Custom Graphs for the GEO_Sat
- Create a custom graph of the Classical Elements - TrueOfDate - Longitude of Perigee.
- Create a custom graph of the Classical Elements - TrueOfDate - Inclination.