A3XX: Major AP Changes, make FPA and TRK work properly, new liveries

This commit is contained in:
Joshua Davidson 2017-06-11 20:03:19 -04:00
parent 1da96f3c32
commit 546dda20cf
17 changed files with 1015 additions and 1118 deletions

View file

@ -333,6 +333,7 @@
</output>
<custom>
<hdg-input>0</hdg-input>
<trk-fpa>0</trk-fpa>
</custom>
</it-autoflight>

View file

@ -501,28 +501,49 @@
<property>/flight-management/control/ver-ctrl</property>
<value>fmgc</value>
</equals>
<!--property>/instrumentation/pfd-old/enabled</property-->
</condition>
</animation>
<!--animation>
<animation>
<type>select</type>
<object-name>vs.ind</object-name>
<object-name>hdg.ind</object-name>
<condition>
</condition>
</animation-->
<condition>
<equals>
<property>/it-autoflight/output/vert</property>
<value>1</value>
</equals>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>fpa.ind</object-name>
<object-name>trk.ind</object-name>
<object-name>trk.ind2</object-name>
<condition>
<equals>
<property>/it-autoflight/unused</property>
<value>999</value>
<property>/it-autoflight/output/vert</property>
<value>5</value>
</equals>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>vs.ind.001</object-name>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>fpa.ind.001</object-name>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</condition>
</animation>
@ -810,15 +831,49 @@
<button>0</button>
<repeatable>false</repeatable>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/vert</property>
<value>1</value>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/vs</property>
<value>0</value>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/vert</property>
<value>5</value>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/fpa</property>
<value>0.0</value>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
@ -830,9 +885,9 @@
<binding>
<command>nasal</command>
<script>
if (getprop("/it-autoflight/settings/use-true-hdg-error") == 0) {
if (getprop("/it-autoflight/custom/trk-fpa") == 0) {
setprop("/it-autoflight/input/vert", 1);
} else if (getprop("/it-autoflight/settings/use-true-hdg-error") == 1) {
} else if (getprop("/it-autoflight/custom/trk-fpa") == 1) {
setprop("/it-autoflight/input/vert", 5);
}
</script>
@ -848,19 +903,37 @@
<binding>
<command>nasal</command>
<script>
if (getprop("/it-autoflight/output/vert") == 1) {
# Do nothing because we are already in VS mode
} else {
if (getprop("/it-autoflight/output/vert") != 1 and getprop("/it-autoflight/custom/trk-fpa") == 0) {
setprop("/it-autoflight/input/vert", 1);
} else if (getprop("/it-autoflight/output/vert") != 5 and getprop("/it-autoflight/custom/trk-fpa") == 1) {
setprop("/it-autoflight/input/vert", 5);
}
</script>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/output/vert</property>
<value>1</value>
</equals>
</condition>
<command>property-adjust</command>
<property>/it-autoflight/input/vs</property>
<step>100</step>
<max>8000</max>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/output/vert</property>
<value>5</value>
</equals>
</condition>
<command>property-adjust</command>
<property>/it-autoflight/input/fpa</property>
<step>0.1</step>
<max>20.9</max>
</binding>
</action>
<action>
<button>4</button>
@ -868,19 +941,37 @@
<binding>
<command>nasal</command>
<script>
if (getprop("/it-autoflight/output/vert") == 1) {
# Do nothing because we are already in VS mode
} else {
if (getprop("/it-autoflight/output/vert") != 1 and getprop("/it-autoflight/custom/trk-fpa") == 0) {
setprop("/it-autoflight/input/vert", 1);
} else if (getprop("/it-autoflight/output/vert") != 5 and getprop("/it-autoflight/custom/trk-fpa") == 1) {
setprop("/it-autoflight/input/vert", 5);
}
</script>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/output/vert</property>
<value>1</value>
</equals>
</condition>
<command>property-adjust</command>
<property>/it-autoflight/input/vs</property>
<step>-100</step>
<min>-6000</min>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/output/vert</property>
<value>5</value>
</equals>
</condition>
<command>property-adjust</command>
<property>/it-autoflight/input/fpa</property>
<step>-0.1</step>
<min>-20.9</min>
</binding>
</action>
</animation>
@ -961,17 +1052,10 @@
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-assign</command>
<property>/it-autoflight/settings/use-true-hdg-error</property>
<value>1</value>
</binding>
<binding>
<command>nasal</command>
<script>
if (getprop("/it-autoflight/output/vert") == 5) {
setprop("/it-autoflight/input/vert", 1);
}
fmgc.toggle_trkfpa();
</script>
</binding>
<binding>
@ -981,54 +1065,6 @@
</action>
</animation>
<animation>
<type>pick</type>
<object-name>trk-fpa</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-assign</command>
<property>/it-autoflight/settings/use-true-hdg-error</property>
<value>0</value>
</binding>
<binding>
<command>nasal</command>
<script>
if (getprop("/it-autoflight/output/vert") == 1) {
setprop("/it-autoflight/input/vert", 5);
}
</script>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<animation>
<type>select</type>
<object-name>hdg-vs</object-name>
<condition>
<equals>
<property>/it-autoflight/settings/use-true-hdg-error</property>
<value>0</value>
</equals>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>trk-fpa</object-name>
<condition>
<equals>
<property>/it-autoflight/settings/use-true-hdg-error</property>
<value>1</value>
</equals>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>alt-sel-mode</object-name>
@ -1142,8 +1178,6 @@
<object-name>spd-text</object-name>
<object-name>mach-text</object-name>
<object-name>hdg-text</object-name>
<object-name>hdg2.ind</object-name>
<object-name>trk2.ind</object-name>
<object-name>alt-text</object-name>
<object-name>vs-text</object-name>
<object-name>fpa-text</object-name>
@ -1210,6 +1244,40 @@
<animation>
<type>select</type>
<object-name>hdg.ind</object-name>
<condition>
<and>
<equals>
<property>/it-autoflight/output/lat</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</and>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>trk.ind</object-name>
<condition>
<and>
<equals>
<property>/it-autoflight/output/lat</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</and>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>hdg-text</object-name>
<condition>
<equals>
<property>/it-autoflight/output/lat</property>
@ -1218,29 +1286,12 @@
</condition>
</animation>
<animation>
<type>select</type>
<object-name>hdg-text</object-name>
<condition>
<or>
<equals>
<property>/it-autoflight/output/lat</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/custom/hdg-input</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>hdg2.ind</object-name>
<condition>
<equals>
<property>/it-autoflight/settings/use-true-hdg-error</property>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</condition>
@ -1251,7 +1302,7 @@
<object-name>trk2.ind</object-name>
<condition>
<equals>
<property>/it-autoflight/settings/use-true-hdg-error</property>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</condition>
@ -1261,10 +1312,16 @@
<type>select</type>
<object-name>vs.dash</object-name>
<condition>
<not-equals>
<property>/it-autoflight/output/vert</property>
<value>1</value>
</not-equals>
<and>
<not-equals>
<property>/it-autoflight/output/vert</property>
<value>1</value>
</not-equals>
<not-equals>
<property>/it-autoflight/output/vert</property>
<value>5</value>
</not-equals>
</and>
</condition>
</animation>
@ -1284,8 +1341,8 @@
<object-name>fpa-text</object-name>
<condition>
<equals>
<property>/it-autoflight/unused</property>
<value>999</value>
<property>/it-autoflight/output/vert</property>
<value>5</value>
</equals>
</condition>
</animation>
@ -1382,8 +1439,6 @@
<object-name>qnh-hpa</object-name>
<object-name>qnh-std</object-name>
<object-name>rudder-trim</object-name>
<object-name>trk.ind</object-name>
<object-name>trk.ind2</object-name>
<diffuse>
<red>0.89</red>
<green>0.37</green>
@ -1577,8 +1632,8 @@
<alignment>center-center</alignment>
<axis-alignment>xy-plane</axis-alignment>
<type type="string">number-value</type>
<format type="string">%2.0f</format>
<property>/it-autoflight/settings/target-fpa</property>
<format type="string">%2.1f</format>
<property>/it-autoflight/input/fpa</property>
<truncate type="bool">false</truncate>
<font type="string">led.txf</font>
<draw-text type="bool">true</draw-text>
@ -1591,56 +1646,6 @@
</font-resolution>
</text>
<text>
<name>trk.ind</name>
<offsets>
<x-m>-0.4868</x-m>
<y-m>-0.008</y-m>
<z-m>0.1721</z-m>
<heading-deg>90</heading-deg>
<roll-deg>76</roll-deg>
</offsets>
<alignment>center-center</alignment>
<axis-alignment>xy-plane</axis-alignment>
<type type="string">literal</type>
<text type="string">TRK</text>
<truncate type="bool">false</truncate>
<font type="string">Helvetica.txf</font>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.005</character-size>
<font-resolution>
<width type="int">32</width>
<height type="int">32</height>
</font-resolution>
</text>
<text>
<name>trk.ind2</name>
<offsets>
<x-m>-0.4868</x-m>
<y-m>-0.0469</y-m>
<z-m>0.1824</z-m>
<heading-deg>90</heading-deg>
<roll-deg>76</roll-deg>
</offsets>
<alignment>center-center</alignment>
<axis-alignment>xy-plane</axis-alignment>
<type type="string">literal</type>
<text type="string">TRK</text>
<truncate type="bool">false</truncate>
<font type="string">Helvetica.txf</font>
<draw-text type="bool">true</draw-text>
<draw-alignment type="bool">false</draw-alignment>
<draw-boundingbox type="bool">false</draw-boundingbox>
<character-size>0.005</character-size>
<font-resolution>
<width type="int">32</width>
<height type="int">32</height>
</font-resolution>
</text>
<!-- Knobs Rotate -->
<animation>

File diff suppressed because it is too large Load diff

View file

@ -9,7 +9,7 @@
<animation>
<type>translate</type>
<object-name>sidestick-pos</object-name>
<property>controls/flight/elevator</property>
<property>controls/flight/elevator-input-fast</property>
<factor>0.0198</factor>
<axis>
<x>0</x>
@ -21,7 +21,7 @@
<animation>
<type>translate</type>
<object-name>sidestick-pos</object-name>
<property>controls/flight/aileron</property>
<property>controls/flight/aileron-input-fast</property>
<factor>0.0220</factor>
<axis>
<x>0</x>

View file

@ -9,7 +9,7 @@
<animation>
<type>translate</type>
<object-name>sidestick-pos</object-name>
<property>controls/flight/elevator</property>
<property>controls/flight/elevator-input-fast</property>
<factor>0.0198</factor>
<axis>
<x>0</x>
@ -21,7 +21,7 @@
<animation>
<type>translate</type>
<object-name>sidestick-pos</object-name>
<property>controls/flight/aileron</property>
<property>controls/flight/aileron-input-fast</property>
<factor>0.0220</factor>
<axis>
<x>0</x>

Binary file not shown.

After

Width:  |  Height:  |  Size: 586 KiB

View file

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8" ?>
<PropertyList>
<sim>
<model>
<livery>
<name>AirAsia PK-AXA</name>
<texture>Liveries/A320/CFM/AirAsia_PK-AXA.png</texture>
</livery>
</model>
</sim>
<options>
<EIS2 type="bool">1</EIS2>
</options>
<sharklet type="bool">0</sharklet>
</PropertyList>

Binary file not shown.

After

Width:  |  Height:  |  Size: 682 KiB

View file

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8" ?>
<PropertyList>
<sim>
<model>
<livery>
<name>BORUSSIA DORTMUND</name>
<texture>Liveries/A320/CFM/BORUSSIA_DORTMUND.png</texture>
</livery>
</model>
</sim>
<options>
<EIS2 type="bool">1</EIS2>
</options>
<sharklet type="bool">0</sharklet>
</PropertyList>

View file

@ -353,6 +353,7 @@ var ManagedSPD = maketimer(0.25, func {
#################################
var APinit = func {
setprop("/it-autoflight/custom/trk-fpa", 0);
setprop("/it-autoflight/input/kts-mach", 0);
setprop("/it-autoflight/input/ap1", 0);
setprop("/it-autoflight/input/ap2", 0);
@ -482,11 +483,13 @@ var fmabox = func {
var fd1 = getprop("/it-autoflight/output/fd1");
var fd2 = getprop("/it-autoflight/output/fd2");
if (!ap1 and !ap2 and !fd1 and !fd2) {
setprop("/it-autoflight/input/trk", 0);
setprop("/it-autoflight/input/lat", 3);
setprop("/it-autoflight/input/vert", 1);
setprop("/it-autoflight/input/vs", 0);
setprop("/it-autoflight/output/fma-pwr", 0);
} else {
setprop("/it-autoflight/input/trk", 0);
setprop("/it-autoflight/input/vs", 0);
setprop("/it-autoflight/output/fma-pwr", 1);
}
@ -540,8 +543,8 @@ var lateral = func {
lnavwptt.stop();
setprop("/it-autoflight/output/loc-armed", 0);
setprop("/it-autoflight/output/appr-armed", 0);
var hdgnow = int(getprop("/orientation/heading-magnetic-deg")+0.5);
setprop("/it-autoflight/input/hdg", hdgnow);
var hdg5sec = int(getprop("/it-autoflight/internal/heading-5-sec-ahead")+0.5);
setprop("/it-autoflight/input/hdg", hdg5sec);
setprop("/it-autoflight/output/lat", 0);
setprop("/it-autoflight/mode/lat", "HDG");
setprop("/it-autoflight/mode/arm", " ");
@ -668,6 +671,7 @@ var vertical = func {
setprop("/it-autoflight/mode/arm", " ");
}
} else if (vertset == 5) {
fpa_calc();
alandt.stop();
alandt1.stop();
fpa_calct.start();
@ -675,6 +679,7 @@ var vertical = func {
var altinput = getprop("/it-autoflight/input/alt");
setprop("/it-autoflight/internal/alt", altinput);
var fpanow = (int(10*getprop("/it-autoflight/internal/fpa")))*0.1;
print(fpanow);
setprop("/it-autoflight/input/fpa", fpanow);
setprop("/it-autoflight/output/vert", 5);
setprop("/it-autoflight/mode/vert", "FPA");
@ -712,6 +717,31 @@ var vert_arm = func {
}
# Helpers
var toggle_trkfpa = func {
var trkfpa = getprop("/it-autoflight/custom/trk-fpa");
if (trkfpa == 0) {
setprop("/it-autoflight/custom/trk-fpa", 1);
if (getprop("/it-autoflight/output/vert") == 1) {
setprop("/it-autoflight/input/vert", 5);
}
setprop("/it-autoflight/input/trk", 1);
var hed = getprop("/it-autoflight/internal/heading-error-deg");
if (hed >= -10 and hed <= 10 and getprop("/it-autoflight/output/lat") == 0) {
setprop("/it-autoflight/input/lat", 3);
}
} else if (trkfpa == 1) {
setprop("/it-autoflight/custom/trk-fpa", 0);
if (getprop("/it-autoflight/output/vert") == 5) {
setprop("/it-autoflight/input/vert", 1);
}
setprop("/it-autoflight/input/trk", 0);
var hed = getprop("/it-autoflight/internal/heading-error-deg");
if (hed >= -10 and hed <= 10 and getprop("/it-autoflight/output/lat") == 0) {
setprop("/it-autoflight/input/lat", 3);
}
}
}
var lnavwpt = func {
if (getprop("/autopilot/route-manager/route/num") > 0) {
if (getprop("/autopilot/route-manager/wp/dist") <= 1.0) {
@ -740,8 +770,8 @@ var alt_on = func {
var fpa_calc = func {
var VS = getprop("/velocities/vertical-speed-fps");
var TAS = getprop("/velocities/uBody-fps");
if(TAS < 10) TAS = 10;
if(VS < -200) VS =-200;
if (TAS < 10) TAS = 10;
if (VS < -200) VS =-200;
if (abs(VS/TAS) <= 1) {
var FPangle = math.asin(VS/TAS);
FPangle *=90;

View file

@ -254,15 +254,19 @@ var boxchk = func {
var fd2 = getprop("/it-autoflight/output/fd2");
var fma_pwr = getprop("/it-autoflight/output/fma-pwr");
if (ap1 and !ap2 and !fd1 and !fd2 and !fma_pwr) {
setprop("/it-autoflight/custom/trk-fpa", 0);
setprop("/it-autoflight/input/lat", 3);
boxchk_b();
} else if (!ap1 and ap2 and !fd1 and !fd2 and !fma_pwr) {
setprop("/it-autoflight/custom/trk-fpa", 0);
setprop("/it-autoflight/input/lat", 3);
boxchk_b();
} else if (!ap1 and !ap2 and fd1 and !fd2 and !fma_pwr) {
setprop("/it-autoflight/custom/trk-fpa", 0);
setprop("/it-autoflight/input/lat", 3);
boxchk_b();
} else if (!ap1 and !ap2 and !fd1 and fd2 and !fma_pwr) {
setprop("/it-autoflight/custom/trk-fpa", 0);
setprop("/it-autoflight/input/lat", 3);
boxchk_b();
}

View file

@ -689,24 +689,63 @@
<legend>V/S Push</legend>
<pref-width>75</pref-width>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/vert</property>
<value>1</value>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/vs</property>
<value>0</value>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/vert</property>
<value>5</value>
</binding>
<binding>
<condition>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</condition>
<command>property-assign</command>
<property>/it-autoflight/input/fpa</property>
<value>0.0</value>
</binding>
</button>
<button>
<legend>V/S Pull</legend>
<pref-width>75</pref-width>
<binding>
<command>property-assign</command>
<property>/it-autoflight/input/vert</property>
<value>1</value>
<command>nasal</command>
<script>
if (getprop("/it-autoflight/custom/trk-fpa") == 0) {
setprop("/it-autoflight/input/vert", 1);
} else if (getprop("/it-autoflight/custom/trk-fpa") == 1) {
setprop("/it-autoflight/input/vert", 5);
}
</script>
</binding>
</button>
@ -1033,6 +1072,55 @@
</button>
</group>
<group>
<layout>hbox</layout>
<hrule>
<stretch type="bool">true</stretch>
</hrule>
<text>
<label>Other Mode</label>
</text>
<hrule>
<stretch type="bool">true</stretch>
</hrule>
</group>
<group>
<layout>hbox</layout>
<text>
<label>HDG VS</label>
<visible>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>0</value>
</equals>
</visible>
</text>
<button>
<legend>HDG VS/TRK FPA</legend>
<pref-width>120</pref-width>
<binding>
<command>nasal</command>
<script>
fmgc.toggle_trkfpa();
</script>
</binding>
</button>
<text>
<label>TRK FPA</label>
<visible>
<equals>
<property>/it-autoflight/custom/trk-fpa</property>
<value>1</value>
</equals>
</visible>
</text>
</group>
</group>
</PropertyList>

View file

@ -283,7 +283,7 @@
<gamma>0.0</gamma>
<Ti>10.0</Ti>
<Td>0.00001</Td>
<u_min>0.01</u_min>
<u_min>0.005</u_min>
<u_max>
<property>/controls/engines/engine[0]/throttle-man</property>
</u_max>
@ -540,7 +540,7 @@
<gamma>0.0</gamma>
<Ti>10.0</Ti>
<Td>0.00001</Td>
<u_min>0.01</u_min>
<u_min>0.005</u_min>
<u_max>
<property>/controls/engines/engine[1]/throttle-man</property>
</u_max>

View file

@ -8,6 +8,32 @@
<!-- Predictors -->
<!-- =============================================================== -->
<predict-simple>
<name>HEADING 5 SECONDS AHEAD</name>
<debug>false</debug>
<input>
<condition>
<equals>
<property>/it-autoflight/input/trk</property>
<value>0</value>
</equals>
</condition>
<property>/orientation/heading-magnetic-deg</property>
</input>
<input>
<condition>
<equals>
<property>/it-autoflight/input/trk</property>
<value>1</value>
</equals>
</condition>
<property>/orientation/heading-deg</property>
</input>
<output>/it-autoflight/internal/heading-5-sec-ahead</output>
<seconds>5.0</seconds>
<filter-gain>0.0</filter-gain>
</predict-simple>
<predict-simple>
<name>ALTITUDE 5 SECONDS AHEAD</name>
<debug>false</debug>

View file

@ -538,7 +538,22 @@
<debug>false</debug>
<feedback-if-disabled>true</feedback-if-disabled>
<initialize-to>output</initialize-to>
<enable>
<input>
<condition>
<and>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>0</value>
</equals>
</and>
</condition>
<property>/controls/flight/elevator-fbw</property>
</input>
<input>
<condition>
<or>
<equals>
@ -551,13 +566,40 @@
</equals>
</or>
</condition>
</enable>
<input>
<property>/it-autoflight/internal/elevator-cmd</property>
</input>
<output>/controls/flight/elevator</output>
<output>/controls/flight/elevator-fmgc</output>
<type>noise-spike</type>
<max-rate-of-change>0.4</max-rate-of-change>
<max-rate-of-change>
<condition>
<and>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>0</value>
</equals>
</and>
</condition>
<value>10</value>
</max-rate-of-change>
<max-rate-of-change>
<condition>
<or>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>1</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>1</value>
</equals>
</or>
</condition>
<value>0.35</value>
</max-rate-of-change>
</filter>
<!-- =============================================================== -->

View file

@ -312,7 +312,22 @@
<debug>false</debug>
<feedback-if-disabled>true</feedback-if-disabled>
<initialize-to>output</initialize-to>
<enable>
<input>
<condition>
<and>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>0</value>
</equals>
</and>
</condition>
<property>/controls/flight/aileron-fbw</property>
</input>
<input>
<condition>
<or>
<equals>
@ -325,13 +340,40 @@
</equals>
</or>
</condition>
</enable>
<input>
<property>/it-autoflight/internal/aileron-cmd</property>
</input>
<output>/controls/flight/aileron</output>
<output>/controls/flight/aileron-fmgc</output>
<type>noise-spike</type>
<max-rate-of-change>0.5</max-rate-of-change>
<max-rate-of-change>
<condition>
<and>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>0</value>
</equals>
</and>
</condition>
<value>10</value>
</max-rate-of-change>
<max-rate-of-change>
<condition>
<or>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>1</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>1</value>
</equals>
</or>
</condition>
<value>0.5</value>
</max-rate-of-change>
</filter>
<!-- =============================================================== -->

View file

@ -10,6 +10,23 @@
<!-- Surface Position Feeding -->
<!-- =============================================================== -->
<filter>
<debug>false</debug>
<type>noise-spike</type>
<input>/controls/flight/aileron</input>
<output>/controls/flight/aileron-input-fast</output>
<max-rate-of-change>5</max-rate-of-change>
</filter>
<filter>
<debug>false</debug>
<type>noise-spike</type>
<input>/controls/flight/elevator</input>
<output>/controls/flight/elevator-input-fast</output>
<max-rate-of-change>5</max-rate-of-change>
</filter>
<filter>
<debug>false</debug>
<type>noise-spike</type>
@ -160,6 +177,39 @@
</condition>
<property>/controls/flight/aileron-fbw-cmd</property>
</input>
<input>
<condition>
<and>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>0</value>
</equals>
<or>
<equals>
<property>/gear/gear[1]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[2]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/it-fbw/law</property>
<value>1</value>
</equals>
<equals>
<property>/it-fbw/law</property>
<value>2</value>
</equals>
</or>
</and>
</condition>
<property>/controls/flight/aileron-input</property>
</input>
<input>
<condition>
<or>
@ -171,25 +221,9 @@
<property>/it-autoflight/output/ap2</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[1]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[2]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/it-fbw/law</property>
<value>1</value>
</equals>
<equals>
<property>/it-fbw/law</property>
<value>2</value>
</equals>
</or>
</condition>
<property>/controls/flight/aileron-input</property>
<property>/controls/flight/aileron-fmgc</property>
</input>
<input>
<condition>
@ -573,6 +607,35 @@
</condition>
<property>/controls/flight/elevator-fbw-cmd</property>
</input>
<input>
<condition>
<and>
<equals>
<property>/it-autoflight/output/ap1</property>
<value>0</value>
</equals>
<equals>
<property>/it-autoflight/output/ap2</property>
<value>0</value>
</equals>
<or>
<equals>
<property>/gear/gear[1]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[2]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/it-fbw/law</property>
<value>2</value>
</equals>
</or>
</and>
</condition>
<property>/controls/flight/elevator-input</property>
</input>
<input>
<condition>
<or>
@ -584,21 +647,9 @@
<property>/it-autoflight/output/ap2</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[1]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/gear/gear[2]/wow</property>
<value>1</value>
</equals>
<equals>
<property>/it-fbw/law</property>
<value>2</value>
</equals>
</or>
</condition>
<property>/controls/flight/elevator-input</property>
<property>/controls/flight/elevator-fmgc</property>
</input>
<input>
<condition>
@ -803,6 +854,10 @@
<property>/position/gear-agl-ft</property>
<value>50</value>
</greater-than-equals>
<not-equals>
<property>/it-autoflight/output/lat</property>
<value>4</value>
</not-equals>
</and>
</condition>
</enable>
@ -859,6 +914,10 @@
<property>/position/gear-agl-ft</property>
<value>50</value>
</greater-than-equals>
<not-equals>
<property>/it-autoflight/output/lat</property>
<value>4</value>
</not-equals>
</and>
</condition>
<property>/controls/flight/rudder-fbw-cmd</property>
@ -890,6 +949,10 @@
<property>/position/gear-agl-ft</property>
<value>50</value>
</less-than>
<equals>
<property>/it-autoflight/output/lat</property>
<value>4</value>
</equals>
</or>
</condition>
<property>/controls/flight/rudder</property>