1 / 44

Under The Hood: Maneuver Planning With Astrogator

Under The Hood: Maneuver Planning With Astrogator. Matt Berry Kevin Ring. Introduction to Astrogator The components of Astrogator Segments Stopping Conditions Engine Models Targeter Profiles Examples. What are they? What do they do? How do they work?. Agenda. What’s Astrogator?.

pearl-brock
Download Presentation

Under The Hood: Maneuver Planning With Astrogator

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Under The Hood:Maneuver Planning With Astrogator Matt Berry Kevin Ring

  2. Introduction to Astrogator The components of Astrogator Segments Stopping Conditions Engine Models Targeter Profiles Examples What are they? What do they do? How do they work? Agenda

  3. What’s Astrogator? • Astrogator is STK’s mission planning module • Used for: • Trajectory design • Maneuver planning • Station keeping • Launch window analysis • Fuel use studies • Derived from code used by NASA contractors • Embedded into STK

  4. Astrogator in STK • Astrogator is one of 11 satellite propagators • Propagator generates ephemeris • Astrogator satellite acts like other STK satellites • Can run STK reports (including Access) • Can animate in 3D and 2D windows • Generates ephemeris by running Mission Control Sequence (MCS) • Components used in MCS configured in Astrogator Browser

  5. Astrogator Astrogator Mission Control Sequence Configuration Ephemeris Astrogator Runs Mission Control Sequence Other Mission Data

  6. The Mission Control Sequence • A series of segments that define the problem • A graphical programming language • Two types of segments • Segments that produce ephemeris • Segments that change the run flow of the MCS • Segments pass their final state as the initial state to the next segment • Some segments create their own initial state

  7. The Mission Control Sequence State Segment 1 Ephemeris State Ephemeris Segment 2 State

  8. Segments that produce ephemeris • Initial State – specifies initial conditions • Launch – simulates launching • Propagate – integrate numerically until some event • Maneuver – impulsive or finite • Follow – follows leader vehicle until some event • Update – updates spacecraft parameters

  9. Specify spacecraft state at some epoch Choose any coordinate system Enter in Cartesian, Keplerian, etc. Enter spacecraft properties: mass, fuel, etc. Initial state segment

  10. Specify launch and burnout location Specify time of flight Use any central body Connects launch and burnout points with an ellipse Creates its own initial state Launch segment

  11. Numerically integrates using chosen propagator Propagator can be configured in Astrogator browser Propagation continues until stopping conditions are met Propagate segment

  12. Stopping conditions • Define events on which to stop a segment • Stop when some “calc object” reaches a desired value • A calc object is any calculated value, such as an orbital element • Calc objects can be user-defined

  13. Stopping conditions • Can also specify constraints: • Only stop if another calc object is =, <, >, some value • Determines if exact point stopping condition is met, then checks if constraints are satisfied • Multiple constraints behave as logical “And” • Segments can have multiple stopping conditions • Stops when the first one is met • Behaves as a logical “Or”

  14. Event detection • Exact time of event found with Regula-Falsi • f(t)found by integrating to time t

  15. Propagate segment: pseudo-code while (keepGoing) take integration step if (stopping condition tripped over step) find exact point of stopping condition if (constraints met at that point) keepGoing = false end if end if end while

  16. Maneuver segment owns two distinct segments: Finite maneuver Impulsive maneuver Combo box controls which one is run Finite maneuver created from impulsive maneuver with “Seed” button Maneuver segment

  17. Adds delta-V to the current state Can specify magnitude and direction of delta-V Computes estimated burn duration and fuel usage, based on chosen engine Can configure engine model in Astrogator browser Impulsive maneuver

  18. Impulsive maneuver State Impulsive Maneuver Add delta-V to state State

  19. Works like propagate segment, thrust added to force model Can specify the direction of the thrust vector Can be specified in plug-in Magnitude of thrust comes from engine model Can center the burn about current state Finite maneuver

  20. Compute thrust, Isp, and/or mass flow rate (two of three) Four Kinds: Constant Thrust and Isp Polynomial Engine: T and Isp functions of pressure, temperature Ion: Isp and mass flow functions of power Plugin: you decide Thrust and mass flow rate sent back to force model Engine models

  21. Creates finite maneuver from impulsive Duration stopping condition set to estimated burn duration of impulsive maneuver Copies all settings from impulsive maneuver to finite maneuver Finite burn seeding

  22. Choose leader to follow Specify offset from the leader Follow leader between “joining conditions” and “separation conditions” Behave just like stopping conditions Creates its own initial state Follow segment

  23. Follow segment: pseudo-code while (keepGoing) get leader’s next ephemeris point add offset if (not adding points yet) if (joining conditions are met) find exact point of joining condition start adding points end if end if if (adding points) add point to ephemeris if (separation conditions met over step) find exact point of separation conditions keepGoing = false end if end if end while

  24. Used to update spacecraft properties Useful to simulate stage separation, docking, etc Set properties to a new value, or add or subtract from their current value Update segment

  25. Update segment State Update Update state parameters State

  26. Segments that change run flow • Auto-Sequences – called by propagate segments • Target Sequence – loops over segments, changing values until goals are met • Backwards Sequence – changes direction of propagation • Return – exits a sequence • Stop – stops computation

  27. Auto-sequences • Instead of stopping a segment, stopping conditions can trigger an auto-sequence • An auto-sequence is another sequence of segments • Behaves like a subroutine • After the auto-sequence is finished, control returns to the calling segment • Auto-sequences can inherit stopping conditions from the calling segment

  28. Auto-sequences example Initial State Propagate Apoapsis Periapsis Duration = 1 day Burn In Plane Sequence Burn Out Of Plane Sequence Finite Maneuver In Plane Finite Maneuver Out of Plane Duration = 100 sec Duration= 100 sec

  29. Runs through a series of targeter profiles Behaves like a while loop Profile manipulates the segments in target sequence Two types of profiles: Differential corrector Profiles that change segments’ properties Target sequence

  30. Differential corrector • Controls chosen from segments in target sequence • Results are calc objects computed at the end of segments in the sequence • Determine controls, x, to meet results, y: • Evaluated by running targeter sequence

  31. Differential corrector • Correction to controls found from linearized Taylor series: • A found from finite differencing, perturbation added to each control • Inverse found from singular value decomposition

  32. Differential corrector: pseudo-code run sequence to get results while (not converged and count < max iterations) for each control adjust control by perturbation run sequence to get results end for compute partial matrix compute inverse of partials compute new control values run sequence to get results increment count end while

  33. Profiles that alter segment properties • Change maneuver type – toggles finite / impulsive • Seed finite maneuver – creates finite from impulsive maneuver • Change stopping conditions – toggles stopping conditions • Change return – enables / disables return segment

  34. Target sequence: pseudo-code execute each profile run sequence final time clean up after profiles • After targeter finished running, segments left in original state • Changes to controls / segment properties not applied until “Apply Corrections” button is used

  35. Using the targeter effectively • Multiple targeting profiles divide problem into parts • Coarse and fine targeting • U.S. Patent No. 6,937,968 • Target sequence can be changed between DC profiles with segment property profiles • Differential corrector relies on good partials • Set perturbation and max step appropriately • Best to have equal number of controls and results

  36. Targeting examples • Coarse and fine targeting of a maneuver • Example of “bad partials”

  37. Segments in backward sequences propagated backwards: Propagate & finite maneuvers integrated with negative time step Impulsive maneuvers’ delta-Vs are subtracted Can pass initial or final state of sequence to next segment Backward sequence

  38. Backwards prop example • Meet in the middle targeting problem

  39. Putting the ephemeris together • Segment ephemeris merged after MCS is run • When overlaps occur: later segment in MCS wins • Only overlapped portion of earlier segment’s ephemeris removed • Possible to have discontinuous ephemeris • Sequences have option not to generate ephemeris

  40. Ephemeris merging Segment 1 Segment 2 Final Ephemeris 0 5 10 15 time Two points at the same time

  41. Ephemeris merging example

  42. Summary • Astrogator is a tool in STK for mission planning • Astrogator is not complicated – it just does what you tell it to do • Some math in Astrogator • Event detection • Differential corrector • Engine model • Orbit propagation • Configuring Astrogator is the key

  43. Other related events • Methods of Orbit Propagation Jim WoodburnWednesday 10:45 a.m.-12:15 p.m. • Space SystemsJohn Carrico and Bob HallWednesday 10:45 a.m.-12:15 p.m. • Astrogator Users’ Group breakfastThursday 7:15 a.m. • STK Plug-ins using Compiled CodeVince CoppolaThursday 10:45 a.m.-12:15 p.m.

  44. Questions ?

More Related