1
0
Fork 0

Revisit stall + park brk config warnings

This commit is contained in:
legoboyvdlp R 2020-10-17 12:55:09 +01:00
parent c5aac7038d
commit ddc629d258
4 changed files with 186 additions and 8 deletions

View file

@ -58,6 +58,7 @@ var warningNodes = {
fac12Fault: props.globals.initNode("/ECAM/warnings/logic/fac-12-fault"),
fac1Fault: props.globals.initNode("/ECAM/warnings/logic/fac-1-fault"),
fac2Fault: props.globals.initNode("/ECAM/warnings/logic/fac-2-fault"),
stallWarn: props.globals.initNode("/ECAM/warnings/logic/stall/stall-warn-on"),
yawDamper12Fault: props.globals.initNode("/ECAM/warnings/logic/yaw-damper-12-fault"),
},
Timers: {
@ -100,6 +101,7 @@ var warningNodes = {
gen2FaultOnOff: props.globals.initNode("/ECAM/warnings/flipflop/gen-2-fault-on-off"),
pack1Ovht: props.globals.initNode("/ECAM/warnings/flipflop/pack-1-ovht"),
pack2Ovht: props.globals.initNode("/ECAM/warnings/flipflop/pack-2-ovht"),
parkBrk: props.globals.initNode("/ECAM/warnings/config/park-brk/park-brk-output"),
eng1ThrLvrAbvIdle: props.globals.initNode("/ECAM/warnings/logic/eng/eng-1-thr-lvr-abv-idle"),
eng2ThrLvrAbvIdle: props.globals.initNode("/ECAM/warnings/logic/eng/eng-2-thr-lvr-abv-idle"),
},

View file

@ -48,15 +48,11 @@ var messages_priority_3 = func {
# Stall
# todo - altn law and emer cancel flipflops page 2440
if (phaseVar3 >= 5 and phaseVar3 <= 7 and (getprop("/fdm/jsbsim/fcs/slat-pos-deg") <= 15 and (getprop("/systems/navigation/adr/output/aoa-1") > 15 or getprop("/systems/navigation/adr/output/aoa-2") > 15 or getprop("/systems/navigation/adr/output/aoa-3") > 15)) or (getprop("/fdm/jsbsim/fcs/slat-pos-deg") > 15 and (getprop("/systems/navigation/adr/output/aoa-1") > 23 or getprop("/systems/navigation/adr/output/aoa-2") > 23 or getprop("/systems/navigation/adr/output/aoa-3") > 23))) {
if (warningNodes.Logic.stallWarn.getValue()) {
stall.active = 1;
} else {
ECAM_controller.warningReset(stall);
}
if (stall.active) {
stallVoice.setValue(1);
} else {
ECAM_controller.warningReset(stall);
stallVoice.setValue(0);
}
@ -764,7 +760,7 @@ var messages_priority_3 = func {
ECAM_controller.warningReset(rud_trim_config_1);
}
if ((park_brk_config.clearFlag == 0) and pts.Controls.Gear.parkingBrake.getValue() == 1 and phaseVar3 >= 3 and phaseVar3 <= 4) {
if ((park_brk_config.clearFlag == 0) and warningNodes.Flipflops.parkBrk.getValue() and phaseVar3 >= 2 and phaseVar3 <= 3) {
park_brk_config.active = 1;
} else {
ECAM_controller.warningReset(park_brk_config);
@ -2227,7 +2223,7 @@ var messages_config_memo = func {
ldgMemoLine3.colour = "c";
}
if (getprop("it-fbw/law") == 1 or getprop("instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override")) {
if (getprop("/it-fbw/law") == 1 or getprop("instrumentation/mk-viii/inputs/discretes/momentary-flap-3-override")) {
if (pts.Controls.Flight.flapsPos.getValue() == 4) {
ldgMemoLine4.msg = " FLAPS CONF 3";
ldgMemoLine4.colour = "g";

View file

@ -1661,6 +1661,106 @@
</channel>
<channel name="STALL" execrate="8">
<switch name="/ECAM/warnings/logic/stall/phase-flipflop-set">
<default value="0"/>
<test logic="OR" value="1">
<test logic="AND">
/ECAM/warnings/logic/stall/phase-8-output eq 0
/ECAM/warning-phase eq 7
</test>
<test logic="AND">
/ECAM/warnings/logic/stall/phase-4-output eq 0
/ECAM/warning-phase eq 5
</test>
</test>
</switch>
<switch name="/ECAM/warnings/logic/stall/phase-4">
<default value="0"/>
<test logic="OR" value="1">
/ECAM/warning-phase eq 4
</test>
</switch>
<switch name="/ECAM/warnings/logic/stall/phase-5">
<default value="0"/>
<test logic="OR" value="1">
/ECAM/warning-phase eq 5
</test>
</switch>
<switch name="/ECAM/warnings/logic/stall/phase-8">
<default value="0"/>
<test logic="OR" value="1">
/ECAM/warning-phase eq 8
</test>
</switch>
<switch name="/ECAM/warnings/logic/stall/phase-flipflop-reset">
<default value="0"/>
<test logic="OR" value="1">
/ECAM/warnings/logic/stall/phase-5-output eq 0
/ECAM/warning-phase eq 6
</test>
</switch>
<switch name="/ECAM/warnings/logic/stall/stall-warn-inhibit">
<default value="0"/>
<test logic="AND" value="1">
/instrumentation/radar-altimeter[0]/radar-altitude-ft lt 1500
/instrumentation/radar-altimeter[1]/radar-altitude-ft lt 1500
<!-- /it-fbw/law ne 0 confirm -->
/ECAM/warnings/logic/stall/phase-flipflop eq 1
</test>
</switch>
<switch name="/ECAM/warnings/logic/stall/stall-warn">
<default value="0"/>
<test logic="AND" value="1">
<test logic="OR">
<test logic="AND">
/fdm/jsbsim/fcs/slat-pos-deg lt 15
<test logic="OR">
/systems/navigation/adr/output/aoa-1 ge 15
/systems/navigation/adr/output/aoa-2 ge 15
/systems/navigation/adr/output/aoa-3 ge 15
</test>
</test>
<test logic="AND">
/fdm/jsbsim/fcs/slat-pos-deg ge 15
<test logic="OR">
/systems/navigation/adr/output/aoa-1 ge 23
/systems/navigation/adr/output/aoa-2 ge 23
/systems/navigation/adr/output/aoa-3 ge 23
</test>
</test>
</test>
<!-- /it-fbw/law ne 0 confirm... -->
<test logic="OR">
/systems/navigation/adr/operating-1 eq 1
/systems/navigation/adr/operating-2 eq 1
/systems/navigation/adr/operating-3 eq 1
</test>
</test>
</switch>
<switch name="/ECAM/warnings/logic/stall/stall-warn-on">
<default value="0"/>
<test logic="AND" value="1">
<test logic="OR">
/ECAM/warning-phase eq 5
/ECAM/warning-phase eq 6
/ECAM/warning-phase eq 7
</test>
/ECAM/warnings/logic/stall/stall-warn eq 1
/ECAM/warnings/logic/stall/stall-warn-inhibit eq 0
</test>
</switch>
</channel>
<channel name="ENG" execrate="8">
<switch name="/ECAM/warnings/logic/eng/ground-spoilers">
@ -1878,4 +1978,24 @@
</channel>
<channel name="Config" execrate="8">
<switch name="/ECAM/warnings/config/park-brk/park-brk-set">
<default value="0"/>
<test logic="AND" value="1">
/ECAM/warning-phase eq 3
/controls/gear/brake-parking eq 1
</test>
</switch>
<switch name="/ECAM/warnings/config/park-brk/park-brk-reset">
<default value="0"/>
<test logic="OR" value="1">
/controls/gear/brake-parking eq 0
/ECAM/warning-phase eq 5
</test>
</switch>
</channel>
</system>

View file

@ -977,4 +977,64 @@
</R>
<output>/ECAM/warnings/logic/eng/eng-2-thr-lvr-abv-idle</output>
</flipflop>
<!-- falling edge detector, take inverse -->
<flipflop>
<type>monostable</type>
<inverted type="bool">true</inverted>
<time>
<value>1.0</value>
</time>
<S>
<property>/ECAM/warnings/logic/stall/phase-4</property>
</S>
<output>/ECAM/warnings/logic/stall/phase-4-output</output>
</flipflop>
<flipflop>
<type>monostable</type>
<inverted type="bool">true</inverted>
<time>
<value>1.0</value>
</time>
<S>
<property>/ECAM/warnings/logic/stall/phase-5</property>
</S>
<output>/ECAM/warnings/logic/stall/phase-5-output</output>
</flipflop>
<flipflop>
<type>monostable</type>
<inverted type="bool">true</inverted>
<time>
<value>1.0</value>
</time>
<S>
<property>/ECAM/warnings/logic/stall/phase-8</property>
</S>
<output>/ECAM/warnings/logic/stall/phase-8-output</output>
</flipflop>
<flipflop>
<type>RS</type>
<S>
<property>/ECAM/warnings/logic/stall/phase-flipflop-set</property>
</S>
<R>
<property>/ECAM/warnings/logic/stall/phase-flipflop-reset</property>
</R>
<output>/ECAM/warnings/logic/stall/phase-flipflop</output>
</flipflop>
<flipflop>
<type>SR</type>
<S>
<property>/ECAM/warnings/config/park-brk/park-brk-set</property>
</S>
<R>
<property>/ECAM/warnings/config/park-brk/park-brk-reset</property>
</R>
<output>/ECAM/warnings/config/park-brk/park-brk-output</output>
</flipflop>
</PropertyList>