From 4039086128e8cf6b8e2d0f51a87f9d0839c2698f Mon Sep 17 00:00:00 2001 From: Joshua Davidson Date: Mon, 27 Mar 2017 16:18:28 -0400 Subject: [PATCH] ITAF 165 + all bugfixes + PID update, adjust Autothrust throttle speed for smoother FLCH function, more PID tuning --- A320-main.xml | 11 +- Models/FlightDeck/a320.flightdeck.xml | 42 +- Nasal/it-autoflight.nas | 395 ++++++++++- Systems/autopilot-dlg.xml | 70 +- Systems/custom-autothrust.xml | 24 +- Systems/it-autoflight.xml | 899 ++++++++++++++++---------- Systems/it-autothrust.xml | 421 ++++++------ 7 files changed, 1233 insertions(+), 629 deletions(-) diff --git a/A320-main.xml b/A320-main.xml index a7f0cec5..79644ffc 100644 --- a/A320-main.xml +++ b/A320-main.xml @@ -228,9 +228,9 @@ 0 - -0.40 - 0.40 - 0.06 + -0.30 + 0.30 + 0.05 0.09 10.0 0.00001 @@ -245,12 +245,13 @@ -0.07 - 5 + -1.9 + 1.4 -4.0 0.025 0.07 0.30 - -0.35 + -4.0 0.10 diff --git a/Models/FlightDeck/a320.flightdeck.xml b/Models/FlightDeck/a320.flightdeck.xml index d98c5fc9..0cafe56b 100644 --- a/Models/FlightDeck/a320.flightdeck.xml +++ b/Models/FlightDeck/a320.flightdeck.xml @@ -40,17 +40,6 @@ - - - Aircraft/A320Family/Models/Instruments/Stby-AI/Stby-AInew.xml - - -0.5700 - -0.1344 - -0.0693 - -16 - - - @@ -3772,6 +3761,35 @@ 0.1419 + + + + + texmultiple + stby-ai + + orientation/pitch-deg + textranslate + 0.003955078 + + 0 + 1 + + + + orientation/roll-deg + texrotate +
+ 0.50 + 0.50 +
+ + 0 + 0 + -1 + +
+
@@ -4723,4 +4741,4 @@ - + \ No newline at end of file diff --git a/Nasal/it-autoflight.nas b/Nasal/it-autoflight.nas index a4b8bbf0..0cb83182 100644 --- a/Nasal/it-autoflight.nas +++ b/Nasal/it-autoflight.nas @@ -1,6 +1,6 @@ # IT AUTOFLIGHT System Controller # Joshua Davidson (it0uchpods) -# V3.0.0 Build 132 +# V3.0.0 Build 165 # This program is 100% GPL! print("IT-AUTOFLIGHT: Please Wait!"); @@ -20,6 +20,7 @@ var ap_init = func { setprop("/it-autoflight/input/lat", 5); setprop("/it-autoflight/input/lat-arm", 0); setprop("/it-autoflight/input/vert", 7); + setprop("/it-autoflight/input/prof-arm", 0); setprop("/it-autoflight/input/bank-limit", 30); setprop("/it-autoflight/input/trk", 0); setprop("/it-autoflight/input/toga", 0); @@ -35,6 +36,7 @@ var ap_init = func { setprop("/it-autoflight/output/retard", 0); setprop("/it-autoflight/output/lat", 5); setprop("/it-autoflight/output/vert", 7); + setprop("/it-autoflight/output/prof-vert", 4); setprop("/it-autoflight/settings/min-pitch", -8); setprop("/it-autoflight/settings/max-pitch", 8); setprop("/it-autoflight/settings/use-nav2-radio", 0); @@ -42,18 +44,24 @@ var ap_init = func { setprop("/it-autoflight/internal/min-pitch", -8); setprop("/it-autoflight/internal/max-pitch", 8); setprop("/it-autoflight/internal/alt", 10000); + setprop("/it-autoflight/internal/prof-alt", 10000); + setprop("/it-autoflight/internal/prof-wp-alt", 10000); + setprop("/it-autoflight/internal/prof-mode", "XX"); setprop("/it-autoflight/internal/cwsr", 0); setprop("/it-autoflight/internal/cwsp", 0); setprop("/it-autoflight/internal/fpa", 0); + setprop("/it-autoflight/internal/prof-fpm", 0); + setprop("/it-autoflight/internal/top-of-des-nm", 0); setprop("/it-autoflight/autoland/target-vs", "-650"); setprop("/it-autoflight/mode/thr", "PITCH"); setprop("/it-autoflight/mode/arm", "HDG"); setprop("/it-autoflight/mode/lat", "T/O"); setprop("/it-autoflight/mode/vert", "T/O CLB"); + setprop("/it-autoflight/mode/prof", "NONE"); setprop("/it-autoflight/input/spd-kts", 200); setprop("/it-autoflight/input/spd-mach", 0.68); - thrustmode(); update_arms(); + thrustmode(); print("IT-AUTOFLIGHT: Done!"); } @@ -64,7 +72,7 @@ setlistener("/it-autoflight/input/ap1", func { setprop("/it-autoflight/output/ap1", 0); setprop("/controls/flight/rudder", 0); if (getprop("/it-autoflight/sound/enableapoffsound") == 1) { - setprop("/it-autoflight/sound/apoffsound", 1); + setprop("/it-autoflight/sound/apoffsound", 1); setprop("/it-autoflight/sound/enableapoffsound", 0); } } else if (apmas == 1) { @@ -171,7 +179,7 @@ var lateral = func { setprop("/it-autoflight/mode/lat", "HDG"); setprop("/it-autoflight/mode/arm", " "); } else if (latset == 1) { - if (getprop("/autopilot/route-manager/route/num") > 0) { + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { alandt.stop(); alandt1.stop(); lnavwptt.start(); @@ -180,12 +188,13 @@ var lateral = func { setprop("/it-autoflight/output/lat", 1); setprop("/it-autoflight/mode/lat", "LNAV"); setprop("/it-autoflight/mode/arm", " "); + } else { + gui.popupTip("Please make sure you have a route set, and that it is Activated!"); } } else if (latset == 2) { setprop("/instrumentation/nav[0]/signal-quality-norm", 0); setprop("/instrumentation/nav[1]/signal-quality-norm", 0); setprop("/it-autoflight/output/loc-armed", 1); - setprop("/it-autoflight/output/appr-armed", 0); setprop("/it-autoflight/mode/arm", "LOC"); } else if (latset == 3) { alandt.stop(); @@ -214,8 +223,12 @@ var lat_arm = func { setprop("/it-autoflight/input/lat-arm", 0); setprop("/it-autoflight/mode/arm", "HDG"); } else if (latset == 1) { - setprop("/it-autoflight/input/lat-arm", 1); - setprop("/it-autoflight/mode/arm", "LNV"); + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { + setprop("/it-autoflight/input/lat-arm", 1); + setprop("/it-autoflight/mode/arm", "LNV"); + } else { + gui.popupTip("Please make sure you have a route set, and that it is Activated!"); + } } else if (latset == 3) { var hdgnow = int(getprop("/orientation/heading-magnetic-deg")+0.5); setprop("/it-autoflight/input/hdg", hdgnow); @@ -228,6 +241,8 @@ var lat_arm = func { setlistener("/it-autoflight/input/vert", func { if ((getprop("/gear/gear[1]/wow") == 0) and (getprop("/gear/gear[2]/wow") == 0)) { vertical(); + } else { + vert_arm(); } }); @@ -236,6 +251,7 @@ var vertical = func { if (vertset == 0) { alandt.stop(); alandt1.stop(); + prof_maint.stop(); setprop("/it-autoflight/output/appr-armed", 0); setprop("/it-autoflight/output/vert", 0); setprop("/it-autoflight/mode/vert", "ALT HLD"); @@ -251,11 +267,12 @@ var vertical = func { } else if (vertset == 1) { alandt.stop(); alandt1.stop(); + prof_maint.stop(); + setprop("/it-autoflight/output/appr-armed", 0); var altinput = getprop("/it-autoflight/input/alt"); setprop("/it-autoflight/internal/alt", altinput); var vsnow = int(getprop("/velocities/vertical-speed-fps")*0.6)*100; setprop("/it-autoflight/input/vs", vsnow); - setprop("/it-autoflight/output/appr-armed", 0); setprop("/it-autoflight/output/vert", 1); setprop("/it-autoflight/mode/vert", "V/S"); if (getprop("/it-autoflight/output/loc-armed")) { @@ -280,6 +297,7 @@ var vertical = func { } else if (vertset == 3) { alandt.stop(); alandt1.stop(); + prof_maint.stop(); var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); var alt = getprop("/it-autoflight/internal/alt"); var dif = calt - alt; @@ -296,6 +314,8 @@ var vertical = func { } else if (vertset == 4) { alandt.stop(); alandt1.stop(); + prof_maint.stop(); + setprop("/it-autoflight/output/appr-armed", 0); var altinput = getprop("/it-autoflight/input/alt"); setprop("/it-autoflight/internal/alt", altinput); var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); @@ -314,15 +334,16 @@ var vertical = func { } else if (vertset == 5) { alandt.stop(); alandt1.stop(); + prof_maint.stop(); fpa_calct.start(); + setprop("/it-autoflight/output/appr-armed", 0); var altinput = getprop("/it-autoflight/input/alt"); setprop("/it-autoflight/internal/alt", altinput); var fpanow = (int(10*getprop("/it-autoflight/internal/fpa")))*0.1; setprop("/it-autoflight/input/fpa", fpanow); - setprop("/it-autoflight/output/appr-armed", 0); setprop("/it-autoflight/output/vert", 5); setprop("/it-autoflight/mode/vert", "FPA"); - if (getprop("/it-autoflight/output/loc-armed")) { + if (getprop("/it-autoflight/output/loc-armed") == 1) { setprop("/it-autoflight/mode/arm", "LOC"); } else { setprop("/it-autoflight/mode/arm", " "); @@ -335,15 +356,53 @@ var vertical = func { thrustmode(); alandt.stop(); alandt1.start(); + prof_maint.stop(); setprop("/it-autoflight/autoland/target-vs", "-650"); } else if (vertset == 7) { + alandt.stop(); + alandt1.stop(); + prof_maint.stop(); setprop("/it-autoflight/output/vert", 7); setprop("/it-autoflight/mode/arm", " "); var altinput = getprop("/it-autoflight/input/alt"); setprop("/it-autoflight/internal/alt", altinput); + prof_maint.stop(); thrustmodet.start(); - alandt.stop(); - alandt1.stop(); + } else if (vertset == 8) { + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { + alandt.stop(); + alandt1.stop(); + setprop("/it-autoflight/output/appr-armed", 0); + setprop("/it-autoflight/output/vert", 8); + prof_run(); + setprop("/it-autoflight/mode/vert", "VNAV"); + setprop("/it-autoflight/mode/arm", " "); + var altinput = getprop("/it-autoflight/input/alt"); + setprop("/it-autoflight/internal/alt", altinput); + if (getprop("/it-autoflight/output/loc-armed")) { + setprop("/it-autoflight/mode/arm", "LOC"); + } else { + setprop("/it-autoflight/mode/arm", " "); + } + prof_maint.start(); + } else { + gui.popupTip("Please make sure you have a route set, and that it is Activated!"); + } + } +} + +var vert_arm = func { + var vertset = getprop("/it-autoflight/input/vert"); + if (vertset == 8) { + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { + setprop("/it-autoflight/input/prof-arm", 1); + setprop("/it-autoflight/mode/prof", "ARMED"); + } else { + gui.popupTip("Please make sure you have a route set, and that it is Activated!"); + } + } else { + setprop("/it-autoflight/input/prof-arm", 0); + setprop("/it-autoflight/mode/prof", "NONE"); } } @@ -369,7 +428,7 @@ var alt_on = func { setprop("/it-autoflight/output/vert", 0); setprop("/it-autoflight/mode/vert", "ALT CAP"); setprop("/it-autoflight/internal/max-pitch", 8); - setprop("/it-autoflight/internal/min-pitch", -8); + setprop("/it-autoflight/internal/min-pitch", -5); minmaxtimer.start(); } @@ -432,16 +491,27 @@ setlistener("/it-autoflight/mode/vert", func { var vertm = getprop("/it-autoflight/mode/vert"); if (vertm == "T/O CLB") { reduct.start(); - latarmt.start(); } else { reduct.stop(); + } +}); + +setlistener("/it-autoflight/mode/lat", func { + var vertm = getprop("/it-autoflight/mode/lat"); + if (vertm == "T/O") { + latarmt.start(); + } else { latarmt.stop(); } }); var toga_reduc = func { if (getprop("/position/gear-agl-ft") >= getprop("/it-autoflight/settings/reduc-agl-ft")) { - setprop("/it-autoflight/input/vert", 4); + if (getprop("/it-autoflight/input/prof-arm") == 1) { + setprop("/it-autoflight/input/vert", 8); + } else { + setprop("/it-autoflight/input/vert", 4); + } } } @@ -451,17 +521,25 @@ setlistener("/it-autoflight/output/vert", func { if (vertm == 1) { altcaptt.start(); fpa_calct.stop(); + setprop("/it-autoflight/mode/prof", "NONE"); } else if (vertm == 4) { altcaptt.start(); fpa_calct.stop(); + setprop("/it-autoflight/mode/prof", "NONE"); } else if (vertm == 5) { altcaptt.start(); + setprop("/it-autoflight/mode/prof", "NONE"); } else if (vertm == 7) { altcaptt.start(); fpa_calct.stop(); + setprop("/it-autoflight/mode/prof", "NONE"); + } else if (vertm == 8) { + altcaptt.stop(); + fpa_calct.stop(); } else { altcaptt.stop(); fpa_calct.stop(); + setprop("/it-autoflight/mode/prof", "NONE"); } }); @@ -544,7 +622,9 @@ var thrustmode = func { } else if (vertm == 7) { setprop("/it-autoflight/output/thr-mode", 2); setprop("/it-autoflight/mode/thr", " PITCH"); - } else { + } else if (vertm == 8) { + thrustmodet.stop(); + } else { setprop("/it-autoflight/output/thr-mode", 0); setprop("/it-autoflight/mode/thr", "THRUST"); thrustmodet.stop(); @@ -649,9 +729,9 @@ var make_loc_active = func { var apparmcheck = func { var signal = getprop("/instrumentation/nav[0]/gs-needle-deflection-norm"); var signal_b = getprop("/instrumentation/nav[1]/gs-needle-deflection-norm"); - if ((signal <= -0.000000001) and (getprop("/it-autoflight/settings/use-nav2-radio") == 0)) { + if ((signal <= -0.000000001) and (getprop("/it-autoflight/settings/use-nav2-radio") == 0) and (getprop("/it-autoflight/output/lat") == 2)) { make_appr_active(); - } else if ((signal_b <= -0.000000001) and (getprop("/it-autoflight/settings/use-nav2-radio") == 1)) { + } else if ((signal_b <= -0.000000001) and (getprop("/it-autoflight/settings/use-nav2-radio") == 1) and (getprop("/it-autoflight/output/lat") == 2)) { make_appr_active(); } else { return 0; @@ -712,6 +792,276 @@ var aland1 = func { } # Autoland Stage 2 Logic (Rollout) +# Not yet working, planned. + +# VNAV Profile Mode +var prof_main = func { + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { + var altinput = getprop("/it-autoflight/input/alt"); + setprop("/it-autoflight/internal/alt", altinput); + var wp_curr = getprop("/autopilot/route-manager/current-wp"); + var vnav_alt_wp = getprop("/autopilot/route-manager/route/wp",wp_curr,"altitude-ft"); + if (getprop("/it-autoflight/internal/prof-wp-alt") == vnav_alt_wp) { + # Do nothing + } else { + setprop("/it-autoflight/internal/prof-wp-alt", vnav_alt_wp); + } + vnav_alt_selector(); + } else { + setprop("/it-autoflight/input/vert", 4); + } +} + +setlistener("/it-autoflight/input/alt", func { + if (getprop("/it-autoflight/output/vert") == 8) { + vnav_alt_selector(); + prof_run(); + } +}); + +setlistener("/it-autoflight/internal/prof-wp-alt", func { + if (getprop("/it-autoflight/output/vert") == 8) { + vnav_alt_selector(); + prof_run(); + } +}); + +setlistener("/autopilot/route-manager/current-wp", func { + if (getprop("/it-autoflight/output/vert") == 8) { + vnav_alt_selector(); + prof_run(); + } +}); + +var prof_run = func { + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { + var wp_curr = getprop("/autopilot/route-manager/current-wp"); + var wptnum = getprop("/autopilot/route-manager/current-wp"); + var vnav_alt_wp = getprop("/autopilot/route-manager/route/wp",wp_curr,"altitude-ft"); + if ((wptnum - 1) < getprop("/autopilot/route-manager/route/num")) { + var vnav_alt_wp_prev = getprop("/autopilot/route-manager/route/wp",wp_curr - 1,"altitude-ft"); + if (vnav_alt_wp_prev > vnav_alt_wp) { + vnav_des_todt.start(); + setprop("/it-autoflight/internal/prof-mode", "DES"); + } else if (vnav_alt_wp_prev == vnav_alt_wp) { + vnav_des_todt.stop(); + setprop("/it-autoflight/internal/top-of-des-nm", 0); + setprop("/it-autoflight/internal/prof-mode", "XX"); + } else if (vnav_alt_wp_prev <= vnav_alt_wp) { + vnav_des_todt.stop(); + setprop("/it-autoflight/internal/top-of-des-nm", 0); + setprop("/it-autoflight/internal/prof-mode", "CLB"); + } + } else { + vnav_des_todt.stop(); + setprop("/it-autoflight/internal/top-of-des-nm", 0); + } + if (vnav_alt_wp > 100) { + if (getprop("/it-autoflight/internal/prof-mode") == "CLB") { + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var valt = getprop("/it-autoflight/internal/prof-alt"); + var vdif = calt - valt; + if (vdif > 550 or vdif < -550) { + prof_clb(); + } else { + vnav_alt_sel(); + } + } else if (getprop("/it-autoflight/internal/prof-mode") == "DES") { + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var valt = getprop("/it-autoflight/internal/prof-alt"); + var vdif = calt - valt; + if (vdif > 550 or vdif < -550) { + prof_des_spd(); + } else { + vnav_alt_sel(); + } + } else if (getprop("/it-autoflight/internal/prof-mode") == "XX") { + # Do nothing for now + } + } else { + setprop("/it-autoflight/input/vert", 4); + } + } else { + setprop("/it-autoflight/input/vert", 4); + } +} + +# VNAV Top of Descent +var vnav_des_tod = func { + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { + var wp_curr = getprop("/autopilot/route-manager/current-wp"); + var vnav_alt_wp = getprop("/autopilot/route-manager/route/wp",wp_curr,"altitude-ft"); + var alt_curr = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var dist = getprop("/autopilot/route-manager/wp/dist"); + var vdist = dist - 1; + var alttl = abs(alt_curr - vnav_alt_wp); + setprop("/it-autoflight/internal/top-of-des-nm", (alttl / 1000) * 3); + if (vdist < getprop("/it-autoflight/internal/top-of-des-nm")) { + vnav_des_todt.stop(); + var salt = getprop("/it-autoflight/internal/alt"); + var valt = getprop("/it-autoflight/internal/prof-wp-alt"); + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var sdif = abs(calt - salt); + var vdif = abs(calt - valt); + if (sdif <= vdif) { + setprop("/it-autoflight/internal/prof-alt", getprop("/it-autoflight/internal/alt")); + } else if (sdif > vdif) { + setprop("/it-autoflight/internal/prof-alt", getprop("/it-autoflight/internal/prof-wp-alt")); + } + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var valt = getprop("/it-autoflight/internal/prof-alt"); + var vdif = calt - valt; + if (vdif > 550 or vdif < -550) { + prof_des_spd(); + } else { + vnav_alt_sel(); + } + } + } +} + +# VNAV Altitude Selector +var vnav_alt_selector = func { + var salt = getprop("/it-autoflight/internal/alt"); + var valt = getprop("/it-autoflight/internal/prof-wp-alt"); + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var sdif = abs(calt - salt); + var vdif = abs(calt - valt); + if (getprop("/it-autoflight/internal/prof-mode") == "CLB") { + if (sdif <= vdif) { + setprop("/it-autoflight/internal/prof-alt", getprop("/it-autoflight/internal/alt")); + } else if (sdif > vdif) { + setprop("/it-autoflight/internal/prof-alt", getprop("/it-autoflight/internal/prof-wp-alt")); + } + } else if (getprop("/it-autoflight/internal/prof-mode") == "DES") { + var dist = getprop("/autopilot/route-manager/wp/dist"); + var vdist = dist - 1; + if (vdist < getprop("/it-autoflight/internal/top-of-des-nm")) { + if (sdif <= vdif) { + setprop("/it-autoflight/internal/prof-alt", getprop("/it-autoflight/internal/alt")); + } else if (sdif > vdif) { + setprop("/it-autoflight/internal/prof-alt", getprop("/it-autoflight/internal/prof-wp-alt")); + } + } + } +} + +# VNAV Selector +var vnav_alt_sel = func { + setprop("/it-autoflight/internal/max-pitch", 8); + setprop("/it-autoflight/internal/min-pitch", -5); + setprop("/it-autoflight/output/thr-mode", 0); + setprop("/it-autoflight/output/prof-vert", 0); + setprop("/it-autoflight/mode/thr", "THRUST"); + setprop("/it-autoflight/mode/prof", "VNAV CAP"); + vnav_minmaxt.start(); +} + +# VNAV Climb +var prof_clb = func { + vnav_des_fpmt.stop(); + setprop("/it-autoflight/output/thr-mode", 2); + setprop("/it-autoflight/mode/thr", " PITCH"); + setprop("/it-autoflight/output/prof-vert", 4); + setprop("/it-autoflight/mode/prof", "VNAV SPD"); + vnav_altcaptt.start(); +} + +# VNAV Descent +var prof_des_spd = func { + vnav_des_fpmt.stop(); + setprop("/it-autoflight/output/thr-mode", 1); + setprop("/it-autoflight/mode/thr", " PITCH"); + setprop("/it-autoflight/output/prof-vert", 4); + setprop("/it-autoflight/mode/prof", "VNAV SPD"); + vnav_altcaptt.start(); +} +var prof_des_pth = func { + vnav_des_fpmt.start(); + setprop("/it-autoflight/output/thr-mode", 0); + setprop("/it-autoflight/mode/thr", "THRUST"); + setprop("/it-autoflight/output/prof-vert", 1); + setprop("/it-autoflight/mode/prof", "VNAV PTH"); + vnav_altcaptt.start(); +} +var vnav_des_fpm = func { + if (getprop("/autopilot/route-manager/route/num") > 0 and getprop("/autopilot/route-manager/active") == 1) { + var gndspd = getprop("/velocities/groundspeed-kt"); + var desfpm = ((gndspd * 0.5) * 10); + setprop("/it-autoflight/internal/prof-fpm", desfpm); + } +} + +# VNAV Capture +var vnav_altcapt = func { + var vsnow = getprop("/it-autoflight/internal/vert-speed-fpm"); + if ((vsnow >= 0 and vsnow < 500) or (vsnow < 0 and vsnow > -500)) { + setprop("/it-autoflight/internal/captvs", 100); + setprop("/it-autoflight/internal/captvsneg", -100); + } else if ((vsnow >= 500 and vsnow < 1000) or (vsnow < -500 and vsnow > -1000)) { + setprop("/it-autoflight/internal/captvs", 150); + setprop("/it-autoflight/internal/captvsneg", -150); + } else if ((vsnow >= 1000 and vsnow < 1500) or (vsnow < -1000 and vsnow > -1500)) { + setprop("/it-autoflight/internal/captvs", 200); + setprop("/it-autoflight/internal/captvsneg", -200); + } else if ((vsnow >= 1500 and vsnow < 2000) or (vsnow < -1500 and vsnow > -2000)) { + setprop("/it-autoflight/internal/captvs", 300); + setprop("/it-autoflight/internal/captvsneg", -300); + } else if ((vsnow >= 2000 and vsnow < 3000) or (vsnow < -2000 and vsnow > -3000)) { + setprop("/it-autoflight/internal/captvs", 450); + setprop("/it-autoflight/internal/captvsneg", -450); + } else if ((vsnow >= 3000 and vsnow < 4000) or (vsnow < -3000 and vsnow > -4000)) { + setprop("/it-autoflight/internal/captvs", 650); + setprop("/it-autoflight/internal/captvsneg", -650); + } else if ((vsnow >= 4000 and vsnow < 5000) or (vsnow < -4000 and vsnow > -5000)) { + setprop("/it-autoflight/internal/captvs", 1000); + setprop("/it-autoflight/internal/captvsneg", -1000); + } else if ((vsnow >= 5000) or (vsnow < -5000)) { + setprop("/it-autoflight/internal/captvs", 1250); + setprop("/it-autoflight/internal/captvsneg", -1250); + } + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var valt = getprop("/it-autoflight/internal/prof-alt"); + var vdif = calt - valt; + if (vdif < getprop("/it-autoflight/internal/captvs") and vdif > getprop("/it-autoflight/internal/captvsneg")) { + vnav_capture_alt(); + } +} + +var vnav_capture_alt = func { + vnav_altcaptt.stop(); + vnav_des_fpmt.stop(); + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var alt = getprop("/it-autoflight/internal/alt"); + var valt = getprop("/it-autoflight/internal/prof-alt"); + var pitchdeg = getprop("/orientation/pitch-deg"); + if (calt < valt) { + setprop("/it-autoflight/internal/max-pitch", pitchdeg); + } else if (calt > valt) { + setprop("/it-autoflight/internal/min-pitch", pitchdeg); + } + vnav_minmaxt.start(); + setprop("/it-autoflight/output/thr-mode", 0); + setprop("/it-autoflight/output/prof-vert", 0); + setprop("/it-autoflight/mode/thr", "THRUST"); + setprop("/it-autoflight/mode/prof", "VNAV CAP"); +} + +# VNAV Min and Max Pitch Reset +var vnav_minmax = func { + var calt = getprop("/instrumentation/altimeter/indicated-altitude-ft"); + var valt = getprop("/it-autoflight/internal/prof-alt"); + var vdif = calt - valt; + if (vdif < 100 and vdif > -100) { + setprop("/it-autoflight/internal/max-pitch", 8); + setprop("/it-autoflight/internal/min-pitch", -5); + var vertmode = getprop("/it-autoflight/output/prof-vert"); + if (vertmode == 0) { + setprop("/it-autoflight/mode/prof", "VNAV HLD"); + } + vnav_minmaxt.stop(); + } +} # CWS var cwsroll = func { @@ -743,6 +1093,10 @@ setlistener("/it-autoflight/input/hdg", func { setprop("/autopilot/settings/heading-bug-deg", getprop("/it-autoflight/input/hdg")); }); +setlistener("/it-autoflight/internal/alt", func { + setprop("/autopilot/settings/target-altitude-ft", getprop("/it-autoflight/internal/alt")); +}); + # Timers var altcaptt = maketimer(0.5, altcapt); var thrustmodet = maketimer(0.5, thrustmode); @@ -757,3 +1111,8 @@ var reduct = maketimer(0.5, toga_reduc); var latarmt = maketimer(0.5, latarms); var fpa_calct = maketimer(0.1, fpa_calc); var lnavwptt = maketimer(1, lnavwpt); +var prof_maint = maketimer(0.5, prof_main); +var vnav_altcaptt = maketimer(0.5, vnav_altcapt); +var vnav_minmaxt = maketimer(0.5, vnav_minmax); +var vnav_des_fpmt = maketimer(0.5, vnav_des_fpm); +var vnav_des_todt = maketimer(0.5, vnav_des_tod); diff --git a/Systems/autopilot-dlg.xml b/Systems/autopilot-dlg.xml index 136e0d5c..2d0f08ac 100644 --- a/Systems/autopilot-dlg.xml +++ b/Systems/autopilot-dlg.xml @@ -215,9 +215,8 @@ hbox + + + + hbox + + + + + 0 + 0 + + + + + 1 + + center + /it-autoflight/mode/prof + 1 + + + + table @@ -956,8 +998,8 @@ property-adjust /it-autoflight/input/fpa - -9.9 - 9.9 + -20.9 + 20.9 -1 false @@ -971,8 +1013,8 @@ property-adjust /it-autoflight/input/fpa - -9.9 - 9.9 + -20.9 + 20.9 -0.1 false @@ -998,8 +1040,8 @@ property-adjust /it-autoflight/input/fpa - -9.9 - 9.9 + -20.9 + 20.9 0.1 false @@ -1014,8 +1056,8 @@ property-adjust /it-autoflight/input/fpa - -9.9 - 9.9 + -20.9 + 20.9 1 false diff --git a/Systems/custom-autothrust.xml b/Systems/custom-autothrust.xml index 197035fb..398f964a 100644 --- a/Systems/custom-autothrust.xml +++ b/Systems/custom-autothrust.xml @@ -42,11 +42,10 @@ /controls/engines/engine[0]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.0 @@ -91,11 +90,10 @@ /controls/engines/engine[0]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.0 @@ -133,11 +131,10 @@ /controls/engines/engine[0]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.08 @@ -175,11 +172,10 @@ /controls/engines/engine[0]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.0 @@ -222,11 +218,10 @@ /controls/engines/engine[1]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.0 @@ -271,11 +266,10 @@ /controls/engines/engine[1]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.0 @@ -313,11 +307,10 @@ /controls/engines/engine[1]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.08 @@ -355,11 +348,10 @@ /controls/engines/engine[1]/throttle-cmd - 0.1 + 0.01 1.0 0.1 0.0 - 10.0 0.00001 0.0 diff --git a/Systems/it-autoflight.xml b/Systems/it-autoflight.xml index 81f564c2..f98f02e4 100644 --- a/Systems/it-autoflight.xml +++ b/Systems/it-autoflight.xml @@ -39,228 +39,220 @@ - - MAGNETIC HDG ERROR DEG - false - gain - - /it-autoflight/input/hdg - - /orientation/heading-magnetic-deg - -1.0 - - - /it-autoflight/internal/heading-bug-error-deg - /it-autoflight/internal/fdm-heading-bug-error-deg - - -180 - 180 - - 1.0 - + + MAGNETIC HDG ERROR DEG + false + gain + + /it-autoflight/input/hdg + + /orientation/heading-magnetic-deg + -1.0 + + + /it-autoflight/internal/heading-bug-error-deg + /it-autoflight/internal/fdm-heading-bug-error-deg + + -180 + 180 + + 1.0 + - - TRUE HDG ERROR DEG - false - gain - - /it-autoflight/input/hdg - - /orientation/heading-deg - -1.0 - - - /it-autoflight/internal/true-heading-error-deg - - -180 - 180 - - 1.0 - + + TRUE HDG ERROR DEG + false + gain + + /it-autoflight/input/hdg + + /orientation/heading-deg + -1.0 + + + /it-autoflight/internal/true-heading-error-deg + + -180 + 180 + + 1.0 + - - LNAV HDG ERROR DEG - false - gain - - /autopilot/settings/true-heading-deg - - /orientation/heading-deg - -1.0 - - - /it-autoflight/internal/lnav-hdg-error-deg - - -180 - 180 - - 1.0 - + + LNAV HDG ERROR DEG + false + gain + + /autopilot/settings/true-heading-deg + + /orientation/heading-deg + -1.0 + + + /it-autoflight/internal/lnav-hdg-error-deg + + -180 + 180 + + 1.0 + - - NAV ERROR DEG - false - gain - - - - /it-autoflight/settings/use-nav2-radio - 0 - - - /instrumentation/nav[0]/radials/target-auto-hdg-deg - - /orientation/heading-deg - -1.0 - - - - - - /it-autoflight/settings/use-nav2-radio - 1 - - - /instrumentation/nav[1]/radials/target-auto-hdg-deg - - /orientation/heading-deg - -1.0 - - - /it-autoflight/internal/nav-heading-error-deg - - -180 - 180 - - 1.0 - + + NAV ERROR DEG + false + gain + + + + /it-autoflight/settings/use-nav2-radio + 0 + + + /instrumentation/nav[0]/radials/target-auto-hdg-deg + + /orientation/heading-deg + -1.0 + + + + + + /it-autoflight/settings/use-nav2-radio + 1 + + + /instrumentation/nav[1]/radials/target-auto-hdg-deg + + /orientation/heading-deg + -1.0 + + + /it-autoflight/internal/nav-heading-error-deg + + -180 + 180 + + 1.0 + - - NAV COURSE ERROR - false - gain - - - - /it-autoflight/settings/use-nav2-radio - 0 - - - /instrumentation/nav[0]/radials/selected-deg - - /orientation/heading-magnetic-deg - -1.0 - - - - - - /it-autoflight/settings/use-nav2-radio - 1 - - - /instrumentation/nav[1]/radials/selected-deg - - /orientation/heading-magnetic-deg - -1.0 - - - /it-autoflight/internal/nav-course-error - - -180 - 180 - - 1.0 - - - + + NAV COURSE ERROR + false + gain + + + + /it-autoflight/settings/use-nav2-radio + 0 + + + /instrumentation/nav[0]/radials/selected-deg + + /orientation/heading-magnetic-deg + -1.0 + + + + + + /it-autoflight/settings/use-nav2-radio + 1 + + + /instrumentation/nav[1]/radials/selected-deg + + /orientation/heading-magnetic-deg + -1.0 + + + /it-autoflight/internal/nav-course-error + + -180 + 180 + + 1.0 + - - INTERNAL VERTICAL SPEED COMPUTER - false - gain - /velocities/vertical-speed-fps - /it-autoflight/internal/vert-speed-fpm - 60.0 - + + INTERNAL VERTICAL SPEED COMPUTER + false + gain + /velocities/vertical-speed-fps + /it-autoflight/internal/vert-speed-fpm + 60.0 + - - IAS 5 SECOND PREDICTOR - false - /velocities/airspeed-kt - /it-autoflight/internal/lookahead-5-sec-airspeed-kt - 5.0 - 0.0 - + + IAS 5 SECOND PREDICTOR + false + /instrumentation/airspeed-indicator/indicated-speed-kt + /it-autoflight/internal/lookahead-5-sec-airspeed-kt + 5.0 + 0.0 + - - IAS 10 SECOND PREDICTOR - false - /velocities/airspeed-kt - /it-autoflight/internal/lookahead-10-sec-airspeed-kt - 10.0 - 0.0 - - - - MACH 10 SECOND PREDICTOR - false - /velocities/mach - /it-autoflight/internal/lookahead-10-sec-mach - 10.0 - 0.0 - + + IAS 10 SECOND PREDICTOR + false + /instrumentation/airspeed-indicator/indicated-speed-kt + /it-autoflight/internal/lookahead-10-sec-airspeed-kt + 10.0 + 0.0 + + + + IAS 15 SECOND PREDICTOR + false + /instrumentation/airspeed-indicator/indicated-speed-kt + /it-autoflight/internal/lookahead-15-sec-airspeed-kt + 15.0 + 0.0 + - - STATIC PRESSURE COMPUTER - false - derivative - /systems/static[0]/pressure-inhg - /it-autoflight/internal/pressure-rate - 1.0 - + + MACH 10 SECOND PREDICTOR + false + /instrumentation/airspeed-indicator/indicated-mach + /it-autoflight/internal/lookahead-10-sec-mach + 10.0 + 0.0 + - - NAV1 TRACK ERROR - false - gain - - /instrumentation/nav[0]/radials/target-auto-hdg-deg - - /orientation/track-deg - -1.0 - - - /it-autoflight/internal/nav1-track-error-deg - - -180 - 180 - - 1.0 - + + STATIC PRESSURE COMPUTER + false + derivative + /systems/static[0]/pressure-inhg + /it-autoflight/internal/pressure-rate + 1.0 + + + + NAV1 TRACK ERROR + false + gain + + /instrumentation/nav[0]/radials/target-auto-hdg-deg + + /orientation/track-deg + -1.0 + + + /it-autoflight/internal/nav1-track-error-deg + + -180 + 180 + + 1.0 + - - TARGET ROLL CONTROLLER + + ROLL CONTROLLER: HDG/LNAV false - gain @@ -272,14 +264,6 @@ /it-autoflight/output/lat 1 - - /it-autoflight/output/lat - 4 - - - /it-autoflight/output/lat - 5 - @@ -331,63 +315,56 @@ /it-autoflight/config/cmd/roll-scale - - - - - /it-autoflight/output/lat - 4 - - - /it-autoflight/output/lat - 5 - - - + 0 - + /it-autoflight/internal/target-roll-deg - 0.5 - - - - /it-autoflight/output/lat - 0 - - - /it-autoflight/input/bank-limit - -1 - - - - - /it-autoflight/output/lat - 1 - - - -20 - - - - - /it-autoflight/output/lat - 0 - - - /it-autoflight/input/bank-limit - - - - - /it-autoflight/output/lat - 1 - - - 20 - - + + + /it-autoflight/config/cmd/roll-kp + + 0.0 + + + + /it-autoflight/output/lat + 1 + + + /it-autoflight/input/bank-limit + -1 + + + + + /it-autoflight/output/lat + 1 + + + -25 + + + + + /it-autoflight/output/lat + 1 + + + /it-autoflight/input/bank-limit + + + + + /it-autoflight/output/lat + 1 + + + 25 + + + VORLOC TRK @@ -446,9 +423,9 @@ /it-autoflight/internal/target-roll-deg - /it-autoflight/internal/roll-deg-cmd + /it-autoflight/internal/target-roll noise-spike - 10 + 15 @@ -472,7 +449,38 @@ /orientation/roll-deg - /it-autoflight/internal/roll-deg-cmd + + + + /it-autoflight/output/lat + 0 + + + /it-autoflight/output/lat + 1 + + + /it-autoflight/output/lat + 2 + + + + /it-autoflight/internal/target-roll + + + + + + /it-autoflight/output/lat + 4 + + + /it-autoflight/output/lat + 5 + + + + 0 /it-autoflight/internal/aileron-cmd @@ -547,7 +555,7 @@ /controls/flight/aileron noise-spike - 0.8 + 0.9 @@ -559,18 +567,45 @@ false - - /it-autoflight/output/vert - 0 - + + + /it-autoflight/output/vert + 0 + + + + /it-autoflight/output/vert + 8 + + + /it-autoflight/output/prof-vert + 0 + + + /it-autoflight/internal/altitude-5-sec-ahead + + + /it-autoflight/output/vert + 0 + + /it-autoflight/internal/alt + + + + /it-autoflight/output/vert + 8 + + + /it-autoflight/internal/prof-alt + /it-autoflight/internal/target-pitch-deg @@ -592,45 +627,6 @@ - - VERTICAL SPEED HOLD - false - - - - /it-autoflight/output/vert - 1 - - - - - /velocities/vertical-speed-fps - - - /it-autoflight/input/vs - 0.01666666 - - - /it-autoflight/internal/target-pitch-deg - - - - /it-autoflight/config/cmd/vs - - 1.0 - 0.1 - 0.0 - 5.0 - 0.00001 - - -10 - - - 30 - - - - FPA HOLD false @@ -760,16 +756,20 @@ - FLIGHT LEVEL CHANGE + FLCH SPEED BY PITCH false - - + + /it-autoflight/output/vert - 4 - - + 7 + + + /it-autoflight/output/vert + 8 + + @@ -779,7 +779,7 @@ 0 - /it-autoflight/internal/lookahead-10-sec-airspeed-kt + /it-autoflight/internal/lookahead-15-sec-airspeed-kt @@ -789,7 +789,7 @@ /it-autoflight/internal/lookahead-10-sec-mach - 1000.0 + 500.0 @@ -808,10 +808,10 @@ /it-autoflight/input/spd-mach - 1000.0 + 500.0 - /it-autoflight/internal/target-pitch-deg + /it-autoflight/internal/target-fps @@ -829,7 +829,7 @@ /instrumentation/altimeter/indicated-altitude-ft - 2 + 1.6 @@ -838,7 +838,7 @@ /instrumentation/altimeter/indicated-altitude-ft - -7.0 + -100 @@ -847,7 +847,7 @@ /instrumentation/altimeter/indicated-altitude-ft - 25.0 + 166 @@ -856,7 +856,7 @@ /instrumentation/altimeter/indicated-altitude-ft - 0.0 + -1.6 @@ -866,16 +866,14 @@ false - - - /it-autoflight/output/vert - 7 - - + + /it-autoflight/output/vert + 7 + - /it-autoflight/internal/lookahead-10-sec-airspeed-kt + /it-autoflight/internal/lookahead-15-sec-airspeed-kt @@ -896,7 +894,7 @@ /it-autoflight/input/spd-kts - /it-autoflight/internal/target-pitch-deg + /it-autoflight/internal/target-fps @@ -908,14 +906,227 @@ 10.0 0.00001 - 2 + 1.6 - 25.0 + 166 + + VNAV SPEED BY PITCH + false + + + + /it-autoflight/output/vert + 8 + + + + + + + /it-autoflight/input/kts-mach + 0 + + + /it-autoflight/internal/lookahead-15-sec-airspeed-kt + + + + + /it-autoflight/input/kts-mach + 1 + + + /it-autoflight/internal/lookahead-10-sec-mach + 500.0 + + + + + /it-autoflight/input/kts-mach + 0 + + + /it-autoflight/input/spd-kts + + + + + /it-autoflight/input/kts-mach + 1 + + + /it-autoflight/input/spd-mach + 500.0 + + + /it-autoflight/internal/target-fps + + + + /it-autoflight/config/cmd/flch + + 1.0 + 0.1 + 0.0 + 10.0 + 0.00001 + + + + /it-autoflight/internal/prof-alt + /instrumentation/altimeter/indicated-altitude-ft + + + 1.6 + + + + + /it-autoflight/internal/prof-alt + /instrumentation/altimeter/indicated-altitude-ft + + + -100 + + + + + /it-autoflight/internal/prof-alt + /instrumentation/altimeter/indicated-altitude-ft + + + 166 + + + + + /it-autoflight/internal/prof-alt + /instrumentation/altimeter/indicated-altitude-ft + + + -1.6 + + + + + + FPM HOLD + false + + + + + /it-autoflight/output/vert + 1 + + + /it-autoflight/output/vert + 4 + + + /it-autoflight/output/vert + 7 + + + + /it-autoflight/output/vert + 8 + + + + /it-autoflight/output/prof-vert + 1 + + + /it-autoflight/output/prof-vert + 4 + + + + + + + + /instrumentation/vertical-speed-indicator/indicated-speed-fpm + 0.01666666 + + + + + /it-autoflight/output/vert + 1 + + + /it-autoflight/input/vs + 0.01666666 + + + + + + /it-autoflight/output/vert + 4 + + + /it-autoflight/output/vert + 7 + + + + /it-autoflight/output/vert + 8 + + + /it-autoflight/output/prof-vert + 4 + + + + + /it-autoflight/internal/target-fps + + + + + + /it-autoflight/output/vert + 8 + + + /it-autoflight/output/prof-vert + 1 + + + + /it-autoflight/internal/prof-fpm + -0.01666666 + + + /it-autoflight/internal/target-pitch-deg + + + + /it-autoflight/config/cmd/vs + + 1.0 + 0.1 + 0.0 + 5.0 + 0.00001 + + -10 + + + 25 + + + + IT-CONTROLLER: TARGET PITCH CMD false @@ -924,7 +1135,7 @@ /it-autoflight/internal/target-pitch-deg - /it-autoflight/internal/pitch-deg-cmd + /it-autoflight/internal/target-pitch noise-spike 10 @@ -950,7 +1161,7 @@ /orientation/pitch-deg - /it-autoflight/internal/pitch-deg-cmd + /it-autoflight/internal/target-pitch /it-autoflight/internal/elevator-cmd @@ -1001,7 +1212,7 @@ /controls/flight/elevator noise-spike - 0.3 + 0.4 @@ -1370,7 +1581,7 @@ - /it-autoflight/internal/roll-deg-cmd + /it-autoflight/internal/target-roll /orientation/roll-deg @@ -1387,7 +1598,7 @@ - /it-autoflight/internal/pitch-deg-cmd + /it-autoflight/internal/target-pitch /orientation/pitch-deg diff --git a/Systems/it-autothrust.xml b/Systems/it-autothrust.xml index 3080687b..eaaf3ff5 100644 --- a/Systems/it-autothrust.xml +++ b/Systems/it-autothrust.xml @@ -8,227 +8,207 @@ - - - IAS THR - false - - - - - /it-autoflight/input/kts-mach - 0 - - - /it-autoflight/output/thr-mode - 0 - - - /it-autoflight/output/athr - 1 - - - /it-autoflight/output/retard - 0 - - - - - - /velocities/airspeed-kt - - - /it-autoflight/input/spd-kts - - - /controls/flight/throttle-cmd - - - 0.1 - 1.0 - 0.1 - 0.0 - 10.0 - 0.00001 - 0.0 - 0.94 - - + + + IAS THR + false + + + + + /it-autoflight/input/kts-mach + 0 + + + /it-autoflight/output/thr-mode + 0 + + + /it-autoflight/output/athr + 1 + + + /it-autoflight/output/retard + 0 + + + + + + /instrumentation/airspeed-indicator/indicated-speed-kt + + + /it-autoflight/input/spd-kts + + + /controls/flight/throttle-cmd + + + 0.1 + 1.0 + 0.1 + 0.0 + 10.0 + 0.00001 + 0.0 + 0.94 + + - + - - MACH THR - false - - - - - /it-autoflight/input/kts-mach - 1 - - - /it-autoflight/output/thr-mode + + MACH THR + false + + + + + /it-autoflight/input/kts-mach + 1 + + + /it-autoflight/output/thr-mode + 0 + + + /it-autoflight/output/athr + 1 + + + /it-autoflight/output/retard + 0 + + + + + + /instrumentation/airspeed-indicator/indicated-mach + 1000.0 + + + /it-autoflight/input/spd-mach + 1000.0 + + + /controls/flight/throttle-cmd + + + 0.1 + 1.0 + 0.1 + 0.0 + 10.0 + 0.00001 + 0.0 + 0.94 + + + + + + IDLE + false + + + + + + /it-autoflight/output/thr-mode + 1 + + + /it-autoflight/output/retard + 1 + + + + /it-autoflight/output/athr + 1 + + + + + + 900 + + 0 - - - /it-autoflight/output/athr - 1 - - - /it-autoflight/output/retard + + + /controls/flight/throttle-cmd + + + 0.1 + 1.0 + 0.1 + 0.0 + 10.0 + 0.00001 + + + + /it-autoflight/output/retard + 0 + + + 0.08 + + + + + /it-autoflight/output/retard + 1 + + + 0 + + 0.2 + + + + + + CLB + false + + + + + /it-autoflight/output/thr-mode + 2 + + + /it-autoflight/output/athr + 1 + + + /it-autoflight/output/retard + 0 + + + + + 0 - - - - - - /velocities/mach - 1000.0 - - - /it-autoflight/input/spd-mach - 1000.0 - - - /controls/flight/throttle-cmd - - - 0.1 - 1.0 - 0.1 - 0.0 - 10.0 - 0.00001 - 0.0 - 0.94 - - - - - - IDLE - false - - - - - /it-autoflight/output/thr-mode - 1 - - - /it-autoflight/output/athr - 1 - - - /it-autoflight/output/retard - 0 - - - - - - /velocities/airspeed-kt - - - 0 - - - /controls/flight/throttle-cmd - - - 0.1 - 1.0 - 0.1 - 0.0 - 10.0 - 0.00001 - 0.08 - 0.2 - - - - - - CLB - false - - - - - /it-autoflight/output/thr-mode - 2 - - - /it-autoflight/output/athr - 1 - - - /it-autoflight/output/retard - 0 - - - - - - /velocities/airspeed-kt - - - 900 - - - /controls/flight/throttle-cmd - - - 0.1 - 1.0 - 0.1 - 0.0 - 10.0 - 0.00001 - 0.0 - 0.95 - - - - - - RETARD - false - - - - - /it-autoflight/output/athr - 1 - - - /it-autoflight/output/retard - 1 - - - - - - /velocities/airspeed-kt - - - 0 - - - /controls/flight/throttle-cmd - - - 0.1 - 1.0 - 0.1 - 0.0 - 10.0 - 0.00001 - 0.005 - 0.2 - - + + + 900 + + + /controls/flight/throttle-cmd + + + 0.1 + 1.0 + 0.1 + 0.0 + 10.0 + 0.00001 + 0.0 + 0.95 + + IT-CONTROLLER: THRUST CMD @@ -244,6 +224,7 @@ + /controls/flight/throttle-cmd @@ -270,7 +251,7 @@ - 0.40 + 0.20 @@ -285,7 +266,7 @@ - 0.20 + 0.05 @@ -294,7 +275,7 @@ 1 - 0.20 + 0.10