1
0
Fork 0

Add ECAM messages for packs; pack1 / 2 ovht implemented

This commit is contained in:
legoboyvdlp R 2020-05-28 16:21:54 +01:00
parent 158b1c4eb8
commit 84883220d6
6 changed files with 182 additions and 1 deletions

View file

@ -73,6 +73,8 @@ var warningNodes = {
Flipflops: {
bleed1LowTemp: props.globals.initNode("/ECAM/warnings/logic/bleed-1-low-temp-flipflop-output"),
bleed2LowTemp: props.globals.initNode("/ECAM/warnings/logic/bleed-2-low-temp-flipflop-output"),
pack1Ovht: props.globals.initNode("/ECAM/warnings/flipflop/pack-1-ovht"),
pack2Ovht: props.globals.initNode("/ECAM/warnings/flipflop/pack-2-ovht"),
},
};

View file

@ -1571,6 +1571,44 @@ var messages_priority_2 = func {
ECAM_controller.warningReset(bleedMon2Fault);
}
# PACK
if (pack1Ovht.clearFlag == 0 and (phaseVar <= 2 or phaseVar >= 9 or phaseVar == 6) and warningNodes.Flipflops.pack1Ovht.getValue()) {
pack1Ovht.active = 1;
if (systems.PNEU.Switch.pack1.getBoolValue()) {
pack1OvhtOff.active = 1;
} else {
ECAM_controller.warningReset(pack1OvhtOff);
}
pack1OvhtOut.active = 1;
pack1OvhtPack.active = 1;
} else {
ECAM_controller.warningReset(pack1Ovht);
ECAM_controller.warningReset(pack1OvhtOff);
ECAM_controller.warningReset(pack1OvhtOut);
ECAM_controller.warningReset(pack1OvhtPack);
}
if (pack2Ovht.clearFlag == 0 and (phaseVar <= 2 or phaseVar >= 9 or phaseVar == 6) and warningNodes.Flipflops.pack2Ovht.getValue()) {
pack2Ovht.active = 1;
if (systems.PNEU.Switch.pack2.getBoolValue()) {
pack2OvhtOff.active = 1;
} else {
ECAM_controller.warningReset(pack2OvhtOff);
}
pack2OvhtOut.active = 1;
pack2OvhtPack.active = 1;
} else {
ECAM_controller.warningReset(pack2Ovht);
ECAM_controller.warningReset(pack2OvhtOff);
ECAM_controller.warningReset(pack2OvhtOut);
ECAM_controller.warningReset(pack2OvhtPack);
}
# ENG AICE
if (eng1IceClosed.clearFlag == 0 and (phaseVar <= 2 or phaseVar >= 9 or phaseVar == 6) and warningNodes.Timers.eng1AiceNotOpen.getValue() == 1) {
eng1IceClosed.active = 1;

View file

@ -296,6 +296,37 @@ var warnings = std.Vector.new([
var bleedMon1Fault = warning.new(msg: "BLEED MONIT SYS 1 FAULT", colour: "a", aural: 0, light: 0),
var bleedMon2Fault = warning.new(msg: "BLEED MONIT SYS 2 FAULT", colour: "a", aural: 0, light: 0),
# PACK
var pack12Fault = warning.new(msg: "AIR PACK 1+2 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
var pack12FaultPackOff1 = warning.new(msg: " -PACK 1.............OFF", colour: "c"),
var pack12FaultPackOff2 = warning.new(msg: " -PACK 2.............OFF", colour: "c"),
var pack12FaultDescend = warning.new(msg: " -DESCENT TO FL 100/MEA ", colour: "c"),
var pack12FaultDiffPr = warning.new(msg: " •WHEN DIFF PR <1 PSI", colour: "w"),
var pack12FaultDiffPr2 = warning.new(msg: " AND FL BELOW 100 :", colour: "w"),
var pack12FaultRam = warning.new(msg: " -RAM AIR...........OPEN", colour: "c"),
var pack12FaultMax = warning.new(msg: " MAX FL..........100/MEA", colour: "c"),
var pack12FaultOvht = warning.new(msg: " •WHEN PACK OVHT OUT:", colour: "w"),
var pack12FaultPackOn1 = warning.new(msg: " -PACK 1..............ON", colour: "c"),
var pack12FaultPackOn2 = warning.new(msg: " -PACK 2..............ON", colour: "c"),
var pack1Ovht = warning.new(msg: "AIR PACK 1 OVHT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
var pack1OvhtOff = warning.new(msg: " -PACK 1.............OFF", colour: "c"),
var pack1OvhtOut = warning.new(msg: " •WHEN PACK OVHT OUT:", colour: "w"),
var pack1OvhtPack = warning.new(msg: " -PACK 1..............ON", colour: "c"),
var pack2Ovht = warning.new(msg: "AIR PACK 2 OVHT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
var pack2OvhtOff = warning.new(msg: " -PACK 2.............OFF", colour: "c"),
var pack2OvhtOut = warning.new(msg: " •WHEN PACK OVHT OUT:", colour: "w"),
var pack2OvhtPack = warning.new(msg: " -PACK 2..............ON", colour: "c"),
var pack1Fault = warning.new(msg: "AIR PACK 1 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
var pack1FaultOff = warning.new(msg: " -PACK 1.............OFF", colour: "c"),
var pack2Fault = warning.new(msg: "AIR PACK 2 FAULT", colour: "a", aural: 1, light: 1, isMainMsg: 1),
var pack2FaultOff = warning.new(msg: " -PACK 2.............OFF", colour: "c"),
var pack1Off = warning.new(msg: "AIR PACK 1 OFF", colour: "a", aural: 1, light: 1),
var pack2Off = warning.new(msg: "AIR PACK 2 OFF", colour: "a", aural: 1, light: 1),
var pack1RegulFlt = warning.new(msg: "AIR PACK 1 REGUL FAULT", colour: "a", aural: 0, light: 0),
var pack2RegulFlt = warning.new(msg: "AIR PACK 2 REGUL FAULT", colour: "a", aural: 0, light: 0),
var aftCrgVentFlt = warning.new(msg: "AIR AFT CRG VENT FAULT", colour: "a", aural: 0, light: 0),
var fwdCrgVentFlt = warning.new(msg: "AIR FWD CRG VENT FAULT", colour: "a", aural: 0, light: 0),
# Eng AICE
var eng1IceClosed = warning.new(msg: "ANTI ICE ENG1 VALVE CLSD", colour: "a", aural: 1, light: 1, isMainMsg: 1),
var eng1IceClosedIcing = warning.new(msg: " AVOID ICING CONDITIONS", colour: "c"),

View file

@ -331,4 +331,24 @@
</channel>
<channel name="Warnings">
<switch name="/systems/air-conditioning/warnings/pack-1-ovht">
<default value="0"/>
<test logic="AND" value="1">
/systems/air-conditioning/packs/pack-1-outlet-temp ge 260
<!-- not pack 1 + 2 fault -->
</test>
</switch>
<switch name="/systems/air-conditioning/warnings/pack-2-ovht">
<default value="0"/>
<test logic="AND" value="1">
/systems/air-conditioning/packs/pack-2-outlet-temp ge 260
<!-- not pack 1 + 2 fault -->
</test>
</switch>
</channel>
</system>

View file

@ -828,6 +828,42 @@
/systems/pneumatics/psi/engine-2-psi gt 49
</test>
</switch>
<switch name="/ECAM/warnings/logic/phase-10-pulse-input">
<default value="0"/>
<test value="1">
/ECAM/warning-phase eq 10
</test>
</switch>
<switch name="/ECAM/warnings/logic/pack-1-ovht-reset">
<default value="0"/>
<test logic="OR" value="1">
<test logic="AND">
/ECAM/warnings/logic/phase-10-pulse-input eq 1
/ECAM/warnings/logic/phase-10-pulse eq 1
</test>
<test logic="AND">
/ECAM/warnings/logic/pack-1-pulse eq 1
/controls/pneumatics/switches/pack-1 eq 1
</test>
</test>
</switch>
<switch name="/ECAM/warnings/logic/pack-2-ovht-reset">
<default value="0"/>
<test logic="OR" value="1">
<test logic="AND">
/ECAM/warnings/logic/phase-10-pulse-input eq 1
/ECAM/warnings/logic/phase-10-pulse eq 1
</test>
<test logic="AND">
/ECAM/warnings/logic/pack-2-pulse eq 1
/controls/pneumatics/switches/pack-2 eq 1
</test>
</test>
</switch>
</channel>
</system>

View file

@ -546,7 +546,6 @@
<output>/ECAM/warnings/timer/phase-1-pulse</output>
</flipflop>
<flipflop>
<type>monostable</type>
<time>
@ -558,6 +557,39 @@
<output>/ECAM/warnings/logic/wai-phase-9-pulse</output>
</flipflop>
<flipflop>
<type>monostable</type>
<time>
<value>1.0</value>
</time>
<S>
<not><property>/ECAM/warnings/logic/phase-10-pulse-input</property></not>
</S>
<output>/ECAM/warnings/logic/phase-10-pulse</output>
</flipflop>
<flipflop>
<type>monostable</type>
<time>
<value>1.0</value>
</time>
<S>
<not><property>/controls/pneumatics/switches/pack-1</property></not>
</S>
<output>/ECAM/warnings/logic/pack-1-pulse</output>
</flipflop>
<flipflop>
<type>monostable</type>
<time>
<value>1.0</value>
</time>
<S>
<not><property>/controls/pneumatics/switches/pack-2</property></not>
</S>
<output>/ECAM/warnings/logic/pack-2-pulse</output>
</flipflop>
<!-- Bleed Low Temp -->
<flipflop>
<type>RS</type>
@ -686,4 +718,26 @@
<output>/ECAM/warnings/logic/wing-anti-ice-gnd-fault-flipflop</output>
</flipflop>
<flipflop>
<type>RS</type>
<S>
<property>/systems/air-conditioning/warnings/pack-1-ovht</property>
</S>
<R>
<property>/ECAM/warnings/logic/pack-1-ovht-reset</property>
</R>
<output>/ECAM/warnings/flipflop/pack-1-ovht</output>
</flipflop>
<flipflop>
<type>RS</type>
<S>
<property>/systems/air-conditioning/warnings/pack-2-ovht</property>
</S>
<R>
<property>/ECAM/warnings/logic/pack-2-ovht-reset</property>
</R>
<output>/ECAM/warnings/flipflop/pack-2-ovht</output>
</flipflop>
</PropertyList>