Add ECAM messages for Takeoff Securing Function
This commit is contained in:
parent
772d920c30
commit
0b05a15bc6
2 changed files with 41 additions and 0 deletions
|
@ -19,6 +19,7 @@ var engOpt = props.globals.getNode("/options/eng", 1);
|
|||
var thrustState = [nil, nil];
|
||||
|
||||
# local variables
|
||||
var takeoffConfig = 0;
|
||||
var transmitFlag1 = 0;
|
||||
var transmitFlag2 = 0;
|
||||
var phaseVar3 = nil;
|
||||
|
@ -2325,6 +2326,40 @@ var messages_priority_2 = func {
|
|||
ECAM_controller.warningReset(fctlSpdBrkStillOut);
|
||||
}
|
||||
|
||||
if (fctlPitchTrimDisag.clearFlag == 0 and takeoffConfig and fmgc.FMGCInternal.toFlapThsSet and abs(-getprop("/fdm/jsbsim/hydraulics/elevator-trim/final-deg") - fmgc.FMGCInternal.toThs) >= 1.3) {
|
||||
fctlPitchTrimDisag.active = 1;
|
||||
fctlPitchTrimDisag2.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(fctlPitchTrimDisag);
|
||||
ECAM_controller.warningReset(fctlPitchTrimDisag2);
|
||||
}
|
||||
|
||||
if (fctlFlapsDisag.clearFlag == 0 and takeoffConfig and fmgc.FMGCInternal.toFlapThsSet and (fmgc.FMGCInternal.toFlap + 1 != pts.Controls.Flight.flapsPos.getValue())) {
|
||||
fctlFlapsDisag.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(fctlFlapsDisag);
|
||||
}
|
||||
|
||||
if (toSpdsDisag.clearFlag == 0 and takeoffConfig and fmgc.FMGCInternal.v1set and fmgc.FMGCInternal.vrset and fmgc.FMGCInternal.v2set and !(fmgc.FMGCInternal.v1 <= fmgc.FMGCInternal.vr and fmgc.FMGCInternal.vr <= fmgc.FMGCInternal.v2)) {
|
||||
toSpdsDisag.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(toSpdsDisag);
|
||||
}
|
||||
|
||||
if (toSpdsTooLow.clearFlag == 0 and takeoffConfig and
|
||||
fmgc.FMGCInternal.toFlapThsSet and fmgc.FMGCInternal.zfwSet and fmgc.FMGCInternal.blockSet and fmgc.FMGCInternal.v1set and fmgc.FMGCInternal.vrset and fmgc.FMGCInternal.v2set
|
||||
and (fmgc.FMGCInternal.v1 < mcdu.VMCG.getValue() or fmgc.FMGCInternal.vr < (mcdu.VMCA.getValue() * 1.05) or fmgc.FMGCInternal.v2 < (mcdu.VMCA.getValue() * 1.10) or fmgc.FMGCInternal.v2 < (1.13 * mcdu.chooseVS1G()))) {
|
||||
toSpdsTooLow.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(toSpdsTooLow);
|
||||
}
|
||||
|
||||
if (toSpdsNotInserted.clearFlag == 0 and takeoffConfig and (!fmgc.FMGCInternal.v1set or !fmgc.FMGCInternal.vrset or !fmgc.FMGCInternal.v2set)) {
|
||||
toSpdsNotInserted.active = 1;
|
||||
} else {
|
||||
ECAM_controller.warningReset(toSpdsNotInserted);
|
||||
}
|
||||
|
||||
gearPosition = pts.Gear.position[1].getValue();
|
||||
if (directLaw.clearFlag == 0 and warningNodes.Timers.directLaw.getValue() == 1 and phaseVar2 != 4 and phaseVar2 != 5 and phaseVar2 != 7 and phaseVar2 != 8) {
|
||||
directLaw.active = 1;
|
||||
|
|
|
@ -494,6 +494,12 @@ var warnings = std.Vector.new([
|
|||
|
||||
# F/CTL SPD BRK STILL OUT
|
||||
var fctlSpdBrkStillOut = warning.new(msg: "F/CTL SPD BRK STILL OUT ", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var fctlPitchTrimDisag = warning.new(msg: "F/CTL", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var fctlPitchTrimDisag2 = warning.new(msg: "PITCH TRIM/MCDU/CG DISAGREE", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var fctlFlapsDisag = warning.new(msg: "F/CTL FLAPS/MCDU DISAGREE", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var toSpdsDisag = warning.new(msg: "T.O V1/VR/V2 DISAGREE ", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var toSpdsTooLow = warning.new(msg: "T.O SPEEDS TOO LOW ", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
var toSpdsNotInserted = warning.new(msg: "T.O SPEEDS NOT INSERTED ", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
|
||||
# DIRECT LAW
|
||||
var directLaw = warning.new(msg: "F/CTL DIRECT LAW", colour: "a", aural: 1, light: 1, isMainMsg: 1),
|
||||
|
|
Loading…
Reference in a new issue