123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509 |
- <?xml version="1.0"?>
-
- <!-- Generic Autopilot Configuration -->
- <!-- Each component is evaluated in the order specified. You can make up -->
- <!-- property names to pass the result of one component on to a subsequent -->
- <!-- component. -->
- <PropertyList>
- <!-- =============================================================== -->
- <!-- Prediction filters -->
- <!-- ===============================================================
- <predict-simple>
- <input>/autopilot/internal/nav1-track-error-deg</input>
- <output>/autopilot/internal/nav1-track-error-lookahead-deg</output>
- <seconds>8.0</seconds>
- <filter-gain>0.0</filter-gain>
- </predict-simple>-->
- <!-- =============================================================== -->
- <!-- Roll Axis Modes -->
- <!-- =============================================================== -->
- <!-- Wing leveler -->
- <pid-controller>
- <name>Wing Leveler (Turn Coordinator based)</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>wing-leveler</value>
- </enable>
- <input>
- <prop>/instrumentation/turn-indicator/indicated-turn-rate</prop>
- </input>
- <reference>
- <value>0.0</value>
- </reference>
- <output>
- <prop>/controls/flight/aileron</prop>
- </output>
- <config>
- <Kp>1.02</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.4</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.0000001</Td> <!-- derivator time -->
- <u_min>-1.0</u_min> <!-- minimum output clamp -->
- <u_max>1.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Heading Bug Hold. 2 stage cascade controller. -->
- <!-- Stage #1 sets target roll based on diff between current heading -->
- <!-- and heading bug. -->
- <pid-controller>
- <name>Heading Bug Hold (FDM mag heading based) Stage 1</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>dg-heading-hold</value>
- </enable>
- <input>
- <prop>/autopilot/internal/fdm-heading-bug-error-deg</prop>
- </input>
- <reference>
- <value>0.0</value>
- </reference>
- <output>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </output>
- <config>
- <Kp>-1.0</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-30.0</u_min> <!-- minimum output clamp -->
- <u_max>30.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Stage #2 drives the ailerons to achieve the desired roll deg. -->
- <pid-controller>
- <name>Heading Bug Hold (DG based) Stage 2</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>dg-heading-hold</value>
- </enable>
- <input>
- <prop>/orientation/roll-deg</prop>
- </input>
- <reference>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </reference>
- <output>
- <prop>/controls/flight/aileron</prop>
- </output>
- <config>
- <Kp>0.02</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-1.0</u_min> <!-- minimum output clamp -->
- <u_max>1.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- True Heading hold. 2 stage cascade controller. -->
- <!-- Stage #1 sets target roll based on diff between current heading -->
- <!-- and target heading. -->
- <pid-controller>
- <name>True Heading Hold (DG based) Stage 1</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>true-heading-hold</value>
- </enable>
- <input>
- <prop>/autopilot/internal/true-heading-error-deg</prop>
- </input>
- <reference>
- <value>0.0</value>
- </reference>
- <output>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </output>
- <config>
- <Kp>-1.0</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-30.0</u_min> <!-- minimum output clamp -->
- <u_max>30.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Stage #2 drives the ailerons to achieve the desired roll deg. -->
- <pid-controller>
- <name>True Heading Hold (DG based) Stage 2</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>true-heading-hold</value>
- </enable>
- <input>
- <prop>/orientation/roll-deg</prop>
- </input>
- <reference>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </reference>
- <output>
- <prop>/controls/flight/aileron</prop>
- </output>
- <config>
- <Kp>0.02</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-1.0</u_min> <!-- minimum output clamp -->
- <u_max>1.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Nav1 hold. 2 stage cascade controller. -->
- <!-- Stage #1 sets target roll based on diff between current heading -->
- <!-- and target heading. -->
- <pid-controller>
- <name>Nav1 Hold Stage 1</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>nav1-hold</value>
- </enable>
- <input>
- <prop>/autopilot/internal/nav1-track-error-deg</prop>
- </input>
- <reference>
- <value>0.0</value>
- </reference>
- <output>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </output>
- <config>
- <Kp>-1.0</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-30.0</u_min> <!-- minimum output clamp -->
- <u_max>30.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Stage #2 drives the ailerons to achieve the desired roll deg. -->
- <pid-controller>
- <name>Nav1 Hold Stage 2</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>nav1-hold</value>
- </enable>
- <input>
- <prop>/orientation/roll-deg</prop>
- </input>
- <reference>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </reference>
- <output>
- <prop>/controls/flight/aileron</prop>
- </output>
- <config>
- <Kp>0.02</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-1.0</u_min> <!-- minimum output clamp -->
- <u_max>1.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
-
- <!-- Tacan hold. 2 stage cascade controller. -->
- <!-- Stage #1 sets target roll based on diff between current heading -->
- <!-- and target heading. -->
- <pid-controller>
- <name>Tacan Hold (DG based) Stage 1</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>tacan-hold</value>
- </enable>
- <input>
- <prop>/autopilot/internal/fdm-heading-bug-error-deg</prop>
- </input>
- <reference>
- <value>0.0</value>
- </reference>
- <output>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </output>
- <config>
- <Kp>-1.0</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-30.0</u_min> <!-- minimum output clamp -->
- <u_max>30.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Stage #2 drives the ailerons to achieve the desired roll deg. -->
- <pid-controller>
- <name>Tacan Hold (DG based) Stage 2</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/heading</prop>
- <value>tacan-hold</value>
- </enable>
- <input>
- <prop>/orientation/roll-deg</prop>
- </input>
- <reference>
- <prop>/autopilot/internal/target-roll-deg</prop>
- </reference>
- <output>
- <prop>/controls/flight/aileron</prop>
- </output>
- <config>
- <Kp>0.02</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>10.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-1.0</u_min> <!-- minimum output clamp -->
- <u_max>1.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Altitude hold. 2 stage cascade controller. -->
- <!-- Stage #1 sets target rate of climb based on diff between current alt -->
- <!-- and target altitude. -->
- <pi-simple-controller>
- <name>Altitude Hold (Altimeter based) Stage 1</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/altitude</prop>
- <value>altitude-hold</value>
- </enable>
- <input>
- <prop>/position/altitude-ft</prop>
- </input>
- <reference>
- <prop>/autopilot/settings/target-altitude-ft</prop>
- </reference>
- <output>
- <prop>/autopilot/internal/target-climb-rate-fps</prop>
- </output>
- <config>
- <Kp>0.7</Kp> <!-- proportional gain -->
- <Ki>0.15</Ki> <!-- integral gain -->
- <u_min>-14.67</u_min> <!-- minimum output clamp -->
- <u_max>8.33</u_max> <!-- maximum output clamp -->
- </config>
- </pi-simple-controller>
- <!-- Stage #2 drives the elevator-trim to achieve the desired climb rate. -->
- <pid-controller>
- <name>Altitude Hold (Altimeter based) Stage 2</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/altitude</prop>
- <value>altitude-hold</value>
- </enable>
- <input>
- <prop>/velocities/vertical-speed-fps</prop>
- </input>
- <reference>
- <prop>/autopilot/internal/target-climb-rate-fps</prop>
- </reference>
- <output>
- <prop>/controls/engines/engine[0]/throttle</prop>
-
- </output>
- <config>
- <Kp>-0.5</Kp> <!-- proportional gain -->
- <beta>0.5</beta> <!-- input value weighing factor -->
- <alpha>0.15</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>5.0</Ti> <!-- integrator time -->
- <Td>0.000001</Td> <!-- derivator time -->
- <u_min>-10.0</u_min> <!-- minimum output clamp -->
- <u_max>10.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- AGL hold. 2 stage cascade controller. -->
- <!-- Stage #1 sets target rate of climb based on diff between current agl -->
- <!-- and target agl. -->
- <pi-simple-controller>
- <name>AGL Hold (Altimeter based) Stage 1</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/altitude</prop>
- <value>agl-hold</value>
- </enable>
- <input>
- <prop>/position/altitude-agl-ft</prop>
- </input>
- <reference>
- <prop>/autopilot/settings/target-agl-ft</prop>
- </reference>
- <output>
- <prop>/autopilot/internal/target-climb-rate-fps</prop>
- </output>
- <config>
- <Kp>1</Kp> <!-- proportional gain -->
- <Ki>0.0</Ki> <!-- integral gain -->
- <u_min>-16.67</u_min> <!-- minimum output clamp -->
- <u_max>8.33</u_max> <!-- maximum output clamp -->
- </config>
- </pi-simple-controller>
- <!-- Stage #2 drives the elevator-trim to achieve the desired climb rate. -->
- <pid-controller>
- <name>AGL Hold (Altimeter based) Stage 2</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/altitude</prop>
- <value>agl-hold</value>
- </enable>
- <input>
- <prop>/velocities/vertical-speed-fps</prop>
- </input>
- <reference>
- <prop>/autopilot/internal/target-climb-rate-fps</prop>
- </reference>
- <output>
- <prop>/controls/engines/engine[0]/throttle</prop>
- </output>
- <config>
- <Kp>-1.0</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>5.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-20.0</u_min> <!-- minimum output clamp -->
- <u_max>20.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- Glideslope hold. -->
- <!-- Stage #2 drives the elevator-trim to achieve the desired climb rate. -->
- <pid-controller>
- <name>Glideslop Hold</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/altitude</prop>
- <value>gs1-hold</value>
- </enable>
- <input>
- <prop>/velocities/vertical-speed-fps</prop>
- </input>
- <reference>
- <prop>/instrumentation/nav[0]/gs-rate-of-climb</prop>
- </reference>
- <output>
- <prop>/controls/engines/engine[0]/throttle</prop>
- </output>
- <config>
- <Kp>-1.0</Kp> <!-- proportional gain -->
- <beta>1.0</beta> <!-- input value weighing factor -->
- <alpha>0.1</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.0</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>5.0</Ti> <!-- integrator time -->
- <Td>0.00001</Td> <!-- derivator time -->
- <u_min>-20.0</u_min> <!-- minimum output clamp -->
- <u_max>20.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- vertical speed hold -->
- <pid-controller>
- <name>Vertical Speed Hold</name>
- <debug>false</debug>
- <enable>
- <prop>/autopilot/locks/altitude</prop>
- <value>vertical-speed-hold</value>
- </enable>
- <input>
- <prop>/velocities/vertical-speed-fps</prop>
- </input>
- <reference>
- <prop>/autopilot/settings/vertical-speed-fpm</prop>
- <scale>0.01667</scale>
- </reference>
- <output>
- <prop>/controls/engines/engine[0]/throttle</prop>
- </output>
- <config>
- <Kp>-0.1</Kp> <!-- proportional gain -->
- <beta>0.1</beta> <!-- input value weighing factor -->
- <alpha>0.15</alpha> <!-- low pass filter weighing factor -->
- <gamma>0.1</gamma> <!-- input value weighing factor for -->
- <!-- unfiltered derivative error -->
- <Ti>12.0</Ti> <!-- integrator time -->
- <Td>0.000001</Td> <!-- derivator time -->
- <u_min>-5.0</u_min> <!-- minimum output clamp -->
- <u_max>5.0</u_max> <!-- maximum output clamp -->
- </config>
- </pid-controller>
- <!-- =============================================================== -->
- <!-- Velocity Modes -->
- <!-- =============================================================== -->
-
-
-
- </PropertyList>
|