<?xml version="1.0"?> <!-- ####################################### # Copyright (c) A3XX Development Team # ####################################### --> <!-- IT-AUTOFLIGHT --> <PropertyList> <!-- =============================================================== --> <!-- Lateral Modes --> <!-- =============================================================== --> <pi-simple-controller> <name>ROLL CONTROLLER: HDG/LNAV</name> <debug>false</debug> <enable> <condition> <and> <or> <equals> <property>/it-autoflight/output/lat</property> <value>0</value> </equals> <equals> <property>/it-autoflight/output/lat</property> <value>1</value> </equals> </or> <or> <equals> <property>/it-autoflight/output/ap1</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/ap2</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/fd1</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/fd2</property> <value>1</value> </equals> </or> </and> </condition> </enable> <input> <property>/it-autoflight/internal/heading-error-deg</property> <scale> <property>/it-autoflight/config/cmd/roll-scale</property> </scale> </input> <reference> <value>0</value> </reference> <output> <property>/it-autoflight/internal/target-roll-deg</property> </output> <config> <Kp> <property>/it-autoflight/config/cmd/roll-kp</property> </Kp> <Ki>0.0</Ki> <min> <property>/it-autoflight/internal/bank-limit</property> <scale>-1</scale> </min> <max> <property>/it-autoflight/internal/bank-limit</property> </max> </config> </pi-simple-controller> <pi-simple-controller> <name>VORLOC TRK</name> <debug>false</debug> <enable> <condition> <and> <equals> <property>/it-autoflight/output/lat</property> <value>2</value> </equals> <or> <equals> <property>/it-autoflight/output/ap1</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/ap2</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/fd1</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/fd2</property> <value>1</value> </equals> </or> </and> </condition> </enable> <input> <condition> <equals> <property>/it-autoflight/settings/use-backcourse</property> <value>0</value> </equals> </condition> <property>/it-autoflight/internal/nav-heading-error-deg</property> </input> <input> <condition> <equals> <property>/it-autoflight/settings/use-backcourse</property> <value>1</value> </equals> </condition> <property>/it-autoflight/internal/nav-bc-heading-error-deg</property> </input> <reference> <value>0.0</value> </reference> <output> <property>/it-autoflight/internal/target-roll-deg</property> </output> <config> <Kp> <property>/it-autoflight/config/cmd/vorloc</property> </Kp> <Ki>0.0001</Ki> <min> <property>/it-autoflight/internal/bank-limit</property> <scale>-1</scale> </min> <max> <property>/it-autoflight/internal/bank-limit</property> </max> </config> </pi-simple-controller> <filter> <name>ROLL DEG SYNC</name> <debug>false</debug> <type>gain</type> <gain>1</gain> <enable> <condition> <and> <not-equals> <property>/it-autoflight/output/ap1</property> <value>1</value> </not-equals> <not-equals> <property>/it-autoflight/output/ap2</property> <value>1</value> </not-equals> <not-equals> <property>/it-autoflight/output/fd1</property> <value>1</value> </not-equals> <not-equals> <property>/it-autoflight/output/fd2</property> <value>1</value> </not-equals> </and> </condition> </enable> <input>/orientation/roll-deg</input> <output>/it-autoflight/internal/target-roll-deg</output> <min> <property>/it-autoflight/internal/bank-limit</property> <scale>-1</scale> </min> <max> <property>/it-autoflight/internal/bank-limit</property> </max> </filter> <filter> <name>IT-CONTROLLER: TARGET ROLL CMD</name> <debug>false</debug> <feedback-if-disabled>true</feedback-if-disabled> <initialize-to>output</initialize-to> <input> <property>/it-autoflight/internal/target-roll-deg</property> </input> <output>/it-autoflight/internal/target-roll</output> <type>noise-spike</type> <max-rate-of-change>6</max-rate-of-change> </filter> <filter> <name>System Command: Roll Rate</name> <debug>false</debug> <type>gain</type> <gain> <property>/it-autoflight/config/roll/gain</property> </gain> <enable> <condition> <or> <equals> <property>/it-autoflight/output/ap1</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/ap2</property> <value>1</value> </equals> </or> </condition> </enable> <input> <property>/orientation/roll-deg</property> </input> <reference> <condition> <and> <not-equals> <property>/it-autoflight/output/lat</property> <value>4</value> </not-equals> <not-equals> <property>/it-autoflight/output/lat</property> <value>5</value> </not-equals> </and> </condition> <property>/it-autoflight/internal/target-roll</property> </reference> <reference> <condition> <or> <equals> <property>/it-autoflight/output/lat</property> <value>4</value> </equals> <equals> <property>/it-autoflight/output/lat</property> <value>5</value> </equals> </or> </condition> <value>0</value> </reference> <output> <property>/it-autoflight/internal/aileron-cmd</property> <!-- Inputs to the FBW Roll Rate --> </output> <min> <property>/it-autoflight/config/roll/min</property> </min> <max> <property>/it-autoflight/config/roll/max</property> </max> </filter> <!-- =============================================================== --> <!-- Yaw Control --> <!-- =============================================================== --> <pi-simple-controller> <name>RUDDER VORLOC TRK</name> <debug>false</debug> <enable> <condition> <equals> <property>/it-autoflight/output/lat</property> <value>4</value> </equals> </condition> </enable> <input> <property>/it-autoflight/internal/nav-heading-error-deg</property> </input> <reference> <value>0</value> </reference> <output>/it-autoflight/internal/rudder-cmd</output> <config> <Kp> <property>/it-autoflight/config/autoland/kp-rudder</property> </Kp> <Ki>0</Ki> </config> <min>-0.15</min> <max>0.15</max> </pi-simple-controller> <filter> <name>IT-CONTROLLER: RUDDER CMD</name> <debug>false</debug> <feedback-if-disabled>true</feedback-if-disabled> <initialize-to>output</initialize-to> <enable> <condition> <or> <equals> <property>/it-autoflight/output/ap1</property> <value>1</value> </equals> <equals> <property>/it-autoflight/output/ap2</property> <value>1</value> </equals> </or> </condition> </enable> <input> <condition> <not-equals> <property>/it-autoflight/output/lat</property> <value>4</value> </not-equals> </condition> <value>0</value> </input> <input> <condition> <equals> <property>/it-autoflight/output/lat</property> <value>4</value> </equals> </condition> <property>/it-autoflight/internal/rudder-cmd</property> </input> <output>/controls/flight/rudder</output> <type>noise-spike</type> <max-rate-of-change>0.6</max-rate-of-change> </filter> </PropertyList>