Реалистичное управление реверсом.

parent 6a25b9eb
......@@ -72,13 +72,13 @@ SIMULATOR-DEPENDENT CODE
1. Containing shims for generic instruments.
Tu-144-jsbsim/systems/KURS-MP/SOM.xml
Tu-144-jsbsim/systems/KURS-MP/ARK.xml
Tu-144-jsbsim/systems/KURS-MP/MRP.xml
Tu-144-jsbsim/systems/KURS-MP/RSBN.xml
Tu-144-jsbsim/systems/KURS-MP/SDK_*.xml
Tu-144-jsbsim/systems/Landysh_*.xml
Tu-144-jsbsim/systems/Micron.xml
Tu-144-jsbsim/NPK/KURS-MP/ARK.xml
Tu-144-jsbsim/NPK/KURS-MP/MRP.xml
Tu-144-jsbsim/NPK/KURS-MP/RSBN.xml
Tu-144-jsbsim/NPK/KURS-MP/SDK_*.xml
Tu-144-jsbsim/comm/Landysh_*.xml
Tu-144-jsbsim/comm/Micron.xml
Tu-144-jsbsim/comm/SOM.xml
2. Property aliases under /fdm/jsbsim and /instrumentation bring the
data missing in JSBSim to the systems and communicate with generic
......
......@@ -28,10 +28,10 @@ f, F Отклоняемый носок фюзеляжа,
положения: Уборка, Нейтрально, Выпуск.
Control-B Стартовый тормоз вкл/выкл
n Аварийный тормоз
Delete Реверс двиг. 1, 4.
(РУД должны быть на 0 град.)
Shift-Delete Выпуск \ Тормозной парашют
Control-Delete Сброс /
Delete Увеличить \ Реверс двиг. 1, 4.
Insert Уменьшить / (РУД должны быть на 0 град.)
Control-Delete Выпуск \ Тормозной парашют
Control-Insert Сброс /
АБСУ
......
This diff is collapsed.
......@@ -313,9 +313,9 @@
<enable-pointer>true</enable-pointer>
<pointer-type>fixed</pointer-type>
<input>
<property>/instrumentation/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-norm</property>
<property>/instrumentation/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-deg</property>
<min>0.0</min>
<max>1.0</max>
<max>30.0</max>
</input>
</gauge>
......@@ -334,9 +334,9 @@
<enable-pointer>true</enable-pointer>
<pointer-type>fixed</pointer-type>
<input>
<property>/instrumentation/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-norm</property>
<property>/instrumentation/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-deg</property>
<min>0.0</min>
<max>1.0</max>
<max>30.0</max>
</input>
</gauge>
......
......@@ -144,7 +144,10 @@ var _loop = func {
var chute = (getprop("/fdm/jsbsim/fcs/chute/pos-norm") > 0.01);
var reversers = 0;
for(var ii = 0; ii < 4; ii += 3){
if(getprop("/fdm/jsbsim/propulsion/engine[" ~ ii ~ "]/panel/lever/reverser/pos-norm") > 0.1){
if(
(getprop("/fdm/jsbsim/propulsion/engine[" ~ ii ~ "]/panel/lever/throttle/pos-deg") < 0.1) and
((getprop("/fdm/jsbsim/propulsion/engine[" ~ ii ~ "]/panel/lever/reverser/pos-deg") or 0.0) > 5.0)
){
reversers = 1;
break;
}
......
......@@ -168,11 +168,11 @@ ThrottleReleaseAll = func () {
}
}
# @brief Toggle reverse.
# Toggle reverse. Works only when reverse lever is unlocked.
ReversersAll = func (on) {
# @brief Set reverse.
# @param angle Reverse lever angle 0..30 deg.
ReversersAll = func (angle) {
for(var ii = 0; ii < 4; ii += 3){
setprop("/fdm/jsbsim/propulsion/engine[" ~ ii ~ "]/panel/lever/reverser/cmd-norm", on);
setprop("/fdm/jsbsim/propulsion/engine[" ~ ii ~ "]/panel/lever/reverser/pos-deg", angle);
}
}
......
......@@ -32,17 +32,17 @@
<filter>
<type>exponential</type>
<filter-time>0.04</filter-time>
<input>/fdm/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-norm</input>
<output>/instrumentation/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-norm</output>
<type>gain</type>
<gain>1.0</gain>
<input>/fdm/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-deg</input>
<output>/instrumentation/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-deg</output>
</filter>
<filter>
<type>exponential</type>
<filter-time>0.04</filter-time>
<input>/fdm/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-norm</input>
<output>/instrumentation/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-norm</output>
<type>gain</type>
<gain>1.0</gain>
<input>/fdm/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-deg</input>
<output>/instrumentation/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-deg</output>
</filter>
......
......@@ -1038,15 +1038,21 @@
<key n="127">
<name>Delete</name>
<repeatable type="bool">false</repeatable>
<desc>Toggle reverser</desc>
<repeatable type="bool">true</repeatable>
<desc>Increase reverse</desc>
<binding>
<command>property-toggle</command>
<property>/fdm/jsbsim/propulsion/engine[0]/panel/lever/reverser/cmd-norm</property>
<command>property-adjust</command>
<property>/fdm/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-deg</property>
<step type="float">0.5</step>
<min type="float">0.0</min>
<max type="float">30.0</max>
</binding>
<binding>
<command>property-toggle</command>
<property>/fdm/jsbsim/propulsion/engine[3]/panel/lever/reverser/cmd-norm</property>
<command>property-adjust</command>
<property>/fdm/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-deg</property>
<step type="float">0.5</step>
<min type="float">0.0</min>
<max type="float">30.0</max>
</binding>
<mod-up>
<binding>
......@@ -1054,13 +1060,8 @@
<property>/fdm/jsbsim/fcs/panel/button/chute-deploy</property>
<value>0</value>
</binding>
<binding>
<command>property-assign</command>
<property>/fdm/jsbsim/fcs/panel/button/chute-drop</property>
<value>0</value>
</binding>
</mod-up>
<mod-shift>
<mod-ctrl>
<desc>Deploy parachute</desc>
<binding>
<command>property-assign</command>
......@@ -1074,7 +1075,34 @@
<value>0</value>
</binding>
</mod-up>
</mod-shift>
</mod-ctrl>
</key>
<key n="364">
<name>Insert</name>
<repeatable type="bool">true</repeatable>
<desc>Decrease reverse</desc>
<binding>
<command>property-adjust</command>
<property>/fdm/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-deg</property>
<step type="float">-0.5</step>
<min type="float">0.0</min>
<max type="float">30.0</max>
</binding>
<binding>
<command>property-adjust</command>
<property>/fdm/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-deg</property>
<step type="float">-0.5</step>
<min type="float">0.0</min>
<max type="float">30.0</max>
</binding>
<mod-up>
<binding>
<command>property-assign</command>
<property>/fdm/jsbsim/fcs/panel/button/chute-drop</property>
<value>0</value>
</binding>
</mod-up>
<mod-ctrl>
<desc>Drop parachute</desc>
<binding>
......
......@@ -79,11 +79,11 @@
</signal>
<signal>
<property type="string">/instrumentation/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-norm</property>
<property type="string">/instrumentation/jsbsim/propulsion/engine[0]/panel/lever/reverser/pos-deg</property>
<type>float</type>
</signal>
<signal>
<property type="string">/instrumentation/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-norm</property>
<property type="string">/instrumentation/jsbsim/propulsion/engine[3]/panel/lever/reverser/pos-deg</property>
<type>float</type>
</signal>
......
......@@ -76,8 +76,6 @@
<property>propulsion/engine[1]/panel/lever/throttle/force-kgf</property>
<property>propulsion/engine[2]/panel/lever/throttle/force-kgf</property>
<property>propulsion/engine[3]/panel/lever/throttle/force-kgf</property>
<property>propulsion/engine[0]/panel/lever/reverser/pos-norm</property>
<property>propulsion/engine[3]/panel/lever/reverser/pos-norm</property>
<property>propulsion/panel/lever/throttle-lock</property>
<property>&ABSU;/status/test-lights</property>
......@@ -144,6 +142,17 @@
</test>
</switch>
<switch name="&U;/status/force-disengage-up">
<default value="0"/>
<test logic="OR" value="1">
<!-- = 6.0 kg / 3 -->
propulsion/engine[0]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[1]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[2]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[3]/panel/lever/throttle/force-kgf GT 2.0
</test>
</switch>
<switch name="&U;/status/force-disengage">
<default value="0"/>
<test logic="OR" value="1">
......@@ -153,15 +162,9 @@
propulsion/engine[2]/panel/lever/throttle/force-kgf LT -2.0
propulsion/engine[3]/panel/lever/throttle/force-kgf LT -2.0
</test>
<test logic="OR" value="0">
&ABSU;/SAU/status/mode/pitch-TOGA NE 0
</test>
<test logic="OR" value="1">
<!-- = 6.0 kg / 3 -->
propulsion/engine[0]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[1]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[2]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[3]/panel/lever/throttle/force-kgf GT 2.0
<test logic="AND" value="1">
&ABSU;/SAU/status/mode/pitch-TOGA EQ 0
&U;/status/force-disengage-up NE 0
</test>
</switch>
......@@ -209,10 +212,8 @@
<switch name="&U;/status/throttle-locked">
<default value="0"/>
<test logic="OR" value="&ABSU;/status/on">
<test value="&ABSU;/status/on">
propulsion/panel/lever/throttle-lock NE 0
propulsion/engine[0]/panel/lever/reverser/pos-norm GT 0.5
propulsion/engine[3]/panel/lever/reverser/pos-norm GT 0.5
</test>
</switch>
......
......@@ -200,11 +200,7 @@ XXX K_PU most likely not meant literally! Such a large value would get clipped l
<property>&U;/pitch/force-disengage</property>
<property>&U;/roll/force-disengage</property>
<property>propulsion/engine[0]/panel/lever/throttle/force-kgf</property>
<property>propulsion/engine[1]/panel/lever/throttle/force-kgf</property>
<property>propulsion/engine[2]/panel/lever/throttle/force-kgf</property>
<property>propulsion/engine[3]/panel/lever/throttle/force-kgf</property>
<property>&ABSU;/AT/status/force-disengage-up</property>
<property>&ABSU;/AT/status/hold</property>
<property>&ABSU;/AT/status/force-disengage</property>
......@@ -467,12 +463,8 @@ XXX K_PU most likely not meant literally! Such a large value would get clipped l
&ABSU;/STU/status/VU-fault NE 0
&ABSU;/STU/status/landing EQ 0
</test>
<test logic="OR" value="1">
<!-- = 6.0 kg / 3 -->
propulsion/engine[0]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[1]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[2]/panel/lever/throttle/force-kgf GT 2.0
propulsion/engine[3]/panel/lever/throttle/force-kgf GT 2.0
<test value="1">
&ABSU;/AT/status/force-disengage-up NE 0
</test>
</switch>
......
......@@ -58,9 +58,6 @@
<property>propulsion/engine[1]/panel/lever/throttle/pos-deg</property>
<property>propulsion/engine[2]/panel/lever/throttle/pos-deg</property>
<property>propulsion/engine[3]/panel/lever/throttle/pos-deg</property>
<property>propulsion/engine[0]/panel/lever/reverser/pos-norm</property>
<property>propulsion/engine[0]/panel/lever/reverser/pos-norm</property>
<property>propulsion/engine[3]/panel/lever/reverser/pos-norm</property>
<property>fcs/NPK/ABSU/status/test-lights</property>
<property>fcs/NPK/ABSU/SAU/status/mode/pitch-TOGA</property>
......@@ -345,10 +342,8 @@
<switch name="fcs/NPK/status/takeoff-notready-sound">
<default value="0"/>
<test logic="OR" value="0">
<test value="0">
fcs/NPK/status/takeoff-notready EQ 0
propulsion/engine[0]/panel/lever/reverser/pos-norm GT 0.5
propulsion/engine[3]/panel/lever/reverser/pos-norm GT 0.5
</test>
<test logic="OR" value="1">
propulsion/engine[0]/panel/lever/throttle/pos-deg GT 60.0
......
......@@ -18,33 +18,12 @@
<!-- XXX If moved to other file, the output is overwritten by something else. -->
<fcs_function name="propulsion/engine[0]/throttle/throttle-norm">
<aerosurface_scale name="propulsion/engine[0]/throttle/throttle-norm">
<output>fcs/throttle-pos-norm[0]</output>
<function>
<table>
<independentVar lookup="row">propulsion/engine[0]/throttle/throttle-deg</independentVar>
<tableData>
-90.0 1.0
0.0 0.0
90.0 1.0
</tableData>
</table>
</function>
</fcs_function>
<fcs_function name="propulsion/engine[3]/throttle/throttle-norm">
<output>fcs/throttle-pos-norm[3]</output>
<function>
<table>
<independentVar lookup="row">propulsion/engine[3]/throttle/throttle-deg</independentVar>
<tableData>
-90.0 1.0
0.0 0.0
90.0 1.0
</tableData>
</table>
</function>
</fcs_function>
<input>propulsion/engine[0]/throttle/throttle-deg</input>
<domain><min>0.0</min><max>90.0</max></domain>
<range><min>0.0</min><max>1.0</max></range>
</aerosurface_scale>
<aerosurface_scale name="propulsion/engine[1]/throttle/throttle-norm">
<output>fcs/throttle-pos-norm[1]</output>
......@@ -60,6 +39,13 @@
<range><min>0.0</min><max>1.0</max></range>
</aerosurface_scale>
<aerosurface_scale name="propulsion/engine[3]/throttle/throttle-norm">
<output>fcs/throttle-pos-norm[3]</output>
<input>propulsion/engine[3]/throttle/throttle-deg</input>
<domain><min>0.0</min><max>90.0</max></domain>
<range><min>0.0</min><max>1.0</max></range>
</aerosurface_scale>
<switch name="propulsion/engine[4]/throttle/throttle-norm">
<output>fcs/throttle-pos-norm[4]</output>
<default value="0.0"/>
......
......@@ -45,9 +45,6 @@
<property>propulsion/engine[2]/thrust-relative-norm</property>
<property>propulsion/engine[3]/thrust-relative-norm</property>
<property>propulsion/engine[0]/reverser/pos-deg</property>
<property>propulsion/engine[3]/reverser/pos-deg</property>
<channel name="Simulation status" execrate="16" active="simulation/init-active">
......
......@@ -2,14 +2,14 @@
<!DOCTYPE system [
<!ENTITY IND "0">
<!ENTITY NOREVIND "1">
<!ENTITY U "propulsion/engine[&IND;]">
]>
<system name="RD-36-51A reverser">
<property>&U;/panel/lever/throttle/pos-deg</property>
<property>&U;/panel/lever/reverser/cmd-norm</property>
<property>&U;/panel/lever/reverser/pos-deg</property>
<property>&U;/set-running</property>
<property>&U;/status/standby</property>
......@@ -18,31 +18,31 @@
<channel name="Throttle" execrate="4">
<switch name="&U;/panel/lever/reverser/pos-norm">
<default value="&U;/panel/lever/reverser/cmd-norm"/>
<test logic="OR" value="&U;/panel/lever/reverser/pos-norm">
&U;/panel/lever/throttle/pos-deg GT 1.0
propulsion/engine[&NOREVIND;]/panel/lever/throttle/pos-deg GT 1.0
</test>
</switch>
</channel>
<channel name="Reverser" execrate="4">
<fcs_function name="&U;/reverser/cmd-deg">
<fcs_function name="&U;/throttle/reverser-deg">
<function>
<table>
<independentVar lookup="row">&U;/panel/lever/reverser/pos-norm</independentVar>
<independentVar lookup="row">&U;/panel/lever/reverser/pos-deg</independentVar>
<tableData>
0.5 0.0
1.0 135.0
10.0 0.0
30.0 90.0
</tableData>
</table>
</function>
</fcs_function>
</channel>
<channel name="Reverser" execrate="4">
<switch name="&U;/reverser/cmd-deg">
<default value="0.0"/>
<test logic="AND" value="135.0">
&U;/panel/lever/throttle/pos-deg LT 0.1
&U;/panel/lever/reverser/pos-deg GT 5.0
</test>
</switch>
<switch name="&U;/reverser/c1">
<default value="2.5"/>
<test value="1.5">
......
......@@ -2,14 +2,14 @@
<!DOCTYPE system [
<!ENTITY IND "3">
<!ENTITY NOREVIND "2">
<!ENTITY U "propulsion/engine[&IND;]">
]>
<system name="RD-36-51A reverser">
<property>&U;/panel/lever/throttle/pos-deg</property>
<property>&U;/panel/lever/reverser/cmd-norm</property>
<property>&U;/panel/lever/reverser/pos-deg</property>
<property>&U;/set-running</property>
<property>&U;/status/standby</property>
......@@ -18,31 +18,31 @@
<channel name="Throttle" execrate="4">
<switch name="&U;/panel/lever/reverser/pos-norm">
<default value="&U;/panel/lever/reverser/cmd-norm"/>
<test logic="OR" value="&U;/panel/lever/reverser/pos-norm">
&U;/panel/lever/throttle/pos-deg GT 1.0
propulsion/engine[&NOREVIND;]/panel/lever/throttle/pos-deg GT 1.0
</test>
</switch>
</channel>
<channel name="Reverser" execrate="4">
<fcs_function name="&U;/reverser/cmd-deg">
<fcs_function name="&U;/throttle/reverser-deg">
<function>
<table>
<independentVar lookup="row">&U;/panel/lever/reverser/pos-norm</independentVar>
<independentVar lookup="row">&U;/panel/lever/reverser/pos-deg</independentVar>
<tableData>
0.5 0.0
1.0 135.0
10.0 0.0
30.0 90.0
</tableData>
</table>
</function>
</fcs_function>
</channel>
<channel name="Reverser" execrate="4">
<switch name="&U;/reverser/cmd-deg">
<default value="0.0"/>
<test logic="AND" value="135.0">
&U;/panel/lever/throttle/pos-deg LT 0.1
&U;/panel/lever/reverser/pos-deg GT 5.0
</test>
</switch>
<switch name="&U;/reverser/c1">
<default value="2.5"/>
<test value="1.5">
......
......@@ -2,7 +2,6 @@
<!DOCTYPE system [
<!ENTITY IND "0">
<!ENTITY REVIND "0">
<!ENTITY CONTACT_IND "24">
<!ENTITY U "propulsion/engine[&IND;]">
<!ENTITY CONTACT "gear/unit[&CONTACT_IND;]">
......@@ -23,7 +22,6 @@
<property>&U;/panel/lever/throttle/force-kgf</property>
<property>&U;/panel/lever/throttle/IMAT-deg_sec</property>
<property>propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm</property>
<property>propulsion/panel/lever/throttle-lock</property>
<property>&U;/inlet-efficiency-norm</property>
......@@ -47,9 +45,12 @@
<property>&U;/startup/abort</property>
<property>&U;/startup/ignition</property>
<property>&U;/fuel/pressure-kgf_cm2</property>
<property>&U;/reverser/pos-deg</property>
<property>&U;/fuel-flow-rate-t_h</property>
<property>&U;/panel/lever/reverser/pos-deg</property>
<property>&U;/throttle/reverser-deg</property>
<property>&U;/reverser/pos-deg</property>
<property value="22.0">&U;/oil/fill-kg</property>
<property>&U;/fire/valve</property>
......@@ -148,12 +149,6 @@
<test value="0.0">
propulsion/panel/lever/throttle-lock NE 0
</test>
<!-- Lock the throttle if the engine is not reversible and reverser is engaged. -->
<test logic="AND" value="0.0">
<!-- FIXME Move this check out of the runtime! -->
&U;/index NE &REVIND;
propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm GT 0.5
</test>
<test value="&U;/panel/lever/throttle/pos-deg">
&U;/throttle/input-deg_sec LT 0.0
</test>
......@@ -174,8 +169,8 @@
<switch name="&U;/throttle/throttle-deg">
<default value="&U;/panel/lever/throttle/pos-deg"/>
<test value="-&U;/panel/lever/throttle/pos-deg">
propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm GT 0.5
<test value="&U;/throttle/reverser-deg">
&U;/panel/lever/throttle/pos-deg LT 0.1
</test>
</switch>
......@@ -900,24 +895,14 @@
</test>
</switch>
<fcs_function name="&U;/panel/gauge/func/throttle-pos-deg">
<function>
<table>
<independentVar lookup="row">&U;/throttle/throttle-deg</independentVar>
<tableData>
-90.0 -30.0
0.0 0.0
90.0 90.0
</tableData>
</table>
</function>
</fcs_function>
<switch name="&U;/panel/gauge/throttle-pos-deg">
<default value="&U;/panel/gauge/func/throttle-pos-deg"/>
<default value="&U;/panel/lever/throttle/pos-deg"/>
<test value="&U;/panel/gauge/throttle-pos-deg">
&U;/status/on EQ 0
</test>
<test value="-&U;/panel/lever/reverser/pos-deg">
&U;/panel/lever/throttle/pos-deg LT 0.1
</test>
</switch>
<switch name="&U;/panel/gauge/oil-kg">
......
......@@ -2,7 +2,6 @@
<!DOCTYPE system [
<!ENTITY IND "1">
<!ENTITY REVIND "0">
<!ENTITY CONTACT_IND "25">
<!ENTITY U "propulsion/engine[&IND;]">
<!ENTITY CONTACT "gear/unit[&CONTACT_IND;]">
......@@ -23,7 +22,6 @@
<property>&U;/panel/lever/throttle/force-kgf</property>
<property>&U;/panel/lever/throttle/IMAT-deg_sec</property>
<property>propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm</property>
<property>propulsion/panel/lever/throttle-lock</property>
<property>&U;/inlet-efficiency-norm</property>
......@@ -47,9 +45,12 @@
<property>&U;/startup/abort</property>
<property>&U;/startup/ignition</property>
<property>&U;/fuel/pressure-kgf_cm2</property>
<property>&U;/reverser/pos-deg</property>
<property>&U;/fuel-flow-rate-t_h</property>
<property>&U;/panel/lever/reverser/pos-deg</property>
<property>&U;/throttle/reverser-deg</property>
<property>&U;/reverser/pos-deg</property>
<property value="22.0">&U;/oil/fill-kg</property>
<property>&U;/fire/valve</property>
......@@ -148,12 +149,6 @@
<test value="0.0">
propulsion/panel/lever/throttle-lock NE 0
</test>
<!-- Lock the throttle if the engine is not reversible and reverser is engaged. -->
<test logic="AND" value="0.0">
<!-- FIXME Move this check out of the runtime! -->
&U;/index NE &REVIND;
propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm GT 0.5
</test>
<test value="&U;/panel/lever/throttle/pos-deg">
&U;/throttle/input-deg_sec LT 0.0
</test>
......@@ -174,8 +169,8 @@
<switch name="&U;/throttle/throttle-deg">
<default value="&U;/panel/lever/throttle/pos-deg"/>
<test value="-&U;/panel/lever/throttle/pos-deg">
propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm GT 0.5
<test value="&U;/throttle/reverser-deg">
&U;/panel/lever/throttle/pos-deg LT 0.1
</test>
</switch>
......@@ -900,24 +895,14 @@
</test>
</switch>
<fcs_function name="&U;/panel/gauge/func/throttle-pos-deg">
<function>
<table>
<independentVar lookup="row">&U;/throttle/throttle-deg</independentVar>
<tableData>
-90.0 -30.0
0.0 0.0
90.0 90.0
</tableData>
</table>
</function>
</fcs_function>
<switch name="&U;/panel/gauge/throttle-pos-deg">
<default value="&U;/panel/gauge/func/throttle-pos-deg"/>
<default value="&U;/panel/lever/throttle/pos-deg"/>
<test value="&U;/panel/gauge/throttle-pos-deg">
&U;/status/on EQ 0
</test>
<test value="-&U;/panel/lever/reverser/pos-deg">
&U;/panel/lever/throttle/pos-deg LT 0.1
</test>
</switch>
<switch name="&U;/panel/gauge/oil-kg">
......
......@@ -2,7 +2,6 @@
<!DOCTYPE system [
<!ENTITY IND "2">
<!ENTITY REVIND "3">
<!ENTITY CONTACT_IND "26">
<!ENTITY U "propulsion/engine[&IND;]">
<!ENTITY CONTACT "gear/unit[&CONTACT_IND;]">
......@@ -23,7 +22,6 @@
<property>&U;/panel/lever/throttle/force-kgf</property>
<property>&U;/panel/lever/throttle/IMAT-deg_sec</property>
<property>propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm</property>
<property>propulsion/panel/lever/throttle-lock</property>
<property>&U;/inlet-efficiency-norm</property>
......@@ -47,9 +45,12 @@
<property>&U;/startup/abort</property>
<property>&U;/startup/ignition</property>
<property>&U;/fuel/pressure-kgf_cm2</property>
<property>&U;/reverser/pos-deg</property>
<property>&U;/fuel-flow-rate-t_h</property>
<property>&U;/panel/lever/reverser/pos-deg</property>
<property>&U;/throttle/reverser-deg</property>
<property>&U;/reverser/pos-deg</property>
<property value="22.0">&U;/oil/fill-kg</property>
<property>&U;/fire/valve</property>
......@@ -148,12 +149,6 @@
<test value="0.0">
propulsion/panel/lever/throttle-lock NE 0
</test>
<!-- Lock the throttle if the engine is not reversible and reverser is engaged. -->
<test logic="AND" value="0.0">
<!-- FIXME Move this check out of the runtime! -->
&U;/index NE &REVIND;
propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm GT 0.5
</test>
<test value="&U;/panel/lever/throttle/pos-deg">
&U;/throttle/input-deg_sec LT 0.0
</test>
......@@ -174,8 +169,8 @@
<switch name="&U;/throttle/throttle-deg">
<default value="&U;/panel/lever/throttle/pos-deg"/>
<test value="-&U;/panel/lever/throttle/pos-deg">
propulsion/engine[&REVIND;]/panel/lever/reverser/pos-norm GT 0.5
<test value="&U;/throttle/reverser-deg">
&U;/panel/lever/throttle/pos-deg LT 0.1
</test>
</switch>
......@@ -900,24 +895,14 @@
</test>
</switch>
<fcs_function name="&U;/panel/gauge/func/throttle-pos-deg">
<function>
<table>
<independentVar lookup="row">&U;/throttle/throttle-deg</independentVar>
<tableData>
-90.0 -30.0
0.0 0.0
90.0 90.0
</tableData>
</table>
</function>
</fcs_function>
<switch name="&U;/panel/gauge/throttle-pos-deg">
<default value="&U;/panel/gauge/func/throttle-pos-deg"/>
<default value="&U;/panel/lever/throttle/pos-deg"/>
<test value="&U;/panel/gauge/throttle-pos-deg">