FMGC: V/S and FPA filtering bugfix, DU: Add flashing amber for FPA protection also
This commit is contained in:
parent
ebca54e832
commit
833e728b4b
4 changed files with 213 additions and 216 deletions
|
@ -1723,7 +1723,7 @@ var canvas_pfd = {
|
||||||
} else {
|
} else {
|
||||||
me["FMA_combined"].hide();
|
me["FMA_combined"].hide();
|
||||||
me["FMA_combined_box"].hide();
|
me["FMA_combined_box"].hide();
|
||||||
if ((notification.ap1 or notification.ap2) and fmgc.Modes.PFD.FMA.pitchMode == "V/S" and (notification.overspeedVsProt or notification.underspeedVsProt)) {
|
if ((notification.ap1 or notification.ap2) and (fmgc.Modes.PFD.FMA.pitchMode == "V/S" or fmgc.Modes.PFD.FMA.pitchMode == "FPA") and (notification.overspeedVsProt or notification.underspeedVsProt)) {
|
||||||
me.amberBoxVS = 1;
|
me.amberBoxVS = 1;
|
||||||
} else {
|
} else {
|
||||||
me.amberBoxVS = 0;
|
me.amberBoxVS = 0;
|
||||||
|
|
|
@ -379,7 +379,6 @@ var ITAF = {
|
||||||
} else {
|
} else {
|
||||||
Internal.bankLimitAuto = 30;
|
Internal.bankLimitAuto = 30;
|
||||||
}
|
}
|
||||||
|
|
||||||
Internal.bankLimit.setValue(Internal.bankLimitAuto);
|
Internal.bankLimit.setValue(Internal.bankLimitAuto);
|
||||||
|
|
||||||
# If in LNAV mode and route is not longer active, switch to HDG HLD
|
# If in LNAV mode and route is not longer active, switch to HDG HLD
|
||||||
|
|
|
@ -513,214 +513,6 @@
|
||||||
<output>/it-autoflight/input/vs</output>
|
<output>/it-autoflight/input/vs</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
|
||||||
<name>Vertical Speed VMO Protection</name>
|
|
||||||
<type>gain</type>
|
|
||||||
<input>
|
|
||||||
<expression>
|
|
||||||
<div>
|
|
||||||
<product>
|
|
||||||
<property>/instrumentation/airspeed-indicator/true-speed-kt</property>
|
|
||||||
<value>101.26859142607174</value> <!-- FPM to Knot -->
|
|
||||||
<dif>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/forces/fbx-prop-lbs</property>
|
|
||||||
<cos>
|
|
||||||
<property>/fdm/jsbsim/aero/alpha-rad</property>
|
|
||||||
</cos>
|
|
||||||
</product>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/forces/fwx-aero-lbs</property>
|
|
||||||
<sum>
|
|
||||||
<value>1</value>
|
|
||||||
<product>
|
|
||||||
<property>/it-autoflight/internal/vmo-mmo-error</property>
|
|
||||||
<value>-0.1</value>
|
|
||||||
</product>
|
|
||||||
</sum>
|
|
||||||
</product>
|
|
||||||
</dif>
|
|
||||||
</product>
|
|
||||||
<property>/fdm/jsbsim/inertia/weight-lbs</property>
|
|
||||||
</div>
|
|
||||||
</expression>
|
|
||||||
</input>
|
|
||||||
<output>/it-autoflight/internal/overspeed-vs</output>
|
|
||||||
<min>-6000</min>
|
|
||||||
<max>6000</max>
|
|
||||||
</filter>
|
|
||||||
|
|
||||||
<filter>
|
|
||||||
<name>Vertical Speed VLS Protection</name>
|
|
||||||
<type>gain</type>
|
|
||||||
<input>
|
|
||||||
<expression>
|
|
||||||
<div>
|
|
||||||
<product>
|
|
||||||
<property>/instrumentation/airspeed-indicator/true-speed-kt</property>
|
|
||||||
<value>101.26859142607174</value> <!-- FPM to Knot -->
|
|
||||||
<dif>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/forces/fbx-prop-lbs</property>
|
|
||||||
<cos>
|
|
||||||
<property>/fdm/jsbsim/aero/alpha-rad</property>
|
|
||||||
</cos>
|
|
||||||
</product>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/forces/fwx-aero-lbs</property>
|
|
||||||
<sum>
|
|
||||||
<value>1</value>
|
|
||||||
<product>
|
|
||||||
<property>/it-autoflight/internal/vls-error</property>
|
|
||||||
<value>-0.1</value>
|
|
||||||
</product>
|
|
||||||
</sum>
|
|
||||||
</product>
|
|
||||||
</dif>
|
|
||||||
</product>
|
|
||||||
<property>/fdm/jsbsim/inertia/weight-lbs</property>
|
|
||||||
</div>
|
|
||||||
</expression>
|
|
||||||
</input>
|
|
||||||
<output>/it-autoflight/internal/underspeed-vs</output>
|
|
||||||
<min>-6000</min>
|
|
||||||
<max>6000</max>
|
|
||||||
</filter>
|
|
||||||
|
|
||||||
<logic>
|
|
||||||
<input>
|
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
|
||||||
<property>/FMGC/internal/vmo-mmo-minus-5</property>
|
|
||||||
</greater-than>
|
|
||||||
<or>
|
|
||||||
<and>
|
|
||||||
<equals>
|
|
||||||
<property>/it-autoflight/output/vert</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
<greater-than>
|
|
||||||
<property>/it-autoflight/internal/overspeed-vs</property>
|
|
||||||
<property>/it-autoflight/input/vs</property>
|
|
||||||
</greater-than>
|
|
||||||
</and>
|
|
||||||
<and>
|
|
||||||
<equals>
|
|
||||||
<property>/it-autoflight/output/vert</property>
|
|
||||||
<value>5</value>
|
|
||||||
</equals>
|
|
||||||
<greater-than>
|
|
||||||
<property>/it-autoflight/internal/overspeed-vs</property>
|
|
||||||
<property>/it-autoflight/internal/target-fpm-fpa-raw</property>
|
|
||||||
</greater-than>
|
|
||||||
</and>
|
|
||||||
</or>
|
|
||||||
</and>
|
|
||||||
</input>
|
|
||||||
<output>/it-autoflight/internal/overspeed-vs-prot</output>
|
|
||||||
</logic>
|
|
||||||
|
|
||||||
<logic>
|
|
||||||
<input>
|
|
||||||
<and>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
|
||||||
<property>/FMGC/internal/vls-switched-plus-5</property>
|
|
||||||
</less-than>
|
|
||||||
<or>
|
|
||||||
<and>
|
|
||||||
<equals>
|
|
||||||
<property>/it-autoflight/output/vert</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
<less-than>
|
|
||||||
<property>/it-autoflight/internal/underspeed-vs</property>
|
|
||||||
<property>/it-autoflight/input/vs</property>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
<and>
|
|
||||||
<equals>
|
|
||||||
<property>/it-autoflight/output/vert</property>
|
|
||||||
<value>5</value>
|
|
||||||
</equals>
|
|
||||||
<less-than>
|
|
||||||
<property>/it-autoflight/internal/underspeed-vs</property>
|
|
||||||
<property>/it-autoflight/internal/target-fpm-fpa-raw</property>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
</or>
|
|
||||||
</and>
|
|
||||||
</input>
|
|
||||||
<output>/it-autoflight/internal/underspeed-vs-prot</output>
|
|
||||||
</logic>
|
|
||||||
|
|
||||||
<filter>
|
|
||||||
<name>Vertical Speed Filter</name>
|
|
||||||
<type>noise-spike</type>
|
|
||||||
<feedback-if-disabled>true</feedback-if-disabled>
|
|
||||||
<initialize-to>output</initialize-to>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<not>
|
|
||||||
<and>
|
|
||||||
<property>/it-autoflight/output/ap-on</property>
|
|
||||||
<equals>
|
|
||||||
<property>/it-autoflight/output/vert</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
<equals>
|
|
||||||
<property>/gear/gear[1]/wow</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
<equals>
|
|
||||||
<property>/gear/gear[2]/wow</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</not>
|
|
||||||
</condition>
|
|
||||||
<property>/it-autoflight/internal/vert-speed-fpm</property>
|
|
||||||
</input>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<property>/it-autoflight/internal/overspeed-vs-prot</property>
|
|
||||||
</condition>
|
|
||||||
<property>/it-autoflight/internal/overspeed-vs</property>
|
|
||||||
</input>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<property>/it-autoflight/internal/underspeed-vs-prot</property>
|
|
||||||
</condition>
|
|
||||||
<property>/it-autoflight/internal/underspeed-vs</property>
|
|
||||||
</input>
|
|
||||||
<input>/it-autoflight/input/vs</input>
|
|
||||||
<output>/it-autoflight/internal/vs</output>
|
|
||||||
<max-rate-of-change>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<property>/it-autoflight/output/ap-on</property>
|
|
||||||
<not><property>/it-autoflight/internal/overspeed-vs-prot</property></not>
|
|
||||||
<not><property>/it-autoflight/internal/underspeed-vs-prot</property></not>
|
|
||||||
<equals>
|
|
||||||
<property>/it-autoflight/output/vert</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
<equals>
|
|
||||||
<property>/gear/gear[1]/wow</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
<equals>
|
|
||||||
<property>/gear/gear[2]/wow</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
<value>300</value>
|
|
||||||
</max-rate-of-change>
|
|
||||||
<max-rate-of-change>2000</max-rate-of-change>
|
|
||||||
</filter>
|
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>VS Abs</name>
|
<name>VS Abs</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
|
|
|
@ -24,6 +24,212 @@
|
||||||
<max>/it-autoflight/internal/max-vs</max>
|
<max>/it-autoflight/internal/max-vs</max>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<name>Vertical Speed VMO Protection</name>
|
||||||
|
<type>gain</type>
|
||||||
|
<input>
|
||||||
|
<expression>
|
||||||
|
<div>
|
||||||
|
<product>
|
||||||
|
<property>/instrumentation/airspeed-indicator/true-speed-kt</property>
|
||||||
|
<value>101.26859142607174</value> <!-- FPM to Knot -->
|
||||||
|
<dif>
|
||||||
|
<product>
|
||||||
|
<property>/fdm/jsbsim/forces/fbx-prop-lbs</property>
|
||||||
|
<cos>
|
||||||
|
<property>/fdm/jsbsim/aero/alpha-rad</property>
|
||||||
|
</cos>
|
||||||
|
</product>
|
||||||
|
<product>
|
||||||
|
<property>/fdm/jsbsim/forces/fwx-aero-lbs</property>
|
||||||
|
<sum>
|
||||||
|
<value>1</value>
|
||||||
|
<product>
|
||||||
|
<property>/it-autoflight/internal/vmo-mmo-error</property>
|
||||||
|
<value>-0.1</value>
|
||||||
|
</product>
|
||||||
|
</sum>
|
||||||
|
</product>
|
||||||
|
</dif>
|
||||||
|
</product>
|
||||||
|
<property>/fdm/jsbsim/inertia/weight-lbs</property>
|
||||||
|
</div>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/it-autoflight/internal/overspeed-vs</output>
|
||||||
|
<min>-6000</min>
|
||||||
|
<max>6000</max>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<name>Vertical Speed VLS Protection</name>
|
||||||
|
<type>gain</type>
|
||||||
|
<input>
|
||||||
|
<expression>
|
||||||
|
<div>
|
||||||
|
<product>
|
||||||
|
<property>/instrumentation/airspeed-indicator/true-speed-kt</property>
|
||||||
|
<value>101.26859142607174</value> <!-- FPM to Knot -->
|
||||||
|
<dif>
|
||||||
|
<product>
|
||||||
|
<property>/fdm/jsbsim/forces/fbx-prop-lbs</property>
|
||||||
|
<cos>
|
||||||
|
<property>/fdm/jsbsim/aero/alpha-rad</property>
|
||||||
|
</cos>
|
||||||
|
</product>
|
||||||
|
<product>
|
||||||
|
<property>/fdm/jsbsim/forces/fwx-aero-lbs</property>
|
||||||
|
<sum>
|
||||||
|
<value>1</value>
|
||||||
|
<product>
|
||||||
|
<property>/it-autoflight/internal/vls-error</property>
|
||||||
|
<value>-0.1</value>
|
||||||
|
</product>
|
||||||
|
</sum>
|
||||||
|
</product>
|
||||||
|
</dif>
|
||||||
|
</product>
|
||||||
|
<property>/fdm/jsbsim/inertia/weight-lbs</property>
|
||||||
|
</div>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/it-autoflight/internal/underspeed-vs</output>
|
||||||
|
<min>-6000</min>
|
||||||
|
<max>6000</max>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<input>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
|
<property>/FMGC/internal/vmo-mmo-minus-5</property>
|
||||||
|
</greater-than>
|
||||||
|
<or>
|
||||||
|
<and>
|
||||||
|
<equals>
|
||||||
|
<property>/it-autoflight/output/vert</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
<greater-than>
|
||||||
|
<property>/it-autoflight/internal/overspeed-vs</property>
|
||||||
|
<property>/it-autoflight/input/vs</property>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
<and>
|
||||||
|
<equals>
|
||||||
|
<property>/it-autoflight/output/vert</property>
|
||||||
|
<value>5</value>
|
||||||
|
</equals>
|
||||||
|
<greater-than>
|
||||||
|
<property>/it-autoflight/internal/overspeed-vs</property>
|
||||||
|
<property>/it-autoflight/internal/target-fpm-fpa-raw</property>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
</or>
|
||||||
|
</and>
|
||||||
|
</input>
|
||||||
|
<output>/it-autoflight/internal/overspeed-vs-prot</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<input>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
|
<property>/FMGC/internal/vls-switched-plus-5</property>
|
||||||
|
</less-than>
|
||||||
|
<or>
|
||||||
|
<and>
|
||||||
|
<equals>
|
||||||
|
<property>/it-autoflight/output/vert</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
<less-than>
|
||||||
|
<property>/it-autoflight/internal/underspeed-vs</property>
|
||||||
|
<property>/it-autoflight/input/vs</property>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
<and>
|
||||||
|
<equals>
|
||||||
|
<property>/it-autoflight/output/vert</property>
|
||||||
|
<value>5</value>
|
||||||
|
</equals>
|
||||||
|
<less-than>
|
||||||
|
<property>/it-autoflight/internal/underspeed-vs</property>
|
||||||
|
<property>/it-autoflight/internal/target-fpm-fpa-raw</property>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</or>
|
||||||
|
</and>
|
||||||
|
</input>
|
||||||
|
<output>/it-autoflight/internal/underspeed-vs-prot</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<name>Vertical Speed Filter</name>
|
||||||
|
<type>noise-spike</type>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<not>
|
||||||
|
<and>
|
||||||
|
<property>/it-autoflight/output/ap-on</property>
|
||||||
|
<equals>
|
||||||
|
<property>/it-autoflight/output/vert</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/gear/gear[1]/wow</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/gear/gear[2]/wow</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
</and>
|
||||||
|
</not>
|
||||||
|
</condition>
|
||||||
|
<property>/it-autoflight/internal/vert-speed-fpm</property>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<property>/it-autoflight/internal/overspeed-vs-prot</property>
|
||||||
|
</condition>
|
||||||
|
<property>/it-autoflight/internal/overspeed-vs</property>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<property>/it-autoflight/internal/underspeed-vs-prot</property>
|
||||||
|
</condition>
|
||||||
|
<property>/it-autoflight/internal/underspeed-vs</property>
|
||||||
|
</input>
|
||||||
|
<input>/it-autoflight/input/vs</input>
|
||||||
|
<output>/it-autoflight/internal/target-fpm-vs</output>
|
||||||
|
<max-rate-of-change>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<property>/it-autoflight/output/ap-on</property>
|
||||||
|
<not><property>/it-autoflight/internal/overspeed-vs-prot</property></not>
|
||||||
|
<not><property>/it-autoflight/internal/underspeed-vs-prot</property></not>
|
||||||
|
<equals>
|
||||||
|
<property>/it-autoflight/output/vert</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/gear/gear[1]/wow</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/gear/gear[2]/wow</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
<value>300</value>
|
||||||
|
</max-rate-of-change>
|
||||||
|
<max-rate-of-change>10000</max-rate-of-change>
|
||||||
|
</filter>
|
||||||
|
|
||||||
<logic>
|
<logic>
|
||||||
<input>
|
<input>
|
||||||
<and>
|
<and>
|
||||||
|
@ -351,7 +557,7 @@
|
||||||
<property>/it-autoflight/internal/underspeed-vs</property>
|
<property>/it-autoflight/internal/underspeed-vs</property>
|
||||||
</input>
|
</input>
|
||||||
<input>/it-autoflight/input/vs</input>
|
<input>/it-autoflight/input/vs</input>
|
||||||
<output>/it-autoflight/internal/vs-fd</output>
|
<output>/it-autoflight/internal/target-fpm-vs-fd</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
|
@ -370,8 +576,8 @@
|
||||||
</condition>
|
</condition>
|
||||||
<property>/it-autoflight/internal/underspeed-vs</property>
|
<property>/it-autoflight/internal/underspeed-vs</property>
|
||||||
</input>
|
</input>
|
||||||
<input>/it-autoflight/internal/target-fpm-fpa-raw</input>
|
<input>/it-autoflight/internal/target-fpm-fpa</input>
|
||||||
<output>/it-autoflight/internal/fpa-fd</output>
|
<output>/it-autoflight/internal/target-fpm-fpa-fd</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
|
@ -394,7 +600,7 @@
|
||||||
<value>1</value>
|
<value>1</value>
|
||||||
</equals>
|
</equals>
|
||||||
</condition>
|
</condition>
|
||||||
<property>/it-autoflight/internal/vs-fd</property>
|
<property>/it-autoflight/internal/target-fpm-vs-fd</property>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
|
@ -427,7 +633,7 @@
|
||||||
<value>5</value>
|
<value>5</value>
|
||||||
</equals>
|
</equals>
|
||||||
</condition>
|
</condition>
|
||||||
<property>/it-autoflight/internal/fpa-fd</property>
|
<property>/it-autoflight/internal/target-fpm-fpa-fd</property>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
|
@ -479,7 +685,7 @@
|
||||||
<value>1</value>
|
<value>1</value>
|
||||||
</equals>
|
</equals>
|
||||||
</condition>
|
</condition>
|
||||||
<property>/it-autoflight/internal/vs</property>
|
<property>/it-autoflight/internal/target-fpm-vs</property>
|
||||||
</reference>
|
</reference>
|
||||||
<reference>
|
<reference>
|
||||||
<condition>
|
<condition>
|
||||||
|
|
Loading…
Reference in a new issue