1
0
Fork 0
fgdata/Aircraft/c172p/c172p.xml

678 lines
20 KiB
XML
Raw Normal View History

<FDM_CONFIG NAME="c172" VERSION="1.65">
<!--
File: c172p.xml
Author: David Megginson (based on c172r.xml by Tony Peden)
CVS Version: $Id$
Function: Models a 1981 Cessna 172P.
Sources:
Tony Peden, c172r.xml, JSBSim (http://jsbsim.sourceforge.net/).
Jan Roskam, Airplane Flight Dynamics and Automatic Flight
Controls. Part I. DARcorporation, 1995.
Notes:
Roskam's data is for a 182, not a 172, but it should be close
enough. He gives linear coefficients for three states:
1. Climb (5.4 deg alpha).
2. Cruise (0 deg alpha).
3. Approach (4 deg alpha, and presumably, full flaps).
I have extrapolated small tables from this data to account for the
effects of flaps and alpha, especially in the lateral coefficients.
-->
<METRICS>
<!--
// Wing area (ft^2)
// Wing span (ft)
// Wing avg. chord (ft)
// H. Tail Area (ft^2)
// Wing MAC to H.Tail MAC (ft)
// V. Tail Area (ft^2)
// Wing MAC to V.Tail MAC (ft)
// Ixx
// Iyy
// Izz
// Ixz
// Empty weight
// Center of gravity location, empty weight, in aircraft's own structural coord
// system. X, Y, Z, in inches
// Pilot's eyepoint location, in aircraft's own coord system, FROM cg.
// X, Y, Z, in inches
AC_AERORP 43.2 0.0 59.4
-->
AC_WINGAREA 174 <!-- square feet -->
AC_WINGSPAN 35.8 <!-- ft -->
AC_CHORD 4.9 <!-- ft -->
AC_HTAILAREA 21.9 <!-- square feet -->
AC_HTAILARM 15.7 <!-- ft -->
AC_VTAILAREA 16.5 <!-- square feet -->
AC_LV 15.7 <!-- ft -->
AC_IXX 948
AC_IYY 1346
AC_IZZ 1967
AC_IXZ 0
AC_EMPTYWT 1500
AC_AERORP 43.2 0.0 59.4
AC_CGLOC 41.0 0.0 36.5
<!-- Pilot -->
AC_POINTMASS 180.0 36.0 -14.0 24.0
<!-- Co-pilot -->
<!-- AC_POINTMASS 180.0 36.0 14.0 24.0 -->
AC_EYEPTLOC 37.0 0.0 48.0
AC_VRP 42.6 0.0 38.5
</METRICS>
<UNDERCARRIAGE>
<!--
The gear parameters that can be specified are as follows, IN ORDER OF APPEARANCE:
AC_GEAR
<name> name of gear entry - no spaces allowed
<X> <Y> <Z> Gear location in aircraft body coords in inches
<spring constant> spring constant in lbs/ft
<damping coefficient> damping coefficient in lbs/ft/sec
<dynamic friction coefficient> Self-explanatory: sliding friction coefficient
<static friction coefficient> Self-explanatory: "onset" friction coefficient
<rolling friction coefficient> Self-explanatory: rolling friction coefficient
<steerability attribute> One of <STEERABLE | FIXED | CASTERED>
<brake group membership> One of <LEFT | CENTER | RIGHT | NOSE | TAIL | NONE>
<max steer angle> Maximum steerable angle in degrees
<retraction attribute> <RETRACT | FIXED>
-->
AC_GEAR NOSE -6.8 0.0 -20.0 1800 600 0.5 0.8 0.02 STEERABLE NONE 10 FIXED
AC_GEAR LEFT_MAIN 58.2 -43.0 -17.9 5400 1600 0.5 0.8 0.02 FIXED LEFT 0 FIXED
AC_GEAR RIGHT_MAIN 58.2 43.0 -17.9 5400 1600 0.5 0.8 0.02 FIXED RIGHT 0 FIXED
AC_GEAR TAIL_SKID 188.0 0.0 8.0 20000 1000 0.2 0.2 0.2 FIXED NONE 0 FIXED
AC_GEAR LEFT_TIP 43.2 -214.8 59.4 10000 2000 0.2 0.2 0.2 FIXED NONE 0 FIXED
AC_GEAR RIGHT_TIP 43.2 214.8 59.4 10000 2000 0.2 0.2 0.2 FIXED NONE 0 FIXED
</UNDERCARRIAGE>
<PROPULSION>
<!--
TANKS SECTION
Tank locations and characteristics, empty weight, in aircraft's own coord system:
X, Y, Z, in inches
effective radius of tank, in inches (for fuel slosh, if/when modeled)
capacity in pounds
Current contents, in pounds
ENGINE[S] SECTION
Engine[s] is|are specified by giving engine name (which corresponds to an engine
definition file in the "engines" directory) followed by x, y, z placement and
pitch and yaw orientation. Coordinates are given in inches in the structural
coordinate frame. Angles for pitch and yaw are specified in radians.
AC_ENGINE name x y z pitch yaw
THRUSTER[S] SECTION
AC_THRUSTER name x y z pitch yaw
-->
<AC_ENGINE FILE="eng_io320">
XLOC -19.7
YLOC 0.0
ZLOC 26.6
PITCH 0.0
YAW 0.0
FEED 0
FEED 1
<AC_THRUSTER FILE="prop_75in2f">
XLOC -37.7
YLOC 0.0
ZLOC 26.6
PITCH 0.0
YAW 0
P_FACTOR 10.0
SENSE 1.0
</AC_THRUSTER>
</AC_ENGINE>
<AC_TANK TYPE="FUEL" NUMBER="0">
XLOC 56.0
YLOC -112.0
ZLOC 59.4
RADIUS 29.4
CAPACITY 185.0
CONTENTS 100.0
</AC_TANK>
<AC_TANK TYPE="FUEL" NUMBER="1">
XLOC 56.0
YLOC 112.0
ZLOC 59.4
RADIUS 29.4
CAPACITY 185.0
CONTENTS 100.0
</AC_TANK>
</PROPULSION>
<FLIGHT_CONTROL NAME="c172">
<COMPONENT NAME="Pitch Trim Sum" TYPE="SUMMER">
INPUT fcs/elevator-cmd-norm
INPUT fcs/pitch-trim-cmd-norm
CLIPTO -1 1
</COMPONENT>
<COMPONENT NAME="Elevator Control" TYPE="AEROSURFACE_SCALE">
INPUT fcs/pitch-trim-sum
MIN -28
MAX 23
OUTPUT fcs/elevator-pos-rad
GAIN 0.01745
</COMPONENT>
<COMPONENT NAME="Roll Trim Sum" TYPE="SUMMER">
INPUT fcs/aileron-cmd-norm
INPUT fcs/roll-trim-cmd-norm
CLIPTO -1 1
</COMPONENT>
<COMPONENT NAME="Left Aileron Control" TYPE="AEROSURFACE_SCALE">
INPUT fcs/roll-trim-sum
MIN -20
MAX 15
GAIN 0.01745
OUTPUT fcs/left-aileron-pos-rad
</COMPONENT>
<COMPONENT NAME="Right Aileron Control" TYPE="AEROSURFACE_SCALE">
INPUT fcs/roll-trim-sum
MIN -20
MAX 15
GAIN -0.01745
OUTPUT fcs/right-aileron-pos-rad
</COMPONENT>
<COMPONENT NAME="Yaw Trim Sum" TYPE="SUMMER">
INPUT fcs/rudder-cmd-norm
INPUT fcs/yaw-trim-cmd-norm
CLIPTO -1 1
</COMPONENT>
<COMPONENT NAME="Rudder Control" TYPE="AEROSURFACE_SCALE">
INPUT fcs/yaw-trim-sum
MIN -16
MAX 16
GAIN 0.01745
OUTPUT fcs/rudder-pos-rad
</COMPONENT>
<COMPONENT NAME="Flaps Control" TYPE="KINEMAT">
INPUT fcs/flap-cmd-norm
DETENTS 4
0 0
10 2
20 1
30 1
OUTPUT fcs/flap-pos-deg
</COMPONENT>
</FLIGHT_CONTROL>
<AERODYNAMICS>
AC_ALPHALIMITS -0.087 0.28
AC_HYSTLIMITS 0.09 0.36
<AXIS NAME="LIFT">
<GROUP NAME="CLb">
Basic_lift
<!-- Peden -->
<FACTOR NAME="kCLge" TYPE="VECTOR">
Change_in_lift_due_to_ground_effect
13
aero/h_b-mac-ft
none
0.0 1.203
0.1 1.127
0.15 1.090
0.2 1.073
0.3 1.046
0.4 1.055
0.5 1.019
0.6 1.013
0.7 1.008
0.8 1.006
0.9 1.003
1.0 1.002
1.1 1.0
</FACTOR>
<!-- Peden -->
<COEFFICIENT NAME="CLwbh" TYPE="TABLE">
Lift_due_to_alpha
17
2
aero/alpha-rad
aero/stall-hyst-norm
aero/qbar-psf | metrics/Sw-sqft
0 1
-0.09 -0.22 -0.22
0 0.25 0.25
0.09 0.73 0.73
0.1 0.83 0.78
0.12 0.92 0.79
0.14 1.02 0.81
0.16 1.08 0.82
0.17 1.13 0.83
0.19 1.19 0.85
0.21 1.25 0.86
0.24 1.35 0.88
0.26 1.44 0.9
0.28 1.47 0.92
0.3 1.43 0.95
0.32 1.38 0.99
0.34 1.3 1.05
0.36 1.15 1.15
</COEFFICIENT>
<!-- Peden -->
<COEFFICIENT NAME="CLDf" TYPE="VECTOR">
Delta_lift_due_to_flap_deflection
4
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft
0 0
10 0.20
20 0.30
30 0.35
</COEFFICIENT>
</GROUP>
<!-- Roskam p.481 -->
<COEFFICIENT NAME="CLDe" TYPE="VALUE">
Lift_due_to_Elevator_Deflection
aero/qbar-psf | metrics/Sw-sqft | fcs/elevator-pos-rad
0.43
</COEFFICIENT>
<!-- Roskam p.481 -->
<COEFFICIENT NAME="CLadot" TYPE="VALUE">
Lift_due_to_alpha_rate
aero/qbar-psf | metrics/Sw-sqft | aero/alphadot-rad_sec | aero/ci2vel
1.7
</COEFFICIENT>
<!-- Roskam p.481 -->
<COEFFICIENT NAME="CLq" TYPE="VALUE">
Lift_due_to_pitch_rate
aero/qbar-psf | metrics/Sw-sqft | velocities/q-aero-rad_sec | aero/ci2vel
3.9
</COEFFICIENT>
</AXIS>
<AXIS NAME="DRAG">
<!-- Roskam p.481 -->
<COEFFICIENT NAME="CDo" TYPE="VALUE">
Drag_at_zero_lift
aero/qbar-psf | metrics/Sw-sqft
0.0270
</COEFFICIENT>
<GROUP NAME="CDb">
Basic_drag
<!-- Peden -->
<FACTOR NAME="kCDge" TYPE="VECTOR">
Change_in_drag_due_to_ground_effect
13
aero/h_b-mac-ft
none
0.0 0.048
0.1 0.515
0.15 0.629
0.2 0.709
0.3 0.815
0.4 0.882
0.5 0.928
0.6 0.962
0.7 0.988
0.8 1.0
0.9 1.0
1.0 1.0
1.1 1.0
</FACTOR>
<!-- Peden -->
<COEFFICIENT NAME="CDDf" TYPE="VECTOR">
Delta_drag_due_to_flap_deflection
4
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft
0 0
10 0.007
20 0.012
30 0.018
</COEFFICIENT>
<!-- Peden -->
<COEFFICIENT NAME="CDwbh" TYPE="TABLE">
Drag_due_to_alpha
26
4
aero/alpha-rad
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft
0 10 20 30
-0.0872664 0.00407143 3.8165e-05 0.000512444 0.00137231
-0.0698132 0.0013424 0.000440634 0.00248067 0.00412341
-0.0523599 8.96747e-05 0.00231942 0.0059252 0.00835082
-0.0349066 0.000313268 0.00567451 0.0108461 0.0140545
-0.0174533 0.00201318 0.0105059 0.0172432 0.0212346
0 0.0051894 0.0168137 0.0251167 0.0298909
0.0174533 0.00993967 0.0247521 0.0346492 0.0402205
0.0349066 0.0162201 0.0342207 0.0457119 0.0520802
0.0523599 0.0240308 0.0452195 0.0583047 0.0654701
0.0698132 0.0333717 0.0577485 0.0724278 0.0803902
0.0872664 0.0442427 0.0718077 0.088081 0.0968405
0.10472 0.056644 0.0873971 0.105265 0.114821
0.122173 0.0705754 0.104517 0.123978 0.134332
0.139626 0.086037 0.123166 0.144222 0.155373
0.15708 0.096239 0.135317 0.157346 0.168984
0.174533 0.106859 0.147857 0.170848 0.182966
0.191986 0.118034 0.160954 0.184905 0.197503
0.209439 0.129765 0.174606 0.199517 0.212596
0.226893 0.142366 0.189176 0.215072 0.228643
0.244346 0.156452 0.205363 0.23231 0.246406
0.261799 0.172732 0.223956 0.252059 0.266733
0.279253 0.178209 0.230187 0.258667 0.273529
0.296706 0.171598 0.222665 0.25069 0.265325
0.314159 0.161786 0.211468 0.2388 0.253089
0.331613 0.147493 0.19508 0.221364 0.235129
0.349066 0.109678 0.151171 0.174408 0.186649
</COEFFICIENT>
</GROUP>
<!-- Roskam p.481 -->
<COEFFICIENT NAME="CDDe" TYPE="VALUE">
Drag_due_to_Elevator_Deflection
aero/qbar-psf | metrics/Sw-sqft | fcs/mag-elevator-pos-rad
0
</COEFFICIENT>
<!-- Peden -->
<COEFFICIENT NAME="CDbeta" TYPE="VALUE">
Drag_due_to_sideslip
aero/qbar-psf | metrics/Sw-sqft | aero/mag-beta-rad
0.17
</COEFFICIENT>
</AXIS>
<AXIS NAME="SIDE">
<!-- based on Roskam p.482, clamped to +/-20deg beta -->
<COEFFICIENT NAME="CYb" TYPE="TABLE">
Side_force_due_to_beta
3
2
aero/beta-rad
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft
0 30
-0.349 0.137 0.106
0 0 0
0.349 -0.137 -0.106
</COEFFICIENT>
<!-- Roskam p.482 -->
<COEFFICIENT NAME="CYda" TYPE="VALUE">
Side_force_due_to_aileron
aero/qbar-psf | metrics/Sw-sqft | fcs/left-aileron-pos-rad
0
</COEFFICIENT>
<!-- Roskam p.482 -->
<COEFFICIENT NAME="CYdr" TYPE="VALUE">
Side_force_due_to_rudder
aero/qbar-psf | metrics/Sw-sqft | fcs/rudder-pos-rad
0.187
</COEFFICIENT>
<!-- based on Roskam p.482 -->
<COEFFICIENT NAME="CYp" TYPE="TABLE">
Side_force_due_to_roll_rate
2
2
aero/alpha-rad
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft | aero/bi2vel | velocities/p-aero-rad_sec
0 30
0.000 -0.075 -0.161
0.094 -0.145 -0.231
</COEFFICIENT>
<!-- based on Roskam p.482 -->
<COEFFICIENT NAME="CYr" TYPE="TABLE">
Side_force_due_to_yaw_rate
2
2
aero/alpha-rad
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft | aero/bi2vel | velocities/r-aero-rad_sec
0 30
0.000 0.214 0.162
0.094 0.267 0.215
</COEFFICIENT>
</AXIS>
<AXIS NAME="ROLL">
<!-- based on Roskam p.482, clamped to +/-20deg beta -->
<COEFFICIENT NAME="Clb" TYPE="VECTOR">
Roll_moment_due_to_beta
3
aero/beta-rad
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft
-0.349 0.0322
0 0
0.349 -0.0322
</COEFFICIENT>
<!-- Roskam p.482 -->
<COEFFICIENT NAME="Clp" TYPE="VALUE">
Roll_moment_due_to_roll_rate_(roll_damping)
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | aero/bi2vel | velocities/p-aero-rad_sec
-0.484
</COEFFICIENT>
<!-- based on Roskam p.482 -->
<COEFFICIENT NAME="Clr" TYPE="TABLE">
Roll_moment_due_to_yaw_rate
2
2
aero/alpha-rad
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | aero/bi2vel | velocities/r-aero-rad_sec
0 30
0.000 0.0798 0.1246
0.094 0.1869 0.2317
</COEFFICIENT>
<!-- Roskam p.482 -->
<COEFFICIENT NAME="ClDa" TYPE="VALUE">
Roll_moment_due_to_aileron
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | fcs/left-aileron-pos-rad
0.229
</COEFFICIENT>
<!-- Roskam p.482 -->
<COEFFICIENT NAME="Cldr" TYPE="VALUE">
Roll_moment_due_to_rudder
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | fcs/rudder-pos-rad
0.0147
</COEFFICIENT>
</AXIS>
<AXIS NAME="PITCH">
<!-- Peden -->
<COEFFICIENT NAME="Cmo" TYPE="VALUE">
Pitching_moment_at_zero_alpha
aero/qbar-psf | metrics/Sw-sqft | metrics/cbarw-ft
0.1
</COEFFICIENT>
<!-- Peden -->
<COEFFICIENT NAME="Cmalpha" TYPE="VALUE">
Pitch_moment_due_to_alpha
aero/qbar-psf | metrics/Sw-sqft | metrics/cbarw-ft | aero/alpha-rad
-1.8
</COEFFICIENT>
<!-- Roskam p.481 -->
<COEFFICIENT NAME="Cmq" TYPE="VALUE">
Pitch_moment_due_to_pitch_rate
aero/qbar-psf | metrics/Sw-sqft | metrics/cbarw-ft | aero/ci2vel | velocities/q-aero-rad_sec
-12.4
</COEFFICIENT>
<!-- based on Roskam p.481 -->
<COEFFICIENT NAME="Cmadot" TYPE="VALUE">
Pitch_moment_due_to_alpha_rate
aero/qbar-psf | metrics/Sw-sqft | metrics/cbarw-ft | aero/ci2vel | aero/alphadot-rad_sec
-7.27
</COEFFICIENT>
<!-- Roskam p.481 -->
<COEFFICIENT NAME="Cmde" TYPE="VALUE">
Pitch_moment_due_to_elevator_deflection
aero/qbar-psf | metrics/Sw-sqft | metrics/cbarw-ft | fcs/elevator-pos-rad
-1.122
</COEFFICIENT>
<!-- Peden -->
<COEFFICIENT NAME="Cmdf" TYPE="VECTOR">
Delta_pitching_moment_due_to_flap_deflection
4
fcs/flap-pos-deg
aero/qbar-psf | metrics/Sw-sqft | metrics/cbarw-ft
0 0
10 -0.0654
20 -0.0981
30 -0.1140
</COEFFICIENT>
</AXIS>
<AXIS NAME="YAW">
<!-- based on Roskam p.482, clamped to +/-20deg beta -->
<COEFFICIENT NAME="Cnb" TYPE="VECTOR">
Yaw_moment_due_to_beta
3
aero/beta-rad
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft
-0.349 -0.0205
0 0
0.349 0.0205
</COEFFICIENT>
<!-- Roskam p.482 -->
<COEFFICIENT NAME="Cnp" TYPE="VALUE">
Yaw_moment_due_to_roll_rate
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | aero/bi2vel | velocities/p-aero-rad_sec
-0.0278
</COEFFICIENT>
<!-- Roskam p.482 -->
<COEFFICIENT NAME="Cnr" TYPE="VALUE">
Yaw_moment_due_to_yaw_rate
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | aero/bi2vel | velocities/r-aero-rad_sec
-0.0937
</COEFFICIENT>
<!-- Peden -->
<COEFFICIENT NAME="Cnda" TYPE="VALUE">
Yaw_moment_due_to_aileron
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | fcs/left-aileron-pos-rad
-0.0053
</COEFFICIENT>
<!-- Peden -->
<COEFFICIENT NAME="Cndr" TYPE="VALUE">
Yaw_moment_due_to_rudder
aero/qbar-psf | metrics/Sw-sqft | metrics/bw-ft | fcs/rudder-pos-rad
-0.043
</COEFFICIENT>
</AXIS>
</AERODYNAMICS>
<!--
OUTPUT section definition
The following specifies the way that JSBSim writes out data.
NAME is the filename you want the output to go to
TYPE can be:
CSV Comma separated data. If a filename is supplied then the data
goes to that file. If COUT or cout is specified, the data goes
to stdout. If the filename is a null filename the data goes to
stdout, as well.
SOCKET Will eventually send data to a socket output, where NAME
would then be the IP address of the machine the data should be
sent to. DON'T USE THIS YET!
TABULAR Columnar data. NOT IMPLEMENTED YET!
TERMINAL Output to terminal. NOT IMPLEMENTED YET!
NONE Specifies to do nothing. THis setting makes it easy to turn on and
off the data output without having to mess with anything else.
The arguments that can be supplied, currently, are
RATE_IN_HZ An integer rate in times-per-second that the data is output. This
value may not be *exactly* what you want, due to the dependence
on dt, the cycle rate for the FDM.
The following parameters tell which subsystems of data to output:
SIMULATION ON|OFF
ATMOSPHERE ON|OFF
MASSPROPS ON|OFF
AEROSURFACES ON|OFF
RATES ON|OFF
VELOCITIES ON|OFF
FORCES ON|OFF
MOMENTS ON|OFF
POSITION ON|OFF
COEFFICIENTS ON|OFF
GROUND_REACTIONS ON|OFF
FCS ON|OFF
PROPULSION ON|OFF
NOTE that Time is always output with the data.
-->
<OUTPUT NAME="JSBout172.csv" TYPE="NONE">
RATE_IN_HZ 20
SIMULATION OFF
ATMOSPHERE ON
MASSPROPS ON
AEROSURFACES ON
RATES ON
VELOCITIES ON
FORCES ON
MOMENTS ON
POSITION ON
COEFFICIENTS ON
GROUND_REACTIONS ON
FCS ON
PROPULSION ON
</OUTPUT>
</FDM_CONFIG>