4 Author: Yurik V. Nikiforoff, yurik@megasignal.com
6 Function: Autopilot fot TU-154B
9 <autopilot name="ABSU-154">
11 <!-- INTERFACE PROPERTIES -->
13 <!-- Roll interface properties -->
15 <property value="0.001"> ap/alt-gain </property>
17 <!--<property> fcs/revers-by-joy </property>-->
18 <property value="0.0"> fcs/revers-by-key </property>
19 <property value="0.0"> ap/turbulence </property>
20 <!--<property value="0.1"> fcs/revers-1-limit </property>
21 <property value="0.03"> fcs/revers-2-limit </property>-->
23 <!--<property> fcs/revers-1-limit </property>
24 <property> fcs/revers-2-limit </property>-->
26 <property>ap/roll-selector</property>
27 <property>ap/input-heading-pnp</property>
28 <property>ap/input-heading-zk</property>
29 <!--<property>ap/input-heading-nvu</property>-->
30 <property>ap/input-at</property>
32 <property>ap/suu-enable</property>
34 <!-- <property>ap/input-z</property>-->
36 <!-- <property>ap/gs-distance</property>
37 <property>ap/crosstrack-m</property> -->
39 <property>ap/ils-epsilon</property>
41 <property>ap/at-pid-output</property>
42 <property>ap/at-podg</property>
43 <property>ap/at-hold-0</property>
44 <property>ap/at-hold-1</property>
45 <property>ap/at-hold-2</property>
47 <property>ap/input-heading-delta</property>
48 <property>ap/heading-cmd-norm</property>
51 <property>ap/stab-input-roll-rad</property>
52 <property>ap/roll-hold</property>
54 <!-- Pitch interface properties -->
55 <property>ap/pitch-selector</property>
57 <!--<property>ap/gs-gain</property>-->
58 <property>ap/hdg-out</property>
59 <property>ap/output-pitch-current</property>
61 <property>ap/input-glideslope-speed</property>
62 <property>ap/input-glideslope-delta</property>
64 <property>ap/glideslope-cmd-norm</property>
67 <property>ap/input-mach</property>
68 <property>ap/mach-cmd-norm</property>
71 <property>ap/input-speed</property>
72 <property>ap/speed-cmd-norm</property>
75 <property>ap/input-altitude</property>
76 <property>ap/altitude-cmd-norm</property>
79 <property>ap/stab-input-pitch-rad</property>
81 <property>ap/pitch-hold</property>
83 <property>ap/go-around</property>
85 <property>ap/windup-trigger</property>
89 <property>ap/ena-needles</property>
93 <fcs_function name="ap/navigac" >
95 <property>/tu154/switches/pn-5-navigac</property>
99 <fcs_function name="ap/posadk" >
101 <property>/tu154/switches/pn-5-posadk</property>
107 <!--ILS and VOR debug channel-->
109 <channel name="Debug">
112 <property>/controls/engines/engine/throttle</property>
115 fcs/throttle-pos-norm
119 <summer name="debug/latitude-track-rad">
122 <summer name="debug/longitude-runway-rad">
126 <summer name="debug/latitude-distance-rad">
127 <input>debug/latitude-track-rad</input>
128 <input>-position/lat-gc-rad</input>
131 <pure_gain name="debug/latitude-distance-m">
132 <input>debug/latitude-distance-rad</input>
133 <gain>6378138.12</gain>
136 <summer name="debug/longitude-distance-rad">
137 <input>debug/longitude-runway-rad</input>
138 <input>-position/long-gc-rad</input>
140 <pure_gain name="debug/longitude-distance-m">
141 <input>debug/longitude-distance-rad</input>
142 <gain>4355962.26</gain>
145 <fcs_function name="debug/deviation-deg">
146 <description>Arctang</description>
150 <property>debug/latitude-distance-m</property>
151 <property>debug/longitude-distance-m</property>
153 <value>57.2958</value>
158 <summer name="debug/heading-deg">
159 <input>debug/deviation-deg</input>
166 <!--************************** ABSU staff ****************************-->
167 <!-- Parameter stabilizers -->
169 <channel name="Mach stab">
170 <summer name="ap/m-error">
171 <input>-ap/input-mach</input>
172 <input>velocities/mach</input>
178 <!--Transient - see air speed PID-->
179 <summer name="ap/mach-transient-error">
180 <input>ap/output-pitch-current</input>
181 <input>-ap/mach-cmd-norm</input>
184 <switch name="ap/mach-trigger">
185 <default value="0.0"/>
187 ap/pitch-selector == 4
194 <pid name="ap/mach-pid-transient">
195 <input>ap/mach-transient-error</input>
199 <trigger>ap/mach-trigger</trigger>
201 <!--End transient PID -->
203 <switch name="ap/m-error-switched">
204 <default value="ap/mach-pid-transient"/>
205 <test value="ap/m-error">
206 ap/pitch-selector == 4
210 <pid name="ap/m-pid">
211 <input>ap/m-error-switched</input>
217 <trigger>ap/windup-trigger</trigger>
224 <pure_gain name="ap/m-cmd">
225 <input>ap/m-pid</input>
227 <output>ap/mach-cmd-norm</output>
232 <!-- *********************************************************-->
233 <channel name="Go around">
235 <scheduled_gain name="ap/go-around-speed">
236 <input>ap/go-around</input>
238 <independentVar> fcs/flap-pos-deg </independentVar>
247 <switch name="ap/input-speed-switched">
248 <default value="ap/input-speed"/>
249 <test value="ap/go-around-speed">
257 <!-- *********************************************************-->
258 <channel name="Aero speed stab">
259 <summer name="ap/speed-error">
260 <input>-ap/input-speed-switched</input>
261 <input>velocities/vc-fps</input>
268 <!--This PID use for avoid transient impulse then mode has selected. It
269 adjust speed-pid to right state all time. -->
270 <summer name="ap/speed-transient-error">
271 <input>ap/output-pitch-current</input>
272 <input>-ap/speed-cmd-norm</input>
275 <switch name="ap/speed-trigger">
276 <default value="0.0"/>
278 ap/pitch-selector == 3
285 <pid name="ap/speed-pid-transient">
286 <input>ap/speed-transient-error</input>
290 <trigger>ap/speed-trigger</trigger>
292 <!--End transient PID -->
293 <switch name="ap/speed-error-switched">
294 <default value="ap/speed-pid-transient"/>
295 <!--<default value="0.0"/>-->
296 <test value="ap/speed-error">
297 ap/pitch-selector == 3
301 <pure_gain name="ap/speed-error-corrected">
302 <input>ap/speed-error-switched</input>
306 <pid name="ap/speed-pid">
307 <input>ap/speed-error-corrected</input>
313 <trigger>ap/windup-trigger</trigger>
321 <pure_gain name="ap/speed-cmd">
322 <input>ap/speed-pid</input>
324 <output>ap/speed-cmd-norm</output>
329 <!-- *********************************************************-->
330 <channel name="Altitude">
332 <pure_gain name="ap/altitude-error-vfps">
333 <input>velocities/v-down-fps</input> <!--Feet here-->
337 <summer name="ap/altitude-error">
338 <input>ap/input-altitude</input>
339 <input>-position/h-sl-ft</input>
340 <input>ap/altitude-error-vfps</input>
349 <!--Transient speed - see air speed PID-->
350 <summer name="ap/altitude-transient-error">
351 <input>ap/output-pitch-current</input>
352 <input>-ap/altitude-cmd-norm</input>
355 <switch name="ap/altitude-trigger">
356 <default value="0.0"/>
358 ap/pitch-selector == 2
365 <pid name="ap/altitude-pid-transient">
366 <input>ap/altitude-transient-error</input>
370 <trigger>ap/altitude-trigger</trigger>
372 <!--End transient PID -->
374 <switch name="ap/altitude-error-switched">
375 <default value="ap/altitude-pid-transient"/>
376 <!--<default value="0.0"/>-->
377 <test value="ap/altitude-error">
378 ap/pitch-selector == 2
382 <pure_gain name="ap/altitude-error-norm">
383 <input>ap/altitude-error-switched</input>
388 <!-- <scheduled_gain name="ap/altitude-error-norm">
389 <input>ap/altitude-error-switched</input>
391 <independentVar> position/h-sl-meters </independentVar>
400 <pid name="ap/altitude-pid">
401 <input>ap/altitude-error-norm</input>
402 <kp> 0.5 </kp><!--0.3-->
403 <ki> 0.1</ki><!--0.04-->
404 <kd> 0.0</kd><!--0.04-->
405 <trigger>ap/windup-trigger</trigger>
412 <pure_gain name="ap/altitude-cmd">
413 <input>ap/altitude-pid</input>
415 <output>ap/altitude-cmd-norm</output>
420 <!-- ************************** STU Glissada *******************************-->
422 <channel name="Glideslope stab">
424 <summer name="ap/gs-v-speed">
425 <input>ap/input-glideslope-speed</input> <!--Feet here-->
426 <input>ap/input-glideslope-delta</input>
427 <!--7 m/s max vert speed-->
434 <summer name="ap/gs-error">
435 <input>velocities/v-down-fps</input> <!--Feet here-->
436 <input>ap/gs-v-speed</input>
439 <switch name="ap/gs-gain-alt">
440 <default value="1.0"/>
442 instrumentation/indicated-altitude-m lt 250.0
446 <pure_gain name="ap/gs-error-corr">
447 <input>ap/gs-error</input>
448 <gain>ap/gs-gain-alt</gain>
451 <switch name="ap/gs-limiter">
452 <default value="0.0"/>
454 ap/windup-trigger != 0.0 <!--We stop Ki then pitch channel is limited-->
458 <switch name="ap/gs-trigger">
459 <default value="-1.0"/>
460 <test value="ap/gs-limiter">
461 ap/pitch-selector == 5
467 <switch name="ap/gs-error-switched">
469 <default value="0.0"/>
470 <test value="ap/gs-error-corr">
471 ap/pitch-selector == 5
477 <pid name="ap/gs-pid">
478 <input>ap/gs-error-switched</input>
482 <trigger>ap/gs-trigger</trigger>
487 <output>ap/glideslope-cmd-norm</output>
492 <!--Transient compensation for "AP on" time-->
493 <channel name="Pitch compensation">
495 <switch name="ap/pitch-compensed">
496 <default value="attitude/pitch-rad"/>
497 <test value="ap/stab-input-pitch-rad">
498 ap/pitch-selector == 1
505 <!-- ********************** Pitch stabilizer ***********************************-->
506 <channel name="Pitch">
508 <!-- Pitch stab mode selector
509 ap/pitch-selector state:
511 1 - stabilize current pitch value
512 2 - stabilize current altitude by variate pitch
513 3 - stabilize current airspeed
514 4 - stabilize current Mach
515 5 - stabilize glideslope
518 <switch name="ap/input-pitch-rad">
519 <default value="ap/pitch-compensed"/>
521 ap/pitch-selector == 1
523 <test value="ap/altitude-cmd-norm">
524 ap/pitch-selector == 2
526 <test value="ap/speed-cmd-norm">
527 ap/pitch-selector == 3
529 <test value="ap/mach-cmd-norm">
530 ap/pitch-selector == 4
532 <test value="ap/glideslope-cmd-norm">
533 ap/pitch-selector == 5
543 <lag_filter name="ap/input-pitch-switched">
544 <input>ap/input-pitch-rad</input>
545 <c1>0.175</c1><!--0.4-->
546 <output>ap/output-pitch-current</output><!--For transient procedure support-->
549 <!-- <summer name="ap/input-pitch-switched">
550 <input>ap/input-pitch-rad</input>
556 <output>ap/output-pitch-current</output>
560 <fcs_function name="ap/bank-compensation">
561 <description>Abs</description>
565 <property>attitude/phi-rad</property>
572 <summer name="ap/pitch-error">
573 <input>ap/input-pitch-switched</input>
574 <input>ap/bank-compensation</input>
575 <input>-attitude/pitch-rad</input>
583 <switch name="ap/pitch-error-switched">
584 <default value="0.0"/>
585 <test value="ap/pitch-error">
590 <switch name="ap/w-t">
591 <default value="0.0"/>
596 fcs/absu-pitch gt 0.8
599 fcs/absu-pitch lt -0.4
601 <output>ap/windup-trigger</output>
604 <pid name="ap/pitch-hold-pid">
605 <input>ap/pitch-error-switched</input>
609 <trigger>ap/windup-trigger</trigger>
617 <!--Turbulence switch-->
618 <switch name="ap/pitch-turb">
619 <default value="-2.0"/>
625 <pure_gain name="ap/pitch-damper">
626 <input>velocities/q-aero-rad_sec</input>
627 <gain>ap/pitch-turb</gain>
634 <summer name="ap/pitch-ac">
635 <input>ap/pitch-hold-pid</input>
636 <input>ap/pitch-damper</input>
639 <!-- Autopilot or Pitch Damper only? -->
640 <switch name="ap/pitch-inverted">
641 <default value="ap/pitch-ac"/>
642 <test value="ap/pitch-damper">
648 <!-- +++++++++++++++++++ SUU ( enchance control system ) ++++++++++++++++++ -->
650 There is a system for enchance pitch control. It read pitch trimmer position and adjust gain of pitch channel of yoke control.
652 <scheduled_gain name="ap/suu">
653 <input>fcs/elevator-cmd-norm</input>
655 <independentVar> fcs/pitch-trim-cmd-norm </independentVar>
667 <switch name="ap/suu-switched">
668 <default value="0.0"/>
669 <test value="ap/suu">
674 <summer name="ap/pitch-suu">
675 <input>ap/pitch-inverted</input>
676 <input>ap/suu-switched</input>
683 <!-- +++++++++++++++++++ END SUU subsystem ++++++++++++++++++ -->
685 <pure_gain name="ap/elevator">
686 <input>-ap/pitch-suu</input>
687 <gain>systems/electrical-ok</gain>
688 <output>fcs/absu-pitch</output>
697 <!-- +++++++++++++++++++ END Pitch Channels ++++++++++++++++++ -->
699 <!-- *********************** Heading channels ************************ -->
701 <channel name="Heading stab">
703 <pure_gain name="ap/heading-true-deg">
704 <input>attitude/heading-true-rad</input>
708 <summer name="ap/heading-fork">
709 <input> ap/heading-true-deg </input>
710 <input> -instrumentation/tks-heading </input>
713 <!--******************************* VOR Staff ***************************-->
714 <summer name="ap/heading-error-pnp">
715 <input> -instrumentation/pnp-heading </input>
716 <input> ap/input-heading-pnp </input>
717 <input> -instrumentation/drift-angle-deg </input>
720 <switch name="ap/heading-error-vor">
721 <default value="ap/heading-error-auto"/>
722 <test value="ap/heading-error-pnp">
723 ap/delta-deadband ne 0
728 <pure_gain name="ap/vor-hdg">
729 <input> ap/hdg-out </input>
733 <!--VOR angle stabilizer (epsilon) -->
734 <pure_gain name="ap/vor-beam-error">
735 <!--<input> debug/deviation-deg</input>-->
736 <input> -ap/input-heading-delta </input>
737 <gain> 2.0 </gain><!--1-->
744 <lag_filter name="ap/beam-error-filtered">
745 <input>ap/vor-beam-error</input>
749 <pure_gain name="ap/beam-error-adjusted">
750 <input> ap/beam-error-filtered </input>
754 <switch name="ap/vor-eps">
755 <default value="0.0"/>
756 <test value="ap/beam-error-adjusted">
757 ap/roll-selector eq 3
761 <!--******************************* ZK Staff ***************************-->
762 <summer name="ap/heading-error-zk">
763 <!--<input> -ap/heading-true-deg </input>-->
764 <input> -instrumentation/pnp-heading </input>
765 <input> ap/input-heading-zk </input>
767 <!--******************************* NVU Staff ***************************-->
768 <pure_gain name="ap/nvu-delta-corr">
769 <input> ap/input-z </input>
777 <summer name="ap/heading-error-nvu">
778 <input> -instrumentation/tks-heading </input>
779 <input> ap/input-heading-nvu </input>
780 <input> -ap/nvu-delta-corr </input>
781 <input> -instrumentation/drift-angle-deg </input>
784 <!--******************************* ILS Staff ***************************-->
785 <summer name="ap/heading-error-ils">
786 <input> -instrumentation/pnp-heading </input>
787 <input> ap/input-heading-pnp </input>
788 <input> -instrumentation/drift-angle-deg </input>
791 <switch name="ap/ils-error-bias-switch">
792 <default value="0.0"/>
794 ap/heading-error-ils lt -180
796 <test value="-360.0">
797 ap/heading-error-ils gt 180
801 <switch name="ap/ils-beam-ki">
802 <default value="0.003"/><!--0.003-->
803 <test value="0.007"><!--0.007-->
804 instrumentation/indicated-altitude-m lt 250.0
808 <pure_gain name="ap/ils-beam-error">
809 <!--<input> -debug/heading-deg</input>-->
810 <input> ap/ils-epsilon </input><!---10...10-->
811 <!--<input> ap/ils-angle-deviation </input>-->
812 <gain> 2.5 </gain><!--25 deg from compass hdg for approach-->
819 <lag_filter name="ap/ils-beam-filtered">
820 <input>ap/ils-beam-error</input>
826 <summer name="ap/ils-deviation">
827 <input> ap/ils-error-bias-switch </input>
828 <input> ap/heading-error-ils </input>
829 <input> ap/ils-beam-filtered </input>
832 <deadband name="ap/ils-hdg-windup">
833 <input> ap/ils-deviation </input>
834 <width> 40.0 </width>
837 <switch name="ap/ils-hdg-stop-int">
838 <default value="-1.0"/>
840 ap/roll-selector == 5
841 ap/ils-hdg-windup == 0
845 <pid name="ap/ils-hdg-pid">
846 <input>ap/ils-deviation</input>
847 <kp> 0.03 </kp><!--0.042-->
848 <ki> ap/ils-beam-ki </ki><!--0.002 - 0.005-->
849 <kd> 0.047 </kd><!--0.047-->
850 <trigger>ap/ils-hdg-stop-int</trigger>
853 <switch name="ap/ils-hdg-switched">
854 <default value="0.0"/>
855 <test value="ap/ils-hdg-pid">
856 ap/pitch-selector ne 5
860 <summer name="ap/ils-out">
861 <!-- <input> ap/ils-beam-pid </input>
862 <input> ap/ils-beam-integrator </input>-->
863 <input> ap/ils-hdg-pid </input>
870 <!-- ############################## Needles ############################## -->
871 <pure_gain name="ap/heading-needle-deflection-ils">
872 <!--<input> ap/ils-angle-deviation </input>-->
873 <input> ap/ils-epsilon </input>
874 <gain>0.143</gain><!--0.1-->
881 <pure_gain name="ap/heading-needle-deflection-vor">
882 <input> -ap/input-heading-delta </input>
890 <pure_gain name="ap/heading-needle-deflection-nvu">
891 <input> -ap/input-z </input>
899 <switch name="ap/heading-needle-deflection">
900 <default value="0.0"/>
901 <test value="ap/heading-needle-deflection-vor">
902 ap/roll-selector eq 3
905 <test value="ap/heading-needle-deflection-nvu">
906 ap/roll-selector eq 4
909 <test value="ap/heading-needle-deflection-ils">
910 <!--ap/roll-selector eq 5-->
915 <pure_gain name="ap/gs-needle-deflection-ils">
916 <input> ap/input-glideslope-delta </input>
917 <gain>0.286</gain> <!---GS needle from NAV radio:3.5 ... 3.5-->
924 <switch name="ap/gs-needle-deflection">
925 <default value="0.0"/>
926 <test value="ap/gs-needle-deflection-ils">
927 <!--ap/pitch-selector eq 5-->
931 <!--****************************** Heading stabilizer **********************-->
932 <!--ILS approach (STU Kurs) have own pid. -->
933 <switch name="ap/heading-error">
934 <default value="0.0"/>
935 <test value="ap/heading-error-zk">
936 ap/roll-selector eq 2
938 <test value="ap/heading-error-pnp">
939 ap/roll-selector eq 3
942 <test value="ap/heading-error-nvu">
943 ap/roll-selector eq 4
948 <switch name="ap/heading-error-bias-switch">
949 <default value="0.0"/>
951 ap/heading-error lt -180
953 <test value="-360.0">
954 ap/heading-error gt 180
958 <summer name="ap/heading-deviation">
959 <input> ap/heading-error-bias-switch </input>
960 <input> ap/heading-error </input>
961 <input> ap/vor-eps </input>
964 <pid name="ap/heading-pid">
965 <input>ap/heading-deviation</input>
968 <kd> 0.025 </kd><!--1.3-->
969 <output>ap/heading-cmd-norm</output>
974 <!-- *********************** Wing leveler ************************ -->
975 <channel name="Roll">
976 <!-- Roll stab mode selector
977 ap/roll-selector state:
979 1 - stabilize current roll value
980 2 - stabilize current heading by variate roll
986 <switch name="ap/roll-trigger">
987 <default value="-1.0"/>
993 <switch name="ap/input-roll-rad">
994 <!--All automatic stabilizer exclude ILS use it-->
995 <default value="ap/heading-cmd-norm"/>
997 ap/roll-selector == 0 <!--Roll damper only-->
1000 <test value="ap/stab-input-roll-rad">
1001 ap/roll-selector == 1 <!--Roll wheel-->
1004 <test value="ap/ils-out">
1005 ap/roll-selector == 5 <!--ILS (STU Kurs) pid-->
1010 <lag_filter name="ap/input-roll-rad-clipped">
1011 <input>ap/input-roll-rad</input>
1019 <summer name="ap/roll-error">
1020 <input>ap/input-roll-rad-clipped</input>
1021 <input>-attitude/roll-rad</input>
1024 <pid name="ap/roll-hold-pid">
1025 <input>ap/roll-error</input>
1029 <trigger>ap/roll-trigger</trigger>
1035 <!-- Autopilot or Roll Damper only? -->
1036 <switch name="ap/roll-pid-switched">
1037 <default value="0.0"/>
1038 <test value="ap/roll-hold-pid">
1043 <pid name="ap/roll-damper">
1044 <input>-attitude/roll-rad</input>
1054 <lag_filter name="ap/roll-lf">
1055 <input>fcs/aileron-cmd-norm</input>
1059 <pure_gain name="ap/roll-suu">
1060 <input>ap/roll-lf</input>
1065 <summer name="ap/roll-out">
1066 <input>ap/roll-damper</input>
1067 <input>ap/roll-pid-switched</input>
1068 <!--<input>ap/roll-suu</input>-->
1075 <!--Turbulence switch-->
1076 <scheduled_gain name="ap/roll-turb">
1077 <input>ap/roll-out</input>
1079 <independentVar> ap/turbulence </independentVar>
1087 <pure_gain name="ap/aileron">
1088 <input>ap/roll-turb</input>
1090 <output>fcs/absu-roll</output>
1094 <!--******************************** Yaw control *****************************-->
1095 <channel name="Yaw">
1098 <washout_filter name="ap/yaw-wf">
1099 <input>velocities/r-aero-rad_sec</input>
1103 <pure_gain name="ap/yaw-damper">
1104 <input>ap/yaw-wf</input>
1105 <gain>8.0</gain><!--8-->
1108 <!--Slip stabilizer-->
1109 <switch name="ap/beta-rad-switched">
1110 <default value="0.0"/>
1111 <test value="aero/beta-rad">
1116 <pid name="ap/yaw-pid">
1117 <input>ap/beta-rad-switched</input>
1126 <!-- Autopilot or Yaw Damper only? -->
1127 <switch name="ap/yaw-pid-switched">
1128 <default value="0.0"/>
1129 <test value="ap/yaw-pid">
1135 <summer name="ap/yaw-out">
1136 <input>ap/yaw-damper</input>
1137 <!--<input>ap/yaw-suu</input>-->
1138 <input>-ap/yaw-pid-switched</input>
1144 <!--Turbulence switch-->
1145 <scheduled_gain name="ap/yaw-turb">
1146 <input>ap/yaw-out</input>
1148 <independentVar> ap/turbulence </independentVar>
1156 <pure_gain name="ap/rudder">
1157 <input>ap/yaw-turb</input>
1159 <output>fcs/absu-yaw</output>
1163 <!-- ***************************** Reverser ******************************* -->
1164 <channel name="Reverser">
1166 <switch name="fcs/rev-1-left-cmd">
1167 <default value="0.0"/>
1169 fcs/revers-by-key gt 0.5
1171 <test value="fcs/revers-by-joy">
1172 fcs/throttle-cmd-norm[0] lt fcs/revers-1-limit
1175 <switch name="fcs/rev-1-right-cmd">
1176 <default value="0.0"/>
1178 fcs/revers-by-key gt 0.5
1180 <test value="fcs/revers-by-joy">
1181 fcs/throttle-cmd-norm[2] lt fcs/revers-1-limit
1184 <switch name="fcs/rev-2-left-cmd">
1185 <default value="0.0"/>
1187 fcs/revers-by-key gt 0.5
1189 <test value="fcs/revers-by-joy">
1190 fcs/throttle-cmd-norm[0] lt fcs/revers-2-limit
1193 <switch name="fcs/rev-2-right-cmd">
1194 <default value="0.0"/>
1196 fcs/revers-by-key gt 0.5
1198 <test value="fcs/revers-by-joy">
1199 fcs/throttle-cmd-norm[2] lt fcs/revers-2-limit
1203 <kinematic name="fcs/reverser-lever-left">
1204 <input>fcs/rev-1-left-cmd</input>
1207 <position>0</position>
1211 <position>2.35</position>
1215 <output>propulsion/engine[0]/reverser-angle-rad</output>
1218 <kinematic name="fcs/reverser-lever-right">
1219 <input>fcs/rev-1-right-cmd</input>
1222 <position>0</position>
1226 <position>2.35</position>
1230 <output>propulsion/engine[2]/reverser-angle-rad</output>
1233 <kinematic name="fcs/reverser-throttle-left">
1234 <input>fcs/rev-2-left-cmd</input>
1237 <position>0</position>
1241 <position>0.6</position>
1247 <kinematic name="fcs/reverser-throttle-right">
1248 <input>fcs/rev-2-right-cmd</input>
1251 <position>0</position>
1255 <position>0.6</position>
1262 <!-- ***************************** Autothrottle ******************************* -->
1265 <summer name="ap/at-error">
1266 <input>-ap/input-at</input>
1267 <input>velocities/vc-fps</input>
1274 <!--Transient compensation -->
1275 <summer name="ap/at-transient-error">
1276 <input>fcs/throttle-cmd-norm[0]</input>
1277 <input>-ap/at-pid-output</input>
1280 <switch name="ap/at-tr-err-switched">
1281 <default value="0.0"/>
1282 <test value="-ap/at-transient-error">
1287 <pure_gain name="ap/at-transient-compensator">
1288 <input>ap/at-tr-err-switched</input>
1292 <!--End transient procedure -->
1294 <switch name="ap/at-hold">
1295 <default value="0.0"/>
1307 <switch name="ap/at-trigger">
1308 <default value="0.0"/>
1317 ap/at-pid-output > 0.9
1321 ap/at-pid-output lt 0.1
1326 <switch name="ap/at-error-switched">
1327 <default value="ap/at-transient-compensator"/>
1328 <test value="ap/at-error">
1333 <switch name="ap/at-pid-ki">
1334 <default value="0.1"/>
1335 <test value="0.001">
1339 <switch name="ap/at-pid-kd">
1340 <default value="0.0"/>
1346 <pid name="ap/at-pid">
1347 <input>-ap/at-error-switched</input>
1349 <ki> ap/at-pid-ki </ki>
1350 <kd> ap/at-pid-kd </kd>
1351 <trigger>ap/at-trigger</trigger>
1356 <output>ap/at-pid-output</output>
1359 <switch name="ap/at-thr-switched-0">
1360 <default value="fcs/throttle-cmd-norm[0]"/>
1361 <test value="fcs/reverser-throttle-left">
1362 fcs/reverser-throttle-left gt 0
1364 <test value="ap/at-pid">
1367 <output>fcs/at-throttle-cmd-norm[0]</output>
1370 <switch name="ap/at-thr-switched-1">
1371 <default value="fcs/throttle-cmd-norm[1]"/>
1372 <test value="ap/at-pid">
1375 <output>fcs/at-throttle-cmd-norm[1]</output>
1378 <switch name="ap/at-thr-switched-2">
1379 <default value="fcs/throttle-cmd-norm[2]"/>
1380 <test value="fcs/reverser-throttle-right">
1381 fcs/reverser-throttle-right gt 0
1383 <test value="ap/at-pid">
1386 <output>fcs/at-throttle-cmd-norm[2]</output>