1
0
Fork 0

ECAM: fixes for hydraulic faults; ensure that the faults only happen on the ground wtih engine running

This commit is contained in:
legoboyvdlp R 2021-01-31 20:18:19 +00:00
parent 177679ff7a
commit a7128554c8
3 changed files with 74 additions and 13 deletions

View file

@ -63,7 +63,7 @@ var messages_priority_3 = func {
ECAM_controller.warningReset(flap_not_zero);
}
if ((phaseVar3 == 1 or (phaseVar3 >= 5 and phaseVar3 <= 7)) and getprop("/systems/navigation/adr/output/overspeed")) {
if (overspeed.clearFlag == 0 and (phaseVar3 == 1 or (phaseVar3 >= 5 and phaseVar3 <= 7)) and getprop("/systems/navigation/adr/output/overspeed")) {
overspeed.active = 1;
if (getprop("/systems/navigation/adr/computation/overspeed-vmo") or getprop("/systems/navigation/adr/computation/overspeed-mmo")) {
overspeedVMO.active = 1;
@ -967,7 +967,7 @@ var messages_priority_3 = func {
ECAM_controller.warningReset(emerconfigFMSPRD);
}
if (hydBYloPr.clearFlag == 0 and phaseVar3 != 4 and phaseVar3 != 5 and warningNodes.Logic.blueYellow.getValue()) {
if (hydBYloPr.clearFlag == 0 and warningNodes.Logic.blueYellow.getValue()) {
hydBYloPr.active = 1;
if (hydBYloPrRat.clearFlag == 0 and systems.HYD.Rat.position.getValue() != 0) {
hydBYloPrRat.active = 1;
@ -1042,7 +1042,7 @@ var messages_priority_3 = func {
ECAM_controller.warningReset(hydBYloPrFmsPredict);
}
if (hydGBloPr.clearFlag == 0 and phaseVar3 != 4 and phaseVar3 != 5 and warningNodes.Logic.blueGreen.getValue()) {
if (hydGBloPr.clearFlag == 0 and warningNodes.Logic.blueGreen.getValue()) {
hydGBloPr.active = 1;
if (hydGBloPrRat.clearFlag == 0 and systems.HYD.Rat.position.getValue() != 0) {
hydGBloPrRat.active = 1;

View file

@ -252,6 +252,10 @@ var warnings = std.Vector.new([
var hydGYloPrFuelCnsmpt = warning.new(msg: " FUEL CONSUMPT INCRSD", colour: "c"),
var hydGYloPrFmsPredict = warning.new(msg: " FMS PRED UNRELIABLE", colour: "c"),
# AIR BLEED LEAK
var airBleedLeak = warning.new(msg: "AIR BLEED LEAK ", colour: "r", aural: 0, light: 0, isMainMsg: 1),
var airBleedLeakShut = warning.new(msg: " -X BLEED..........SHUT", colour: "c"),
# DC EMER CONFIG
var dcEmerconfig = warning.new(msg: "ELEC DC EMER CONFIG", colour: "a", aural: 1, light: 1, isMainMsg: 1),
var dcEmerconfigManOn = warning.new(msg: " -EMER ELEC PWR...MAN ON", colour: "c"),

View file

@ -2759,6 +2759,21 @@
<switch name="/ECAM/warnings/hyd/blue-green-failure">
<default value="0"/>
<test logic="AND" value="1">
<test logic="OR">
<test logic="AND"> <!-- inhibit unless engine running -->
<test logic="OR">
/ECAM/warning-phase le 2
/ECAM/warning-phase ge 9
</test>
/engines/engine[0]/state eq 3
</test>
<test logic="AND">
/ECAM/warning-phase gt 2
/ECAM/warning-phase lt 9
/ECAM/warning-phase ne 4
/ECAM/warning-phase ne 5
</test>
</test>
/ECAM/warnings/hyd/blue-abnorm-lo-pr eq 1
/ECAM/warnings/hyd/green-abnorm-lo-pr eq 1
</test>
@ -2767,6 +2782,21 @@
<switch name="/ECAM/warnings/hyd/blue-yellow-failure">
<default value="0"/>
<test logic="AND" value="1">
<test logic="OR">
<test logic="AND"> <!-- inhibit unless engine running -->
<test logic="OR">
/ECAM/warning-phase le 2
/ECAM/warning-phase ge 9
</test>
/engines/engine[1]/state eq 3
</test>
<test logic="AND">
/ECAM/warning-phase gt 2
/ECAM/warning-phase lt 9
/ECAM/warning-phase ne 4
/ECAM/warning-phase ne 5
</test>
</test>
/ECAM/warnings/hyd/blue-abnorm-lo-pr eq 1
/ECAM/warnings/hyd/yellow-abnorm-lo-pr eq 1
</test>
@ -2798,16 +2828,21 @@
/engines/engine[0]/state eq 3
/engines/engine[1]/state eq 3
<test logic="OR">
fcs/flap-pos-deg ne 0
hydraulics/spoiler-l1/final-deg gt 0
hydraulics/spoiler-r1/final-deg gt 0
hydraulics/spoiler-l2/final-deg gt 0
hydraulics/spoiler-r2/final-deg gt 0
hydraulics/spoiler-l4/final-deg gt 0
hydraulics/spoiler-r4/final-deg gt 0
hydraulics/spoiler-l5/final-deg gt 0
hydraulics/spoiler-r5/final-deg gt 0
<!-- aileron servo -->
<test logic="AND">
/ECAM/warnings/logic/SFLAPEXT eq 1
/systems/electrical/bus/dc-ess lt 25
</test>
hydraulics/spoiler-l2/final-deg gt 0.01
hydraulics/spoiler-r2/final-deg gt 0.01
hydraulics/spoiler-l3/final-deg gt 0.01
hydraulics/spoiler-r3/final-deg gt 0.01
hydraulics/spoiler-l4/final-deg gt 0.01
hydraulics/spoiler-r4/final-deg gt 0.01
<test logic="OR">
/systems/fctl/elac1 eq 0
/systems/fctl/elac2 eq 0
/systems/hydraulic/green-psi lt 1500
</test>
</test>
</test>
</switch>
@ -2818,6 +2853,28 @@
/ECAM/timer/ground-calc eq 0
/engines/engine[0]/state eq 3
/engines/engine[1]/state eq 3
<test logic="OR">
<test logic="AND">
/ECAM/warnings/logic/SFLAPEXT eq 1
/systems/electrical/bus/dc-ess lt 25
</test>
hydraulics/spoiler-l1/final-deg gt 0.01
hydraulics/spoiler-r1/final-deg gt 0.01
hydraulics/spoiler-l2/final-deg gt 0.01
hydraulics/spoiler-r2/final-deg gt 0.01
hydraulics/spoiler-l4/final-deg gt 0.01
hydraulics/spoiler-r4/final-deg gt 0.01
hydraulics/spoiler-l5/final-deg gt 0.01
hydraulics/spoiler-r5/final-deg gt 0.01
<test logic="AND">
<test logic="OR">
/systems/fctl/elac1 eq 0
/systems/fctl/elac2 eq 0
/systems/hydraulic/blue-psi lt 1500
</test>
/ECAM/warnings/logic/BLUE-EMER-ELEC ne 1
</test>
</test>
</test>
</switch>