A32X: Add new CFM Upper ECAM Canvas
This commit is contained in:
parent
3a71c4223c
commit
e82428f335
8 changed files with 1612 additions and 381 deletions
|
@ -295,75 +295,9 @@
|
||||||
|
|
||||||
<!-- Engine Indications and Crew Alerting System (Upper ECAM) -->
|
<!-- Engine Indications and Crew Alerting System (Upper ECAM) -->
|
||||||
|
|
||||||
<model>
|
|
||||||
<name>UECAM</name>
|
|
||||||
<path>Aircraft/A320Family/Models/Instruments/Upper-ECAM-EIS1/Upper-ECAM-CFM.xml</path>
|
|
||||||
<offsets>
|
|
||||||
<x-m>-0.5807</x-m>
|
|
||||||
<y-m>0</y-m>
|
|
||||||
<z-m>-0.0442</z-m>
|
|
||||||
<pitch-deg>-15</pitch-deg>
|
|
||||||
</offsets>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<not><property>options/EIS2</property></not>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>CFM</value>
|
|
||||||
</equals>
|
|
||||||
<or>
|
|
||||||
<greater-than-equals>
|
|
||||||
<property>systems/electrical/bus/ac1</property>
|
|
||||||
<value>110</value>
|
|
||||||
</greater-than-equals>
|
|
||||||
<greater-than-equals>
|
|
||||||
<property>systems/electrical/bus/ac2</property>
|
|
||||||
<value>110</value>
|
|
||||||
</greater-than-equals>
|
|
||||||
</or>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</model>
|
|
||||||
|
|
||||||
<model>
|
|
||||||
<name>UECAM</name>
|
|
||||||
<path>Aircraft/A320Family/Models/Instruments/Upper-ECAM-EIS2/Upper-ECAM-CFM.xml</path>
|
|
||||||
<offsets>
|
|
||||||
<x-m>-0.5807</x-m>
|
|
||||||
<y-m>0</y-m>
|
|
||||||
<z-m>-0.0442</z-m>
|
|
||||||
<pitch-deg>-15</pitch-deg>
|
|
||||||
</offsets>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<property>options/EIS2</property>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>CFM</value>
|
|
||||||
</equals>
|
|
||||||
<or>
|
|
||||||
<greater-than-equals>
|
|
||||||
<property>systems/electrical/bus/ac1</property>
|
|
||||||
<value>110</value>
|
|
||||||
</greater-than-equals>
|
|
||||||
<greater-than-equals>
|
|
||||||
<property>systems/electrical/bus/ac2</property>
|
|
||||||
<value>110</value>
|
|
||||||
</greater-than-equals>
|
|
||||||
</or>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</model>
|
|
||||||
|
|
||||||
<model>
|
<model>
|
||||||
<name>UECAM</name>
|
<name>UECAM</name>
|
||||||
<path>Aircraft/A320Family/Models/Instruments/Upper-ECAM/Upper-ECAM.xml</path>
|
<path>Aircraft/A320Family/Models/Instruments/Upper-ECAM/Upper-ECAM.xml</path>
|
||||||
<condition>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>IAE</value>
|
|
||||||
</equals>
|
|
||||||
</condition>
|
|
||||||
<offsets>
|
<offsets>
|
||||||
<x-m>-0.5807</x-m>
|
<x-m>-0.5807</x-m>
|
||||||
<y-m>0</y-m>
|
<y-m>0</y-m>
|
||||||
|
|
Binary file not shown.
|
@ -5,6 +5,7 @@
|
||||||
# Copyright (c) A3XX Development Team #
|
# Copyright (c) A3XX Development Team #
|
||||||
#######################################
|
#######################################
|
||||||
|
|
||||||
|
var upperECAM_cfm_eis2 = nil;
|
||||||
var upperECAM_iae_eis2 = nil;
|
var upperECAM_iae_eis2 = nil;
|
||||||
var upperECAM_display = nil;
|
var upperECAM_display = nil;
|
||||||
setprop("/engines/engine[0]/epr-actual", 1);
|
setprop("/engines/engine[0]/epr-actual", 1);
|
||||||
|
@ -48,15 +49,65 @@ var canvas_upperECAM_base = {
|
||||||
},
|
},
|
||||||
update: func() {
|
update: func() {
|
||||||
if (getprop("/systems/electrical/bus/ac1") >= 110 or getprop("/systems/electrical/bus/ac2") >= 110) {
|
if (getprop("/systems/electrical/bus/ac1") >= 110 or getprop("/systems/electrical/bus/ac2") >= 110) {
|
||||||
# Choose between CFM, IAE, and EIS versions
|
if (getprop("/options/eng") == "CFM") {
|
||||||
|
upperECAM_cfm_eis2.page.show();
|
||||||
|
upperECAM_iae_eis2.page.hide();
|
||||||
|
} else if (getprop("/options/eng") == "IAE") {
|
||||||
|
upperECAM_cfm_eis2.page.hide();
|
||||||
upperECAM_iae_eis2.page.show();
|
upperECAM_iae_eis2.page.show();
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
|
upperECAM_cfm_eis2.page.hide();
|
||||||
upperECAM_iae_eis2.page.hide();
|
upperECAM_iae_eis2.page.hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
settimer(func me.update(), 0.02);
|
settimer(func me.update(), 0.02);
|
||||||
},
|
},
|
||||||
updateBase: func() {
|
updateBase: func() {
|
||||||
|
# Reversers
|
||||||
|
if (getprop("/engines/engine[0]/reverser-pos-norm") >= 0.01 and getprop("/systems/fadec/eng1/n1") == 1 and getprop("/options/eng") == "CFM") {
|
||||||
|
me["REV1"].show();
|
||||||
|
me["REV1-box"].show();
|
||||||
|
} else if (getprop("/engines/engine[0]/reverser-pos-norm") >= 0.01 and getprop("/systems/fadec/eng1/epr") == 1 and getprop("/options/eng") == "IAE") {
|
||||||
|
me["REV1"].show();
|
||||||
|
me["REV1-box"].show();
|
||||||
|
} else {
|
||||||
|
me["REV1"].hide();
|
||||||
|
me["REV1-box"].hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/engines/engine[0]/reverser-pos-norm") >= 0.95) {
|
||||||
|
me["REV1"].setColor(0,1,0);
|
||||||
|
} else {
|
||||||
|
me["REV1"].setColor(1,1,0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/engines/engine[1]/reverser-pos-norm") >= 0.01 and getprop("/systems/fadec/eng2/n1") == 1 and getprop("/options/eng") == "CFM") {
|
||||||
|
me["REV2"].show();
|
||||||
|
me["REV2-box"].show();
|
||||||
|
} else if (getprop("/engines/engine[1]/reverser-pos-norm") >= 0.01 and getprop("/systems/fadec/eng2/epr") == 1 and getprop("/options/eng") == "IAE") {
|
||||||
|
me["REV2"].show();
|
||||||
|
me["REV2-box"].show();
|
||||||
|
} else {
|
||||||
|
me["REV2"].hide();
|
||||||
|
me["REV2-box"].hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/engines/engine[1]/reverser-pos-norm") >= 0.95) {
|
||||||
|
me["REV2"].setColor(0,1,0);
|
||||||
|
} else {
|
||||||
|
me["REV2"].setColor(1,1,0);
|
||||||
|
}
|
||||||
|
|
||||||
|
# Flap Indicator
|
||||||
|
me["FlapTxt"].setText(sprintf("%s", getprop("/controls/flight/flap-txt")));
|
||||||
|
|
||||||
|
if (getprop("/controls/flight/flap-pos") > 0) {
|
||||||
|
me["FlapDots"].show();
|
||||||
|
} else {
|
||||||
|
me["FlapDots"].hide();
|
||||||
|
}
|
||||||
|
|
||||||
# FOB
|
# FOB
|
||||||
me["FOB-LBS"].setText(sprintf("%7.0f", getprop("/consumables/fuel/total-fuel-lbs")));
|
me["FOB-LBS"].setText(sprintf("%7.0f", getprop("/consumables/fuel/total-fuel-lbs")));
|
||||||
|
|
||||||
|
@ -188,6 +239,223 @@ var canvas_upperECAM_base = {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var canvas_upperECAM_cfm_eis2 = {
|
||||||
|
new: func(canvas_group, file) {
|
||||||
|
var m = { parents: [canvas_upperECAM_cfm_eis2 , canvas_upperECAM_base] };
|
||||||
|
m.init(canvas_group, file);
|
||||||
|
|
||||||
|
return m;
|
||||||
|
},
|
||||||
|
getKeys: func() {
|
||||||
|
return ["N11-needle","N11-thr","N11-ylim","N11","N11-decpnt","N11-decimal","N11-box","N11-scale","N11-scale2","N11-scalenum","N11-XX","N11-XX2","N11-XX-box","EGT1-needle","EGT1","EGT1-scale","EGT1-box","EGT1-scale2","EGT1-scaletick","EGT1-XX","N21",
|
||||||
|
"N21-decpnt","N21-decimal","N21-XX","FF1","FF1-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal","N12-box","N12-scale","N12-scale2","N12-scalenum","N12-XX","N12-XX2","N12-XX-box","EGT2-needle","EGT2","EGT2-scale","EGT2-box",
|
||||||
|
"EGT2-scale2","EGT2-scaletick","EGT2-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX",
|
||||||
|
"FOB-LBS","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","FlapTxt","FlapDots","N1Lim-mode","N1Lim","N1Lim-decpnt","N1Lim-decimal","N1Lim-XX","N1Lim-XX2","REV1","REV1-box","REV2","REV2-box"];
|
||||||
|
},
|
||||||
|
update: func() {
|
||||||
|
# N1
|
||||||
|
me["N11"].setText(sprintf("%s", math.floor(getprop("/engines/engine[0]/n1") + 0.05)));
|
||||||
|
me["N11-decimal"].setText(sprintf("%s", int(10*math.mod(getprop("/engines/engine[0]/n1") + 0.05,1))));
|
||||||
|
|
||||||
|
me["N12"].setText(sprintf("%s", math.floor(getprop("/engines/engine[1]/n1") + 0.05)));
|
||||||
|
me["N12-decimal"].setText(sprintf("%s", int(10*math.mod(getprop("/engines/engine[1]/n1") + 0.05,1))));
|
||||||
|
|
||||||
|
me["N11-needle"].setRotation((getprop("/ECAM/Upper/N1[0]") + 90)*D2R);
|
||||||
|
me["N11-thr"].setRotation((getprop("/ECAM/Upper/N1thr[0]") + 90)*D2R);
|
||||||
|
me["N11-ylim"].setRotation((getprop("/ECAM/Upper/N1ylim") + 90)*D2R);
|
||||||
|
|
||||||
|
me["N12-needle"].setRotation((getprop("/ECAM/Upper/N1[1]") + 90)*D2R);
|
||||||
|
me["N12-thr"].setRotation((getprop("/ECAM/Upper/N1thr[1]") + 90)*D2R);
|
||||||
|
me["N12-ylim"].setRotation((getprop("/ECAM/Upper/N1ylim") + 90)*D2R);
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng1/n1") == 1) {
|
||||||
|
me["N11-scale"].setColor(1,1,1);
|
||||||
|
me["N11-scale2"].setColor(1,0,0);
|
||||||
|
me["N11"].show();
|
||||||
|
me["N11-decimal"].show();
|
||||||
|
me["N11-decpnt"].show();
|
||||||
|
me["N11-needle"].show();
|
||||||
|
me["N11-ylim"].show();
|
||||||
|
me["N11-scalenum"].show();
|
||||||
|
me["N11-box"].show();
|
||||||
|
me["N11-XX"].hide();
|
||||||
|
me["N11-XX2"].hide();
|
||||||
|
me["N11-XX-box"].hide();
|
||||||
|
} else {
|
||||||
|
me["N11-scale"].setColor(1,0.6,0);
|
||||||
|
me["N11-scale2"].setColor(1,0.6,0);
|
||||||
|
me["N11"].hide();
|
||||||
|
me["N11-decimal"].hide();
|
||||||
|
me["N11-decpnt"].hide();
|
||||||
|
me["N11-needle"].hide();
|
||||||
|
me["N11-ylim"].hide();
|
||||||
|
me["N11-scalenum"].hide();
|
||||||
|
me["N11-box"].hide();
|
||||||
|
me["N11-XX"].show();
|
||||||
|
me["N11-XX2"].show();
|
||||||
|
me["N11-XX-box"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/engines/engine[0]/reverser-pos-norm") < 0.01 and getprop("/systems/fadec/eng1/n1") == 1) {
|
||||||
|
me["N11-thr"].show();
|
||||||
|
} else {
|
||||||
|
me["N11-thr"].hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng2/n1") == 1) {
|
||||||
|
me["N12-scale"].setColor(1,1,1);
|
||||||
|
me["N12-scale2"].setColor(1,0,0);
|
||||||
|
me["N12"].show();
|
||||||
|
me["N12-decimal"].show();
|
||||||
|
me["N12-decpnt"].show();
|
||||||
|
me["N12-needle"].show();
|
||||||
|
me["N12-ylim"].show();
|
||||||
|
me["N12-scalenum"].show();
|
||||||
|
me["N12-box"].show();
|
||||||
|
me["N12-XX"].hide();
|
||||||
|
me["N12-XX2"].hide();
|
||||||
|
me["N12-XX-box"].hide();
|
||||||
|
} else {
|
||||||
|
me["N12-scale"].setColor(1,0.6,0);
|
||||||
|
me["N12-scale2"].setColor(1,0.6,0);
|
||||||
|
me["N12"].hide();
|
||||||
|
me["N12-decimal"].hide();
|
||||||
|
me["N12-decpnt"].hide();
|
||||||
|
me["N12-needle"].hide();
|
||||||
|
me["N12-ylim"].hide();
|
||||||
|
me["N12-scalenum"].hide();
|
||||||
|
me["N12-box"].hide();
|
||||||
|
me["N12-XX"].show();
|
||||||
|
me["N12-XX2"].show();
|
||||||
|
me["N12-XX-box"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/engines/engine[1]/reverser-pos-norm") < 0.01 and getprop("/systems/fadec/eng2/n1") == 1) {
|
||||||
|
me["N12-thr"].show();
|
||||||
|
} else {
|
||||||
|
me["N12-thr"].hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
# EGT
|
||||||
|
me["EGT1"].setText(sprintf("%s", math.round(getprop("/engines/engine[0]/egt-actual"))));
|
||||||
|
me["EGT2"].setText(sprintf("%s", math.round(getprop("/engines/engine[1]/egt-actual"))));
|
||||||
|
|
||||||
|
me["EGT1-needle"].setRotation((getprop("/ECAM/Upper/EGT[0]") + 90)*D2R);
|
||||||
|
me["EGT2-needle"].setRotation((getprop("/ECAM/Upper/EGT[1]") + 90)*D2R);
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng1/egt") == 1) {
|
||||||
|
me["EGT1-scale"].setColor(1,1,1);
|
||||||
|
me["EGT1-scale2"].setColor(1,0,0);
|
||||||
|
me["EGT1"].show();
|
||||||
|
me["EGT1-needle"].show();
|
||||||
|
me["EGT1-scaletick"].show();
|
||||||
|
me["EGT1-box"].show();
|
||||||
|
me["EGT1-XX"].hide();
|
||||||
|
} else {
|
||||||
|
me["EGT1-scale"].setColor(1,0.6,0);
|
||||||
|
me["EGT1-scale2"].setColor(1,0.6,0);
|
||||||
|
me["EGT1"].hide();
|
||||||
|
me["EGT1-needle"].hide();
|
||||||
|
me["EGT1-scaletick"].hide();
|
||||||
|
me["EGT1-box"].hide();
|
||||||
|
me["EGT1-XX"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng2/egt") == 1) {
|
||||||
|
me["EGT2-scale"].setColor(1,1,1);
|
||||||
|
me["EGT2-scale2"].setColor(1,0,0);
|
||||||
|
me["EGT2"].show();
|
||||||
|
me["EGT2-needle"].show();
|
||||||
|
me["EGT2-scaletick"].show();
|
||||||
|
me["EGT2-box"].show();
|
||||||
|
me["EGT2-XX"].hide();
|
||||||
|
} else {
|
||||||
|
me["EGT2-scale"].setColor(1,0.6,0);
|
||||||
|
me["EGT2-scale2"].setColor(1,0.6,0);
|
||||||
|
me["EGT2"].hide();
|
||||||
|
me["EGT2-needle"].hide();
|
||||||
|
me["EGT2-scaletick"].hide();
|
||||||
|
me["EGT2-box"].hide();
|
||||||
|
me["EGT2-XX"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
# N2
|
||||||
|
me["N21"].setText(sprintf("%s", math.floor(getprop("/engines/engine[0]/n2") + 0.05)));
|
||||||
|
me["N21-decimal"].setText(sprintf("%s", int(10*math.mod(getprop("/engines/engine[0]/n2") + 0.05,1))));
|
||||||
|
me["N22"].setText(sprintf("%s", math.floor(getprop("/engines/engine[1]/n2") + 0.05)));
|
||||||
|
me["N22-decimal"].setText(sprintf("%s", int(10*math.mod(getprop("/engines/engine[1]/n2") + 0.05,1))));
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng1/n2") == 1) {
|
||||||
|
me["N21"].show();
|
||||||
|
me["N21-decimal"].show();
|
||||||
|
me["N21-decpnt"].show();
|
||||||
|
me["N21-XX"].hide();
|
||||||
|
} else {
|
||||||
|
me["N21"].hide();
|
||||||
|
me["N21-decimal"].hide();
|
||||||
|
me["N21-decpnt"].hide();
|
||||||
|
me["N21-XX"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng2/n2") == 1) {
|
||||||
|
me["N22"].show();
|
||||||
|
me["N22-decimal"].show();
|
||||||
|
me["N22-decpnt"].show();
|
||||||
|
me["N22-XX"].hide();
|
||||||
|
} else {
|
||||||
|
me["N22"].hide();
|
||||||
|
me["N22-decimal"].hide();
|
||||||
|
me["N22-decpnt"].hide();
|
||||||
|
me["N22-XX"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
# FF
|
||||||
|
me["FF1"].setText(sprintf("%s", math.round(getprop("/engines/engine[0]/fuel-flow_actual"))));
|
||||||
|
me["FF2"].setText(sprintf("%s", math.round(getprop("/engines/engine[1]/fuel-flow_actual"))));
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng1/ff") == 1) {
|
||||||
|
me["FF1"].show();
|
||||||
|
me["FF1-XX"].hide();
|
||||||
|
} else {
|
||||||
|
me["FF1"].hide();
|
||||||
|
me["FF1-XX"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/eng2/ff") == 1) {
|
||||||
|
me["FF2"].show();
|
||||||
|
me["FF2-XX"].hide();
|
||||||
|
} else {
|
||||||
|
me["FF2"].hide();
|
||||||
|
me["FF2-XX"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
# N1 Limit
|
||||||
|
me["N1Lim-mode"].setText(sprintf("%s", getprop("/controls/engines/thrust-limit")));
|
||||||
|
me["N1Lim"].setText(sprintf("%s", math.floor(getprop("/controls/engines/n1-limit") + 0.05)));
|
||||||
|
me["N1Lim-decimal"].setText(sprintf("%s", int(10*math.mod(getprop("/controls/engines/n1-limit") + 0.05,1))));
|
||||||
|
|
||||||
|
if (getprop("/systems/fadec/powered1") == 1 or getprop("/systems/fadec/powered2") == 1) {
|
||||||
|
me["N1Lim-mode"].show();
|
||||||
|
me["N1Lim"].show();
|
||||||
|
me["N1Lim-decpnt"].show();
|
||||||
|
me["N1Lim-decimal"].show();
|
||||||
|
me["N1Lim-XX"].hide();
|
||||||
|
me["N1Lim-XX2"].hide();
|
||||||
|
} else {
|
||||||
|
me["N1Lim-mode"].hide();
|
||||||
|
me["N1Lim"].hide();
|
||||||
|
me["N1Lim-decpnt"].hide();
|
||||||
|
me["N1Lim-decimal"].hide();
|
||||||
|
me["N1Lim-XX"].show();
|
||||||
|
me["N1Lim-XX2"].show();
|
||||||
|
}
|
||||||
|
|
||||||
|
me.updateBase();
|
||||||
|
|
||||||
|
settimer(func me.update(), 0.02);
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
var canvas_upperECAM_iae_eis2 = {
|
var canvas_upperECAM_iae_eis2 = {
|
||||||
new: func(canvas_group, file) {
|
new: func(canvas_group, file) {
|
||||||
var m = { parents: [canvas_upperECAM_iae_eis2 , canvas_upperECAM_base] };
|
var m = { parents: [canvas_upperECAM_iae_eis2 , canvas_upperECAM_base] };
|
||||||
|
@ -197,40 +465,11 @@ var canvas_upperECAM_iae_eis2 = {
|
||||||
},
|
},
|
||||||
getKeys: func() {
|
getKeys: func() {
|
||||||
return ["EPR1-needle","EPR1-thr","EPR1-ylim","EPR1","EPR1-box","EPR1-scale","EPR1-scalenum","EPR1-XX","EPR1-XX2","EGT1-needle","EGT1","EGT1-scale","EGT1-box","EGT1-scale2","EGT1-scaletick","EGT1-XX","N11-needle","N11-thr","N11-ylim","N11","N11-decpnt",
|
return ["EPR1-needle","EPR1-thr","EPR1-ylim","EPR1","EPR1-box","EPR1-scale","EPR1-scalenum","EPR1-XX","EPR1-XX2","EGT1-needle","EGT1","EGT1-scale","EGT1-box","EGT1-scale2","EGT1-scaletick","EGT1-XX","N11-needle","N11-thr","N11-ylim","N11","N11-decpnt",
|
||||||
"N11-decimal","N11-scale","N11-scale2","N11-scalenum","N11-XX","EPR2-needle","EPR2-thr","EPR2-ylim","EPR2","EPR2-box","EPR2-scale","EPR2-scalenum","EPR2-XX","EPR2-XX2","EGT2-needle","EGT2","EGT2-scale","EGT2-box","EGT2-scale2","EGT2-scaletick","EGT2-XX",
|
"N11-decimal","N11-scale","N11-scale2","N11-scalenum","N11-XX","N21","N21-decpnt","N21-decimal","N21-XX","FF1","FF1-XX","EPR2-needle","EPR2-thr","EPR2-ylim","EPR2","EPR2-box","EPR2-scale","EPR2-scalenum","EPR2-XX","EPR2-XX2","EGT2-needle","EGT2",
|
||||||
"N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal","N12-scale","N12-scale2","N12-scalenum","N12-XX","N21","N21-decpnt","N21-decimal","N21-XX","FF1","FF1-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX",
|
"EGT2-scale","EGT2-box","EGT2-scale2","EGT2-scaletick","EGT2-XX","N12-needle","N12-thr","N12-ylim","N12","N12-decpnt","N12-decimal","N12-scale","N12-scale2","N12-scalenum","N12-XX","N22","N22-decpnt","N22-decimal","N22-XX","FF2","FF2-XX",
|
||||||
"FOB-LBS","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","FlapTxt","FlapDots","EPRLim-mode","EPRLim","EPRLim-XX","EPRLim-XX2","REV1","REV1-box","REV2","REV2-box"];
|
"FOB-LBS","ECAML1","ECAML2","ECAML3","ECAML4","ECAML5","ECAML6","ECAML7","ECAML8","FlapTxt","FlapDots","EPRLim-mode","EPRLim","EPRLim-XX","EPRLim-XX2","REV1","REV1-box","REV2","REV2-box"];
|
||||||
},
|
},
|
||||||
update: func() {
|
update: func() {
|
||||||
# Reversers
|
|
||||||
if (getprop("/engines/engine[0]/reverser-pos-norm") >= 0.01 and getprop("/systems/fadec/eng1/epr") == 1) {
|
|
||||||
me["REV1"].show();
|
|
||||||
me["REV1-box"].show();
|
|
||||||
} else {
|
|
||||||
me["REV1"].hide();
|
|
||||||
me["REV1-box"].hide();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getprop("/engines/engine[0]/reverser-pos-norm") >= 0.95) {
|
|
||||||
me["REV1"].setColor(0,1,0);
|
|
||||||
} else {
|
|
||||||
me["REV1"].setColor(1,1,0);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getprop("/engines/engine[1]/reverser-pos-norm") >= 0.01 and getprop("/systems/fadec/eng2/epr") == 1) {
|
|
||||||
me["REV2"].show();
|
|
||||||
me["REV2-box"].show();
|
|
||||||
} else {
|
|
||||||
me["REV2"].hide();
|
|
||||||
me["REV2-box"].hide();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getprop("/engines/engine[1]/reverser-pos-norm") >= 0.95) {
|
|
||||||
me["REV2"].setColor(0,1,0);
|
|
||||||
} else {
|
|
||||||
me["REV2"].setColor(1,1,0);
|
|
||||||
}
|
|
||||||
|
|
||||||
# EPR
|
# EPR
|
||||||
me["EPR1"].setText(sprintf("%1.3f", getprop("/engines/engine[0]/epr-actual")));
|
me["EPR1"].setText(sprintf("%1.3f", getprop("/engines/engine[0]/epr-actual")));
|
||||||
me["EPR2"].setText(sprintf("%1.3f", getprop("/engines/engine[1]/epr-actual")));
|
me["EPR2"].setText(sprintf("%1.3f", getprop("/engines/engine[1]/epr-actual")));
|
||||||
|
@ -474,15 +713,6 @@ var canvas_upperECAM_iae_eis2 = {
|
||||||
me["EPRLim-XX2"].show();
|
me["EPRLim-XX2"].show();
|
||||||
}
|
}
|
||||||
|
|
||||||
# Flap Indicator
|
|
||||||
me["FlapTxt"].setText(sprintf("%s", getprop("/controls/flight/flap-txt")));
|
|
||||||
|
|
||||||
if (getprop("/controls/flight/flap-pos") > 0) {
|
|
||||||
me["FlapDots"].show();
|
|
||||||
} else {
|
|
||||||
me["FlapDots"].hide();
|
|
||||||
}
|
|
||||||
|
|
||||||
me.updateBase();
|
me.updateBase();
|
||||||
|
|
||||||
settimer(func me.update(), 0.02);
|
settimer(func me.update(), 0.02);
|
||||||
|
@ -497,10 +727,13 @@ setlistener("sim/signals/fdm-initialized", func {
|
||||||
"mipmapping": 1
|
"mipmapping": 1
|
||||||
});
|
});
|
||||||
upperECAM_display.addPlacement({"node": "uecam.screen"});
|
upperECAM_display.addPlacement({"node": "uecam.screen"});
|
||||||
|
var group_cfm_eis2 = upperECAM_display.createGroup();
|
||||||
var group_iae_eis2 = upperECAM_display.createGroup();
|
var group_iae_eis2 = upperECAM_display.createGroup();
|
||||||
|
|
||||||
|
upperECAM_cfm_eis2 = canvas_upperECAM_cfm_eis2.new(group_cfm_eis2, "Aircraft/A320Family/Models/Instruments/Upper-ECAM/res/cfm-eis2.svg");
|
||||||
upperECAM_iae_eis2 = canvas_upperECAM_iae_eis2.new(group_iae_eis2, "Aircraft/A320Family/Models/Instruments/Upper-ECAM/res/iae-eis2.svg");
|
upperECAM_iae_eis2 = canvas_upperECAM_iae_eis2.new(group_iae_eis2, "Aircraft/A320Family/Models/Instruments/Upper-ECAM/res/iae-eis2.svg");
|
||||||
|
|
||||||
|
upperECAM_cfm_eis2.update();
|
||||||
upperECAM_iae_eis2.update();
|
upperECAM_iae_eis2.update();
|
||||||
canvas_upperECAM_base.update();
|
canvas_upperECAM_base.update();
|
||||||
});
|
});
|
||||||
|
|
1203
Models/Instruments/Upper-ECAM/res/cfm-eis2.svg
Normal file
1203
Models/Instruments/Upper-ECAM/res/cfm-eis2.svg
Normal file
File diff suppressed because it is too large
Load diff
After Width: | Height: | Size: 74 KiB |
|
@ -12,12 +12,12 @@ setprop("/systems/thrust/epr/toga-lim", 0.0);
|
||||||
setprop("/systems/thrust/epr/mct-lim", 0.0);
|
setprop("/systems/thrust/epr/mct-lim", 0.0);
|
||||||
setprop("/systems/thrust/epr/flx-lim", 0.0);
|
setprop("/systems/thrust/epr/flx-lim", 0.0);
|
||||||
setprop("/systems/thrust/epr/clb-lim", 0.0);
|
setprop("/systems/thrust/epr/clb-lim", 0.0);
|
||||||
setprop("/systems/thrust/n1/toga-lim", 95.9);
|
setprop("/systems/thrust/n1/toga-lim", 95.8);
|
||||||
setprop("/systems/thrust/n1/flx-lim", 0.0);
|
setprop("/systems/thrust/n1/flx-lim", 0.0);
|
||||||
setprop("/engines/flx-thr", 0.0);
|
setprop("/engines/flx-thr", 0.0);
|
||||||
setprop("/controls/engines/thrust-limit", "TOGA");
|
setprop("/controls/engines/thrust-limit", "TOGA");
|
||||||
setprop("/controls/engines/epr-limit", 1.308);
|
setprop("/controls/engines/epr-limit", 1.308);
|
||||||
setprop("/controls/engines/n1-limit", 95.9);
|
setprop("/controls/engines/n1-limit", 95.8);
|
||||||
setprop("/systems/thrust/state1", "IDLE");
|
setprop("/systems/thrust/state1", "IDLE");
|
||||||
setprop("/systems/thrust/state2", "IDLE");
|
setprop("/systems/thrust/state2", "IDLE");
|
||||||
setprop("/systems/thrust/lvrclb", "0");
|
setprop("/systems/thrust/lvrclb", "0");
|
||||||
|
@ -182,11 +182,11 @@ var thrust_lim = func {
|
||||||
if ((state1 == "TOGA" or state2 == "TOGA" or (state1 == "MAN THR" and thr1 >= 0.83) or (state2 == "MAN THR" and thr2 >= 0.83)) or getprop("/systems/thrust/alpha-floor") == 1 or getprop("/systems/thrust/toga-lk") == 1) {
|
if ((state1 == "TOGA" or state2 == "TOGA" or (state1 == "MAN THR" and thr1 >= 0.83) or (state2 == "MAN THR" and thr2 >= 0.83)) or getprop("/systems/thrust/alpha-floor") == 1 or getprop("/systems/thrust/toga-lk") == 1) {
|
||||||
setprop("/controls/engines/thrust-limit", "TOGA");
|
setprop("/controls/engines/thrust-limit", "TOGA");
|
||||||
setprop("/controls/engines/epr-limit", eprtoga);
|
setprop("/controls/engines/epr-limit", eprtoga);
|
||||||
setprop("/controls/engines/n1-limit", 95.9);
|
setprop("/controls/engines/n1-limit", 95.8);
|
||||||
} else if ((state1 == "MCT" or state2 == "MCT" or (state1 == "MAN THR" and thr1 < 0.83) or (state2 == "MAN THR" and thr2 < 0.83)) and getprop("/systems/thrust/lim-flex") == 0) {
|
} else if ((state1 == "MCT" or state2 == "MCT" or (state1 == "MAN THR" and thr1 < 0.83) or (state2 == "MAN THR" and thr2 < 0.83)) and getprop("/systems/thrust/lim-flex") == 0) {
|
||||||
setprop("/controls/engines/thrust-limit", "MCT");
|
setprop("/controls/engines/thrust-limit", "MCT");
|
||||||
setprop("/controls/engines/epr-limit", eprmct);
|
setprop("/controls/engines/epr-limit", eprmct);
|
||||||
setprop("/controls/engines/n1-limit", 92.6);
|
setprop("/controls/engines/n1-limit", 92.5);
|
||||||
} else if ((state1 == "MCT" or state2 == "MCT" or (state1 == "MAN THR" and thr1 < 0.83) or (state2 == "MAN THR" and thr2 < 0.83)) and getprop("/systems/thrust/lim-flex") == 1) {
|
} else if ((state1 == "MCT" or state2 == "MCT" or (state1 == "MAN THR" and thr1 < 0.83) or (state2 == "MAN THR" and thr2 < 0.83)) and getprop("/systems/thrust/lim-flex") == 1) {
|
||||||
setprop("/controls/engines/thrust-limit", "FLX");
|
setprop("/controls/engines/thrust-limit", "FLX");
|
||||||
setprop("/controls/engines/epr-limit", eprflx);
|
setprop("/controls/engines/epr-limit", eprflx);
|
||||||
|
@ -194,7 +194,7 @@ var thrust_lim = func {
|
||||||
} else if (state1 == "CL" or state2 == "CL" or state1 == "MAN" or state2 == "MAN" or state1 == "IDLE" or state2 == "IDLE") {
|
} else if (state1 == "CL" or state2 == "CL" or state1 == "MAN" or state2 == "MAN" or state1 == "IDLE" or state2 == "IDLE") {
|
||||||
setprop("/controls/engines/thrust-limit", "CLB");
|
setprop("/controls/engines/thrust-limit", "CLB");
|
||||||
setprop("/controls/engines/epr-limit", eprclb);
|
setprop("/controls/engines/epr-limit", eprclb);
|
||||||
setprop("/controls/engines/n1-limit", 89.2);
|
setprop("/controls/engines/n1-limit", 89.1);
|
||||||
}
|
}
|
||||||
} else if (getprop("/FMGC/internal/flex-set") == 1 and getprop("/systems/fadec/n1mode1") == 0 and getprop("/systems/fadec/n1mode2") == 0) {
|
} else if (getprop("/FMGC/internal/flex-set") == 1 and getprop("/systems/fadec/n1mode1") == 0 and getprop("/systems/fadec/n1mode2") == 0) {
|
||||||
setprop("/systems/thrust/lim-flex", 1);
|
setprop("/systems/thrust/lim-flex", 1);
|
||||||
|
@ -204,7 +204,7 @@ var thrust_lim = func {
|
||||||
} else {
|
} else {
|
||||||
setprop("/controls/engines/thrust-limit", "TOGA");
|
setprop("/controls/engines/thrust-limit", "TOGA");
|
||||||
setprop("/controls/engines/epr-limit", eprtoga);
|
setprop("/controls/engines/epr-limit", eprtoga);
|
||||||
setprop("/controls/engines/n1-limit", 95.9);
|
setprop("/controls/engines/n1-limit", 95.8);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -563,10 +563,8 @@
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[0]/n1</property>
|
<property>/engines/engine[0]/n1</property>
|
||||||
<entry><ind>0</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind>6</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
||||||
<entry><ind>110</ind><dep>690</dep></entry>
|
<entry><ind>110.0</ind><dep>620</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
@ -596,10 +594,8 @@
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[1]/n1</property>
|
<property>/engines/engine[1]/n1</property>
|
||||||
<entry><ind>0</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind>6</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
||||||
<entry><ind>110</ind><dep>690</dep></entry>
|
<entry><ind>110.0</ind><dep>620</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
|
|
@ -891,10 +891,8 @@
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[0]/n1</property>
|
<property>/engines/engine[0]/n1</property>
|
||||||
<entry><ind>0</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind>6</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
||||||
<entry><ind>110</ind><dep>620</dep></entry>
|
<entry><ind>110.0</ind><dep>620</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
@ -924,10 +922,8 @@
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[1]/n1</property>
|
<property>/engines/engine[1]/n1</property>
|
||||||
<entry><ind>0</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind>6</ind><dep>0</dep></entry>
|
|
||||||
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
<entry><ind> 22.4</ind><dep>434</dep></entry>
|
||||||
<entry><ind>110</ind><dep>620</dep></entry>
|
<entry><ind>110.0</ind><dep>620</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
|
|
@ -14,35 +14,10 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
<expression>
|
|
||||||
<table>
|
|
||||||
<property>/engines/engine[0]/epr-actual</property>
|
|
||||||
<entry><ind>0.990</ind><dep>-134</dep></entry>
|
|
||||||
<entry><ind>1.000</ind><dep>-125</dep></entry>
|
|
||||||
<entry><ind>1.200</ind><dep> -50</dep></entry>
|
|
||||||
<entry><ind>1.400</ind><dep> 16</dep></entry>
|
|
||||||
<entry><ind>1.600</ind><dep> 82</dep></entry>
|
|
||||||
<entry><ind>1.650</ind><dep> 98</dep></entry>
|
|
||||||
</table>
|
|
||||||
</expression>
|
|
||||||
</input>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>IAE</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -56,6 +31,7 @@
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
<input>0</input>
|
||||||
<output>/ECAM/Upper/EPR[0]</output>
|
<output>/ECAM/Upper/EPR[0]</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
@ -65,35 +41,10 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
<expression>
|
|
||||||
<table>
|
|
||||||
<property>/engines/engine[0]/epr-cmd</property>
|
|
||||||
<entry><ind>0.990</ind><dep>-134</dep></entry>
|
|
||||||
<entry><ind>1.000</ind><dep>-125</dep></entry>
|
|
||||||
<entry><ind>1.200</ind><dep> -50</dep></entry>
|
|
||||||
<entry><ind>1.400</ind><dep> 16</dep></entry>
|
|
||||||
<entry><ind>1.600</ind><dep> 82</dep></entry>
|
|
||||||
<entry><ind>1.650</ind><dep> 98</dep></entry>
|
|
||||||
</table>
|
|
||||||
</expression>
|
|
||||||
</input>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>IAE</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -107,6 +58,7 @@
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
<input>0</input>
|
||||||
<output>/ECAM/Upper/EPRthr[0]</output>
|
<output>/ECAM/Upper/EPRthr[0]</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
@ -116,35 +68,10 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
<expression>
|
|
||||||
<table>
|
|
||||||
<property>/engines/engine[1]/epr-actual</property>
|
|
||||||
<entry><ind>0.990</ind><dep>-134</dep></entry>
|
|
||||||
<entry><ind>1.000</ind><dep>-125</dep></entry>
|
|
||||||
<entry><ind>1.200</ind><dep> -50</dep></entry>
|
|
||||||
<entry><ind>1.400</ind><dep> 16</dep></entry>
|
|
||||||
<entry><ind>1.600</ind><dep> 82</dep></entry>
|
|
||||||
<entry><ind>1.650</ind><dep> 98</dep></entry>
|
|
||||||
</table>
|
|
||||||
</expression>
|
|
||||||
</input>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>IAE</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -158,6 +85,7 @@
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
<input>0</input>
|
||||||
<output>/ECAM/Upper/EPR[1]</output>
|
<output>/ECAM/Upper/EPR[1]</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
@ -167,35 +95,10 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
<expression>
|
|
||||||
<table>
|
|
||||||
<property>/engines/engine[1]/epr-cmd</property>
|
|
||||||
<entry><ind>0.990</ind><dep>-134</dep></entry>
|
|
||||||
<entry><ind>1.000</ind><dep>-125</dep></entry>
|
|
||||||
<entry><ind>1.200</ind><dep> -50</dep></entry>
|
|
||||||
<entry><ind>1.400</ind><dep> 16</dep></entry>
|
|
||||||
<entry><ind>1.600</ind><dep> 82</dep></entry>
|
|
||||||
<entry><ind>1.650</ind><dep> 98</dep></entry>
|
|
||||||
</table>
|
|
||||||
</expression>
|
|
||||||
</input>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>IAE</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -209,6 +112,7 @@
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
<input>0</input>
|
||||||
<output>/ECAM/Upper/EPRthr[1]</output>
|
<output>/ECAM/Upper/EPRthr[1]</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
@ -218,35 +122,10 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
<expression>
|
|
||||||
<table>
|
|
||||||
<property>/systems/thrust/epr/toga-lim</property>
|
|
||||||
<entry><ind>0.990</ind><dep>-134</dep></entry>
|
|
||||||
<entry><ind>1.000</ind><dep>-125</dep></entry>
|
|
||||||
<entry><ind>1.200</ind><dep> -50</dep></entry>
|
|
||||||
<entry><ind>1.400</ind><dep> 16</dep></entry>
|
|
||||||
<entry><ind>1.600</ind><dep> 82</dep></entry>
|
|
||||||
<entry><ind>1.650</ind><dep> 98</dep></entry>
|
|
||||||
</table>
|
|
||||||
</expression>
|
|
||||||
</input>
|
|
||||||
<input>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
|
||||||
<property>options/eng</property>
|
|
||||||
<value>IAE</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -260,6 +139,7 @@
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
|
<input>0</input>
|
||||||
<output>/ECAM/Upper/EPRylim</output>
|
<output>/ECAM/Upper/EPRylim</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
@ -269,32 +149,26 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>CFM</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[0]/egt-actual</property>
|
<property>/engines/engine[0]/egt-actual</property>
|
||||||
<entry><ind> 0</ind><dep>-90</dep></entry>
|
<entry><ind> 0</ind><dep>-90</dep></entry>
|
||||||
<entry><ind>400</ind><dep> 0</dep></entry>
|
<entry><ind> 500</ind><dep> 0</dep></entry>
|
||||||
<entry><ind>800</ind><dep> 90</dep></entry>
|
<entry><ind>1000</ind><dep> 90</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -314,32 +188,26 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>CFM</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[1]/egt-actual</property>
|
<property>/engines/engine[1]/egt-actual</property>
|
||||||
<entry><ind> 0</ind><dep>-90</dep></entry>
|
<entry><ind> 0</ind><dep>-90</dep></entry>
|
||||||
<entry><ind>400</ind><dep> 0</dep></entry>
|
<entry><ind> 500</ind><dep> 0</dep></entry>
|
||||||
<entry><ind>800</ind><dep> 90</dep></entry>
|
<entry><ind>1000</ind><dep> 90</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -359,33 +227,27 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>CFM</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[0]/n1</property>
|
<property>/engines/engine[0]/n1</property>
|
||||||
<entry><ind> 22.4</ind><dep>-107</dep></entry>
|
<entry><ind> 22.4</ind><dep>-134</dep></entry>
|
||||||
<entry><ind> 40.0</ind><dep> -61</dep></entry>
|
<entry><ind> 50.0</ind><dep> -58</dep></entry>
|
||||||
<entry><ind>100.0</ind><dep> 65</dep></entry>
|
<entry><ind>100.0</ind><dep> 42</dep></entry>
|
||||||
<entry><ind>110.0</ind><dep> 90</dep></entry>
|
<entry><ind>110.0</ind><dep> 59</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -406,33 +268,27 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>CFM</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[0]/n1-cmd</property>
|
<property>/engines/engine[0]/n1-cmd</property>
|
||||||
<entry><ind> 22.4</ind><dep>-107</dep></entry>
|
<entry><ind> 22.4</ind><dep>-134</dep></entry>
|
||||||
<entry><ind> 40.0</ind><dep> -61</dep></entry>
|
<entry><ind> 50.0</ind><dep> -58</dep></entry>
|
||||||
<entry><ind>100.0</ind><dep> 65</dep></entry>
|
<entry><ind>100.0</ind><dep> 42</dep></entry>
|
||||||
<entry><ind>110.0</ind><dep> 90</dep></entry>
|
<entry><ind>110.0</ind><dep> 59</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -453,33 +309,27 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>CFM</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[1]/n1</property>
|
<property>/engines/engine[1]/n1</property>
|
||||||
<entry><ind> 22.4</ind><dep>-107</dep></entry>
|
<entry><ind> 22.4</ind><dep>-134</dep></entry>
|
||||||
<entry><ind> 40.0</ind><dep> -61</dep></entry>
|
<entry><ind> 50.0</ind><dep> -58</dep></entry>
|
||||||
<entry><ind>100.0</ind><dep> 65</dep></entry>
|
<entry><ind>100.0</ind><dep> 42</dep></entry>
|
||||||
<entry><ind>110.0</ind><dep> 90</dep></entry>
|
<entry><ind>110.0</ind><dep> 59</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -500,33 +350,27 @@
|
||||||
<gain>1</gain>
|
<gain>1</gain>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<not><property>/options/EIS2</property></not>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>CFM</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
<property>/engines/engine[1]/n1-cmd</property>
|
<property>/engines/engine[1]/n1-cmd</property>
|
||||||
<entry><ind> 22.4</ind><dep>-107</dep></entry>
|
<entry><ind> 22.4</ind><dep>-134</dep></entry>
|
||||||
<entry><ind> 40.0</ind><dep> -61</dep></entry>
|
<entry><ind> 50.0</ind><dep> -58</dep></entry>
|
||||||
<entry><ind>100.0</ind><dep> 65</dep></entry>
|
<entry><ind>100.0</ind><dep> 42</dep></entry>
|
||||||
<entry><ind>110.0</ind><dep> 90</dep></entry>
|
<entry><ind>110.0</ind><dep> 59</dep></entry>
|
||||||
</table>
|
</table>
|
||||||
</expression>
|
</expression>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
|
||||||
<property>/options/EIS2</property>
|
|
||||||
<equals>
|
<equals>
|
||||||
<property>options/eng</property>
|
<property>options/eng</property>
|
||||||
<value>IAE</value>
|
<value>IAE</value>
|
||||||
</equals>
|
</equals>
|
||||||
</and>
|
|
||||||
</condition>
|
</condition>
|
||||||
<expression>
|
<expression>
|
||||||
<table>
|
<table>
|
||||||
|
@ -541,4 +385,29 @@
|
||||||
<output>/ECAM/Upper/N1thr[1]</output>
|
<output>/ECAM/Upper/N1thr[1]</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<name>N1 LIMIT</name>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1</gain>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<equals>
|
||||||
|
<property>options/eng</property>
|
||||||
|
<value>CFM</value>
|
||||||
|
</equals>
|
||||||
|
</condition>
|
||||||
|
<expression>
|
||||||
|
<table>
|
||||||
|
<property>/systems/thrust/n1/toga-lim</property>
|
||||||
|
<entry><ind> 22.4</ind><dep>-134</dep></entry>
|
||||||
|
<entry><ind> 50.0</ind><dep> -58</dep></entry>
|
||||||
|
<entry><ind>100.0</ind><dep> 42</dep></entry>
|
||||||
|
<entry><ind>110.0</ind><dep> 59</dep></entry>
|
||||||
|
</table>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<input>0</input>
|
||||||
|
<output>/ECAM/Upper/N1ylim</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
Reference in a new issue