Control: Rework AP, fix lots of stuff
This commit is contained in:
parent
e25c114c62
commit
568fa31d8b
5 changed files with 190 additions and 375 deletions
|
@ -9,11 +9,9 @@
|
|||
<!-- IT-AUTOFLIGHT -->
|
||||
|
||||
<PropertyList>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
<!-- Predictors -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
|
||||
<!-- Predictors -->
|
||||
|
||||
<predict-simple>
|
||||
<name>IAS 5 SECOND PREDICTOR</name>
|
||||
<debug>false</debug>
|
||||
|
@ -22,7 +20,7 @@
|
|||
<seconds>5.0</seconds>
|
||||
<filter-gain>0.0</filter-gain>
|
||||
</predict-simple>
|
||||
|
||||
|
||||
<predict-simple>
|
||||
<name>IAS 10 SECOND PREDICTOR</name>
|
||||
<debug>false</debug>
|
||||
|
@ -49,7 +47,7 @@
|
|||
<seconds>5.0</seconds>
|
||||
<filter-gain>0.0</filter-gain>
|
||||
</predict-simple>
|
||||
|
||||
|
||||
<predict-simple>
|
||||
<name>MACH 10 SECOND PREDICTOR</name>
|
||||
<debug>false</debug>
|
||||
|
@ -67,16 +65,13 @@
|
|||
<seconds>15.0</seconds>
|
||||
<filter-gain>0.0</filter-gain>
|
||||
</predict-simple>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
<!-- Autopilot Helpers/Calculators -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
|
||||
<!-- Autopilot Helpers/Calculators -->
|
||||
|
||||
<filter>
|
||||
<name>AUTOLAND FD FPM</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -89,12 +84,11 @@
|
|||
</input>
|
||||
<output>/it-autoflight/internal/target-fpm-c2</output>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>AUTOLAND FPM</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -111,12 +105,11 @@
|
|||
</input>
|
||||
<output>/it-autoflight/internal/target-fpm-c</output>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>FMGC MNG SPD</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<product>
|
||||
|
@ -138,7 +131,6 @@
|
|||
<name>FMGC MNG MACH</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<product>
|
||||
|
@ -164,7 +156,6 @@
|
|||
<name>FMGC Target IAS PFD</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.1</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
|
@ -193,10 +184,11 @@
|
|||
</input>
|
||||
<output>/FMGC/internal/target-ias-pfd</output>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>KTS INPUT FILTER</name>
|
||||
<debug>false</debug>
|
||||
<type>noise-spike</type>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
|
@ -218,32 +210,6 @@
|
|||
<property>/it-autoflight/settings/togaspd</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/flch-kts</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>7</value>
|
||||
</not-equals>
|
||||
</and>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>100</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -257,6 +223,10 @@
|
|||
<value>7</value>
|
||||
</equals>
|
||||
</or>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/kts-mach</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
|
@ -269,43 +239,33 @@
|
|||
</condition>
|
||||
<value>5</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>100</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>MACH INPUT FILTER</name>
|
||||
<debug>false</debug>
|
||||
<type>noise-spike</type>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/input/spd-mach</property>
|
||||
</input>
|
||||
<input>/it-autoflight/input/spd-mach</input>
|
||||
<output>/it-autoflight/internal/flch-mach</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
</not-equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>1</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>7</value>
|
||||
</equals>
|
||||
</or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
<property>/it-autoflight/input/kts-mach</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
|
@ -319,8 +279,9 @@
|
|||
</condition>
|
||||
<value>0.05</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>1</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>IAS SYNC</name>
|
||||
<type>gain</type>
|
||||
|
@ -333,7 +294,6 @@
|
|||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<update-interval-secs type="double">0.5</update-interval-secs>
|
||||
<input>/instrumentation/airspeed-indicator/indicated-speed-kt</input>
|
||||
<output>/it-autoflight/input/spd-kts</output>
|
||||
</filter>
|
||||
|
@ -350,7 +310,6 @@
|
|||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<update-interval-secs type="double">0.5</update-interval-secs>
|
||||
<input>/instrumentation/airspeed-indicator/indicated-mach</input>
|
||||
<output>/it-autoflight/input/spd-mach</output>
|
||||
</filter>
|
||||
|
@ -365,9 +324,7 @@
|
|||
</condition>
|
||||
<property>/orientation/heading-deg</property>
|
||||
</input>
|
||||
<input>
|
||||
<property>/orientation/heading-magnetic-deg</property>
|
||||
</input>
|
||||
<input>/orientation/heading-magnetic-deg</input>
|
||||
<reference>0</reference>
|
||||
<output>/it-autoflight/internal/heading-deg</output>
|
||||
<output>/instrumentation/pfd/heading-deg</output>
|
||||
|
@ -522,7 +479,10 @@
|
|||
<input>
|
||||
<expression>
|
||||
<floor>
|
||||
<property>/it-autoflight/internal/vert-speed-fpm</property>
|
||||
<sum>
|
||||
<property>/it-autoflight/internal/vert-speed-fpm</property>
|
||||
<value>0.5</value>
|
||||
</sum>
|
||||
</floor>
|
||||
</expression>
|
||||
</input>
|
||||
|
@ -532,31 +492,18 @@
|
|||
<filter>
|
||||
<name>VERT SPEED FILTER</name>
|
||||
<debug>false</debug>
|
||||
<type>noise-spike</type>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/input/vs</property>
|
||||
</input>
|
||||
<input>/it-autoflight/input/vs</input>
|
||||
<output>/it-autoflight/internal/vs</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>2000</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
|
@ -569,8 +516,9 @@
|
|||
</condition>
|
||||
<value>300</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>2000</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>NAV ERROR DEG</name>
|
||||
<debug>false</debug>
|
||||
|
@ -589,7 +537,7 @@
|
|||
<max>180</max>
|
||||
</period>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>INTERNAL VERTICAL SPEED COMPUTER</name>
|
||||
<debug>false</debug>
|
||||
|
@ -830,49 +778,13 @@
|
|||
</input>
|
||||
<output>/it-autoflight/internal/fpa</output>
|
||||
</filter>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
<!-- Flight Director -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
|
||||
<!-- Flight Director -->
|
||||
|
||||
<filter>
|
||||
<name>IT-CONTROLLER: TARGET ROLL CMD</name>
|
||||
<debug>false</debug>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/target-roll-deg</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/target-roll-fd</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>15</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>FD: ROLL</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>4</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>5</value>
|
||||
</not-equals>
|
||||
</and>
|
||||
</condition>
|
||||
<expression>
|
||||
<dif>
|
||||
<property>/it-autoflight/internal/target-roll-fd</property>
|
||||
<property>/orientation/roll-deg</property>
|
||||
</dif>
|
||||
</expression>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<or>
|
||||
|
@ -886,9 +798,37 @@
|
|||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>0</value>
|
||||
</input>
|
||||
<input>/it-autoflight/internal/target-roll-deg</input>
|
||||
<output>/it-autoflight/internal/target-roll-fd</output>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/fd1</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
</and>
|
||||
</condition>
|
||||
<value>50</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>15</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>FD: ROLL</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<input>
|
||||
<expression>
|
||||
<dif>
|
||||
<value>0</value>
|
||||
<property>/it-autoflight/internal/target-roll-fd</property>
|
||||
<property>/orientation/roll-deg</property>
|
||||
</dif>
|
||||
</expression>
|
||||
|
@ -897,7 +837,7 @@
|
|||
<min>-30</min>
|
||||
<max>30</max>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>FD: PITCH</name>
|
||||
<debug>false</debug>
|
||||
|
|
|
@ -45,15 +45,9 @@
|
|||
</condition>
|
||||
<property>/it-autoflight/internal/mng-alt</property>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-fpm</property>
|
||||
</output>
|
||||
<min>
|
||||
<property>/it-autoflight/internal/min-vs</property>
|
||||
</min>
|
||||
<max>
|
||||
<property>/it-autoflight/internal/max-vs</property>
|
||||
</max>
|
||||
<output>/it-autoflight/internal/target-fpm</output>
|
||||
<min>/it-autoflight/internal/min-vs</min>
|
||||
<max>/it-autoflight/internal/max-vs</max>
|
||||
</filter>
|
||||
|
||||
<pid-controller>
|
||||
|
@ -87,15 +81,9 @@
|
|||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/fpa</property>
|
||||
</input>
|
||||
<reference>
|
||||
<property>/it-autoflight/input/fpa</property>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-fpm-d</property>
|
||||
</output>
|
||||
<input>/it-autoflight/internal/fpa</input>
|
||||
<reference>/it-autoflight/input/fpa</reference>
|
||||
<output>/it-autoflight/internal/target-fpm-d</output>
|
||||
<config>
|
||||
<Kp>
|
||||
<expression>
|
||||
|
@ -106,9 +94,6 @@
|
|||
</table>
|
||||
</expression>
|
||||
</Kp>
|
||||
<beta>1.0</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0.0</gamma>
|
||||
<Ti>2.0</Ti>
|
||||
<Td>0.002</Td>
|
||||
<u_min>
|
||||
|
@ -215,9 +200,7 @@
|
|||
<property>/it-autoflight/internal/flch-mach</property>
|
||||
<scale>1000.0</scale>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-fpm-b</property>
|
||||
</output>
|
||||
<output>/it-autoflight/internal/target-fpm-b</output>
|
||||
<config>
|
||||
<Kp>
|
||||
<condition>
|
||||
|
@ -237,9 +220,6 @@
|
|||
</condition>
|
||||
<value>-60</value>
|
||||
</Kp>
|
||||
<beta>1.0</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0.0</gamma>
|
||||
<Ti>2.5</Ti>
|
||||
<Td>0.001</Td>
|
||||
<u_min>
|
||||
|
@ -505,9 +485,7 @@
|
|||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/vert-speed-fpm</property>
|
||||
</input>
|
||||
<input>/it-autoflight/internal/vert-speed-fpm</input>
|
||||
<reference>
|
||||
<condition>
|
||||
<or>
|
||||
|
@ -590,9 +568,7 @@
|
|||
</condition>
|
||||
<property>/it-autoflight/internal/nav1-rate-of-climb-fpm</property>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-pitch-deg</property>
|
||||
</output>
|
||||
<output>/it-autoflight/internal/target-pitch-deg</output>
|
||||
<config>
|
||||
<Kp>
|
||||
<condition>
|
||||
|
@ -717,15 +693,9 @@
|
|||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<gain>0.15</gain>
|
||||
<input>
|
||||
<property>/orientation/pitch-deg</property>
|
||||
</input>
|
||||
<reference>
|
||||
<property>/it-autoflight/internal/target-pitch-deg</property>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/fdm/jsbsim/fbw/fmgc/pitch-cmd</property> <!-- Inputs to the FBW Pitch Rate -->
|
||||
</output>
|
||||
<input>/orientation/pitch-deg</input>
|
||||
<reference>/it-autoflight/internal/target-pitch-deg</reference>
|
||||
<output>/fdm/jsbsim/fbw/fmgc/pitch-cmd</output> <!-- Inputs to the FBW Pitch -->
|
||||
<min>-0.3</min>
|
||||
<max>0.3</max>
|
||||
</filter>
|
||||
|
|
|
@ -51,15 +51,9 @@
|
|||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/heading-error-deg</property>
|
||||
</input>
|
||||
<reference>
|
||||
<value>0</value>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-roll-deg</property>
|
||||
</output>
|
||||
<input>/it-autoflight/internal/heading-error-deg</input>
|
||||
<reference>0</reference>
|
||||
<output>/it-autoflight/internal/target-roll-deg</output>
|
||||
<config>
|
||||
<Kp>-1.8</Kp>
|
||||
<Ki>-0.000001</Ki>
|
||||
|
@ -67,9 +61,7 @@
|
|||
<property>/it-autoflight/internal/bank-limit</property>
|
||||
<scale>-1</scale>
|
||||
</min>
|
||||
<max>
|
||||
<property>/it-autoflight/internal/bank-limit</property>
|
||||
</max>
|
||||
<max>/it-autoflight/internal/bank-limit</max>
|
||||
</config>
|
||||
</pi-simple-controller>
|
||||
|
||||
|
@ -104,30 +96,9 @@
|
|||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-backcourse</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/nav-heading-error-deg</property>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-backcourse</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/nav-bc-heading-error-deg</property>
|
||||
</input>
|
||||
<reference>
|
||||
<value>0.0</value>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-roll-deg</property>
|
||||
</output>
|
||||
<input>/it-autoflight/internal/nav-heading-error-deg</input>
|
||||
<reference>0</reference>
|
||||
<output>/it-autoflight/internal/target-roll-deg</output>
|
||||
<config>
|
||||
<Kp>-2.8</Kp>
|
||||
<Ki>-0.0001</Ki>
|
||||
|
@ -135,9 +106,7 @@
|
|||
<property>/it-autoflight/internal/bank-limit</property>
|
||||
<scale>-1</scale>
|
||||
</min>
|
||||
<max>
|
||||
<property>/it-autoflight/internal/bank-limit</property>
|
||||
</max>
|
||||
<max>/it-autoflight/internal/bank-limit</max>
|
||||
</config>
|
||||
</pi-simple-controller>
|
||||
|
||||
|
@ -174,48 +143,14 @@
|
|||
<property>/it-autoflight/internal/bank-limit</property>
|
||||
<scale>-1</scale>
|
||||
</min>
|
||||
<max>
|
||||
<property>/it-autoflight/internal/bank-limit</property>
|
||||
</max>
|
||||
<max>/it-autoflight/internal/bank-limit</max>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>IT-CONTROLLER: TARGET ROLL CMD</name>
|
||||
<debug>false</debug>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/target-roll-deg</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/target-roll</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>6</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>System Command: Roll Rate</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<gain>-0.1</gain>
|
||||
<input>
|
||||
<property>/orientation/roll-deg</property>
|
||||
</input>
|
||||
<reference>
|
||||
<condition>
|
||||
<and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>4</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>5</value>
|
||||
</not-equals>
|
||||
</and>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/target-roll</property>
|
||||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
|
@ -229,10 +164,58 @@
|
|||
</or>
|
||||
</condition>
|
||||
<value>0</value>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/fdm/jsbsim/fbw/fmgc/roll-cmd</property> <!-- Inputs to the FBW Roll Rate -->
|
||||
</output>
|
||||
</input>
|
||||
<input>/it-autoflight/internal/target-roll-deg</input>
|
||||
<output>/it-autoflight/internal/target-roll</output>
|
||||
<max-rate-of-change>
|
||||
<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>
|
||||
<value>50</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<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>
|
||||
</and>
|
||||
</condition>
|
||||
<value>15</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>8</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>System Command: Roll Rate</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<gain>-0.1</gain>
|
||||
<input>/orientation/roll-deg</input>
|
||||
<reference>/it-autoflight/internal/target-roll</reference>
|
||||
<output>/fdm/jsbsim/fbw/fmgc/roll-cmd</output> <!-- Inputs to the FBW Roll -->
|
||||
<min>-0.32</min>
|
||||
<max>0.32</max>
|
||||
</filter>
|
||||
|
@ -252,12 +235,8 @@
|
|||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/nav-heading-error-deg</property>
|
||||
</input>
|
||||
<reference>
|
||||
<value>0</value>
|
||||
</reference>
|
||||
<input>/it-autoflight/internal/nav-heading-error-deg</input>
|
||||
<reference>0</reference>
|
||||
<output>/it-autoflight/internal/rudder-cmd</output>
|
||||
<config>
|
||||
<Kp>
|
||||
|
@ -299,6 +278,7 @@
|
|||
<filter>
|
||||
<name>IT-CONTROLLER: RUDDER CMD</name>
|
||||
<debug>false</debug>
|
||||
<type>noise-spike</type>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
|
@ -319,8 +299,7 @@
|
|||
</condition>
|
||||
<property>/it-autoflight/internal/rudder-cmd</property>
|
||||
</input>
|
||||
<output>/fdm/jsbsim/fbw/fmgc/yaw-cmd</output>
|
||||
<type>noise-spike</type>
|
||||
<output>/fdm/jsbsim/fbw/fmgc/yaw-cmd</output> <!-- Inputs to the FBW Yaw -->
|
||||
<max-rate-of-change>0.6</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
|
|
|
@ -7,44 +7,17 @@
|
|||
-->
|
||||
|
||||
<PropertyList>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
<!-- Thrust Modes -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
|
||||
<!-- Thrust Axis -->
|
||||
|
||||
<filter>
|
||||
<name>KTS INPUT FILTER</name>
|
||||
<debug>false</debug>
|
||||
<type>noise-spike</type>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/input/spd-kts</property>
|
||||
</input>
|
||||
<input>/it-autoflight/input/spd-kts</input>
|
||||
<output>/it-autoflight/internal/kts</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/thr-mode</property>
|
||||
<value>0</value>
|
||||
</not-equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/athr</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>200</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -56,6 +29,10 @@
|
|||
<property>/it-autoflight/output/athr</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/kts-mach</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
|
@ -68,41 +45,17 @@
|
|||
</condition>
|
||||
<value>10</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>200</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>MACH INPUT FILTER</name>
|
||||
<debug>false</debug>
|
||||
<type>noise-spike</type>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/input/spd-mach</property>
|
||||
</input>
|
||||
<input>/it-autoflight/input/spd-mach</input>
|
||||
<output>/it-autoflight/internal/mach</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/thr-mode</property>
|
||||
<value>0</value>
|
||||
</not-equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/athr</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>2</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -114,6 +67,10 @@
|
|||
<property>/it-autoflight/output/athr</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/kts-mach</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
|
@ -126,6 +83,7 @@
|
|||
</condition>
|
||||
<value>0.1</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>2</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
|
@ -250,28 +208,15 @@
|
|||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||
</input>
|
||||
<reference>
|
||||
<property>/it-autoflight/internal/kts</property>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/controls/engines/throttle-cmd-pid</property>
|
||||
</output>
|
||||
<input>/instrumentation/airspeed-indicator/indicated-speed-kt</input>
|
||||
<reference>/it-autoflight/internal/kts</reference>
|
||||
<output>/controls/engines/throttle-cmd-pid</output>
|
||||
<config>
|
||||
<Kp>0.055</Kp>
|
||||
<beta>1.0</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0.0</gamma>
|
||||
<Ti>9.0</Ti>
|
||||
<Td>0.00001</Td>
|
||||
<u_min>
|
||||
<property>/controls/engines/idle-limit</property>
|
||||
</u_min>
|
||||
<u_max>
|
||||
<property>/controls/engines/throttle-pid-max</property>
|
||||
</u_max>
|
||||
<u_min>/controls/engines/idle-limit</u_min>
|
||||
<u_max>/controls/engines/throttle-pid-max</u_max>
|
||||
</config>
|
||||
</pid-controller>
|
||||
|
||||
|
@ -390,22 +335,13 @@
|
|||
<property>/it-autoflight/internal/mach</property>
|
||||
<scale>1000.0</scale>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/controls/engines/throttle-cmd-pid</property>
|
||||
</output>
|
||||
<output>/controls/engines/throttle-cmd-pid</output>
|
||||
<config>
|
||||
<Kp>0.055</Kp>
|
||||
<beta>1.0</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0.0</gamma>
|
||||
<Ti>9.0</Ti>
|
||||
<Td>0.00001</Td>
|
||||
<u_min>
|
||||
<property>/controls/engines/idle-limit</property>
|
||||
</u_min>
|
||||
<u_max>
|
||||
<property>/controls/engines/throttle-pid-max</property>
|
||||
</u_max>
|
||||
<u_min>/controls/engines/idle-limit</u_min>
|
||||
<u_max>/controls/engines/throttle-pid-max</u_max>
|
||||
</config>
|
||||
</pid-controller>
|
||||
|
||||
|
@ -512,12 +448,8 @@
|
|||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<value>0.0</value>
|
||||
</input>
|
||||
<output>
|
||||
<property>/controls/engines/throttle-cmd-pid</property>
|
||||
</output>
|
||||
<input>0.0</input>
|
||||
<output>/controls/engines/throttle-cmd-pid</output>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
|
@ -623,12 +555,8 @@
|
|||
</and>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<value>1.0</value>
|
||||
</input>
|
||||
<output>
|
||||
<property>/controls/engines/throttle-cmd-pid</property>
|
||||
</output>
|
||||
<input>1.0</input>
|
||||
<output>/controls/engines/throttle-cmd-pid</output>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
|
@ -725,12 +653,10 @@
|
|||
</not-equals>
|
||||
</and>
|
||||
</condition>
|
||||
<value>1</value>
|
||||
<value>1.0</value>
|
||||
</input>
|
||||
<input>0</input>
|
||||
<output>
|
||||
<property>/controls/engines/throttle-cmd-pid</property>
|
||||
</output>
|
||||
<input>0.0</input>
|
||||
<output>/controls/engines/throttle-cmd-pid</output>
|
||||
</filter>
|
||||
|
||||
</PropertyList>
|
||||
|
|
|
@ -1 +1 @@
|
|||
4678
|
||||
4679
|
Reference in a new issue