From e82428f335f52d3ed87bc338a8d5500266391f13 Mon Sep 17 00:00:00 2001 From: Joshua Davidson Date: Mon, 31 Jul 2017 22:13:46 -0400 Subject: [PATCH] A32X: Add new CFM Upper ECAM Canvas --- Models/FlightDeck/a320.flightdeck.xml | 66 - .../Lower-ECAM/res/res - Shortcut.lnk | Bin 1441 -> 0 bytes Models/Instruments/Upper-ECAM/Upper-ECAM.nas | 317 ++++- .../Instruments/Upper-ECAM/res/cfm-eis2.svg | 1203 +++++++++++++++++ Nasal/fadec-common.nas | 12 +- Systems/fadec-cfm.xml | 12 +- Systems/fadec-iae.xml | 12 +- Systems/upper-ecam.xml | 371 ++--- 8 files changed, 1612 insertions(+), 381 deletions(-) delete mode 100644 Models/Instruments/Lower-ECAM/res/res - Shortcut.lnk create mode 100644 Models/Instruments/Upper-ECAM/res/cfm-eis2.svg diff --git a/Models/FlightDeck/a320.flightdeck.xml b/Models/FlightDeck/a320.flightdeck.xml index cf766993..769ad3bf 100644 --- a/Models/FlightDeck/a320.flightdeck.xml +++ b/Models/FlightDeck/a320.flightdeck.xml @@ -295,75 +295,9 @@ - - UECAM - Aircraft/A320Family/Models/Instruments/Upper-ECAM-EIS1/Upper-ECAM-CFM.xml - - -0.5807 - 0 - -0.0442 - -15 - - - - options/EIS2 - - options/eng - CFM - - - - systems/electrical/bus/ac1 - 110 - - - systems/electrical/bus/ac2 - 110 - - - - - - - - UECAM - Aircraft/A320Family/Models/Instruments/Upper-ECAM-EIS2/Upper-ECAM-CFM.xml - - -0.5807 - 0 - -0.0442 - -15 - - - - options/EIS2 - - options/eng - CFM - - - - systems/electrical/bus/ac1 - 110 - - - systems/electrical/bus/ac2 - 110 - - - - - - UECAM Aircraft/A320Family/Models/Instruments/Upper-ECAM/Upper-ECAM.xml - - - options/eng - IAE - - -0.5807 0 diff --git a/Models/Instruments/Lower-ECAM/res/res - Shortcut.lnk b/Models/Instruments/Lower-ECAM/res/res - Shortcut.lnk deleted file mode 100644 index 0d70aeb8d3d0ea00891eedc89b04c431eb39ebb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1441 zcmd5*Ur1A76hBjmlF(Ti%Ou6HG+NC+6f8>T=ETdEqL~#pa%@*zy4`W_L?kLGO2wcj zU!-J289|gmGQ$4&QZE&$QIXX{4`C%K_7D=K{mykxtwFDS@H_W@=bZ0%&UeoF97Lo` zje{f_(j?itXeH_Ke|Bv5;PCfR-K|fVukDF1qF>DjyKde;DhuLLDbrS-9)CzFzGmxu zRNFn;v_J3E=brY*7NP@`uQALBYOkIwUd64r8iGW7 zkwpScJ-99$3A1f0yj~`8%oUpdqOg#c6mkPDY9JgX109aA{t}K~1Z!b|$!Sg?Q(KhLA7&df{)ov~L4I%rasL)%Dq$DYxR+MJ znXM;BWnEddad{Q|sDd+_xoKCdY#qq96`Tqgsf?^-Atzi7sLFiT=7gM^dQv2niX!=r z3+4^1WzLTy%((?vx)kv7-PZu^KnB2m{4D}_odXO&JTUQ76?h)&ync_|s*=?#)~b@C zir%29#oZW?J*sGv)TW>u5Etf0)LQQHd7InB`5uWCel@7H_#}T&6&-S`q!`Pr7N^L$ zBm8zMz$;iq6zV{z{F@~w`Z0y>& zNR)+fl+kEzw*q|{kPJ`>i;(jkzb;lL@xFw`bBFfS`1cvWd3-h9AG1!z?bPe=FZ*IJ(@D`iiRrR7={O+-^dPpnQGvFNLq|pQZd?a z&X-p`fB_91= 110 or getprop("/systems/electrical/bus/ac2") >= 110) { - # Choose between CFM, IAE, and EIS versions - upperECAM_iae_eis2.page.show(); + 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(); + } } else { + upperECAM_cfm_eis2.page.hide(); upperECAM_iae_eis2.page.hide(); } settimer(func me.update(), 0.02); }, 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 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 = { new: func(canvas_group, file) { var m = { parents: [canvas_upperECAM_iae_eis2 , canvas_upperECAM_base] }; @@ -197,40 +465,11 @@ var canvas_upperECAM_iae_eis2 = { }, 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", - "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", - "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", + "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", + "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"]; }, 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 me["EPR1"].setText(sprintf("%1.3f", getprop("/engines/engine[0]/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(); } - # 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(); settimer(func me.update(), 0.02); @@ -497,10 +727,13 @@ setlistener("sim/signals/fdm-initialized", func { "mipmapping": 1 }); upperECAM_display.addPlacement({"node": "uecam.screen"}); + var group_cfm_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_cfm_eis2.update(); upperECAM_iae_eis2.update(); canvas_upperECAM_base.update(); }); diff --git a/Models/Instruments/Upper-ECAM/res/cfm-eis2.svg b/Models/Instruments/Upper-ECAM/res/cfm-eis2.svg new file mode 100644 index 00000000..a3ddf5b5 --- /dev/null +++ b/Models/Instruments/Upper-ECAM/res/cfm-eis2.svg @@ -0,0 +1,1203 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + EGT + °C + N1 + % + % + N2 + FF + LBS/H + FOB : + LBS + + + + + + + + + + + + + + + + + + + + + + + 5 + 10 + + 000 + 00 + 00000 + + 0 + 00 + + 0 + XX + XX + XX + XX + 0000000 + LINE 1 + LINE 2 + LINE 3 + LINE 4 + LINE 5 + LINE 6 + LINE 7 + LINE 8 + + + TOGA + XX + 00 + + 0 + XX + 1+F + + + + + + + + + + 00 + + 0 + XX + + + + + + + + + + + 000 + XX + + + + + + + + REV + 00000 + XX + XX + + + + + + + + + + + 5 + 10 + + 00 + + 0 + XX + XX + + + + + + + + + + REV + + + + + diff --git a/Nasal/fadec-common.nas b/Nasal/fadec-common.nas index dc9e2893..e937548d 100644 --- a/Nasal/fadec-common.nas +++ b/Nasal/fadec-common.nas @@ -12,12 +12,12 @@ setprop("/systems/thrust/epr/toga-lim", 0.0); setprop("/systems/thrust/epr/mct-lim", 0.0); setprop("/systems/thrust/epr/flx-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("/engines/flx-thr", 0.0); setprop("/controls/engines/thrust-limit", "TOGA"); 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/state2", "IDLE"); 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) { setprop("/controls/engines/thrust-limit", "TOGA"); 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) { setprop("/controls/engines/thrust-limit", "MCT"); 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) { setprop("/controls/engines/thrust-limit", "FLX"); 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") { setprop("/controls/engines/thrust-limit", "CLB"); 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) { setprop("/systems/thrust/lim-flex", 1); @@ -204,7 +204,7 @@ var thrust_lim = func { } else { setprop("/controls/engines/thrust-limit", "TOGA"); setprop("/controls/engines/epr-limit", eprtoga); - setprop("/controls/engines/n1-limit", 95.9); + setprop("/controls/engines/n1-limit", 95.8); } } diff --git a/Systems/fadec-cfm.xml b/Systems/fadec-cfm.xml index a009f498..bd30e44c 100644 --- a/Systems/fadec-cfm.xml +++ b/Systems/fadec-cfm.xml @@ -563,10 +563,8 @@ /engines/engine[0]/n1 - 00 - 60 - 22.4434 - 110690 + 22.4434 + 110.0620
@@ -596,10 +594,8 @@ /engines/engine[1]/n1 - 00 - 60 - 22.4434 - 110690 + 22.4434 + 110.0620
diff --git a/Systems/fadec-iae.xml b/Systems/fadec-iae.xml index ed78386c..25616a54 100644 --- a/Systems/fadec-iae.xml +++ b/Systems/fadec-iae.xml @@ -891,10 +891,8 @@ /engines/engine[0]/n1 - 00 - 60 - 22.4434 - 110620 + 22.4434 + 110.0620
@@ -924,10 +922,8 @@ /engines/engine[1]/n1 - 00 - 60 - 22.4434 - 110620 + 22.4434 + 110.0620
diff --git a/Systems/upper-ecam.xml b/Systems/upper-ecam.xml index 1197ef1d..d18f9969 100644 --- a/Systems/upper-ecam.xml +++ b/Systems/upper-ecam.xml @@ -14,35 +14,10 @@ 1 - - /options/EIS2 - - options/eng - IAE - - - - - - /engines/engine[0]/epr-actual - 0.990-134 - 1.000-125 - 1.200 -50 - 1.400 16 - 1.600 82 - 1.650 98 -
-
- - - - - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -56,6 +31,7 @@
+ 0 /ECAM/Upper/EPR[0] @@ -65,35 +41,10 @@ 1 - - /options/EIS2 - - options/eng - IAE - - - - - - /engines/engine[0]/epr-cmd - 0.990-134 - 1.000-125 - 1.200 -50 - 1.400 16 - 1.600 82 - 1.650 98 -
-
- - - - - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -107,6 +58,7 @@
+ 0 /ECAM/Upper/EPRthr[0] @@ -116,35 +68,10 @@ 1 - - /options/EIS2 - - options/eng - IAE - - - - - - /engines/engine[1]/epr-actual - 0.990-134 - 1.000-125 - 1.200 -50 - 1.400 16 - 1.600 82 - 1.650 98 -
-
- - - - - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -158,6 +85,7 @@
+ 0 /ECAM/Upper/EPR[1] @@ -167,35 +95,10 @@ 1 - - /options/EIS2 - - options/eng - IAE - - - - - - /engines/engine[1]/epr-cmd - 0.990-134 - 1.000-125 - 1.200 -50 - 1.400 16 - 1.600 82 - 1.650 98 -
-
- - - - - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -209,6 +112,7 @@
+ 0 /ECAM/Upper/EPRthr[1] @@ -218,35 +122,10 @@ 1 - - /options/EIS2 - - options/eng - IAE - - - - - - /systems/thrust/epr/toga-lim - 0.990-134 - 1.000-125 - 1.200 -50 - 1.400 16 - 1.600 82 - 1.650 98 -
-
- - - - - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -260,6 +139,7 @@
+ 0 /ECAM/Upper/EPRylim @@ -269,32 +149,26 @@ 1 - - /options/EIS2 - - options/eng - IAE - - + + options/eng + CFM + /engines/engine[0]/egt-actual - 0-90 - 400 0 - 800 90 + 0-90 + 500 0 + 1000 90
- - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -314,32 +188,26 @@ 1 - - /options/EIS2 - - options/eng - IAE - - + + options/eng + CFM +
/engines/engine[1]/egt-actual - 0-90 - 400 0 - 800 90 + 0-90 + 500 0 + 1000 90
- - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -359,33 +227,27 @@ 1 - - /options/EIS2 - - options/eng - IAE - - + + options/eng + CFM +
/engines/engine[0]/n1 - 22.4-107 - 40.0 -61 - 100.0 65 - 110.0 90 + 22.4-134 + 50.0 -58 + 100.0 42 + 110.0 59
- - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -406,33 +268,27 @@ 1 - - /options/EIS2 - - options/eng - IAE - - + + options/eng + CFM +
/engines/engine[0]/n1-cmd - 22.4-107 - 40.0 -61 - 100.0 65 - 110.0 90 + 22.4-134 + 50.0 -58 + 100.0 42 + 110.0 59
- - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -453,33 +309,27 @@ 1 - - /options/EIS2 - - options/eng - IAE - - + + options/eng + CFM +
/engines/engine[1]/n1 - 22.4-107 - 40.0 -61 - 100.0 65 - 110.0 90 + 22.4-134 + 50.0 -58 + 100.0 42 + 110.0 59
- - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -500,33 +350,27 @@ 1 - - /options/EIS2 - - options/eng - IAE - - + + options/eng + CFM +
/engines/engine[1]/n1-cmd - 22.4-107 - 40.0 -61 - 100.0 65 - 110.0 90 + 22.4-134 + 50.0 -58 + 100.0 42 + 110.0 59
- - /options/EIS2 - - options/eng - IAE - - + + options/eng + IAE + @@ -540,5 +384,30 @@ /ECAM/Upper/N1thr[1] + + + N1 LIMIT + gain + 1 + + + + options/eng + CFM + + + +
+ /systems/thrust/n1/toga-lim + 22.4-134 + 50.0 -58 + 100.0 42 + 110.0 59 +
+
+ + 0 + /ECAM/Upper/N1ylim +