Introduction to Satellite Maneuver Planning with Astrogator
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
You work for the mission planning section of an imaging satellite company. Your company is planning to launch a new imaging satellite. The first part of your analysis had you analyze the launch for potential threats. Now that you have identified the appropriate launch window, you need to determine what would be required to circularize the orbit of the satellite once it separates from the launch vehicle.
You have some information that may be helpful. Here’s what you know:
- The desired orbit of the satellite is circular and at a 7000 km radius to the Earth.
- You would like to see the orbit propagated for three (3) days.
- The payload fairing separates 214 seconds after launch.
- The satellite begins to separate at 1789.9 seconds after launch.
Solution
Use STK's Astrogator capability to launch the spacecraft into the proper orbit, at the proper time, for the proper duration.
Video Guidance
Watch the following video. Then follow the steps below, which incorporate the systems and missions you work on (sample inputs provided).
Opening an existing scenario
To speed things up and allow you to focus on the portion of this tutorial that teaches you to create and display the orbits and then use them for analysis, a partially developed scenario has been provided for you. If you’re going to reuse this scenario, save the scenario locally to preserve the integrity of the previously developed analysis.
- Ensure that the Welcome dialog is visible in the STK Workspace.
- Click .
- Go to <STK Install Folder>\Data\Resources\stktraining\VDFs.
- Select Astrogator_AtlasLaunch.vdf ().
- Click .
- Use the Save As... function to save the scenario in your user area (C:\Users\<username>\Documents\STK 12\) as a scenario file (*.sc) named GatorCircularize.
If using an older version of STK, browse to <STK install folder>\Data\Resources\stktraining\samples and open Astrogator_AtlasLaunch.
When you open the scenario, a directory with the same name as the scenario will be created in the default user directory (C:\Users\<username>\Documents\STK 12\). The scenario will not be saved automatically.
When you save a scenario in STK, it will save in the format in which it originated. In other words, if you open a VDF, the default save format will be a VDF. The same is true for a scenario file (*.sc). If you want to save a VDF as a SC file (or vice-versa), you must change the file format when you are performing the Save As procedure.
Becoming familiar with the launch
Take a quick run through what’s already done here before you change anything. The scenario that you opened contains only two objects: a launchpad at the Vandenberg Air Force Base and the Atlas II launch vehicle.
The Vandenberg AFB launch pad was imported from the STK Standard Object Database. The shadow on the ground in the Bing Maps being used is the shadow of the actual launch tower at Vandenberg. In addition to the positioning being technically accurate, the scenario also uses a 3D model of the real Atlas launch pad (atlas-lp.mdl) that was provided as part of the STK install. Pretty cool!
You also modeled the Atlas launch vehicle. In the scenario, the object is positioned right on the launchpad as it would be in a real launch. It also uses a 3D model that similar to the actual Atlas launch vehicle.
Changing the analysis period
The scenario provided analyzes potential threats during a very short launch window. You have determined a safe launch window and can now extend the analysis period for the scenario so that it is long enough to model the entire circulation of the orbit (at least three days).
- Open GatorCircularize’s () properties ().
- Select the Basic - Time page.
- Change the Stop Time to + 4 days to ensure that you get to see the entire orbit.
- Click .
Changing the scenario description
Ensuring that no two scenarios have the same description can be helpful in managing scenarios.
- Select the Basic - Description page.
- Change the Description to "How Do I Circularize My Semi-Polar Orbit?"
- Click .
Checking the terrain
This mission takes place at Vandenberg Airforce base. You can use the streaming terrain to model the altitude when your objects are on the ground. If you are working offline, you can manually enter the altitude.
- Select the Basic - Terrain page.
- Check that the Terrain Server is enabled. If you are working offline then you can leave this option disabled.
- Click .
- Open Vandenberg properties ().
- For Altitude, select the Use terrain data check box. If working offline, is set Altitude to 0.105136 km
- Click .
Modeling the Spacecraft
Now that you know you have an appropriate launch window, you need to model the imaging satellite that is being used in this mission. The imaging satellite will be launched out of Vandenberg AFB via the existing Atlas launch vehicle. The satellite that you are designing will be used to image ground locations. You want to circularize the orbit at a 7000 km radius to the Earth. Do that now.
- Open the Insert STK Objects tool () if it is not already.
- Click .
- Rename the satellite ImageSat.
Option | Value |
---|---|
Select an Object to be Inserted | Satellite |
Select a Method | Define Properties |
Orienting the Satellite
You want to make sure the satellite is not upside down on the launch vehicle. You can use the ECF velocity alignment with radial constraint attitude to ensure the satellite is properly positioned on the launch vehicle.
- Bring ImageSat () properties () to the front.
- Select the Basic - Attitude page.
- Set the Type to ECF velocity alignment with radial constraint.
- Click .
Astrogator Propagator
Astrogator is an orbit maneuver and space mission planning capability. It offers spacecraft operators and mission analysis staff wide flexibility through the use of customized thrust models, finite and impulsive maneuvers, and the ability to solve for solutions with a differential corrector targeter.
You can use Astrogator for a variety of space mission analysis, such as:
- Formation flying, rendezvous planning, constellation design, space-based intercept.
- Interplanetary, lunar, and libration point trajectories.
- GEO, LEO, HEO, Sun-Sync orbit maintenance requirements.
- Automated planning of event-driven maneuvers.
- Monte Carlo and other script driven analysis.
- Incorporating fully customizable force, engine, and atmospheric models.
- High, low, and variable-thrust trajectories.
You want your satellite to be jettisoned from the launch vehicle at the proper time according to the launch profile. Use Astrogator as the satellite propagator to design the satellite to follow the same ephemeris as the launch vehicle for a specified time.
- Select the Basic - Orbit page.
- Set the Propagator for Astrogator.
Remove the Default Segments
You do not need the initial sequence nor the initial state segment that are provided for you. Your satellite will follow the launch vehicle first and then deploy. Let’s delete these two segments so you can start fresh.
- Select the default Propagate segment () in the MCS tree.
- Click the () button.
- When the delete warning appears, click .
- Select the default Initial State segment () in the MCS tree.
- Click the () button.
- When the delete warning appears, click .
Mission Control Sequence
One of the first things that you will notice on the Astrogator propagator is the Mission Control Sequence (MCS). The MCS is the core of your space mission scenario. The MCS functions as a graphical programming language, utilizing mission segments that dictate how Astrogator will build the trajectory of the spacecraft.
By adding, removing, rearranging, and editing MCS Segments, you can define a mission of any desired level of complexity. The MCS is represented schematically by a tree structure appearing in the left pane of the Orbit page of the satellite's basic properties.
MCS Controls
Astrogator includes a full set of controls that can be used for inserting, deleting, copying, and editing segments.
For a detailed explanation of the MCS Segments, refer to the STK Help for Astrogator (Capabilities > Astrogator > MCS Segments.)
Follow Segment
The Follow segment can be used to set the spacecraft to follow another vehicle (satellite, launch vehicle, missile, aircraft, ship, or ground vehicle) at a specified offset, and to separate from that vehicle upon meeting specified conditions. You can specify the configuration of the spacecraft, the conditions at which the spacecraft joins with the leader vehicle, and the conditions at which the spacecraft separates from the leader vehicle. The segment goes though the ephemeris points of the leader, adding the specified offset to them and then adding these points to the ephemeris. Ephemeris points are not added until the joining and separation conditions are met.
The satellite (ImageSat) should follow the launch vehicle (AtlasIIAS) for the initial launch segment, and then propagate into a circular orbit. You can use a Follow segment in Astrogator to model the portion of the satellite’s flight that will follow the launch vehicle (AtlasIIAS).
- Right-click the Return segment () in the MCS tree.
- Select Insert Before.
- When the segment selection dialog appears, select Follow ().
- Click .
Select the Leader
The first step is to select the vehicle the satellite being propagated will follow. Your launch has the imaging satellite (ImageSat) follow the Atlas launch vehicle (AtlasIIAS).
- Ensure that the General tab is selected in the Follow segments properties.
- Click the ellipsis button () beside the Leader option.
- Select AtlasIIAS () as the leader.
- Click OK to dismiss the Select Leader window.
Leader Offset
In order for the satellite to be in the correct position on the launch vehicle, you need to define offsets from the leader.
- Locate the Offset from Leader options.
- Set the following offsets:
Option | Value |
---|---|
X | 0.0339 km |
Y | 0 km |
Z | 0 km |
The value of the X offset here corresponds directly to the translational offsets that you set when you were positioning the launch pad model.
Joining Conditions
You may recall that the payload fairing begins to separate at 214 seconds after launch. This is when you want the satellite to join the launch vehicle so that when the payload fairing separates, the satellite is in the payload area.
- Locate the Additional Options section below the Offset panel.
- Ensure the value of the Joining option to Join at "Beginning of Leader’s Ephemeris".
Separation Conditions
The satellite begins to separate from the launch vehicle at 1798.9 seconds after launch. Use that value to set the duration of the following segment. The follow will end when the satellite separates from the launch vehicle.
- Click the Separation tab.
- Click the New... button ().
- Select Epoch from the New Stopping Conditions window.
- Click .
- Select the Duration condition from the separation conditions list.
- Remove () the Duration condition.
- Ensure that the Epoch condition is selected.
- Set the Trip value to 1800 EpSec.
- Leave all other defaults for the Follow sequence.
- Click .
- Save the Scenario.
Astrogator requires that you have at least one stopping condition. If only one condition exists, as is the case here, you must add a second condition before deleting the first.
Target Sequence Profiles
The default Target Sequence profile is a Differential Corrector which is what you’ll be using here. The Differential Corrector search profile targets specific values defined as independent variables. The target sequence will change the value of independent variables as needed to achieve the goal defined by the dependent variables, utilizing a differential correction algorithm. You can find more in depth information about the differential correction algorithm in the Astrogator Help.
- Select the Basic - Orbit page.
- Right-click the Return segment () in the MCS tree.
- Select Insert Before.
- When the segment selection dialog appears, select Target Sequence ().
- Click .
- Click on the name of the Target Sequence () to make it editable.
- Change the name to Circularize.
Add a Maneuver to the Target Sequence
You need to circularize the satellite’s orbit at a 7000 km radius to the Earth. You will use a Target Sequence to target the desired orbit.
- Expand () the Circularize target sequence ().
- Right-click the Return segment () nested in the Circularize () sequence.
Add an Impulsive Maneuver
You want to add an impulsive maneuver that calculates a state by adding the defined Delta-V vector to the velocity of the final state of the previous segment. The impulsive maneuver adds this new state to the ephemeris and passes it to the next segment.
- Select Insert Before.
- When the segment selection dialog appears, select Maneuver ().
- Click .
- Rename the Maneuver segment to ThrustToApoapsis.
Be careful to add the maneuver to the Target Sequence, not the mission control sequence (MCS).
There is no need to adjust the color. The maneuver segment will not be distinguishable in the visualization windows because it is an impulsive maneuver.
You want the maneuver to thrust in the velocity direction out to the desired radius (Apoapsis).
Specify the X Velocity
You want to specify the total Delta-V in Cartesian coordinates with respect to the thrust axes. You can achieve this condition by setting the Attitude Control to Thrust Vector.
- Set the Attitude Control to Thrust Vector.
- Click the target () beside X (velocity) to enable the stopping condition as a control parameter. This will allow Astrogator to change the value to achieve the desired result.
Maintain Attitude
You want to satellite to maintain the attitude that you previously defined on the attitude page.
- Click the More Options... button on the Attitude tab.
- Enable the Use attitude page definition for other STK functions option.
- Click to return to the Orbit page.
- Click on the Engine tab.
- Enable the Update Mass Based on Fuel Used option.
Add a Propagate Segment to the Target Sequence
The imaging satellite needs to be propagated to the proper apoapsis, which has been defined as 7000 km radius. To model this in Astrogator, you will use a propagate segment.
- Right-click the ThrustToApoapsis maneuver () in the Circularize target sequence ().
- Select Insert After.
- When the segment selection dialog appears, select the Propagate Segment ().
- Click .
- Open the Propagate Segment’s () properties ().
- Enter the following:
- Click .
Be careful to add the propagate segment inside the Target Sequence, not the mission control sequence (MCS).
Option | Value |
---|---|
Name | PropToApoapsis |
Color | Select a color that isn't being used by any segment. |
Stopping Conditions
After each step, the segment checks to see if any stopping conditions were met. If they were, Astrogator locates the exact point, within tolerance, where the stopping condition is satisfied. From that point, the segment either executes an automatic sequence or stops the propagation and passes the state at that point to the next segment.
- Click the New... button () to add a new stopping condition.
- Select the Apoapsis condition from the Insert Stopping Conditions window.
- Click .
- Remove () the Duration condition.
Add Radius of Apoapsis Result
- With the PropToApoapsis segment selected, click the Results... button below the MCS Browser.
- Expand () the Keplerian Elems directory.
- Move () Radius of Apoapsis to the Selected Components field.
- Click .
Complete the Circularization
The satellite’s orbital trajectory requires one more maneuver segment that thrusts the spacecraft into a circular orbit.
There is no need to adjust the color. The maneuver segment will not be distinguishable in the visualization windows because it is an impulsive maneuver.
- Ensure that the PropToApoapsis segment is selected ().
- Click the Insert Segment After button ().
- When the segment selection dialog appears, select Maneuver ().
- Click .
- Name the maneuver Circularize.
- Ensure the Maneuver Type is Impulsive.
- Set the Attitude Control to Thrust Vector.
- Enable () the X (velocity) Cartesian stopping condition.
- Click on the Engine tab.
- Enable the Update Mass Based on Fuel Usage option.
Be careful to add the Maneuver segment inside the Target Sequence.
Maintain Attitude
You want the satellite to maintain the attitude that you previously defined on the attitude page.
- Click the More Options... button on the Attitude page.
- Enable the Use attitude page definition for other STK functions option.
- Click to return to the Orbit page.
Add an Eccentricity Result
You need to add an eccentricity result to this maneuver so that you can circularize by targeting an eccentricity value of zero (0). Targeting an eccentricity of zero (0) is targeting a circular orbit.
- Select the Circularize maneuver ().
- Click the Results... button.
- Expand () the Keplarian Elems directory.
- Move () Eccentricity to the Selected Components field.
- Click .
Coast in Circular Orbit
You need another propagate segment to ensure the satellite maintains the circularize orbit for three days.
- Select the Circularize maneuver () in the Circularize target sequence ().
- Click the Insert Segment After button ().
- When the segment selection dialog appears, select Propagate ().
- Click .
- Open the Propagate Segment’s () properties ().
- Enter the following:
- Click .
- Ensure that the Duration condition is selected.
- Set the Trip value to Three (3) Days.
Be careful to add the Prop segment inside the Target Sequence.
Option | Value |
---|---|
Name | MaintCirc |
Color | Select a color that isn't being used by any segment. |
Differential Corrector Profile
The differential corrector profile targets specific values - defined as independent variables. The target sequence will change the value of independent variables as needed to achieve the goal defined by the dependent variables, utilizing a differential correction algorithm.
- Select Circularize () in the MCS tree.
- Select the Differential Corrector profile.
- Click the Properties... () button.
Control Parameters (Independent Variables)
The Control Parameters are independent variables that you marked for inclusion while setting up the target sequence. You want the target sequence to target the circularize orbit.
- Ensure that the Variables tab is selected.
- Set the following:
Control Parameter | Use | Object | Max.Step |
---|---|---|---|
ImpulsiveMnvr.Pointing.Cartesian.X | On | ThrustToApoapsis | 0.5 km/sec |
ImpulsiveMnvr.Pointing.Cartesian.X | On | Circularize | 0.5 km/sec |
Equality Constraints (Dependent Variables)
Equality Constraints in the search profile outline dependent variables to be considered in your analysis.
- Set the following:
- Click .
- Click .
- Save () the scenario ().
Equality Constraint | Use | Desired Value | Object | Tolerance |
---|---|---|---|---|
Radius Of Apoapsis | On | 7000 km | PropToApoapsis | 0.1 km |
Eccentricity | On | 0 | Circularize | 0.0001 |
Setting the Radius of Apoapsis value means the targeter will not stop iterating until the Radius of Apoapsis value is at 7000 km and the eccentricity value is at least a value of 0.0001 within the tolerance values we defined.
Run!
Now, you can run the selected profile and see what Astrogator comes up with.
- When you return to Astrogator, change the Action for the target sequence to "Run active profiles".
- Click Run Entire Mission Control Sequence ().
- When the run begins, a targeting status grid will appear.
- Did the profiles converge?
- When you finish, close the status grid.
- Click to dismiss ImageSat () properties and save your changes.
Data Reporting
The Maneuver Summary report style is available only to Astrogator satellites. This report shows a summary of the maneuver segments in the MCS that have been run.
- Select ImageSat () in the Object Browser.
- Open the Report & Graph Manager ().
- Select the Maneuver Summary Report style ().
Change the Units
Change the units for the date format so that it is consistent with the scenario time units.
- Open the Maneuver Summary Report style’s () properties ().
- Select the Maneuver Summary-Start Time item in the Report Contents area.
- Click the Units... button below the Report Contents area.
- Disable the Use Defaults option.
- Change the Date Format to Epoch Seconds (EpSec).
- Click .
- Repeat the process to change the date format for the Maneuver Summary-Stop Time item.
- Click .
A warning box appears notifying you that you modified the default report style. STK automatically creates a copy of new report and saves it to your My Styles directory.
Generate Data
- Expand () the MyStyles directory.
- Select the Maneuver Summary report.
- Generate... the report.
- What are the Delta-V values for the two maneuvers?
- What is the estimated fuel usage?
- What are the estimated burn durations for the two maneuvers?
- Close the Maneuver Summary report.
- Close the Report & Graph Manager ().
Get a Better Look!
Let’s take a look at the satellite’s orbit in the 3D Graphics window.
- Bring the 3D Graphics window to the front.
- Ensure that the satellite (ImageSat) () is the focal point in the 3D Graphics window.
- Can you see the imaging satellite (ImageSat) atop the launch vehicle (AtlasIIAS)?
3D View: ImageSat on the Launchpad
The launch route appears to fly sideways. If you take a look at the 3D Graphics - Orbit System page, you will notice that the object’s route in 3D is set to Inertial by Window. You can change this to Fixed by Window if you want the route to appear in a different reference frame. To change the Launch Vehicles reference frame change the same properties on the 3D Graphics - Trajectory System page.
Get Moving
Now, let’s view the action of the satellite thrusting to its circular orbit in 3D.
- Decrease () the Time Step to 1.00 sec.
- Play () the animation.
3D View: AtlasIIAS separation
If all these orbit lines are cluttering your window, you can bring the MCS to the front and click the Clear Graphics () button.
- Can you see the satellite separate from the launch vehicle.
- At what segment of the orbit does this happen?
Match the colors in the 3D Graphics window orbit display to the colors that you assigned to the segments in the mission control sequence.
- Does the orbit follow the launch vehicle’s path until separation and circularize?
- Can you see when the different maneuvers and propagate segments of the trajectory occur?
Solar Panel Articulations
While watching the animation, did you notice that the solar panels on the satellite were protruding from the payload fairing? This is not correct, they actually deploy after the satellite has separated from the launch vehicle. A second articulation file has been provided for the satellite. This file provides articulations that turn the satellite’s solar panels into movable parts.
- Browse to the location of the articulation file provided for this exercise (typically, <STK Install Folder>\Data\Resources\stktraining\samples).
- Copy ImageSat.sama.
- Browse to the scenario directory (typically, C:\Users\<username>\Documents\STK 12\Astrogator_AtlasLaunch\).
- Paste ImageSat.sama into the scenario directory.
Checking the model and load the Articulation File
The .sama articulation file actually goes with a model that is different from the default one we are using
- Open ImageSat () properties ().
- Select 3D Graphics - Model page.
- Make sure that Model File is set to the Satellite.glb model file. If so, skip to the next section. If not, continue with step 4.
- Click the ellipsis () button next to the Model File field.
- Select Satellite.glb from the list of files.
- Click .
Telling STK to use the new Articulation file
You placed the solar panel articulation file into the scenario directory, but STK doesn’t know to use them. While still on the 3D Graphics - Model page, do the following:
- Select the Use Articulations file check box in the Articulations field.
- Click the ellipsis () button.
- Browse to the scenario directory.
- Select the ImageSat.sama file.
- Click .
- Click to reload the articulations file.
- Click .
Using motionless solar panels
In orbit, the solar panels always point toward the sun. This is a good thing when the satellite is in orbit, but not when it is on the launch vehicle. The solar panels should remain motionless when sitting in the payload bay. Make sure the solar panels do not start sun-pointing until after the launch vehicle and satellite have separated.
You know the solar panels should be completely deployed by 2055 seconds after the launch, so you can make the start time 2055 EpSec. If you take a quick look at the stop time for the last propagate segment, it should read about 262685 EpSec.
- Select the 3D Graphics - Model Pointing page.
- Select Intervals in the Available Targets list.
- Click .
- Click .
- Enter “2055 EpSec” as the Start Time.
- Enter “262685 EpSec” as the Stop Time.
- Set the Target as the Sun.
- Click on the Model Pointing Intervals dialog box.
- Click to accept the changes and close ImageSat () properties ().
You must enter the start and stop time exactly as they are written.
Set the animation time
Back in your scenario, the action begins after 214 EpSec, so set that as the animation time.
- Set the Animation time to 214 EpSec.
- Bring the 3D Graphics window to the front.
- Zoom To ImageSat () so that it is the focal point in the 3D Graphics window.
- Play () the animation.
- Do you see the solar panels deploy?
- How do the solar panels look now?
3D View: ImageSat Orbit
Save your work
- Reset () the animation.
- Save () your work.