580 likes | 814 Views
Research Development & Engineering Command. AUBURN UNIVERSITY MISSILE AND AIRCRAFT HARDWARE-IN-THE-LOOP SYSTEM SIMULATION CAPABILITY DEVELOPMENT October 22, 2008. OUTLINE. Overview of Project Accomplishments ~ Cochran Simulation Development ~ Sinclair
E N D
Research Development & Engineering Command AUBURN UNIVERSITY MISSILE AND AIRCRAFT HARDWARE-IN-THE-LOOP SYSTEM SIMULATION CAPABILITY DEVELOPMENT October 22, 2008
OUTLINE • Overview of Project Accomplishments ~ Cochran • Simulation Development ~ Sinclair • 6-DOF Digital Simulation ~ Sinclair, Martin, Sherrill • Static HWIL Simulation ~ Sherrill • Flight Motion Table Modeling & Control ~ Martin • Project Accomplishments & Future Work ~ Cochran
AMRDEC SLIDES • THE FOLLOWING SIX SLIDES ARE FROM THE OCTOBER 2006 AMRDEC BRIEFING
Simulation Objectives Goal: Incorporate 6-DOF simulation which defines a surface-to-air intercept of an inbound ballistic missile • Include 6-DOF simulation of missile interceptor • Compute angular and translational accelerations based on defined equations of motion • Include implementation for boost/coast and terminal guidance flight phases • Define control implementation for translational and rotational control (Thrust diverters, conventional control surfaces) • Model simplistic seeker model based on FOV, and missile/target relative state vectors • Implement environmental model • Computation of dynamic pressure, Mach number, etc. • Incorporate simplistic target model • Fixed velocity vector
Characteristic Engagement Scenario Target Scenario: Closing velocity at intercept: approx 4000 m/s Altitude at Intercept: 18500 m Altitude Altintercept In-bound missile trajectory Interceptor Trajectory Tguidance Time Tcoast Tboost
Compute Estimated Intercept Point • Align Initial Missile Azimuth/Elevation with Intercept Point (Simulate Launcher Reposition) Target Acquisition/Track Motor burnout Terminal Guidance (Pro-Nav) Roll-Stabilized Guidance to Target Intercept Point Pre-Launch Boost Coast Simulate target cue point handover to seeker from ground tracking station Target LOS Rate Data Provided to Guidance Section • Initiate Missile Launch • Initiate target motion Target Impact Conceptual Engagement Timeline
Guidance/Control Section Seeker/Ogive Booster W L Missile Overview(Initial Concept) • Physical Properties • Length: L = 6m • Width: W = 0.3m • Mass: m = 600kg • [CGx,CGy,CGz] = TBD • [Ixx,Iyy,Izz] = TBD • Max Engagement Range • 85km (approx. 279,000 ft) • Max Speed Supersonic(TBD) • Booster Force Profile Description • “au_booster_profile.txt” • Aero Force/Moment Coefficient Description • “au_aero_table.txt” • Assumptions • Single stage • No aero control surfaces, smooth fuselage • Missile mass/moments of inertia vary based on propellant mass reduction • Seeker is gimbaled, inertially stabilized, and has zero misalignment relative to the missile body (elevation direction aligned with Z-body axis, azimuth aligned with y body axis)
Interceptor Overview(Initial Concept) Guidance/Control Section Seeker/Ogive Booster W L • Basic Assumptions (Current Approach) • Single stage • No aero control surfaces, smooth fuselage • Missile mass/CG/moments of inertia do not vary based on propellant mass reduction • Seeker is gimbaled, inertially stabilized, and has zero misalignment relative to the missile body (elevation direction aligned with Z-body axis, azimuth aligned with y body axis) • Design Items to Address • Characteristic aero coefficient data, boost profile, dimensions, and mass have been identified • Investigate if other analytical methods can be employed (Coordinated with Auburn Aerospace Engineering talent) to develop a conceptual aero package • Need group concurrence/path forward regarding guidance law(s) for use in boost/coast and terminal track mission states • Need group concurrence/path forward regarding control method (booster thrust vectoring/divert C-G thrusters or conventional control fins/canards)
Coordinate Systems x-Gimbal z-Gimbal z-Earth (Negative-Up) y-Gimbal z-body x-body Gimbal Frame x-Earth y-body Body Frame y-Earth NED Local Level (Inertial) Frame
TigerSim Executive Auburn-developed Matlab simulation of missile intercept: • initialize variables • main loop calls • scene generation -- Ryan • seeker model – Ryan • aerodynamic model -- Justin • mass model -- Justin • thrust profile -- Justin • gravity model – Justin • control model -- Andy • dynamics model (equations of motion) -- Justin • evaluate simulation termination conditions • finalize simulation Simulation also converted to C++
Initialization of Parameters • CN, Cm, CA, and Cmq tables loaded for 2 vehicles • Dt = 0.003 sec • Time untill propellant burnout = 20 sec • Time untill target acquisition = 60 sec • State Matrix, X = [x y z y f q y u v w p q r]T • Xinit = [0 0 0 0 70o 0 1 0 0 0 0 0]T • Range to Target = norm( [x y z]T – [x y z]targetT )
Scene Generation • An artificial celestial sphere was created against a black background • The target is modeled as a cone whose intensity resembles an IR emission of an object entering the atmosphere • Scene rendered using Matlab tools
Seeker Model • Uses image (acquired in software) of generated scene to determine target line-of-sight. • Requires • Searching the image for the target • Based on the pixel location, calculate the LOS
1.8 m 0.8 m 3.4 m 0.3 m Stage 1 Stage 2 Aerodynamic Model • Total (stage 1) weight – 600 kg • Kill vehicle (stage 2) weight – 100 kg • S = cross-sectional area, 0.0707 m2 • Lref = d = diameter, 0.3 m
Aerodynamic Model F = aerodynamic force ρ = atmospheric density S = reference area V = magnitude freestream velocity CF = aerodynamic force coefficient
Aerodynamic Model M = aerodynamic moment ρ = atmospheric density S = reference area d = reference area V = magnitude freestream velocity CM = aerodynamic moment coefficient
Aerodynamic Model • Missile DATCOM used to calculate aero coefficients CA(α,M), Cm(α,M), Cm(α,M), Cmq(α,M). • Separate coefficient sets for stage 1, stage 2 • Functions of a (angle of attack), Mach number • Initialized outside integration loop, stored as global variables
2. Call altinf.m (determine local atmospheric conditions) 1. Accept missile state 3. Calculate a, b 4. Call interp.m with stage 1 aero coefficients yes 5. Calculate aerodynamic forces t < tburnout ? 4. Call interp.m with stage 2 aero coefficients no Aerodynamic Model
Mass Model • Mass of Propellant from Rocket Equation • mprop = (Tmax * tb) / (Isp * gc) • Tmax = 60,000 N • Isp = 280 sec • Moments of Inertia for axis “x” • Ix = Ix,prop + Ix,struc + Ix,pay • Ix = Ix’ + (m * d2) • Mass property vector output • massvector = [CG mass Ix Iy Iz]T
Profile consists of three linear legs Once burnout time achieved, Thrust = 0 Thrust outputs and times are established within function Thrust Profile
G&C Algorithms • Boost Phase • 2-axis TVC • continuously selectable gimbal angles • limits on angle excursions • used to damp angular velocity and regulate angle of attack • Coast Phase • 3-axis ACS • continuously selectable moments, no forces • used to damp angular velocity and regulate angle of attack • Terminal Phase • 3-axis ACS and 2-axis Divert • continuously selectable moments and forces • used to damp angular velocity and point along LOS, and apply divert acceleration commanded by ProNav
Dynamics Model • State Vector, X = [x y z fqy u v w p q r]T • Aerodynamic Forces and Moments (6 x 1) • Control Forces and Moments (6 x 1) • Gravity Force (3 x 1) • Mass Properties Vector = [CG mass Ix Iy Iz]T
Dynamics Model • Sum all the force and moment components • Calculate the derivatives of the position and angle components where
Dynamics Model • Calculate the derivatives of the linear and angular velocities from 4) Multiply the change in the state matrix by Dt and add to the old state
Time-Step Selection • short-period approximation • during boost phase, Q/u0 increases while m and Iy decrease
Time-Step Selection • just after separation • natural dynamics are unstable, as expected
Time-Step Selection • closed-loop dynamics • selected simulation time step of 0.003 sec
Digital Simulation Simulation PC Monitor • MatlabTigerSim • scene generation • seeker model • aerodynamics model • mass model • thrust profile • gravity model • G&C algorithms • equations of motion
Static HWIL Simulation Simulation PC Monitor • MatlabTigerSim • scene generation • seeker model • aerodynamics model • mass model • thrust profile • gravity model • G&C algorithms • equations of motion TCP/IP Smart Camera • send trigger • computes LOS rate • Seeker Model • acquires image • performs target detection
Flight Table Modeling & Control Investigated FMS dynamics through simulation and hardware modeling. Developed Dynamic Inversion control to improve FMS motion accuracy. Y X Z
FMS Hardware Model Justin & Ryan add slides here on Flight Table model
Project Accomplishments Graduate Student Development • Supported Kevin Geohagan (MAE), Justin Martin (MS), James Griffith (MAE), and Brandon Lee (MAE). • Current students Justin Martin (PhD) and Ryan Sherrill (MS)
Project Accomplishments Research Publications • J.N. Martin, A.J. Sinclair, and J.E. Cochran, “Comparison of Dynamic-Inversion and Linear Controllers for Flight Motion Simulation”, Mechatronics, in review. • J.N. Martin, A.J. Sinclair, and J.E. Cochran, “Nonlinear Tracking of Natural Mechanical Systems for HWIL Simulations”, AIAA-2007-6463, AIAA Modeling and Simulation Technology Conference, Hilton Head, South Carolina, 22-26 August 2007. • R.E. Sherrill, A.J. Sinclair, and J.E. Cochran, “Scene Generation and Target Detection Development for HWIL Simulation”, AIAA 2008-6367, AIAA Modeling and Simulation Technologies Conference, Honolulu, Hawaii, 18-21 August 2008. • J.N. Martin, A.J. Sinclair, and J.E. Cochran, “Dynamic-Inversion Control for High-Fidelity HWIL Simulation”, AIAA 2008-6525, AIAA Modeling and Simulation Technologies Conference, Honolulu, Hawaii, 18-21 August 2008.
Project Accomplishments • Fall 07 covered some aspects of simulations in Dynamics of Flight - Coordinate systems and transformations, equations of motion, stability, ... • Some Courses Currently offered: • AERO 6210 Flight Simulation • AERO 6520 Rocket Propulsion • AERO 7100 Advanced Supersonic Aerodynamics • AERO 7200 Dynamics of Flight • AERO 7210 Flight Dynamics of Hypervelocity Vehicles • AERO 7350 Optimal Control of Aerospace Vehicles • ELEC 7510 Optimal and Stochastic Control Systems • ELEC 7520 Advanced Discrete Control • Many others in Electrical and Computer Engineering, Mathematics, Computer Science and Software Engineering, and Mechanical Engineering. • How do we select courses for HWIL specialization? • Probably need a committee with Government, Industry, and AU representation.
Research and Lab Development Plans • Submitted MSTAR proposal in January • Other SBIRs • Aerospace Research and Education Initiative • Auburn + Tuskegee + ASI, Inc. (lead)
BACKUP SLIDES • THE FOLLOWING SLIDES ARE FROM THE OCTOBER 2006 AMRDEC BRIEFING
Represent state vectors to globally referenced coordinated Missile State Vectors Target Location in Seeker Frame Earth Wind Target Cross Wind Missile State Vectors Missile Dynamics LOS Rates Seeker Divert Thruster Magnitude Thrust Equations of Motion Force/Moment Summation Guidance & Control Aero α Environment Altitude, velocity q, Mach Atmosphere Simulation Functional Relationships Missile State Vectors
Model Partitioning Force/Moment Summation Dynamics Model Equations of Motion Missile Dynamics Atmosphere Environments Model Wind Missile Model Earth Aero Aerodynamics Model Thrust Guidance & Control Model G&C Target Model Target
Simulation Executive Target Model Environments Model Missile Model Simulation Functional Flow START Key Define Simulation Initial Conditions Define Initial Geometry Perform Pre-Frame Updates End of Run? Update Environmental Attributes Simulation Partitioning Simulation Executive: Manages model initialization and execution. Controls time advancement and integration. Missile Model: Summation of subordinate models which define missile elements (seeker, aerodynamics, dynamics etc) Environment Model: Subordinate models represent atmospheric attributes of scenario Target Model: Simplistic prediction of target state vectors Update Missile Parameters Archive Data to Fixed Disk Simulation Frame Update Target Parameters Perform Sim Completion Tasks Update Elapsed TIme END Perform Post-Frame Updates/Assignments
Class Definition Formulate C++ Models from Functional Decomposition of System Elements
Constructor( ) Pre-loop/Post Loop Processing Initialize( ) Update( ) Begin/End of Object/Program Invocation Iterative Processing Frame Finalize( ) Dynamics( ) Initialize( ) Destructor( ) Dynamics Update( ) Finalize( ) For you FORTAN die-hards, C++ “Methods” akin to a C Function or FORTAN Subroutine ~Dynamics( ) Standardized C++Methods for Each Class Constructor: Perform initializations just after object instantiation. (e.g. Set default values for variables) Initialize: Perform pre-loop initializations (e.g. Read-in LUT, open log files Update: Performs iterative computations (e.g. Solve equations of motion, update vehicle dynamics) Finalize: Perform post-frame activities (e.g. Dump log data buffer) Destructor: Perform pre-program termination clean-up (e.g. release allocated memory, release device drivers) EXAMPLE: Each Model Class will possess the same method (function) partitioning (note constructor/destructor name)
Model Execution Scheduling • The simulation will execute at a base simulation rate, which defines the base time increment (stipulation is that base simulation rate must be a power of two) • Models are defined for execution by reference and by the rate in which the model should be called, which is an event multiple of the base rate • Sensor models – high rate of execution • Environments – lower rate perhaps • Fastest rate a model can be called in the base simulation rate • Simulation Executive scheduler will compute base rate divisor based on specified target rate, which is used to govern individual model execution
Frame Execution Sequence START Atmosphere.update( ) Compute temp, dynamic pressure Speed of sound, Mach Number Environment.update Winds.update( ) Compute Velocity Profile of Winds Compute Missile/Target Coordinates in ECEF And rotating Earth Frames Earth.update( ) Solve Equations of Motion for Angular/Rotational Accelerations Integrate missile state vectors Missile.update Dynamics.Update( ) Compute AOA & AOS. Determine thrust Force Compute trans/rot force coefficients from LUT Aero.update( ) Compute control surface/device command And resulting Angle of attack/angle of sideslip ApControl.update( ) Compute Target LOS Rates Based on missile/target geometry Seeker.Update( ) Generate Autopilot Commands Based on implemented guidance law Guidance.update( ) Target.update Compute Target Position Target.update( )