30
Software Architecture and Use of Satellite Tool Kit’s Astrogator Module for Libration Point Orbit Missions John Carrico and Emmet Fletcher Analytical Graphics, Inc.

Software Astrogator CarricoFletcher - IEEC · Software Architecture and Use of Satellite Tool Kit’s Astrogator Module for Libration Point Orbit Missions John Carrico and Emmet Fletcher

  • Upload
    lyliem

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Software Architecture and Use of Satellite Tool Kit’s

Astrogator Module for Libration Point Orbit

Missions

John Carrico and Emmet Fletcher

Analytical Graphics, Inc.

Agenda

• History• Design• Architecture• Applications• Future work

History

• Swingby developed at NASA Goddard Flight Dynamics Division by Computer Sciences Corp. (CSC) in 1989

• Swingby commercialized to become Navigator (CSC; 1994); purchased by AGI

• Astrogator developed to meet GSFC/Flight Dynamics Analysis Branch request for a COTS solution (Jan 1997)

• Requirements from Swingby, and other institutional software

• Swingby/Navigator algorithms and code into STK/Astrogator

Swingby Navigator Astrogator

History: Lunar and libration point missions supported

• Clementine: 25 January, 1994• Wind: 1 November 1994• SOHO: 2 December 1995• ACE: 25 August 1997• AsiaSat 3 rescue: 25 December 1997 • Lunar Prospector: 7 January, 1998• MAP: 30 June, 2001

Astrogator Design• Goal: Replace/update/modernize previous

Goddard trajectory software (GMAS, GMAN, Swingby)

• Met with Goddard and contractor personnel for 3 months in working groups to define requirements– Reviewed good and bad features of current systems– Reviewed past, present, and proposed future missions– Reviewed analysis and operations tasks

Requirements from working group

• Trajectory modeling accuracy and targeting functionality

• 5 additional and significant requirements:– Support complete lifecycle: analysis through operations– Support all missions– Operate seamlessly with STK– Support automation– Allow user extensions

Trajectory modeling accuracy and targeting

• Numerically integrated trajectories– Dual-order Runge-Kutta; Gauss Jackson; VOP– Gravity

• Spherical harmonics of central body• Point mass of any number of other bodies (JPL ephemerides)

– Atmospheric models (Earth, Mars, user-defined)– Solar radiation pressure– Multiple thrusters

• Polynomial functions of pressure• Solar electric propulsion

• Differential Corrector for targeting

Complete lifecycle: analysis through operations

• Flexibility needed for analysis

• Configuration control, verifiability, and automation needed for operations

• Flexibility needed for contingency support

• Configuration control of data– Honor file system permissions– READ ONLY data in RED– READ / WRITE data in GREEN

Complete lifecycle: analysis through operations…

• Operations requires quality assurance of data

• STK Data (e.g., spherical harmonics) stored in ASCII flat files

• Astrogator data stored in XML

Support all missions

• Libration Point• Lunar• Other-planetary, inter-planetary, asteroids, and comets• Low Earth Orbit

– Ascent planning– Ground-track control– Sun

• Rendezvous• Formation flying• Geostationary• Engine Calibrations• Etc…

Operate seamlessly with STK

• Designing trajectory is only first step• Analysis

– Many other, non-astrodynamics constraints on mission

• Operations:– Data products must be created for other groups

Operate seamlessly with STK…

• STK/Professional– Access calculations – station acquisition data (AOS/LOS)– Constraint conditions (Sun/Moon angle, Solar intensity, star-trackers,

sensor views)

• STK/Coverage– Ground coverage / imaging conditions– Constellation design– GPS/Galileo/Glonass accuracy

• STK/Comm– Communication link analysis (BER, C/N)– Interference (Sun RFI, EPFD)

• STK/Attitude– Attitude simulation (torques, custom control laws, etc.)– 3D attitude visualization

• STK/CAT– Launch (and orbit) safety

Support automation

• Made targeter robust– Step size control / Homotopy

continuation– Cascading and nested targeting– Coarse and fine targeting

• Scripting– Parametric studies– Monte Carol error analysis– Optimization; GA

• Feedback from customers: Don’t make them learn a new language– Generic symbolic access– MATLAB, PERL, Python, Java,

VB Script, C, C++

Support automation…

• STK Files to define Astrodynamics

• Script used to define Maneuver Planning Process

Support automation…

• Swing-By Calculator• Written by JAQAR• Multiple planet gravity assist• Outputs data to STK

Support automation…

• Mars Contour Plotter • Written by SEE• Creates Astrogator missions

control sequences

Allow user extensions

– Allow users to add functionality to internal calculations• Force models• Engine models• Thrust steering• Constraints / stopping conditions• Closed-Loop orbit control

– Formation flying– Returning to nominal trajectory

• Attitude dynamics and control laws– Tried DLLs in C: not good for average user– Switched to MATLAB, PERL, and VB Script– User can type in an equation, or edit a file

Architecture• Build an architecture that makes AGI products easier to

use and learn• Make use of industry standards• Allow users to figure out how to use AGI products to solve

their problems• Design and promote a more open architecture.• An architecture that supports the ability to easily add new

functionality and improve current functionality

Architecture…• Design Patterns in C++

• Systematic re-usable computer architecture constructs– Prototype– Strategy patterns – Abstract factory– Singleton– Adapter– Decorator– Flyweight– Proxy– Observer– Iterator

• Standard Template Library (STL)

• Gamma E, Helm R., Johnson R.Vlissides J. “Design Patterns” 1995 Addison-Wesley Longman, Inc.

Architecture…

• Symbolic Access through the ‘Attribute’ system:– A generic means of accessing data– Means of accessing data symbolically– Symbolically means associating a piece of data with a name– So, you could say things like

gimme Scenario1.hubble.Swath.Type

Engine

Attributes

GUI Serialize Scripting 3rd Party

Connect

Applications: MAP• Pre-launch trajectory

design (started with Swingby)

• Launch window analysis• Sun vector constraints

during maneuvers• Earth and Lunar

shadow• Operations

– Planning– Engine calibration

Applications: MAP…

• Monte Carlo analysis to determine fuel budget to correct for launch and maneuver dispersions

Next Generation Space Telescope (NGST)

• Launch window• Solar radiation

pressure studies – Monte Carlo used to calculate stationkeeping fuel

Triana: Generator to Astrogator

• Import and re-target trajectory

• Verify Sun-Earth-Vehicle (SEV) constraint

Triana: View from spacecraft• 0.6° field-of-view

• Step-size once a day

• Latitude and longitude lines

• Terminator

• Analemma

• Sub-satellite point

Weak Stability Boundary

• Calculation of Weak Stability Boundary Ballistic Lunar Transfer Trajectories, (Belbruno, Carrico, AIAA 2000 – 4142, Astrodynamics Specialist Conference14-17 August, 2000Denver, Colorado)

Earth

III

III IVλ

α

Moon atLaunch

Sun

WSB…

• Launch Window Analysis

Mars libration point• Communication coverage at Mars• Use launch and midcourse to hit B-

plane parameters to control amplitude

• Use extra loop to control relative phasing

Earth-moon libration point

Future Work

• More open architecture– Advanced scripting– More plug-ins

• Orbit Determination– Realistic error covariance calculations– Maneuver reconstruction

• Formation flying• Support optimization

– Internal effort in beta– Interface to user optimization algorithms

• Increased visualization capabilities