zotero-db/storage/QCVK5G9Z/.zotero-ft-cache

1589 lines
42 KiB
Plaintext
Raw Normal View History

NASA Contractor Report 186019
An Aircraft Model for the AIAA Controls Design Challenge
Randal W. Brumbaugh
Contract NAS 2-12722 December 1991
NASA
National Aeronautics and Space Administration
NASA Contractor Report 186019
An Aircraft Model for the AIAA Controls Design Challenge
Randal W. Brumbaugh PRC Inc., Edwards, California
Prepared for NASA Dryden Flight Edwards, California Under Contract NAS 1991
Research 2-12722
Facility
NASA
National Aeronautics and Space Administration Dryden Flight Research Facility Edwards, California 93523-0273
An Aircraft Model for the AIAA Controls Design Challenge
Randal W. Brumbaugh* PRC Inc.
Edwards, California
Abstract
This paper describes a generic, state-of-the-art, highperformance aircraft model, including detailed, fullenvelope, nonlinear aerodynamics, and full-envelope thrust and first-order engine response data. While this model was primarily developed for the AIAA Controls Design Challenge, the availability of such a model provides a common focus for research in aeronautical control theory and methodology. This paper also describes an implementation of this model using the FORTRAN computer language, associated routines furnished with the aircraft model, and techniques for interfacing these routines to external procedures. Figures showing vehicle geometry, surfaces, and sign conventions are included.
Nomenclature
A
axial force, lb
a
speed of sound in air, ft/sec
Gy
normal acceleration, g
Ons
a-body axis accelerometer output, accel-
erometer at center of gravity, g
On
y-body axis accelerometer output, accel-
erometer at center of gravity, g
Onz
z-body axis accelerometer output, accel-
erometer at center of gravity, g
a,
acceleration along the x-body axis, g
ay
acceleration along the y-body axis, g
a,
acceleration along the z-body axis, g
b
wingspan, ft
Cc
force or moment coefficient
Cp
coefficient of drag
CL
coefficient of lift
Cr
coefficient of rolling moment
“Electrical engineer, member AIAA.
This paperis a work of the U.S. Government and is not subject to copy-
right protection in the United States.
coefficient of pitching moment coefficient of yawing moment
coefficient of sideforce
mean aerodynamic chord, ft
drag force, Ib
determinant of matrix
specific energy, ft
flightpath acceleration, g actuator transfer function
acceleration due to gravity, ft/sec?
altitude, ft
vertical acceleration, ft/sec” aircraft inertia tensor, slug-ft?
rotational inertia of the engine, slug-ft?
x-body axis moment of inertia, slug-ft?
x-y body axis product of inertia, slug-ft?
a-z body axis product of inertia, slug-ft?
y-body axis moment of inertia, slug-ft? y-z body axis product of inertia, slug-ft? z-body axis moment of inertia, slug-ft?
aerodynamic constant total body axis aerodynamic rolling moment, ft-lb;
or total aerodynamic lift, Ib
generalized length, ft
Mach number; or total body axis aerodynamic pitching moment, ft-Ib
aircraft total mass, slug
mass of engine
normal force, lb; or total body axis aerodynamic yawing moment, [1-Ib
load factor
specific power, ft/sec
roll rate, rad/sec; or pressure, lb/ft? ambient pressure, Ib/ft? total pressure, !b/fi?
pitch rate, rad/sec
dynamic pressure, lb/ft? impact pressure, lb/ft?
Reynolds number
Reynolds number per unit length, ft!
yaw rate, rad/sec
wing planform area, ft
complex frequency ambient temperature, K; or total angular
momentum slug-ft? /sec? ; or thrust, Ib
total temperature, K velocity in a-axis direction, ft/sec
total velocity, ft/sec calibrated airspeed, kn
equivalent airspeed, kn
velocity in y-axis direction, ft/sec
vehicle weight, Ib
velocity in z-axis direction, ft/sec total force along the x-body axis, lb thrust along the z-body axis, lb sideforce, Ib
thrust along the y-body axis, Ib
total force along the z-body axis, lb
thrust along the z-body axis, lb
angle of attack, rad
angle of sideslip, rad
flightpath angle, rad
displacement of aerodynamic reference point from center of gravity
displacement from center of gravity
along x-body axis, ft displacement from center of gravity
along y-body axis, ft
displacement from center of gravity along z-body axis, ft
differential aileron command
differential stabilator command
symmetric stabilator command
directional command
Kronecker delta
pitch angle, rad
Bb
coefficient of viscosity
p
density of air, slug/ft
xb
total body axis rolling moment, ft-lb
ZM
total body axis pitching moment, ft-lb
IN
total body axis yawing moment, ft-Ib
¢
roll angle, rad
PL
tilt angle of acceleration normal to the flight-
path from the vertical plane, rad
y
heading angle, rad
wW
total rotational velocity of the vehicle
Superscripts
derivative with respect to time
Subscripts
A
aileron
ar
aerodynamic reference point
D
differential stabilator
D
total drag
E
engine
H
symmetric stabilator
h
altitude
rr)
measurement not at aerodynamic reference
L
total lift
£
rolling moment
M
Mach number
pitching moment
n
yawing moment
0
offset from center of gravity
p
roll rate
q
pitch rate
R
rudder
r
yaw rate
8
stability axis
x
along the z-body axis
Y
sideforce
y
along the y-body axis
z
along the z-body axis
0
standard day, sea level conditions
Introduction Background and History
This paper describes the structure and implementation of a high-performance aircraft model. The model was developed for the AIAA Controls Design Challenge, but is intended to be useful for a variety of controls and guidance applications. Model definition and implementation are covered in separate sections.
The AIAA Controls Design Challenge provides an opportunity for participants to apply control system design methodologies to a realistic, nonlinear aircraft model. Any design which performs the control task is acceptable, but innovative or unusual approaches have been encouraged. The challenge is a two-year competition. Control designs are judged according to their ability to control the model during a level acceleration and 3-g turn maneuver at four specified flight conditions.
The model integrates several components. Existing pieces were used whenever possible and modified to facilitate integration. The result is that most of the model implementation is based directly on proven and reliable components, although the resulting model is not completely representative of any particular aircraft. Because of the mixed history of the model, some aspects may appear to resemble actual aircraft. The user is warned against making any assumptions based on these appearances.
Model Characteristics The model is a collection of modules, each performing a specific function. The primary modules are the aircraft actuator and surface command inputs, aircraft mass and geometry modeling, the equations of motion, the atmospheric model, the aerodynamics, the propulsion
system, and the observation variable modeling. Each major module is described in the following sections. Figure 1 shows how the modules would be connected together with user synthesized control laws to form a complete system model. Aircraft Description
The aircraft modeled is a high-performance, supersonic vehicle representative of current-day fighters. It is powered by two afterburning turbofan engines, each capable of producing approximately 32,000 Ib of thrust. A three-view of the aircraft is shown in Fig. 2, including control surfaces and locations.
Fig. 2 Three view of aircraft and control surfaces. The operational envelope for this vehicle, for trimmed, straight-and-level, 1-g flight is shown in Fig. 3 for the specified weight of 45,000 Ib. The envelope includes a maximum Mach number (M) of 2.3 and an altitude limit in the 50,000- to 60,000-ft range. Mass and geometry parameters are given in Table 1. The aircraft primary flight-control surfaces consist of horizontal stabilators which are capable of symmetric or differential movement, conventional ailerons, and a single
Control »|{ Saucrtfuaacteosr/
dynamics
User supplied control
jaws A
Atmospheric model
{
>i| Aerodynamics
| E
tions
ee
motion
_| Propulsion
system __]
Fig. 1 Modular structure of the model.
> Observation/
instrumentation
910487
Table 1. Mass and geometry characteristics.
Parameter
Wing area
Wing span
Mean aerodynamic chord
Vehicle weight
Moments of inertia
(Roll) (Pitch) (Yaw) Products
Symbol
8
b é
Ww
I, i I, Tus
Izy Ty
Value
608.0 ft?
42.8 ft 15.95 ft
45,000.0 Ib
28,700.0 slug/ft? 165,100.0 slug/ft? 187,900.0 slug/ft?
—520.0 slug/ft?
0.0 slug/ft? 0.0 slug/ft?
vertical rudder. The individual surface position limits, rate limits, and sign conventions for positive deflection are detailed in Table 2. The equations in Table 3 define the individual surface deflections in terms of command inputs. There are a total of five actuators; two aileron, two stabilator, and one rudder. The model includes identical actuators for all surfaces. These actuators are rate limited at 24 deg/sec and have a first-order response modeled by
20
G(s) = s+ 20
A block diagram of the actuator model is shown in Fig. 4.
The command inputs to the aileron and stabilator surfaces
are differential and symmetric commands, which are sep-
arated into inputs to
The resulting surface
each of the surface actuator models.
positions are then recombined to ob-
tain the command response. This is shown for the stabila-
tors in Fig. 5. Because of the nonlinearities in the stabilator
command path, the commands will interact in ways which
are not easily predicted. This interaction is shown in Figs. 6
and 7.
Aerodynamic Model
The aerodynamics are modeled for the full vehicle envelope using multidimensional tables and linear interpolation to form nonlinear function generators. In general, these aerodynamic quantities are functions of M and some combination of angle of attack (a), angle of sideslip (8), and symmetric stabilator deflection.
Table 3. Surface deflection definition equations.
Surface
Sava
SAdge
Orne
SHige
bp
Deflection definition
ba +2
—5,a +2
(28 — ip) +2
(264 + 6p) +2
dp
Rate limit _deg/sec
24
24
2A
24
2A
The equations defining the aerodynamic model provide nondimensional force and moment coefficients. The longitudinal parameters are in the stability axis system; the lateral-directional parameters are given with respect to the body axis system.
The equations used for this model are given in the following
Cisms = Cisanc + AC.., Ne
Omens = Cras + AC, Me
tAaan (Cm + Cr + Crpasicd No)
Crsma = Cp + ACp,, + ACD.
Cysoov = Cy sasic + Cy,, ba + Cy,,, 5p - AC,,, Ks,
Crsooy = Clouse + Ce, 5a + Ce,bo — ACt,, Kine
oaaa (Ce,p + Ce,7)
Crsopy = Crue + Cus, ba + Cry, 6p + AC, Ks,,
+aoa (Ca, P + Ca,7)
The terms in the equations containing C, AC, AN, or K afe outputs from the function generation routines, and are either calculated by linear interpolation of tabular data or by direct calculation. The source of the functional coefficients is shown in Table 4.
Propulsion System Model
The propulsion system model consists of two distinct engine models. The engines are similar, but not identi-
cal; the thrust produced for identical throttle settings is not
Table 2. Command input limits and sign conventions.
Command name Aileron Symmetric stabilator
Differential stabilator Rudder
Symbol 5a én
dp bp
Limits, deg +20
+15/—25
+20 +30
_ Positive sign convention Left trailing edge down Trailing edge down
Left trailing edge down Trailing edge left
70,000 60,000 50,000
Altitude, 42,000 f ft 30,000
20,000 10,000
0
5 10 15 20 25 3.0
Mach
910488
Fig. 3 Vehicle operational envelope at 45,000 Ib.
Gain
Surface
+
command,—>>€p—>|_ 20
rad
-4
Rate limit
> HE
Position limit
1
> — HH s
Integrator
Fig. 4 Block diagram of actuator model.
Surface
position, rad
910490
+15°/-25°
5H COMMAND
7}
H
Surface
left dynamics
Sy
Rate| .| 20
~ ¢
limit]
|s +20
24 deg/sec
+15°/-25°
+20°
5 Hright dSyunrafmaicces
>
SD COMMAND 7
Rlaitmte {| ,|_|s2+020) ~ 7
24 deg/sec
+15°/-25°
910681
Fig. 5 Stabilator command path.
8
10 F
-10 -
rs) H = -20°
-10 F
dy = +12°
—8 8
-20 -20
J
l
tl
J
-10
0
10
20
SD commanp: 99
orcee2
Fig. 6 Effect of & on & response.
25
\
I
i
I
l
1
-25
-20
15
-10
-5
0
5
SHcoMMAND: 99
Fig. 7 Effect of 5p on 5y response.
I
j
10
15
orones
Table 4. Source of aerodynamic coefficients.
Coefficient
Charnec
AC.,, RBASIC
ACn “
Cn, Cn, ANo Cp(a < 32)
(32 <a<40) (a > 40)
ACp,
ACD
Cessac
ACg,,
Ks,
Ce,
Ce, Caspase
Cas,
Cas, AC,
Ka,
Ch, Cy, Cy samc Crs, Cy, AC,,, Ks,
Source
Table
Table Table
Table
Table Table Table Table Table Cale
Calc
Table
Table
Table
Table
Table
Table Table
Table
Table Table
Table
Table Table Table Table Table Table Table
Independent __ variables
M,a, dy
M M,a,éy
M
M,a M,a M = Crganc, M C),,,.,M,a Craanc &
MM, throttle
M,a,f
M,a, dp
M
M,a
M,a M,a,
M,a
M,a M,a,
M,a
M,a M,a M,a, M,a M,a M,a,5p M
symmetrical. Each engine thrust vector is aligned with the body axis, and acts at a point located 10 ft behind the vehicle center of gravity and 4 ft laterally from the centerline. The thrust produced by each engine is a function of altitude (h), M, and throttle setting. Each engine is modeled as a nonlinear system having two separate sections; a core engine and an afterburner (augmentor) section with associated sequencing logic.
Throttle position inputs to the engine model are in degrees, with a minimum position of 20° and a maximumof 127°. The core section responds to throttle inputs up to 83°. The afterburner section begins to respond at a throttle poSition of 91°. The core model has first-order dynamics and rate limiting to model spool-up effects. A block diagram of the core model dynamics is shown in Fig. 8. The afterburner has a rate limiter and sequencing logic to model the fuel pump and pressure regulator effects. A block diagram of the afterburner model dynamics is shown in Fig. 9.
Observation Model
The observation variables provided by this model represent a broad class of parameters useful for vehicle analysis and control design problems. These variables include the State, time derivatives of state, and control variables. Airdata parameters, accelerations, flightpath terms, and other
miscellaneous parameters are also included. The equations
used to calculate those parameters are derived from a number of sources (Clancy, 1975; Dommasch et al., 1967; Etkin, 1972; Gainer and Hoffman, 1972; Gracy, 1980). Implicit in many of these observation equations is an atmospheric model. The atmospheric model is derived from the U.S. Standard Atmosphere (1962).
Three body axis angular rates and three translational accelerations are available as observation variables. These in-
clude the +-body axis rate (u), the y-body axis rate (v), and
the z-body axis rate (w). The time derivatives of these quantities, u, v, and w are also included. The equations defining these quantities are
u=Vcosacos B v=V sin B
w= V sin acosB
ie (eens
eee
m
Lsina ) tre
aw
b==
(Fetemen tanec?
m
)+pw-ru
we (= gmcos @cos ¢ — Dsina — nme)
7
m
+qu — pv
The vehicle body axis accelerations constitute the set of observation variables that, except for state variables themselves, are most commonly used in aircraft control analysis and design problems. These accelerations are measured in g units and are derived directly from the body axis forces defined in the previous section for translational acceleration. The equations used for the body axis acceleration a,, ay, and a, are
a, = (X - Dr cosa+ Lsin a — gmsin 6) /gom
ay = (Yr + Y + gmcos Osin ¢)/gom
a, = (Zr — Dsin a — Lcos a+ gmco@scos ¢)/gom
where subscript 0 denotes standard day, sea level conditions. The equations for the outputs of the body axis accelerometers (denoted by subscript n) that are at vehicle center
Gain schedule
Core input
Rliamtiet
Y
Integrator
Limit
Core -| + a7N” > He | Multiplier
a 8
| HO
command, percent
Fig. 8 First order engine core dynamics.
Core output
pTehrrcusetn,t ™> Fuel flow,
percent 910491
Afteirnbpuutrner
Afterburner + >>4—. >
command, percent
7|4 Dead band
Rlaimtiet
> H
Sequleongiccing
>| —81
Integrator
Function j
Aftoeurtbpuurtner
chAafrtaecrtebruirsnteircs Thrust,
-e->
$
20
+20
>| Function
-—>
Percent
Fuel flow,
Fuel pump,
percent
pressure
regulator
lag
910492
Fig. 9 Engine afterburner model dynamics.
of gravity are
Oe, = (Xz ~ Deos Lsinaat )/gom
Ow = (Yr + Y)/gom
Que = (Zr — Dsin a — Los a)/gom Gn = —On
relative to the vehicle center of gravity. Included in the set of acceleration equations is load factor, n= L/W, where L is the total aerodynamic lift and W is the vehicle weight. Included in the observation variables are the flightpath-related parameters, including flightpath angle (+), flightpath acceleration (fpa), vertical acceleration (A), flightpath angle rate (+), and scaled altitude rate (h/57.3). The equations used to determine these quantities are
For orthogonal accelerometers that are aligned with the vehicle body axes but are not at vehicle center of gravity (denoted by subscript ,i), the following equations apply
Our, = Gur — [(¢? + ras — (pq — T) Ya
— (pr + 4)zs] /90
+ (qr — Pp) zy] /90
Gui = Oy + [(pr —Qr,+ (gr+ D)Yz
—(q° + p*)zz] /90
Gai = —Oni
where the subscripts x, y, and z refer to the z-, y-, and 2z-body axes, respectively, and the symbols x, y, and z refer to the z-, y-, and z-body axis locations of the sensors
go
h = a, sin6 — ay sin $ cos6 — a, cos cos 0
_ Vh-hv VVV?2 — i?
Two energy related terms are included in the observation variables; specific energy (E,) and specific power (P,), defined as
y2 E,=h+ a
P,=h+ ]
The set of observation variables available also includes four force parameters; total aerodynamic lift (L), total aerodynamic drag (D), total aerodynamic normal force (NV), and total aerodynamic axial force (A). These quantities are defined as
L = GSC isan D = GSCodens N= Lcosa+ Dsina A=-Lsina+ Dcosa where Cragny afd Ozyny are coefficients of drag and lift, respectively. The airdata parameters having the greatest application to aircraft dynamics and control problems are the sensed parameters and the reference and scaling parameters. The sensed parameters are impact pressure (g,), ambient or freestream pressure (p,), total pressure (p,), ambient or freestream temperature (7°), and total temperature (T;). The selected reference and scaling parameters are Mach number (M), dynamic pressure (g), speed of sound (a), Reynolds number (He), Reynolds number per unit length (Re), and the Mach meter calibration ratio (q./p,). These quantities are defined as
wed pe = @ VE
m
Re' = OBY
a._)pv?
{(1.0+ 0.2M?)—?51.0] p,
(M < 1.0)
4 c= [2a (skis) 2.5 -1.0| Po (M> 1.0)
Pt = Pot 4
T =7T(1.0+0.2M?)
where £ is length, p pressure, T is ambient of free-stream temperature, p the density of the air, and y the coefficient of viscosity. Free-stream pressure, free-stream temperature, and the coefficient of viscosity are derived from the U.S. Standard Atmosphere (1962).
Included in the airdata calculations are two velocities: equivalent airspeed (V,) and calibrated airspeed (V,), both
computed in knots. The calculations assume that internal units are in the English system. The equation used for equivalent airspeed is
Ve = 17.17VG which is derived from the definition of equivalent airspeed,
where po = 0.002378 slug/ft? and V, is converted from feet per second to knots. Calibrated airspeed is derived from the following definition of impact pressure
po (10+ rave) ~ 7
(V.< a0)
qc =
1.2 (%)" po [seater - — po (V, > ao)
For the case where V, < ao, the equation for V, is
V, = 1479 116 (#Po + 10) 2/7 ~1.0
Calibrated airspeed is found using an iterative process for the case where V, > ao
g
1.0
25
° U(« Ve = 582 .95174
ay
10)
[10
- a T.0(Vd e/a0)?
is executed until the change in V, from one iteration to the next is less than 0,001 ka.
The final set of observation variables provided is a miscellaneous collection of other parameters of interest in analysis and design problems. The first group consists of measurements from sensors not located at the vehicle center of gravity. These represent angle of attack (a.;), angle of sideslip (8), altitude (h ,), and altitude rate (hy) measurements displaced from the center of gravity by some z-, y-, and z-body axis distances. The equations used to compute these quantities are
hi=h+ zsin 0 — ysin ¢cos @ — zcos ¢cos 0
hy = h+ 6(xcos6+ ysin sin6+ zcos dsin 6) —¢(ycos ¢ cos 6 — z sin ¢cos 6)
The remaining miscellaneous parameters are total angular momentum (T), stability axis roll rate (p,), stability axis pitch rate (g,), and stability axis yaw rate (r,), defined as
T=>51 (Isp? — 2 Ieypq — 2 Inspr + Iyq?
—2Iyqrt+ I,r*) Ps=pcosa+rsina
D,=1,-I, D,=1,-1, D, = ly —Is
W=4
The translational acceleration equations used are
T, = —psina+ rcosa
Equations of Motion and Atmospheric Model
The nonlinear equations of motion used in this model are general six-degree-of-fteedom equations representing the flight dynamics of a rigid aircraft flying in a stationary atmosphere over a flat, nonrotating Earth. These equations of motion were derived by Etkin, and the derivation is detailed in Duke, Antoniewicz, and Krambeer. The equations for each variable in the state vector are given in the following.
The following equations for rotational acceleration are used
p= [(ZL)N + (2M)Ip + (ZN)Is — p* (rela — Igy!)
+ pq(Izzli — Iyzt2 — Dz Is)
~ pr Ieyl + Dyl2 — Iyel3) + @? (Iyelt — Iny ls)
—qr( Dsl, — Tyo + Tue ts)
—r?(Iysli — Ine l2)] /det I
q= [((ZL)Ip + (ZM)Ig + (ZN)I5 — p* TeeIa — Inys)
+ pq( Teel — IyzI4 — DzIs)
~ pr( Isyl2 + Dyla — Iys Ts) + q?(Iyel2 — Iny Is) —qr(Del2 — Inylg + Izels)
— 17 (Iysl2 — Ins I4)] /det I
V =[—Dcos8+Ysin B+ Xp cos acos B
+Yrp sin 8 + Zr sin acos 8
—mg(sin 6 cos acos# — cos Asin Psin B
— cos 6 cos ¢sin acos B)] /m
a@=[—-L+
2Zrcoa— Xrsina
+ mg(cos Ocos @cos a + siOnsin w)] /Vmcos B
+q— tan B(pcosa+ rsin a)
B=([Dsin
B+ ¥ cos 8 — Xrcos asin B
+Yr cos B — Zr sin asin B
+mg(sin @cos asin 8+ cos @sin ¢cos A
— cos #cos p sin asin B)] /Vm
+psa i — rn cosa
where a, 8, 0, and ¢ are angles of attack, sideslip, pitch, and roll, respectively; Xr, Yr, and Zr are thrust along the z-, y-, and z-body axes; and D is drag force, g gravitational acceleration, L total aerodynamic lift, m total aircraft mass, V total velocity, and Y sideforce.
The equations defining the vehicle attitude rates are
6=qcos¢—rsing yp = sin psec0 + rco¢ ssec 6
t= [(LL)b + (ZM)Is + (ZN)I6 — p*(Iuels — Inyle) + pq( Ize 13 — IyeIs — Dz Ie) — pr( IsyI3 + DyIs — Iyz te) + 9? (Tyels — Ieyle)
—qr( Dig — IxyIs + InzI6) —1?(IysI3 ~ IxeI5)]} /det I
¢ = p+ qsin ptan 0 + rcos ¢tan 0
where yp is heading angle. The equations defining the Earth-relative velocities are
h = V(coBscos asin6 — sin Bsin ¢ cos 0
Where LL, 2M and ZN are the aerodynamic total moments about the x-, y-, and z-body axes, respectively, including power plant induced moments, and
det I = IzlyIg — 2 Ieylzslys — Iz], — Iy12, — 1212,
l= 1,1, — I, Ip = Igyl, + Tye les Ty = Inylye + Iylas
— cos fsin acos ¢cos 6)
z= V[ cos Bcos acos @cos p + sin A(sin ¢ sin @ cos » — cos ¢ sin p) + cosB sin a(co¢ ssin cosp + sin d sin W)]
y = V{ cos Bcos acos @sin p + sin A(si¢ nsin 0 sin y + cos ¢ cos p) + coBssin a(co¢ ssin @ sinyp — sin Pcos ¥)}
I, = Ip], — 22, Is = Ig lye + Inylze Is = Izl,— EB,
The atmospheric data model is based on tables from the U.S. Standard Atmosphere (1962). This model calculates values for speed of sound, acceleration due to gravity, air density, viscosity, and ambient static pressure and temperature. These values are calculated based on altitude. The
11
tabular data is organized on evenly spaced breakpoints between 0 and 90 km. Linear interpolation is used between table values for altitudes in this range; the extreme values are used for altitudes outside the range.
FORTRAN Implementation
The model is implemented as a program in standard FORTRAN 77 programming language. The program is intended to be portable, and has been successfully compiled on a wide fange of computer platforms. The routines which implement the models are designed in a modular fashion, patterned after the modules described in the previous section. Modules communicate through named common blocks.
There are four primary subroutines; each corresponds to a primary module in the model. These routines are CCALC, ENGINE, INSTRM, and UCNTRL. The CCALC routine performs the calculations for the aerodynamic model. The UCNTRL routine, supplied by the user, calculates desired control surface deflections for the aerodynamic modeling routines. The INSTRM routine calculates the instrumentation models for the observation variables. The ENGINE routine contains the propulsion system model. These subroutines and associated common blocks are described in detail in the following subsections. Aircraft Characteristics
Vehicle mass and geometry information is read from the file params.dat. These values are stored in the common block DATAIN as follows
COMMON /DATAIN/S
, B_ , CBAR, AMSS,
AIX , AIY , AIZ , AIXZ,
AIXY, AIYZ, AIXE
The first three variables in the common block, S, B, and CBAR, represent wing area, wingspan, and mean aerodynamic chord, respectively. The vehicle mass is represented by AMSS. The remaining values are vehicle inertias.
The aerodynamic data are communicated from ADATIN to CCALC through named common blocks that occur in only these two routines. The interface between CCALC and the main program consists of several named common blocks that are used to pass state variables, airdata parameters, surface positions, and force and moment coefficients between CCALC and the calling program.
The main transfer of data into the subroutine CCALC is through named common blocks. These common blocks contain the state variables, airdata parameters, and surface positions. The transfer of output data from CCALC is through a named common block containing the aerodynamic force and moment coefficients. The details of these common blocks follow.
The common block DRVOUT contains the state variables and their derivatives with respect to time. The structure of this common block is shown in Table 5. The state variables
Table 5. Names and locations of state variables and derivatives
in DERIVC common block.
Index
F
1
T
P
3
Q
4
R
5
Vv
6
ALP
7
BTA
8
THA
9 PSI
10
PHI
11
H
12
XxX
13
Y
DF
TDOT
PDOT QDOT RDOT VDOT ALPDOT BTADOT THADOT
PSIDOT
PHIDOT HDOT XDOT YDOT
Description
time
Pp q r velocity a B 6
y
¢ h X position y position
Equations of Motion and Atmospheric Model Routines The routine DERIVC calculates the equations of motion,
based on the previously listed model equations. The routine INTG integrates the equations to calculate the new state vector. The integration is performed using a second-order Runge-Kutta midpoint algorithm. Atmospheric model calCulations are performed by the ALTEN routine. Aerodynamic Model Routines
The aerodynamic model contains two major subroutines, ADATIN and CCALC. The subroutine ADATIN is used during initialization to input the basic formatted aerodynamic data from the file HPAS.dat. The subroutine CCALC uses this aerodynamic data, the state variables, and the surface positions to determine the aerodynamic coefficients. The CCALC subroutine is executed whenever new aerodynamic coefficients are required (for example, once each frame during a simulation).
are stored first, in the F array, and the derivatives follow in the DF array. Each array contains 13 elements. Routitties which require access to these arrays use an EQUIVALENCE statement to allow access to the variables by the names shown in Table 5, for clarity. For example, the body axis tates p, g, and r appear as P, Q, and R, respectively. Total velocity is represented by the variable V, and altitude by H.
COMMON /DERIVC/ F(13), DF(13)
The common block SIMOUT contains the main airdata parameters required for the function generation subroutine. The variables in this common block are
COMMON /SIMOUT/ AMCH, QBAR, GMA, DEL, UB, VB, WB,
VEAS, VCAS
12
Mach number and dynamic pressure are the first entries in the common block, symbolized by AMCH and QBAR, respectively. The body axis velocities u, v, and w are included as UB, VB, and WB, respectively.
Inputs to the actuator models are entered through the variables in the CONCOM common block, the structure of which is shown in the following
COMMON /CONCOM/ DAC, DHC, DRC, DDC The actuator model routine, ACTDYN, calculates the appropriate inputs to the aerodynamic model, based on the command inputs, and stores them in the CONTRL common block. The CONTRL common block contains the surface position and engine thrust information in the DC array. The structure of the common block /CONTRL/ is as follows
COMMON /CONTRL/ DC (30) There are six locations in the DC array used. The definition of these is shown in Table 6. Routines which access these parameters usually EQUIVALENCE them to the variable names shown in the table.
Table 6. Names and locations of command inputs.
Array index
1 5 8 9 1 12
Command variable DAC DHC DDC DRC -----
Position _—variable
DA DH DD DR
Function 5a ou dp br
left engine thrust right engine thrust
The common block SIMACC contains the accelerations, accelerometer outputs, and normal accelerometer output at the center of gravity of the aircraft.
COMMON
/SIMACC/ AX , AY , AZ , ANX, ANY, ANZ, AN
The output common block CLCOUT contains the variables representing the aerodynamic moment and force coefficients
COMMON /CLCOUTC/L, CM, CN, CD, CLFT, CY
The variables CL, CM, and CN are the symbols for the coefficients of rolling moment (C,), pitching moment (C,,), and yawing moment (C,), respectively; these terms are body axis coefficients. The stability axis forces are represented
by CD (coefficient of drag Crp), CLFT (coefficient of lift C,), and CY (sideforce coefficient Cy). Propulsion System Model Routines
The top level subroutine ENGINE computes individual engine parameters to calculate force, torque, and gyroscopic effects caused by engine offset from the centerline. Each time ENGINE is called, it calls the interface routine UENGIN, which calls the actual engine model in the routine ENGMDL. After ENGMDL computes thrust from each engine, ENGINE uses the parameters in the ENGSTF common to compute force, torque, and gyroscopic effects. The control inputs to the engine model are THRSTX(1) for the left engine throttle position in degrees, and THRSTX(2) for the right engine. The THRSTX array is in the CTPARM common block. The output thrust is available in two locations; left engine thrust appears as DC(11), in the CONTRL common block, and as THRUST(1) in the ENGSTF common block. Similarly, right engine thrust appears as DC(12) and THRUST(2). Various other parameters used for calculation of engine effects are passed through common block ENGSTF as follows
COMMON /ENGSTF/ THRUST (4), TLOCAT (4,3), XYANGL (4), XZANGL (4), TVANXY (4), TVANXZ (4), DXTHRS (4), EIX (4), AMSENG (4), ENGOMG (4)
The variables in this common block correspond to thrust (THRUST), the z-, y-, and z-body axis coordinates of the point at which thrust acts (TLOCAT); the orientation of the thrust vector in the x-y body axis plane (KYANGL) in degrees; the orientation of the thrust vector in the x-z body axis plane (XZANGL) in degrees; the orientation of the thrust vector in the z-y engine axis plane (TVANXY) in degrees; the orientation of the thrust vector in the x-z engine axis plane (TVANXZ) in degrees; the distance between the center-of-gravity of the engine and the thrust point (DXTHRS) measured positive in the negative x-engine axis; the rotational inertia of the engine (EIX); mass (AMSENG); and the rotational velocity of the engine (ENGOMG).
Although many of the engine arrays are sized to contain four elements, only the first two are used. The first element corresponds to the left engine, the second to the right engine. Engine data is contained in the file ENGINE.dat, stored as formatted text. Observation Model Routines
The common block OBSERV allows the user to access all the observation variables. This common block contains the two vectors OBS VEC(120) and PARAM(120,6). A list of the available observations and parameters is given in Table 7.
13
Table 7. Observation variables available
in the OBSVEC array.
Location (index)
in OBSVEC
Variables
State variables
1
Roll rate
2
Pitch rate
3
Yaw tate
4
Velocity
5
Angle of attack
6
Angle of sideslip
7
Pitch attitude
8
Heading
9
Roll attitude
10
Altitude
11
Displacement north
12
Displacement east
Derivatives of state variables
13
Roll acceleration
14
Pitch acceleration
15
Yaw acceleration
16
Velocity rate
17
Angle-of-attack rate
18
Angle-of-sideslip rate
19
Pitch attitude rate
20
Heading rate
21
Roll attitude rate
22
Altitude rate
23
Velocity north
24
Velocity east
Accelerations
25
z-body axis acceleration
26
y-body axis acceleration
27
z-body axis acceleration
28
z-body axis accelerometer at vehicle
center of gravity
29
y-body axis accelerometer at vehicle
center of gravity
30
z-body axis accelerometer at vehicle
center of gravity
31
Normal acceleration
32
z-body axis accelerometer not at
vehicle center of gravity
33
y-body axis accelerometer not
at vehicle center of gravity
34
z-body axis accelerometer not
at vehicle center of gravity
99
Normal accelerometer not
at vehicle center of gravity
98
Load factor
Table 7. Continued.
Location Gindex)
in OBSVEC
Variables
Airdata parameters
91
Speed of sound
37
Reynolds number
103
Reynolds number per
unit length
35
Mach number
36
Dynamic pressure
56
Impact pressure
55
Ambient pressure
57
Impact/ambient
pressure ratio
58
Total pressure
59
Temperature
60
Total temperature
92
Equivalent airspeed
93
Calibrated airspeed
Flightpath-related parameters
39
Flightpath angle
38
Flightpath acceleration
40
Flightpath angle rate
43
Scaled altitude rate
Energy-related terms
46
Specific power
47
Specific energy
Force parameters
94
Lift force
95
Drag force
96
Normal force
97
Axial force
Body axis parameters
52
z-body axis velocity
53
y-body axis velocity
54
z-body axis velocity
100
Rate of change of velocity in
z-body axis
101
Rate of change of velocity in
y-body axis
102
Rate of change of velocity in
z-body axis
Miscellaneous measurements not
at vehicle center of gravity
44
Angle of attack not at
vehicle center of gravity
45
Angle of sideslip not at
vehicle center of gravity
41
Altitude instrument not at
vehicle center of gravity
42
Altitude rate instrument not
at vehicle center of gravity
14
Table 7. Concluded.
Location (index)
in OBSVEC
Variables
Other miscellaneous parameters
48
Vehicle total angular
momentum
49
Stability axis roll rate
50
Stability axis pitch rate
51
Stability axis yaw rate
Control surface parameters
61 to 90
Control surfaces DC(1)
to DC(30)
Propulsion parameters
107
Throttle position - left engine
108
Throttle position - right engine
The observation vector is produced by the INSTRM routine, which contains calculations for instrumentation and observation models. The observation vector is in the OBSVEC array, in the OBSERV common block as follows
COMMON /OBSERV/ OBSVEC(120), PARAM(120,6) The contents of the observation vector are strictly outputs from the simulation; none of the models use these values. The stored parameters were selected to provide a variety of useful information; however, several unused locations (OBSVEC(109) - OBSVEC(120)) are available for the user to include other observation variables. The user may also modify any of the locations without affecting the simulation. The PARAM array is used to store parameters which affect corresponding measurements in OBSVEC, such as the locations of an accelerometer not at the vehicle center of gravity. Interfacing and Using the Model as a Simulation
This section describes the typical method of interfacing to and operating the simulation built from the FORTRAN implementation of the model. The information in this section is sufficient to allow a user to interface to the simulation and begin using it, without being concerned about the details of the model, equations, or the FORTRAN program.
The routine UCNTRL contains the user control law implementation. The inputs to this routine may be taken from any common block, but typically use the observation variables in the OBSVEC array, in the OBSERV common block. The OBSVEC array contains many parameters which would be unmeasurable on an actual aircraft; these should not be used as inputs to a practical control system. The outputs are the four contro! position commands in the CONCOM common block, and the two throttle settings, THRSTX, in the CTPARM common block. A simple autopilot is provided in the distribution UCNTRL as an example.
Routines for user supplied input and output are also provided. The routine URTIN is called at the start of each frame loop, to perform input. The routine URTOUT is called at the end of each loop to perform output tasks. These routines may perform any function the user wishes. They may contain file I/O, interfaces to a network, a windowing system, or shared memory. Using these routines, the user may implement displays or recording capability and control the simulation, These routines are called in the main loop, so their execution will affect execution time significantly. Examples of these routines are provided in the distribution.
A routine is provided for user specified initialization, UINIT. This routine is called once, as the last step in the initialization sequence. Any initializations may be included here.
The simulation has three mutually exclusive modes of operation; operate, reset, and hold. The mode selection is performed by setting one of the variables, OPERAT, RESET, or HOLD to true, and resetting the remaining two variables to false. These variables are found in the common block SSS001. Operate is the normal mode in which the simulation executes all the input, output, integration, and model routines. In hold mode, the simulation only executes the input and output routines; all states and parameters hold their last value. In reset mode, the simulation is reinitialized to the user specified initial conditions. The model routines are called, but no integrations are performed, so simulation time does not pass.
Initial conditions are specified in the array FIC, which contains a value for each of the 13 state variables. This array is in the common block SETICS. These values are copied into the state vector (F) by the ICSET routine whenever the simulation is placed into reset mode. Default initial conditions are provided in the block data initialization, but a new set may be used at any time by setting the desired values in the FIC array and putting the simulation into reset mode.
Concluding Remarks
This paper describes a generic, state-of-the-art, highperformance aircraft model, including detailed, fullenvelope, nonlinear aerodynamics, and full-envelope thrust and first-order engine response data. While this model was primarily developed for the AIAA Controls Design Challenge, the availability of such a model provides a common focus for research in aeronautical control theory and methodology. This paper also describes an implementation of this model using the FORTRAN computer language, associated routines furnished with the aircraft model, and techniques for interfacing these routines to external procedures. Figures showing vehicle geometry, surfaces, and sign conventions are included.
15
References
Clancy, L.J., Aerodynamics, John Wiley & Sons, New York, NY, 1975,
Dommasch, Daniel O., Sherby, Sydney S., and Connolly, Thomas F., Airplane Aerodynamics, Fourth Edition, Pitman, New York, NY, 1967.
Duke, E.L., Antoniewicz, R.F., and Krambeer, K.D., Derivation and Definition of a Linear Aircraft Model, NASA RP-1207, Aug. 1988.
Duke ELL., Patterson, B.P., Antoniewicz, R.F., Users Manual for LINEAR, a FORTRAN Program to Derive Linear Aircraft Models, NASA TP-2768, Dec. 1987.
Etkin, Bernhard, Dynamics of Atmospheric Flight, John Wiley Sons, New York, 1972.
Gainer, Thomas G. and Hoffman, Sherwood, Summary of Transformation Equations and Equations of Motion Used in Free-F light and Wind-Tunnel Data Reduction and Analysis, NASA SP-3070, 1972.
Gracey, William, Measurement of Aircraft Speed and Altitude, NASA RP-1046, 1980.
U.S. Standard Atmosphere, 1962, U.S. Government Printing Office, Washington 25, D.C., 1962.
16
REPORT DOCUMENTATION PAGE
Ome Moe.o188
fgPoaulbtllheieccrtiinorgneipgohoarfwntadiyin,ngmfaoSribumnuiatrttadeiieonnn1i,2n0gfo4r,ththeAirsldiiacnntoggaltlosennc,eteiodneVAdt,oi2fo2n2aisn0ndf2o-fro4crm3oa0rmt2epid,lounectaiiinnnsdggesttaothniidstmhaebtrueeOrdvfdifeeitnwco,ienagvtoofertWMaheagasenhcaoigl1nlgehtcotouinron
1. AGENCY USE ONLY (Leave blank) [2. REPORT DATE
pHeoerafanddriqneufsaoprromtnaesButdgeter,i,son.SiPneacrplvSueeindrcweos,rcktoDhmieFrmeetcintmtoesraftoer
3. REPORT TYPE
rPejvriaoerjwiidennicgftnogrm(a0tt7hiisin0oeb4nt-ur0ru1dOc8etp8ineo)rn,aset,sitWoiasnmsesahatriecnahngidotrnognRa,enpeyxoDirsCotttsih,ne2gr05102da3a1st.5paecJtseofuiorfecretshsoi,ns
AND DATES COVERED
December 1991
NASA Contractor Report
4. TITLE AND SUBTITLE
5. FUNDING NUMBERS
An Aircraft Model for the AIAA Controls Design Challenge
6. AUTHOR(S)
RTOP 505-64-30
Randal W. Brumbaugh
7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES)
NASA Dryden Flight Research Facility P.O. Box 273 Edwards, California 93523-0273
8. PREEPROFROTRMINNUGMBEORRGANIZATION
H-1777
9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES)
National Aeronautics and Space Administration Washington, DC 20546-0001
10. SPONSORING/MONITORING AGENCY REPORT NUMBER
NASA CR-186019
11. SUPPLEMENTARY NOTES
Prepared as AIAA Louisiana, August
91-2631. 12, 1991.
Presented Technical
at the AIAA GNC Conference, monitor: Vince Chacon
New
Orleans,
12a. DISTRIBUTION/AVAILABILITY STATEMENT
12b. DISTRIBUTION CODE
Unclassified — Unlimited Subject Category 05
13. ABSTRACT (Maximum 200 words)
nuiradorsneeenitsTvlneeheigirailfnnrsoacectpclahhpeiureanddipgenFedar.fOeatorherRedorseTodtesnyhRcaenrurAaiotAmNbuiiIetccsiAasnlAc,eaoscmgaoCeptnnonoudtnetrtreeorif xlrcot,lerstulnhsaaetnDloalgertueyspa-il roggoafencn-,d- ethdCeutamh-hre seaaresutrlsosthl.n tc,eoindaahgotv Fniedleig,doghufe g-riytrperh.oessel utrt-aifsTovno hohareiroisdsmwlepaairfbpnneiuacnge lrpgeineitirvnysaeehihareoilcfdrcsroelasesfwutpdicoegthmsnheocsordeamtieehmbledteo,arstdayaei,i.rlancncrslWapuifuhrrmtidfolpiavenmlcigoeedsdmteh,edesilesnt,atamanaiodtlacdeinoedsdo,limngmtnfweouoacfclnshlotn-nhipevifqrnseoivuncememutlasosiordopienffelolso,yrr
14. SUBJECT TERMS
15. NUMBER OF PAGES
Simulation; Controls; Design challenge; Model; Numerical simulation
19 | 16. PRICE CODE
"7. OSFECURREIPTOYRT CLASSIFICATION 116, OSFECTUHRIISTYPAGCELASSIFICATION ] 19. OSFECUARBISTTYRACCTLASSIFICATION
A02
Unclassified
Unclassified
Unclassified
Unlimited
NSN 7540-01-280-5500
Standard Form 298 (Rev. 2-89)
Prescribed by ANS! Std. 730-18
208-102