This commit is contained in:
commit
11a31f63a2
24 changed files with 625 additions and 464 deletions
|
@ -315,22 +315,21 @@
|
|||
<fpa>0.30</fpa>
|
||||
</cmd>
|
||||
<autoland>
|
||||
<kp-roll>0.10</kp-roll>
|
||||
<kp-pitch>0.03</kp-pitch>
|
||||
<kp-rudder>-0.25</kp-rudder>
|
||||
</autoland>
|
||||
</config>
|
||||
<settings>
|
||||
<default-bank-limit>30</default-bank-limit> <!-- Set the Default Bank Limit -->
|
||||
<default-bank-limit>25</default-bank-limit> <!-- Set the Default Bank Limit -->
|
||||
<enable-cws>0</enable-cws> <!-- Enable/Disable CWS -->
|
||||
<flare-altitude>40</flare-altitude> <!-- Autoland Flare AGL -->
|
||||
<land-enable>1</land-enable> <!-- Enable/Disable Autoland -->
|
||||
<land-flap>0.645</land-flap> <!-- Minimum Flap used for Landing -->
|
||||
<retard-ft>40</retard-ft> <!-- Enable Thrust Retard -->
|
||||
<retard-enable>0</retard-enable> <!-- AGL to Thrust Retard -->
|
||||
<togaspd>162</togaspd> <!-- V2 + 10kts -->
|
||||
<togaspd>157</togaspd> <!-- V2 + 10kts -->
|
||||
<lat-agl-ft>30</lat-agl-ft> <!-- Set to 999999 if you do not want T/O to change automatically to HDG, or LNAV -->
|
||||
<reduc-agl-ft>3000</reduc-agl-ft> <!-- Set to 999999 if you do not want TOGA to change automatically to FLCH -->
|
||||
<autoland-without-ap>1</autoland-without-ap> <!-- Engage LAND and FLARE Modes even if the AP is off -->
|
||||
</settings>
|
||||
<output>
|
||||
<ap1>0</ap1>
|
||||
|
@ -392,6 +391,7 @@
|
|||
<fault type="bool">false</fault>
|
||||
</ir>
|
||||
<onbat type="bool">false</onbat>
|
||||
<skip userarchive="y" type="bool">0</skip>
|
||||
</adirs>
|
||||
<APU>
|
||||
<fire-switch type="bool">0</fire-switch>
|
||||
|
@ -521,7 +521,7 @@
|
|||
|
||||
<options n="0">
|
||||
<pfd n="0">
|
||||
<sidestick-pos type="bool">0</sidestick-pos>
|
||||
<sidestick-pos userarchive="y" type="bool">0</sidestick-pos>
|
||||
</pfd>
|
||||
</options>
|
||||
|
||||
|
@ -636,11 +636,11 @@
|
|||
<keyboard>
|
||||
<key n="127">
|
||||
<name>DEL</name>
|
||||
<desc>REV MSG</desc>
|
||||
<desc>Simple Engage/Disengage reversers</desc>
|
||||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>
|
||||
gui.popupTip("Use w to activate reverse thrust, and q to deactivate reverse thrust.");
|
||||
systems.toggleFastRevThrust();
|
||||
</script>
|
||||
</binding>
|
||||
</key>
|
||||
|
@ -650,7 +650,7 @@
|
|||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>
|
||||
systems.un_rev_thrust();
|
||||
systems.unRevThrust();
|
||||
</script>
|
||||
</binding>
|
||||
</key>
|
||||
|
@ -660,7 +660,7 @@
|
|||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>
|
||||
systems.do_rev_thrust();
|
||||
systems.doRevThrust();
|
||||
</script>
|
||||
</binding>
|
||||
</key>
|
||||
|
@ -670,7 +670,7 @@
|
|||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>
|
||||
systems.do_idle_thrust();
|
||||
systems.doIdleThrust();
|
||||
</script>
|
||||
</binding>
|
||||
</key>
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
|
||||
<text>
|
||||
<halign>center</halign>
|
||||
<label>A3XX Logic is startup up...</label>
|
||||
<label>Initializing...</label>
|
||||
</text>
|
||||
|
||||
</group>
|
||||
|
|
|
@ -12,15 +12,16 @@ var fbw_dlg = gui.Dialog.new("sim/gui/dialogs/acconfig/fbw/dialog", "Aircraft/A3
|
|||
init_dlg.open();
|
||||
|
||||
setlistener("/sim/signals/fdm-initialized", func {
|
||||
# loadSettings();
|
||||
init_dlg.close();
|
||||
welcome_dlg.open();
|
||||
});
|
||||
|
||||
#var loadSettings = func {
|
||||
# var file = io.open(getprop("/sim/aircraft-dir")~"/AircraftConfig/settings.conf","r+");
|
||||
# print(file);
|
||||
#}
|
||||
var saveSettings = func {
|
||||
aircraft.data.add("/options/pfd/sidestick-pos", "/controls/adirs/skip");
|
||||
aircraft.data.save();
|
||||
}
|
||||
|
||||
saveSettings();
|
||||
|
||||
var systemsReset = func {
|
||||
systems.elec_init();
|
||||
|
|
|
@ -59,6 +59,10 @@
|
|||
<halign>left</halign>
|
||||
<label>E - Set Idle Thrust</label>
|
||||
</text>
|
||||
<text>
|
||||
<halign>left</halign>
|
||||
<label>DEL - Toggle Reverse Thrust</label>
|
||||
</text>
|
||||
<text>
|
||||
<halign>left</halign>
|
||||
<label>CTRL + B - Cycle Spoilers</label>
|
||||
|
|
|
@ -288,7 +288,7 @@
|
|||
<hrule/>
|
||||
|
||||
<checkbox>
|
||||
<label>Skip IRS Alignment</label>
|
||||
<label>Skip ADIRS Alignment</label>
|
||||
<halign>left</halign>
|
||||
<property>/controls/adirs/skip</property>
|
||||
<binding>
|
||||
|
@ -298,6 +298,12 @@
|
|||
<binding>
|
||||
<command>dialog-apply</command>
|
||||
</binding>
|
||||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>
|
||||
acconfig.saveSettings();
|
||||
</script>
|
||||
</binding>
|
||||
<live>true</live>
|
||||
</checkbox>
|
||||
|
||||
|
@ -312,6 +318,12 @@
|
|||
<binding>
|
||||
<command>dialog-apply</command>
|
||||
</binding>
|
||||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>
|
||||
acconfig.saveSettings();
|
||||
</script>
|
||||
</binding>
|
||||
<live>true</live>
|
||||
</checkbox>
|
||||
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
skipADIRS=0
|
||||
showPFDSideStick=0
|
|
@ -2132,13 +2132,7 @@
|
|||
<name>Engine 1 throttle lever</name>
|
||||
<type>rotate</type>
|
||||
<object-name>thr_l</object-name>
|
||||
<condition>
|
||||
<not-equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
</condition>
|
||||
<property>controls/engines/engine[0]/throttle-pos</property>
|
||||
<property>controls/engines/engine[0]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>10</dep></entry>
|
||||
<entry><ind>0.59999</ind><dep>33</dep></entry>
|
||||
|
@ -2168,16 +2162,10 @@
|
|||
<name>Engine 1 throttle lever rev</name>
|
||||
<type>rotate</type>
|
||||
<object-name>thr_l</object-name>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>controls/engines/engine[0]/throttle-pos</property>
|
||||
<property>controls/engines/engine[0]/throttle-rev</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00</ind><dep> 0</dep></entry>
|
||||
<entry><ind>0.25</ind><dep>-10</dep></entry>
|
||||
<entry><ind>0.50</ind><dep>-10</dep></entry>
|
||||
</interpolation>
|
||||
<axis>
|
||||
<x>0</x>
|
||||
|
@ -2221,13 +2209,7 @@
|
|||
<name>Engine 2 throttle lever</name>
|
||||
<type>rotate</type>
|
||||
<object-name>thr_r</object-name>
|
||||
<condition>
|
||||
<not-equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>1</value>
|
||||
</not-equals>
|
||||
</condition>
|
||||
<property>controls/engines/engine[1]/throttle-pos</property>
|
||||
<property>controls/engines/engine[1]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>10</dep></entry>
|
||||
<entry><ind>0.59999</ind><dep>33</dep></entry>
|
||||
|
@ -2257,16 +2239,10 @@
|
|||
<name>Engine 2 throttle lever rev</name>
|
||||
<type>rotate</type>
|
||||
<object-name>thr_r</object-name>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>controls/engines/engine[1]/throttle-pos</property>
|
||||
<property>controls/engines/engine[1]/throttle-rev</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00</ind><dep> 0</dep></entry>
|
||||
<entry><ind>0.25</ind><dep>-10</dep></entry>
|
||||
<entry><ind>0.50</ind><dep>-10</dep></entry>
|
||||
</interpolation>
|
||||
<axis>
|
||||
<x>0</x>
|
||||
|
|
|
@ -931,7 +931,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos1</object-name>
|
||||
<property>/controls/engines/engine[0]/throttle</property>
|
||||
<property>/controls/engines/engine[0]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>-12</dep></entry>
|
||||
<entry><ind>0.23350</ind><dep> 53</dep></entry>
|
||||
|
@ -962,7 +962,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos2</object-name>
|
||||
<property>/controls/engines/engine[1]/throttle</property>
|
||||
<property>/controls/engines/engine[1]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>-12</dep></entry>
|
||||
<entry><ind>0.23350</ind><dep> 53</dep></entry>
|
||||
|
|
|
@ -1137,7 +1137,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos1</object-name>
|
||||
<property>/controls/engines/engine[0]/throttle</property>
|
||||
<property>/controls/engines/engine[0]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>-10</dep></entry>
|
||||
<entry><ind>0.19560</ind><dep> 28</dep></entry>
|
||||
|
@ -1169,7 +1169,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos2</object-name>
|
||||
<property>/controls/engines/engine[1]/throttle</property>
|
||||
<property>/controls/engines/engine[1]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>-10</dep></entry>
|
||||
<entry><ind>0.19560</ind><dep> 28</dep></entry>
|
||||
|
|
|
@ -935,7 +935,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos1</object-name>
|
||||
<property>/controls/engines/engine[0]/throttle</property>
|
||||
<property>/controls/engines/engine[0]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep> -2</dep></entry>
|
||||
<entry><ind>0.23350</ind><dep> 72</dep></entry>
|
||||
|
@ -966,7 +966,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos2</object-name>
|
||||
<property>/controls/engines/engine[1]/throttle</property>
|
||||
<property>/controls/engines/engine[1]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep> -2</dep></entry>
|
||||
<entry><ind>0.23350</ind><dep> 72</dep></entry>
|
||||
|
|
|
@ -1137,7 +1137,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos1</object-name>
|
||||
<property>/controls/engines/engine[0]/throttle</property>
|
||||
<property>/controls/engines/engine[0]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>05</dep></entry>
|
||||
<entry><ind>0.19560</ind><dep>33</dep></entry>
|
||||
|
@ -1169,7 +1169,7 @@
|
|||
<animation>
|
||||
<type>rotate</type>
|
||||
<object-name>thrpos2</object-name>
|
||||
<property>/controls/engines/engine[1]/throttle</property>
|
||||
<property>/controls/engines/engine[1]/throttle-lever</property>
|
||||
<interpolation>
|
||||
<entry><ind>0.00000</ind><dep>05</dep></entry>
|
||||
<entry><ind>0.19560</ind><dep>33</dep></entry>
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 529 KiB |
|
@ -1,16 +0,0 @@
|
|||
<PropertyList>
|
||||
<sim>
|
||||
<model>
|
||||
<livery>
|
||||
<name type="string">Lufthansa (D-AIPE)</name>
|
||||
<texture>Liveries/A320/CFM/D-AIPE.png</texture>
|
||||
</livery>
|
||||
</model>
|
||||
</sim>
|
||||
|
||||
<options>
|
||||
<EIS2 type="bool">1</EIS2>
|
||||
</options>
|
||||
|
||||
<sharklet type="bool">0</sharklet>
|
||||
</PropertyList>
|
Binary file not shown.
Before Width: | Height: | Size: 461 KiB After Width: | Height: | Size: 528 KiB |
|
@ -1,19 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!-- Deutsche Lufthansa AG livery for Airbus Industries A320-200 mady by D-SVEN. Have fun! -->
|
||||
<PropertyList>
|
||||
<sim>
|
||||
<model>
|
||||
<livery>
|
||||
<name>Lufthansa</name>
|
||||
<texture>Liveries/A320/CFM/DLH.png</texture>
|
||||
</livery>
|
||||
</model>
|
||||
</sim>
|
||||
|
||||
<sim>
|
||||
<model>
|
||||
<livery>
|
||||
<name type="string">Lufthansa D-AIZA</name>
|
||||
<texture>Liveries/A320/CFM/DLH.png</texture>
|
||||
</livery>
|
||||
</model>
|
||||
</sim>
|
||||
|
||||
<options>
|
||||
<EIS2 type="bool">0</EIS2>
|
||||
<EIS2 type="bool">1</EIS2>
|
||||
</options>
|
||||
|
||||
|
||||
<sharklet type="bool">0</sharklet>
|
||||
</PropertyList>
|
||||
|
||||
|
|
BIN
Models/Liveries/A320/CFM/DLH_WL.png
Normal file
BIN
Models/Liveries/A320/CFM/DLH_WL.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 461 KiB |
20
Models/Liveries/A320/CFM/DLH_WL.xml
Normal file
20
Models/Liveries/A320/CFM/DLH_WL.xml
Normal file
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!-- Deutsche Lufthansa AG livery for Airbus Industries A320-200 mady by D-SVEN. Have fun! -->
|
||||
<PropertyList>
|
||||
<sim>
|
||||
<model>
|
||||
<livery>
|
||||
<name>Lufthansa D-AIUA (WL)</name>
|
||||
<texture>Liveries/A320/CFM/DLH_WL.png</texture>
|
||||
</livery>
|
||||
</model>
|
||||
</sim>
|
||||
|
||||
<options>
|
||||
<EIS2 type="bool">0</EIS2>
|
||||
</options>
|
||||
|
||||
<sharklet type="bool">1</sharklet>
|
||||
</PropertyList>
|
||||
|
||||
|
BIN
Models/Liveries/A320/CFM/DLHold.png
Normal file
BIN
Models/Liveries/A320/CFM/DLHold.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 461 KiB |
|
@ -15,7 +15,6 @@ setprop("/systems/electrical/bus/ac2", 0);
|
|||
setprop("/systems/electrical/bus/ac-ess", 0);
|
||||
|
||||
var adirs_init = func {
|
||||
setprop("controls/adirs/skip",0); #define this here, as we want this to be off on startup
|
||||
setprop("/controls/adirs/mcducbtn",0);
|
||||
adirs_timer.start();
|
||||
}
|
||||
|
@ -50,7 +49,6 @@ var ADIRSreset = func {
|
|||
setprop("/controls/adirs/ir[1]/fault",0);
|
||||
setprop("/controls/adirs/ir[2]/fault",0);
|
||||
setprop("/controls/adirs/onbat",0);
|
||||
setprop("/controls/adirs/skip",0);
|
||||
setprop("/controls/adirs/mcducbtn",0);
|
||||
adirs_init();
|
||||
}
|
||||
|
|
|
@ -252,7 +252,7 @@ setlistener("/systems/pneumatic/start-psi", func {
|
|||
}
|
||||
});
|
||||
|
||||
var do_idle_thrust = func {
|
||||
var doIdleThrust = func {
|
||||
setprop("/controls/engines/engine[0]/throttle", 0.0);
|
||||
setprop("/controls/engines/engine[1]/throttle", 0.0);
|
||||
}
|
||||
|
@ -260,17 +260,8 @@ var do_idle_thrust = func {
|
|||
#########################
|
||||
# Reverse Thrust System #
|
||||
#########################
|
||||
var do_rev_thrust = func {
|
||||
if ((getprop("/controls/engines/engine[0]/reverser") == "1") and (getprop("/controls/engines/engine[1]/reverser") == "1") and (getprop("/gear/gear[1]/wow") == 1) and (getprop("/gear/gear[2]/wow") == 1)) {
|
||||
var pos1 = getprop("/controls/engines/engine[0]/throttle-pos");
|
||||
var pos2 = getprop("/controls/engines/engine[1]/throttle-pos");
|
||||
if (pos1 < 0.5) {
|
||||
setprop("/controls/engines/engine[0]/throttle-pos", pos1 + 0.167);
|
||||
}
|
||||
if (pos2 < 0.5) {
|
||||
setprop("/controls/engines/engine[1]/throttle-pos", pos2 + 0.167);
|
||||
}
|
||||
}
|
||||
|
||||
var toggleFastRevThrust = func {
|
||||
var state1 = getprop("/systems/thrust/state1");
|
||||
var state2 = getprop("/systems/thrust/state2");
|
||||
if ((state1 == "IDLE") and (state2 == "IDLE") and (getprop("/controls/engines/engine[0]/reverser") == "0") and (getprop("/controls/engines/engine[1]/reverser") == "0") and (getprop("/gear/gear[1]/wow") == 1) and (getprop("/gear/gear[2]/wow") == 1)) {
|
||||
|
@ -278,35 +269,69 @@ var do_rev_thrust = func {
|
|||
interpolate("/engines/engine[1]/reverser-pos-norm", 1, 1.4);
|
||||
setprop("/controls/engines/engine[0]/reverser", 1);
|
||||
setprop("/controls/engines/engine[1]/reverser", 1);
|
||||
setprop("/controls/engines/engine[0]/throttle-pos", 0);
|
||||
setprop("/controls/engines/engine[1]/throttle-pos", 0);
|
||||
setprop("/controls/engines/engine[0]/throttle-rev", 0.5);
|
||||
setprop("/controls/engines/engine[1]/throttle-rev", 0.5);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[0]/reverser-angle-rad", 3.14);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[1]/reverser-angle-rad", 3.14);
|
||||
} else if ((getprop("/controls/engines/engine[0]/reverser") == "1") or (getprop("/controls/engines/engine[1]/reverser") == "1") and (getprop("/gear/gear[1]/wow") == 1) and (getprop("/gear/gear[2]/wow") == 1)) {
|
||||
setprop("/controls/engines/engine[0]/throttle-rev", 0);
|
||||
setprop("/controls/engines/engine[1]/throttle-rev", 0);
|
||||
interpolate("/engines/engine[0]/reverser-pos-norm", 0, 1.0);
|
||||
interpolate("/engines/engine[1]/reverser-pos-norm", 0, 1.0);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[0]/reverser-angle-rad", 0);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[1]/reverser-angle-rad", 0);
|
||||
setprop("/controls/engines/engine[0]/reverser", 0);
|
||||
setprop("/controls/engines/engine[1]/reverser", 0);
|
||||
}
|
||||
}
|
||||
|
||||
var doRevThrust = func {
|
||||
if ((getprop("/controls/engines/engine[0]/reverser") == "1") and (getprop("/controls/engines/engine[1]/reverser") == "1") and (getprop("/gear/gear[1]/wow") == 1) and (getprop("/gear/gear[2]/wow") == 1)) {
|
||||
var pos1 = getprop("/controls/engines/engine[0]/throttle-rev");
|
||||
var pos2 = getprop("/controls/engines/engine[1]/throttle-rev");
|
||||
if (pos1 < 0.5) {
|
||||
setprop("/controls/engines/engine[0]/throttle-rev", pos1 + 0.167);
|
||||
}
|
||||
if (pos2 < 0.5) {
|
||||
setprop("/controls/engines/engine[1]/throttle-rev", pos2 + 0.167);
|
||||
}
|
||||
}
|
||||
var state1 = getprop("/systems/thrust/state1");
|
||||
var state2 = getprop("/systems/thrust/state2");
|
||||
if ((state1 == "IDLE") and (state2 == "IDLE") and (getprop("/controls/engines/engine[0]/reverser") == "0") and (getprop("/controls/engines/engine[1]/reverser") == "0") and (getprop("/gear/gear[1]/wow") == 1) and (getprop("/gear/gear[2]/wow") == 1)) {
|
||||
setprop("/controls/engines/engine[0]/throttle-rev", 0);
|
||||
setprop("/controls/engines/engine[1]/throttle-rev", 0);
|
||||
interpolate("/engines/engine[0]/reverser-pos-norm", 1, 1.4);
|
||||
interpolate("/engines/engine[1]/reverser-pos-norm", 1, 1.4);
|
||||
setprop("/controls/engines/engine[0]/reverser", 1);
|
||||
setprop("/controls/engines/engine[1]/reverser", 1);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[0]/reverser-angle-rad", 3.14);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[1]/reverser-angle-rad", 3.14);
|
||||
}
|
||||
}
|
||||
|
||||
var un_rev_thrust = func {
|
||||
if ((getprop("/controls/engines/engine[0]/reverser") == "1") and (getprop("/controls/engines/engine[1]/reverser") == "1")) {
|
||||
var pos1 = getprop("/controls/engines/engine[0]/throttle-pos");
|
||||
var pos2 = getprop("/controls/engines/engine[1]/throttle-pos");
|
||||
var unRevThrust = func {
|
||||
if ((getprop("/controls/engines/engine[0]/reverser") == "1") or (getprop("/controls/engines/engine[1]/reverser") == "1")) {
|
||||
var pos1 = getprop("/controls/engines/engine[0]/throttle-rev");
|
||||
var pos2 = getprop("/controls/engines/engine[1]/throttle-rev");
|
||||
if (pos1 > 0.0) {
|
||||
setprop("/controls/engines/engine[0]/throttle-pos", pos1 - 0.167);
|
||||
setprop("/controls/engines/engine[0]/throttle-rev", pos1 - 0.167);
|
||||
} else {
|
||||
un_rev_thrust_b();
|
||||
unRevThrust_b();
|
||||
}
|
||||
if (pos2 > 0.0) {
|
||||
setprop("/controls/engines/engine[1]/throttle-pos", pos2 - 0.167);
|
||||
setprop("/controls/engines/engine[1]/throttle-rev", pos2 - 0.167);
|
||||
} else {
|
||||
un_rev_thrust_b();
|
||||
unRevThrust_b();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var un_rev_thrust_b = func {
|
||||
var unRevThrust_b = func {
|
||||
setprop("/controls/engines/engine[0]/throttle-rev", 0);
|
||||
setprop("/controls/engines/engine[1]/throttle-rev", 0);
|
||||
interpolate("/engines/engine[0]/reverser-pos-norm", 0, 1.0);
|
||||
interpolate("/engines/engine[1]/reverser-pos-norm", 0, 1.0);
|
||||
setprop("/controls/engines/engine[0]/throttle-pos", 0);
|
||||
setprop("/controls/engines/engine[1]/throttle-pos", 0);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[0]/reverser-angle-rad", 0);
|
||||
setprop("/fdm/jsbsim/propulsion/engine[1]/reverser-angle-rad", 0);
|
||||
setprop("/controls/engines/engine[0]/reverser", 0);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# IT AUTOFLIGHT System Controller
|
||||
# Joshua Davidson (it0uchpods)
|
||||
# V3.0.0 Build 180
|
||||
# V3.0.0 Build 182
|
||||
# This program is 100% GPL!
|
||||
|
||||
print("IT-AUTOFLIGHT: Please Wait!");
|
||||
|
@ -51,7 +51,6 @@ var ap_init = func {
|
|||
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");
|
||||
|
@ -301,7 +300,6 @@ var vertical = func {
|
|||
setprop("/instrumentation/nav[1]/gs-rate-of-climb", 0);
|
||||
setprop("/it-autoflight/output/appr-armed", 1);
|
||||
setprop("/it-autoflight/mode/arm", "ILS");
|
||||
setprop("/it-autoflight/autoland/target-vs", "-650");
|
||||
}
|
||||
} else if (vertset == 3) {
|
||||
alandt.stop();
|
||||
|
@ -366,7 +364,6 @@ var vertical = func {
|
|||
alandt.stop();
|
||||
alandt1.start();
|
||||
prof_sys_stop();
|
||||
setprop("/it-autoflight/autoland/target-vs", "-650");
|
||||
} else if (vertset == 7) {
|
||||
alandt.stop();
|
||||
alandt1.stop();
|
||||
|
@ -770,8 +767,12 @@ var make_appr_active = func {
|
|||
var aland = func {
|
||||
var ap1 = getprop("/it-autoflight/output/ap1");
|
||||
var ap2 = getprop("/it-autoflight/output/ap2");
|
||||
var landoption = getprop("/it-autoflight/settings/autoland-without-ap");
|
||||
if (getprop("/position/gear-agl-ft") <= 100) {
|
||||
if (ap1 or ap2) {
|
||||
if (ap1 == 1 or ap2 == 1) {
|
||||
setprop("/it-autoflight/input/lat", 4);
|
||||
setprop("/it-autoflight/input/vert", 6);
|
||||
} else if (ap1 == 0 and ap2 == 0 and landoption) {
|
||||
setprop("/it-autoflight/input/lat", 4);
|
||||
setprop("/it-autoflight/input/vert", 6);
|
||||
} else {
|
||||
|
@ -783,12 +784,10 @@ var aland = func {
|
|||
|
||||
var aland1 = func {
|
||||
var aglal = getprop("/position/gear-agl-ft");
|
||||
var flarealt = getprop("/it-autoflight/settings/flare-altitude");
|
||||
if (aglal <= flarealt and aglal > 5) {
|
||||
if (aglal <= 50 and aglal > 5) {
|
||||
setprop("/it-autoflight/mode/vert", "FLARE");
|
||||
setprop("/it-autoflight/autoland/target-vs", "-120");
|
||||
}
|
||||
if ((getprop("/it-autoflight/output/ap1") == 0) and (getprop("/it-autoflight/output/ap2") == 0)) {
|
||||
if ((getprop("/it-autoflight/output/ap1") == 0) and (getprop("/it-autoflight/output/ap2") == 0) and (getprop("/it-autoflight/settings/autoland-without-ap") == 0)) {
|
||||
alandt.stop();
|
||||
alandt1.stop();
|
||||
setprop("/it-autoflight/output/loc-armed", 0);
|
||||
|
|
|
@ -223,37 +223,81 @@
|
|||
<max-rate-of-change>1000</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>PFD IAS Sync</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<enable>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/kts-mach</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<update-interval-secs type="double">0.5</update-interval-secs>
|
||||
<input>/instrumentation/airspeed-indicator/indicated-speed-kt</input>
|
||||
<output>/it-autoflight/input/spd-kts</output>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>Throttle L</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<enable>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<property>/controls/engines/engine[0]/throttle</property>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>0</value>
|
||||
</input>
|
||||
<output>/controls/engines/engine[0]/throttle-lever</output>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>Throttle R</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>/controls/engines/engine[0]/throttle</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[1]/reverser</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/controls/engines/engine[1]/throttle</property>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[1]/reverser</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>0</value>
|
||||
</input>
|
||||
<output>/controls/engines/engine[1]/throttle-lever</output>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>Throttle L</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/controls/engines/engine[0]/throttle</property>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[0]/reverser</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/controls/engines/engine[0]/throttle-rev</property>
|
||||
</input>
|
||||
<output>/controls/engines/engine[0]/throttle-pos</output>
|
||||
</filter>
|
||||
|
||||
|
@ -261,16 +305,25 @@
|
|||
<name>Throttle R</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<enable>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[1]/reverser</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>/controls/engines/engine[1]/throttle</input>
|
||||
<property>/controls/engines/engine[1]/throttle</property>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/controls/engines/engine[1]/reverser</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/controls/engines/engine[1]/throttle-rev</property>
|
||||
</input>
|
||||
<output>/controls/engines/engine[1]/throttle-pos</output>
|
||||
</filter>
|
||||
|
||||
|
|
|
@ -16,14 +16,6 @@
|
|||
<seconds>5.0</seconds>
|
||||
<filter-gain>0.0</filter-gain>
|
||||
</predict-simple>
|
||||
|
||||
<predict-simple>
|
||||
<name>VOR/LOC 5 SECONDS AHEAD</name>
|
||||
<input>/it-autoflight/internal/nav1-track-error-deg</input>
|
||||
<output>/it-autoflight/internal/nav1-error-5-sec-ahead</output>
|
||||
<seconds>12</seconds>
|
||||
<filter-gain>0.1</filter-gain>
|
||||
</predict-simple>
|
||||
|
||||
<predict-simple>
|
||||
<name>IAS 5 SECOND PREDICTOR</name>
|
||||
|
@ -82,63 +74,285 @@
|
|||
<!-- =============================================================== -->
|
||||
<!-- Autopilot Helpers -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
<filter>
|
||||
<name>KTS INPUT FILTER</name>
|
||||
<debug>false</debug>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<condition>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/mode/vert</property>
|
||||
<value>T/O CLB</value>
|
||||
</not-equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/spd-kts</property>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/mode/vert</property>
|
||||
<value>T/O CLB</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/settings/togaspd</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/flch-kts</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>100</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<value>5</value>
|
||||
</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>MACH INPUT FILTER</name>
|
||||
<debug>false</debug>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/input/spd-mach</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/flch-mach</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>1</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<value>0.05</value>
|
||||
</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>IAS SYNC</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<enable>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/kts-mach</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<update-interval-secs type="double">0.5</update-interval-secs>
|
||||
<input>/instrumentation/airspeed-indicator/indicated-speed-kt</input>
|
||||
<output>/it-autoflight/input/spd-kts</output>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>MACH SYNC</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<enable>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/kts-mach</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<update-interval-secs type="double">0.5</update-interval-secs>
|
||||
<input>/instrumentation/airspeed-indicator/indicated-mach</input>
|
||||
<output>/it-autoflight/input/spd-mach</output>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>MAGNETIC HDG ERROR DEG</name>
|
||||
<name>HEADING ERROR DEG</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/trk</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/hdg</property>
|
||||
<offset>
|
||||
<property>/orientation/heading-magnetic-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/heading-bug-error-deg</output>
|
||||
<output>/it-autoflight/internal/fdm-heading-bug-error-deg</output>
|
||||
<period>
|
||||
<min>-180</min>
|
||||
<max>180</max>
|
||||
</period>
|
||||
<gain>1.0</gain>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>TRUE HDG ERROR DEG</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/trk</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/hdg</property>
|
||||
<offset>
|
||||
<property>/orientation/heading-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/true-heading-error-deg</output>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/hdg</property>
|
||||
<offset>
|
||||
<property>/autopilot/settings/true-heading-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/heading-error-deg-cmd</output>
|
||||
<period>
|
||||
<min>-180</min>
|
||||
<max>180</max>
|
||||
</period>
|
||||
<gain>1.0</gain>
|
||||
</filter>
|
||||
|
||||
|
||||
<filter>
|
||||
<name>LNAV HDG ERROR DEG</name>
|
||||
<name>HEADING ERROR FILTER</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/autopilot/settings/true-heading-deg</property>
|
||||
<offset>
|
||||
<property>/orientation/heading-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
<property>/it-autoflight/internal/heading-error-deg-cmd</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/lnav-hdg-error-deg</output>
|
||||
<period>
|
||||
<min>-180</min>
|
||||
<max>180</max>
|
||||
</period>
|
||||
<gain>1.0</gain>
|
||||
<output>/it-autoflight/internal/heading-error-deg</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>90</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<value>2.5</value>
|
||||
</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>VERT SPEED FILTER</name>
|
||||
<debug>false</debug>
|
||||
<feedback-if-disabled>true</feedback-if-disabled>
|
||||
<initialize-to>output</initialize-to>
|
||||
<input>
|
||||
<property>/it-autoflight/input/vs</property>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/vs</output>
|
||||
<type>noise-spike</type>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
<value>2000</value>
|
||||
</max-rate-of-change>
|
||||
<max-rate-of-change>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<value>300</value>
|
||||
</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
|
@ -179,53 +393,6 @@
|
|||
<gain>1.0</gain>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>NAV COURSE ERROR</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-nav2-radio</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/instrumentation/nav[0]/radials/selected-deg</property>
|
||||
<offset>
|
||||
<property>/orientation/heading-magnetic-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/settings/use-nav2-radio</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/instrumentation/nav[1]/radials/selected-deg</property>
|
||||
<offset>
|
||||
<property>/orientation/heading-magnetic-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/nav-course-error</output>
|
||||
<period>
|
||||
<min>-180</min>
|
||||
<max>180</max>
|
||||
</period>
|
||||
<gain>1.0</gain>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>VOR/LOC HEADING ERROR FILTER</name>
|
||||
<debug>false</debug>
|
||||
<type>noise-spike</type>
|
||||
<input>/it-autoflight/internal/nav1-error-5-sec-ahead</input>
|
||||
<output>/it-autoflight/internal/nav1-heading-error-deg-filtered</output>
|
||||
<max-rate-of-change>90.0</max-rate-of-change>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>INTERNAL VERTICAL SPEED COMPUTER</name>
|
||||
<debug>false</debug>
|
||||
|
@ -261,34 +428,6 @@
|
|||
<output>/it-autoflight/internal/target-fpm-b</output>
|
||||
<gain>55.5</gain>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>STATIC PRESSURE COMPUTER</name>
|
||||
<debug>false</debug>
|
||||
<type>derivative</type>
|
||||
<input>/systems/static[0]/pressure-inhg</input>
|
||||
<output>/it-autoflight/internal/pressure-rate</output>
|
||||
<filter-time>1.0</filter-time>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>NAV1 TRACK ERROR</name>
|
||||
<debug>false</debug>
|
||||
<type>gain</type>
|
||||
<input>
|
||||
<property>/instrumentation/nav[0]/radials/target-auto-hdg-deg</property>
|
||||
<offset>
|
||||
<property>/orientation/track-deg</property>
|
||||
<scale>-1.0</scale>
|
||||
</offset>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/nav1-track-error-deg</output>
|
||||
<period>
|
||||
<min>-180</min>
|
||||
<max>180</max>
|
||||
</period>
|
||||
<gain>1.0</gain>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<name>NAV1 G/S FPM Calc</name>
|
||||
|
@ -334,49 +473,7 @@
|
|||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/trk</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/heading-bug-error-deg</property>
|
||||
<scale>
|
||||
<property>/it-autoflight/config/cmd/roll-scale</property>
|
||||
</scale>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/input/trk</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</and>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/true-heading-error-deg</property>
|
||||
<scale>
|
||||
<property>/it-autoflight/config/cmd/roll-scale</property>
|
||||
</scale>
|
||||
</input>
|
||||
<input>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/lnav-hdg-error-deg</property>
|
||||
<property>/it-autoflight/internal/heading-error-deg</property>
|
||||
<scale>
|
||||
<property>/it-autoflight/config/cmd/roll-scale</property>
|
||||
</scale>
|
||||
|
@ -476,8 +573,8 @@
|
|||
<gamma>0.0</gamma>
|
||||
<Ti>10.0</Ti>
|
||||
<Td>0.00001</Td>
|
||||
<u_min>-30</u_min>
|
||||
<u_max>30</u_max>
|
||||
<u_min>-25</u_min>
|
||||
<u_max>25</u_max>
|
||||
</config>
|
||||
</pid-controller>
|
||||
|
||||
|
@ -550,16 +647,10 @@
|
|||
<config>
|
||||
<Kp>
|
||||
<condition>
|
||||
<and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>2</value>
|
||||
</not-equals>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>4</value>
|
||||
</not-equals>
|
||||
</and>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>2</value>
|
||||
</not-equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/config/roll/kp</property>
|
||||
</Kp>
|
||||
|
@ -572,15 +663,6 @@
|
|||
</condition>
|
||||
<property>/it-autoflight/config/roll/kp-vloc</property>
|
||||
</Kp>
|
||||
<Kp>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/lat</property>
|
||||
<value>4</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/config/autoland/kp-roll</property>
|
||||
</Kp>
|
||||
<beta>1.0</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0.0</gamma>
|
||||
|
@ -705,51 +787,21 @@
|
|||
</config>
|
||||
</pid-controller>
|
||||
|
||||
<pi-simple-controller>
|
||||
<name>AUTOLAND VS HOLD</name>
|
||||
<debug>false</debug>
|
||||
<enable>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>6</value>
|
||||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/vert-speed-fpm</property>
|
||||
<scale>0.2</scale>
|
||||
</input>
|
||||
<reference>
|
||||
<property>/it-autoflight/autoland/target-vs</property>
|
||||
<scale>0.2</scale>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-pitch-deg</property>
|
||||
</output>
|
||||
<config>
|
||||
<Kp>
|
||||
<property>/it-autoflight/config/autoland/kp-pitch</property>
|
||||
</Kp>
|
||||
<Ki>0.010</Ki>
|
||||
<min>
|
||||
<value>0</value>
|
||||
</min>
|
||||
<max>
|
||||
<value>15</value>
|
||||
</max>
|
||||
</config>
|
||||
</pi-simple-controller>
|
||||
|
||||
<pid-controller>
|
||||
<name>FLCH SPEED BY PITCH</name>
|
||||
<debug>false</debug>
|
||||
<enable>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
</equals>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>7</value>
|
||||
</equals>
|
||||
</or>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
|
@ -769,7 +821,7 @@
|
|||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/lookahead-15-sec-mach</property>
|
||||
<scale>350.0</scale>
|
||||
<scale>500.0</scale>
|
||||
</input>
|
||||
<reference>
|
||||
<condition>
|
||||
|
@ -778,7 +830,7 @@
|
|||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/spd-kts</property>
|
||||
<property>/it-autoflight/internal/flch-kts</property>
|
||||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
|
@ -787,132 +839,104 @@
|
|||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/spd-mach</property>
|
||||
<scale>350.0</scale>
|
||||
<property>/it-autoflight/internal/flch-mach</property>
|
||||
<scale>500.0</scale>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-fpm-b</property>
|
||||
</output>
|
||||
<config>
|
||||
<Kp>-40</Kp>
|
||||
<Kp>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>-40</value>
|
||||
</Kp>
|
||||
<Kp>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>7</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>-55</value>
|
||||
</Kp>
|
||||
<beta>1.0</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0.0</gamma>
|
||||
<Ti>2.5</Ti>
|
||||
<Td>0.001</Td>
|
||||
<Td>0.001</Td>
|
||||
<u_min>
|
||||
<condition>
|
||||
<greater-than>
|
||||
<property>/it-autoflight/internal/alt</property>
|
||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||
</greater-than>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/thr-mode</property>
|
||||
<value>2</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>200</value>
|
||||
<value>150</value>
|
||||
</u_min>
|
||||
<u_min>
|
||||
<condition>
|
||||
<less-than>
|
||||
<property>/it-autoflight/internal/alt</property>
|
||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||
</less-than>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/thr-mode</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>-6000</value>
|
||||
</u_min>
|
||||
<u_max>
|
||||
<condition>
|
||||
<greater-than>
|
||||
<property>/it-autoflight/internal/alt</property>
|
||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||
</greater-than>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/thr-mode</property>
|
||||
<value>2</value>
|
||||
</equals>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
</and>
|
||||
</and>
|
||||
</condition>
|
||||
<value>10000</value>
|
||||
</u_max>
|
||||
<u_max>
|
||||
<condition>
|
||||
<less-than>
|
||||
<property>/it-autoflight/internal/alt</property>
|
||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||
</less-than>
|
||||
</condition>
|
||||
<value>-150</value>
|
||||
</u_max>
|
||||
</config>
|
||||
</pid-controller>
|
||||
|
||||
<pid-controller>
|
||||
<name>TOGA SPEED BY PITCH</name>
|
||||
<debug>false</debug>
|
||||
<enable>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>7</value>
|
||||
</equals>
|
||||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/lookahead-10-sec-airspeed-kt</property>
|
||||
</input>
|
||||
<reference>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/mode/vert</property>
|
||||
<value>T/O CLB</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/settings/togaspd</property>
|
||||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/mode/vert</property>
|
||||
<value>G/A CLB</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/spd-kts</property>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-fpm-b</property>
|
||||
</output>
|
||||
<config>
|
||||
<Kp>-55</Kp>
|
||||
<beta>1.0</beta>
|
||||
<alpha>0.1</alpha>
|
||||
<gamma>0.0</gamma>
|
||||
<Ti>2.5</Ti>
|
||||
<Td>0.001</Td>
|
||||
<u_min>
|
||||
<value>150</value>
|
||||
</u_min>
|
||||
<u_max>
|
||||
<condition>
|
||||
<and>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>0</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>0</value>
|
||||
<property>/it-autoflight/output/thr-mode</property>
|
||||
<value>2</value>
|
||||
</equals>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
</and>
|
||||
</condition>
|
||||
<value>8000</value>
|
||||
<value>1000</value>
|
||||
</u_max>
|
||||
<u_max>
|
||||
<condition>
|
||||
<or>
|
||||
<equals>
|
||||
<property>/gear/gear[1]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/gear/gear[2]/wow</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</or>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/thr-mode</property>
|
||||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>1000</value>
|
||||
<value>-150</value>
|
||||
</u_max>
|
||||
</config>
|
||||
</pid-controller>
|
||||
|
@ -945,7 +969,7 @@
|
|||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/lookahead-15-sec-mach</property>
|
||||
<scale>350.0</scale>
|
||||
<scale>500.0</scale>
|
||||
</input>
|
||||
<reference>
|
||||
<condition>
|
||||
|
@ -954,7 +978,7 @@
|
|||
<value>0</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/spd-kts</property>
|
||||
<property>/it-autoflight/internal/flch-kts</property>
|
||||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
|
@ -963,8 +987,8 @@
|
|||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/spd-mach</property>
|
||||
<scale>350.0</scale>
|
||||
<property>/it-autoflight/internal/flch-mach</property>
|
||||
<scale>500.0</scale>
|
||||
</reference>
|
||||
<output>
|
||||
<property>/it-autoflight/internal/target-fpm-b</property>
|
||||
|
@ -983,7 +1007,7 @@
|
|||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||
</greater-than>
|
||||
</condition>
|
||||
<value>200</value>
|
||||
<value>150</value>
|
||||
</u_min>
|
||||
<u_min>
|
||||
<condition>
|
||||
|
@ -1015,6 +1039,28 @@
|
|||
</config>
|
||||
</pid-controller>
|
||||
|
||||
<filter>
|
||||
<name>AUTOLAND FPM</name>
|
||||
<type>gain</type>
|
||||
<gain>1</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
<property>/position/gear-agl-ft</property>
|
||||
<entry><ind>100</ind><dep>-600</dep></entry>
|
||||
<entry><ind> 50</ind><dep>-500</dep></entry>
|
||||
<entry><ind> 40</ind><dep>-400</dep></entry>
|
||||
<entry><ind> 30</ind><dep>-300</dep></entry>
|
||||
<entry><ind> 20</ind><dep>-200</dep></entry>
|
||||
<entry><ind> 10</ind><dep>-150</dep></entry>
|
||||
<entry><ind> 5</ind><dep>-100</dep></entry>
|
||||
</table>
|
||||
</expression>
|
||||
</input>
|
||||
<output>/it-autoflight/internal/target-fpm-c</output>
|
||||
</filter>
|
||||
|
||||
<pid-controller>
|
||||
<name>FPM HOLD</name>
|
||||
<debug>false</debug>
|
||||
|
@ -1037,6 +1083,10 @@
|
|||
<property>/it-autoflight/output/vert</property>
|
||||
<value>4</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>6</value>
|
||||
</equals>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>7</value>
|
||||
|
@ -1069,7 +1119,7 @@
|
|||
<value>1</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/input/vs</property>
|
||||
<property>/it-autoflight/internal/vs</property>
|
||||
<scale>0.16667</scale>
|
||||
</reference>
|
||||
<reference>
|
||||
|
@ -1114,6 +1164,16 @@
|
|||
<property>/it-autoflight/internal/prof-fpm</property>
|
||||
<scale>0.16667</scale>
|
||||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>6</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/internal/target-fpm-c</property>
|
||||
<scale>0.16667</scale>
|
||||
</reference>
|
||||
<reference>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -1151,13 +1211,43 @@
|
|||
</output>
|
||||
<config>
|
||||
<Kp>
|
||||
<condition>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>6</value>
|
||||
</not-equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/config/cmd/vs</property>
|
||||
</Kp>
|
||||
<Kp>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>6</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<property>/it-autoflight/config/autoland/kp-pitch</property>
|
||||
</Kp>
|
||||
<Ti>2.5</Ti>
|
||||
<Td>0.001</Td>
|
||||
<u_min>
|
||||
<condition>
|
||||
<not-equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>6</value>
|
||||
</not-equals>
|
||||
</condition>
|
||||
<value>-10</value>
|
||||
</u_min>
|
||||
<u_min>
|
||||
<condition>
|
||||
<equals>
|
||||
<property>/it-autoflight/output/vert</property>
|
||||
<value>6</value>
|
||||
</equals>
|
||||
</condition>
|
||||
<value>0</value>
|
||||
</u_min>
|
||||
<u_max>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -1295,7 +1385,7 @@
|
|||
</condition>
|
||||
</enable>
|
||||
<input>
|
||||
<property>/it-autoflight/internal/nav1-heading-error-deg</property>
|
||||
<property>/it-autoflight/internal/nav-heading-error-deg</property>
|
||||
</input>
|
||||
<reference>
|
||||
<value>0</value>
|
||||
|
|
|
@ -77,6 +77,10 @@
|
|||
<property>/it-autoflight/output/ap2</property>
|
||||
<value>0</value>
|
||||
</eq>
|
||||
<eq>
|
||||
<property>/gear/gear[0]/wow</property>
|
||||
<value>0</value>
|
||||
</eq>
|
||||
<or>
|
||||
<eq>
|
||||
<property>/it-fbw/law</property>
|
||||
|
|
Reference in a new issue