Professional Documents
Culture Documents
HTTP Simcompanion - Mscsoftware.com Resources Sites MSC Content Meta Documentation 9000 DOC9456 Secure Ae Ug Cover
HTTP Simcompanion - Mscsoftware.com Resources Sites MSC Content Meta Documentation 9000 DOC9456 Secure Ae Ug Cover
TM
EASY5 Home
Menu
Edition Note
This edition of the Aerospace Libary User Guide documents the the 2010 release of EASY5..
Copyright
Copyright 2010 MSC.Software Corporation All Rights Reserved. Printed in U.S.A. Lot 3/31/2010
Disclaimers
THE DOCUMENTATION IS PROVIDED ON AN AS-IS BASIS AND ALL EXPRESS AND IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. IN NO EVENT SHALL MSC.SOFTWARE CORPORATION BE LIABLE TO ANYONE FOR ANY SPECIAL, COLLATERAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES ARISING OUT OF, RESULTING FROM, OR IN CONNECTION WITH USE OF THE CONTENTS OR INFORMATION IN THE DOCUMENTATION. MSC.SOFTWARE CORPORATION RESERVES THE RIGHT TO MAKE CHANGES IN SPECIFICATIONS AND OTHER INFORMATION CONTAINED IN THE DOCUMENTATION WITHOUT PRIOR NOTICE.
Trademarks
ADAMS, MSC.ADAMS, MD Adams, EASY5, MSC.EASY5, MSC, MSC., SimManager are trademarks or registered trademarks of MSC.Software Corporation and its subsidiaries in the United States and/or other countries. NASTRAN is a registered trademark of the National Aeronautics Space Administration (NASA). MSC.Nastran and MD Nastran are enhanced proprietary version developed and maintained by MSC.Software Corporation. Microsoft is a registered trademark of Microsoft Corporation. All other trademarks are the property of their respective owners.
Government Use
Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in FAR 12.212 (Commercial Computer Software) and DFARS 227.7202 (Commercial Computer Software and Commercial Computer Software Documentation), as applicable.
EASY5 Home
Menu
Preface
EASY5 Home
Menu
Preface
The aerospace vehicle (AE) library is a group of EASY5 components specifically designed to model and analyze the performance of aerospace vehicles. The current release is specifically aimed at vehicles flying in the atmosphere. This user guide is organized in six sections:
Overview
A general discussion of the principles involved in modeling aerospace vehicles with EASY5 and the AE library and citations for each of the references used in developing the AE library A set of annotated examples showing how to build and use models of aerospace vehicles with the AE library. Detailed information on each of the AE library components. A summary of the coordinate systems and transformations used in the AE library. A summary of the coordinate systems and transformations used in the AE library. Aerodynamic and flight condition data for the 747-100 model presented in the tutorial.
EASY5 Home
Menu
Contents
Aerospace Library User Guide
Preface
Preface 2
Overview
Overview 8 Objectives 8 Theory 8 Transient Analysis Considerations 10 Steady-State Analysis Considerations 10 Linearized Analysis Considerations 10 Conventions Used in This Guide 11 Modeling Conventions in the AE Library 11 AE Library Components 12 References 14
43
65
EASY5 Home
Menu
89
Three-Axis Accelerometer Aerodynamic Forces and Moments Aerodynamic Parameters Standard Atmosphere Bandwidth-Limited (Pink) Noise Rigid Control Surface Earth Model First-Order Lag Engine N Functions of a Single Independent Variable N Functions of Two Independent Variables Gaussian Noise Discrete (1-Cosine) Single-Axis Gust Hydraulic Actuator Lateral Aerodynamic Derivatives Linear Lateral-Directional Equations of Motion Linear Longitudinal Equations of Motion Longitudinal Aerodynamic Derivatives Point Mass Rigid Body Dynamics Three-Axis Rate Sensor Units Specification Velocity and Acceleration Wind (Turbulence) Model Transform Forces to Cg Frame A Service Routines
EZAE0TB1 EZAET0B2 2 5
EASY5 Home
Menu
CONTENTS 5
Inertial Coordinates
EASY5 Home
Menu
EASY5 Home
Menu
Overview
Overview References
8 14
EASY5 Home
Menu
Overview
This user guide describes the initial release of the EASY5 aerospace vehicle (AE) library.
Objectives
The overall objective of the AE library is to provide the EASY5 user with a set of components to speed building models of aerospace vehicles. The components in the AE library are intended to supply
The core equations needed to represent rigid body vehicle dynamics, both linearized and
nonlinear. (A future release of the library will contain components representing linearized flexible body dynamics.)
A baseline approach to computing aerodynamic forces and moments and the tools needed to
AE library components do not represent specific vehicles or devices. Instead, they are purposely designed to be
Sufficiently detailed to provide dynamic responses of comparable fidelity to other EASY5
data or requiring unreasonable amounts of computer time to execute. The objective of this document is to give you the information needed to
Develop confidence in the theoretical background of the AE library. Understand the example models used to illustrate AE library use. Use AE library components in your own applications.
Theory
This section contains general information about the approach and the theory upon which the components in the AE library are based. The component data sheets in section 3.0 contain further information specific to each component and acknowledge the references from which the theory for each was obtained. Reference citations in this section correspond to the numbers in section 1.9. Body Dynamics Linearized equations of motion (components LD and LL) are based on the traditional small-perturbation equations of a rigid body at a point flight condition [1], [2], [5].
EASY5 Home
Menu
Chapter 1: Overview 9
Overview
Point mass equations of motion (PM) are based on kinematics [6], [7]. Nonlinear equations of motion (RB) are based on the rigid body equations [1], [2]. Terms representing the effects of rotating parts and moving center of gravity are found in [1]. Attitude is computed using quaternions [3], [10] stabilized by a method provided by [11]. Conversion of attitude to a user-specified Euler angle sequence is based on equations in [3]. Aerodynamics Aerodynamic forces and moments (AF) are computed using nondimensional derivatives [1], [2], [5]. The AE library specifically separates the computation of forces and moments from the generation of the derivatives. This approach allows you to select either the baseline approach implemented in LA and LO (derivatives as functions of a single independent variable, usually Mach) or to build an approach based on requirements of a specific model. Aerodynamic parameters computed in AP (e.g., dynamic pressure, angle of attack, or angle of sideslip) are computing using equations from [1], [2], and [5]. Environment The flat and spherical gravity models in the Earth model (EA) are based on first principles and constants [4], [14]. The zonal harmonic gravity model is based on [4] and [13]. Navigation equations (latitude, longitude, heading, and altitude) are based on analytic geometry and [4]. The discrete gust model (GU) is based on analytic geometry. Von Karman and Dryden turbulence models (WM) are based on principles and transfer functions described in [8] and [9]. Random deviates for WM are generated using algorithms provided in [12]. Gaussian (GA) and bandwidth-limited (BW) noise are also generated using algorithms provided in [12]. BW uses information in [8] to compute specified RMS. Tables for the standard atmosphere (AT) are taken from [1]. Instruments All instrument components are based on kinematics [3], [6], [7] and coordinate transformations. Control The rigid control surface (CS) component assumes that the aerodynamic force on the surface is the component of QACd (where A is the control surface area and Cd is the drag coefficient of the surface, default = 1) perpendicular to the surface. The location and orientation of the surface are parameters. The hydraulic actuator (HY) component represents the basic dynamics of a hydraulic piston. Together, these components allow you to add actuator/surface dynamics to a model. The engine (EN) component is based on the EASY5 general-purpose library first-order lag. The force/moment transformation component (XF) is based on coordinate transformations.
EASY5 Home
Menu
Special Purpose The required units specification (UN) component allows you to specify SI or U.S.-common units for your entire model. It also defines several conversions factors needed throughout the AE library. The two table lookup components FU and FV look up multiple functions of one (FU) and two (FV) independent variables for your convenience in building alternate aerodynamic force models.
EASY5 Home
Menu
Chapter 1: Overview 11
Overview
Press <Return>.
Most keyboard shortcuts require that you press the Control key together with another key
simultaneously and are written as a combination of the first two conventions. Press <Control>S.
Text in all caps followed by a direction (right or left) indicates that you are to use the specified
button in the following ways. CLICK-L Click and release the left mouse button. CLICK-R Click and release the right mouse button. CLICK-M Click and release the middle mouse button. DOUBLE CLICK-LClick the left mouse button twice in rapid succession and release. HOLD-L Click and hold the left mouse button. HOLD-L+R Click and hold the left and right mouse buttons simultaneously (functions the same as CLICK-M).
Text in a bold Arial font with right angle brackets between words indicates that you are to select
a menu and subsequent submenus with your mouse. Go to File > Print Preview to view your document.
Text in an Arial font enclosed in brackets indicates that you are to click a button with your left
EASY5 Home
Menu
meters to feet. kilograms to slugs. Newtons to pounds. degrees Kelvin to degrees Rankine. Newtons/meter2 to pounds/foot2. kilograms/meter3 to slugs/foot3. Earth gravitational constant. Earth equatorial radius. Earth rotation rate (radians/second).
Notation In this user guide, vectors are indicated by an underscore. For example, WD in component RB is the angular velocity of the body with respect to the body coordinate system. Units are given in SI, with the corresponding U.S.-common units following in square brackets. Coordinate Systems AE library components use four coordinate systems:
CG-centered Body-centered Nonrotating Inertial
Centered at the body center of gravity and moving with the body. Centered at a specified body station and moving with the body. Centered at the origin of the body-centered frame and translating (but not rotating) with the body. Centered at the time = 0 origin of the body-centered frame and stationary.
Appendix B contains more information about these coordinate systems and the transformations that relate them.
AE Library Components
Body Dynamics Group LD LL PM RB Linearized lateral-directional equations of motion. Linearized longitudinal equations of motion. Point mass equations of motion. Nonlinear rigid body equations of motion configurable to represent short period or, with an Earth model, six-degree-of-freedom motion.
Aero Group AF Compute aerodynamic forces and moments from nondimensional aerodynamic derivatives, environmental data, and body dynamics data.
EASY5 Home
Menu
Chapter 1: Overview 13
Overview
AP LA LO
Compute aerodynamic parameters (dynamic pressure, angle of attack). Look up lateral aerodynamic derivatives as functions of one independent variable (usually Mach). Look up longitudinal aerodynamic derivatives as functions of one independent variable (usually Mach).
Environment Group AT BW EA GA GU WM Look up standard atmospheric parameters (temperature, pressure, density, speed of sound, and kinematic viscosity) as functions of altitude. Generate N streams of independent, bandwidth-limited (pink) noise. Compute gravity and navigation variables (latitude, longitude, altitude, heading) using a flat, spherical, or zonal-harmonic Earth model. Generate N streams of Gaussian noise. Generate discrete (1-cosine) single-axis gust either as a function of time or of gust width. Wind model to generate either Von Karman or Dryden turbulence.
Instruments Group AC RC VA Three-axis accelerometer with output and output rate limiting at user-specified body station and orientation. Three-axis rate sensor with output and output rate limiting at user-specified body station and orientation. Compute velocity and acceleration at a set of n user-specified body stations.
Control Group CS EN HY XF Rigid control surface at user-specified body station and orientation. First-order lag model of a throttleable engine at a user-specified body station and location. Simplified hydraulic actuator to drive a control surface. Transform forces at a user-specified body station, in a user-specified local coordinate system, to the CG coordinate system.
Special Purpose Group FU FV UN Look up n functions of a single independent variable. Look up n functions of two independent variables. Select unit system for entire model (required in every model using AE components).
EASY5 Home
Menu
References
1. B. Etkin and L. D. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996). 2. B. Etkin, Dynamics of atmospheric flight, 2nd ed. (New York: Wiley, 1972). 3. J. R. Wertz, ed., Spacecraft attitude determination and control (Dortrecht, Holland: Reidel, 1978). 4. R. R. Bate et al., Fundamentals of astrophysics (New York: Dover, 1971). 5. W. R. Kolk, Modern flight dynamics (Englewood Cliffs, N.J.: Prentice Hall Space Technology Series, 1961). 6. S. W. McCuskey, Introduction to advanced dynamics (Reading, Mass.: Addison Wesley, 1962). 7. G. W. Housner and D. E. Hudson, Applied mechanics: dynamics (Princeton, N.J.: Van Nostrand, 1950). 8. F. M. Hoblit, Gust loads on aircraft: concepts and applications (Washington, D.C.: AIAA Education Series, 1988). 9. Boeing document FAA-RD-74-206, Wind models for flight simulator certification of landing and approach guidance and control systems (Seattle: The Boeing Company, 1974). 10. Boeing document D290-10279-1, Subsystem design analysis report, S&C analysis, coast attitude control system (Seattle: The Boeing Company, 1981). 11. J. L. Tietze, unpublished correspondence (Seattle: The Boeing Company, 1985). 12. S. L. Anderson, unpublished correspondence (Seattle: The Boeing Company, 1989). 13. A gravity model for all seasons, unpublished technical note. 14. CRC handbook of chemistry and physics, 37th ed. (New York: CRC Publishing, 1955). 15. R. Sedgewick, Algorithms (Reading, Mass.: Addison Wesley, 1983).
EASY5 Home
Menu
16
EASY5 Home
Menu
Note:
The aircraft model used in these tutorials is a simplified model of the Boeing 747. This model does not accurately model the true dynamics of the 747, and the models control systems and actuation systems are very simple models that do not portray the true characteristics of the 747. This is only intended to be used as a simple demonstration to show the potential of how the Aerospace Vehicle library can be applied to modeling aircraft systems.
airframe components (LD and LL) and the aerodynamic derivative components (LA and LO) to demonstrate how to
Build a basic linearized model with AE library components. Use auxiliary input files to manage flight condition and aerodynamic data. Determine the eigenvalues. Add the GU component to the model and simulate open-loop responses. ae_demo2. This example begins with the lateral model from example 1 and adds a yaw damper
methods.
ae_demo3. This example adds sensor, rudder, and actuator dynamics to the example 2 model to
demonstrate how more realistic representations of these subsystems affect the response of the system.
ae_demo4. This example adds an altitude hold controller to the longitudinal model of example 1.
EASY5 Home
Menu
Compare the model eigenvalues to those of the linearized model of example 1. Compare the model open-loop response to that of the linearized model of example 1. ae_demo6. This example adds the yaw damper and sensor/actuator/rudder dynamics of example
3 to the rigid body model of example 4. It also adds the altitude hold and elevator/actuator dynamics from example 4. This example demonstrates how to build a complete model of the nonlinear dynamics and use it to simulate maneuvers beyond the capabilities of linearized, decoupled models.
ae_demo7. This example shows how to use AE library components to build the schematic for a
two-body, air-to-air missile engagement model. This chapter assumes that you are familiar with EASY5s concepts and use. If you are not, please consult the EASY5 User Guide for a tutorial or call the EASY5 hot line and register for an EASY5 training class.
Note:
The AE library and tutorials are updated on a periodic basis. You can download the most recent version of the library and the associated tutorials from our Web site at http://www.boeing.com/easy5.
The model you build in this tutorial will be very similar to the example 1 model called ae_demo_1. If you have problems completing and running this tutorial, you can skip the tutorial and load the ae_demo_1 model. When finished with this tutorial, you will be able to better understand the more complex example models (ae_demo_1 through ae_demo_7), and you should be able to enhance the tutorial model you build to match these example models. Building the Model Building an aircraft flight dynamics model can be overwhelming; a large amount of data is required, the data can be defined in many different formats and units, different coordinate systems are used, and several methods for implementing aerodynamic equations and derivatives exist. To make model building easier, break the process down into a few simple steps: a. First, model the lateral and longitudinal equations of motion. Start with the linearized decoupled equations of motion and then, if needed, replace this with a more complete sixdegree-of-freedom model.
EASY5 Home
Menu
b. Define the aerodynamic derivatives. This requires inputting and managing large amounts of data. EASY5 provides several methods for managing aerodynamic data. c. Add atmospheric disturbance to test your model. EASY5 provides several wind models. d. Enhance the model. Add engines, a control system, sensors, controllers, and surface actuation. This allows you to close a loop around your model and test its closed-loop response. In this tutorial, the first three steps will be used to build a simple airframe model. The examples that follow enhance this simple model by adding engines, controllers, sensors, and actuation and control systems. Lateral and Longitudinal Equations of Motion The simplest representation of an airplane is that of the approximate, linearized, decoupled equations of longitudinal and lateral or directional flight. These equations are implemented in AE library components LL (linear longitudinal equations) and LD (linear lateral equations), which are used when you are only interested in small motions about a specified flight condition. Models using the LL and LD components are ordinarily used to design and tune a control system about a specific flight condition. Because the linearized longitudinal and lateral equations of motion are decoupled, it is very unusual to need both LL and LD in a single model. However, for this tutorial, both are used so you can observe the longitudinal and lateral modes of the airplane. The following step-by-step instructions are abbreviated and assume that you have a general working knowledge of EASY5. If not, you should consider performing the introductory tutorials given in the EASY5 User Guide.
Before starting EASY5, load the data files used in this tutorial. At a command prompt, enter
easy5x -demo ae. In the Windows operating system, select Start > Programs > EASY5 > Demos > Copy EASY5 Demo Files. When prompted, enter the tagname ae.
Start EASY5 and create a new model named linear_aircraft. Add the UN component from the AE library. Every model that uses components from the AE
library needs one and only one UN component. This component defines the units to be either SI or U.S.-common units. The unit default is SI units, which is used in this tutorial and the examples.
Add the LL and LD components from the AE library to the schematic. These components are in
LL and LD are self contained, so you need only supply a flight condition, dimensions, and aerodynamic derivatives as parameters. You have a choice of two methods for inputting data to define the equations of motion: a. Enter data to define the characteristic matrix A and the control matrix B. b. Define the flight condition, dimensions, and aerodynamic derivatives.
EASY5 Home
Menu
If you supply no values for either the A or B matrices, then LL and LD will use the flight condition, dimensions, and aerodynamic derivatives to calculate A and B. In this tutorial, you will use this method.
Open the LL component data table, and enter the data from Table 2-1.
Table 2-1 Name DE DP MAS U0 TH0 G S CBR QBR IYY 0 0 288,460 235.92 0 9.8 511 8.3242 8,474 4.4867e07
LL component data Value Description Elevator angle (rad) Throttle position Mass of body (kg) Forward velocity at flight condition (m/sec) Pitch angle at flight condition (rad) Gravity (m/sec) Aerodynamic reference area (m2) Cbar aerodynamic reference length (m) Dynamic pressure (N/m2) Pitch moment of inertia (kg-m2)
Do not define the aerodynamic derivatives CXU, CXA, and others. This data will be defined in a later section.
Open the LD component data table, and enter the data from Table 2-2.
Table 2-2 Name DA DR MAS U0 TH0 G IXX IZZ IZX S 0 0 288,460 235.92 0 9.8 2.4805e07 6.7368e07 -2,114,660 510.98
LD component data Description Aileron angle (rad) Rudder angle (rad) Mass of body (kg) Forward velocity at flight condition (m/sec) Pitch angle at flight condition (rad) Gravity (m/sec) Moment of inertia about x-body (kg-m2) Moment of inertia about z-body (kg-m2) Z-X product of inertia (kg-m2) Aerodynamic reference area (m2)
Value
EASY5 Home
Menu
LD component data Description Aerodynamic reference length (m) Dynamic pressure (N/m2)
Value
Aerodynamic Derivatives Next, you need to define the aerodynamic derivatives CXU through CMU for the LL component, and CYB through CLR for the LD component. These nondimensional aerodynamic derivatives, which you can enter directly into the LL and LD components, are defined for a given flight condition. However, if you do so, you will only be defining a single flight condition, limiting the simulation to flights only near this flight condition. You can make your model more flexible by adding separate components to develop the aerodynamic derivatives for LL and LD. The LO (longitudinal aero derivatives) and LA (lateral aero derivatives) components connect automatically to LL and LD, allowing you to provide tables of aerodynamic derivatives as functions of Mach number. It is frequently the case that you have aerodynamic derivatives for only a few values of Mach but are interested in flight conditions over a range of Mach numbers. LO and LD interpolate to provide aerodynamic derivatives for flight conditions between the conditions for which you have data. In this tutorial, you will use the LO and LA components to define the aerodynamic derivatives for several flight conditions.
Add the LO component from the aero group to the schematic. Add the LA component to the schematic.
The LO output variables are identical to the aerodynamic derivative inputs to the LL component. This makes it possible to define the aerodynamic derivatives in the LO component and then automatically connect the LO to the LL component. The same method applies to the LA to LD data and connections. In this tutorial, you will enter the four flight conditions given in appendix C. You must first set the dimensions of the LO component to size the aerodynamic derivative matrix COF to allow you to input the four flight conditions.
Select the component data table menu Options > Change Component Dimensions. Set N=4.
EASY5 Home
Menu
Notice that the aerodynamic derivative input parameter COF was a vector sized 18 and was changed to a matrix sized 4 by18. The four rows are used to enter data for the four flight conditions. The 18 columns are used to enter the aerodynamic derivatives and are defined in Table 2- 3. Table 2-3 Column 1 2 3 4 5 6 7 8 9 M CXA XAD CXU XDE CZA ZAD CZU CZQ Definition of LO aero derivative matrix Column 10 11 12 13 14 15 16 17 18 ZDE CMA MAD CMU CMQ MDE CXO CZO CMO Contents
Contents
You can manually enter the aerodynamic derivative data given in appendix C into this matrix. However, this requires entering 72 data points (4 times 18). Instead of entering the data, you can load the data from an external text data file created for this tutorial.
Select the Matrix Editor File > Load menu. Load the data file ae_derivatives_lo.V4x18. This file contains the longitudinal aero
derivatives.
Select the file ae_derivatives_lo.V4x18. This will automatically load the data into the
matrix. Observe the first column of data; this displays the four different flight condition Mach numbers. Close the matrix editor. Repeat this procedure to define the aero derivative data in the LA component. Set the component dimension to 4. Edit the COF matrix and load the data from the external data file ae_derivatives_la.V4x16. The output of the LO component matches the inputs of the LL component. The same applies to the LA and LD components.
Connect the LO component to the LL component and connect the LA component to the LD
component. Atmospheric Disturbance As a final step in building the model, you will add a wind disturbance. The simplest method for introducing a disturbance into the airframe equations is to use the GU discrete gust component. GU will generate a (1.0 cosine) gust either as a function of time or as a function of the aircrafts position (gust
EASY5 Home
Menu
penetration). GU will connect auto-matically either to LL or LD. For this example, add two GU components, one for the longitudinal gust and one for the lateral gust. Connect the GU components to LL and LD. Your final model should be similar to the schematic shown in Figure 1.
Figure 1
Example 1
Table 2-4 Name AXS MAG TST LEN MOD FLG 3 10 1 5 1 1 Value
GU longitudinal gust component data Description Gust axis (3=Z) Gust peak magnitude (m/sec) Time at which gust begins (sec) Length of gust (sec) Mode (1=time) Flagon/off (1=on)
Leave the remaining parameters at the default value. Open the GU11 lateral gust component and enter the same parameters as the longitudinal gust, except set the axis parameter as AXS=2. You are finished building the model and defining the aerodynamic data. Before performing an analysis, create the executable model at Build > Create Executable. Linearized Analysis of the Model Before performing a simulation, you should build a linear model and examine the eigenvalues of the system to determine system stability by selecting Analysis > Linear > Linear Model Generation Analysis.
EASY5 Home
Menu
Set the Inputs and Outputs radio buttons to Yes. Define the inputs as
DE LL DP LL DA LD R LD DU LL W LL Q LL DT LL V LD P LD R LD PHILD
{delta-elevator angle}. {delta-throttle position}. {delta-aileron angle}. {delta-rudder angle}. {incremental forward velocity}. {z-body velocity}. {pitch rate}. {incremental pitch angle}. {y-body velocity}. {angular velocity about x-body}. {angular velocity about z-body}. {yaw angle}.
When the analysis is finished, EASY5 will automatically display the results, including the eigenvalues and the following matrices: A, B, C, D, modal (T), observability, and controllability matrices. The A and B matrices compare very well to the characteristic and control matrices in Etkin [1] when those matrices are converted to SI units. The output (C) matrix that maps the elements of the dummy state vectors of LL and LD into the named state variables is an identity matrix. The eigenvalues corresponding to the system matrices are
MODE 1 2 3 4 5 REAL -3.289695E-03 -7.266407E-03 -3.298844E-02 -0.371975 -0.561231 IMAGINARY 6.717886E-02 0.00000 0.946024 0.887420 0.00000 NATURAL FREQ 6.725936E-02 7.266407E-03 0.946599 0.962226 0.561231 DAMPING RATIO 4.891058E-02 1.00000 3.484943E-02 0.386578 1.00000
These modes agree very closely with those in [1]. They are Mode Name 1 4 2 5 3 Phugoid mode. Short-period longitudinal mode. Spiral mode. Rolling convergence. Lateral oscillation (Dutch roll).
Simulation Analysis Open the simulation analysis data form and enter the following parameters: Start Time= 0
EASY5 Home
Menu
Stop Time= 150 Time Increment= 0.1 Int. Method= BCS Gear (default) Plot Results= Yes
Define the plot variables as follows:
Display 1: WM2GU(3), WM2GU11(2) Display 2: Q LL, DT LL, NZ LL Display 3: DU LL, W LL Display 4: R LD, PHILD Display 5: V LD, P LD, PD LD Display 6: BETLD, ALPLL
Run the simulation by clicking [Execute & Close]
When the simulation is finished, the plotter automatically opens and displays the plot data. You specified axis 2 (Y) for the lateral gust and axis 3 (Z) for the longitudinal gust. In both cases, the gust magnitude was set to 10 m/s and the duration to 5 sec. The gust profile, zoomed in to show data from 0 to 6 sec, is shown in Figure 2.
10 Lateral Gust
m/sec
0 0
TIME
Time
Figure 2
Gust profile
EASY5 Home
Menu
The two plots in Figure 3 show the Phugoid and short period longitudinal modes. Note that the load factor computed in LL is the increment about the trim value.
Figure 3
EASY5 Home
Menu
The plots in Figure 4 show the lateral gust response. The spiral and the roll convergence mode are buried in the lightly damped Dutch roll response.
Figure 4
You have finished building a model of a simple airframe and simulating it. The following examples build on this model, adding sensors, control systems, and surface actuation. The examples add additional linear analyses, including frequency response and root locus analysis. You should review these examples and, if possible, build your own models. Before proceeding to the examples, we will present different methods of managing aerodynamic data. Additional ConsiderationsManaging Aerodynamic Data This section explores different ways to input and manage aerodynamic data. Managing dimensional, flight condition, and aerodynamic derivative data is the single biggest challenge you are likely to face in modeling aerodynamic flight using the AE libraryor any other modeling system. There are three standard methods in EASY5 for creating aerodynamic data and entering it into a model.
You may simply type the data into the appropriate parameter inputs. This works well for entering
the general aircraft data such as mass and inertia, and it works well if you are only interested in one flight condition. However, this is rarely the case, and therefore, it is good practice to use the other two methods for entering the flight conditions.
EASY5 Home
Menu
Load the data from external data files. Vectors, matrices, and tabular data can be generated
outside EASY5 and stored in data files using the format that the matrix editor can read. Then, using the matrix editor, load the array or tabular data into the model. See the EASY5 User Guide, chapter 10, for information on how to do this. For another simple way, use the Matrix Algebra Tool to create these external files and then import them into EASY5.
Use EASY5 auxiliary input files, which are used to store multiple sets of aerodynamic data and
can be applied to any analysis. It is good practice to use the third method of EASY5 auxiliary input files. In most cases, your derivative, dimensional, and flight condition data are already in machine-readable form, and it is much easier to convert that data into an auxiliary input file than it is to type it over. The EASY5 Reference Guide contains details of how to build these files in the Auxiliary Input Files section. The following provides a brief overview.
An auxiliary input file must be named with the suffix .ax according to the convention
<file_name>.ax where <file_name> is a name you specify to remind you of the file contents. You can also include the model name as <model_name>.<file_name>.ax (e.g., ae_demo1.nondimcoefs.ax).
Add comments to identify your data. Any line with an * in the first column is a comment. Begin a group of parameter specifications with the EASY5 key phrase
PARAMETER VALUES, The trailing comma is required if additional text appears on the same line.
Specify a scalar parameter with this statement:
<name> = <value>, where <name> is the full name of the parameter and <value> is the numerical value of the parameter. The trailing comma or four or more spaces is required as a delimiter if another phrase follows on the same line. Example: To set the dynamic pressure parameter, QBR, for component LL to a value of 10000 (N/m2), enter QBRLL = 10000
Specify a vector parameter with this statement:
<name> = <list_of_values> where <list_of_values> is a comma-delimited list of n values for a vector of length n. Example: To set the values for parameter XYZ(3) of component PQ, enter XYZPQ = 12.6, 19.8, 34.2
EASY5 Home
Menu
28
Specify an array parameter with the same statement as in the previous bullet. Data is loaded in
column order unless you specify otherwise. See the EASY5 Reference Guide for further details on other options. An example of the auxiliary input file Nondimcoefs.ax is shown in Figure 5. This shows only the first few lines of this file. Notice the array is defined by the row convention by using the R specified (e.g., R(1,1)). The following auxiliary input files are used in the examples that follow the tutorial:
Nondimcoefs.ax. Nondimensional aerodynamic derivatives for all four cases of
appendix C.
English1.ax. Dimensions and flight conditions for appendix C, case 1, in U.S.-common
units.
Si1.ax. Dimensions and flight conditions for appendix C, case 1, in SI units. English2.ax. Dimensions and flight conditions for appendix C, case 2, in U.S.-
common units.
Si2.ax. Dimensions and flight conditions for appendix C, case 2, in SI units.
* NONDIMENSIONAL DERIVATIVES - MACH = .2 , ALT = PARAMETER VALUES, COFLA, R(1,1) = .2 -1.0792 , 0 , 0 , 0 , .17945 -.30466 ,-.49536 , .17471 ,-.051224 , .016552 .14062 ,-.24182 ,-.36664 ,-.016024 ,-.11063 * NONDIMENSIONAL DERIVATIVES - MACH = .5 , ALT = PARAMETER VALUES, COFLA, R(2,1) = .5 -.90016 , 0 , 0 , 0 , .14351 -.20612 ,-.34142 , .20193 ,-.012635 , .016794 .12467 ,-.082519 ,-.21188 ,-.0041288 ,-.107 * NONDIMENSIONAL DERIVATIVES - MACH = .8 , ALT = PARAMETER VALUES, COFLA, R(3,1) = .8 -.87696 , 0 , 0 , 0 , .1146 -.27975 ,-.32948 , .30403 ,-.013859 , .0069713 .19462 ,-.040735 ,-.27367 ,-1.9728E-04 ,-.12567 * NONDIMENSIONAL DERIVATIVES - MACH = .9 , ALT = PARAMETER VALUES, COFLA, R(4,1) = ... ETC ... Figure 5 Auxiliary input file Nondimcoefs.ax
0 (FEET)
20000 (FEET)
40000 (FEET)
40000 (FEET)
common units.
Si3.ax. Dimensions and flight conditions for appendix C, case 3, in SI units. English4.ax. Dimensions and flight conditions for appendix C, case 4, in U.S.-common
units.
Si4.ax. Dimensions and flight conditions for appendix C, case 4, in SI units.
EASY5 Home
Menu
Si3.ax will be used to specify our flight condition for this and the following examples. SI units are the default for models built with AE library components. You must change the units specifier in the UN component to select U.S.-common units.
Guidelines for Running Example Models If you have not copied the demonstration example models used in this chapter, you should do so before proceeding. At a command prompt, enter easy5x -demo ae, or in the Windows operating system, select Start > Programs > EASY5 > Demos > Copy EASY5 Demo Files. When prompted, enter the tagname ae. Copying the example models will also copy all supporting files, such as predefined analysis data files for all analyses presented in this chapter. You should open these predefined data files when prompted. For example, when running a simulation, click the [Open] button at the bottom of the simulation analysis data form. You can then select a predefined simulation data form that has been filled out and is ready for you to execute. After the analysis has completed, the plotter will automatically pop up. In many cases, a layout plot file containing a plot layout that you can apply is included. It is recommended that if the plotter displays a layout file in the Opened Layout File window, select the layout file to apply the layout to the plot data. Building the Schematic The simplest representation of an airplane is that of the approximate, linearized, decoupled equations of longitudinal and lateral/directional flight. These equations are implemented in AE library components LL and LD. The LL and LD components are used when you are only interested in small motions about a specified flight condition. Models using the LL and LD components are ordinarily used to design and tune a control system about a specific flight condition. Because the equations are decoupled, it is very unusual to need both LL and LD in a single model. However, both will be used so you can observe both the longitudinal and lateral modes of the airplane. LL and LD are self contained, so you need only supply flight condition, dimension, and aerodynamic derivatives as parameters. You can make your model more flexible by adding separate components to develop the aerodynamic derivatives for LL and LDLO and LA. These components that connect
EASY5 Home
Menu
automatically to LL and LD, respectively, allow you to provide tables of aerodynamic derivatives as functions of Mach number. It is frequently the case that you have aerodynamic derivatives for only a few values of Mach, but you are interested in flight conditions over a range of Mach numbers. LO and LD interpolate to provide aerodynamic derivatives for flight conditions between the conditions for which you have data. The simplest method for introducing a disturbance into the airframe equations is to use a GU component. GU will generate a (1.0 cosine) gust either as a function of time or as a function of the aircrafts position (gust penetration). GU will connect automatically to either LL or LD. For this example, add a separate GU component for the longitudinal and the lateral gust. The schematic of the resulting model is shown in Figure 6. Note that each model with AE library components contains exactly one units specification component, designated UN.
Figure 6
Example 1
Parameterizing the Model Managing dimensional, flight condition, and aerodynamic derivative data is the single biggest challenge you are likely to face in modeling aerodynamic flight using the AE libraryor any other modeling system. As previously stated, you may simply type the data into the appropriate parameter inputs. However, even if you are interested in only one flight condition, it is good practice to use EASY5 auxiliary input files for your data. In most cases, your derivative, dimensional, and flight condition data are already in machine-readable form, and it is much easier to convert that data into an auxiliary input file than it is to type it over. The EASY5 Reference Guide contains details of how to build these files. Si3.ax will be used to specify our flight condition for this and the following examples. SI units are the default for models built with components from the AE library. You must change the units specifier to select U.S.-common units.
EASY5 Home
Menu
Linearized Analysis of the Model Before running a simulation, you should build the linear model to generate the eigenvalues to determine if the model is stable. Select Analysis > Linear > Linear Model Generation. The model generation analysis data form already defines a linear model with the control inputs (DE LL, DP LL, DA LD, DR LD) as the U vector input and the state variables (DU LL, W LL, Q LL, DT LL, V LD, P LD, R LD, PHILD) as the Y vector output. Execute the linear model generation. With both LL and LD in the model, the system matrix and the control matrix will contain both the longitudinal and lateral matrices. These matrices are given in Appendix C. For clarity, they are separated in the following resulting matrices.
EASY5 Home
Menu
SYSTEM MATRIX - A ST ST ST ST ST ST ST ST LL(1) LL(2) LL(3) LL(4) LD(1) LD(2) LD(3) LD(4) ST LL(1) -6.8701E-03 -9.0546E-02 3.8935E-04 0.000 ST LD(1) -5.5798E-02 -1.2649E-02 3.5595E-03 0.000 DE LL -5.7317E-05 -5.512 -1.158 0.000 DA LD 0.000 -0.1446 3.7831E-03 0.000 ST LL(2) 1.3953E-02 -0.3151 -3.3651E-03 0.000 ST LD(2) 0.000 -0.4331 -6.1452E-03 1.000 CONTROL MATRIX - B DP LL 0.000 0.000 0.000 0.000 DR LD 1.720 0.1140 -0.4853 0.000 ST LL(3) 0.000 235.9 -0.4285 1.000 ST LD(3) -235.9 0.4125 -0.1456 0.000 ST LL(4) -9.8 0.000 0.000 0.000 ST LD(4) 9.800 0.000 0.000 0.000
ST ST ST ST ST ST ST ST
The linear model generation analysis will generate the eigenvalues, modal (T) matrix, and the state variable matrices. These matrices compare very well to the characteristic and control matrices in Etkin [1] when those matrices are converted to SI units. The output (C) matrix that maps the elements of the dummy state vectors of LL and LD into the named state variables is an identity matrix. The eigenvalues corresponding to the system matrices are MODE 1 2 3 4 5 REAL -3.289695E-03 -7.266407E-03 -3.298844E-02 -0.371975 -0.561231 IMAGINARY 6.717886E-02 0.00000 0.946024 0.887420 0.00000 NATURAL FREQ 6.725936E-02 7.266407E-03 0.946599 0.962226 0.561231 DAMPING RATIO 4.891058E-02 1.00000 3.484943E-02 0.386578 1.00000
These modes agree very closely with those in [1]. They are Mode 1 4 2 5 3 Name Phugoid mode. Short-period longitudinal mode. Spiral mode. Rolling convergence. Lateral oscillation (Dutch roll).
Simulation In the previous section, you verified that the model is stable. You can now run a simulation by choosing the Analysis > Nonlinear > Simulation menu. The simulation data form is filled out and read to run. Notice that the auxiliary input files nondimcoefs and Si3 are used to apply to the analysis the aerodynamic data and coefficients to the analysis from case 3, at Mach 0.8 and altitude of 12,191 m.
EASY5 Home
Menu
Execute the simulation. The plotter will automatically open and display the results. Select the layout file named ae_demo1.simulation.rpl, to display the formatted results. Axis 2 (Y) for the lateral gust and axis 3 (Z) for the longitudinal gust were specified. In both cases, the gust magnitude was set to 10 m/sec and the duration to 2 sec. The gust profiles are shown in Figure 7.
10 Lateral Gust
m/sec
0 0
TIME
Time
Figure 7
Gust profile
EASY5 Home
Menu
The two plots in Figure 8 show the Phugoid and short period longitudinal modes. Note that the load factor computed in LL is the increment about the trim value.
Figure 8
EASY5 Home
Menu
The plots in Figure 9 show the lateral gust response. The spiral and the roll convergence modes are buried in the lightly damped Dutch roll response.
Figure 9
Building the Schematic We will begin with the lateral/directional linear model from example 1, using the methods suggested in Etkin [1] to add a yaw damper and a roll controller. However, the controllers will be represented as digital systems to more accurately model modern aircraft practice. The schematics in Figure 10 and Figure 11 show the five EASY5 submodels that make up example 2 and the airframe and environment submodel taken from example 1. An integrator was added to the airframe and environment submodel to compute the yaw angle (approximate) from the yaw rate developed by component LD. Note that while the overall
EASY5 Home
Menu
schematic shows both control loops in place, they were added to the model and tested one at a time, as described in sections Analysis of the Yaw Damper and Analysis of the Roll Controller.
Figure 10
Figure 11
EASY5 Home
Menu
Figure 12
Because the controllers are represented as digital systems, you will add samplers for the quantities p, r, and to be used as feedback variables. Lateral acceleration is an important measure of control system response, so you will also add a sampler for Vdot. Because all of the samplers will use the same sampling interval, you will drive the TAU for each of them from a single gain block, the output of which is connected to all the samplers using invisible connection lines to keep the schematic clean. This feature allows us to set the sampling interval for the entire suite of samplers with a single parameter, named T05, set to a sampling interval of 0.05 sec. This is so fast relative to the dynamics of the airframe that the sampling will have little effect on the system response. Figure 12 shows the sensor submodel.
Figure 13
The yaw damper uses the rudder to attempt to keep the yaw rate at the commanded value (zero). However, during a steady turn, the value of yaw rate is nonzero. Most aircraft control systems simply put a washout (high-pass) filter in the feedback path so that the yaw damper will not respond to the yaw rate in a turn. One significant advantage of a digital control system is that a washout filter of the form s/(s+a) can be synthesized exactly as opposed to the common analog approximation of (s+b)/(s+a). Figure 13
EASY5 Home
Menu
shows the yaw damper schematic. The filter sampling rate is driven by the same gain block as used to set the sensor sampling rates and the parameter values shown are those arrived at in section Analysis of the Yaw Damper. Note that the actuator and control surface dynamics are neglected; they will be added in example 3. The roll controller is simply a proportional-plus-derivative controller as shown in Figure 14. Actuator and control surface dynamics are neglected, and the gains are those from section Analysis of the Roll Controller.
Figure 14
The final submodel shown in Figure 15 represents the pilots inputs to the system. A pulse generator represents the roll control input so that you can later generate a turn command. Both pilot inputs are sampled at the same rate as the sensors.
Figure 15
Analysis of the Yaw Damper Setting the yaw damper gain and the washout filter breakpoint frequency is a matter of balancing the response of the loop at relatively high frequency with the need to minimize its low frequency response.
EASY5 Home
Menu
Choose Analysis > Linear > Transfer Function, open the yaw_open_loop transfer function data form, and run the analysis. The open-loop response is shown in Figure 16.
Figure 16
The loop gain at the Dutch roll frequency (0.16 Hz) is quite respectable, while the gain at near-DC is acceptably low. The gain margin is infinite, and the phase margin is about 90 deg. This loop closure should do a good job of reducing the response of the airplane to a gust such as that used in example 1. Behavior of the yaw damper during a coordinated turn will be examined in the following section. Open the sim_yaw_damper simulation data form and run the simulation. Figure 17 shows the response of the airframe and yaw damper to the 10-m/sec gust used in example 1. The Dutch roll mode is well damped, the rudder angle is modest, and the change in yaw angle after the transient dies away is very small.
EASY5 Home
Menu
Figure 17
Analysis of the Roll Controller Selecting gains for the roll controller requires balancing the need to maintain good damping with the desirability of relatively crisp response to pilot input. Open the roll_open_loop transfer function data form and run the analysis to yield the open-loop transfer function results (Figure 18). Gain and phase margin are both acceptable.
EASY5 Home
Menu
Figure 18
The next topic of interest is how the yaw damper and roll controller interact during a pilot-commanded maneuver. Examine the roll angle command (PG) component in the pilot input submodel. This defines a roll command of 0.25 rad (about 15 deg) for 60 sec. Open the sim_roll_cntrl simulation data form, created to set up this condition. In this data form, the temporary settings file wind_off is used to zero out the wind gust. Run the simulation and examine the plot output data. Figure 19 shows the response. The roll-rate trace shows a well-damped response to a step command. The roll angle settles at a value very close to the command. Yaw rate settles to a steady 0.01 rad/sec during the maneuver, and the sideslip angle during the maneuver is small. Even this very simple implementation does a pretty good job of coordinating the turn. Effect of Sampling Rate on System Response The sampling interval (TAU) for the control system was initially set to 0.05 sec. This value is so small relative to the dynamics of the airframe that the sampling has a negligible effect on the system response. However, when implementing a digital control system, the value chosen for sampling interval is of extreme interest because it effectively sizes the computers used in the system. Therefore, you should examine the effect of lowering the sampling rate (larger values of TAU) on the systems response. Transfer function analysis is a good way to take a quick look. Open-loop transfer functions allow us to take a first look at changes in stability margins. (Practical considerations such as delays and effects of redundancy management may be much harder to assess.) Closed-loop transfer functions such as the one
EASY5 Home
Menu
in Figure 20 allow us to take a quick look at changes in system response. This figure shows the change in closed-loop response from gust velocity to lateral acceleration (an important ride comfort measure) when the sampling rate is decreased from 100 Hz (TAU = 0.01) to 10 Hz (TAU = 0.1). As you might expect for a system as large and ponderous as a 747, the change is minimal.
Figure 19
EASY5 Home
Menu
Figure 20
EASY5 Home
Menu
Figure 21
Note that the outputs of the VX components have been renamed as PQR(3) (body angular rates), WD(3) (body angular accelerations), and ACB(3) (accelerations in body coordinates) so that they match the names that AC and RC expect. The roll control system also requires a roll angle measurement. You will add a Tustins method digital integrator (TI) to integrate the measured roll rate as a measurement of roll angle. The schematic in Figure 22 shows the modifications to the sensor submodel to add the sensor models and this integrator. Note that you are driving the sampling interval (TAU) for the digital integrator with the same sampling interval used throughout the control system. The gain component is used to set the global sampling rate, setting the parameter T05 = 0.05, and setting the connection line type to invisible to keep the schematic diagram clean.
EASY5 Home
Menu
Figure 22
Early in the design process, you are not likely to have specifications for the sensor dynamics to be used in the final design. In fact, one purpose of doing simulation is to help set such specifications. Begin by locating the sensors at the origin of body coordinates (LOC = 0,0,0) and setting the damping to 0.707. Do a root locus on the undamped natural frequency of the AC component. Open the root locus analysis data form and execute the root locus analysis.
EASY5 Home
Menu
Figure 23
The plot in Figure 23 shows that there is little or no motion of any but the sensor poles at parameter values above 3 or 4. It can be safely said that the sensor frequency response will not adversely effect the system if you set the undamped natural frequency to 10. A root locus on the undamped natural frequency of the RC component yields a similar conclusion. The effect on stability margins is yet to be determined.
EASY5 Home
Menu
Figure 24
Open the roll_open_loop transfer function analysis and run the analysis. This analysis sets the input as the roll command (PHI_C_SAMP) and the output as the measured roll (PHI_MEAS). The open-loop transfer function results of the roll control loop are plotted in Figure 24. The solid line is the response with sensor dynamics in place. The dashed line shows the response without sensor dynamics, obtained from the ae_demo2 model. This plot shows that the sensor dynamics do reduce the gain margin, although it is certainly adequate in both cases. You can now locate the sensors at a logical body station in the airframe. We chose to locate the sensors in an imaginary electronics rack immediately behind the flight deck (LOC = 21,0,-3 m). This data is entered into the temporary settings file accel_loc which can be applied to a simulation. Open the simulation data form sensors. In this setup, the roll command is turned off using the temporary settings file roll_cmd_0. Run the simulation and examine the plot data. The plot in Figure 25 compares actual to measured quantities for the discrete gust transient used in example 2. You could also rerun the transfer function to estimate the additional effect on gain margin. Adding Actuator and Control Surface Dynamics You are not likely to have good specifications early in the design process; you are more likely to be helping to set specifications. It is good practice to build a simple test model, as suggested in the HY
EASY5 Home
Menu
component data sheet, to help set parameters for the simulated actuators. An example of such a test model is shown in Figure 26. This model is for reference only and not meant for building.
Figure 25
Begin by connecting a hydraulic actuator (HY) component to a control surface (CS) component. You can roughly scale the sizes of the 747 rudder and aileron from drawings in appendix E of Etkin [1] and estimate the moment of inertia about the hinge line and the center of pressure as suggested in the HY component data sheet. Remember that the aileron model represents both left and right ailerons.
EASY5 Home
Menu
Figure 26
The procedure for estimating the actuator gains is a. Set the computed value for moment of inertia about the hinge line (IHH) and your estimate of center of pressure (CPS) in the CS component. b. Look up the aircraft velocity and dynamic pressure for the flight condition of interest. Set these values for the velocity (UVW) and dynamic pressure (QBR) in the CS component. c. Set the proportional, rate, and integral gains (KP, KR, KI) to nonzero values (1 is fine). d. Set the hydraulic gain (KH) to 1,000. The exact value is not critical, but this is usually a fairly large number. e. Set the commanded deflection (DC) to the maximum deflection required at this flight condition. For the rudder we used 0.035 rad (about 2 deg), and for the aileron we use 0.35 rad (about 20 deg). f. Do a steady-state analysis. Note the moment (M2 HY) at steady state. This is the moment required to cause a maximum steady-state deflection at the specified flight condition. Set KH to this value (1 volt of signal commands maximum required torque). If you dont have better information, set the maximum torque to 150% of this value. g. Set the rate gain and the integral gain (KR and KI) to zero and do a closed-loop transfer function from commanded deflection (DC HY) to deflection (D1 CS). Raise the proportional gain to bring the low frequency gain up to near 0 dB and the dominant poles to a reasonable frequency (1 or 2 Hz for a large control surface). h. Iterate a few times with transfer function and root locus analyses to achieve reasonable damping and to place the real pole (so-called load pole) at a reasonable value (10 to 20 rad/sec if you have no better information). This procedure yields an aileron component HYA: KH = 9,400, KP = 60, KR = 5, KI = 400, and a rudder component HYR: KH = 6,000, KP = 500, KR = 50, KI = 1,000.
EASY5 Home
Menu
Figure 27
Finally, investigate the finished subsystems response (Figure 26) to make sure that they are behaving reasonably. Figure 27 shows the open-loop responses of the aileron and rudder test models to the maximum step inputs and the closed-loop transfer functions of each. When performing the transfer function, set the commands to zero. Setting Control Surface Orientation. The Euler angle parameter, EUL(3), of the CS component sets the orientation of the surface with respect to the body coordinate system. EUL = 0,0,0 represents a surface with a hinge line in the same direction as the body z-axis (see CS component data sheet). The assumed order is yaw-pitch-roll, so set EUL = 0,0,/2 to represent the ailerons. It is good practice to put new subsystems into the model in parallel to check their behavior. Figure 28 shows how the actuator/control surface subsystems were added to the roll control and yaw damper submodels before being put into the control loops.
EASY5 Home
Menu
Figure 28
After verifying that the simulated rudder and aileron positions are similar (at least have the same sign) as the outputs DR and DA, the new subsystems were connected into the model.
EASY5 Home
Menu
Effect of Sensor and Actuator/Surface Dynamics on Model Response A first-order lag, 5/(s+5), was added to smooth the pilot roll input a bit. Without such a lag, the step changes in pilot input cause unrealistically high commanded actuator moments. Generate open-loop transfer functions to examine the effect of the new dynamics on stability margins. Open and run the roll_open_loop transfer function data form. This performs a frequency response analysis, with roll command (PHI_C_SAMP) as the input and measured roll (PHI_MEAS) as the output. Also open and run the yaw_open_loop transfer function data form. The results should be similar to Figure 29.
Figure 29
Finally, run a simulation of the roll maneuver described in example 2. This is setup in the simulation data form complete_sim. As you would expect, the gross behavior of the airplane is nearly identical to that of example 2. However, Figure 30 shows that there are significant changes in the transient behavior.
EASY5 Home
Menu
Figure 30
Wrap-up of Examples 1, 2, and 3 You began with a very simple, linearized model of the aircraft lateral and directional dynamics. First adding elements of a typical digital control system, you then added sensor, actuator, and control surface dynamics, without requiring detailed specifications for the subsystems and without writing modelspecific code. The result is a 19-state model that realistically represents all the major linear and nonlinear effects. (You can run the linear model generation analysis to obtain these results). Note that the state in the lag added to the pilot input has been frozen (does not appear in the following list). The eigenvalue sources are
Airframe Rate sensors Accelerometer Rudder/actuator Aileron/actuator Washout filter
EASY5 Home
Menu
19 SYSTEM EIGENVALUES 1 2 3 4 5 6 7 8 9 10 11 12 REAL 0.00000 0.00000 -0.164692 -0.210180 -0.725251 -2.86486 -5.20165 -6.19213 -6.60649 -7.07000 -7.51464 -16.1078 IMAGINARY 0.00000 0.00000 0.00000 0.696903 0.392516 0.00000 5.64594 9.61528 6.96047 7.07214 10.1548 0.00000 NATURAL FREQ. 0.00000 0.00000 0.164692 0.727908 0.824656 2.86486 7.67683 11.4366 9.59655 10.0000 12.6329 16.1078 DAMPING RATIO 0.00000 0.00000 1.00000 0.288745 0.879459 1.00000 0.677577 0.541430 0.688423 0.707000 0.594847 1.00000
Figure 31
Adding a Sensor Submodel Open and examine the sensors submodel. The schematic in Figure 32 shows the sensor submodel. Note that you are driving TAU for each of the sampled-data components from a single-gain block. These connection lines are made invisible to reduce connection line clutter.
EASY5 Home
Menu
Etkin [1] suggests a form for an altitude hold controller that requires measurement of pitch angle, pitch rate, and altitude. A rate sensor (RC) component was added to represent the sensor dynamics, sample its output, and integrate the sampled pitch rate to produce pitch angle. You will sample W from the LL component and integrate (with a sign change, because W and altitude rate have opposite signs) to form altitude.
Figure 32
Note:
Integrating the pitch rate to form pitch angle and integrating W to form altitude are common practice when using the linearized equations. As you will see in example 6, it is easy to add more realistic methods for measuring angular orientation and aircraft position.
As in example 3, you must load the pitch rate from LL into a three-vector to use as input to RC. You will freeze the two channels of measurement in RC that are not being used in this model. For example, states INP(1) and INP(3) are frozen. The sensor parameters are set to the same values as used in example 3: OME = 10 rad/sec, ZET = 0.707. Adding the Altitude Hold Controller Open and examine the altitude hold submodel. The actuator and sensor dynamics to the model were added exactly as described in example 3. From the 747 drawing in Etkin (p. 370), very rough measurements of the elevators were taken. Each elevator is about 8 by 30 ft (2.4 by 9.1 m). Both elevators are represented with one component, so the number is doubled to give S = 44 m2. A very pessimistic
EASY5 Home
Menu
estimate of the moment about the hinge line is 42,000 kg-m2. Open and examine the hydraulic actuator (HY) component. Gains were set using the procedure outlined in example 3. The results were, for a 5deg maximum deflection, KH = 45,000 N-m, KP = 100, KR = 16, KI = 380. The maximum moment was set to 150% of the moment required for maximum deflection (MMX = 67,500 N-m). The schematic in Figure 33 shows the altitude hold control submodel. The form of the altitude hold controller shown on page 277 of Etkin [1] is quite simple. The inner loop is a proportional-plus-derivative pitch angle controller. The outer loop that computes the commanded pitch angle simply compares commanded to measured altitude and applies a gain. The gains for the controller were set using root locus and transfer function analyses. and are KR = -0.84, KP =0.3, and KALT = -0.0005
Figure 33
Examining System Performance Open the simulation data form and run the simulation. You first tested the system response with the vertical gust disturbance of example 1. The controller did a reasonable job of returning the aircraft to commanded altitude and suppressing both the short-period and the Phugoid modes. The plots in Figure 34 and Figure 35 show the response of the system to a step change in altitude command from 12,200 m to 11,200 m. Figure 34 shows the long-term performance, and Figure 35 shows the elevator response and the load factor at the onset of the step command.
EASY5 Home
Menu
Figure 34
Further tuning of the gains could doubtless produce better damping. The load at the onset of the step command points out the need for some smoothing of the step change in altitude command. This example went together very quickly and resulted in a model with 11 eigenvalues. The sources of these eigenvalues are
Airframe Sensor Actuator/control surface Altitude integration Pitch angle integration
4 2 3 1 1
EASY5 Home
Menu
Figure 35
Figure 36
EASY5 Home
Menu
Aerodynamics Submodel
Figure 37 is the schematic of the aerodynamics submodel. Just as in example 1, the LO and the LA components supply the aerodynamic derivatives. However, instead of being used to compute the characteristic and control matrices for linearized equations of motion, these components supply inputs to an AF component that, in turn, computes forces and moments as inputs to the RB component.
The aerodynamic variables (AP) component provides the current flight condition based upon inputs from the RB component and from the environment submodel
Figure 37
Environmental Submodel Figure 33 is the schematic of the environment submodel. Example 1 used two GU components, one to drive the lateral dynamics and the other to drive the longitudinal dynamics. For this example, you load the lateral and longitudinal gusts into a vector using a vector summer from the GP library. The resulting wind velocity vector is an input to the AP component. If you wish to add turbulence to the model, then you would input the turbulence from a WM component to one of the GU components that would add its discrete gust to the turbulence
Figure 38
Environmental submodelschematic
EASY5 Home
Menu
The RB component drives the EA component that computes position information and drives the AT component. AT, in turn, provides atmospheric parameters to the aerodynamics submodel. Engine Submodel The schematic in Figure 39 is of the engine submodel. Each of the four engines is represented by an firstorder lag engine model (EN) component and a force and moment transformation (XF) component to transform the engine force vector into forces and moments in the CG coordinate system. It would certainly be possible to represent all four engines with a single EN/XF pair. However, it would then be necessary to manually compute the position and orientation of the single virtual engine. Moreover, it would then not be possible to simulate the disturbance of unbalanced engine thrust or, as in example 6, single-engine failure.
Figure 39
EASY5 Home
Menu
Engine locations were approximated from drawings in Etkin, appendix E. All four engines are controlled from a single throttle that is represented by a gain (GN) block from the GP library. Forces and moments from the four engines are summed using two vector summer blocks from the GP library. Airframe Submodel Finally, Figure 40 is the schematic of the airframe submodel. In addition to the RB component, this submodel contains two more vector summers from the GP library to sum the aerodynamic and engine forces and moments. Model Data In previous examples, auxiliary input files were used to input the nondimensional aerodynamic derivatives, used to define data for the aero derivative components LO and LA, and for the linear longitudinal/lateral equation in components LL and LD. However, in this example, the linearized components LL and LD are replaced by the nonlinear AF and RB components. As a result, the aero derivatives were added directly to the LO and LA components, and the data was entered directly into the nonlinear components. For example, you must add parameters to supply mass and moment data to the RB component. Maximum engine thrust was set to 70,000 N and the nominal throttle position to 0.65. The aircraft should be quite close to trim with this nominal data. To verify this, run the simulation for 200 sec. Open the trim simulation data form, which is set up with the wind turned off. Run the simulation. The results should be similar to Figure 41. This figure shows that the simulated aircraft is climbing very slowly and increasing its speed very slowly. This condition is close enough to trim for our current purposes.
EASY5 Home
Menu
Figure 40
EASY5 Home
Menu
Figure 41
Gust Response Verify the nonlinear models response to wind gusts. Open and run the gust_response simulation data form. In this simulation, you applied both lateral and vertical gusts of peak magnitude 10 m/sec to compare the response of the nonlinear model to those of the linear models of example 1. Figures 42 and 43 show that the responses compare quite closely.
EASY5 Home
Menu
Figure 42
You now have a nonlinear model that exhibits short-term behavior comparable to the linearized models but with the additional flexibility needed to simulate the long-term motion of the aircraft and the response of the vehicle to disturbances that affect both lateral and longitudinal motion.
EASY5 Home
Menu
Figure 43
EASY5 Home
Menu
You used the lateral dynamics model to build and test the yaw damper and roll controller models. You added sensor and control surface dynamics to that model. You used the longitudinal dynamics model and sensor and control surface dynamics based on the
response against that of the linearized lateral and longitudinal models. In this example, you will combine the nonlinear airframe model of the previous example, the roll controller and yaw damper from example 3, and the altitude hold controller from example 4 into a single model capable of reproducing the response of the aircraft to maneuvers that combine coupled lateral and longitudinal motion. It is easy to copy and combine models using the Edit > Copy a Group menu. This technique was used to copy the models from example 3 and example 4 into the schematic of the nonlinear airframe of example 5 and then delete the following unnecessary components:
The unit (UN) components. The linearized airframe components. The discrete gust components.
Control System Submodel The pilot inputs, sensors, controllers, and actuator and control surface components were collected into a single control system submodel (Figure 44). Gain blocks following each control surface were added to give you a convenient method for opening the control loops. The control system submodel schematic looked pretty complex, so the sensor models were collected into a submodel contained in the control system submodel (Figure 45). The integrations that computed pitch angle, roll angle, and altitude were replaced with samplers directly measuring the Euler angles from RB and the altitude from EA. The body angular rates (PQR) were also connected directly to the rate sensor. Finally, the control surface outputs were connected from the control system submodel to the AF component.
EASY5 Home
Menu
Figure 44
EASY5 Home
Menu
Figure 45
The Roll Control submodel contains the model of the roll controller, designed in the previous examples. In this example, the roll controller was changed from a proportional derivative (PD) controller to a proportional, integral, derivative (PID) controller. This was done to integrate out the bias error that occurs in the roll loop, because of the system being a type 0 system. Open and examine the Roll Control submodel. Figure 46 shows the new PID controller.
EASY5 Home
Menu
Figure 46
Gust Response Test You can test the response of the model by stimulating it with the lateral and vertical gusts used in the previous examples and comparing the response. Open and run the open_loop simulation data form. At least in the short term, the responses should be comparable (Figure 47 and Figure 48). Begin by opening all three control loops at the gain blocks in control system and running the gust response. The loops are opened using the temporary setting file open_loop. Using the temporary setting file does not destroy the nominal settings in the model. The airframe response should compare to that of example 1 and the control surface deflections should compare to those of examples 3 and 4. The open-loop control surface deflections compare quite closely to that of the linearized models. This is good evidence that the connections to the control system are correct
EASY5 Home
Menu
Now verify the closed-loop response and include wind gusts. Open the gust_response simulation data form and run the simulation. The control loops were then closed and the simulation repeated (Figure 49 and Figure 50). The response should correspond to the closed-loop responses of examples 3 and 4.
Figure 47
EASY5 Home
Menu
Figure 48
EASY5 Home
Menu
Figure 49
EASY5 Home
Menu
Figure 50
As expected, the closed-loop responses also compare closely to those of the linearized models. You are now ready to simulate a case that cannot be run using the linearized models.
EASY5 Home
Menu
Engine Out Simulation You will simulate the response of the aircraft to a catastrophic failure of one engine. A FORTRAN block containing a switch state was added o the engine submodel to trigger an engine failure at a specified time. When the switch state is triggered, the FORTRAN block changes the maximum engine thrust from its nominal value to zero. The specified maximum thrust was passed through a first-order lag with a 5-sec time constant and connected the lag output to the maximum thrust parameter of engine 4 (the starboard outboard engine). The simulation that produced Figure 51 failed the engine at time zero. This figure shows the decay in thrust and the control surface angles. The ailerons move to a steady value to balance the unbalanced engine roll torque. The rudder deflects in an attempt to cancel the sudden yaw rate, but the washout filter causes it to return to zero. The elevator deflection continues to build in an attempt to pitch the aircraft up and return to the commanded altitude.
EASY5 Home
Menu
Figure 51
EASY5 Home
Menu
Figure 52
Figure 52 shows the aircrafts response. The steady turn produces a continuing change in heading. The roll angle settles to zero because of the PID roll controller, and the pitch angle continues to build. The altitude is dropping, but the rate of change is slowing as the aircraft pitches up.
We do not present these results as exemplars of good design. Instead, we present them as examples of how simple it is to build a simulation capable of developing results with which good designs can be achieved with the EASY5 AE library.
EASY5 Home
Menu
Wrap-up of Examples 1 Through 6 In examples 1 through 4, you developed linearized models of lateral and longitudinal flight and used these models to build representations of three basic airplane control loops, yaw damper, roll controller, and altitude hold. In example 5, you developed a nonlinear model of airframe dynamics and showed that, in the short term, its response matched linearized approximations of the same dynamics. In example 6, you incorporated control systems developed in earlier examples into the nonlinear airframe model. Again, you showed that the short-term response of the controlled vehicle matched linearized approximations. You then used the nonlinear model of the controlled system to examine a maneuver that could not be simulated by the simpler, decoupled approximations. These examples show how the EASY5 AE library can help you with a step-by-step approach to model building. You used the simple linearized dynamic models to develop the control loops individually. You developed the nonlinear airframe model and then used the linearized approximations to verify the correctness of the nonlinear model. You then added the already-designed control loops to the nonlinear model. At each step, you reused the work of previous steps. The result of this process is a relatively high-order (39 continuous states, 10 discrete states, 13 switch states) model capable of simulating asymmetric, nonlinear dynamic responses. It is also capable of generating the linearized models needed for both control analysis and control design. Its modular nature makes it easy to understand and simple to expand as the design proceeds.
EASY5 Home
Menu
Figure 53
Top-level schematic
The simulated missile is a slender, air-launched device with three aft-mounted control surfaces and a fixed-nozzle solid rocket engine. It is equipped with a target seeker and guidance loop that computes commanded accelerations and an inner loop acceleration autopilot. The four submodels in the schematic (Figure 53) represent the entire engagement simulation. These submodels and the lower level submodels they contain demonstrate a modular approach to simulation development that is hierarchically organized, easy to understand, modular, and easy to enhance. Missile Dynamics Submodel An RB component and an EA component represent the rigid body dynamics of the missile. Forces and moments from the external forces submodel drive RB along with the CG, mass, moment, and product of inertia information generated. Gravity, altitude, and missile position in the inertial frame are supplied by EA.
EASY5 Home
Menu
Figure 54
Aerodynamic parameters (dynamic pressure, Mach, angle of attack, angle of sideslip, heading, and flight path angle) are computed by an AP component. If you need to simulate the disturbance of wind on the missile, add a WM or a GU component and connect one or both to the AP component. The schematic in Figure 54 shows the missile dynamics submodel. Target and Target Seeker Submodel The schematic in Figure 55 shows the target and target seeker submodel. The target is represented by a point mass (PM) component and an accompanying Earth model (EA) component to compute its altitude and position in the inertial frame. It was assumed that the target is moving with constant velocity but, of course, there is no reason to not drive the target velocity with tables or even to simulate it attempting to avoid the pursuing missile.
EASY5 Home
Menu
Figure 55
The target seeker senses the relative position between target and pursuer and computes commanded accelerations. If you wish to add noise corruption to the sensor measurements, then add bandwidthlimited noise (BW) components as needed and sum the noise with the corresponding measurements. The target seeker dynamics and guidance algorithms are not supplied in this example. Inner Control Loop (Autopilot) Submodel The assumed inner loop control is an acceleration autopilot. It senses accelerations and angular rates in the body coordinate system and commands control fin deflections to regulate the error between commanded and measured acceleration. The measurements are assumed to be perfect (except for the dynamics of the sensors), but if you wish to add noise corruption to the sensor measurements, then add bandwidth-limited noise (BW) components as needed and sum the noise with the corresponding measurements. Autopilot equations are not supplied in this example.
EASY5 Home
Menu
Figure 56
The schematic in Figure 56 shows the inner loop control submodel. External Forces Submodel Forces and moments are all computed as three-vectors. Figure 57 shows how two vector summer blocks from the GP library were used to sum forces and moments from body aerodynamics, control surface aerodynamics, and the engine.
Figure 57
EASY5 Home
Menu
The engine submodel must also compute the current mass, CG location, and moments of inertia, because these quantities are primarily functions of fuel burn rate.
Body Aerodynamics Submodel
Assume that the nondimensional body aerodynamic coefficients (Cx, Cy, and Cz) are all functions of Mach, angle of attack, and angle of sideslip. You use three independent-variable table lookup blocks (FW) from the GP library for these coefficients. An obvious addition to the AE library would be a specialpurpose FW block that looked up several functions of three independent variables. Mach, angle of attack, and angle of sideslip are supplied by the AP component. The form for computing forces from the nondimensional coefficients is
Fx
Qbar S L C x
Dynamic pressure (Qbar) is provided by AP. The forces in body and the center of pressure are used to compute moments in CG coordinates by an XF (force and moment transformation) component. Assume that the center of pressure is constant, but it can be driven as a function of the flight condition if it varies significantly. The schematic in Figure 58 shows the body aerodynamics submodel.
Figure 58
EASY5 Home
Menu
Assume that the nondimensional aerodynamic coefficients for the control surfaces are also functions of Mach, angle of attack, and angle of sideslip. Also assume that the coefficients are different for each control fin. As with the body aerodynamics, FW components from the GP library were used to look up the nondimensional aerodynamic coefficients. Mach, angle of attack, and angle of sideslip are provided by the AP component. The form for computing forces from the nondimensional coefficients is
F x1
Qbar S L C x1 1
Dynamic pressure (Qbar) is provided by AP, and the surface deflection (1) is provided by the autopilot submodel. The control surface forces in body coordinates and the fin locations are used to compute moments in CG coordinates by an XF (force and moment transformation) component. The schematic in Figure 59 shows one of the three control surface submodels. The form is identical for all three.
Figure 59
The schematic in Figure 60 shows how two vector summer blocks (MF) from the GP library were used to sum control surface forces and moments.
EASY5 Home
Menu
Figure 60
Engine Submodel
Assume that engine thrust is a function of time-since-engine-lightoff and altitude. You will use an FY component from the AE library for the thrust table. Even though there is only one dependent variable, there is a small speed advantage to using an AE library FY component instead of the corresponding GP library component. Altitude is supplied by the EA component in the missile dynamics submodel. You will add a FORTRAN block containing a switch state to light the engine at a specified time and to compute time-since-engine-lightoff. The engine thrust is scalar, but the following XF component that transforms the thrust into body coordinates and computes moments because of thrust requires a three-vector input. You can use a scalarto-vector (SV) component from the GP library to form a three-vector. The schematic in Figure 61 shows the components that compute engine forces and moments.
EASY5 Home
Menu
Figure 61
Changes in missile mass, center of gravity location, moments, and products of inertia are largely due to the burning of solid rocket fuel. Therefore, the engine model is a logical place to compute these quantities. Assume that CG location, mass, and moments of inertia are all functions of time-since-enginelightoff. Also assume that the products of inertia are small, a typical assumption for a nearly symmetric vehicle. If products of inertia are significant and if they change significantly, then you would simply add more columns to the FU component from the AE library used to contain the tables. You will use differentiators from the GP library to form the rate of change of CG location, rate of change of mass, and rates of change of moments of inertia. If the tables have only a few values or if the slopes change significantly at table points, then it is advisable to use sampled data components to form a simple difference approximation to these derivatives rather than use differentiator components. The schematic in Figure 62 shows how this submodel computes CG, mass, moments of inertia, and the rates of change for the rigid body dynamics component.
EASY5 Home
Menu
Figure 62
Wrap-up of Example 7 This example showed you how quickly a schematic of relatively complex aerospace vehicle simulation can be assembled using components from the EASY5 AE library. Addition of components or code to compute body and control surface aerodynamic forces, the dynamics for the proposed target seeker, and data for the vehicle being designed would turn this schematic into a tool with which the guidance and the control loops could be designed.
EASY5 Home
Menu
EASY5 Home
Menu
This section contains a data sheet for each component in the current release of the EASY5 AE library. The components in the following sections are arranged alphabetically and contain the inputs, outputs, equations, and theories behind the components. The components can be grouped into six divisions as follows.
Aero Group
AF: Aerodynamic Forces and Moments AP: Aerodynamic Parameters 101 153 169 95
Environment Group
AT: Standard Atmosphere 105 109 BW: Bandwidth-Limited (Pink) Noise EA: Earth Model 121 135 141
GU: Discrete (1-Cosine) Single-Axis Gust WM: Wind (Turbulence) Model 197
Instruments Group
AC: Three-Axis Accelerometer RC: Three-Axis Rate Sensor VA: Velocity and Acceleration 91 185 193
Control Group
CS: Rigid Control Surface 115
EASY5 Home
Menu
127
205
EASY5 Home
Menu
EASY5 Home
Menu
Three-Axis Accelerometer
AC
EASY5 Home
Menu
92 AC
(Instruments)
S(3), 2
INPUTS Physical Quantity ACB(3) PQR(3) WD(3) LOC(3) EUL(3) LIM SLM OME ZET SCF
*Assumed
Port Number -
Description Acceleration in body axes Angular velocity in body axes Angular acceleration in body axes Location of sensor in body frame Sensor misalignment angles* Limit on measured acceleration Slew (acceleration rate) limit Undamped natural frequency of sensor Accelerometer scale factor (default = 1) rad/sec rad/sec2 m [ft] rad m/sec2
Physical Quantity Port Number S(3) RT(3) AC(3) INP(3) INR(3) RBI(3) STA(3)
*
Description Measured acceleration in sensor axes Slew (acceleration rate) Slew rate Internal continuous state Internal continuous state Internal switch state Internal switch state
*
Units typically Volts typically Volts/sec typically Volts/sec2 none none none none
2 2 2 -
STA represents the state of the finite state machine used to control limiting. See following theory section.
EASY5 Home
Menu
AC 93
Description AC represents a three-axis accelerometer located at a user-specified body station (location with respect to the body coordinate system). The sensor axes can be misaligned by a user-specified amount. The sensor dynamics are represented by a second-order transfer function with limits on output (measured acceleration) and slew (output rate). You can also specify a scale factor for the measured accelerations to either represent sensory inaccuracy or a unit conversion (typically to volts). Usage The rigid body (RB) component will connect automatically to AC to provide all nonparametric inputs. Theory Computation of acceleration at specified body station is acc = acb + wd x loc + 2w x (w x loc) where acb = acceleration with respect to the body coordinate system loc = location of accelerometer in body axes w =angular velocity of body about body axes wd =angular acceleration of body about body axes. Sensor misalignment. Sensor misalignment is represented by a set of Euler angles. The assumed Euler angle order is pitch-yaw-roll. Begin with the sensor axes aligned with the body axes. Yaw through the first Euler angle, pitch through the second, and roll through the third to reach the sensor axes.
Tip:
If the sensor misalignment is small, the Euler angle order is not significant. For example, if the misalignment is 5 deg in each axis, then the maximum error resulting from any of the six permutations of the order is less than 1%.
Finite state machine. AC uses a finite-state machine to control the limiting. Limiting is applied to each axis independently. The state of limiting on each axis is represented by switch-state STA(3). The values STA takes are
0 linear (no limiting). 1 on positive output limit. -1 on negative output limit. 2 on positive output rate limit. -2 on negative output rate limit.
EASY5 Home
Menu
94 AC
Sensor transfer analysis. In the absence of limiting, each axis of the accelerometer is represented by
S2 OME 2 SCF ----------- = ---------------------------------------------------------------------------ACB S2 S --------------- + 2 ZET ------------ + 1.0 OME OME 2
References 1. G. Housner and D. Hudson, Applied mechanics: dynamics (Princeton, N.J.: Van Nostrand, 1950). 2. S. McKuskey, Introduction to advanced dynamics (Reading, Mass.: Addison Wesley, 1962).
EASY5 Home
Menu
EASY5 Home
Menu
96 AF
(Aero)
Aero parameters Body dynamics Control inputs Aero forces and moments
DU
INPUTS Physical Quantity B S CBR AXS U0 ALP ALD BET BED QBR PQR(3) UVW(3) VB DA DE DR Port Numbe r PARAMETERS Aerodynamic reference length Span Chord Derivative axis system selector, 0 = body axes (default), other = wind axes Trim forward velocity AERO PARAMETER INPUTS Angle of attack, Rate of change of angle of attack Angle of sideslip, Rate of change of angle of sideslip Dynamic pressure Body angular velocity in body axes Body velocity in body axes Total velocity CONTROL SYSTEM INPUTS Aileron angle Elevator angle Rudder angle LATERAL DERIVATIVES rad rad rad rad rad/sec rad rad/sec N/m2 [lb/ft2] rad/sec m/sec [ft/sec] m/sec [ft/sec] m [ft] m [ft] m [ft] none m/sec [ft/sec]
Description
Units
EASY5 Home
Menu
AF 97
INPUTS Physical Quantity CYB YBD CYP CYR YDA CLB LBD CLP CLR LDA
* * * *
Port Numbe r -
Description Cy influence of on y-force Cy-dot influence of rate of change of on y-force Cyp influence of roll rate on y-force Cyr influence of yaw rate on y-force Cydaileron influence of aileron angle on y-force Cydrudder influence of rudder angle on y-force Cl influence of on rolling moment Cl-dot influence of rate of change of on rolling moment Clp influence of roll rate on rolling moment Clr influence of yaw rate on rolling moment Cldaileron influence of aileron angle on rolling moment Clrudder influence of rudder angle on rolling moment Cn influence of on yawing moment Cn-dot influence of rate of change of on yawing moment Cnp influence of roll rate on yawing moment Cnr influence of yaw rate on yawing moment Cndaileron influence of aileron angle on yawing moment Cndrudder influence of rudder angle on yawing moment LONGITUDINAL DERIVATIVES Cx influence of on x-force Cxu influence of perturbation in forward speed on x-force Cxde influence of elevator angle on x-force Cz influence of on z-force 1/rad
Units 1/(rad/sec) 1/(rad/sec) 1/(rad/sec) 1/(rad) 1/(rad) 1/(rad) 1/(rad/sec) 1/(rad/sec) 1/(rad/sec) 1/(rad) 1/(rad) 1/(rad) 1/(rad/sec) 1/(rad/sec) 1/(rad/sec) 1/(rad) 1/(rad)
YDR*
NDR*
EASY5 Home
Menu
98 AF
INPUTS Physical Quantity CZU CZQ ZDE* CMA MAD CMU CMQ MDE
* *
Port Numbe r -
Description Czu influence of perturbation in forward speed on z-force Czq influence of pitch rate on z-force Czdelevator influence of elevator angle on z-force Cm influence of on pitching moment
Cm-dot influence of rate of change of on pitching 1/(rad/sec) moment Cmu influence of perturbation in forward speed on pitching moment Cmq influence of pitch rate on pitching moment Cmdelevator influence of elevator angle on pitching moment TRIM FORCES AND MOMENTS Trim x-force coefficient Trim z-force coefficient Trim pitching moment coefficient 1/(m/sec) [1/(ft/sec)] 1/(rad/sec) 1/(rad)
OUTPUTS Physical Quantity MAB(3) FAB(3) DU UU0 Description AF computes aerodynamic forces and moments using nondimensional aerodynamic derivatives and current body velocities. It is part of the set of components from which you can assemble lateral-direction, longitudinal, or six-degree-of-freedom airplane models. Port Number Description Aerodynamic moments in body axes Aerodynamic forces in body axes Perturbation in forward speed (VB-UUO) Internal quantity, continuous state N [lb] m/sec [ft/sec] m/sec [ft/sec] Units N-m [lb-ft]
EASY5 Home
Menu
AF 99
Usage The aerodynamic parameters (AP) connect automatically to provide aerodynamic parameter inputs. Rigid body (RB) or point mass (PM) connect automatically to provide body inputs. Longitudinal aerodynamic derivatives (LO) and lateral aerodynamic derivatives (LA) connect automatically to provide aerodynamic derivatives. You can also set the aero derivatives locally as parameter values. Theory AF uses the general case method specified in Etkin (p. 116) to dimensionalize the nondimensional aerodynamic coefficients. Internal state UUO is used to capture the initial forward velocity so that incremental forward velocity (DU) can be calculated. Equations for the aerodynamic forces and moments are
C bar U d F X = Q bar S C X + C XU ------ + C X E E + Q bar S ---------- C XAD ------ + Q bar SC xo 2U 0 dt U0 B d F Y = Q bar S C Y + C YR ( R + C YA A ) + Q bar S --------- C YP p + C YR r + C YBD ----- 2U 0 dt C bar U d F Z = Q bar S C Z + C ZU ------ + C YA A + Q bar S ---------- C YP p + C YR r + C YBD ----- + Q bar SC ZO 2U 0 U0 dt d B M X = Q bar SB ( C L + C LA A + C LR R ) + Q bar SB --------- C LBD ----- + C LP p + C LR r dt 2U 0 C bar U M Y = Q bar SC bar C M + C MU ------ + C ME E + Q bar SC bar --------- 2U 0 U0 d C MAD ------ + C MQ q + Q bar SC bar C mo dt
If you specify that the derivatives are in wind axes, then AF forms the transformation from body to wind axes from and , transforms the velocities to wind axes, computes the forces and moments, and transforms the forces and moments back to body axes. References 1. B. Etkin and L. D. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996).
EASY5 Home
Menu
100 AF
EASY5 Home
Menu
Aerodynamic Parameters
AP
EASY5 Home
Menu
102 AP
(Aero)
UW(3) RHO, VS UVW(3) M, ALP, BET, QBR, VTA VB, UWB(3), UT(3)
INPUTS Physical Quantity RHO VS UW(3) UVW(3) TNB(3, 3) TC Port Number Air density Velocity of sound Wind velocity in nonrotating frame Velocity of body in body coordinates Transformation from nonrotating to body frame Time constant used in approximate differentiation to find ALD and BED Description Units kg/m3 [slugs/ft3] m/sec [ft/sec] m/sec [ft/sec] m/sec [ft/sec] none sec
OUTPUTS Physical Quantity M ALP BET ALD BED VTA VB QBR UWB(3) UT(3) AAA BBB Port Number Mach number Angle of attack Angle of sideslip Rate of change of angle of attack Rate of change of angle of sideslip Magnitude of velocity without wind Magnitude of velocity with wind Dynamic pressure Wind velocity in body frame Body + wind velocity in body frame Internal state used in computing ALD Internal state used in computing BED Description rad rad rad/sec rad/sec m/sec [ft/sec] m/sec [ft/sec] N/m2 [lb/ft2] m/sec [ft/sec] m/sec [ft/sec] Units none
EASY5 Home
Menu
AP 103
Description AP computes various aerodynamic parameters both for output and for use in computing aerodynamic forces and moments. Usage Inputs to AP come from the standard atmosphere component (AT) and from the body dynamics comonent being used (RB or PM). All these components automatically connect to AP. Theory See component code.
EASY5 Home
Menu
104 AP
EASY5 Home
Menu
Standard Atmosphere
AT
EASY5 Home
Menu
106 AT
(Environment)
ALT T P RHO VS
ATV, KV
INPUTS Port Number ALT TAB(M,6) Altitude User-supplied atmosphere table (see text) Description m [ft] Units
OUTPUTS Physical Quantity ATV(5) T P RHO VS KV Description AT looks up the five stated atmospheric variables as a function of altitude. Usage Use AT to provide atmospheric variables wherever needed in your model. Theory AT has atmospheric tables taken from Etkin and derived from Mitzner built in. Etkin states that these tables are very close to those printed in the U.S. Standard Atmosphere. If you do not specify otherwise, Port Number Description Atmospheric variables Temperature [ATV(1)] Pressure [ATV(2)] Density [ATV(3)] Velocity of sound [ATV(4)] Kinematic viscosity [ATV(5)] Units See list deg K [R] N/m2 [lb/ft2] kg/m3 [slugs/ft3] m/sec [ft/sec] m2/sec [ft2/sec]
EASY5 Home
Menu
AT 107
AT will use these tables by calling a subroutine that contains them. AT will provide outputs in the unit system (SI or U.S.-common) selected in the Units Specification (UN) component. If you wish to use your own atmospheric tables, then supply values for table TAB. Specify variable dimension M as the number of altitude points in your tables. See the EASY5 User Guide if you need help in setting variable dimensions. Place your atmospheric data in the columns of TAB in the following order:
Column 1 2 3 4 5 6
You must supply data for density and velocity of sound if AT is to work correctly with the AE library components it supports. If you do not have data for other variables, then leave the columns blank.
Hint:
Use an EASY5 auxiliary input file to specify your atmospheric data. The format for this data is PARAMETER VALUES,TABAT <m values for altitude separated by commas> <m values for temperature separated by commas> <m values for pressure separated by commas> <m values for density separated by commas> <m values for velocity of sound separated by commas> <m values for kinematic viscosity separated by commas>
EASY5 Home
Menu
108 AT
The plots below show the four primary outputs from the built-in tables of AT, in SI units:
Figure 1
References 1. B. Etkin and L. D. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996).
EASY5 Home
Menu
EASY5 Home
Menu
110 BW
(Environment)
S,2 (N)
Port Number -
Description Breakpoint for bandwidth limiter On-off flags, 1 = on [default], other = off RMS of noise to be generated Sampling interval Random number seed
2
RMS(N)2
2Default
Default N = 0 represents a scalar bandwidth-limited noise. seed supplied for convenience only. The seed should be at least 1 million. OUTPUTS Physical Quantity S(N) SMP Port Number 2 Description Vector of bandwidth-limited noise (continuous states) Internal quantity (sample state) none none Units
Description BW generates a vector of bandwidth-limited Gaussian noise sources, so-called pink noise, of userspecified RMSs. BW uses a first-order lag to roll off frequencies higher than the specified breakpoint. The length of the vector is set by mode variable N. The default length, N = 0, generates a single noise source. Each element of the vector can have a different RMS, and each element can be turned on or off independently. BW automatically freezes its states for any analysis except simulation.
EASY5 Home
Menu
BW 111
Usage You typically use BW to generate a vector of noise sources to corrupt an otherwise perfect measurement. It is recommended to use BW for this purpose instead of the Gaussian noise source component, GA. See discussion in the following theory section. BW verifies that the user-specified sampling frequency is high enough to reasonably represent the firstorder lag specified by the breakpoint frequency. EXAMPLE: Select a breakpoint of 10 rad/sec. The rule of thumb used is one sample/sec per rad/sec, so the sampling frequency must be at least 10 samples/sec (TAU = 0.1). Theory BW uses the random number generation scheme described in the GA component datasheet. Be careful when injecting pseudo-random noise into a digital simulation. The numbers generated by GA and by the random number generation scheme used in BW represent samples drawn from a white noise source, that is, a noise source of theoretically infinite bandwidth. The process of sampling introduces the possibility, and the certainty in the case of an infinite bandwidth source, of frequency aliasing. This phenomenon, well-known in digital signal processing circles, results in a distortion of the spectral content of a signal by aliasing energy at frequencies higher than the Nyquist frequency into the primary strip (frequencies below the Nyquist frequency). In physical systems, you can avoid frequency aliasing by using an analog filter to bandwidth-limit a signal before it is sampled. In a digital simulation, the corresponding method is to suitably adjust the magnitude of the pseudo-random number stream and then pass that stream through a representation of an analog filter. If done appropriately, the resulting analog signal has little or no energy at frequencies above the Nyquist frequency with which it was sampled (random numbers drawn), and the RMS of the output will be very close to that request.
EASY5 Home
Menu
112 BW
The following figures show the output of BW (configured as default to generate a scalar noise source), the mean, and the RMS of the BW output.
Figure 2
EASY5 Home
Menu
BW 113
Figure 3
You may be surprised at how long it takes for the mean to settle to near zero and the RMS to settle to the commanded value. This points out an important issue: When injecting noise into your model, be prepared for long simulation runs if you expect to achieve stationary performance. References 1. S. Anderson, unpublished correspondence (Seattle: The Boeing Company, 1985). 2. F. Hoblit, Gust loads on aircraft, concepts and applications (Washington, D.C.: AIAA Education Series, 1988). 3. R. Sedgewick, Algorithms (Reading, Mass.: Addison Wesley, 1983).
EASY5 Home
Menu
114 BW
EASY5 Home
Menu
EASY5 Home
Menu
116 CS
(Control Components)
M, UVW, QBR
D, DD
MAE
INPUTS Physical Quantity M UVW(3) QBR EUL(3) S IHH CPS CDS 1 Port Number Description Applied moment from actuators Velocity (including wind) in body axes Dynamic pressure Euler angles describing orientation of surface (see usage section) [default = 0, 0, 0] Control surface areas Units N-m [lb/ft] m/sec [ft/sec] N/m2 [lb/ft2] rad m2 [ft2]
Control surface moment of intertia about the hinge kg-m2 [slug-ft2] lines (see theory section) Distance from hinge line to CP (see theory section) Control surface drag coefficient [default = 1.0] m [ft] none
OUTPUTS Physical Quantity D DD MAE Description CS represents a rigid control surface with actuator force applied at a single point. You can orient CS to represent a rudder, left/right elevator, or left/right aileron (see following usage section). CS allows you to add a measure of control surface motion detail to your model without requiring exhaustive amounts of aerodynamic or mechanical data. Port Number 1 1 Description Control surface deflection delta (continuous state) Control surface deflection rate (continuous state) Aero moment on surface rad rad/sec N-m [lb-ft] Units
EASY5 Home
Menu
CS 117
Usage
Use CS and an accompanying actuator component (HY) in your model to add detail about control surface motion under realistic aerodynamic loading. However, CS does not require extensive data either about the mechanical details of the surface or about the aerodynamics of the surface. Moreover, the purpose of CS is to make the simulation of control surface deflection more accurate, not to compute aero forces and moments to replace the use of control surface aero derivatives. Mechanical and Aerodynamic Description of the Control Surface. CS assumes that the surface is a uniform, rigid panel specified by its area and moment about its hinge line.
Hint:
If you do not know the moment of inertia about the hinge line, assume
mW I hh = ----------3
2
where m is the mass and W is the distance from root to tip. Surface aerodynamics are represented by a single coefficient, CD, with a default value of 1.0 (flat plate) and a center of pressure (CP), located by its distance from the hinge line as shown in the side view in Figure 66.
Hint:
If you do not know the location of the CP, assume that it is located at about 50 percent of the distance from root to tip.
Hinge line
CP
Direction of motion
Figure 4
Actuator force is applied to the surface at a single point defined as shown in the top view in Figure 67. A positive moment will cause a positive deflection .
EASY5 Home
Menu
118 CS
Direction of motion
Figure 5
Control Surface Orientation. The orientation of the undeflected control surface is specified by a set of Euler angles that define a surface coordinate system as shown in Figure 68.
Xcs Ycs
Direction of motion
Zcs
Figure 6
The Euler angles (in yaw-pitch-roll order) describe how to rotate the surface coordinate system. Begin with the body axis system and the surface system aligned. Rotate first about the Zcs-axis, then about the Ycs-axis, and then about the Xcs-axis. This scheme allows you to arbitrarily orient the surface. The default Euler angles represent a vertical control surface such as a rudder. For a horizontal surface such as an aileron or elevator set, EULCS=(0,0,/2). For an individual elevator or aileron, set EUL = (0,0,/2) or EUL = (0,0,/2) as appropriate. Theory CS is implemented as a macro supported by a subroutine that computes the aerodynamic moment about the hinge line. Apart from initialization, the computation sequence is
Transform the velocity to deflected control surface coordinates. Compute the aerodynamic moment acting to move the surface. F aero = Q bar S C d W cs F ycs = F aero --------------------------------------------------2 2 2 12 ( U cs + V cs + W cs ) M zcs = F ycs C p Compute the second derivative of surface deflection.
EASY5 Home
Menu
CS 119
References 1. B. Etkin and L. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996). 2. W. Kolk, Modern flight dynamics (Englewood Cliffs, N.J.: Prentice Hall Space Technology Series, 1961). 3. S. McKuskey, Introduction to advanced dynamics (Reading, Mass.: Addison Wesley, 1962).
EASY5 Home
Menu
120 CS
EASY5 Home
Menu
Earth Model
EA
EASY5 Home
Menu
122 EA
(Environment)
V,1 G,1
Port Number -
Description Mode selector, 0 = flat, 1 = spherical (default), 2 = zonal harmonic Velocity of body in nonrotating frame* Initial heading, positive east of north Initial longitude, positive east of zero Initial latitude, positive north of equator Initial altitude
the RB component data sheet or appendix B for definition of the nonrotating frame. OUTPUTS
Port Number -
Description Position of body in inertial Altitude Heading, positive east of north Rate of change of altitude Latitude, positive north of equator Longitude with respect to a nonrotating Earth Longitude with respect to a rotating Earth
4
Units m [ft]
3
frame1,2
2See
See the theory section or appendix B for definition of the inertial frame. the usage section for information on initial conditions for POS.
EASY5 Home
Menu
EA 123
3 4
See the RB component data sheet for definition of the nonrotating frame. Earth rotational velocity is defined in component UN.
Description EA computes the acceleration caused by gravity for a flat, spherical, or zonal harmonic Earth model. It also computes basic navigation quantities (altitude, altitude rate, longitude, latitude, and heading). Usage EA works with body dynamics components RB and PM to complete the translational equations of motions for models in which the simulation time is long enough to warrant consideration of motion with respect to Earth. EA automatically connects to RB and PM. Setting Initial Position. Initial altitude, initial latitude, and initial longitude establish the origin of the inertial frame. If you specify initial conditions for POS, these are relative to that origin. Therefore, if you are simulating more than one body and wish to measure positions with respect to the same inertial frame, specify the same initial altitude, latitude, and longitude for each and use initial conditions on POS to specify relative positions. Choice of Gravity Model. If you are interested only in short-term motion of the vehicle, choose the flat Earth model (MOD = 0). This is the simplest gravity model, and it yields a very modest increase in simulation speed. If your simulated vehicle will traverse a degree or two of latitude or longitude, then choose the spherical Earth model (default MOD = 1). This is an inverse square gravity model. If your simulated vehicle will traverse a significant fraction of a great circle (or is in orbit), choose the zonal harmonic Earth model. This is a Lengendre polynomial model that reflects the fact that the Earth is not spherical. It will modestly slow the simulation down. Theory EA defines a nonrotating Earth-centered coordinate system. This system is defined at initial time as follows: Xec points north from the center of the Earth, Zec points to 180 deg longitude from the center of the Earth, and Yec completes the right-handed X-Y-Z set (Figure 69). The coordinate system does not rotate with the Earth. Astrodynamic constants (Earth radius, gravitational constant, and Earth rotational rate) are supplied by component UN.
EASY5 Home
Menu
124 EA
YEC
Equator
Figure 7
longitude.
Given also the initial heading, compute the coordinate transformation from the body nonrotating
Note:
Continuous states POS(3) are the position of the body with respect to the initial position.
Transform the given velocity to the Earth-centered frame to form the derivatives of POS(3). Given current values of latitude and longitude, compute the transformation from the nonrotating
EASY5 Home
Menu
EA 125
XNED
YNED
ZNED
LAT LON
Figure 8 of climb.
Transform the given velocity to the local north-east-down frame and compute heading and rate Compute the acceleration due to gravity in the local north-east-down frame. Transform the acceleration due to gravity back to the body nonrotating frame.
References 1. R. Bate et al., Fundamentals of astrophysics (New York: Dover, 1971). 2. B. Etkin and L. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996). 3. S. McKuskey, Introduction to advanced dynamics (Reading, Mass.: Addison Wesley, 1962). 4. J. Tietze, A gravity model for all seasons (unpublished technical note), (Seattle: The Boeing Company). 5. B. Etkin, Dynamics of atmospheric flight, 2nd ed. (New York: Wiley, 1972). 6. J. Wertz, ed., Spacecraft attitude determination and control (Dortrecht, Holland: Reidel, 1978).
EASY5 Home
Menu
126 EA
EASY5 Home
Menu
EASY5 Home
Menu
128 EN
(Control)
F(3) TP DF(3)
TPN, TMX, TC
TH, FN(3)
INPUTS Physical Quantity TP TPN TMX TC Port Number Description Throttle position (0-1) Nominal throttle position (0-1) Maximum engine thrust Engine time constant none none N [lb] sec Units
OUTPUTS Physical Quantity TH F(3) DF(3) FN(3) Description EN represents a source of thrust with a first-order lag response to a change in throttle setting. The maximum thrust (TMX) can be a parameter or can be driven to make the maximum thrust a function, for example, of altitude. Usage Use EN to represent either an air-breathing or rocket engine with fixed or variable thrust. It connects automatically to XF to transform the computed force vector(s) into the body CG frame. Port Number Description Thrust (continuous state) Engine force in local coordinates (see text) Incremental force in local coordinates (see text) Nominal force in local coordinates (see text) N [lb] N [lb] N [lb] N [lb] Units
EASY5 Home
Menu
EN 129
Theory EN uses an assumed local coordinate in which the calculated thrust acts along the positive x-axis. For convenience in connections to other components (such as XF), the primary outputs of EN are 3-vectors with elements 2 and 3 identically zero. EN computes a total thrust vector F, a nominal thrust vector FN (the thrust that would result from the nominal throttle setting and time time-zero maximum thrust), and an incremental thrust vector DF = F - FN.
EASY5 Home
Menu
130 EN
EASY5 Home
Menu
EASY5 Home
Menu
132 FU
Special Purpose ( )
S,1
S(N),2
FTA
INPUTS Physical Quantity S FTA 1 Port Number Description First independent variable Data table (see usage section) OUTPUTS Physical Quantity S(N)*
*N
Port Number 2
Units user-supplied
is the number of dependent variables set by the user. It must be the same as the number of columns declared for FTA.
Description FU looks up multiple dependent variables as functions of a single independent variable. If your model has N variables that are all functions of the same independent variable (e.g., temperature, pressure, density, and speed of sound all as functions of altitude), then FU will be much faster than using a separate GP/FU for each one (more than N times faster). FU linearly interpolates between table points and linearly extrapolates beyond table boundaries. Usage Set mode variable N to the number of dependent variables. Specify FTA as a two-dimensional table, each column of which represents one of your dependent variables. The independent variable values must be monotone increasing or monotone decreasing. Theory FU uses the economy of interpolating once and then using the calculations to look up all the dependent variables. It also checks for the most common case, looking up values from the same box used in the previous call.
EASY5 Home
Menu
EASY5 Home
Menu
134 FV
(Special Purpose)
S,1 S(N),2 S,3
TAB
INPUTS Physical Quantity S S TAB Port Number 1 3 Description First independent variable Second independent variable Table of data OUTPUTS Physical Quantity S(N)*
*N,
Port Number 2
Description
Units
set by the user, is the number of dependent variables. It must be the same as the number of pages for TAB.
Description FV looks up multiple dependent variables as functions of two independent variables. If your model has N variables that are all functions of the same independent variables (e.g., aerodynamic derivatives all as functions of Mach and angle of attack), then FV will be much faster than if you use a separate GP/FV for each one (more than N times faster). FV linearly interpolates between table points and extrapolates linearly beyond table boundaries. Usage Set mode variable N to the number of dependent variables. Specify FTA as a three-dimensional table, each page of which represents one of your dependent variables. Each independent variable value must be monotone increasing or monotone decreasing. Theory FV uses the economy of interpolating once and then using the calculations to look up all the dependent variables. It also checks for the most common case, looking up values from the same box used in the previous call.
EASY5 Home
Menu
Gaussian Noise
GA
EASY5 Home
Menu
136 GA
(Environment)
S, 2 (N)
Port Number -
Description On/off flags, 1 = on [default], other = off RMS of noise to be generated Sampling interval Random number seed2 none none sec none
Units
N = 0 represents a scalar noise. seed supplied for convenience only. The seed should be at least 1 million. OUTPUTS
Units
GA generates a vector of Gaussian noise sources of mean zero and user-specified RMS. The length of this vector is set by mode variable N. The default length, N = 0, generates a single noise source. Each element of the vector may have a different RMS, and each element may be turned on or off independently. GA automatically freezes its states for any analysis except simulation. Usage You typically use GA to generate a vector of noise sources to corrupt an otherwise perfect measurement. However, use BW for this purpose unless you have special requirements that cannot be met by BW. See discussion in the following theory section.
EASY5 Home
Menu
GA 137
Theory Generating Random Deviates. GA generates a vector of N, independent, normally distributed pseudorandom deviates. Independence is achieved by using one uniform random number to generate N seeds to initialize a second uniform random number generator. If the seeds generated are far enough apart, then the sequences are independent. If they are not far enough apart, then the sequences from element to element of the vector will be correlated in some unknown way. Normal deviates are formed by the ratio of uniforms with rejection method. This is faster than using the central limit theorem and uses far fewer calls to the uniform random number generator, improving the chances that the sequences of the streams do not overlap. Moreover, this method is reputed to generate better distribution tails than the central limit theorem in practice, not theoretically. Sedgewick suggests 1. Choose a random number based on the best advice you can get. 2. Examine the sequences to ensure that they look random. 3. If anything goes wrong, blame the random number generator. Frequency Aliasing. You must be very careful when injecting pseudo-random noise into a digital simulation. The numbers generated by GA represent samples drawn from a white noise source, that is, a noise source of theoretically infinite bandwidth. The process of sampling introduces the possibility, and the certainty in the case of an infinite bandwidth source, of frequency aliasing. This phenomenon, wellknown in digital signal processing circles, results in a distortion of the spectral content of a signal by aliasing energy at frequencies higher than the Nyquist frequency into the primary strip (frequencies below the Nyquist frequency). If you pass an aliased sequence of random numbers through a simulation of a continuous system, it will appear to contain more energy (higher RMS) than white noise. Consider passing white noise, RMS = 1, through a first order lag, as follows:
white noise
a s+a
pink noise
The white noise input theoretically has equal energy at all frequencies from d.c. to infinity; that is, the value of the power spectral density (PSD) is 1.0 for all frequencies. The PSD of the pink noise is the PSD of the input multiplied by the PSD corresponding to the transfer function a/(s+a). That PSD can be computed as the square of the magnitude of the transfer function.
EASY5 Home
Menu
138 GA
a G ( j ) = ------------------( j + a ) G ( j ) a = -------------------------2 2 ( + a )
2
G ( j )
a = ---------------------2 2 ( + a )
The RMS of a signal is the square root of the integral under the one-sided power-spectral-density of that signal (Hoblit 1988).
2
RMS =
2 a ---------------------- d 2 2 ( + a ) o
a = ----2
RMS =
a ----2
If you pass white noise through a first-order lag, a = 2, then the RMS of the output is . Figure 71 shows that the result of passing noise from GA through a first-order lag does not produce a signal with the correct RMS. Therefore, frequency aliasing has distorted the PSD of the input stream.
EASY5 Home
Menu
GA 139
Figure 9
In physical systems, frequency aliasing can be avoided by using an analog filter to limit the bandwidth of a signal before it is sampled. In a digital simulation, the corresponding method is to suitably adjust the magnitude of the pseudo-random number stream and then pass that stream through a representation of an analog filter. If this is done appropriately, the resulting analog signal has little or no energy at frequencies above the Nyquist frequency with which it was sampled (random numbers drawn), and the RMS of the output will be very close to that requested. This scheme is used in the bandwidth-limited Gaussian noise (BW) component. References 1. S. Anderson, unpublished correspondence (Seattle: The Boeing Company). 2. F. Hoblit, Gust loads on aircraft, concepts and applications (Washington, D.C.: AIAA Education Series, 1988). 3. R. Sedgewick, Algorithms (Reading, Mass.: Addison Wesley, 1983).
EASY5 Home
Menu
140 GA
EASY5 Home
Menu
EASY5 Home
Menu
142 GU
(Environment)
WM(3), 1
WM(3), 2 U(3), 2
DP, SW
INPUTS Physical Quantity FLG TST MOD LEN U(3) MAG AXS WM(3) Port Number 2 1 Description On/off flag, default = 1 [on] or other [off] Time at which the gust begins Mode, default = 1 [time] or other [distance] Length of gust (see description) Body velocity vector Peak magnitude of gust Wind axis, default = 1 [Y], 0 [X], or 2 [Z] Turbulence input, default = 0, 0, 0 [no turbulence] OUTPUTS Physical Quantity WM(3) DP SW Port Number 2 Description Turbulence plus gust output Distance aircraft has penetrated gustdistance mode only (continuous state) Gust status, 0 = before, 1 = during, 1 = after (switch state) m [ft] none Units m/sec [ft/sec] none sec none sec or m [ft] m/sec [ft/sec] m/sec [ft/sec] none m/sec [ft/sec] Units
Description GU generates a discrete wind gust beginning at TST. If MOD is set to 1, then the gust is of a specific time (sec). If MOD is set to any other value, then the gust is of a specific length (m [ft]). Usage Use GU by itself to generate a discrete gust for your model, or precede GU with a WM component to add a discrete gust to turbulence.
EASY5 Home
Menu
GU 143
GU automatically freezes its states for any analysis other than simulation. Theory GU uses a switch state to precisely trigger the gust on and off. If GU is operating in distance mode, then GU integrates the longitudinal (X) component of vehicle velocity to monitor the distance the aircraft has penetrated the gust. The plot below shows a typical discrete gust.
Figure 10
References 1. F. Hoblit, Gust loads on aircraft, concepts and applications (Washington, D.C.: AIAA Education Series, 1988).
EASY5 Home
Menu
144 GU
EASY5 Home
Menu
Hydraulic Actuator
HY
EASY5 Home
Menu
146 HY
(Control)
D, 2, DD, 2 DC
M, 2
INE, MLM
INPUTS Physical Quantity D DD DC KH KF KP KR KI MMX 2 2 Port Number Description Position of actuated surface Rate of actuated surface Commanded surface position Hydaulic gain (see text) Proportional gain (see text) Damping (rate) gain (see text) Integral error gain (see text) Maximum actuator moment (see text) OUTPUTS Physical Quantity M INE MLM Description HY represents a hydraulic actuator with force limiting and its controller. It is intended to work with CS to provide a credible model of a control surface and its actuator that does not require detailed design data. Use components from the EASY5 thermal-hydraulic (HC) library to create a detailed model of a hydraulic actuator. HY and CS together allow you to create a model with third-order response in its linear range that can be tuned to represent your estimates of actuator-controller/surface performance. HY also includes the dominant nonlinear, limited actuator force. The following example shows how you can use preliminary data to estimate parameters for HY. 2 Port Number Description Actuator moment applied to surface Moment limit indicator (switch state) Units N [lb] none rad rad/sec rad N/rad [lb/rad] none rad/(rad/sec) rad/(rad/sec) N-m [lb-ft] Units
EASY5 Home
Menu
HY 147
Usage HY will connect automatically to CS. Before you add an HY and accompanying CS components to your model, build a test model to select the parameters for HY. The schematic for such a test model is in
Figure 73
Parameters for CS represent a large control surface but no specific control surface. They are S = 10.0 m2 IHH = 75 kg-m2 CPS = 0.5 m and CDS = 1.0 (default). The following flight condition parameters are taken from appendix C, case 3: QBR = 8474 n/m2 UVW = (236,0,0) m/sec Setting controller gains. The gains in HY are
KF = -1 = feedback gain. This gain multiplies the actual control surface position. It serves as a
convenient parameter for opening the loop for transfer function analysis.
KH = hydraulic gain. This gain represents the conversion of controller error signal to hydraulic
force.
KP, KR, KI = controller proportional, rate and integral gains. Set these gains to achieve the
EASY5 Home
Menu
148 HY
Real pole time constant about 0.1 sec. Damping of complex-conjugate pair greater than 0.5.
Begin by setting KH. Set KH = 1, KP = 1, KR = 0, KI =0. Do a closed loop transfer function (KF = -1) between commanded and actual surface position. The Bode gain characteristic in Figure 74 shows that the low frequency gain is very low and damping of the complex-conjugate pair is zero. The analysis output file (not shown) shows that the real pole is at 0.0.
Figure 12
EASY5 Home
Menu
HY 149
Set KH to bring the low frequency gain up to near zero dB. Remember that KH represents the conversion of controller error to hydraulic force so it is usually a large number. In this case, KH = 80000 brings the gain at 1 Hz up to close to zero. With KH set the other control gains should have reasonably small values. Use transfer function and root locus analysis to set the remaining gains. KI largely moves the real pole. KP has the major effect on crossover and KR the most effect on damping of the complex-conjugate pair. A few iterations with root locus and transfer function yields these values:
KP = 1.3. KR = 0.045. KI = 15.0.
The plot in Figure 75 shows the response of the system to a step input of 0.1 rad. Setting Maximum Actuator Moment. Set the commanded actuator position (DC HY) to the maximum value that is reasonable for the given flight condition. You can find the actuator moment needed to hold the actuator at that position either by doing a steady state analysis or doing a simulation and observing the steady state moments as in the Figure 75. If we take the 0.1-rad command as the maximum deflection for this flight condition, then the figure above shows that the steady state moment required is about -4200 N-m. If you have no other information, assume that the moment limit for HY is about 50% above this value. Note that the transient actuator moment goes much higher than this but also remember that a step command is a very rigorous test of performance. Figure 76 shows the effect on the response of setting the moment limit to 6000 N-m.
EASY5 Home
Menu
150 HY
Figure 13
EASY5 Home
Menu
HY 151
Figure 14
EASY5 Home
Menu
152 HY
EASY5 Home
Menu
EASY5 Home
Menu
154 LA
(Aero)
Lateral derivatives
Data array
INPUTS Physical Quantity M COF(N,16) Port Number Mach number Array of aerodynamic derivatives (see text) Description Units none see text
OUTPUTS Physical Quantity CYB CYP CYR YDA YDR CLB CLP CLR LDA CNB CNP CNR NDA NDR
* * * * *
Port Number -
Description Cy influence of on y-force Cyp influence of roll rate on y-force Cyr influence of yaw rate on y-force Cydaileron influence of aileron angle on y-force Cydrudder influence of rudder angle on y-force Cl influence of on rolling moment Clp influence of roll rate on rolling moment Clr influence of yaw rate on rolling moment Cldaileron influence of aileron angle on rolling moment Clrudder influence of rudder angle on rolling moment Cn influence of on yawing moment Cnp influence of roll rate on yawing moment Cnr influence of yaw rate on yawing moment Cndaileron influence of aileron angle on yawing moment Cndrudder influence of rudder angle on yawing moment
Units 1/rad 1/(rad/sec) 1/(rad/sec) 1/rad 1/rad 1/rad 1/(rad/sec) 1/(rad/sec) 1/rad 1/rad 1/rad 1/(rad/sec) 1/(rad/sec) 1/rad 1/rad
LDR*
EASY5 Home
Menu
LA 155
Description LA looks up lateral aerodynamic derivatives as functions of Mach, using the specialized table lookup EZAE0TB1. See appendix A for information on this table lookup. Usage Inspect your tables of aerodynamic derivatives to determine how many values of M you require. Set variable dimension N to this value. See the EASY5 User Guide if you need help in setting variable dimensions. The N that you set specifies the number of rows in the array of coefficients (COF). If N=0 or 1, then the coefficient array collapses to a vector and LA generates constant coefficients. Fill in the columns of COF with your aerodynamic derivatives in this order:
Column 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Figure 15
Contents M CYB CYP CYR YDA YDR CLB CLP CLR LDA LDR CNB CNP CNR NDA NDR Order of columns in coefficient array
Unfortunately, you cannot use PLOT TABLES to view your derivative tables. You can, however, use FUNCTION SCAN to do so
Hint:
Use an AUXILIARY INPUT file to specify your aerodynamic derivatives. If you need help with AUXILIARY INPUT files, see the EASY5 Reference Manual.
EASY5 Home
Menu
156 LA
EASY5 Home
Menu
EASY5 Home
Menu
158 LD
(Body Dynamics)
DA, DR A, CM MAS, U0, TH0, G, IXX, CNP, CNR, NDA, NDR, IZZ, IZX, S, B, CYB, CYP, CYR, CLR, LDR, CNG, QBR
STA(4)
INPUTS Physical Quantity DA DR WM(3) A(4,4)1 B(4,2) MAS U0 TH0 G IXX IZZ IZX S BRF QBR CYB CYP CYR YDA2 YDR2 CLB CLP
1
Units
Wind acting on body Characteristic Mass of body Forward velocity at this flight condition Pitch angle at this flight condition Gravity Moment of intertia about X-body Moment of inertia about Z-body Z-X product of intertia Aerodynamic reference area Aerodynamic reference length Dynamic pressure Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) matrix1
1
m/sec [ft/sec] none none kg [slugs] m/sec [ft/sec] rad m/sec2 [ft/sec2] kg-m2 [slug-ft2] kg-m2 [slug-ft2] kg-m2 [slug-ft2] m2 [ft2] m [ft] N/m2 [lb/ft2] none none none none none none none
Control matrix
EASY5 Home
Menu
LD 159
INPUTS Physical Quantity CLR LDA2 LDR CNP CNR NDA2 NDR2
1If 2
Port Number -
Description Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) Aero derivative (see text) none none none none none none none none
Units
CNB
you set no values in the characteristic (A) and control (B) matrices, then LD will compute them from the dimensions and aerodynamic derivatives you supply. 2Name abbreviated to three characters. OUTPUTS Physical Quantity STA(4) V VD P PD R RD PHI PHD BET Description LD represents the linear, small-perturbation equations of a rigid body about a specified flight condition. The equations (see theory section) are taken from [1]. Port Number Description Internal quantity (continuous states) Velocity in Y-body direction Rate of change of V Angular velocity about x-body Rate of change of P Angular velocity about z-body Rate of change of R Roll angle Roll rate Angle of sideslip Units see text m/sec [ft/sec] m/sec2 [ft/sec2] rad/sec rad/sec2 rad/sec rad/sec2 rad rad/sec rad
EASY5 Home
Menu
160 LD
Usage
Connections to LD
1. You can specify QBR as a parameter, or AP will automatically connect to LD to provide QBR as an input. 2. You can specify aero derivates as parameters, or LA will automatically connect to LD to provide them as inputs.
Specifying the Characteristic Matrix and Control Matrix
1. If you supply values (either as parameters or inputs from elsewhere in your model) for all elements of A and B, then LD will use the matrices you supply. 2. If you supply no values for either A or B, then LD will use the flight condition, dimensions, and aero derivatives to calculate A and B. Theory The equations of motion are
WM ( 2 ) + STA ( 1 ) STA ( 2 ) + B DA STA ( 3 ) DR STA ( 4 )
d---- STA = A dt
LD comprises a macro body and a subroutine that, if needed, computes the characteristic and control matrices. Vector STA is used internally in LD to streamline the computations. The state variables (V, P, R, ) are the elements of STA. Outputs by those names are unloaded from STA. The following equations are from Etkin (pp. 118, 113, 244) for dimensionalizing the nondimensional aerodynamic coefficients and for computing the characteristic and control matrices.
EASY5 Home
Menu
LD 161
EASY5 Home
Menu
162 LD
Yv ---m Lv ----- + I N zx v I x A =
Yp ----m
Yr ---- U o m
gs ( 0 ) 0 0 0
Lp Lr ----- + I N ----- + I N zx p I zx r I x x
References 1. B. Etkin and L. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996).
EASY5 Home
Menu
EASY5 Home
Menu
164 LL
(Body Dynamics)
DE, DP A(4,4), CM(4,2) MAS, U0, TH0, G, S, CBR, QBR, XDE, XDP, ZDE, ZDP, MDE, MDP, MAD, ZAD, CZU, IYY, CXU, CZW, CZQ, CMU, CMW, CMQ
ST(4)
INPUTS Physical Quantity DE DP WM(3) A(4,4)1 B(4,2)1 MAS U0 TH0 WM(3) G S CBR QBR IYY CXU CXA MAD2 ZAD CZU CZA CZQ CMU
2
Units
Wind acting on body Characteristic matrix Control matrix Mass of body Forward velocity at this flight condition Pitch angle at this flight condition (q0) Wind acting on body Gravity Aerodynamic reference area Aerodynamic reference length (Cbar) Dynamic pressure Pitch moment of inertia Cxu - nondimensional aero derivative (see text) Cx - nondimensional aero derivative (see text) Cmdot - nondimensional aero derivative (see text) Czdot - nondimensional aero derivative (see text) Czu - nondimensional aero derivative (see text) Cz - nondimensional aero derivative (see text) Czq - nondimensional aero derivative (see text) Cmu - nondimensional aero derivative (see text)
m/sec [ft/sec] none none kg [slugs] m/sec [ft/sec] rad m/sec [ft/sec] m/sec2 [ft/sec2] m2 [ft2] m [ft] N/m2 [lb/ft2] kg-m2 [slug[ft2] none none none none none none none none
EASY5 Home
Menu
LL 165
Port Number -
Description Cm - nondimensional aero derivative (see text) Cmq - nondimensional aero derivative (see text) Cxde - nondimensional aero derivative (see text) Czde - nondimensional aero derivative (see text) Cmde - nondimensional aero derivative (see text) Longitudinal propulsion force Vertical propulsion force Propulsion moment about y-axis none none none none none N [lb] N [lb]
Units
N-m [lb-ft]
you set no values in the characteristic (A) and control (B) matrices, then LL will compute them from the dimensions and aerodynamic derivatives you supply. 2Name abbreviated to three characters. OUTPUTS Physical Quantity ST(4) DU DUD W WD ALP Q QD DT NZ Description LL represents the linear, small-perturbation longitudinal equations of a rigid body about a specified flight condition. The equations (see theory section) are taken from [1], p. 112. LL uses nondimensional aerodynamic derivatives. Usage Use LL when you are interested only in small motions about a specified flight condition. Port Number Description Internal quantity (continuous states) Incremental forward velocity (in x-body direction) Rate of change of DU Velocity in z-body direction Rate of change of WD Angle of attack Pitch rate Rate of change of Q Incremental pitch angle (relative to 0) Load factor Units see text m/sec [ft/sec] m/sec2 [ft/sec2] m/sec [ft/sec] m/sec2 [ft/sec2] rad rad/sec rad/sec2 rad none
EASY5 Home
Menu
166 LL
Connections to LL
1. You can specify QBR as a parameter, or AP will automatically connect to LL to provide QBR as an input. 2. You can specify aero derivatives, or LO will connect automatically to LL to provide them as inputs. Specifying the Characteristic Matrix and Control Matrix 1. If you supply all values (either as parameters or inputs from elsewhere in your model) for all elements of A and B, then LL will use the matrices you supply. 2. If you supply no values for either A or B, then LL will use the flight condition, dimensions, and aero derivatives to calculate A and B. Theory The equations of motion are
WM ( 1 ) + STA ( 1 ) d---- STA = A WM ( 3 ) + STA ( 2 ) + B DE dt STA ( 3 ) DP STA ( 4 )
LL comprises a macro body and subroutine that, if needed, computes the characteristic and control matrices. Vector STA is used internally to streamline the computations. The state variables DU, W, Q, and DT are the elements of STA. Outputs by those names are unloaded from STA. The following equations are from Etkin (pp. 118, 112, and 229) for dimensionalizing the nondimensional aerodynamic coefficients and for computing the characteristic and control matrices.
EASY5 Home
Menu
LL 167
QS X u = ------ C xu Uo QS Z u = ------ C zu Uo QSc M u = --------- C mu Uo QS X w = ------ C x Uo QS Z w = ------ C z Uo QSc M w = --------- C m Uo 1 QSc X q = -- --------- C xq 2 Uo 1 QSc Z q = -- --------- C zq 2 Uo
2 1 QSc - M q = -- ------------ C mq 2 Uo
1 QSc X w = -- --------- C 2 U 2 x
o
1 QSc Z w = -- --------- C 2 U 2 z o
2 1 QSc - M w = -- ------------ C 2 U 2 m o
X E = QSC xe
Z E = QSC ze
X ME = QSC me
EASY5 Home
Menu
168 LL
A =
Xu ----m Zu ---------------m Zw
Xw -----m Zw ---------------m Zw
0 Z q + mU o ----------------------m Zw
Mw Zu Mw Zw M w ( Z q + mU o ) M w ( mg sin ( 0 ) ) I I I ----- M u + --------------------- ----- M w + --------------------- ----- M q + ------------------------------------ --------------------------------------I yy ( m Z w ) I yy ( m Z w ) I yy ( m Zw ) I yy ( m Z w ) 0 X e ------m Z e ---------------m Zw 0 X p -------m Z p ---------------m Zw 1
B =
Note:
Xp and Zp are dimensional quantities with units N [lb]/rad. Mp is a dimensional quantity with units N-m [lb-ft]/rad.
References 1. B. Etkin and L. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996).
EASY5 Home
Menu
EASY5 Home
Menu
170 LO
(Aero)
Longitudinal derivatives
Data array
INPUTS Physical Quantity M COF(N,18) Port Number Mach number Array of aerodynamic derivatives (see text) Description none see text Units
OUTPUTS Physical Quantity CXA XAD* CXU XDE* CZA ZAD* CZU CZQ ZDE* CMA MAD* CMU CMQ Port Number Description Cx - influence of on x-force Cxu - influence of perturbation in forward speed on x-force Cxde - influence of elevator angle on x-force Cz - influence of on z-force Czu - influence of perturbation in forward speed on z-force Czq - influence of pitch rate on z-force Czdelevator - influence of elevator angle on z-force Cm - influence of a on pitching moment Cm-dot - influence of rate of change on on pitching moment Cmu - influence of perturbation in forward speed on pitching moment Cmq - influence of pitch rate on pitching moment 1/(rad) 1/(m/sec) [1/(ft/sec)] 1/(rad) 1/(rad) 1/(m/sec) [1/(ft/sec)] 1/(rad/sec) 1/(rad) 1/(rad) 1/(rad/sec) 1/(rad/sec) 1/(rad/sec) Units
EASY5 Home
Menu
LO 171
OUTPUTS Physical Quantity MDE1 CXO CZO CMO Port Number Description Cmdelevator - influence of elevator angle on pitching 1/(rad) moment Cxo - trim x-force coefficient Czo - trim z-force coefficient Cmo - trim y-moment coefficient none none none Units
*Name abbreviated to three characters Description LO looks up longitudinal aerodynamic derivatives as functions of Mach. It uses the specialized table lookup EZAE0TB1. See appendix A for information on this table lookup. Usage Inspect your tables of aerodynamic derivatives to determine how many values of M you require. Set variable dimension N to this value. See the EASY5 User Guide if you need help in setting variable dimensions. The N that you set specifies the number of rows in the array of coefficients (COF). If N=0 or 1, the coefficient array collapses to a vector, and LO generates constant coefficients. Fill in the columns of COF with your aerodynamic derivatives in this order:
Column 1 2 3 4 5 6 7 8 9 10 11 12 13
Contents M CXA XAD CXU XDE CZA ZAD CZU CZQ ZDE CMA MAD CMU
EASY5 Home
Menu
172 LO
14 15 16 17 18 Figure 78
Unfortunately, you may not use PLOT TABLES to view your derivative tables. You may, however, use FUNCTION SCAN to do so.
Hint:
Use an AUXILIARY INPUT file to specify your aerodynamic derivatives. If you need help with AUXILIARY INPUT files, see the EASY5 Reference Manual.
EASY5 Home
Menu
Point Mass
PM
EASY5 Home
Menu
174 PM
(Body Dynamics)
F(3) G(3)
VE(3) AC(3)
MAS
INPUTS Physical Quantity F(3) G(3) MAS Port Number Description External forces applied to body Acceleration caused by gravity (default 0,0,9.8) Mass of body N [lb] m/sec2 [ft/sec2] kg [slugs] Units
OUTPUTS Physical Quantity VE(3) AC(3) Description PM represents a point mass driven by gravity and external forces. Usage Use PM to represent a perfect body, the orientation of which is always aligned along its velocity vector. PM is normally used either for checkout purposes or as a second body in a more complex simulation. PM connects automatically with an EA component to compute position and navigation variables if needed. Theory Coordinate System. The nonrotating coordinate system is defined at time zero. XnrYnr lie in the local horizontal plane. Xnr is positive along the trace of the velocity vector on the local horizontal plane. Ynr is positive to the right, and Znr is positive down. This coordinate system is defined exactly like the corresponding system used in component SD. Port Number Description Velocity of body in nonrotating coordinates (continuous states) Acceleration of body in nonrotating coordinates Units m/sec [ft/sec] m/sec2 [ft/sec2]
EASY5 Home
Menu
PM 175
A Cdt
EASY5 Home
Menu
176 PM
EASY5 Home
Menu
EASY5 Home
Menu
178 RB
(Body Dynamics)
EA(3), DEA(3) FB(3), MB(3) G(3) ACC(3), ABC(3) UVW(3), WD(3), PQR(3)
CG(3), DCG(3), MAS, DM, IXX, IYY, IZZ, IXY, IXZ, IYZ, DXX, DYY, DZZ, DXY, DXZ, DYZ, DUL, HR(3), DHR(3)
INPUTS Physical Quantity FB(3) MB(3) G(3) CG(3) DCG(3) MAS DM IXX, IYY, IZZ IXY, IXZ, IYZ DXX, DYY, DZZ DXY, DXZ, DZZ EUL EUI(3) HR(3) DHR(3) Description Sum of external forces, in body coordinates Sum of external moments about body axes Acceleration of gravity, in nonrotating coordinates N [lb] N-m [lb-ft] m/sec2 [ft/sec2] Units
Location of center of gravity with respect to the body m [ft] system Rate of change of location of center of gravity with respect to the body system (default = zero) Mass of body Rate of change of mass (default zero) Mass moments of inertia about body axes Mass products of inertia about body axes Rate of change of IXX, IYY, IZZ (default = zero) Rate of change of IXY, IXZ, IYZ (default = zero) Euler angle sequence* (default = 6, yaw-pitch-roll) Initial values of the Euler angles m/sec [ft/sec] kg [slugs] kg/sec [slugs/sec] kg-m2 [slug-ft2] kg-m2 [slug-ft2] kg-m2/sec [slug-ft2/sec] kg-m2/sec [slug-ft2/sec] none rad
Angular momentum of rotating parts (default = zero) kg-m2-rad/sec [slug-ft2-rad/sec] Rate of change of angular momentum of rotating parts (default = zero) kg-m2-rad/sec2 [slug-ft2-rad/sec2]
EASY5 Home
Menu
RB 179
OUTPUTS Physical Quantity Q(4) EA(3) DEA(3) ACC(3) ACB(3) FMB(3) VEL(3) UVW(3) WD(3) PQR(3) TBN(3,3) TNB(3,3)
Description
Description Quaternion used to compute body orientation (continuous states) Euler angles in sequence specified by EUL Acceleration of body in non-rotating coordinates Acceleration of body in body coordinates F/M in body coordinates Velocity of body in nonrotating coordinates (continuous states) Velocity of body in body coordinates (U, V, W) Angular acceleration of body about body axes Transformation from body to nonrotating frame Transformation from nonrotating to body frame none rad
Units
Rate of change of Euler angles in sequence specified by EUL rad/sec m/sec2 [ft/sec2] m/sec2 [ft/sec2] m/sec2 [ft/sec2] m/sec [ft/sec] m/sec [ft/sec] rad/sec2 none none
RB provides the equations of motion for a general rigid body. It considers the angular momentum of rotating parts (e.g., propellers, rotors), movement of the center of mass, varying mass, and varying inertia tensor. Usage Use RB alone to represent the short-period motion of a rigid body or with an EA component to represent a full six-degree-of-freedom rigid body. RB will automatically connect to EA and to various forcegenerating components in the AE library.
Caution:
Be certain to set the velocity vector IC values. VEL(1) equals x-body velocity and should set up the aircraft velocity. This should never be set to zero.
EUL 1 2 3
EASY5 Home
Menu
180 RB
4 5 6 (default) 7 8 9 10 11 12 Figure 79
pitch-roll-yaw yaw-roll-pitch yaw-pitch-roll roll-pitch-roll roll-yaw-roll pitch-roll-pitch pitch-yaw-pitch yaw-roll-yaw yaw-pitch-yaw EUL and gimbal order
Selecting the Euler Angle Sequence. RB allows you to select any of the 12 three-gimbal Euler angle sequences (Wertz, p. 764). The orders defined in figure RB-1 assume that the body and nonrotating frames are initially aligned. For example, the default (EUL = 6) begins with the two coordinate frames aligned and the body frame yaws, pitches, and rolls to a given position. Specifying the Acceleration Caused by Gravity. If you are content with a flat Earth constant gravity model, accept the default parameter for G (0,0,9.8) for SI units (default) or set (0,0,32.2) for U.S.common units. Use the EA component from this library or specify your own gravity model to model nonconstant gravity. Computing Forces and Moments. RB makes no assumptions about how the forces and moments are computed, that is, it does not assume that aerodynamic forces and moments are computed in wind axes or body axes or even that the body is subject to aerodynamic forces. Use other components in the AE library to model the forces and moments that drive this body. If the forces are not expressed in the body coordinate system, transform them using the transformation TNB provided as an output. Modeling Changing Mass, Center of Gravity, and Inertia. The equations in RB include terms for all these effects. If you specify a parameter for the mass M, then the mass will remain constant. If you connect a variable to input M, then the mass will vary as specified.
If the rate of change of mass is rapid enough to be important, set input DM appropriately (set
are identical, and the CG is fixed on the body. If you provide nonzero values for parameter CG, then the CG is fixed in the body at that location. The values for CG are with respect to the body system, that is, if the CG is located 1 m forward of the origin of the body system, then CG = (1.0,0,0). If you connect a vector variable to input CG, then the CG will follow the position defined by that variable.
If the movement of the CG is rapid enough that the rate-of-change is important, set input DCG
EASY5 Home
Menu
RB 181
If you specify parameter values for IXX, IYY, IZZ, IXY, IXZ, and IYZ, then they will remain
constant. If you connect a variable to any or all of these quantities, then the moments, products of inertia, or both will vary as specified.
If the rates of change of the moments or products of inertia are high enough to be important, set
inputs DXX, DYY, DZZ, DXY, DXZ, and DYZ appropriately (set nonzero parameter values or connect variables to them). Hint: If you have tables for CG location, mass, or moments or products of inertia, then you can use a differentiator from the GP library to develop the rates of change.
Effect of Rotating Parts. The equations in RB account for the angular momentum of rotating parts such as propellers or turbine rotors that are part of your vehicle. Specify nonzero values for HR (angular momentum of rotating parts) and DHR (rate of change of HR) or connect vector variables to these inputs to include the effect of rotating parts on the vehicle dynamics. Theory The basic equations of motion are taken from Etkin. Computations for the quaternion and stabilizing the quaternion integration are from Tieze. Computation of Euler angles and Euler angle rates are from Wertz. Moment and inertia transformations are from Housner and Hudson. Usage Coordinate Systems. See appendix B for more detail on the coordinate systems and transformations used by RB. RB uses three coordinate systems, one of which is redundant if the center of mass is stationary. The origin of the CG coordinate system is at the instantaneous center of mass. This coordinate system is only used internally in the RB component.
EASY5 Home
Menu
182 RB
YCG ZCG
Figure 80
CG coordinate system
The body coordinate system is centered at an arbitrary point in the body, and its axes are parallel to those of the CG coordinate system. If the CG of the body is stationary and the reference point chosen is the CG, then this system and the CG system are coincident.
XCG CG YCG
Reference point
XB
ZCG YB
ZB
Figure 81
The nonrotating coordinate system is centered at the origin of the body coordinate system. At time zero, the XNR-YNR axes define the local horizontal. The initial orientation of the body system is reached by this sequence of rotations:
Begin with the two systems aligned and XNR pointing north.
EASY5 Home
Menu
RB 183
Rotate both systems about their z-axes through the initial heading HD0. XNR now points in the
Figure 82
Translation Dynamics Form the acceleration caused by applied forces in body axes:
dy v F ----- = --- dm --- - ------ dt m dt m Transform from body coordinates to nonrotating coordinates. Add gravity vector and integrate
once to form the velocities with respect to the center of mass. Transform DCG to nonrotating coordinates and add to form the velocity with respect to the origin of the nonrotating system.
Transform the velocity back to the body system to form U, V, and W.
Rotational Dynamics Transform the specified moments and products of inertia from body coordinates to CG coordinates.
Transform the user-specified external moments from body coordinates to CG coordinates. If nonzero, transform the angular momentum of rotating parts to the CG frame. Compute angular acceleration with respect to the CG frame (Etkin, p. 101):
EASY5 Home
Menu
184 RB
dH M = -----dt H = I + H r where Hr is the angular momentum of rotating parts d M = ---- ( I + H r ) + x ( I + H r ) dt dH r d dI = ---- + I ------ + -------- + ( I + Hr ) dt dt dt dH d 1 ------ = I M dI --------r ( I + Hr ) --- dt dt dt d Integrate ------ once to form the angular velocity about the CG axes. dt Form the derivatives of the elements of the quaternion (D290-10279-1, sec. 5.2.3.1): q = q1 + q2 i + q3 j + q4 k 0 1 2 3 0 3 2 dq ----- = 1 1 -dt 2 0 2 3 1 3 2 1 0 Integrate the quaternion derivative. Form the direction cosine matrix (TNB transformation) from the quaternion (D290-10279-1 sec.
764-5). See code for details. References 1. Boeing document D290-10279-1, Subsystem design analysis report, S&C analysis, coast attitude, (Seattle: The Boeing Company, 1981). 2. B. Etkin and L. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996). 3. G. Housner and D. Hudson, Applied mechanics: dynamics (Princeton, N.J.: Van Nostrand, 1950). 4. J. Tietze, unpublished correspondence (Seattle: The Boeing Company, 1985). 5. J. Wertz, ed., Spacecraft attitude determination and control (Dortrecht, Holland: Reidel, 1978).
EASY5 Home
Menu
EASY5 Home
Menu
186 RC
(Instruments)
PQR(3)
S(3),2
INPUTS Physical Quantity PQR(3) EUL(3) LIM SLM OME ZET SCF Port Number Description Angular velocity in body axes Sensor misalignment angles* Limit on measured angular rate Slew (output rate) limit Undamped natural frequency of sensor Damping ratio of sensor (default = 0.707) Rate sensor scale factor (1) rad/sec rad rad/sec (rad/sec)/sec rad/sec none typically volts/(rad/sec) Units
*Assumed
Port Number 2 2 2 -
Description Measured angular rates in sensor axes Slew (acceleration rate) Slew rate Internal continuous state Internal continuous state Internal switch state Internal switch state*
Units typically volts typically volts/sec typically volts/sec2 none none none none
represents the state of the finite state machine used to control limiting. See theory section.
EASY5 Home
Menu
RC 187
Description RC represents a three-axis rate sensor. The sensor axes can be misaligned by a user-specified amount. The dynamics of the sensor are represented by a second-order transfer function with limits on output (measured rates) and slew (output rate). You can also specify a scale factor for the measured rates either to represent sensor inaccuracy or to represent a unit conversion (typically to volts). Usage The RB (rigid body) component will automatically connect to RC to provide all nonparametric inputs. Theory Sensor Misalignment. Sensor misalignment is represented by a set of Euler angles. The assumed Euler angle order is yaw-pitch-roll, that is, begin with the sensor axes aligned with the body axes. Yaw through the first Euler angle, pitch through the second, and roll through the third to reach the sensor axes.
Tip:
If the sensor misalignment is small, the Euler angle order is not significant. For example, if the misalignment is 5 deg in each axis, then the maximum error resulting from any of the six permutations of the order is less than 1%.
Finite State Machine. RC uses a finite state machine to control the limiting, which is applied to each axis independently. The state of limiting on each axis is represented by switch state STA(3). The values STA takes on are
0 1 -1 2 -2
linear (no limiting). on positive output limit. on negative output limit. on positive output rate limit. on negative output rate limit.
Sensor Transfer Function. In the absence of limiting, each axis of the rate sensor is represented by
S2 OME 2 SCF ----------- = -------------------------------------------------------------------2 PQR ZETS --------------- + 2 S ------------ + 1.0 OME OME 2
References 1. G. Housner and D. Hudson, Applied mechanics: dynamics (Princeton, N.J.: Van Nostrand, 1950). 2. S. McKuskey, Introduction to advanced dynamics (Reading, Mass.: Addison Wesley, 1962).
EASY5 Home
Menu
188 RC
EASY5 Home
Menu
Units Specification
UN
EASY5 Home
Menu
190 UN
(Special)
UN
INPUTS Physical Quantity UN Port Number Description Unit system selector, 0 = SI (default), other = U.S. common Units none
OUTPUTS Physical Quantity None Description UN specifies whether SI or U.S.-common units will be used throughout the model. Set input UN to any value other than zero to select U.S.-common units. Usage You must include exactly one UN component in your model when using components from the AE library. Theory UN defines factors for converting SI units, the default throughout the AE library, into U.S.-common units. They are
EZAEmtf EZAEkts EZAEntp EZAEktr EZAEpress EZAEdens
Description
Units none
meters to feet. kilograms to slugs. Newtons to pounds. degrees Kelvin to degrees Rankine. Newtons/meter2 to pounds/foot2. kilograms/meter3 to slugs/foot3.
EASY5 Home
Menu
UN 191
Earth gravitational constant. Earth equatorial radius. Earth rotation rate (rad/sec).
References 1. R. Bate et al., Fundamentals of astrophysics (New York: Dover, 1971). 2. B. Etkin and L. Reid, Dynamics of flight: stability and control, 3rd ed. (New York: Wiley, 1996). 3. CRC handbook of chemistry and physics, 37th ed. (New York: CRC Publishing, 1955).
EASY5 Home
Menu
192 UN
EASY5 Home
Menu
EASY5 Home
Menu
194 VA
(Instruments)
ABC(3) UVW(3) WD(3) PQR(3) VEM(3,N)
ACM(3,N)
LOC(3,N)
Port Number -
Description Acceleration of body (F/M+G) in body axes Velocity of body in body axes Angular acceleration of body in body axes Angular velocity of body in body axes Location(s) of measurement point(s) in body axes
Port Number
VA computes the acceleration and velocity observed at a set of N measurement points in a rigid body. Usage Set mode N to specify the number of measurement points. See the EASY5 User Guide if you need help in setting variable dimensions (modes) in a component. Components RB and PM will connect automatically to VA to provide all the inputs except the location of the measurement points LOC. Each column of LOC represents one measurement point. Each column of ACM and VEM represents the corresponding observed acceleration and velocity. Theory Observed velocity is
EASY5 Home
Menu
VA 195
where VEM and LOC are each one column of the corresponding array. Observed acceleration is
ACM = ABC + WD LOC + 2PQR ( PQR LOC )
where ACM and LOC are each one column of the corresponding array. References 1. G. Housner and D. Hudson, Applied mechanics: dynamics (Princeton, N.J.: Van Nostrand, 1950). 2. S. McKuskey, Introduction to advanced dynamics (Reading, Mass.: Addison Wesley, 1962).
EASY5 Home
Menu
196 VA
EASY5 Home
Menu
EASY5 Home
Menu
198 WM
(Environment)
WM(3),2
INPUTS Physical Quantity SLH, SLV VTA SIH, SIV FLG(3) MOD SEE TAU
*Default
Description Scale factors for horizontal and vertical turbulence RMS for horizontal and vertical turbulence On-off flag, 1 = on [default], other = off Mode, 0 = Von Karman [default], other = Dryden Seed for random number generation Sampling interval
*
Units m [ft] m/sec [ft/sec] m/sec [ft/sec] none none none sec
Physical Quantity
S1 through S8 WM(3) SMP
Port Number
2 -
Description
Internal quantities (continuous states) Wind (turbulence) vector Internal quantity (sample state) none
Units
m/sec [ft/sec] none
Description WM generates a vector of wind turbulence using either the Von Karman or Dryden model. Usage Add WM to your model to model the disturbance caused by atmospheric turbulence. Set the sampling interval TAU to a value appropriate to the dynamics of your aircraft. Keep in mind that both the Von Karman and Dryden models are very low pass, so a sampling interval less than 0.01 is unnecessary and may slow down the simulation
EASY5 Home
Menu
WM 199
WM automatically freezes all its states for any analysis except for simulation. Theory Both turbulence models are approximations to measured turbulence spectra. Turbulence is a spatial phenomenon, that is, a given patch of turbulence exists over a relatively large area. However, an airplane encountering turbulence experiences it as a temporal phenomenon, that is, it flies through a given patch of turbulence (experiences the turbulence velocity) in an interval that depends not only on the rate of change of the turbulence but on the velocity of the airplane. The turbulence model must then account both for the dynamics of the turbulence and the airplane by converting a spectrum defined in space to a time sequence as if measured on an object flying through the turbulence. The mechanism is to generate three independent streams of appropriately scaled, pseudorandom, normally distributed numbers and then pass these streams through filters that have breakpoints selected to reflect the aircraft velocity and the spatial characteristics of turbulence. WM uses the random number generation process described in the GA component data sheet and the scaling process described in the BW component sheet to force the RMS output to match the commanded values. Influence of Scale Factors. Hoblit states that a reasonable scale factor is 762 m (2,500 ft), although a smaller value may be appropriate for military aircraft flying at low altitude. The scale factors (SLV and SLH) influence breakpoints in the transfer functions used to approximate the turbulence spectrum. The gust response is not at all sensitive to the scale factor. Hoblit states that any value, as long as it is not too small, can be selected as long as it is used consistently. Moreover, in the next paragraph, Hoblit states that (scale factor) probably varies over a considerable range from one turbulence patch to another. ... More often than not, however the PSD of a particular patch of turbulence does not fit the equation very well for any value of (scale factor). Influence of VTA. Similar statements made in the prior sections apply. Changing VTA influences the breakpoints but, as long as VTA is relatively small with respect to the scale factors, it does not make a lot of difference. Von Karman versus Dryden Model. Both models are approximations to the same spatial spectrum. They were originally developed as frequency domain models for use in predicting gust loads. There is little practical difference in the output from these approximations. The plot below is the transfer function of the lateral axis filters for both models with default scale factors RMS = 1 m/sec and VTA = 100 m/sec.
EASY5 Home
Menu
200 WM
Figure 83
Time responses from the two models also show little practical difference. The plot in Figure 84 is a 10sec clip from a much longer simulation.
EASY5 Home
Menu
WM 201
Figure 84
.These two plots show how little difference there is between the two models. Differences generated by changing the random number seed will swamp the small differences between the Von Karman and Dryden models. Effect of SIH and SIV. These parameters select the RMS of generated turbulence. However, the turbulence models are very low pass filters. The lowest eigenvalues (default scale factors VS = 100) are about 0.06 (Von Karman) and 0.13 (Dryden), so you must make a relatively long simulation run if you are interested in observing a relatively stationary response. The plot in Figure 85 shows a typical response. Note that the RMS is still settling after a relatively long time.
EASY5 Home
Menu
202 WM
Figure 85
Influence of Random Number Seed. Changing the seed will not only change the appearance of the time series generated but will influence the settling of the RMS toward the specified value. The plot in Figure 86 shows the magnitude of the lateral turbulence and how the RMS settles for two seeds. There is
EASY5 Home
Menu
WM 203
no guarantee that other seeds would produce similar results or that the two seeds used here represent extreme cases.
Figure 86
References 1. F. Hoblit, Gust loads on aircraft, concepts and applications (Washington, D.C.: AIAA Education Series, 1988).
EASY5 Home
Menu
204 WM
EASY5 Home
Menu
EASY5 Home
Menu
206 XF
(Control)
F(3) CG(3) EUL(3) MB(3) FXD, LOC(3) FB(3)
INPUTS Physical Quantity F(3) CG(3) LOC(3) EUL(3) FXD Port Number Description Forces in local frame (see text) Location of body CG with respect to body frame Location at which forces act with respect to body frame Orientation of local frame with respect to body frame (see text) Fixed orientation (default = 0) or moving (other) Units N [lb] m [ft] m [ft] rad none
OUTPUTS Physical Quantity FCG(3) MCG(3) Description XF transforms forces applied at a specific point in body axes to the CG frame and computes the moments about the CG caused by these forces. Usage XF is typically used to transform forces defined in a local coordinate system to the CG frame (e.g., engine forces in the engine coordinate system to the CG frame). If the orientation of the local frame is fixed, then accept the default (zero) for input FXD. If the orientation of the local frame is variable (e.g., a vectored nozzle), then set FXD to a nonzero value. Port Number Forces in CG frame Moments about CG in CG frame Description Units N [lb] N-m [lb-ft]
EASY5 Home
Menu
XF 207
Theory Local Coordinate System. XF uses a local coordinate system with its origin on the point at which the forces are applied. That point is specified by input LOC. The orientation of the local frame is specified by Euler angles EUL in yaw-pitch-roll order, that is, begin with the local frame and the body frame axes aligned. Pitch the local frame, then yaw it, and then roll it to its final orientation. Computation of Forces and Moments. Given the location of the body CG with respect to the body frame and the location and orientation of the local frame, the forces and moments are
FCG = TLB F MCG = ( LOC CG ) F CG
Figure 87
The undeflected nozzle is misaligned in yaw by an angle m and can vector in both yaw and pitch ( and ). Specify these inputs to XF:
LOC =
CG = x, y, z coordinates of CG with respect to body frame (changing with time as fuel burns EUL = ( + m), , zero where and are the pitch and yaw nozzle deflections and
EASY5 Home
Menu
208 XF
EASY5 Home
Menu
Service Routines
EZAE0TB1 EZAET0B2
2 5
This appendix contains information on the two table lookup routines developed specifically for the AE library.
EASY5 Home
Menu
EZAE0TB1
Purpose Look up in several tables that all have the same independent variable. Description If you have several tables that all have the same independent variable (e.g., temperature, pressure, and density as functions of altitude), then it is inefficient to look them up as separate items, that is, T = f(altitude), P = g(altitude). Moreover, the most common circumstance on calling a table lookup is that the independent variable has changed only slightly from the previous call. This routine allows you to package several tables that use the same independent variable as a single EASY5 table or array and look up values in all of them with a single call. Usage Use this routine in a library component or FORTRAN block. Build the table for this component as a twoindependent variable table. For example, Y, Z, P, and Q are all functions of the same independent variable X. There are nine values for X and for each of the dependent variables. Define an EASY5 table with nine values for the first independent variable and four values for the second independent variable. Second independent variables 1 First independent variables -4.6 -1.8 0.0 2.3 7.5 9.0 13.1 15.9 23.0 Figure 1 EZAE0TB1 values 2 3 4
The values in the first independent variable column are the values of your independent variable. The values you give in the second independent variable are dummies. Each column of the table represents one of your dependent variables. EASY5 translates this table into a FORTRAN array. If the table defined above is named mytable, then the format of the FORTRAN array is
EASY5 Home
Menu
REAL*8 mytable(52) And its contents are mytable(1) mytable(2) mytable(3) mytable(4-7) mytable(8-16) mytable(17-25) mytable(26-34) mytable(35-43) mytable(44-52) An index assigned by EASY5 at model generation time The number of values of the first independent variable (9) The number of values in the second independent variable (4) Four values of the second independent variable Nine values of the first independent variable Nine values of the first dependent variable Nine values of the second dependent variable Nine values of the third dependent variable Nine values of the fourth dependent variable
Before you call this routine, declare and define two integer variables for the number of independent variable values and the number of dependent variables. For example, DECLARATIONS, INTEGER n_indep, n_var n_indep = mytable(3) n_var = mytable(4) Also declare and define two internal integer variables for use of the called routine: DECLARATIONS, INTEGER my_ptr, my_direction
Note:
The names n_indep, n_var, my_ptr, and my_direction should be replaced by names appropriate to the component or block you are building.
Tip:
DECLARATIONS are not absolutely required because the names beginning with n and m are automatically declared integer. However, it is good practice to declare all variables you define and then set the Enforce Typing option before building your model.
If the name of your independent variable is xyz and the array of values to be returned is values(4), then the call looks like the following:
CALL EZAE0TB1(xyz, mytable(4+n_vars), mytable(4+_vars+n_indep), 1 2 n_indep, n_vars, values, my_ptr, my_direction, incall)
If you need to unload the returned values into the names Y, Z, P, and Q, then Y = values(1) Z = values(2)
EASY5 Home
Menu
P = values(3) Q = values(4) Calling EZAE0TB1 With a Two-Dimensional (2D) FORTRAN Array. You may also specify data for EZAE0TB1 with a 2D array, a method used in components LO and LA. Add a 2D FORTRAN array to your component with one plus the number of dependent variables as the number of columns and the number of values of the independent variables as the number of rows. The first column of your array must contain the values for the independent variable. Each subsequent column must contain the data for one of your dependent variables. The call to EZAE0TB1 looks like the following: CALL EZAE0TB1(xyz, myarray(1,1), myarray(1,2), n_indep, A n_vars,values, my_ptr, my_direction, incall) where n_indep = number of independent variable values and n_vars = number of dependent variables. This method of calling EZAE0TB1 allows you to set the number of dependent variables but allows you to specify the number of independent variable values, because FORTRAN stores an array in column order. For example, myarray(1,1) is the first value of the independent variable array, and myarray(1,2) is the first value of the dependent variable array.
EASY5 Home
Menu
EZAET0B2
Purpose Look up in several tables that all have the same two independent variables. Description If you have several tables that all have the same two independent variables (e.g., aerodynamic derivatives as a function of Mach number and angle of attack), then it is inefficient to look them up as separate items, that is, T = f(Mach, alpha), P = g(Mach, alpha). Moreover, the most common circumstance on calling a table lookup is that the independent variable has changed only slightly from the previous call. This routine allows you to package several tables that use the same independent variables as a single EASY5 table and look up values in all of them with a single call. Usage Use this routine in a library component or FORTRAN block. Build the table for this component as a three-independent variable table. For example, Y, Z, and Q are all functions of the same two independent variables, X1 and X2. There are 9 values for X1 and 5 values for X2. Each dependent variable has 45 values. Define an EASY5 table with 9 values for the first independent variable and 4 values for the second independent variable. Each page of the table will look like Figure 2. Second independent variables 0 -4.6 -1.8 First independent variables 0.0 2.3 7.5 9.0 13.1 15.9 23.0 EZAE0TB2 values 0.1 0.7 1.9 3.0
Figure 2
The values in the first independent variables column are the values of your first independent variable. The values in the second independent variables row are the values of the second independent variable. The values of the third independent variables are dummies. Each page of the table represents one of your dependent variables.
EASY5 Home
Menu
EASY5 translates this table into a FORTRAN array. If the table defined above is named mytable, then the format of the FORTRAN array is REAL*8 mytable(156) And its contents are mytable(1) An index assigned by EASY5 at model generation time mytable(2) The number of values of the first independent variable (9) mytable(3) The number of values of the second independent variable (5) mytable(4) The number of dependent variables (3) mytable(5-7) Three dummy values of the third independent variable mytable(8-12) Five values of the second independent variable mytable(13-21) Nine values of the first independent variable mytable(22-66) Forty-five values of the first dependent variable mytable(67-111)Forty-five values of the second dependent variable Before you call this routine, declare and define integer variables for the number of independent variable values and the number of dependent variables. For example, DECLARATIONS, INTEGER n_indep1, n_indep2, n_var n_indep1 = mytable(2) n_indep2 = mytable(3) n_var = mytable(4) Also declare and define internal integer variables for use of the called routine: DECLARATIONS, INTEGER my_ptr1, my_ptr2, my_direction1, 1 my_direction2
Note:
These names should be replaced by names appropriate to the component or block you are building.
Tip:
DECLARATIONS are not absolutely required, because the names beginning with n and m will automatically be declared integer. However, it is good practice to declare all variables that you define and then set the Enforce Typing option before building your model.
If the names of your independent variables are x1 and x2 and the array of values to be returned is named values(3), then the call looks like the following: CALL EZAE0TB1(x1, x2,
EASY5 Home
Menu
1 2 3 4 5
mytable(5+n_var+n_indep2), mytable(5+nvar), mytable(5+n_var+n_indep2+n_indep1), n_indep1, n_indep2, n_vars, values, my_ptr1, my_ptr2, my_direction1, my_direciton2, incall)
If you need to unload the returned values into the names Y, Z, P, and Q, then Y = values(1) Z = values(2) Q = values(3) Calling EZAE0TB2 With a 2D FORTRAN Array. You may also specify data for EZAE0TB2 with a three-dimensional array. However, because you cannot add a 3D FORTRAN array to an EASY5 component input list, the details are left as an exercise for you.
EASY5 Home
Menu
EASY5 Home
Menu
This appendix contains information on the coordinate systems and transformations used in the AE library.
EASY5 Home
Menu
CG-Centered Coordinates
Defined in
RB
Used for Computing body angular velocity (rotational equations of motion) Origin Instantaneous center of mass of body. Axis definition xPositive out of the nose of the body. yPositive to the right facing forward. zPositive down.
Instantaneous center of mass XCG
YCG ZCG
Figure 1
CG coordinate system
EASY5 Home
Menu
Body-Centered Coordinates
Defined in RB Used for Reporting body angular velocity with respect to a reference location in the body. Computing forces and moments. Origin An arbitrary user-defined point in the body. Axis definition Axes are parallel to the CG-centered axes. xPositive out the nose of the body. yPositive to the right facing forward. zPositive down.
XCG YCG Reference point XB
ZCG YB CG
ZB
Figure 2
If the CG of the body is stationary and the reference point chosen for the body-centered frame is the CG, then this system and the CG system are coincident. Angular Velocity in Body-Centered Coordinates. Angular velocity of the body is computed in the CG frame. The axes of the body centered frame are parallel to those of the CG-centered frame so the angular velocity in the body-centered frame is equal to the angular velocity in the CG-centered frame.
EASY5 Home
Menu
Moments and Products of Inertia in CG-Centered Coordinates. The moments and products of inertia are specified with respect to the body centered frame. The corresponding moments and products of inertia in the CG-centered frame (Housner and Hudson, p. 153) are
I xxcg = I xxb m ( Y cgb + Z cgb ) I yycg = I yyb m ( X cgb + Z cgb ) I zzcg = I zzb m ( X cgb + Y cgb ) I xycg = I xyb m ( X cgb Y cgb ) I xzcg = I xzb m ( X cgb Z cgb ) I yzcg = I yzb m ( Y cgb Z cgb )
2 2 2 2 2 2
Forces and Moments in CG-Centered Coordinates. Forces and moments are computed with respect to the body-centered frame. The axes of the body-centered frame are parallel to those of the CG-centered frame so the forces are equal in both frames. Moments with respect to the body-centered frame are transformed to the CG-centered frame by
Origin of CGcentered frame CG d CG F
dB
Figure 3
Mb = db F
M CG = d CG F = ( d b CG ) F = M b CG F
EASY5 Home
Menu
Nonrotating Coordinates
Defined in RB Used for Computing body linear velocity (translational equations of motion) Origin Origin of the body-centered frame Axis definition At time zero, the Xnr Ynr axes are in the local horizontal plane xPositive along the projection of the velocity on the horizontal plane. yPositive to the right facing forward. zPositive down.
Vo Xnr Local horizontal Ynr
Znr
Figure 4
The nonrotating frame is fixed at time zero. Body orientation is measured with respect to this frame. Because it is nonrotating, it is a convenient frame in which to integrate accelerations to form body velocity.
EASY5 Home
Menu
Transformation From the Nonrotating Frame to the Body-Centered Frame. Assume that the Euler angle sequence is the default (yaw-pitch-roll). Begin with the nonrotating and the body systems aligned and rotate the body frame through the yaw angle. A unit vector in the nonrotating systems transforms as
Xnr X1
Ynr
Y1
Figure 5
Now rotate the 1-coordinate system through the pitch angle. A unit vector in the 1-coordinate system transforms as
X2 X1
Z2 Z2
Figure 6
EASY5 Home
Menu
T2 =
Finally, rotate the 2-coordinate system through the roll angle to the body frame. A unit vector in the 2coordinate system transforms as
Y2 ZB Z2 YB
Figure 7
1 B = ( T 3 )1 2 1 0 0
T3 =
1 B = ( T 3 T 2 T 1 )1 nr = T nb 1 nr
When Tnb is the transformation from nonrotating to body coordinates. Tnb and its inverse, Tbn, are outputs of component SD.
Note:
The derivation above is presented for information only. The direction cosine matrix, Tnb, is computed in SD from the quaternion, not from the Euler angles. In fact, Euler angles in the userspecified sequence are computed from the direction cosine matrix.
EASY5 Home
Menu
Inertial Coordinates
Defined in EA Used for Computing body position Origin Origin of nonrotating frame at time zero Axis definition The axes are parallel to those of the implied Earth-centered frame shown below. xPositive from the center of the Earth out the north pole. yPositive from the center of the Earth in the equatorial plane toward 90 deg longitude. zPositive from the center of the Earth in the equatorial plane toward 180 deg longitude.
XEC ZEC
YEC
Equatorial plane
Figure 8
EASY5 Home
Menu
Transformation From Inertial to Nonrotating Coordinates. Begin at time zero with the nonrotating and inertial frames aligned and at the origin of the implied Earth-centered frame. Rotate them through the longitude.
ZEC Z1 LO Y1
YEC
Figure 9
T1 =
T2 =
EASY5 Home
Menu
Now, still at time zero, translate the inertial and nonrotating frames along the negative Z2 axis through the surface of the Earth to the initial altitude.
XEC X3 Y3 ZEC Z3 YEC
LO
LA
Figure 10
Second rotation in transformation from nonrotating to inertial coordinates and translation to initial position
0 13 = 12 + 0 R +h o o
The origin of the 3-frame is now located at the origin of the nonrotating frame. Rotate the 3-frame through the heading angle to reach the nonrotating frame.
X3 LO XNR
Y3
YNR
Figure 11
Third rotation in transformation from nonrotating to inertial coordinates and translation to initial position
EASY5 Home
Menu
1 NR = ( T 3 )1 3
0 0 1
1 NR
0 = T 3 ( T 2 T 1 )1 EC + 0 R +h o o 0 = T ECNR 1 EC + 0 R +h o o
1 NR
EASY5 Home
Menu
EASY5 Home
Menu
2 6 11
Note:
1. The values given in Etkin, appendix E, for Izx are positive. The author believes that appendix E contains Izz, not Izx, as indicated. 2. Case 3, Mach 0.8, 40,000 ft, is used extensively in Etkin as an example. The data for Case 3 is annotated with page numbers from Etkin.
EASY5 Home
Menu
U.S.-Common .00 0.2 221 16,515.53 1.42E+07 3.23E+07 4.54E+07 -870,000 58.045
Dimensional DerivativesU.S.-Common Units u w q wdot deltae X -366.1 2317 0 0 16,800 Z -3538 -8959 -109,000 585.1 -112,500 M 3779 -57,170 -1.153E+07 -7946 -1.221E+07
v p r deltaa deltar
Y -1559 0 0 0 57,290
Dimensional DerivativesSI Units u w q X -5,343 31188 0 Z -51,636 -130900 -484890 M 16,811 -254310 -1.5633E+07
EASY5 Home
Menu
wdot deltae
0 74735
8539.1 -500450
-35347 -1.6555E+07
v p r deltaa deltar
Y -22752 0 0 0 254850
Nondimensional Derivatives Cx u/u0 alpha q alphadot deltae -.25343 1.4793 0 0 .052624 Cz -2.4492 -6.2088 -5.5259 6.5553 -.35239 Cm .09579 -1.4491 -21.403 -3.2598 -1.4004
MatricesU.S.-Common Units Longitudinal Characteristic (A) Matrix u udot wdo t -.020901 -.20897 w .12201 -.52976 q 0 222.2 theta -32.2 0
EASY5 Home
Menu
qdot thetadot
1.6841E-04 0
-.0016396 0
-.41163 1
0 0
Lateral Characteristic (A) Matrix v vdot pdot rdot phidot -.089007 -.0061256 9.9294E-04 0 p 0 -.95689 -.12898 1 r -221 .35438 -.23014 0 phi 32.2 0 0 0
Longitudinal Control (B) Matrix deltae udot wdot qdot thetadot .95915 -6.6448 -.37638 0 deltap 0 0 0 0
Lateral Control (B) Matrix deltaa vdot pdot rdot phidot 0 -.22426 -.017751 0 deltar 3.2708 .08224 -.1538 0
MatricesSI Units Longitudinal Characteristic (A) Matrix u udot wdot -.020908 -.20904 w .12204 -.52994 q 0 67.728 theta -9.8 0
EASY5 Home
Menu
qdot thetadot
5.5274E-04 0
-.0053807 0
-.41174 1
0 0
Lateral Characteristic (A) Matrix v vdot pdot rdot phidot -.089032 -.020103 .0032585 0 p 0 -.95718 -.12901 1 r -67.362 .35448 -.23021 0 phi 9.8 0 0 0
Longitudinal Control (B) Matrix deltae udot wdot qdot thetadot .29245 -2.026 -.37649 0 deltap 0 0 0 0
Lateral Control (B) Matrix deltaa vdot pdot rdot phidot 0 -.22433 -.017757 0 deltar .99726 .082265 -.15385 0
EASY5 Home
Menu
Dimensional DerivativesU.S.-Common Units X u w q wdot deltae -48.83 1546 0 0 39940 Z -1342 -8561 -126300 310.4 -334100 M 8176 -56270 -1.394E+07 -4138 -3.608E+07
Y v p -1625 0
L -72810 -1.18E+07
N 44040 -2852000
EASY5 Home
Menu
r deltaa deltar
0 0 134200
Dimensional DerivativesSI Units X u w q wdot deltae -727.83 23044 0 0 181460 Z -20003 -127610 -573810 4626.6 -1517900 M 37146 -255660 -1.9304E+07 -18800 -4.9964E+07
Nondimensional Derivatives Cx u/u0 alpha q alphadot deltae -.027049 .8564 0 0 .042712 Cz -.74339 -4.7423 -5.1236 6.5227 -.35728 Cm .16584 -1.1414 -20.707 -3.184 -1.4128
Cy beta -.90016
Cl -.20612
Cn .12467
EASY5 Home
Menu
p r deltaa deltar
0 0 0 .14351
MatricesU.S.-Common Units Longitudinal Characteristic (A) Matrix u udot wdot qdot thetadot -.0024699 -.068963 2.5563E-04 0 w .078199 -.43993 -.001645 0 q 0 519.77 -.48613 1 theta -32.2 0 0 0
Lateral Characteristic (A) Matrix v vdot pdot rdot phidot -.082194 -.004052 .0009652 0 p 0 -.64597 -.044777 1 r -518 .39172 -.15499 0 phi 32.2 0 0 0
EASY5 Home
Menu
qdot thetadot
-1.0879 0
0 0
Lateral Control (B) Matrix deltaa vdot pdot rdot phidot 0 -.12635 -.012735 0 deltar 6.788 .19004 -.39767 0
MatricesSI Units Longitudinal Characteristic (A) Matrix u udot wdot qdot thetadot -.0025232 -.070477 8.5744E-04 0 w .079889 -.44961 -.0055098 0 q 0 158.44 -.49664 1 theta -9.8 0 0 0
Lateral Characteristic (A) Matrix v vdot pdot rdot phidot -.083969 -.013581 .003235 0 p 0 -.65995 -.045746 1 r -157.89 .40019 -.15834 0 phi 9.8 0 0 0
Longitudinal Control (B) Matrix deltae udot wdot qdot .62909 -5.348 -1.1114 0 0 0 deltap
EASY5 Home
Menu
thetadot
Lateral Control (B) Matrix deltaa vdot pdot rdot phidot 0 -.12909 -.01301 0 deltar 2.1137 .19415 -.40625 0
EASY5 Home
Menu
SI (p. 165) 12192 .8 235.92 288460 2.4805E+07 4.4867E+07 6.7368E+07 -2114600 8474
Dimensional DerivativesU.S.-Common Units X u w q wdot deltae -135.8 275.8 0 0 -3.717 Z -1778 -6188 -101700 130.8 -355100 M (p. 166 & 228) 3581 -35150 -1.122E+07 -3826 -3.839E+07
Y v p -1103 0
L -68850 -7934000
EASY5 Home
Menu
r deltaa deltar
0 0 111560
Dimensional DerivativesSI Units X u w q wdot deltae -1981.7 4024.6 0 0 -16.533 Z -25945 -90299 -452350 1908.7 -1579500 M (pp. 166 & 228) 15927 -156340 -1.5211E+07 -17017 -5.2048E+07
Nondimensional Derivatives Cx u/u0 alpha q alphadot deltae -.10797 .21928 0 0 -3.8182E-06 Cz -1.4136 -4.9199 -5.9215 5.8947 -.36477 Cm (pp. 166, 229 & 243) .10425 -1.0233 -23.921 -6.3136 -1.444
Cy beta -.87696
Cl -.27975
EASY5 Home
Menu
p r deltaa deltar
0 0 0 .1146
MatricesU.S.-Common Units Longitudinal Characteristic (A) Matrix (p. 166) u udot wdot qdot thetadot -.0068685 -.090527 1.1865E-04 0 w .01395 -.31506 -.0010255 0 q 0 773.98 -.42844 1 theta -32.2 0 0 0
Lateral Characteristic (A) Matrix (p. 187) v vdot pdot rdot phidot -.055788 -.0038548 .0010848 0 p 0 -.43303 -.0061444 1 r -774 .41246 -.14554 0 phi 32.2 0 0 0
Longitudinal Control (B) Matrix (p. 229) deltae udot wdot -.000188 -18.08 deltap 0 0
EASY5 Home
Menu
14
qdotthetadot
1.1577 0 0
Lateral Control (B) Matrix (p. 244) deltaa vdot pdot rdot phidot 0 -.14458 .0037821 0 deltar 5.6425 .11394 -.48527 0
MatricesSI Units Longitudinal Characteristic (A) Matrix (p. 166) u udot wdot qdot thetadot -.0068699 -.090542 3.8932E-04 0 w .013952 -.31512 -.003365 0 q 0 235.91 -.4285 1 theta -9.8 0 0 0
Lateral Characteristic (A) Matrix (p. 187) v vdot pdot rdot phidot -.0558 -.012649 .0035595 0 p 0 -.4331 -.0061449 1 r -235.92 .41255 -.14557 0 phi 9.8 0 0 0
Longitudinal Control (B) Matrix (p. 229) deltae udot wdot -5.7315E-05 -5.5121 deltap 0 0
EASY5 Home
Menu
qdot thetadot
-1.158 0
0 0
Lateral Control (B) Matrix (p. 244) deltaa vdot pdot rdot phidot 0 -.14462 .003783 0 deltar 1.7202 .11396 -.48535 0
EASY5 Home
Menu
Dimensional DerivativesU.S.-Common Units X u w q wdot deltae -395.4 314.4 0 0 15440 Z -838.3 -7928 -132700 121.4 -367700 M -2062 -62890 -1.327E+07 -5296 -4.038E+07
Y v -1198
L -28660
N 56880
EASY5 Home
Menu
p r deltaa deltar
0 0 0 79900
Dimensional DerivativesSI Units X u w q wdot deltae -5772.4 4589.8 0 0 68702 Z1 -12238 -115740 -590480 1772.3 -1636100 M -9175.4 -279840 -1.7998E+07 -23566 -5.4765E+07
Nondimensional Derivatives Cx u/u0 alpha q alphadot deltae -.2811 .22351 0 0 .012602 Cz -.59596 -5.6361 -6.9087 5.5051 -.30012 Cm -.053677 -1.6371 -25.297 -8.7937 -1.2068
Cy
Cl
Cn
EASY5 Home
Menu
-.85168 0 0 0 .065215
MatricesU.S.-Common Units Longitudinal Characteristic (A) Matrix u udot wdot qdot thetadot -.02 -.042664 -5.547E-05 0 w .015903 -.40349 -.0018354 0 q 0 869.63 -.54005 1 theta -32.2 0 0 0
Lateral Characteristic (A) Matrix v vdot pdot rdot phidot -.060596 -.0016374 .0011764 0 p 0 -.45902 -.00284 1 r -871 .29564 -.15223 0 phi 32.2 0 0 0
EASY5 Home
Menu
wdotqdot thetadot
18.714 -1.2169 0
0 0 0
Lateral Control (B) Matrix deltaa vdot pdot rdot phidot 0 -.18599 -.0061104 0 deltar 4.0414 .14738 -.44674 0
MatricesSI Units Longitudinal Characteristic (A) Matrix u udot wdot qdot thetadot -.020012 -.042689 -1.8208E-04 0 w .015912 -.40373 -.006025 0 q 0 265.06 -.54036 1 theta -9.8 0 0 0
Lateral Characteristic (A) Matrix v vdot pdot rdot phidot -.060631 -.0053753 .0038619 0 p 0 -.45931 -.0028418 1 r -265.48 .29581 -.15232 0 phi 9.8 0 0 0
EASY5 Home
Menu
-5.7071 -1.2176 0
0 0 0
Lateral Control (B) Matrix deltaa vdot pdot rdot phidot 0 -.18609 -.0061139 0 deltar 1.2326 .14747 -.44699 0
EASY5 Home
Menu