A3XX: Major AP Bugfix, Major Improve AP, Improve FBW
This commit is contained in:
parent
85bc704040
commit
cfc83ea07d
15 changed files with 577 additions and 2180 deletions
341
A319-100-CFM.xml
341
A319-100-CFM.xml
|
@ -559,346 +559,9 @@ YAW MOI_________3950000______23089847_______24848934
|
|||
<system file="glass-effect1" />
|
||||
<system file="it-fbw" />
|
||||
<system file="fmgc" />
|
||||
<system file="fcs" />
|
||||
|
||||
<flight_control name="FCS: A320">
|
||||
<channel name="Pitch">
|
||||
<summer name="Pitch Trim Sum">
|
||||
<input>/controls/flight/elevator-sum</input>
|
||||
<input>/controls/flight/elevator-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Elevator Control">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<gain>0.015</gain>
|
||||
<range>
|
||||
<min>-20</min>
|
||||
<max>20</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
<aerosurface_scale name="Elevator Position Normalizer">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Roll">
|
||||
<summer name="Roll Trim Sum">
|
||||
<input>/controls/flight/aileron-sum</input>
|
||||
<input>/controls/flight/aileron-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Left Aileron Control">
|
||||
<input>fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron Control">
|
||||
<input>-fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Left Aileron position normalized">
|
||||
<input>fcs/left-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron position normalized">
|
||||
<input>fcs/right-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Throttle">
|
||||
<pure_gain name="fcs/throttle1">
|
||||
<input>/controls/engines/engine[0]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm</output>
|
||||
<output>fcs/throttle-pos-norm</output>
|
||||
</pure_gain>
|
||||
<pure_gain name="fcs/throttle2">
|
||||
<input>/controls/engines/engine[1]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm[1]</output>
|
||||
<output>fcs/throttle-pos-norm[1]</output>
|
||||
</pure_gain>
|
||||
</channel>
|
||||
|
||||
<channel name="Yaw">
|
||||
<pure_gain name="fcs/rudder-cmd">
|
||||
<input>/controls/flight/rudder-fdm</input>
|
||||
<gain>-1</gain>
|
||||
<output>fcs/rudder-cmd-norm</output>
|
||||
</pure_gain>
|
||||
|
||||
<summer name="Rudder Command Sum">
|
||||
<input>fcs/rudder-cmd-norm</input>
|
||||
<input>fcs/yaw-trim-cmd-norm</input>
|
||||
<clipto>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Rate">
|
||||
<input>velocities/r-aero-rad_sec</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 2.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Beta">
|
||||
<input>aero/beta-rad</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 0.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Yaw Damper Sum">
|
||||
<input>fcs/yaw-damper-beta</input>
|
||||
<input>fcs/yaw-damper-rate</input>
|
||||
<clipto>
|
||||
<min> -0.1 </min>
|
||||
<max> 0.1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Final">
|
||||
<input>fcs/yaw-damper-sum</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.0
|
||||
31 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Rudder Sum">
|
||||
<input>fcs/rudder-command-sum</input>
|
||||
<input>fcs/yaw-damper-final</input>
|
||||
<clipto>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Rudder Control">
|
||||
<input>fcs/rudder-sum</input>
|
||||
<range>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="rudder normalization">
|
||||
<input>fcs/rudder-pos-rad</input>
|
||||
<domain>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</domain>
|
||||
<range>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Flaps">
|
||||
|
||||
<kinematic name="Flaps Control">
|
||||
<input>/controls/flight/flaps</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>35</position>
|
||||
<time>40</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/flap-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Flap position normalized">
|
||||
<input>fcs/flap-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>35</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/flap-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Slats">
|
||||
|
||||
<kinematic name="Slats Control">
|
||||
<input>/controls/flight/slats</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>27</position>
|
||||
<time>30</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/slat-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Slat position normalized">
|
||||
<input>fcs/slat-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>27</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/slat-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Landing Gear">
|
||||
|
||||
<kinematic name="Gear Control">
|
||||
<input>gear/gear-cmd-norm</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>10</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>gear/gear-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Speedbrake">
|
||||
<kinematic name="Speedbrake">
|
||||
<input>/controls/flight/spoiler-output</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>1</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/speedbrake-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Tiller">
|
||||
|
||||
<switch name="/controls/gear/tiller-disabled">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/gear/tiller-enabled == 0
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="Nose Wheel Steering 0">
|
||||
<function name="fcs/steer-nose-deg[0]">
|
||||
<description>Steering command for nose gear</description>
|
||||
<sum>
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">/controls/gear/tiller-cmd-norm</independentVar>
|
||||
<independentVar lookup="column">/controls/flight/rudder</independentVar>
|
||||
<tableData>
|
||||
-1 0 1
|
||||
-1 -70 -70 -70
|
||||
0 -7 0 7
|
||||
1 70 70 70
|
||||
</tableData>
|
||||
</table>
|
||||
<property>/controls/gear/tiller-enabled</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<property>/controls/flight/rudder</property>
|
||||
<value>70</value>
|
||||
</product>
|
||||
<property>/controls/gear/tiller-disabled</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- simulate rotational friction -->
|
||||
<actuator name="Gear Nose Actuator">
|
||||
<input>fcs/steer-nose-deg[0]</input>
|
||||
<rate_limit>70</rate_limit>
|
||||
<output>fcs/steer-pos-deg[0]</output>
|
||||
</actuator>
|
||||
|
||||
</channel>
|
||||
|
||||
|
||||
</flight_control>
|
||||
|
||||
<flight_control name="none"/>
|
||||
|
||||
<aerodynamics>
|
||||
|
||||
|
|
341
A319-100-IAE.xml
341
A319-100-IAE.xml
|
@ -559,346 +559,9 @@ YAW MOI_________3950000______23089847_______24848934
|
|||
<system file="glass-effect1" />
|
||||
<system file="it-fbw" />
|
||||
<system file="fmgc" />
|
||||
<system file="fcs" />
|
||||
|
||||
<flight_control name="FCS: A320">
|
||||
<channel name="Pitch">
|
||||
<summer name="Pitch Trim Sum">
|
||||
<input>/controls/flight/elevator-sum</input>
|
||||
<input>/controls/flight/elevator-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Elevator Control">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<gain>0.015</gain>
|
||||
<range>
|
||||
<min>-20</min>
|
||||
<max>20</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
<aerosurface_scale name="Elevator Position Normalizer">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Roll">
|
||||
<summer name="Roll Trim Sum">
|
||||
<input>/controls/flight/aileron-sum</input>
|
||||
<input>/controls/flight/aileron-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Left Aileron Control">
|
||||
<input>fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron Control">
|
||||
<input>-fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Left Aileron position normalized">
|
||||
<input>fcs/left-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron position normalized">
|
||||
<input>fcs/right-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Throttle">
|
||||
<pure_gain name="fcs/throttle1">
|
||||
<input>/controls/engines/engine[0]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm</output>
|
||||
<output>fcs/throttle-pos-norm</output>
|
||||
</pure_gain>
|
||||
<pure_gain name="fcs/throttle2">
|
||||
<input>/controls/engines/engine[1]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm[1]</output>
|
||||
<output>fcs/throttle-pos-norm[1]</output>
|
||||
</pure_gain>
|
||||
</channel>
|
||||
|
||||
<channel name="Yaw">
|
||||
<pure_gain name="fcs/rudder-cmd">
|
||||
<input>/controls/flight/rudder-fdm</input>
|
||||
<gain>-1</gain>
|
||||
<output>fcs/rudder-cmd-norm</output>
|
||||
</pure_gain>
|
||||
|
||||
<summer name="Rudder Command Sum">
|
||||
<input>fcs/rudder-cmd-norm</input>
|
||||
<input>fcs/yaw-trim-cmd-norm</input>
|
||||
<clipto>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Rate">
|
||||
<input>velocities/r-aero-rad_sec</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 2.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Beta">
|
||||
<input>aero/beta-rad</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 0.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Yaw Damper Sum">
|
||||
<input>fcs/yaw-damper-beta</input>
|
||||
<input>fcs/yaw-damper-rate</input>
|
||||
<clipto>
|
||||
<min> -0.1 </min>
|
||||
<max> 0.1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Final">
|
||||
<input>fcs/yaw-damper-sum</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.0
|
||||
31 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Rudder Sum">
|
||||
<input>fcs/rudder-command-sum</input>
|
||||
<input>fcs/yaw-damper-final</input>
|
||||
<clipto>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Rudder Control">
|
||||
<input>fcs/rudder-sum</input>
|
||||
<range>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="rudder normalization">
|
||||
<input>fcs/rudder-pos-rad</input>
|
||||
<domain>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</domain>
|
||||
<range>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Flaps">
|
||||
|
||||
<kinematic name="Flaps Control">
|
||||
<input>/controls/flight/flaps</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>35</position>
|
||||
<time>40</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/flap-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Flap position normalized">
|
||||
<input>fcs/flap-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>35</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/flap-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Slats">
|
||||
|
||||
<kinematic name="Slats Control">
|
||||
<input>/controls/flight/slats</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>27</position>
|
||||
<time>30</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/slat-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Slat position normalized">
|
||||
<input>fcs/slat-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>27</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/slat-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Landing Gear">
|
||||
|
||||
<kinematic name="Gear Control">
|
||||
<input>gear/gear-cmd-norm</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>10</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>gear/gear-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Speedbrake">
|
||||
<kinematic name="Speedbrake">
|
||||
<input>/controls/flight/spoiler-output</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>1</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/speedbrake-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Tiller">
|
||||
|
||||
<switch name="/controls/gear/tiller-disabled">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/gear/tiller-enabled == 0
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="Nose Wheel Steering 0">
|
||||
<function name="fcs/steer-nose-deg[0]">
|
||||
<description>Steering command for nose gear</description>
|
||||
<sum>
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">/controls/gear/tiller-cmd-norm</independentVar>
|
||||
<independentVar lookup="column">/controls/flight/rudder</independentVar>
|
||||
<tableData>
|
||||
-1 0 1
|
||||
-1 -70 -70 -70
|
||||
0 -7 0 7
|
||||
1 70 70 70
|
||||
</tableData>
|
||||
</table>
|
||||
<property>/controls/gear/tiller-enabled</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<property>/controls/flight/rudder</property>
|
||||
<value>70</value>
|
||||
</product>
|
||||
<property>/controls/gear/tiller-disabled</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- simulate rotational friction -->
|
||||
<actuator name="Gear Nose Actuator">
|
||||
<input>fcs/steer-nose-deg[0]</input>
|
||||
<rate_limit>70</rate_limit>
|
||||
<output>fcs/steer-pos-deg[0]</output>
|
||||
</actuator>
|
||||
|
||||
</channel>
|
||||
|
||||
|
||||
</flight_control>
|
||||
|
||||
<flight_control name="none"/>
|
||||
|
||||
<aerodynamics>
|
||||
|
||||
|
|
341
A320-200-CFM.xml
341
A320-200-CFM.xml
|
@ -559,346 +559,9 @@ YAW MOI_________3950000______23089847_______24848934
|
|||
<system file="glass-effect1" />
|
||||
<system file="it-fbw" />
|
||||
<system file="fmgc" />
|
||||
<system file="fcs" />
|
||||
|
||||
<flight_control name="FCS: A320">
|
||||
<channel name="Pitch">
|
||||
<summer name="Pitch Trim Sum">
|
||||
<input>/controls/flight/elevator-sum</input>
|
||||
<input>/controls/flight/elevator-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Elevator Control">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<gain>0.015</gain>
|
||||
<range>
|
||||
<min>-20</min>
|
||||
<max>20</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
<aerosurface_scale name="Elevator Position Normalizer">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Roll">
|
||||
<summer name="Roll Trim Sum">
|
||||
<input>/controls/flight/aileron-sum</input>
|
||||
<input>/controls/flight/aileron-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Left Aileron Control">
|
||||
<input>fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron Control">
|
||||
<input>-fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Left Aileron position normalized">
|
||||
<input>fcs/left-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron position normalized">
|
||||
<input>fcs/right-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Throttle">
|
||||
<pure_gain name="fcs/throttle1">
|
||||
<input>/controls/engines/engine[0]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm</output>
|
||||
<output>fcs/throttle-pos-norm</output>
|
||||
</pure_gain>
|
||||
<pure_gain name="fcs/throttle2">
|
||||
<input>/controls/engines/engine[1]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm[1]</output>
|
||||
<output>fcs/throttle-pos-norm[1]</output>
|
||||
</pure_gain>
|
||||
</channel>
|
||||
|
||||
<channel name="Yaw">
|
||||
<pure_gain name="fcs/rudder-cmd">
|
||||
<input>/controls/flight/rudder-fdm</input>
|
||||
<gain>-1</gain>
|
||||
<output>fcs/rudder-cmd-norm</output>
|
||||
</pure_gain>
|
||||
|
||||
<summer name="Rudder Command Sum">
|
||||
<input>fcs/rudder-cmd-norm</input>
|
||||
<input>fcs/yaw-trim-cmd-norm</input>
|
||||
<clipto>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Rate">
|
||||
<input>velocities/r-aero-rad_sec</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 2.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Beta">
|
||||
<input>aero/beta-rad</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 0.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Yaw Damper Sum">
|
||||
<input>fcs/yaw-damper-beta</input>
|
||||
<input>fcs/yaw-damper-rate</input>
|
||||
<clipto>
|
||||
<min> -0.1 </min>
|
||||
<max> 0.1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Final">
|
||||
<input>fcs/yaw-damper-sum</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.0
|
||||
31 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Rudder Sum">
|
||||
<input>fcs/rudder-command-sum</input>
|
||||
<input>fcs/yaw-damper-final</input>
|
||||
<clipto>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Rudder Control">
|
||||
<input>fcs/rudder-sum</input>
|
||||
<range>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="rudder normalization">
|
||||
<input>fcs/rudder-pos-rad</input>
|
||||
<domain>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</domain>
|
||||
<range>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Flaps">
|
||||
|
||||
<kinematic name="Flaps Control">
|
||||
<input>/controls/flight/flaps</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>35</position>
|
||||
<time>40</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/flap-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Flap position normalized">
|
||||
<input>fcs/flap-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>35</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/flap-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Slats">
|
||||
|
||||
<kinematic name="Slats Control">
|
||||
<input>/controls/flight/slats</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>27</position>
|
||||
<time>30</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/slat-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Slat position normalized">
|
||||
<input>fcs/slat-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>27</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/slat-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Landing Gear">
|
||||
|
||||
<kinematic name="Gear Control">
|
||||
<input>gear/gear-cmd-norm</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>10</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>gear/gear-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Speedbrake">
|
||||
<kinematic name="Speedbrake">
|
||||
<input>/controls/flight/spoiler-output</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>1</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/speedbrake-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Tiller">
|
||||
|
||||
<switch name="/controls/gear/tiller-disabled">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/gear/tiller-enabled == 0
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="Nose Wheel Steering 0">
|
||||
<function name="fcs/steer-nose-deg[0]">
|
||||
<description>Steering command for nose gear</description>
|
||||
<sum>
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">/controls/gear/tiller-cmd-norm</independentVar>
|
||||
<independentVar lookup="column">/controls/flight/rudder</independentVar>
|
||||
<tableData>
|
||||
-1 0 1
|
||||
-1 -70 -70 -70
|
||||
0 -7 0 7
|
||||
1 70 70 70
|
||||
</tableData>
|
||||
</table>
|
||||
<property>/controls/gear/tiller-enabled</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<property>/controls/flight/rudder</property>
|
||||
<value>70</value>
|
||||
</product>
|
||||
<property>/controls/gear/tiller-disabled</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- simulate rotational friction -->
|
||||
<actuator name="Gear Nose Actuator">
|
||||
<input>fcs/steer-nose-deg[0]</input>
|
||||
<rate_limit>70</rate_limit>
|
||||
<output>fcs/steer-pos-deg[0]</output>
|
||||
</actuator>
|
||||
|
||||
</channel>
|
||||
|
||||
|
||||
</flight_control>
|
||||
|
||||
<flight_control name="none"/>
|
||||
|
||||
<aerodynamics>
|
||||
|
||||
|
|
341
A320-200-IAE.xml
341
A320-200-IAE.xml
|
@ -559,346 +559,9 @@ YAW MOI_________3950000______23089847_______24848934
|
|||
<system file="glass-effect1" />
|
||||
<system file="it-fbw" />
|
||||
<system file="fmgc" />
|
||||
<system file="fcs" />
|
||||
|
||||
<flight_control name="FCS: A320">
|
||||
<channel name="Pitch">
|
||||
<summer name="Pitch Trim Sum">
|
||||
<input>/controls/flight/elevator-sum</input>
|
||||
<input>/controls/flight/elevator-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Elevator Control">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<gain>0.015</gain>
|
||||
<range>
|
||||
<min>-20</min>
|
||||
<max>20</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
<aerosurface_scale name="Elevator Position Normalizer">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Roll">
|
||||
<summer name="Roll Trim Sum">
|
||||
<input>/controls/flight/aileron-sum</input>
|
||||
<input>/controls/flight/aileron-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Left Aileron Control">
|
||||
<input>fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron Control">
|
||||
<input>-fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Left Aileron position normalized">
|
||||
<input>fcs/left-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron position normalized">
|
||||
<input>fcs/right-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Throttle">
|
||||
<pure_gain name="fcs/throttle1">
|
||||
<input>/controls/engines/engine[0]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm</output>
|
||||
<output>fcs/throttle-pos-norm</output>
|
||||
</pure_gain>
|
||||
<pure_gain name="fcs/throttle2">
|
||||
<input>/controls/engines/engine[1]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm[1]</output>
|
||||
<output>fcs/throttle-pos-norm[1]</output>
|
||||
</pure_gain>
|
||||
</channel>
|
||||
|
||||
<channel name="Yaw">
|
||||
<pure_gain name="fcs/rudder-cmd">
|
||||
<input>/controls/flight/rudder-fdm</input>
|
||||
<gain>-1</gain>
|
||||
<output>fcs/rudder-cmd-norm</output>
|
||||
</pure_gain>
|
||||
|
||||
<summer name="Rudder Command Sum">
|
||||
<input>fcs/rudder-cmd-norm</input>
|
||||
<input>fcs/yaw-trim-cmd-norm</input>
|
||||
<clipto>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Rate">
|
||||
<input>velocities/r-aero-rad_sec</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 2.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Beta">
|
||||
<input>aero/beta-rad</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 0.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Yaw Damper Sum">
|
||||
<input>fcs/yaw-damper-beta</input>
|
||||
<input>fcs/yaw-damper-rate</input>
|
||||
<clipto>
|
||||
<min> -0.1 </min>
|
||||
<max> 0.1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Final">
|
||||
<input>fcs/yaw-damper-sum</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.0
|
||||
31 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Rudder Sum">
|
||||
<input>fcs/rudder-command-sum</input>
|
||||
<input>fcs/yaw-damper-final</input>
|
||||
<clipto>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Rudder Control">
|
||||
<input>fcs/rudder-sum</input>
|
||||
<range>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="rudder normalization">
|
||||
<input>fcs/rudder-pos-rad</input>
|
||||
<domain>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</domain>
|
||||
<range>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Flaps">
|
||||
|
||||
<kinematic name="Flaps Control">
|
||||
<input>/controls/flight/flaps</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>35</position>
|
||||
<time>40</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/flap-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Flap position normalized">
|
||||
<input>fcs/flap-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>35</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/flap-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Slats">
|
||||
|
||||
<kinematic name="Slats Control">
|
||||
<input>/controls/flight/slats</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>27</position>
|
||||
<time>30</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/slat-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Slat position normalized">
|
||||
<input>fcs/slat-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>27</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/slat-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Landing Gear">
|
||||
|
||||
<kinematic name="Gear Control">
|
||||
<input>gear/gear-cmd-norm</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>10</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>gear/gear-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Speedbrake">
|
||||
<kinematic name="Speedbrake">
|
||||
<input>/controls/flight/spoiler-output</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>1</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/speedbrake-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Tiller">
|
||||
|
||||
<switch name="/controls/gear/tiller-disabled">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/gear/tiller-enabled == 0
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="Nose Wheel Steering 0">
|
||||
<function name="fcs/steer-nose-deg[0]">
|
||||
<description>Steering command for nose gear</description>
|
||||
<sum>
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">/controls/gear/tiller-cmd-norm</independentVar>
|
||||
<independentVar lookup="column">/controls/flight/rudder</independentVar>
|
||||
<tableData>
|
||||
-1 0 1
|
||||
-1 -70 -70 -70
|
||||
0 -7 0 7
|
||||
1 70 70 70
|
||||
</tableData>
|
||||
</table>
|
||||
<property>/controls/gear/tiller-enabled</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<property>/controls/flight/rudder</property>
|
||||
<value>70</value>
|
||||
</product>
|
||||
<property>/controls/gear/tiller-disabled</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- simulate rotational friction -->
|
||||
<actuator name="Gear Nose Actuator">
|
||||
<input>fcs/steer-nose-deg[0]</input>
|
||||
<rate_limit>70</rate_limit>
|
||||
<output>fcs/steer-pos-deg[0]</output>
|
||||
</actuator>
|
||||
|
||||
</channel>
|
||||
|
||||
|
||||
</flight_control>
|
||||
|
||||
<flight_control name="none"/>
|
||||
|
||||
<aerodynamics>
|
||||
|
||||
|
|
|
@ -304,21 +304,19 @@
|
|||
<config>
|
||||
<altitude-dial-mode>0</altitude-dial-mode>
|
||||
<roll>
|
||||
<umin>-0.55</umin>
|
||||
<umax>0.55</umax>
|
||||
<kp>0.05</kp>
|
||||
<umin>-0.45</umin>
|
||||
<umax>0.45</umax>
|
||||
<kp>0.045</kp>
|
||||
<kp-vloc>0.07</kp-vloc>
|
||||
<ti>10.0</ti>
|
||||
<td>0.00001</td>
|
||||
<kp-cws>0.05</kp-cws>
|
||||
</roll>
|
||||
<pitch>
|
||||
<umin>-0.60</umin>
|
||||
<umax>0.60</umax>
|
||||
<kp>-0.08</kp>
|
||||
<ti>5.0</ti>
|
||||
<td>0.0001</td>
|
||||
<kp-cws>-0.08</kp-cws>
|
||||
<umin>-0.20</umin>
|
||||
<umax>0.20</umax>
|
||||
<kp>-0.06</kp>
|
||||
<ti>10.0</ti>
|
||||
<td>0.00001</td>
|
||||
</pitch>
|
||||
<cmd>
|
||||
<roll-kp>-0.9</roll-kp>
|
||||
|
@ -328,7 +326,7 @@
|
|||
<fpa>0.30</fpa>
|
||||
</cmd>
|
||||
<autoland>
|
||||
<kp-pitch>0.03</kp-pitch>
|
||||
<kp-pitch>0.035</kp-pitch>
|
||||
<kp-rudder>-0.25</kp-rudder>
|
||||
</autoland>
|
||||
</config>
|
||||
|
|
341
A321-200-CFM.xml
341
A321-200-CFM.xml
|
@ -559,346 +559,9 @@ YAW MOI_________3950000______23089847_______24848934
|
|||
<system file="glass-effect1" />
|
||||
<system file="it-fbw" />
|
||||
<system file="fmgc" />
|
||||
<system file="fcs" />
|
||||
|
||||
<flight_control name="FCS: A320">
|
||||
<channel name="Pitch">
|
||||
<summer name="Pitch Trim Sum">
|
||||
<input>/controls/flight/elevator-sum</input>
|
||||
<input>/controls/flight/elevator-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Elevator Control">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<gain>0.015</gain>
|
||||
<range>
|
||||
<min>-20</min>
|
||||
<max>20</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
<aerosurface_scale name="Elevator Position Normalizer">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Roll">
|
||||
<summer name="Roll Trim Sum">
|
||||
<input>/controls/flight/aileron-sum</input>
|
||||
<input>/controls/flight/aileron-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Left Aileron Control">
|
||||
<input>fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron Control">
|
||||
<input>-fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Left Aileron position normalized">
|
||||
<input>fcs/left-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron position normalized">
|
||||
<input>fcs/right-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Throttle">
|
||||
<pure_gain name="fcs/throttle1">
|
||||
<input>/controls/engines/engine[0]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm</output>
|
||||
<output>fcs/throttle-pos-norm</output>
|
||||
</pure_gain>
|
||||
<pure_gain name="fcs/throttle2">
|
||||
<input>/controls/engines/engine[1]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm[1]</output>
|
||||
<output>fcs/throttle-pos-norm[1]</output>
|
||||
</pure_gain>
|
||||
</channel>
|
||||
|
||||
<channel name="Yaw">
|
||||
<pure_gain name="fcs/rudder-cmd">
|
||||
<input>/controls/flight/rudder-fdm</input>
|
||||
<gain>-1</gain>
|
||||
<output>fcs/rudder-cmd-norm</output>
|
||||
</pure_gain>
|
||||
|
||||
<summer name="Rudder Command Sum">
|
||||
<input>fcs/rudder-cmd-norm</input>
|
||||
<input>fcs/yaw-trim-cmd-norm</input>
|
||||
<clipto>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Rate">
|
||||
<input>velocities/r-aero-rad_sec</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 2.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Beta">
|
||||
<input>aero/beta-rad</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 0.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Yaw Damper Sum">
|
||||
<input>fcs/yaw-damper-beta</input>
|
||||
<input>fcs/yaw-damper-rate</input>
|
||||
<clipto>
|
||||
<min> -0.1 </min>
|
||||
<max> 0.1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Final">
|
||||
<input>fcs/yaw-damper-sum</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.0
|
||||
31 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Rudder Sum">
|
||||
<input>fcs/rudder-command-sum</input>
|
||||
<input>fcs/yaw-damper-final</input>
|
||||
<clipto>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Rudder Control">
|
||||
<input>fcs/rudder-sum</input>
|
||||
<range>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="rudder normalization">
|
||||
<input>fcs/rudder-pos-rad</input>
|
||||
<domain>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</domain>
|
||||
<range>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Flaps">
|
||||
|
||||
<kinematic name="Flaps Control">
|
||||
<input>/controls/flight/flaps</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>35</position>
|
||||
<time>40</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/flap-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Flap position normalized">
|
||||
<input>fcs/flap-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>35</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/flap-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Slats">
|
||||
|
||||
<kinematic name="Slats Control">
|
||||
<input>/controls/flight/slats</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>27</position>
|
||||
<time>30</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/slat-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Slat position normalized">
|
||||
<input>fcs/slat-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>27</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/slat-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Landing Gear">
|
||||
|
||||
<kinematic name="Gear Control">
|
||||
<input>gear/gear-cmd-norm</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>10</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>gear/gear-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Speedbrake">
|
||||
<kinematic name="Speedbrake">
|
||||
<input>/controls/flight/spoiler-output</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>1</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/speedbrake-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Tiller">
|
||||
|
||||
<switch name="/controls/gear/tiller-disabled">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/gear/tiller-enabled == 0
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="Nose Wheel Steering 0">
|
||||
<function name="fcs/steer-nose-deg[0]">
|
||||
<description>Steering command for nose gear</description>
|
||||
<sum>
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">/controls/gear/tiller-cmd-norm</independentVar>
|
||||
<independentVar lookup="column">/controls/flight/rudder</independentVar>
|
||||
<tableData>
|
||||
-1 0 1
|
||||
-1 -70 -70 -70
|
||||
0 -7 0 7
|
||||
1 70 70 70
|
||||
</tableData>
|
||||
</table>
|
||||
<property>/controls/gear/tiller-enabled</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<property>/controls/flight/rudder</property>
|
||||
<value>70</value>
|
||||
</product>
|
||||
<property>/controls/gear/tiller-disabled</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- simulate rotational friction -->
|
||||
<actuator name="Gear Nose Actuator">
|
||||
<input>fcs/steer-nose-deg[0]</input>
|
||||
<rate_limit>70</rate_limit>
|
||||
<output>fcs/steer-pos-deg[0]</output>
|
||||
</actuator>
|
||||
|
||||
</channel>
|
||||
|
||||
|
||||
</flight_control>
|
||||
|
||||
<flight_control name="none"/>
|
||||
|
||||
<aerodynamics>
|
||||
|
||||
|
|
341
A321-200-IAE.xml
341
A321-200-IAE.xml
|
@ -559,346 +559,9 @@ YAW MOI_________3950000______23089847_______24848934
|
|||
<system file="glass-effect1" />
|
||||
<system file="it-fbw" />
|
||||
<system file="fmgc" />
|
||||
<system file="fcs" />
|
||||
|
||||
<flight_control name="FCS: A320">
|
||||
<channel name="Pitch">
|
||||
<summer name="Pitch Trim Sum">
|
||||
<input>/controls/flight/elevator-sum</input>
|
||||
<input>/controls/flight/elevator-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Elevator Control">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<gain>0.015</gain>
|
||||
<range>
|
||||
<min>-20</min>
|
||||
<max>20</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
<aerosurface_scale name="Elevator Position Normalizer">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Roll">
|
||||
<summer name="Roll Trim Sum">
|
||||
<input>/controls/flight/aileron-sum</input>
|
||||
<input>/controls/flight/aileron-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Left Aileron Control">
|
||||
<input>fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron Control">
|
||||
<input>-fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Left Aileron position normalized">
|
||||
<input>fcs/left-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron position normalized">
|
||||
<input>fcs/right-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Throttle">
|
||||
<pure_gain name="fcs/throttle1">
|
||||
<input>/controls/engines/engine[0]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm</output>
|
||||
<output>fcs/throttle-pos-norm</output>
|
||||
</pure_gain>
|
||||
<pure_gain name="fcs/throttle2">
|
||||
<input>/controls/engines/engine[1]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm[1]</output>
|
||||
<output>fcs/throttle-pos-norm[1]</output>
|
||||
</pure_gain>
|
||||
</channel>
|
||||
|
||||
<channel name="Yaw">
|
||||
<pure_gain name="fcs/rudder-cmd">
|
||||
<input>/controls/flight/rudder-fdm</input>
|
||||
<gain>-1</gain>
|
||||
<output>fcs/rudder-cmd-norm</output>
|
||||
</pure_gain>
|
||||
|
||||
<summer name="Rudder Command Sum">
|
||||
<input>fcs/rudder-cmd-norm</input>
|
||||
<input>fcs/yaw-trim-cmd-norm</input>
|
||||
<clipto>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Rate">
|
||||
<input>velocities/r-aero-rad_sec</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 2.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Beta">
|
||||
<input>aero/beta-rad</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 0.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Yaw Damper Sum">
|
||||
<input>fcs/yaw-damper-beta</input>
|
||||
<input>fcs/yaw-damper-rate</input>
|
||||
<clipto>
|
||||
<min> -0.1 </min>
|
||||
<max> 0.1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Final">
|
||||
<input>fcs/yaw-damper-sum</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.0
|
||||
31 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Rudder Sum">
|
||||
<input>fcs/rudder-command-sum</input>
|
||||
<input>fcs/yaw-damper-final</input>
|
||||
<clipto>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Rudder Control">
|
||||
<input>fcs/rudder-sum</input>
|
||||
<range>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="rudder normalization">
|
||||
<input>fcs/rudder-pos-rad</input>
|
||||
<domain>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</domain>
|
||||
<range>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Flaps">
|
||||
|
||||
<kinematic name="Flaps Control">
|
||||
<input>/controls/flight/flaps</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>35</position>
|
||||
<time>40</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/flap-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Flap position normalized">
|
||||
<input>fcs/flap-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>35</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/flap-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Slats">
|
||||
|
||||
<kinematic name="Slats Control">
|
||||
<input>/controls/flight/slats</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>27</position>
|
||||
<time>30</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/slat-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Slat position normalized">
|
||||
<input>fcs/slat-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>27</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/slat-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Landing Gear">
|
||||
|
||||
<kinematic name="Gear Control">
|
||||
<input>gear/gear-cmd-norm</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>10</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>gear/gear-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Speedbrake">
|
||||
<kinematic name="Speedbrake">
|
||||
<input>/controls/flight/spoiler-output</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>1</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/speedbrake-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Tiller">
|
||||
|
||||
<switch name="/controls/gear/tiller-disabled">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/gear/tiller-enabled == 0
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="Nose Wheel Steering 0">
|
||||
<function name="fcs/steer-nose-deg[0]">
|
||||
<description>Steering command for nose gear</description>
|
||||
<sum>
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">/controls/gear/tiller-cmd-norm</independentVar>
|
||||
<independentVar lookup="column">/controls/flight/rudder</independentVar>
|
||||
<tableData>
|
||||
-1 0 1
|
||||
-1 -70 -70 -70
|
||||
0 -7 0 7
|
||||
1 70 70 70
|
||||
</tableData>
|
||||
</table>
|
||||
<property>/controls/gear/tiller-enabled</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<property>/controls/flight/rudder</property>
|
||||
<value>70</value>
|
||||
</product>
|
||||
<property>/controls/gear/tiller-disabled</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- simulate rotational friction -->
|
||||
<actuator name="Gear Nose Actuator">
|
||||
<input>fcs/steer-nose-deg[0]</input>
|
||||
<rate_limit>70</rate_limit>
|
||||
<output>fcs/steer-pos-deg[0]</output>
|
||||
</actuator>
|
||||
|
||||
</channel>
|
||||
|
||||
|
||||
</flight_control>
|
||||
|
||||
<flight_control name="none"/>
|
||||
|
||||
<aerodynamics>
|
||||
|
||||
|
|
|
@ -849,7 +849,7 @@
|
|||
<object-name>n11</object-name>
|
||||
<property>/engines/engine/n1</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 22</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 53</dep></entry>
|
||||
<entry><ind>100</ind><dep>152</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
@ -871,7 +871,7 @@
|
|||
<object-name>n12</object-name>
|
||||
<property>/engines/engine[1]/n1</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 22</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 53</dep></entry>
|
||||
<entry><ind>100</ind><dep>152</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
@ -893,7 +893,7 @@
|
|||
<object-name>n1limy1</object-name>
|
||||
<property>/controls/engines/n1-limit</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 22</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 53</dep></entry>
|
||||
<entry><ind>100</ind><dep>152</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
@ -915,7 +915,7 @@
|
|||
<object-name>n1limy2</object-name>
|
||||
<property>/controls/engines/n1-limit</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 22</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 53</dep></entry>
|
||||
<entry><ind>100</ind><dep>152</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
@ -937,7 +937,7 @@
|
|||
<object-name>thrpos1</object-name>
|
||||
<property>/engines/engine[0]/n1-cmd</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 22</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 53</dep></entry>
|
||||
<entry><ind>100</ind><dep>152</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
@ -959,7 +959,7 @@
|
|||
<object-name>thrpos2</object-name>
|
||||
<property>/engines/engine[1]/n1-cmd</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 22</ind><dep>-13</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 53</dep></entry>
|
||||
<entry><ind>100</ind><dep>152</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
|
|
@ -1244,7 +1244,7 @@
|
|||
<property>/engines/engine/n1</property>
|
||||
<property>octal</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 22</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 40</ind><dep> 47</dep></entry>
|
||||
<entry><ind>100</ind><dep>174</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
@ -1266,7 +1266,7 @@
|
|||
<object-name>n12</object-name>
|
||||
<property>/engines/engine[1]/n1</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 22</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 40</ind><dep> 47</dep></entry>
|
||||
<entry><ind>100</ind><dep>174</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
|
|
@ -850,7 +850,7 @@
|
|||
<property>/engines/engine/n1</property>
|
||||
<interpolation>
|
||||
<entry><ind> 0</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 23</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 22</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 72</dep></entry>
|
||||
<entry><ind>100</ind><dep>178</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
@ -873,7 +873,7 @@
|
|||
<property>/engines/engine[1]/n1</property>
|
||||
<interpolation>
|
||||
<entry><ind> 0</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 23</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 22</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 72</dep></entry>
|
||||
<entry><ind>100</ind><dep>178</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
@ -896,7 +896,7 @@
|
|||
<property>/controls/engines/n1-limit</property>
|
||||
<interpolation>
|
||||
<entry><ind> 0</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 23</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 22</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 72</dep></entry>
|
||||
<entry><ind>100</ind><dep>178</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
@ -919,7 +919,7 @@
|
|||
<property>/controls/engines/n1-limit</property>
|
||||
<interpolation>
|
||||
<entry><ind> 0</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 23</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 22</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 72</dep></entry>
|
||||
<entry><ind>100</ind><dep>178</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
@ -942,7 +942,7 @@
|
|||
<property>/engines/engine[0]/n1-cmd</property>
|
||||
<interpolation>
|
||||
<entry><ind> 0</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 23</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 22</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 72</dep></entry>
|
||||
<entry><ind>100</ind><dep>178</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
@ -965,7 +965,7 @@
|
|||
<property>/engines/engine[1]/n1-cmd</property>
|
||||
<interpolation>
|
||||
<entry><ind> 0</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 23</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 22</ind><dep> -3</dep></entry>
|
||||
<entry><ind> 50</ind><dep> 72</dep></entry>
|
||||
<entry><ind>100</ind><dep>178</dep></entry>
|
||||
<entry><ind>110</ind><dep>195</dep></entry>
|
||||
|
|
|
@ -1243,7 +1243,7 @@
|
|||
<object-name>n11</object-name>
|
||||
<property>/engines/engine/n1</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 22</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 40</ind><dep> 47</dep></entry>
|
||||
<entry><ind>100</ind><dep>159</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
@ -1265,7 +1265,7 @@
|
|||
<object-name>n12</object-name>
|
||||
<property>/engines/engine[1]/n1</property>
|
||||
<interpolation>
|
||||
<entry><ind> 23</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 22</ind><dep> 0</dep></entry>
|
||||
<entry><ind> 40</ind><dep> 47</dep></entry>
|
||||
<entry><ind>100</ind><dep>159</dep></entry>
|
||||
<entry><ind>110</ind><dep>170</dep></entry>
|
||||
|
|
|
@ -89,8 +89,8 @@ setlistener("/it-autoflight/mode/vert", func {
|
|||
setprop("/modes/pfd/fma/pitch-mode2-armed", " ");
|
||||
}
|
||||
} else if (vert == "ALT CAP") {
|
||||
if (newvert != "ALT") {
|
||||
setprop("/modes/pfd/fma/pitch-mode", "ALT");
|
||||
if (newvert != "ALT *") {
|
||||
setprop("/modes/pfd/fma/pitch-mode", "ALT *");
|
||||
}
|
||||
if (newvertarm != " ") {
|
||||
setprop("/modes/pfd/fma/pitch-mode2-armed", " ");
|
||||
|
|
340
Systems/fcs.xml
Normal file
340
Systems/fcs.xml
Normal file
|
@ -0,0 +1,340 @@
|
|||
<!-- Airbus A3XX FCS by Joshua Davidson (it0uchpods) -->
|
||||
|
||||
<system name="A3XX: FCS">
|
||||
|
||||
<channel name="Pitch">
|
||||
<summer name="Pitch Trim Sum">
|
||||
<input>/controls/flight/elevator-sum</input>
|
||||
<input>/controls/flight/elevator-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Elevator Control">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-20</min>
|
||||
<max>20</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
<aerosurface_scale name="Elevator Position Normalizer">
|
||||
<input>fcs/pitch-trim-sum</input>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/elevator-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Roll">
|
||||
<summer name="Roll Trim Sum">
|
||||
<input>/controls/flight/aileron-sum</input>
|
||||
<input>/controls/flight/aileron-trim</input>
|
||||
<clipto>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Left Aileron Control">
|
||||
<input>fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron Control">
|
||||
<input>-fcs/roll-trim-sum</input>
|
||||
<gain>0.02</gain>
|
||||
<range>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Left Aileron position normalized">
|
||||
<input>fcs/left-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/left-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="Right Aileron position normalized">
|
||||
<input>fcs/right-aileron-pos-deg</input>
|
||||
<domain>
|
||||
<min>-15</min>
|
||||
<max>15</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>-1</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/right-aileron-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
</channel>
|
||||
<channel name="Throttle">
|
||||
<pure_gain name="fcs/throttle1">
|
||||
<input>/controls/engines/engine[0]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm</output>
|
||||
<output>fcs/throttle-pos-norm</output>
|
||||
</pure_gain>
|
||||
<pure_gain name="fcs/throttle2">
|
||||
<input>/controls/engines/engine[1]/throttle-fdm</input>
|
||||
<gain>1</gain>
|
||||
<output>fcs/throttle-cmd-norm[1]</output>
|
||||
<output>fcs/throttle-pos-norm[1]</output>
|
||||
</pure_gain>
|
||||
</channel>
|
||||
|
||||
<channel name="Yaw">
|
||||
<pure_gain name="fcs/rudder-cmd">
|
||||
<input>/controls/flight/rudder-fdm</input>
|
||||
<gain>-1</gain>
|
||||
<output>fcs/rudder-cmd-norm</output>
|
||||
</pure_gain>
|
||||
|
||||
<summer name="Rudder Command Sum">
|
||||
<input>fcs/rudder-cmd-norm</input>
|
||||
<input>fcs/yaw-trim-cmd-norm</input>
|
||||
<clipto>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Rate">
|
||||
<input>velocities/r-aero-rad_sec</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 2.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Beta">
|
||||
<input>aero/beta-rad</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.00
|
||||
60 0.00
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Yaw Damper Sum">
|
||||
<input>fcs/yaw-damper-beta</input>
|
||||
<input>fcs/yaw-damper-rate</input>
|
||||
<clipto>
|
||||
<min> -0.1 </min>
|
||||
<max> 0.1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<scheduled_gain name="Yaw Damper Final">
|
||||
<input>fcs/yaw-damper-sum</input>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/ve-kts</independentVar>
|
||||
<tableData>
|
||||
30 0.0
|
||||
31 1.0
|
||||
</tableData>
|
||||
</table>
|
||||
</scheduled_gain>
|
||||
|
||||
<summer name="Rudder Sum">
|
||||
<input>fcs/rudder-command-sum</input>
|
||||
<input>fcs/yaw-damper-final</input>
|
||||
<clipto>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</clipto>
|
||||
</summer>
|
||||
|
||||
<aerosurface_scale name="Rudder Control">
|
||||
<input>fcs/rudder-sum</input>
|
||||
<range>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-rad</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
<aerosurface_scale name="rudder normalization">
|
||||
<input>fcs/rudder-pos-rad</input>
|
||||
<domain>
|
||||
<min> -0.35 </min>
|
||||
<max> 0.35 </max>
|
||||
</domain>
|
||||
<range>
|
||||
<min> -1 </min>
|
||||
<max> 1 </max>
|
||||
</range>
|
||||
<output>fcs/rudder-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Flaps">
|
||||
|
||||
<kinematic name="Flaps Control">
|
||||
<input>/controls/flight/flaps</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>35</position>
|
||||
<time>40</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/flap-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Flap position normalized">
|
||||
<input>fcs/flap-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>35</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/flap-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Slats">
|
||||
|
||||
<kinematic name="Slats Control">
|
||||
<input>/controls/flight/slats</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>27</position>
|
||||
<time>30</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/slat-pos-deg</output>
|
||||
</kinematic>
|
||||
|
||||
<aerosurface_scale name="Slat position normalized">
|
||||
<input>fcs/slat-pos-deg</input>
|
||||
<domain>
|
||||
<min>0</min>
|
||||
<max>27</max>
|
||||
</domain>
|
||||
<range>
|
||||
<min>0</min>
|
||||
<max>1</max>
|
||||
</range>
|
||||
<output>fcs/slat-pos-norm</output>
|
||||
</aerosurface_scale>
|
||||
|
||||
</channel>
|
||||
|
||||
<channel name="Landing Gear">
|
||||
|
||||
<kinematic name="Gear Control">
|
||||
<input>gear/gear-cmd-norm</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>10</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>gear/gear-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Speedbrake">
|
||||
<kinematic name="Speedbrake">
|
||||
<input>/controls/flight/spoiler-output</input>
|
||||
<traverse>
|
||||
<setting>
|
||||
<position>0</position>
|
||||
<time>0</time>
|
||||
</setting>
|
||||
<setting>
|
||||
<position>1</position>
|
||||
<time>1</time>
|
||||
</setting>
|
||||
</traverse>
|
||||
<output>fcs/speedbrake-pos-norm</output>
|
||||
</kinematic>
|
||||
</channel>
|
||||
|
||||
<channel name="Tiller">
|
||||
|
||||
<switch name="/controls/gear/tiller-disabled">
|
||||
<default value="0"/>
|
||||
<test logic="AND" value="1">
|
||||
/controls/gear/tiller-enabled == 0
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="Nose Wheel Steering 0">
|
||||
<function name="fcs/steer-nose-deg[0]">
|
||||
<description>Steering command for nose gear</description>
|
||||
<sum>
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">/controls/gear/tiller-cmd-norm</independentVar>
|
||||
<independentVar lookup="column">/controls/flight/rudder</independentVar>
|
||||
<tableData>
|
||||
-1 0 1
|
||||
-1 -70 -70 -70
|
||||
0 -7 0 7
|
||||
1 70 70 70
|
||||
</tableData>
|
||||
</table>
|
||||
<property>/controls/gear/tiller-enabled</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<property>/controls/flight/rudder</property>
|
||||
<value>70</value>
|
||||
</product>
|
||||
<property>/controls/gear/tiller-disabled</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- simulate rotational friction -->
|
||||
<actuator name="Gear Nose Actuator">
|
||||
<input>fcs/steer-nose-deg[0]</input>
|
||||
<rate_limit>70</rate_limit>
|
||||
<output>fcs/steer-pos-deg[0]</output>
|
||||
</actuator>
|
||||
|
||||
</channel>
|
||||
|
||||
</system>
|
|
@ -333,31 +333,12 @@
|
|||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-nav2-radio</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/instrumentation/nav[0]/radials/target-auto-hdg-deg</property>
|
||||
<offset>
|
||||
<property>/orientation/heading-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-nav2-radio</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/instrumentation/nav[1]/radials/target-auto-hdg-deg</property>
|
||||
<offset>
|
||||
<property>/orientation/heading-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/nav-heading-error-deg</output>
|
||||
<period>
|
||||
<min>-180</min>
|
||||
|
@ -409,17 +390,6 @@
|
|||
<max>0</max>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>NAV2 G/S FPM Calc</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<input>/instrumentation/nav[1]/gs-rate-of-climb-fpm</input>
|
||||
<output>/it-autoflight/internal/nav2-rate-of-climb-fpm</output>
|
||||
<gain>1.0</gain>
|
||||
<min>-1500</min>
|
||||
<max>0</max>
|
||||
</filter>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
<!-- Lateral Modes -->
|
||||
<!-- =============================================================== -->
|
||||
|
@ -429,6 +399,7 @@
|
|||
<debug>false</debug>
|
||||
<enable>
|
||||
<condition>
|
||||
<and>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
|
@ -439,6 +410,25 @@
|
|||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
|
@ -503,10 +493,30 @@
|
|||
<debug>false</debug>
|
||||
<enable>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>2</value>
|
||||
</equals>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
|
@ -547,6 +557,39 @@
|
|||
</config>
|
||||
</pid-controller>
|
||||
|
||||
<filter>
|
||||
<name>ROLL DEG SYNC</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<enable>
|
||||
<condition>
|
||||
<and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/ap1</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/ap2</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/fd2</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>/orientation/roll-deg</input>
|
||||
<output>/it-autoflight/internal/target-roll-deg</output>
|
||||
<min>-25</min>
|
||||
<max>25</max>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>IT-CONTROLLER: TARGET ROLL CMD</name>
|
||||
<debug>false</debug>
|
||||
|
@ -674,7 +717,7 @@
|
|||
</input>
|
||||
<output>/controls/flight/aileron</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>0.8</max-rate-of-change>
|
||||
<max-rate-of-change>0.5</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
|
@ -708,10 +751,30 @@
|
|||
<debug>false</debug>
|
||||
<enable>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>5</value>
|
||||
</equals>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
|
@ -922,6 +985,7 @@
|
|||
<debug>false</debug>
|
||||
<enable>
|
||||
<condition>
|
||||
<and>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
|
@ -948,6 +1012,25 @@
|
|||
<value>7</value>
|
||||
</equals>
|
||||
</or>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/ap2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/fd2</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
|
@ -1002,36 +1085,14 @@
|
|||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>2</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-nav2-radio</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/nav1-rate-of-climb-fpm</property>
|
||||
<scale>0.16667</scale>
|
||||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>2</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-nav2-radio</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/nav2-rate-of-climb-fpm</property>
|
||||
<scale>0.16667</scale>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-pitch-deg</property>
|
||||
</output>
|
||||
|
@ -1054,8 +1115,8 @@
|
|||
</condition>
|
||||
<property>/it-autoflight/config/autoland/kp-pitch</property>
|
||||
</Kp>
|
||||
<Ti>5.0</Ti>
|
||||
<Td>0.003</Td>
|
||||
<Ti>7.0</Ti>
|
||||
<Td>0.0001</Td>
|
||||
<u_min>
|
||||
<condition>
|
||||
<not-equals>
|
||||
|
@ -1108,16 +1169,36 @@
|
|||
</pid-controller>
|
||||
|
||||
<filter>
|
||||
<name>IT-CONTROLLER: TARGET PITCH CMD</name>
|
||||
<name>PITCH DEG SYNC</name>
|
||||
<debug>false</debug>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/target-pitch-deg</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/target-pitch</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>3.5</max-rate-of-change>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<enable>
|
||||
<condition>
|
||||
<and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/ap1</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/ap2</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/fd2</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>/orientation/pitch-deg</input>
|
||||
<output>/it-autoflight/internal/target-pitch-deg</output>
|
||||
<min>-15</min>
|
||||
<max>30</max>
|
||||
</filter>
|
||||
|
||||
<pid-controller>
|
||||
|
@ -1141,7 +1222,7 @@
|
|||
<property>/orientation/pitch-deg</property>
|
||||
</input>
|
||||
<reference>
|
||||
<property>/it-autoflight/internal/target-pitch</property>
|
||||
<property>/it-autoflight/internal/target-pitch-deg</property>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/elevator-cmd</property>
|
||||
|
@ -1192,7 +1273,7 @@
|
|||
</input>
|
||||
<output>/controls/flight/elevator</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>0.3</max-rate-of-change>
|
||||
<max-rate-of-change>0.4</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
|
@ -1462,7 +1543,7 @@
|
|||
<input>
|
||||
<expression>
|
||||
<dif>
|
||||
<property>/it-autoflight/internal/target-pitch</property>
|
||||
<property>/it-autoflight/internal/target-pitch-deg</property>
|
||||
<property>/orientation/pitch-deg</property>
|
||||
</dif>
|
||||
</expression>
|
||||
|
|
|
@ -288,12 +288,12 @@
|
|||
<property>/controls/flight/elevator-fbw-cmd</property>
|
||||
</output>
|
||||
<config>
|
||||
<Kp>-0.12</Kp>
|
||||
<Kp>-0.10</Kp>
|
||||
<beta>1</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0</gamma>
|
||||
<Ti>5</Ti>
|
||||
<Td>0.005</Td>
|
||||
<Td>0.002</Td>
|
||||
<u_min>-0.5</u_min>
|
||||
<u_max>0.5</u_max>
|
||||
</config>
|
||||
|
|
Reference in a new issue