Final V3.6.0 version of c172p-detailed.
https://github.com/Juanvvc/c172p-detailed commit 874b89fedff35dfe1967e09365d3cb0d5b11522c
This commit is contained in:
parent
733027e67b
commit
1ab65221b1
68 changed files with 17969 additions and 16854 deletions
|
@ -1,4 +1,5 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
File: IO320.xml
|
File: IO320.xml
|
||||||
Author: Ron Jensen
|
Author: Ron Jensen
|
||||||
|
@ -12,16 +13,15 @@
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<piston_engine name="IO320">
|
<piston_engine name="IO320">
|
||||||
<minmp unit="INHG"> 8.3 </minmp> <!-- Deprecated -->
|
<minmp unit="INHG"> 8.3 </minmp> <!-- Deprecated -->
|
||||||
<maxmp unit="INHG"> 28.5 </maxmp>
|
<maxmp unit="INHG"> 28.5 </maxmp>
|
||||||
<displacement unit="IN3"> 320.0 </displacement>
|
<displacement unit="IN3"> 320.0 </displacement>
|
||||||
<maxhp> 160.0 </maxhp>
|
<maxhp> 160.0 </maxhp>
|
||||||
<!-- bsfc> 0.37 </bsfc -->
|
<!-- bsfc> 0.37 </bsfc -->
|
||||||
<cycles> 4.0 </cycles>
|
<cycles> 4.0 </cycles>
|
||||||
<idlerpm> 600.0 </idlerpm>
|
<idlerpm> 600.0 </idlerpm>
|
||||||
<maxrpm> 2700.0 </maxrpm>
|
<maxrpm> 2700.0 </maxrpm>
|
||||||
<maxthrottle> 1.0 </maxthrottle>
|
<maxthrottle> 1.0 </maxthrottle>
|
||||||
<minthrottle> 0.1 </minthrottle>
|
<minthrottle> 0.1 </minthrottle>
|
||||||
<sparkfaildrop> 0.1 </sparkfaildrop>
|
<sparkfaildrop> 0.1 </sparkfaildrop>
|
||||||
</piston_engine>
|
</piston_engine>
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
File: IO360.xml
|
File: IO360.xml
|
||||||
Author: dany93
|
Author: dany93
|
||||||
|
@ -12,16 +13,15 @@
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<piston_engine name="IO360">
|
<piston_engine name="IO360">
|
||||||
<minmp unit="INHG"> 8.3 </minmp> <!-- Deprecated -->
|
<minmp unit="INHG"> 8.3 </minmp> <!-- Deprecated -->
|
||||||
<maxmp unit="INHG"> 28.5 </maxmp>
|
<maxmp unit="INHG"> 28.5 </maxmp>
|
||||||
<displacement unit="IN3"> 360.0 </displacement>
|
<displacement unit="IN3"> 360.0 </displacement>
|
||||||
<maxhp> 180.0 </maxhp>
|
<maxhp> 180.0 </maxhp>
|
||||||
<!-- bsfc> 0.37 </bsfc -->
|
<!-- bsfc> 0.37 </bsfc -->
|
||||||
<cycles> 4.0 </cycles>
|
<cycles> 4.0 </cycles>
|
||||||
<idlerpm> 600.0 </idlerpm>
|
<idlerpm> 600.0 </idlerpm>
|
||||||
<maxrpm> 2700.0 </maxrpm>
|
<maxrpm> 2700.0 </maxrpm>
|
||||||
<maxthrottle> 1.0 </maxthrottle>
|
<maxthrottle> 1.0 </maxthrottle>
|
||||||
<minthrottle> 0.1 </minthrottle>
|
<minthrottle> 0.1 </minthrottle>
|
||||||
<sparkfaildrop> 0.1 </sparkfaildrop>
|
<sparkfaildrop> 0.1 </sparkfaildrop>
|
||||||
</piston_engine>
|
</piston_engine>
|
||||||
|
|
||||||
|
|
|
@ -1,71 +1,72 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<propeller name="Fixed-Pitch 75-inch Two-Blade Propeller">
|
<propeller name="Fixed-Pitch 75-inch Two-Blade Propeller">
|
||||||
<ixx> 1.67 </ixx>
|
|
||||||
<diameter unit="IN"> 75.0 </diameter>
|
|
||||||
<numblades> 2 </numblades>
|
|
||||||
<minpitch> 22 </minpitch>
|
|
||||||
<maxpitch> 22 </maxpitch>
|
|
||||||
|
|
||||||
<table name="C_THRUST" type="internal">
|
<ixx> 1.67 </ixx>
|
||||||
<tableData>
|
<diameter unit="IN"> 75.0 </diameter>
|
||||||
0.0 0.068
|
<numblades> 2 </numblades>
|
||||||
0.1 0.068
|
<minpitch> 22 </minpitch>
|
||||||
0.2 0.067
|
<maxpitch> 22 </maxpitch>
|
||||||
0.3 0.066
|
|
||||||
0.4 0.064
|
|
||||||
0.5 0.062
|
|
||||||
0.6 0.059
|
|
||||||
0.7 0.054
|
|
||||||
0.8 0.043
|
|
||||||
0.9 0.031
|
|
||||||
1.0 0.019
|
|
||||||
1.1 0.008
|
|
||||||
1.2 -0.001
|
|
||||||
1.3 -0.008
|
|
||||||
1.4 -0.019
|
|
||||||
1.5 -0.029
|
|
||||||
1.6 -0.040
|
|
||||||
1.7 -0.050
|
|
||||||
1.8 -0.057
|
|
||||||
1.9 -0.061
|
|
||||||
2.0 -0.064
|
|
||||||
2.1 -0.066
|
|
||||||
2.2 -0.067
|
|
||||||
2.3 -0.068
|
|
||||||
5.0 -0.068
|
|
||||||
</tableData>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<table name="C_POWER" type = "internal">
|
<table name="C_THRUST" type="internal">
|
||||||
<tableData>
|
<tableData>
|
||||||
0.0 0.0580
|
0.0 0.068
|
||||||
0.1 0.0620
|
0.1 0.068
|
||||||
0.2 0.0600
|
0.2 0.067
|
||||||
0.3 0.0580
|
0.3 0.066
|
||||||
0.4 0.0520
|
0.4 0.064
|
||||||
0.5 0.0457
|
0.5 0.062
|
||||||
0.6 0.0436
|
0.6 0.059
|
||||||
0.7 0.0420
|
0.7 0.054
|
||||||
0.8 0.0372
|
0.8 0.043
|
||||||
0.9 0.0299
|
0.9 0.031
|
||||||
1.0 0.0202
|
1.0 0.019
|
||||||
1.1 -0.0111
|
1.1 0.008
|
||||||
1.2 -0.0075
|
1.2 -0.001
|
||||||
1.3 -0.0111
|
1.3 -0.008
|
||||||
1.4 -0.0202
|
1.4 -0.019
|
||||||
1.5 -0.0280
|
1.5 -0.029
|
||||||
1.6 -0.0346
|
1.6 -0.040
|
||||||
1.7 -0.0389
|
1.7 -0.050
|
||||||
1.8 -0.0421
|
1.8 -0.057
|
||||||
1.9 -0.0436
|
1.9 -0.061
|
||||||
2.0 -0.0445
|
2.0 -0.064
|
||||||
2.1 -0.0445
|
2.1 -0.066
|
||||||
2.2 -0.0442
|
2.2 -0.067
|
||||||
2.3 -0.0431
|
2.3 -0.068
|
||||||
2.4 -0.0424
|
5.0 -0.068
|
||||||
5.0 -0.0413
|
</tableData>
|
||||||
</tableData>
|
</table>
|
||||||
</table>
|
|
||||||
|
<table name="C_POWER" type="internal">
|
||||||
|
<tableData>
|
||||||
|
0.0 0.0580
|
||||||
|
0.1 0.0620
|
||||||
|
0.2 0.0600
|
||||||
|
0.3 0.0580
|
||||||
|
0.4 0.0520
|
||||||
|
0.5 0.0457
|
||||||
|
0.6 0.0436
|
||||||
|
0.7 0.0420
|
||||||
|
0.8 0.0372
|
||||||
|
0.9 0.0299
|
||||||
|
1.0 0.0202
|
||||||
|
1.1 -0.0111
|
||||||
|
1.2 -0.0075
|
||||||
|
1.3 -0.0111
|
||||||
|
1.4 -0.0202
|
||||||
|
1.5 -0.0280
|
||||||
|
1.6 -0.0346
|
||||||
|
1.7 -0.0389
|
||||||
|
1.8 -0.0421
|
||||||
|
1.9 -0.0436
|
||||||
|
2.0 -0.0445
|
||||||
|
2.1 -0.0445
|
||||||
|
2.2 -0.0442
|
||||||
|
2.3 -0.0431
|
||||||
|
2.4 -0.0424
|
||||||
|
5.0 -0.0413
|
||||||
|
</tableData>
|
||||||
|
</table>
|
||||||
|
|
||||||
</propeller>
|
</propeller>
|
||||||
|
|
|
@ -1,61 +1,62 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Diameter: 76 in (1.93 m)
|
Diameter: 76 in (1.93 m)
|
||||||
Calculated blade angle: at 75% of the radius
|
Calculated blade angle: at 75% of the radius
|
||||||
Data from NACA Report 640 : http://naca.central.cranfield.ac.uk/reports/1938/naca-report-640.pdf
|
Data from NACA Report 640 : http://naca.central.cranfield.ac.uk/reports/1938/naca-report-640.pdf
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<propeller name="15 -25 deg NACA 640 (5868-9) 76-inch Two-Blade Propeller">
|
<propeller name="15 -25 deg NACA 640 (5868-9) 76-inch Two-Blade Propeller">
|
||||||
<ixx> 1.67 </ixx>
|
|
||||||
<diameter unit="IN"> 76.0 </diameter>
|
|
||||||
<numblades> 2 </numblades>
|
|
||||||
<minpitch> 15 </minpitch>
|
|
||||||
<maxpitch> 25 </maxpitch>
|
|
||||||
|
|
||||||
<table name="C_THRUST" type="internal">
|
<ixx> 1.67 </ixx>
|
||||||
<tableData>
|
<diameter unit="IN"> 76.0 </diameter>
|
||||||
15 20 25
|
<numblades> 2 </numblades>
|
||||||
0 0.0990 0.1040 0.1125
|
<minpitch> 15 </minpitch>
|
||||||
0.1 0.0950 0.1040 0.1100
|
<maxpitch> 25 </maxpitch>
|
||||||
0.2 0.0880 0.1030 0.1075
|
|
||||||
0.3 0.0780 0.1010 0.1060
|
|
||||||
0.4 0.0645 0.0930 0.1055
|
|
||||||
0.5 0.0495 0.0820 0.1045
|
|
||||||
0.6 0.0340 0.0700 0.0970
|
|
||||||
0.7 0.0185 0.0550 0.0870
|
|
||||||
0.8 0.0040 0.0390 0.0750
|
|
||||||
0.9 -0.0160 0.0240 0.0600
|
|
||||||
1 -0.0300 0.0060 0.0450
|
|
||||||
1.1 -0.0400 -0.0140 0.0300
|
|
||||||
1.2 -0.0500 -0.0330 0.0150
|
|
||||||
1.3 -0.0550 -0.0450 -0.0010
|
|
||||||
1.5 -0.0650 -0.0600 -0.0250
|
|
||||||
2 -0.0750 -0.0720 -0.0750
|
|
||||||
3 -0.0800 -0.0800 -0.0900
|
|
||||||
</tableData>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<table name="C_POWER" type = "internal">
|
<table name="C_THRUST" type="internal">
|
||||||
<tableData>
|
<tableData>
|
||||||
15 20 25
|
15 20 25
|
||||||
0 0.0400 0.0660 0.1080
|
0 0.0990 0.1040 0.1125
|
||||||
0.1 0.0406 0.0650 0.1060
|
0.1 0.0950 0.1040 0.1100
|
||||||
0.2 0.0406 0.0640 0.1020
|
0.2 0.0880 0.1030 0.1075
|
||||||
0.3 0.0400 0.0625 0.0975
|
0.3 0.0780 0.1010 0.1060
|
||||||
0.4 0.0366 0.0600 0.0910
|
0.4 0.0645 0.0930 0.1055
|
||||||
0.5 0.0318 0.0580 0.0860
|
0.5 0.0495 0.0820 0.1045
|
||||||
0.6 0.0250 0.0540 0.0825
|
0.6 0.0340 0.0700 0.0970
|
||||||
0.7 0.0160 0.0475 0.0790
|
0.7 0.0185 0.0550 0.0870
|
||||||
0.8 0.0050 0.0370 0.0730
|
0.8 0.0040 0.0390 0.0750
|
||||||
0.9 -0.0067 0.0260 0.0640
|
0.9 -0.0160 0.0240 0.0600
|
||||||
1 -0.0150 0.0100 0.0520
|
1 -0.0300 0.0060 0.0450
|
||||||
1.1 -0.0200 0.0000 0.0375
|
1.1 -0.0400 -0.0140 0.0300
|
||||||
1.2 -0.0250 -0.0100 0.0220
|
1.2 -0.0500 -0.0330 0.0150
|
||||||
1.3 -0.0270 -0.0200 0.0040
|
1.3 -0.0550 -0.0450 -0.0010
|
||||||
1.5 -0.0300 -0.0350 -0.0450
|
1.5 -0.0650 -0.0600 -0.0250
|
||||||
2 -0.0330 -0.0500 -0.0750
|
2 -0.0750 -0.0720 -0.0750
|
||||||
</tableData>
|
3 -0.0800 -0.0800 -0.0900
|
||||||
</table>
|
</tableData>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table name="C_POWER" type="internal">
|
||||||
|
<tableData>
|
||||||
|
15 20 25
|
||||||
|
0 0.0400 0.0660 0.1080
|
||||||
|
0.1 0.0406 0.0650 0.1060
|
||||||
|
0.2 0.0406 0.0640 0.1020
|
||||||
|
0.3 0.0400 0.0625 0.0975
|
||||||
|
0.4 0.0366 0.0600 0.0910
|
||||||
|
0.5 0.0318 0.0580 0.0860
|
||||||
|
0.6 0.0250 0.0540 0.0825
|
||||||
|
0.7 0.0160 0.0475 0.0790
|
||||||
|
0.8 0.0050 0.0370 0.0730
|
||||||
|
0.9 -0.0067 0.0260 0.0640
|
||||||
|
1 -0.0150 0.0100 0.0520
|
||||||
|
1.1 -0.0200 0.0000 0.0375
|
||||||
|
1.2 -0.0250 -0.0100 0.0220
|
||||||
|
1.3 -0.0270 -0.0200 0.0040
|
||||||
|
1.5 -0.0300 -0.0350 -0.0450
|
||||||
|
2 -0.0330 -0.0500 -0.0750
|
||||||
|
</tableData>
|
||||||
|
</table>
|
||||||
|
|
||||||
</propeller>
|
</propeller>
|
||||||
|
|
|
@ -1,61 +1,62 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Diameter: 76 in (1.93 m)
|
Diameter: 76 in (1.93 m)
|
||||||
Pitch: 62.5 in
|
Pitch: 62.5 in
|
||||||
Calculated blade angle: 20° at 75% of the radius
|
Calculated blade angle: 20° at 75% of the radius
|
||||||
Data from NACA Report 640 : http://naca.central.cranfield.ac.uk/reports/1938/naca-report-640.pdf
|
Data from NACA Report 640 : http://naca.central.cranfield.ac.uk/reports/1938/naca-report-640.pdf
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<propeller name="NACA 640 (5868-9) 76-inch 20deg Two-Blade Propeller">
|
<propeller name="NACA 640 (5868-9) 76-inch 20deg Two-Blade Propeller">
|
||||||
<ixx> 1.67 </ixx>
|
|
||||||
<diameter unit="IN"> 76.0 </diameter>
|
|
||||||
<numblades> 2 </numblades>
|
|
||||||
<minpitch> 20 </minpitch>
|
|
||||||
<maxpitch> 20 </maxpitch>
|
|
||||||
|
|
||||||
<table name="C_THRUST" type="internal">
|
<ixx> 1.67 </ixx>
|
||||||
<tableData>
|
<diameter unit="IN"> 76.0 </diameter>
|
||||||
0 0.1040
|
<numblades> 2 </numblades>
|
||||||
0.1 0.1040
|
<minpitch> 20 </minpitch>
|
||||||
0.2 0.1030
|
<maxpitch> 20 </maxpitch>
|
||||||
0.3 0.1010
|
|
||||||
0.4 0.0930
|
|
||||||
0.5 0.0820
|
|
||||||
0.6 0.0700
|
|
||||||
0.7 0.0550
|
|
||||||
0.8 0.0390
|
|
||||||
0.9 0.0240
|
|
||||||
1 0.0060
|
|
||||||
1.1 -0.0140
|
|
||||||
1.2 -0.0330
|
|
||||||
1.3 -0.0450
|
|
||||||
1.5 -0.0600
|
|
||||||
2 -0.0720
|
|
||||||
3 -0.0800
|
|
||||||
</tableData>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<table name="C_POWER" type = "internal">
|
<table name="C_THRUST" type="internal">
|
||||||
<tableData>
|
<tableData>
|
||||||
0 0.0660
|
0 0.1040
|
||||||
0.1 0.0650
|
0.1 0.1040
|
||||||
0.2 0.0640
|
0.2 0.1030
|
||||||
0.3 0.0625
|
0.3 0.1010
|
||||||
0.4 0.0600
|
0.4 0.0930
|
||||||
0.5 0.0580
|
0.5 0.0820
|
||||||
0.6 0.0540
|
0.6 0.0700
|
||||||
0.7 0.0475
|
0.7 0.0550
|
||||||
0.8 0.0370
|
0.8 0.0390
|
||||||
0.9 0.0260
|
0.9 0.0240
|
||||||
1 0.0100
|
1 0.0060
|
||||||
1.1 0.0000
|
1.1 -0.0140
|
||||||
1.2 -0.0100
|
1.2 -0.0330
|
||||||
1.3 -0.0200
|
1.3 -0.0450
|
||||||
1.5 -0.0350
|
1.5 -0.0600
|
||||||
2 -0.0500
|
2 -0.0720
|
||||||
3 -0.0550
|
3 -0.0800
|
||||||
</tableData>
|
</tableData>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
<table name="C_POWER" type="internal">
|
||||||
|
<tableData>
|
||||||
|
0 0.0660
|
||||||
|
0.1 0.0650
|
||||||
|
0.2 0.0640
|
||||||
|
0.3 0.0625
|
||||||
|
0.4 0.0600
|
||||||
|
0.5 0.0580
|
||||||
|
0.6 0.0540
|
||||||
|
0.7 0.0475
|
||||||
|
0.8 0.0370
|
||||||
|
0.9 0.0260
|
||||||
|
1 0.0100
|
||||||
|
1.1 0.0000
|
||||||
|
1.2 -0.0100
|
||||||
|
1.3 -0.0200
|
||||||
|
1.5 -0.0350
|
||||||
|
2 -0.0500
|
||||||
|
3 -0.0550
|
||||||
|
</tableData>
|
||||||
|
</table>
|
||||||
|
|
||||||
</propeller>
|
</propeller>
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
<property>/sim/rendering/rembrandt/enabled</property>
|
<property>/sim/rendering/rembrandt/enabled</property>
|
||||||
</not>
|
</not>
|
||||||
<property>/sim/rendering/shaders/skydome</property>
|
<property>/sim/rendering/shaders/skydome</property>
|
||||||
<property>/sim/rendering/shadow-volume</property>
|
<property>sim/rendering/shadow-volume</property>
|
||||||
<equals>
|
<equals>
|
||||||
<property>/fdm/jsbsim/bushkit</property>
|
<property>/fdm/jsbsim/bushkit</property>
|
||||||
<value>4</value>
|
<value>4</value>
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
<property>/sim/rendering/rembrandt/enabled</property>
|
<property>/sim/rendering/rembrandt/enabled</property>
|
||||||
</not>
|
</not>
|
||||||
<property>/sim/rendering/shaders/skydome</property>
|
<property>/sim/rendering/shaders/skydome</property>
|
||||||
<property>/sim/rendering/shadow-volume</property>
|
<property>sim/rendering/shadow-volume</property>
|
||||||
<equals>
|
<equals>
|
||||||
<property>/fdm/jsbsim/bushkit</property>
|
<property>/fdm/jsbsim/bushkit</property>
|
||||||
<value>1</value>
|
<value>1</value>
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
<property>/sim/rendering/rembrandt/enabled</property>
|
<property>/sim/rendering/rembrandt/enabled</property>
|
||||||
</not>
|
</not>
|
||||||
<property>/sim/rendering/shaders/skydome</property>
|
<property>/sim/rendering/shaders/skydome</property>
|
||||||
<property>/sim/rendering/shadow-volume</property>
|
<property>sim/rendering/shadow-volume</property>
|
||||||
<equals>
|
<equals>
|
||||||
<property>/fdm/jsbsim/bushkit</property>
|
<property>/fdm/jsbsim/bushkit</property>
|
||||||
<value>2</value>
|
<value>2</value>
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
<property>/sim/rendering/rembrandt/enabled</property>
|
<property>/sim/rendering/rembrandt/enabled</property>
|
||||||
</not>
|
</not>
|
||||||
<property>/sim/rendering/shaders/skydome</property>
|
<property>/sim/rendering/shaders/skydome</property>
|
||||||
<property>/sim/rendering/shadow-volume</property>
|
<property>sim/rendering/shadow-volume</property>
|
||||||
<equals>
|
<equals>
|
||||||
<property>/fdm/jsbsim/bushkit</property>
|
<property>/fdm/jsbsim/bushkit</property>
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
<property>/sim/rendering/rembrandt/enabled</property>
|
<property>/sim/rendering/rembrandt/enabled</property>
|
||||||
</not>
|
</not>
|
||||||
<property>/sim/rendering/shaders/skydome</property>
|
<property>/sim/rendering/shaders/skydome</property>
|
||||||
<property>/sim/rendering/shadow-volume</property>
|
<property>sim/rendering/shadow-volume</property>
|
||||||
<equals>
|
<equals>
|
||||||
<property>/fdm/jsbsim/bushkit</property>
|
<property>/fdm/jsbsim/bushkit</property>
|
||||||
<value>3</value>
|
<value>3</value>
|
||||||
|
|
|
@ -1,87 +1,90 @@
|
||||||
<PropertyList>
|
<?xml version="1.0"?>
|
||||||
<entry>
|
|
||||||
<ind>0.000</ind>
|
|
||||||
<dep>0.000</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.050</ind>
|
|
||||||
<dep>2.799</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.100</ind>
|
|
||||||
<dep>5.504</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.150</ind>
|
|
||||||
<dep>8.130</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.200</ind>
|
|
||||||
<dep>10.688</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.250</ind>
|
|
||||||
<dep>13.187</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.300</ind>
|
|
||||||
<dep>15.637</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.350</ind>
|
|
||||||
<dep>18.044</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.400</ind>
|
|
||||||
<dep>20.415</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.450</ind>
|
|
||||||
<dep>22.755</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.500</ind>
|
|
||||||
<dep>25.068</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.550</ind>
|
|
||||||
<dep>27.360</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.600</ind>
|
|
||||||
<dep>29.635</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.650</ind>
|
|
||||||
<dep>31.896</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.700</ind>
|
|
||||||
<dep>34.147</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.750</ind>
|
|
||||||
<dep>36.393</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.800</ind>
|
|
||||||
<dep>38.635</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.850</ind>
|
|
||||||
<dep>40.878</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.900</ind>
|
|
||||||
<dep>43.126</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>0.950</ind>
|
|
||||||
<dep>45.381</dep>
|
|
||||||
</entry>
|
|
||||||
<entry>
|
|
||||||
<ind>1.000</ind>
|
|
||||||
<dep>47.647</dep>
|
|
||||||
</entry>
|
|
||||||
</PropertyList>
|
|
||||||
|
|
||||||
|
<PropertyList>
|
||||||
|
|
||||||
|
<entry>
|
||||||
|
<ind>0.000</ind>
|
||||||
|
<dep>0.000</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.050</ind>
|
||||||
|
<dep>2.799</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.100</ind>
|
||||||
|
<dep>5.504</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.150</ind>
|
||||||
|
<dep>8.130</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.200</ind>
|
||||||
|
<dep>10.688</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.250</ind>
|
||||||
|
<dep>13.187</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.300</ind>
|
||||||
|
<dep>15.637</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.350</ind>
|
||||||
|
<dep>18.044</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.400</ind>
|
||||||
|
<dep>20.415</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.450</ind>
|
||||||
|
<dep>22.755</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.500</ind>
|
||||||
|
<dep>25.068</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.550</ind>
|
||||||
|
<dep>27.360</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.600</ind>
|
||||||
|
<dep>29.635</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.650</ind>
|
||||||
|
<dep>31.896</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.700</ind>
|
||||||
|
<dep>34.147</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.750</ind>
|
||||||
|
<dep>36.393</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.800</ind>
|
||||||
|
<dep>38.635</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.850</ind>
|
||||||
|
<dep>40.878</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.900</ind>
|
||||||
|
<dep>43.126</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>0.950</ind>
|
||||||
|
<dep>45.381</dep>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<ind>1.000</ind>
|
||||||
|
<dep>47.647</dep>
|
||||||
|
</entry>
|
||||||
|
|
||||||
|
</PropertyList>
|
||||||
|
|
|
@ -84,7 +84,7 @@
|
||||||
|
|
||||||
<!-- simply hide these -->
|
<!-- simply hide these -->
|
||||||
<animation>
|
<animation>
|
||||||
<type>pick</type>
|
<type>select</type>
|
||||||
<visible>false</visible>
|
<visible>false</visible>
|
||||||
<object-name>AdjustCW</object-name>
|
<object-name>AdjustCW</object-name>
|
||||||
<object-name>AdjustCCW</object-name>
|
<object-name>AdjustCCW</object-name>
|
||||||
|
@ -103,7 +103,8 @@
|
||||||
</binding>
|
</binding>
|
||||||
</action>
|
</action>
|
||||||
|
|
||||||
<value>0.0</value>
|
<property>instrumentation/attitude-indicator/horizon-offset-deg</property>
|
||||||
|
<factor>-8</factor>
|
||||||
|
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
|
|
|
@ -133,16 +133,25 @@
|
||||||
</axis>
|
</axis>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
<!-- Altimeter -->
|
<!-- Altimeter -->
|
||||||
|
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>click-L</object-name>
|
<object-name>disk</object-name>
|
||||||
<object-name>click-R</object-name>
|
<property>/instrumentation/altimeter/setting-inhg</property>
|
||||||
<visible>false</visible>
|
<factor>-800</factor>
|
||||||
|
|
||||||
<action>
|
|
||||||
|
|
||||||
|
<axis>
|
||||||
|
<x>1</x>
|
||||||
|
<y>0</y>
|
||||||
|
<z>0</z>
|
||||||
|
</axis>
|
||||||
|
<center>
|
||||||
|
<x-m>0.0</x-m>
|
||||||
|
<y-m>-0.03</y-m>
|
||||||
|
<z-m>-0.0306</z-m>
|
||||||
|
</center>
|
||||||
|
|
||||||
|
<action>
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property>/instrumentation/altimeter/setting-inhg</property>
|
<property>/instrumentation/altimeter/setting-inhg</property>
|
||||||
|
@ -163,9 +172,5 @@
|
||||||
</hovered>
|
</hovered>
|
||||||
|
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -140,7 +140,7 @@
|
||||||
|
|
||||||
<!-- the source switch -->
|
<!-- the source switch -->
|
||||||
<animation>
|
<animation>
|
||||||
<type>rotate</type>
|
<type>knob</type>
|
||||||
<object-name>SourceSelectorKnob</object-name>
|
<object-name>SourceSelectorKnob</object-name>
|
||||||
<property>instrumentation/dme/switch-position</property>
|
<property>instrumentation/dme/switch-position</property>
|
||||||
<factor>-30</factor>
|
<factor>-30</factor>
|
||||||
|
@ -157,19 +157,11 @@
|
||||||
<y-m>-0.0589436</y-m>
|
<y-m>-0.0589436</y-m>
|
||||||
<z-m>0</z-m>
|
<z-m>0</z-m>
|
||||||
</center>
|
</center>
|
||||||
</animation>
|
|
||||||
|
|
||||||
<animation>
|
|
||||||
<type>pick</type>
|
|
||||||
<object-name>SourceSelectorPick.R</object-name>
|
|
||||||
<visible>false</visible>
|
|
||||||
<action>
|
<action>
|
||||||
<button>0</button>
|
|
||||||
<repeatable>false</repeatable>
|
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property>instrumentation/dme/switch-position</property>
|
<property>instrumentation/dme/switch-position</property>
|
||||||
<step>1</step>
|
<factor>1</factor>
|
||||||
<min>1</min>
|
<min>1</min>
|
||||||
<max>3</max>
|
<max>3</max>
|
||||||
<wrap>0</wrap>
|
<wrap>0</wrap>
|
||||||
|
@ -225,59 +217,4 @@
|
||||||
</action>
|
</action>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
<animation>
|
|
||||||
<type>pick</type>
|
|
||||||
<object-name>SourceSelectorPick.L</object-name>
|
|
||||||
<visible>false</visible>
|
|
||||||
<action>
|
|
||||||
<button>0</button>
|
|
||||||
<repeatable>false</repeatable>
|
|
||||||
<binding>
|
|
||||||
<command>property-adjust</command>
|
|
||||||
<property>instrumentation/dme/switch-position</property>
|
|
||||||
<step>-1</step>
|
|
||||||
<min>1</min>
|
|
||||||
<max>3</max>
|
|
||||||
<wrap>0</wrap>
|
|
||||||
</binding>
|
|
||||||
<binding>
|
|
||||||
<condition>
|
|
||||||
<equals>
|
|
||||||
<property>instrumentation/dme/switch-position</property>
|
|
||||||
<value type="int">1</value>
|
|
||||||
</equals>
|
|
||||||
</condition>
|
|
||||||
<command>property-assign</command>
|
|
||||||
<property>instrumentation/dme/frequencies/source</property>
|
|
||||||
<value>instrumentation/nav[0]/frequencies/selected-mhz</value>
|
|
||||||
</binding>
|
|
||||||
<binding>
|
|
||||||
<condition>
|
|
||||||
<equals>
|
|
||||||
<property>instrumentation/dme/switch-position</property>
|
|
||||||
<value type="int">2</value>
|
|
||||||
</equals>
|
|
||||||
</condition>
|
|
||||||
<command>property-assign</command>
|
|
||||||
<property>instrumentation/dme/frequencies/source</property>
|
|
||||||
<value>instrumentation/dme/frequencies/selected-mhz</value>
|
|
||||||
</binding>
|
|
||||||
<binding>
|
|
||||||
<condition>
|
|
||||||
<equals>
|
|
||||||
<property>instrumentation/dme/switch-position</property>
|
|
||||||
<value type="int">2</value>
|
|
||||||
</equals>
|
|
||||||
</condition>
|
|
||||||
<command>property-assign</command>
|
|
||||||
<property>instrumentation/dme/frequencies/selected-mhz</property>
|
|
||||||
<property>instrumentation/nav[1]/frequencies/selected-mhz</property>
|
|
||||||
</binding>
|
|
||||||
<binding>
|
|
||||||
<command>nasal</command>
|
|
||||||
<script>c172p.click("dme-source")</script>
|
|
||||||
</binding>
|
|
||||||
</action>
|
|
||||||
</animation>
|
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -16,6 +16,12 @@ adjusting them, toggling them, or swaping them with other
|
||||||
properties' values.
|
properties' values.
|
||||||
-->
|
-->
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
|
<params>
|
||||||
|
<dial-10-ft>/autopilot/KAP140/settings/dial-10-ft</dial-10-ft>
|
||||||
|
<dial-100-ft>/autopilot/KAP140/settings/dial-100-ft</dial-100-ft>
|
||||||
|
</params>
|
||||||
|
|
||||||
<name>KAP140TwoAxisAlt</name>
|
<name>KAP140TwoAxisAlt</name>
|
||||||
<path>kap140.ac</path>
|
<path>kap140.ac</path>
|
||||||
|
|
||||||
|
@ -900,36 +906,97 @@ properties' values.
|
||||||
</binding>
|
</binding>
|
||||||
</hovered>
|
</hovered>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
<animation>
|
<animation>
|
||||||
<object-name>knob-inner</object-name>
|
<type>knob</type>
|
||||||
<object-name>knob-outer</object-name>
|
<object-name>knob-inner</object-name>
|
||||||
<type>knob</type>
|
|
||||||
<increase>
|
<property alias="/params/dial-10-ft"/>
|
||||||
<binding>
|
<factor>-2.5</factor>
|
||||||
<command>nasal</command>
|
<axis>
|
||||||
<script>kap140.knobSmallUp();c172p.click("kap140-dial")</script>
|
<x>1</x>
|
||||||
</binding>
|
<y>0</y>
|
||||||
</increase>
|
<z>0</z>
|
||||||
<decrease>
|
</axis>
|
||||||
<binding>
|
<center>
|
||||||
<command>nasal</command>
|
<x-m>0.0065</x-m>
|
||||||
<script>kap140.knobSmallDown();c172p.click("kap140-dial")</script>
|
<y-m>0.0652</y-m>
|
||||||
</binding>
|
<z-m>-0.0060</z-m>
|
||||||
</decrease>
|
</center>
|
||||||
|
|
||||||
<shift-increase>
|
<increase>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>kap140.knobLargeUp();c172p.click("kap140-dial")</script>
|
<script>kap140.knobSmallUp()</script>
|
||||||
</binding>
|
</binding>
|
||||||
</shift-increase>
|
</increase>
|
||||||
<shift-decrease>
|
<decrease>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>kap140.knobLargeDown();c172p.click("kap140-dial")</script>
|
<script>kap140.knobSmallDown()</script>
|
||||||
</binding>
|
</binding>
|
||||||
</shift-decrease>
|
</decrease>
|
||||||
</animation>
|
|
||||||
|
<action>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/dial-10-ft"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>nasal</command>
|
||||||
|
<script>c172p.click("kap140-dial")</script>
|
||||||
|
</binding>
|
||||||
|
</action>
|
||||||
|
</animation>
|
||||||
|
|
||||||
|
<animation>
|
||||||
|
<type>knob</type>
|
||||||
|
<object-name>knob-outer</object-name>
|
||||||
|
|
||||||
|
<property alias="/params/dial-100-ft"/>
|
||||||
|
<factor>-2.5</factor>
|
||||||
|
<axis>
|
||||||
|
<x>1</x>
|
||||||
|
<y>0</y>
|
||||||
|
<z>0</z>
|
||||||
|
</axis>
|
||||||
|
<center>
|
||||||
|
<x-m>0.0065</x-m>
|
||||||
|
<y-m>0.0652</y-m>
|
||||||
|
<z-m>-0.0060</z-m>
|
||||||
|
</center>
|
||||||
|
|
||||||
|
<increase>
|
||||||
|
<binding>
|
||||||
|
<command>nasal</command>
|
||||||
|
<script>kap140.knobLargeUp()</script>
|
||||||
|
</binding>
|
||||||
|
</increase>
|
||||||
|
<decrease>
|
||||||
|
<binding>
|
||||||
|
<command>nasal</command>
|
||||||
|
<script>kap140.knobLargeDown()</script>
|
||||||
|
</binding>
|
||||||
|
</decrease>
|
||||||
|
|
||||||
|
<action>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/dial-100-ft"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>nasal</command>
|
||||||
|
<script>c172p.click("kap140-dial")</script>
|
||||||
|
</binding>
|
||||||
|
</action>
|
||||||
|
</animation>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -138,7 +138,7 @@
|
||||||
<object-name>HDGSelector</object-name>
|
<object-name>HDGSelector</object-name>
|
||||||
|
|
||||||
<property alias="../../params/rotation-deg"/>
|
<property alias="../../params/rotation-deg"/>
|
||||||
<factor>8.0</factor>
|
<factor>-8.0</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1.0</x>
|
<x>1.0</x>
|
||||||
<y>0.0</y>
|
<y>0.0</y>
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
<?xml version="1.0" ?>
|
<?xml version="1.0" ?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
<params>
|
<params>
|
||||||
<right-display>/instrumentation/adf[0]/right-display</right-display>
|
<right-display>/instrumentation/adf[0]/right-display</right-display>
|
||||||
<dimming>instrumentation/adf[0]/dimming-norm</dimming>
|
<dimming>instrumentation/adf[0]/dimming-norm</dimming>
|
||||||
|
<dial-1-khz>instrumentation/adf[0]/frequencies/dial-1-khz</dial-1-khz>
|
||||||
|
<dial-100-khz>instrumentation/adf[0]/frequencies/dial-100-khz</dial-100-khz>
|
||||||
</params>
|
</params>
|
||||||
|
|
||||||
<path>kr87.ac</path>
|
<path>kr87.ac</path>
|
||||||
|
@ -503,13 +507,7 @@
|
||||||
</action>
|
</action>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
<animation>
|
<!-- volume knob -->
|
||||||
<type>pick</type>
|
|
||||||
<object-name>VolumePickLeft</object-name>
|
|
||||||
<object-name>VolumePickRight</object-name>
|
|
||||||
<visible>false</visible>
|
|
||||||
</animation>
|
|
||||||
|
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>Volume</object-name>
|
<object-name>Volume</object-name>
|
||||||
|
@ -568,19 +566,25 @@
|
||||||
</binding>
|
</binding>
|
||||||
</action>
|
</action>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
<!-- frequency knob -->
|
<!-- inner frequency (1 KHz) knob -->
|
||||||
<animation>
|
|
||||||
<type>pick</type>
|
|
||||||
<object-name>FreqPickLeft</object-name>
|
|
||||||
<object-name>FreqPickRight</object-name>
|
|
||||||
<visible>false</visible>
|
|
||||||
</animation>
|
|
||||||
|
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>FRQOuter</object-name>
|
|
||||||
<object-name>FRQInner</object-name>
|
<object-name>FRQInner</object-name>
|
||||||
|
|
||||||
|
<property alias="/params/dial-1-khz"/>
|
||||||
|
<factor>-2.5</factor>
|
||||||
|
<axis>
|
||||||
|
<x>1</x>
|
||||||
|
<y>0</y>
|
||||||
|
<z>0</z>
|
||||||
|
</axis>
|
||||||
|
<center>
|
||||||
|
<x-m>0.0371</x-m>
|
||||||
|
<y-m>0.0629</y-m>
|
||||||
|
<z-m>-0.0018</z-m>
|
||||||
|
</center>
|
||||||
|
|
||||||
<action>
|
<action>
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
|
@ -591,12 +595,39 @@
|
||||||
<resolution>1</resolution>
|
<resolution>1</resolution>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/dial-1-khz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kr87-adf-dial")</script>
|
<script>c172p.click("kr87-adf-dial")</script>
|
||||||
</binding>
|
</binding>
|
||||||
</action>
|
</action>
|
||||||
<shift-action>
|
</animation>
|
||||||
|
|
||||||
|
<!-- outer frequency (100 KHz) knob -->
|
||||||
|
<animation>
|
||||||
|
<type>knob</type>
|
||||||
|
<object-name>FRQOuter</object-name>
|
||||||
|
|
||||||
|
<property alias="/params/dial-100-khz"/>
|
||||||
|
<factor>-2.5</factor>
|
||||||
|
<axis>
|
||||||
|
<x>1</x>
|
||||||
|
<y>0</y>
|
||||||
|
<z>0</z>
|
||||||
|
</axis>
|
||||||
|
<center>
|
||||||
|
<x-m>0.0371</x-m>
|
||||||
|
<y-m>0.0629</y-m>
|
||||||
|
<z-m>-0.0018</z-m>
|
||||||
|
</center>
|
||||||
|
<action>
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property>/instrumentation/adf[0]/frequencies/standby-khz</property>
|
<property>/instrumentation/adf[0]/frequencies/standby-khz</property>
|
||||||
|
@ -606,10 +637,19 @@
|
||||||
<resolution>1</resolution>
|
<resolution>1</resolution>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/dial-100-khz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kr87-adf-dial")</script>
|
<script>c172p.click("kr87-adf-dial")</script>
|
||||||
</binding>
|
</binding>
|
||||||
</shift-action>
|
</action>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -15,11 +15,15 @@
|
||||||
"instrumentation/comm[0]/volume",
|
"instrumentation/comm[0]/volume",
|
||||||
"instrumentation/comm[0]/frequencies/selected-mhz",
|
"instrumentation/comm[0]/frequencies/selected-mhz",
|
||||||
"instrumentation/comm[0]/frequencies/standby-mhz",
|
"instrumentation/comm[0]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/comm[0]/frequencies/dial-khz",
|
||||||
|
"instrumentation/comm[0]/frequencies/dial-mhz",
|
||||||
"instrumentation/comm[0]/test-btn",
|
"instrumentation/comm[0]/test-btn",
|
||||||
"instrumentation/nav[0]/audio-btn",
|
"instrumentation/nav[0]/audio-btn",
|
||||||
"instrumentation/nav[0]/power-btn",
|
"instrumentation/nav[0]/power-btn",
|
||||||
"instrumentation/nav[0]/frequencies/selected-mhz",
|
"instrumentation/nav[0]/frequencies/selected-mhz",
|
||||||
"instrumentation/nav[0]/frequencies/standby-mhz",
|
"instrumentation/nav[0]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/nav[0]/frequencies/dial-khz",
|
||||||
|
"instrumentation/nav[0]/frequencies/dial-mhz",
|
||||||
);
|
);
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
@ -32,12 +36,16 @@
|
||||||
<comm-frq-swp>instrumentation/comm[0]/frq-swap-btn</comm-frq-swp>
|
<comm-frq-swp>instrumentation/comm[0]/frq-swap-btn</comm-frq-swp>
|
||||||
<comm-frq-selected>instrumentation/comm[0]/frequencies/selected-mhz</comm-frq-selected>
|
<comm-frq-selected>instrumentation/comm[0]/frequencies/selected-mhz</comm-frq-selected>
|
||||||
<comm-frq-standby>instrumentation/comm[0]/frequencies/standby-mhz</comm-frq-standby>
|
<comm-frq-standby>instrumentation/comm[0]/frequencies/standby-mhz</comm-frq-standby>
|
||||||
|
<comm-dial-khz>instrumentation/comm[0]/frequencies/dial-khz</comm-dial-khz>
|
||||||
|
<comm-dial-mhz>instrumentation/comm[0]/frequencies/dial-mhz</comm-dial-mhz>
|
||||||
<comm-volume>instrumentation/comm[0]/volume</comm-volume>
|
<comm-volume>instrumentation/comm[0]/volume</comm-volume>
|
||||||
<comm-test>instrumentation/comm[0]/test-btn</comm-test>
|
<comm-test>instrumentation/comm[0]/test-btn</comm-test>
|
||||||
|
|
||||||
<nav-frq-swp>instrumentation/nav[0]/frq-swap-btn</nav-frq-swp>
|
<nav-frq-swp>instrumentation/nav[0]/frq-swap-btn</nav-frq-swp>
|
||||||
<nav-frq-selected>instrumentation/nav[0]/frequencies/selected-mhz</nav-frq-selected>
|
<nav-frq-selected>instrumentation/nav[0]/frequencies/selected-mhz</nav-frq-selected>
|
||||||
<nav-frq-standby>instrumentation/nav[0]/frequencies/standby-mhz</nav-frq-standby>
|
<nav-frq-standby>instrumentation/nav[0]/frequencies/standby-mhz</nav-frq-standby>
|
||||||
|
<nav-dial-khz>instrumentation/nav[0]/frequencies/dial-khz</nav-dial-khz>
|
||||||
|
<nav-dial-mhz>instrumentation/nav[0]/frequencies/dial-mhz</nav-dial-mhz>
|
||||||
<nav-volume>instrumentation/nav[0]/volume</nav-volume>
|
<nav-volume>instrumentation/nav[0]/volume</nav-volume>
|
||||||
<nav-audio>instrumentation/nav[0]/audio-btn</nav-audio>
|
<nav-audio>instrumentation/nav[0]/audio-btn</nav-audio>
|
||||||
|
|
||||||
|
@ -615,8 +623,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>CommKHz</object-name>
|
<object-name>CommKHz</object-name>
|
||||||
<property alias="../../params/comm-frq-standby"/>
|
<property alias="/params/comm-dial-khz"/>
|
||||||
<factor>-360</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -633,7 +641,7 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/comm-frq-standby"/>
|
<property alias="/params/comm-frq-standby"/>
|
||||||
<factor>0.025</factor>
|
<factor>0.025</factor>
|
||||||
<min>0.0</min>
|
<min>0.0</min>
|
||||||
<max>1.0</max>
|
<max>1.0</max>
|
||||||
|
@ -641,6 +649,14 @@
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
<mask>decimal</mask>
|
<mask>decimal</mask>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/comm-dial-khz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kx165-1-dial")</script>
|
<script>c172p.click("kx165-1-dial")</script>
|
||||||
|
@ -651,8 +667,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>CommMHz</object-name>
|
<object-name>CommMHz</object-name>
|
||||||
<property alias="../../params/comm-frq-standby"/>
|
<property alias="/params/comm-dial-mhz"/>
|
||||||
<factor>-7</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -669,13 +685,21 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/comm-frq-standby"/>
|
<property alias="/params/comm-frq-standby"/>
|
||||||
<factor>1</factor>
|
<factor>1</factor>
|
||||||
<min>118.0</min>
|
<min>118.0</min>
|
||||||
<max>137.0</max>
|
<max>137.0</max>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
<mask>integer</mask>
|
<mask>integer</mask>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/comm-dial-mhz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kx165-1-dial")</script>
|
<script>c172p.click("kx165-1-dial")</script>
|
||||||
|
@ -763,8 +787,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>NavKHz</object-name>
|
<object-name>NavKHz</object-name>
|
||||||
<property alias="../../params/nav-frq-standby"/>
|
<property alias="/params/nav-dial-khz"/>
|
||||||
<factor>-360</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -781,13 +805,22 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/nav-frq-standby"/>
|
<property alias="/params/nav-frq-standby"/>
|
||||||
<factor>0.05</factor>
|
<factor>0.05</factor>
|
||||||
<min>0.0</min>
|
<min>0.0</min>
|
||||||
<max>1.0</max>
|
<max>1.0</max>
|
||||||
|
<resolution>0.050</resolution>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
<mask>decimal</mask>
|
<mask>decimal</mask>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/nav-dial-khz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kx165-1-dial")</script>
|
<script>c172p.click("kx165-1-dial")</script>
|
||||||
|
@ -798,8 +831,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>NavMHz</object-name>
|
<object-name>NavMHz</object-name>
|
||||||
<property alias="../../params/nav-frq-standby"/>
|
<property alias="/params/nav-dial-mhz"/>
|
||||||
<factor>-7</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -816,11 +849,20 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/nav-frq-standby"/>
|
<property alias="/params/nav-frq-standby"/>
|
||||||
<factor>1</factor>
|
<factor>1</factor>
|
||||||
<min>108.0</min>
|
<min>108.0</min>
|
||||||
<max>118.0</max>
|
<max>118.0</max>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
|
<mask>integer</mask>
|
||||||
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/nav-dial-mhz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
|
|
|
@ -15,11 +15,15 @@
|
||||||
"instrumentation/comm[1]/volume",
|
"instrumentation/comm[1]/volume",
|
||||||
"instrumentation/comm[1]/frequencies/selected-mhz",
|
"instrumentation/comm[1]/frequencies/selected-mhz",
|
||||||
"instrumentation/comm[1]/frequencies/standby-mhz",
|
"instrumentation/comm[1]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/comm[1]/frequencies/dial-khz",
|
||||||
|
"instrumentation/comm[1]/frequencies/dial-mhz",
|
||||||
"instrumentation/comm[1]/test-btn",
|
"instrumentation/comm[1]/test-btn",
|
||||||
"instrumentation/nav[1]/audio-btn",
|
"instrumentation/nav[1]/audio-btn",
|
||||||
"instrumentation/nav[1]/power-btn",
|
"instrumentation/nav[1]/power-btn",
|
||||||
"instrumentation/nav[1]/frequencies/selected-mhz",
|
"instrumentation/nav[1]/frequencies/selected-mhz",
|
||||||
"instrumentation/nav[1]/frequencies/standby-mhz",
|
"instrumentation/nav[1]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/nav[1]/frequencies/dial-khz",
|
||||||
|
"instrumentation/nav[1]/frequencies/dial-mhz",
|
||||||
);
|
);
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
@ -32,12 +36,16 @@
|
||||||
<comm-frq-swp>instrumentation/comm[1]/frq-swap-btn</comm-frq-swp>
|
<comm-frq-swp>instrumentation/comm[1]/frq-swap-btn</comm-frq-swp>
|
||||||
<comm-frq-selected>instrumentation/comm[1]/frequencies/selected-mhz</comm-frq-selected>
|
<comm-frq-selected>instrumentation/comm[1]/frequencies/selected-mhz</comm-frq-selected>
|
||||||
<comm-frq-standby>instrumentation/comm[1]/frequencies/standby-mhz</comm-frq-standby>
|
<comm-frq-standby>instrumentation/comm[1]/frequencies/standby-mhz</comm-frq-standby>
|
||||||
|
<comm-dial-khz>instrumentation/comm[1]/frequencies/dial-khz</comm-dial-khz>
|
||||||
|
<comm-dial-mhz>instrumentation/comm[1]/frequencies/dial-mhz</comm-dial-mhz>
|
||||||
<comm-volume>instrumentation/comm[1]/volume</comm-volume>
|
<comm-volume>instrumentation/comm[1]/volume</comm-volume>
|
||||||
<comm-test>instrumentation/comm[1]/test-btn</comm-test>
|
<comm-test>instrumentation/comm[1]/test-btn</comm-test>
|
||||||
|
|
||||||
<nav-frq-swp>instrumentation/nav[1]/frq-swap-btn</nav-frq-swp>
|
<nav-frq-swp>instrumentation/nav[1]/frq-swap-btn</nav-frq-swp>
|
||||||
<nav-frq-selected>instrumentation/nav[1]/frequencies/selected-mhz</nav-frq-selected>
|
<nav-frq-selected>instrumentation/nav[1]/frequencies/selected-mhz</nav-frq-selected>
|
||||||
<nav-frq-standby>instrumentation/nav[1]/frequencies/standby-mhz</nav-frq-standby>
|
<nav-frq-standby>instrumentation/nav[1]/frequencies/standby-mhz</nav-frq-standby>
|
||||||
|
<nav-dial-khz>instrumentation/nav[1]/frequencies/dial-khz</nav-dial-khz>
|
||||||
|
<nav-dial-mhz>instrumentation/nav[1]/frequencies/dial-mhz</nav-dial-mhz>
|
||||||
<nav-volume>instrumentation/nav[1]/volume</nav-volume>
|
<nav-volume>instrumentation/nav[1]/volume</nav-volume>
|
||||||
<nav-audio>instrumentation/nav[1]/audio-btn</nav-audio>
|
<nav-audio>instrumentation/nav[1]/audio-btn</nav-audio>
|
||||||
|
|
||||||
|
@ -509,6 +517,7 @@
|
||||||
</axis>
|
</axis>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
|
|
||||||
<!-- knobs and buttons -->
|
<!-- knobs and buttons -->
|
||||||
|
|
||||||
<animation>
|
<animation>
|
||||||
|
@ -614,8 +623,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>CommKHz</object-name>
|
<object-name>CommKHz</object-name>
|
||||||
<property alias="../../params/comm-frq-standby"/>
|
<property alias="/params/comm-dial-khz"/>
|
||||||
<factor>-360</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -632,7 +641,7 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/comm-frq-standby"/>
|
<property alias="/params/comm-frq-standby"/>
|
||||||
<factor>0.025</factor>
|
<factor>0.025</factor>
|
||||||
<min>0.0</min>
|
<min>0.0</min>
|
||||||
<max>1.0</max>
|
<max>1.0</max>
|
||||||
|
@ -640,6 +649,14 @@
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
<mask>decimal</mask>
|
<mask>decimal</mask>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/comm-dial-khz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kx165-2-dial")</script>
|
<script>c172p.click("kx165-2-dial")</script>
|
||||||
|
@ -650,8 +667,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>CommMHz</object-name>
|
<object-name>CommMHz</object-name>
|
||||||
<property alias="../../params/comm-frq-standby"/>
|
<property alias="/params/comm-dial-mhz"/>
|
||||||
<factor>-7</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -668,13 +685,21 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/comm-frq-standby"/>
|
<property alias="/params/comm-frq-standby"/>
|
||||||
<factor>1</factor>
|
<factor>1</factor>
|
||||||
<min>118.0</min>
|
<min>118.0</min>
|
||||||
<max>137.0</max>
|
<max>137.0</max>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
<mask>integer</mask>
|
<mask>integer</mask>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/comm-dial-mhz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kx165-2-dial")</script>
|
<script>c172p.click("kx165-2-dial")</script>
|
||||||
|
@ -762,8 +787,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>NavKHz</object-name>
|
<object-name>NavKHz</object-name>
|
||||||
<property alias="../../params/nav-frq-standby"/>
|
<property alias="/params/nav-dial-khz"/>
|
||||||
<factor>-360</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -780,13 +805,22 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/nav-frq-standby"/>
|
<property alias="/params/nav-frq-standby"/>
|
||||||
<factor>0.05</factor>
|
<factor>0.05</factor>
|
||||||
<min>0.0</min>
|
<min>0.0</min>
|
||||||
<max>1.0</max>
|
<max>1.0</max>
|
||||||
|
<resolution>0.050</resolution>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
<mask>decimal</mask>
|
<mask>decimal</mask>
|
||||||
</binding>
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/nav-dial-khz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.click("kx165-2-dial")</script>
|
<script>c172p.click("kx165-2-dial")</script>
|
||||||
|
@ -797,8 +831,8 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>NavMHz</object-name>
|
<object-name>NavMHz</object-name>
|
||||||
<property alias="../../params/nav-frq-standby"/>
|
<property alias="/params/nav-dial-mhz"/>
|
||||||
<factor>-7</factor>
|
<factor>-0.25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x>1</x>
|
<x>1</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
|
@ -815,11 +849,20 @@
|
||||||
<property alias="../../../../../params/power-comm"/>
|
<property alias="../../../../../params/power-comm"/>
|
||||||
</condition>
|
</condition>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property alias="../../../../params/nav-frq-standby"/>
|
<property alias="/params/nav-frq-standby"/>
|
||||||
<factor>1</factor>
|
<factor>1</factor>
|
||||||
<min>108.0</min>
|
<min>108.0</min>
|
||||||
<max>118.0</max>
|
<max>118.0</max>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
|
<mask>integer</mask>
|
||||||
|
</binding>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property alias="/params/nav-dial-mhz"/>
|
||||||
|
<factor>4</factor>
|
||||||
|
<min>0</min>
|
||||||
|
<max>360</max>
|
||||||
|
<wrap>true</wrap>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
|
|
|
@ -13,8 +13,6 @@
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<object-name>LightKnob</object-name>
|
<object-name>LightKnob</object-name>
|
||||||
<proxy-name>LightHotspotLeft</proxy-name>
|
|
||||||
<proxy-name>LightHotspotRight</proxy-name>
|
|
||||||
|
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<action>
|
<action>
|
||||||
|
@ -40,8 +38,4 @@
|
||||||
</hovered>
|
</hovered>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -155,26 +155,36 @@
|
||||||
</axis>
|
</axis>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
<!-- VOR 1 Radial adjust -->
|
<!-- VOR 1 Radial adjust -->
|
||||||
|
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<type>pick</type>
|
<object-name>disk</object-name>
|
||||||
<object-name>click-R</object-name>
|
<property>/instrumentation/nav[0]/radials/selected-deg</property>
|
||||||
<object-name>click-L</object-name>
|
<factor>-8</factor>
|
||||||
<visible>false</visible>
|
|
||||||
|
|
||||||
<shift-repeat type="int">5</shift-repeat>
|
<axis>
|
||||||
|
<x>1</x>
|
||||||
|
<y>0</y>
|
||||||
|
<z>0</z>
|
||||||
|
</axis>
|
||||||
|
<center>
|
||||||
|
<x-m>0.0</x-m>
|
||||||
|
<y-m>-0.0272</y-m>
|
||||||
|
<z-m>-0.0292</z-m>
|
||||||
|
</center>
|
||||||
|
|
||||||
|
<shift-repeat type="int">5</shift-repeat>
|
||||||
|
|
||||||
<action>
|
<action>
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property>/instrumentation/nav/radials/selected-deg</property>
|
<property>/instrumentation/nav[0]/radials/selected-deg</property>
|
||||||
<factor>1</factor>
|
<factor>1</factor>
|
||||||
<min>0</min>
|
<min>0</min>
|
||||||
<max>360</max>
|
<max>360</max>
|
||||||
<wrap>1</wrap>
|
<wrap>1</wrap>
|
||||||
</binding>
|
</binding>
|
||||||
</action>
|
</action>
|
||||||
|
|
||||||
<hovered>
|
<hovered>
|
||||||
|
@ -183,7 +193,7 @@
|
||||||
<tooltip-id>nav1-obs</tooltip-id>
|
<tooltip-id>nav1-obs</tooltip-id>
|
||||||
<label>Nav 1 Radial %3d</label>
|
<label>Nav 1 Radial %3d</label>
|
||||||
<mapping>heading</mapping>
|
<mapping>heading</mapping>
|
||||||
<property>/instrumentation/nav/radials/selected-deg</property>
|
<property>/instrumentation/nav[0]/radials/selected-deg</property>
|
||||||
</binding>
|
</binding>
|
||||||
</hovered>
|
</hovered>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
|
@ -155,26 +155,36 @@
|
||||||
</axis>
|
</axis>
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
<!-- VOR 2 Radial adjust -->
|
<!-- VOR 2 Radial adjust -->
|
||||||
|
|
||||||
<animation>
|
<animation>
|
||||||
<type>knob</type>
|
<type>knob</type>
|
||||||
<type>pick</type>
|
<object-name>disk</object-name>
|
||||||
<object-name>click-R</object-name>
|
<property>/instrumentation/nav[1]/radials/selected-deg</property>
|
||||||
<object-name>click-L</object-name>
|
<factor>-8</factor>
|
||||||
<visible>false</visible>
|
|
||||||
|
|
||||||
<shift-repeat type="int">5</shift-repeat>
|
<axis>
|
||||||
|
<x>1</x>
|
||||||
|
<y>0</y>
|
||||||
|
<z>0</z>
|
||||||
|
</axis>
|
||||||
|
<center>
|
||||||
|
<x-m>0.0</x-m>
|
||||||
|
<y-m>-0.0272</y-m>
|
||||||
|
<z-m>-0.0292</z-m>
|
||||||
|
</center>
|
||||||
|
|
||||||
|
<shift-repeat type="int">5</shift-repeat>
|
||||||
|
|
||||||
<action>
|
<action>
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-adjust</command>
|
<command>property-adjust</command>
|
||||||
<property>/instrumentation/nav[1]/radials/selected-deg</property>
|
<property>/instrumentation/nav[1]/radials/selected-deg</property>
|
||||||
<factor>1</factor>
|
<factor>1</factor>
|
||||||
<min>0</min>
|
<min>0</min>
|
||||||
<max>360</max>
|
<max>360</max>
|
||||||
<wrap>1</wrap>
|
<wrap>1</wrap>
|
||||||
</binding>
|
</binding>
|
||||||
</action>
|
</action>
|
||||||
|
|
||||||
<hovered>
|
<hovered>
|
||||||
|
@ -198,5 +208,3 @@
|
||||||
</animation>
|
</animation>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
<liveryinterior>
|
<liveryinterior>
|
||||||
<name type="string">D-EEQA</name>
|
<name type="string">D-EEQA</name>
|
||||||
<index type="int">1</index>
|
<index type="int">1</index>
|
||||||
<texture>interior_test.png</texture>
|
<texture>interior.png</texture>
|
||||||
</liveryinterior>
|
</liveryinterior>
|
||||||
<liverypanel>
|
<liverypanel>
|
||||||
<name type="string">D-EEQA</name>
|
<name type="string">D-EEQA</name>
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 447 KiB After Width: | Height: | Size: 447 KiB |
|
@ -1,87 +1,90 @@
|
||||||
<?xml version = '1.0' encoding = 'UTF-8' ?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<entry>
|
|
||||||
<ind>0.000</ind>
|
<entry>
|
||||||
<dep>0.000</dep>
|
<ind>0.000</ind>
|
||||||
</entry>
|
<dep>0.000</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.050</ind>
|
<entry>
|
||||||
<dep>1.305</dep>
|
<ind>0.050</ind>
|
||||||
</entry>
|
<dep>1.305</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.100</ind>
|
<entry>
|
||||||
<dep>2.583</dep>
|
<ind>0.100</ind>
|
||||||
</entry>
|
<dep>2.583</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.150</ind>
|
<entry>
|
||||||
<dep>3.836</dep>
|
<ind>0.150</ind>
|
||||||
</entry>
|
<dep>3.836</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.200</ind>
|
<entry>
|
||||||
<dep>5.067</dep>
|
<ind>0.200</ind>
|
||||||
</entry>
|
<dep>5.067</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.250</ind>
|
<entry>
|
||||||
<dep>6.276</dep>
|
<ind>0.250</ind>
|
||||||
</entry>
|
<dep>6.276</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.300</ind>
|
<entry>
|
||||||
<dep>7.467</dep>
|
<ind>0.300</ind>
|
||||||
</entry>
|
<dep>7.467</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.350</ind>
|
<entry>
|
||||||
<dep>8.639</dep>
|
<ind>0.350</ind>
|
||||||
</entry>
|
<dep>8.639</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.400</ind>
|
<entry>
|
||||||
<dep>9.794</dep>
|
<ind>0.400</ind>
|
||||||
</entry>
|
<dep>9.794</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.450</ind>
|
<entry>
|
||||||
<dep>10.934</dep>
|
<ind>0.450</ind>
|
||||||
</entry>
|
<dep>10.934</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.500</ind>
|
<entry>
|
||||||
<dep>12.059</dep>
|
<ind>0.500</ind>
|
||||||
</entry>
|
<dep>12.059</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.550</ind>
|
<entry>
|
||||||
<dep>13.171</dep>
|
<ind>0.550</ind>
|
||||||
</entry>
|
<dep>13.171</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.600</ind>
|
<entry>
|
||||||
<dep>14.270</dep>
|
<ind>0.600</ind>
|
||||||
</entry>
|
<dep>14.270</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.650</ind>
|
<entry>
|
||||||
<dep>15.357</dep>
|
<ind>0.650</ind>
|
||||||
</entry>
|
<dep>15.357</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.700</ind>
|
<entry>
|
||||||
<dep>16.433</dep>
|
<ind>0.700</ind>
|
||||||
</entry>
|
<dep>16.433</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.750</ind>
|
<entry>
|
||||||
<dep>17.498</dep>
|
<ind>0.750</ind>
|
||||||
</entry>
|
<dep>17.498</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.800</ind>
|
<entry>
|
||||||
<dep>18.554</dep>
|
<ind>0.800</ind>
|
||||||
</entry>
|
<dep>18.554</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.850</ind>
|
<entry>
|
||||||
<dep>19.601</dep>
|
<ind>0.850</ind>
|
||||||
</entry>
|
<dep>19.601</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.900</ind>
|
<entry>
|
||||||
<dep>20.639</dep>
|
<ind>0.900</ind>
|
||||||
</entry>
|
<dep>20.639</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>0.950</ind>
|
<entry>
|
||||||
<dep>21.668</dep>
|
<ind>0.950</ind>
|
||||||
</entry>
|
<dep>21.668</dep>
|
||||||
<entry>
|
</entry>
|
||||||
<ind>1.000</ind>
|
<entry>
|
||||||
<dep>22.691</dep>
|
<ind>1.000</ind>
|
||||||
</entry>
|
<dep>22.691</dep>
|
||||||
|
</entry>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -42,11 +42,17 @@ aircraft.data.add(
|
||||||
"instrumentation/comm[0]/volume",
|
"instrumentation/comm[0]/volume",
|
||||||
"instrumentation/comm[0]/frequencies/selected-mhz",
|
"instrumentation/comm[0]/frequencies/selected-mhz",
|
||||||
"instrumentation/comm[0]/frequencies/standby-mhz",
|
"instrumentation/comm[0]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/comm[0]/frequencies/dial-khz",
|
||||||
|
"instrumentation/comm[0]/frequencies/dial-mhz",
|
||||||
"instrumentation/comm[0]/test-btn",
|
"instrumentation/comm[0]/test-btn",
|
||||||
"instrumentation/nav[0]/audio-btn",
|
"instrumentation/nav[0]/audio-btn",
|
||||||
"instrumentation/nav[0]/power-btn",
|
"instrumentation/nav[0]/power-btn",
|
||||||
|
"instrumentation/nav[0]/volume",
|
||||||
"instrumentation/nav[0]/frequencies/selected-mhz",
|
"instrumentation/nav[0]/frequencies/selected-mhz",
|
||||||
"instrumentation/nav[0]/frequencies/standby-mhz",
|
"instrumentation/nav[0]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/nav[0]/frequencies/dial-khz",
|
||||||
|
"instrumentation/nav[0]/frequencies/dial-mhz",
|
||||||
|
"instrumentation/nav[0]/radials/selected-deg",
|
||||||
);
|
);
|
||||||
|
|
||||||
# COMM2 (according to its documentation)
|
# COMM2 (according to its documentation)
|
||||||
|
@ -55,11 +61,36 @@ aircraft.data.add(
|
||||||
"instrumentation/comm[1]/volume",
|
"instrumentation/comm[1]/volume",
|
||||||
"instrumentation/comm[1]/frequencies/selected-mhz",
|
"instrumentation/comm[1]/frequencies/selected-mhz",
|
||||||
"instrumentation/comm[1]/frequencies/standby-mhz",
|
"instrumentation/comm[1]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/comm[1]/frequencies/dial-khz",
|
||||||
|
"instrumentation/comm[1]/frequencies/dial-mhz",
|
||||||
"instrumentation/comm[1]/test-btn",
|
"instrumentation/comm[1]/test-btn",
|
||||||
"instrumentation/nav[1]/audio-btn",
|
"instrumentation/nav[1]/audio-btn",
|
||||||
"instrumentation/nav[1]/power-btn",
|
"instrumentation/nav[1]/power-btn",
|
||||||
|
"instrumentation/nav[1]/volume",
|
||||||
"instrumentation/nav[1]/frequencies/selected-mhz",
|
"instrumentation/nav[1]/frequencies/selected-mhz",
|
||||||
"instrumentation/nav[1]/frequencies/standby-mhz",
|
"instrumentation/nav[1]/frequencies/standby-mhz",
|
||||||
|
"instrumentation/nav[1]/frequencies/dial-khz",
|
||||||
|
"instrumentation/nav[1]/frequencies/dial-mhz",
|
||||||
|
"instrumentation/nav[1]/radials/selected-deg",
|
||||||
|
);
|
||||||
|
|
||||||
|
aircraft.data.add(
|
||||||
|
"instrumentation/dme/switch-position",
|
||||||
|
"instrumentation/dme/frequencies/source",
|
||||||
|
"instrumentation/dme/frequencies/selected-mhz",
|
||||||
|
);
|
||||||
|
|
||||||
|
# Instruments
|
||||||
|
aircraft.data.add(
|
||||||
|
"instrumentation/altimeter/setting-inhg",
|
||||||
|
"instrumentation/attitude-indicator/horizon-offset-deg",
|
||||||
|
"autopilot/settings/heading-bug-deg",
|
||||||
|
"instrumentation/heading-indicator/offset-deg",
|
||||||
|
"instrumentation/adf[0]/rotation-deg",
|
||||||
|
"instrumentation/adf[0]/frequencies/dial-1-khz",
|
||||||
|
"instrumentation/adf[0]/frequencies/dial-100-khz",
|
||||||
|
"autopilot/KAP140/settings/dial-10-ft",
|
||||||
|
"autopilot/KAP140/settings/dial-100-ft",
|
||||||
);
|
);
|
||||||
|
|
||||||
# DME saves power-btn in ki266.nas
|
# DME saves power-btn in ki266.nas
|
||||||
|
@ -83,7 +114,11 @@ aircraft.data.add(
|
||||||
"/controls/lighting/landing-lights",
|
"/controls/lighting/landing-lights",
|
||||||
"/controls/lighting/nav-lights",
|
"/controls/lighting/nav-lights",
|
||||||
"/controls/lighting/strobe",
|
"/controls/lighting/strobe",
|
||||||
"/controls/lighting/taxi-light"
|
"/controls/lighting/taxi-light",
|
||||||
|
"/controls/switches/magnetos",
|
||||||
|
"/controls/switches/master-bat",
|
||||||
|
"/controls/switches/master-alt",
|
||||||
|
"/controls/switches/master-avionics",
|
||||||
);
|
);
|
||||||
|
|
||||||
# Other controls
|
# Other controls
|
||||||
|
@ -91,5 +126,32 @@ aircraft.data.add(
|
||||||
"/controls/anti-ice/engine/carb-heat",
|
"/controls/anti-ice/engine/carb-heat",
|
||||||
"/controls/anti-ice/pitot-heat",
|
"/controls/anti-ice/pitot-heat",
|
||||||
"/consumables/fuel/tank/selected",
|
"/consumables/fuel/tank/selected",
|
||||||
"/consumables/fuel/tank[1]/selected"
|
"/consumables/fuel/tank[1]/selected",
|
||||||
|
"/controls/gear/brake-parking",
|
||||||
|
"/controls/flight/flaps",
|
||||||
|
"/controls/flight/elevator-trim",
|
||||||
|
"/controls/engines/current-engine/throttle",
|
||||||
|
"/controls/engines/current-engine/mixture",
|
||||||
|
"/controls/engines/engine[0]/primer-lever",
|
||||||
|
);
|
||||||
|
|
||||||
|
# Circuit breakers
|
||||||
|
aircraft.data.add(
|
||||||
|
"/controls/circuit-breakers/aircond",
|
||||||
|
"/controls/circuit-breakers/autopilot",
|
||||||
|
"/controls/circuit-breakers/bcnlt",
|
||||||
|
"/controls/circuit-breakers/flaps",
|
||||||
|
"/controls/circuit-breakers/instr",
|
||||||
|
"/controls/circuit-breakers/intlt",
|
||||||
|
"/controls/circuit-breakers/landing",
|
||||||
|
"/controls/circuit-breakers/master",
|
||||||
|
"/controls/circuit-breakers/navlt",
|
||||||
|
"/controls/circuit-breakers/pitot-heat",
|
||||||
|
"/controls/circuit-breakers/radio1",
|
||||||
|
"/controls/circuit-breakers/radio2",
|
||||||
|
"/controls/circuit-breakers/radio3",
|
||||||
|
"/controls/circuit-breakers/radio4",
|
||||||
|
"/controls/circuit-breakers/radio5",
|
||||||
|
"/controls/circuit-breakers/strobe",
|
||||||
|
"/controls/circuit-breakers/turn-coordinator",
|
||||||
);
|
);
|
||||||
|
|
|
@ -1,211 +1,232 @@
|
||||||
##########################################
|
##########################################
|
||||||
# Brakes
|
# Brakes
|
||||||
##########################################
|
##########################################
|
||||||
|
|
||||||
controls.applyBrakes = func (v, which = 0) {
|
controls.applyBrakes = func (v, which = 0) {
|
||||||
if (which <= 0 and !getprop("/fdm/jsbsim/gear/unit[1]/broken")) {
|
if (which <= 0 and !getprop("/fdm/jsbsim/gear/unit[1]/broken")) {
|
||||||
interpolate("/controls/gear/brake-left", v, controls.fullBrakeTime);
|
interpolate("/controls/gear/brake-left", v, controls.fullBrakeTime);
|
||||||
}
|
}
|
||||||
if (which >= 0 and !getprop("/fdm/jsbsim/gear/unit[2]/broken")) {
|
if (which >= 0 and !getprop("/fdm/jsbsim/gear/unit[2]/broken")) {
|
||||||
interpolate("/controls/gear/brake-right", v, controls.fullBrakeTime);
|
interpolate("/controls/gear/brake-right", v, controls.fullBrakeTime);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
controls.applyParkingBrake = func (v) {
|
controls.applyParkingBrake = func (v) {
|
||||||
if (!v) {
|
if (!v) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var left_broken = getprop("/fdm/jsbsim/gear/unit[1]/broken");
|
var left_broken = getprop("/fdm/jsbsim/gear/unit[1]/broken");
|
||||||
var right_broken =getprop("/fdm/jsbsim/gear/unit[2]/broken");
|
var right_broken =getprop("/fdm/jsbsim/gear/unit[2]/broken");
|
||||||
var p = "/controls/gear/brake-parking";
|
var p = "/controls/gear/brake-parking";
|
||||||
var orig_p = getprop(p);
|
var orig_p = getprop(p);
|
||||||
|
|
||||||
# We assume one non-broken gear is enough to apply the parking brake
|
# We assume one non-broken gear is enough to apply the parking brake
|
||||||
if (orig_p or !left_broken or !right_broken) {
|
if (orig_p or !left_broken or !right_broken) {
|
||||||
setprop(p, var i = !orig_p);
|
setprop(p, var i = !orig_p);
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
return orig_p;
|
return orig_p;
|
||||||
};
|
};
|
||||||
|
|
||||||
##########################################
|
##########################################
|
||||||
# Click Sounds
|
# Click Sounds
|
||||||
##########################################
|
##########################################
|
||||||
|
|
||||||
var click = func (name, timeout=0.1) {
|
var click = func (name, timeout=0.1) {
|
||||||
var sound_prop = "/sim/model/c172p/sound/click-" ~ name;
|
var sound_prop = "/sim/model/c172p/sound/click-" ~ name;
|
||||||
|
|
||||||
# Play the sound
|
# Play the sound
|
||||||
setprop(sound_prop, 1);
|
setprop(sound_prop, 1);
|
||||||
|
|
||||||
# Reset the property after 0.2 seconds so that the sound can be
|
# Reset the property after 0.2 seconds so that the sound can be
|
||||||
# played again.
|
# played again.
|
||||||
settimer(func {
|
settimer(func {
|
||||||
setprop(sound_prop, 0);
|
setprop(sound_prop, 0);
|
||||||
}, timeout);
|
}, timeout);
|
||||||
};
|
};
|
||||||
|
|
||||||
##########################################
|
##########################################
|
||||||
# Ground Detection
|
# Ground Detection
|
||||||
##########################################
|
##########################################
|
||||||
|
|
||||||
# Do terrain modelling ourselves.
|
# Do terrain modelling ourselves.
|
||||||
#setprop("sim/fdm/surface/override-level", 1);
|
#setprop("sim/fdm/surface/override-level", 1);
|
||||||
|
|
||||||
var terrain_survol_loop = func {
|
var terrain_survol_loop = func {
|
||||||
var lat = getprop("/position/latitude-deg");
|
var lat = getprop("/position/latitude-deg");
|
||||||
var lon = getprop("/position/longitude-deg");
|
var lon = getprop("/position/longitude-deg");
|
||||||
|
|
||||||
var info = geodinfo(lat, lon);
|
var info = geodinfo(lat, lon);
|
||||||
if (info != nil) {
|
if (info != nil) {
|
||||||
if (info[1] != nil){
|
if (info[1] != nil){
|
||||||
if (info[1].solid !=nil)
|
if (info[1].solid !=nil)
|
||||||
setprop("/environment/terrain-type",info[1].solid);
|
setprop("/environment/terrain-type",info[1].solid);
|
||||||
if (info[1].load_resistance !=nil)
|
if (info[1].load_resistance !=nil)
|
||||||
setprop("/environment/terrain-load-resistance",info[1].load_resistance);
|
setprop("/environment/terrain-load-resistance",info[1].load_resistance);
|
||||||
if (info[1].friction_factor !=nil)
|
if (info[1].friction_factor !=nil)
|
||||||
setprop("/environment/terrain-friction-factor",info[1].friction_factor);
|
setprop("/environment/terrain-friction-factor",info[1].friction_factor);
|
||||||
if (info[1].bumpiness !=nil)
|
if (info[1].bumpiness !=nil)
|
||||||
setprop("/environment/terrain-bumpiness",info[1].bumpiness);
|
setprop("/environment/terrain-bumpiness",info[1].bumpiness);
|
||||||
if (info[1].rolling_friction !=nil)
|
if (info[1].rolling_friction !=nil)
|
||||||
setprop("/environment/terrain-rolling-friction",info[1].rolling_friction);
|
setprop("/environment/terrain-rolling-friction",info[1].rolling_friction);
|
||||||
if (info[1].names !=nil)
|
if (info[1].names !=nil)
|
||||||
setprop("/environment/terrain-names",info[1].names[0]);
|
setprop("/environment/terrain-names",info[1].names[0]);
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
setprop("/environment/terrain",1);
|
setprop("/environment/terrain",1);
|
||||||
setprop("/environment/terrain-load-resistance",1e+30);
|
setprop("/environment/terrain-load-resistance",1e+30);
|
||||||
setprop("/environment/terrain-friction-factor",1.05);
|
setprop("/environment/terrain-friction-factor",1.05);
|
||||||
setprop("/environment/terrain-bumpiness",0);
|
setprop("/environment/terrain-bumpiness",0);
|
||||||
setprop("/environment/terrain-rolling-friction",0.02);
|
setprop("/environment/terrain-rolling-friction",0.02);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!getprop("sim/freeze/replay-state") and !getprop("/environment/terrain-type") and getprop("/position/altitude-agl-ft") < 3.0){
|
if(!getprop("sim/freeze/replay-state") and !getprop("/environment/terrain-type") and getprop("/position/altitude-agl-ft") < 3.0){
|
||||||
setprop("sim/messages/copilot", "You are on water !");
|
setprop("sim/messages/copilot", "You are on water !");
|
||||||
setprop("sim/freeze/clock", 1);
|
setprop("sim/freeze/clock", 1);
|
||||||
setprop("sim/freeze/master", 1);
|
setprop("sim/freeze/master", 1);
|
||||||
setprop("sim/crashed", 1);
|
setprop("sim/crashed", 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var reset_system = func {
|
var reset_system = func {
|
||||||
|
|
||||||
if (getprop("/fdm/jsbsim/running"))
|
if (getprop("/fdm/jsbsim/running"))
|
||||||
{
|
{
|
||||||
c172p.autostart(0);
|
c172p.autostart(0);
|
||||||
setprop("/controls/switches/starter", 1);
|
setprop("/controls/switches/starter", 1);
|
||||||
var engineRunning = setlistener("/engines/engine[0]/running", func{
|
var engineRunning = setlistener("/engines/active-engine/running", func{
|
||||||
if (getprop("/engines/engine[0]/running"))
|
if (getprop("/engines/active-engine/running"))
|
||||||
{
|
{
|
||||||
setprop("/controls/switches/starter", 0);
|
setprop("/controls/switches/starter", 0);
|
||||||
removelistener(engineRunning);
|
removelistener(engineRunning);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
# These properties are aliased to MP properties in /sim/multiplay/generic/.
|
# These properties are aliased to MP properties in /sim/multiplay/generic/.
|
||||||
# This aliasing seems to work in both ways, because the two properties below
|
# This aliasing seems to work in both ways, because the two properties below
|
||||||
# appear to receive the random values from the MP properties during initialization.
|
# appear to receive the random values from the MP properties during initialization.
|
||||||
# Therefore, override these random values with the proper values we want.
|
# Therefore, override these random values with the proper values we want.
|
||||||
props.globals.getNode("/fdm/jsbsim/crash", 0).setBoolValue(0);
|
props.globals.getNode("/fdm/jsbsim/crash", 0).setBoolValue(0);
|
||||||
props.globals.getNode("/fdm/jsbsim/gear/unit[0]/broken", 0).setBoolValue(0);
|
props.globals.getNode("/fdm/jsbsim/gear/unit[0]/broken", 0).setBoolValue(0);
|
||||||
props.globals.getNode("/fdm/jsbsim/gear/unit[1]/broken", 0).setBoolValue(0);
|
props.globals.getNode("/fdm/jsbsim/gear/unit[1]/broken", 0).setBoolValue(0);
|
||||||
props.globals.getNode("/fdm/jsbsim/gear/unit[2]/broken", 0).setBoolValue(0);
|
props.globals.getNode("/fdm/jsbsim/gear/unit[2]/broken", 0).setBoolValue(0);
|
||||||
props.globals.getNode("/fdm/jsbsim/pontoon-damage/left-pontoon", 0).setIntValue(0);
|
props.globals.getNode("/fdm/jsbsim/pontoon-damage/left-pontoon", 0).setIntValue(0);
|
||||||
props.globals.getNode("/fdm/jsbsim/pontoon-damage/right-pontoon", 0).setIntValue(0);
|
props.globals.getNode("/fdm/jsbsim/pontoon-damage/right-pontoon", 0).setIntValue(0);
|
||||||
|
|
||||||
setprop("/engines/active-engine/killed", 0);
|
setprop("/engines/active-engine/killed", 0);
|
||||||
setprop("/fdm/jsbsim/contact/unit[4]/z-position", 50);
|
setprop("/fdm/jsbsim/contact/unit[4]/z-position", 50);
|
||||||
setprop("/fdm/jsbsim/contact/unit[5]/z-position", 50);
|
setprop("/fdm/jsbsim/contact/unit[5]/z-position", 50);
|
||||||
|
|
||||||
# Note: these separate flags exist because PUI's <radio> element
|
# Note: these separate flags exist because PUI's <radio> element
|
||||||
# only accepts booleans.
|
# only accepts booleans.
|
||||||
var p = getprop("fdm/jsbsim/bushkit");
|
var p = getprop("fdm/jsbsim/bushkit");
|
||||||
setprop("/sim/model/c172p/bushkit_flag_0",0);
|
setprop("/sim/model/c172p/bushkit_flag_0",0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_1",0);
|
setprop("/sim/model/c172p/bushkit_flag_1",0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_2",0);
|
setprop("/sim/model/c172p/bushkit_flag_2",0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_3",0);
|
setprop("/sim/model/c172p/bushkit_flag_3",0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_4",0);
|
setprop("/sim/model/c172p/bushkit_flag_4",0);
|
||||||
if (p == 0) { setprop("/sim/model/c172p/bushkit_flag_0",1); }
|
if (p == 0) { setprop("/sim/model/c172p/bushkit_flag_0",1); }
|
||||||
if (p == 1) { setprop("/sim/model/c172p/bushkit_flag_1",1); }
|
if (p == 1) { setprop("/sim/model/c172p/bushkit_flag_1",1); }
|
||||||
if (p == 2) { setprop("/sim/model/c172p/bushkit_flag_2",1); }
|
if (p == 2) { setprop("/sim/model/c172p/bushkit_flag_2",1); }
|
||||||
if (p == 3) { setprop("/sim/model/c172p/bushkit_flag_3",1); }
|
if (p == 3) { setprop("/sim/model/c172p/bushkit_flag_3",1); }
|
||||||
if (p == 4) { setprop("/sim/model/c172p/bushkit_flag_4",1); }
|
if (p == 4) { setprop("/sim/model/c172p/bushkit_flag_4",1); }
|
||||||
}
|
}
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
# Global loop function
|
# Global loop function
|
||||||
# If you need to run nasal as loop, add it in this function
|
# If you need to run nasal as loop, add it in this function
|
||||||
############################################
|
############################################
|
||||||
var global_system_loop = func{
|
var global_system_loop = func{
|
||||||
# terrain_survol_loop was incorporated during damage system creation.
|
# terrain_survol_loop was incorporated during damage system creation.
|
||||||
# "Unimplemented" crash detection system requires this self terrain modelling (I think)
|
# "Unimplemented" crash detection system requires this self terrain modelling (I think)
|
||||||
# If we end up not using it, then we can remove it.
|
# If we end up not using it, then we can remove it.
|
||||||
#terrain_survol_loop();
|
#terrain_survol_loop();
|
||||||
c172p.physics_loop();
|
c172p.physics_loop();
|
||||||
c172p.weather_effects_loop();
|
c172p.weather_effects_loop();
|
||||||
}
|
}
|
||||||
|
|
||||||
##########################################
|
##########################################
|
||||||
# SetListerner must be at the end of this file
|
# SetListerner must be at the end of this file
|
||||||
##########################################
|
##########################################
|
||||||
#setlistener("/sim/signals/fdm-initialized", func{
|
#setlistener("/sim/signals/fdm-initialized", func{
|
||||||
# setprop("/environment/terrain-type",1);
|
# setprop("/environment/terrain-type",1);
|
||||||
# setprop("/environment/terrain-load-resistance",1e+30);
|
# setprop("/environment/terrain-load-resistance",1e+30);
|
||||||
# setprop("/environment/terrain-friction-factor",1.05);
|
# setprop("/environment/terrain-friction-factor",1.05);
|
||||||
# setprop("/environment/terrain-bumpiness",0);
|
# setprop("/environment/terrain-bumpiness",0);
|
||||||
# setprop("/environment/terrain-rolling-friction",0.02);
|
# setprop("/environment/terrain-rolling-friction",0.02);
|
||||||
#});
|
#});
|
||||||
|
|
||||||
var set_limits = func (node) {
|
var set_limits = func (node) {
|
||||||
if (node.getValue() == 1) {
|
if (node.getValue() == 1) {
|
||||||
var limits = props.globals.getNode("/limits/mass-and-balance-180hp");
|
var limits = props.globals.getNode("/limits/mass-and-balance-180hp");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
var limits = props.globals.getNode("/limits/mass-and-balance-160hp");
|
var limits = props.globals.getNode("/limits/mass-and-balance-160hp");
|
||||||
}
|
}
|
||||||
var ac_limits = props.globals.getNode("/limits/mass-and-balance");
|
var ac_limits = props.globals.getNode("/limits/mass-and-balance");
|
||||||
|
|
||||||
# Get the mass limits of the current engine
|
# Get the mass limits of the current engine
|
||||||
var ramp_mass = limits.getNode("maximum-ramp-mass-lbs");
|
var ramp_mass = limits.getNode("maximum-ramp-mass-lbs");
|
||||||
var takeoff_mass = limits.getNode("maximum-takeoff-mass-lbs");
|
var takeoff_mass = limits.getNode("maximum-takeoff-mass-lbs");
|
||||||
var landing_mass = limits.getNode("maximum-landing-mass-lbs");
|
var landing_mass = limits.getNode("maximum-landing-mass-lbs");
|
||||||
|
|
||||||
# Get the actual mass limit nodes of the aircraft
|
# Get the actual mass limit nodes of the aircraft
|
||||||
var ac_ramp_mass = ac_limits.getNode("maximum-ramp-mass-lbs");
|
var ac_ramp_mass = ac_limits.getNode("maximum-ramp-mass-lbs");
|
||||||
var ac_takeoff_mass = ac_limits.getNode("maximum-takeoff-mass-lbs");
|
var ac_takeoff_mass = ac_limits.getNode("maximum-takeoff-mass-lbs");
|
||||||
var ac_landing_mass = ac_limits.getNode("maximum-landing-mass-lbs");
|
var ac_landing_mass = ac_limits.getNode("maximum-landing-mass-lbs");
|
||||||
|
|
||||||
# Set the mass limits of the aircraft
|
# Set the mass limits of the aircraft
|
||||||
ac_ramp_mass.unalias();
|
ac_ramp_mass.unalias();
|
||||||
ac_takeoff_mass.unalias();
|
ac_takeoff_mass.unalias();
|
||||||
ac_landing_mass.unalias();
|
ac_landing_mass.unalias();
|
||||||
|
|
||||||
ac_ramp_mass.alias(ramp_mass);
|
ac_ramp_mass.alias(ramp_mass);
|
||||||
ac_takeoff_mass.alias(takeoff_mass);
|
ac_takeoff_mass.alias(takeoff_mass);
|
||||||
ac_landing_mass.alias(landing_mass);
|
ac_landing_mass.alias(landing_mass);
|
||||||
};
|
};
|
||||||
|
|
||||||
setlistener("/controls/engines/active-engine", func (node) {
|
setlistener("/controls/engines/active-engine", func (node) {
|
||||||
# Set new mass limits for Fuel and Payload Settings dialog
|
# Set new mass limits for Fuel and Payload Settings dialog
|
||||||
set_limits(node);
|
set_limits(node);
|
||||||
|
|
||||||
# Emit a sound because the engine has been replaced
|
# Emit a sound because the engine has been replaced
|
||||||
click("engine-repair", 6.0);
|
click("engine-repair", 6.0);
|
||||||
}, 0, 0);
|
}, 0, 0);
|
||||||
|
|
||||||
var nasalInit = setlistener("/sim/signals/fdm-initialized", func{
|
var update_pax = func {
|
||||||
# Use Nasal to make some properties persistent. <aircraft-data> does
|
var state = 0;
|
||||||
# not work reliably.
|
state = bits.switch(state, 0, getprop("pax/co-pilot/present"));
|
||||||
aircraft.data.add("/sim/model/c172p/immat-on-panel");
|
state = bits.switch(state, 1, getprop("pax/left-passenger/present"));
|
||||||
aircraft.data.load();
|
state = bits.switch(state, 2, getprop("pax/right-passenger/present"));
|
||||||
|
setprop("/payload/pax-state", state);
|
||||||
# Initialize mass limits
|
};
|
||||||
set_limits(props.globals.getNode("/controls/engines/active-engine"));
|
|
||||||
|
setlistener("/pax/co-pilot/present", update_pax, 0, 0);
|
||||||
reset_system();
|
setlistener("/pax/left-passenger/present", update_pax, 0, 0);
|
||||||
var c172_timer = maketimer(0.25, func{global_system_loop()});
|
setlistener("/pax/right-passenger/present", update_pax, 0, 0);
|
||||||
c172_timer.start();
|
update_pax();
|
||||||
});
|
|
||||||
|
var nasalInit = setlistener("/sim/signals/fdm-initialized", func{
|
||||||
|
# Use Nasal to make some properties persistent. <aircraft-data> does
|
||||||
|
# not work reliably.
|
||||||
|
aircraft.data.add("/sim/model/c172p/immat-on-panel");
|
||||||
|
aircraft.data.load();
|
||||||
|
|
||||||
|
# Initialize mass limits
|
||||||
|
set_limits(props.globals.getNode("/controls/engines/active-engine"));
|
||||||
|
|
||||||
|
# Set alt alert of KAP 140 autopilot to 20_000 ft to get rid of annoying beep
|
||||||
|
setlistener("/autopilot/KAP140/settings/target-alt-ft", func (n) {
|
||||||
|
if (n.getValue() == 0) {
|
||||||
|
kap140.altPreselect = 20000;
|
||||||
|
setprop("/autopilot/KAP140/settings/target-alt-ft", kap140.altPreselect);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
reset_system();
|
||||||
|
var c172_timer = maketimer(0.25, func{global_system_loop()});
|
||||||
|
c172_timer.start();
|
||||||
|
});
|
||||||
|
|
|
@ -27,31 +27,6 @@ var ammeter_ave = 0.0;
|
||||||
var init_electrical = func {
|
var init_electrical = func {
|
||||||
battery = BatteryClass.new();
|
battery = BatteryClass.new();
|
||||||
alternator = AlternatorClass.new();
|
alternator = AlternatorClass.new();
|
||||||
|
|
||||||
props.globals.getNode("controls/circuit-breakers/aircond", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/master", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/flaps", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/pitot-heat", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/instr", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/intlt", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/navlt", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/bcnlt", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/landing", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/strobe", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/turn-coordinator", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/radio1", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/radio2", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/radio3", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/radio4", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/radio5", 1).setBoolValue(1);
|
|
||||||
props.globals.getNode("controls/circuit-breakers/autopilot", 1).setBoolValue(1);
|
|
||||||
|
|
||||||
# These two properties are aliased to MP properties in /sim/multiplay/generic/.
|
|
||||||
# This aliasing seems to work in both ways, because the two properties below
|
|
||||||
# appear to receive the random values from the MP properties during initialization.
|
|
||||||
# Therefore, override these random values with the proper values we want.
|
|
||||||
props.globals.getNode("sim/model/c172p/lighting/beacon-top/state", 0).setBoolValue(0);
|
|
||||||
props.globals.getNode("sim/model/c172p/lighting/strobes/state", 0).setBoolValue(0);
|
|
||||||
|
|
||||||
# Request that the update function be called next frame
|
# Request that the update function be called next frame
|
||||||
settimer(update_electrical, 0);
|
settimer(update_electrical, 0);
|
||||||
|
@ -115,7 +90,7 @@ BatteryClass.apply_load = func (amps, dt) {
|
||||||
var new_charge_percent = std.max(0.0, std.min(old_charge_percent - percent_used, 1.0));
|
var new_charge_percent = std.max(0.0, std.min(old_charge_percent - percent_used, 1.0));
|
||||||
|
|
||||||
if (new_charge_percent < 0.1 and old_charge_percent >= 0.1)
|
if (new_charge_percent < 0.1 and old_charge_percent >= 0.1)
|
||||||
gui.popupTip("Warning: Low battery! Enable alternator or apply external power to recharge battery.", 10);
|
gui.popupTip("Warning: Low battery! Enable alternator or apply external power to recharge battery!", 10);
|
||||||
|
|
||||||
setprop("/systems/electrical/battery-charge-percent", new_charge_percent);
|
setprop("/systems/electrical/battery-charge-percent", new_charge_percent);
|
||||||
return me.amp_hours * new_charge_percent;
|
return me.amp_hours * new_charge_percent;
|
||||||
|
@ -164,7 +139,7 @@ var AlternatorClass = {};
|
||||||
|
|
||||||
AlternatorClass.new = func {
|
AlternatorClass.new = func {
|
||||||
var obj = { parents : [AlternatorClass],
|
var obj = { parents : [AlternatorClass],
|
||||||
rpm_source : "/engines/engine[0]/rpm",
|
rpm_source : "/engines/active-engine/rpm",
|
||||||
rpm_threshold : 800.0,
|
rpm_threshold : 800.0,
|
||||||
ideal_volts : 28.0,
|
ideal_volts : 28.0,
|
||||||
ideal_amps : 60.0 };
|
ideal_amps : 60.0 };
|
||||||
|
|
|
@ -32,7 +32,7 @@ var init_hobbs_meter = func(index, meter) {
|
||||||
init_hobbs_meter(0, hobbsmeter_engine_160hp);
|
init_hobbs_meter(0, hobbsmeter_engine_160hp);
|
||||||
init_hobbs_meter(1, hobbsmeter_engine_180hp);
|
init_hobbs_meter(1, hobbsmeter_engine_180hp);
|
||||||
|
|
||||||
setlistener("/sim/time/hobbs/engine[0]", func {
|
var update_hobbs_meter = func {
|
||||||
# in seconds
|
# in seconds
|
||||||
var hobbs_160hp = getprop("/sim/time/hobbs/engine[0]") or 0.0;
|
var hobbs_160hp = getprop("/sim/time/hobbs/engine[0]") or 0.0;
|
||||||
var hobbs_180hp = getprop("/sim/time/hobbs/engine[1]") or 0.0;
|
var hobbs_180hp = getprop("/sim/time/hobbs/engine[1]") or 0.0;
|
||||||
|
@ -47,7 +47,10 @@ setlistener("/sim/time/hobbs/engine[0]", func {
|
||||||
setprop("/instrumentation/hobbs-meter/digits2", math.mod(int(hobbs / 10), 10));
|
setprop("/instrumentation/hobbs-meter/digits2", math.mod(int(hobbs / 10), 10));
|
||||||
setprop("/instrumentation/hobbs-meter/digits3", math.mod(int(hobbs / 100), 10));
|
setprop("/instrumentation/hobbs-meter/digits3", math.mod(int(hobbs / 100), 10));
|
||||||
setprop("/instrumentation/hobbs-meter/digits4", math.mod(int(hobbs / 1000), 10));
|
setprop("/instrumentation/hobbs-meter/digits4", math.mod(int(hobbs / 1000), 10));
|
||||||
}, 1, 0);
|
};
|
||||||
|
|
||||||
|
setlistener("/sim/time/hobbs/engine[0]", update_hobbs_meter, 1, 0);
|
||||||
|
setlistener("/sim/time/hobbs/engine[1]", update_hobbs_meter, 1, 0);
|
||||||
|
|
||||||
# ========== primer stuff ======================
|
# ========== primer stuff ======================
|
||||||
|
|
||||||
|
@ -96,13 +99,13 @@ var update = func {
|
||||||
# We use the mixture to control the engines, so set the mixture
|
# We use the mixture to control the engines, so set the mixture
|
||||||
var usePrimer = getprop("/controls/engines/engine/use-primer") or 0;
|
var usePrimer = getprop("/controls/engines/engine/use-primer") or 0;
|
||||||
|
|
||||||
var engine_running = getprop("/engines/current-engine/running");
|
var engine_running = getprop("/engines/active-engine/running");
|
||||||
|
|
||||||
if (outOfFuel and (engine_running or usePrimer)) {
|
if (outOfFuel and (engine_running or usePrimer)) {
|
||||||
print("Out of fuel!");
|
print("Out of fuel!");
|
||||||
gui.popupTip("Out of fuel!");
|
gui.popupTip("Out of fuel!");
|
||||||
}
|
}
|
||||||
elsif (usePrimer and getprop("/engines/engine/oil-temperature-degf") <= 75) {
|
elsif (usePrimer and !engine_running and getprop("/engines/active-engine/oil-temperature-degf") <= 75) {
|
||||||
# Mixture is controlled by start conditions
|
# Mixture is controlled by start conditions
|
||||||
var primer = getprop("/controls/engines/engine/primer");
|
var primer = getprop("/controls/engines/engine/primer");
|
||||||
if (!getprop("/fdm/jsbsim/fcs/mixture-primer") and getprop("/controls/switches/starter")) {
|
if (!getprop("/fdm/jsbsim/fcs/mixture-primer") and getprop("/controls/switches/starter")) {
|
||||||
|
@ -123,15 +126,16 @@ var update = func {
|
||||||
};
|
};
|
||||||
|
|
||||||
var autostart = func (msg=1) {
|
var autostart = func (msg=1) {
|
||||||
if (getprop("/engines/current-engine/running")) {
|
if (getprop("/engines/active-engine/running")) {
|
||||||
if (msg)
|
if (msg)
|
||||||
gui.popupTip("Engine already running.", 5);
|
gui.popupTip("Engine already running", 5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
setprop("/controls/switches/magnetos", 3);
|
setprop("/controls/switches/magnetos", 3);
|
||||||
setprop("/controls/engines/current-engine/throttle", 0.2);
|
setprop("/controls/engines/current-engine/throttle", 0.2);
|
||||||
setprop("/controls/engines/current-engine/mixture", 1.0);
|
setprop("/controls/engines/current-engine/mixture", 1.0);
|
||||||
|
setprop("/controls/flight/elevator-trim", 0.0);
|
||||||
setprop("/controls/switches/master-bat", 1);
|
setprop("/controls/switches/master-bat", 1);
|
||||||
setprop("/controls/switches/master-alt", 1);
|
setprop("/controls/switches/master-alt", 1);
|
||||||
setprop("/controls/switches/master-avionics", 1);
|
setprop("/controls/switches/master-avionics", 1);
|
||||||
|
@ -147,6 +151,7 @@ var autostart = func (msg=1) {
|
||||||
setprop("/instrumentation/altimeter/setting-inhg", getprop("/environment/pressure-sea-level-inhg"));
|
setprop("/instrumentation/altimeter/setting-inhg", getprop("/environment/pressure-sea-level-inhg"));
|
||||||
|
|
||||||
#c172p.autoPrime();
|
#c172p.autoPrime();
|
||||||
|
setprop("/controls/engines/engine[0]/primer-lever", 0);
|
||||||
setprop("/controls/engines/engine/primer", 3);
|
setprop("/controls/engines/engine/primer", 3);
|
||||||
if (msg)
|
if (msg)
|
||||||
gui.popupTip("Hold down \"s\" to start the engine", 5);
|
gui.popupTip("Hold down \"s\" to start the engine", 5);
|
||||||
|
@ -215,13 +220,15 @@ controls.mixtureAxis = func {
|
||||||
# key 's' calls to this function when it is pressed DOWN even if I overwrite the binding in the -set.xml file!
|
# key 's' calls to this function when it is pressed DOWN even if I overwrite the binding in the -set.xml file!
|
||||||
# fun fact: the key UP event can be overwriten!
|
# fun fact: the key UP event can be overwriten!
|
||||||
controls.startEngine = func(v = 1) {
|
controls.startEngine = func(v = 1) {
|
||||||
if (getprop("/engines/current-engine/running"))
|
if (getprop("/engines/active-engine/running"))
|
||||||
{
|
{
|
||||||
setprop("/controls/switches/starter", 0);
|
setprop("/controls/switches/starter", 0);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
|
setprop("/controls/switches/magnetos", 3);
|
||||||
setprop("/controls/switches/starter", v);
|
setprop("/controls/switches/starter", v);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
setlistener("/sim/signals/fdm-initialized", func {
|
setlistener("/sim/signals/fdm-initialized", func {
|
||||||
|
|
|
@ -1,7 +1,2 @@
|
||||||
# strobes ===========================================================
|
aircraft.light.new("/sim/model/c172p/lighting/strobes", [0.015, 1.985]);
|
||||||
var strobe_switch = props.globals.getNode("/systems/electrical/outputs/strobe", 1);
|
aircraft.light.new("/sim/model/c172p/lighting/beacon", [0.10, 0.90]);
|
||||||
aircraft.light.new("sim/model/c172p/lighting/strobes", [0.015, 1.985], strobe_switch);
|
|
||||||
|
|
||||||
# beacons ===========================================================
|
|
||||||
var beacon_switch = props.globals.getNode("/systems/electrical/outputs/beacon", 1);
|
|
||||||
aircraft.light.new("sim/model/c172p/lighting/beacon-top", [0.10, 0.90], beacon_switch);
|
|
||||||
|
|
|
@ -1,234 +1,234 @@
|
||||||
var start = 1;
|
var start = 1;
|
||||||
var moisture = 0;
|
var moisture = 0;
|
||||||
var foglevel = 0;
|
var foglevel = 0;
|
||||||
var frostlevel = 0;
|
var frostlevel = 0;
|
||||||
|
|
||||||
#debug
|
#debug
|
||||||
#var tempmatch = 0;
|
#var tempmatch = 0;
|
||||||
#end debug
|
#end debug
|
||||||
|
|
||||||
var dewpointC = getprop("/environment/dewpoint-degc");
|
var dewpointC = getprop("/environment/dewpoint-degc");
|
||||||
var airtempC = getprop("/environment/temperature-degc");
|
var airtempC = getprop("/environment/temperature-degc");
|
||||||
|
|
||||||
var cabinheatset = 0; #double flow 0 - 1
|
var cabinheatset = 0; #double flow 0 - 1
|
||||||
var cabinairset = 0; #double flow 0 - 1
|
var cabinairset = 0; #double flow 0 - 1
|
||||||
var cabindewpointset = -7; #19.4 degF
|
var cabindewpointset = -7; #19.4 degF
|
||||||
|
|
||||||
#debug
|
#debug
|
||||||
#props.Node.new({ "/environment/aircraft-effects/debug-tempmatch-airtempC":0 });
|
#props.Node.new({ "/environment/aircraft-effects/debug-tempmatch-airtempC":0 });
|
||||||
#props.globals.initNode("/environment/aircraft-effects/debug-tempmatch-airtempC", tempmatch, "INT");
|
#props.globals.initNode("/environment/aircraft-effects/debug-tempmatch-airtempC", tempmatch, "INT");
|
||||||
#end debug
|
#end debug
|
||||||
|
|
||||||
props.Node.new({ "/environment/aircraft-effects/cabin-heat-set":0 });
|
props.Node.new({ "/environment/aircraft-effects/cabin-heat-set":0 });
|
||||||
props.globals.initNode("/environment/aircraft-effects/cabin-heat-set", cabinheatset, "DOUBLE");
|
props.globals.initNode("/environment/aircraft-effects/cabin-heat-set", cabinheatset, "DOUBLE");
|
||||||
props.Node.new({ "/environment/aircraft-effects/cabin-air-set":0 });
|
props.Node.new({ "/environment/aircraft-effects/cabin-air-set":0 });
|
||||||
props.globals.initNode("/environment/aircraft-effects/cabin-air-set", cabinairset, "DOUBLE");
|
props.globals.initNode("/environment/aircraft-effects/cabin-air-set", cabinairset, "DOUBLE");
|
||||||
props.Node.new({ "/environment/aircraft-effects/cabin-dew-setC":0 });
|
props.Node.new({ "/environment/aircraft-effects/cabin-dew-setC":0 });
|
||||||
props.globals.initNode("/environment/aircraft-effects/cabin-dew-setC", cabindewpointset, "DOUBLE");
|
props.globals.initNode("/environment/aircraft-effects/cabin-dew-setC", cabindewpointset, "DOUBLE");
|
||||||
|
|
||||||
#added for flight recorder
|
#added for flight recorder
|
||||||
props.Node.new({ "/environment/aircraft-effects/cabinairtempC":0 });
|
props.Node.new({ "/environment/aircraft-effects/cabinairtempC":0 });
|
||||||
props.globals.initNode("/environment/aircraft-effects/cabinairtempC", airtempC, "DOUBLE");
|
props.globals.initNode("/environment/aircraft-effects/cabinairtempC", airtempC, "DOUBLE");
|
||||||
props.Node.new({ "/environment/aircraft-effects/surfacetempC":0 });
|
props.Node.new({ "/environment/aircraft-effects/surfacetempC":0 });
|
||||||
props.globals.initNode("/environment/aircraft-effects/surfacetempC", airtempC, "DOUBLE");
|
props.globals.initNode("/environment/aircraft-effects/surfacetempC", airtempC, "DOUBLE");
|
||||||
props.Node.new({ "/environment/aircraft-effects/cabinairdewpointC":0 });
|
props.Node.new({ "/environment/aircraft-effects/cabinairdewpointC":0 });
|
||||||
props.globals.initNode("/environment/aircraft-effects/cabinairdewpointC", dewpointC, "DOUBLE");
|
props.globals.initNode("/environment/aircraft-effects/cabinairdewpointC", dewpointC, "DOUBLE");
|
||||||
|
|
||||||
var weather_effects_loop = func {
|
var weather_effects_loop = func {
|
||||||
var cabinairtempC = getprop("/environment/aircraft-effects/cabinairtempC");
|
var cabinairtempC = getprop("/environment/aircraft-effects/cabinairtempC");
|
||||||
var surfacetempC = getprop("/environment/aircraft-effects/surfacetempC");
|
var surfacetempC = getprop("/environment/aircraft-effects/surfacetempC");
|
||||||
var cabinairdewpointC = getprop("/environment/aircraft-effects/cabinairdewpointC");
|
var cabinairdewpointC = getprop("/environment/aircraft-effects/cabinairdewpointC");
|
||||||
|
|
||||||
############################################## rain
|
############################################## rain
|
||||||
|
|
||||||
var airspeed = getprop("/velocities/airspeed-kt");
|
var airspeed = getprop("/velocities/airspeed-kt");
|
||||||
|
|
||||||
# c172p
|
# c172p
|
||||||
var airspeed_max = 140;
|
var airspeed_max = 140;
|
||||||
|
|
||||||
if (airspeed > airspeed_max) {airspeed = airspeed_max;}
|
if (airspeed > airspeed_max) {airspeed = airspeed_max;}
|
||||||
|
|
||||||
airspeed = math.sqrt(airspeed/airspeed_max);
|
airspeed = math.sqrt(airspeed/airspeed_max);
|
||||||
|
|
||||||
# c172p
|
# c172p
|
||||||
var splash_x = -0.1 - 2.0 * airspeed;
|
var splash_x = -0.1 - 2.0 * airspeed;
|
||||||
var splash_y = 0.0;
|
var splash_y = 0.0;
|
||||||
var splash_z = 1.0 - 1.35 * airspeed;
|
var splash_z = 1.0 - 1.35 * airspeed;
|
||||||
|
|
||||||
setprop("/environment/aircraft-effects/splash-vector-x", splash_x);
|
setprop("/environment/aircraft-effects/splash-vector-x", splash_x);
|
||||||
setprop("/environment/aircraft-effects/splash-vector-y", splash_y);
|
setprop("/environment/aircraft-effects/splash-vector-y", splash_y);
|
||||||
setprop("/environment/aircraft-effects/splash-vector-z", splash_z);
|
setprop("/environment/aircraft-effects/splash-vector-z", splash_z);
|
||||||
|
|
||||||
############################################## frost/fog/heat/air
|
############################################## frost/fog/heat/air
|
||||||
|
|
||||||
dewpointC = getprop("/environment/dewpoint-degc");
|
dewpointC = getprop("/environment/dewpoint-degc");
|
||||||
airtempC = getprop("/environment/temperature-degc");
|
airtempC = getprop("/environment/temperature-degc");
|
||||||
cabinairdewpointC = dewpointC;
|
cabinairdewpointC = dewpointC;
|
||||||
cabinairset = getprop("/environment/aircraft-effects/cabin-air-set");
|
cabinairset = getprop("/environment/aircraft-effects/cabin-air-set");
|
||||||
cabinheatset = getprop("/environment/aircraft-effects/cabin-heat-set");
|
cabinheatset = getprop("/environment/aircraft-effects/cabin-heat-set");
|
||||||
|
|
||||||
#debug
|
#debug
|
||||||
#tempmatch = getprop("/environment/aircraft-effects/debug-tempmatch-airtempC");
|
#tempmatch = getprop("/environment/aircraft-effects/debug-tempmatch-airtempC");
|
||||||
#if (tempmatch) surfacetempC = cabinairtempC = airtempC;
|
#if (tempmatch) surfacetempC = cabinairtempC = airtempC;
|
||||||
#end debug
|
#end debug
|
||||||
|
|
||||||
#cabinheat only pushes heat into cabin if a cabinair is open.
|
#cabinheat only pushes heat into cabin if a cabinair is open.
|
||||||
#cabinair is the flow of air into cabin(it will contian heat if cabinheat is open),
|
#cabinair is the flow of air into cabin(it will contian heat if cabinheat is open),
|
||||||
#otherwise it is just outside airtemp
|
#otherwise it is just outside airtemp
|
||||||
if (cabinheatset > 0)
|
if (cabinheatset > 0)
|
||||||
{
|
{
|
||||||
cabinairtempC += .04*(cabinheatset*cabinairset);
|
cabinairtempC += .04*(cabinheatset*cabinairset);
|
||||||
if (cabinairtempC > 32)
|
if (cabinairtempC > 32)
|
||||||
{
|
{
|
||||||
if (!getprop("/fdm/jsbsim/weather"))
|
if (!getprop("/fdm/jsbsim/weather"))
|
||||||
gui.popupTip("Cabin temperature exceeding 90F/32C!");
|
gui.popupTip("Cabin temperature exceeding 90F/32C!");
|
||||||
}
|
}
|
||||||
#surfacetemp is slowely changed by cabinairtemp
|
#surfacetemp is slowely changed by cabinairtemp
|
||||||
if (surfacetempC < cabinairtempC)
|
if (surfacetempC < cabinairtempC)
|
||||||
surfacetempC += .03*(cabinheatset*cabinairset);
|
surfacetempC += .03*(cabinheatset*cabinairset);
|
||||||
if (surfacetempC > cabinairtempC)
|
if (surfacetempC > cabinairtempC)
|
||||||
surfacetempC -= .03*(cabinheatset*cabinairset);
|
surfacetempC -= .03*(cabinheatset*cabinairset);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
if (cabinairset > 0)
|
if (cabinairset > 0)
|
||||||
{
|
{
|
||||||
#if no cabinheat then we incrementally adjust cabintemp with outside airtemp
|
#if no cabinheat then we incrementally adjust cabintemp with outside airtemp
|
||||||
if (cabinairtempC < airtempC)
|
if (cabinairtempC < airtempC)
|
||||||
cabinairtempC += .03*cabinairset;
|
cabinairtempC += .03*cabinairset;
|
||||||
if (cabinairtempC > airtempC)
|
if (cabinairtempC > airtempC)
|
||||||
cabinairtempC -= .03*cabinairset;
|
cabinairtempC -= .03*cabinairset;
|
||||||
if (surfacetempC < cabinairtempC)
|
if (surfacetempC < cabinairtempC)
|
||||||
surfacetempC += .02*cabinairset;
|
surfacetempC += .02*cabinairset;
|
||||||
if (surfacetempC > cabinairtempC)
|
if (surfacetempC > cabinairtempC)
|
||||||
surfacetempC -= .02*cabinairset;
|
surfacetempC -= .02*cabinairset;
|
||||||
}
|
}
|
||||||
|
|
||||||
#regardless of whether or not vents are open we
|
#regardless of whether or not vents are open we
|
||||||
#incremetally adjust cabintemp with outside airtemp
|
#incremetally adjust cabintemp with outside airtemp
|
||||||
if (cabinairtempC < airtempC)
|
if (cabinairtempC < airtempC)
|
||||||
cabinairtempC += .01;
|
cabinairtempC += .01;
|
||||||
if (cabinairtempC > airtempC)
|
if (cabinairtempC > airtempC)
|
||||||
cabinairtempC -= .01;
|
cabinairtempC -= .01;
|
||||||
if (cabinairdewpointC < dewpointC)
|
if (cabinairdewpointC < dewpointC)
|
||||||
cabinairdewpointC += .01;
|
cabinairdewpointC += .01;
|
||||||
if (cabinairdewpointC > dewpointC)
|
if (cabinairdewpointC > dewpointC)
|
||||||
cabinairdewpointC -= .01;
|
cabinairdewpointC -= .01;
|
||||||
if (surfacetempC < cabinairtempC)
|
if (surfacetempC < cabinairtempC)
|
||||||
surfacetempC += .01;
|
surfacetempC += .01;
|
||||||
if (surfacetempC > cabinairtempC)
|
if (surfacetempC > cabinairtempC)
|
||||||
surfacetempC -= .01;
|
surfacetempC -= .01;
|
||||||
|
|
||||||
#if cabinairtemp is less than dewpointtemp at startup we start out
|
#if cabinairtemp is less than dewpointtemp at startup we start out
|
||||||
#with fog. If it is also freezing we switch to frost.
|
#with fog. If it is also freezing we switch to frost.
|
||||||
#Otherwise we start calculating moisture level in the air
|
#Otherwise we start calculating moisture level in the air
|
||||||
if (cabinairtempC <= cabinairdewpointC)
|
if (cabinairtempC <= cabinairdewpointC)
|
||||||
{
|
{
|
||||||
if (start == 1) {
|
if (start == 1) {
|
||||||
foglevel = 1;
|
foglevel = 1;
|
||||||
if (cabinairtempC <= 0)
|
if (cabinairtempC <= 0)
|
||||||
{
|
{
|
||||||
frostlevel = 3;
|
frostlevel = 3;
|
||||||
foglevel = 0;
|
foglevel = 0;
|
||||||
}
|
}
|
||||||
start = 0;
|
start = 0;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
if (surfacetempC <= cabinairdewpointC)
|
if (surfacetempC <= cabinairdewpointC)
|
||||||
if (moisture < 1) moisture += .01;
|
if (moisture < 1) moisture += .01;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (surfacetempC > cabinairdewpointC)
|
if (surfacetempC > cabinairdewpointC)
|
||||||
if (moisture > 0) moisture -= .01;
|
if (moisture > 0) moisture -= .01;
|
||||||
start = 0;
|
start = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#we can't get frost unless temp is freezing
|
#we can't get frost unless temp is freezing
|
||||||
#if it is not freezing then we get fog instead
|
#if it is not freezing then we get fog instead
|
||||||
if (cabinairtempC <= 0)
|
if (cabinairtempC <= 0)
|
||||||
{
|
{
|
||||||
if (!getprop("/fdm/jsbsim/weather"))
|
if (!getprop("/fdm/jsbsim/weather"))
|
||||||
gui.popupTip("Cabin temperature falling below 32F/0C!");
|
gui.popupTip("Cabin temperature falling below 32F/0C!");
|
||||||
frostlevel = moisture * 3;
|
frostlevel = moisture * 3;
|
||||||
if (foglevel > 0) foglevel -= moisture;
|
if (foglevel > 0) foglevel -= moisture;
|
||||||
if (foglevel < 0) foglevel = 0;
|
if (foglevel < 0) foglevel = 0;
|
||||||
if (frostlevel > 3) frostlevel = 3;
|
if (frostlevel > 3) frostlevel = 3;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
foglevel = moisture;
|
foglevel = moisture;
|
||||||
if (frostlevel > 0) frostlevel -= moisture;
|
if (frostlevel > 0) frostlevel -= moisture;
|
||||||
if (frostlevel < 0) frostlevel = 0;
|
if (frostlevel < 0) frostlevel = 0;
|
||||||
if (foglevel > 1) foglevel = 1;
|
if (foglevel > 1) foglevel = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!getprop("/fdm/jsbsim/weather"))
|
if (!getprop("/fdm/jsbsim/weather"))
|
||||||
{
|
{
|
||||||
setprop("/environment/aircraft-effects/frost-level", frostlevel);
|
setprop("/environment/aircraft-effects/frost-level", frostlevel);
|
||||||
setprop("/environment/aircraft-effects/fog-level", foglevel);
|
setprop("/environment/aircraft-effects/fog-level", foglevel);
|
||||||
#added for flight recorder
|
#added for flight recorder
|
||||||
if(!getprop("/sim/freeze/replay-state"))
|
if(!getprop("/sim/freeze/replay-state"))
|
||||||
{
|
{
|
||||||
setprop("/environment/aircraft-effects/cabinairtempC", cabinairtempC);
|
setprop("/environment/aircraft-effects/cabinairtempC", cabinairtempC);
|
||||||
setprop("/environment/aircraft-effects/surfacetempC", surfacetempC);
|
setprop("/environment/aircraft-effects/surfacetempC", surfacetempC);
|
||||||
setprop("/environment/aircraft-effects/cabinairdewpointC", cabinairdewpointC);
|
setprop("/environment/aircraft-effects/cabinairdewpointC", cabinairdewpointC);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
setprop("/environment/aircraft-effects/frost-level", 0);
|
setprop("/environment/aircraft-effects/frost-level", 0);
|
||||||
setprop("/environment/aircraft-effects/fog-level", 0);
|
setprop("/environment/aircraft-effects/fog-level", 0);
|
||||||
#added for flight recorder
|
#added for flight recorder
|
||||||
if(!getprop("/sim/freeze/replay-state"))
|
if(!getprop("/sim/freeze/replay-state"))
|
||||||
{
|
{
|
||||||
setprop("/environment/aircraft-effects/cabinairtempC", getprop("/environment/temperature-degc"));
|
setprop("/environment/aircraft-effects/cabinairtempC", getprop("/environment/temperature-degc"));
|
||||||
setprop("/environment/aircraft-effects/surfacetempC", getprop("/environment/temperature-degc"));
|
setprop("/environment/aircraft-effects/surfacetempC", getprop("/environment/temperature-degc"));
|
||||||
setprop("/environment/aircraft-effects/cabinairdewpointC", getprop("/environment/dewpoint-degc"));
|
setprop("/environment/aircraft-effects/cabinairdewpointC", getprop("/environment/dewpoint-degc"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#debug
|
#debug
|
||||||
#if (cabinairtempC > 0)
|
#if (cabinairtempC > 0)
|
||||||
#{
|
#{
|
||||||
# print("NO ICE, TOO WARM cabinairtempC > 0");
|
# print("NO ICE, TOO WARM cabinairtempC > 0");
|
||||||
#} else print("ICE POSSIBLE, CABIN FREEZING cabinairtempC <= 0");
|
#} else print("ICE POSSIBLE, CABIN FREEZING cabinairtempC <= 0");
|
||||||
#if (airtempC > dewpointC)
|
#if (airtempC > dewpointC)
|
||||||
#{
|
#{
|
||||||
# print("NO OUTSIDE DEW airtempC > dewpointC");
|
# print("NO OUTSIDE DEW airtempC > dewpointC");
|
||||||
#} else
|
#} else
|
||||||
#if (airtempC <= dewpointC)
|
#if (airtempC <= dewpointC)
|
||||||
#{
|
#{
|
||||||
# print("OUTSIDE DEW ABLE airtempC <= dewpointC");
|
# print("OUTSIDE DEW ABLE airtempC <= dewpointC");
|
||||||
# if (cabinairtempC < 0)
|
# if (cabinairtempC < 0)
|
||||||
# {
|
# {
|
||||||
# print("ICE ABLE, OUTSIDE DEW cabinairtempC < 0");
|
# print("ICE ABLE, OUTSIDE DEW cabinairtempC < 0");
|
||||||
# }
|
# }
|
||||||
#}
|
#}
|
||||||
#if (cabinairtempC > cabinairdewpointC)
|
#if (cabinairtempC > cabinairdewpointC)
|
||||||
#{
|
#{
|
||||||
# print("NO INSIDE DEW cabinairtempC > cabinairdewpointC");
|
# print("NO INSIDE DEW cabinairtempC > cabinairdewpointC");
|
||||||
#} else
|
#} else
|
||||||
#if (cabinairtempC <= cabinairdewpointC)
|
#if (cabinairtempC <= cabinairdewpointC)
|
||||||
#{
|
#{
|
||||||
# print("INSIDE DEW FORMING cabinairtempC <= cabinairdewpointC");
|
# print("INSIDE DEW FORMING cabinairtempC <= cabinairdewpointC");
|
||||||
# if (cabinairtempC <= 0)
|
# if (cabinairtempC <= 0)
|
||||||
# {
|
# {
|
||||||
# if (surfacetempC <= 0)
|
# if (surfacetempC <= 0)
|
||||||
# print("ICE BUILDING, CABIN DEW AND SUFACE FREEZING");
|
# print("ICE BUILDING, CABIN DEW AND SUFACE FREEZING");
|
||||||
# else
|
# else
|
||||||
# print("ICE ABLE CABIN DEW, SURFACE NOT FREEZING surfacetempC > 0");
|
# print("ICE ABLE CABIN DEW, SURFACE NOT FREEZING surfacetempC > 0");
|
||||||
# }
|
# }
|
||||||
#}
|
#}
|
||||||
#print("moisture="~moisture);
|
#print("moisture="~moisture);
|
||||||
#print("airtempC="~airtempC);
|
#print("airtempC="~airtempC);
|
||||||
#print("dewpointC="~dewpointC);
|
#print("dewpointC="~dewpointC);
|
||||||
#print("cabinheatset="~cabinheatset);
|
#print("cabinheatset="~cabinheatset);
|
||||||
#print("cabinairset="~cabinairset);
|
#print("cabinairset="~cabinairset);
|
||||||
#print("surfacetempC="~surfacetempC);
|
#print("surfacetempC="~surfacetempC);
|
||||||
#print("cabinairtempC="~cabinairtempC);
|
#print("cabinairtempC="~cabinairtempC);
|
||||||
#print("cabinairdewpointC="~cabinairdewpointC);
|
#print("cabinairdewpointC="~cabinairdewpointC);
|
||||||
#print("foglevel="~foglevel);
|
#print("foglevel="~foglevel);
|
||||||
#print("frostlevel="~frostlevel);
|
#print("frostlevel="~frostlevel);
|
||||||
#end debug
|
#end debug
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
305
Aircraft/c172p/Panels/Instruments/egt-ff-c172s.xml
Normal file
305
Aircraft/c172p/Panels/Instruments/egt-ff-c172s.xml
Normal file
|
@ -0,0 +1,305 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
egt-ff.xml
|
||||||
|
|
||||||
|
EGT and Fuel Flow Gauge from C172-S
|
||||||
|
|
||||||
|
Martin Dressler dr@musicabona.cz
|
||||||
|
Jan 26 2003
|
||||||
|
-->
|
||||||
|
|
||||||
|
<PropertyList>
|
||||||
|
|
||||||
|
<name>C172-S EGT and Fuel Flow Gauge</name>
|
||||||
|
<w-base>512</w-base>
|
||||||
|
<h-base>512</h-base>
|
||||||
|
|
||||||
|
<params>
|
||||||
|
<engine-egt-select>/engines/active-engine/egt-norm</engine-egt-select>
|
||||||
|
<engine-fuel-flow-select>/engines/active-engine/fuel-flow-gph</engine-fuel-flow-select>
|
||||||
|
</params>
|
||||||
|
|
||||||
|
<layers>
|
||||||
|
<layer>
|
||||||
|
<name>Backplate</name>
|
||||||
|
<w>292</w>
|
||||||
|
<h>456</h>
|
||||||
|
<texture>
|
||||||
|
<path>Aircraft/Instruments/Textures/egt1.rgb</path>
|
||||||
|
<x1>0.0</x1>
|
||||||
|
<x2>0.570312</x2>
|
||||||
|
<y1>0.109375</y1>
|
||||||
|
<y2>1.0</y2>
|
||||||
|
</texture>
|
||||||
|
</layer>
|
||||||
|
|
||||||
|
<layer>
|
||||||
|
<name>EGT Needle</name>
|
||||||
|
<w>148</w>
|
||||||
|
<h>32</h>
|
||||||
|
<texture>
|
||||||
|
<path>Aircraft/Instruments/Textures/misc2.rgb</path>
|
||||||
|
<x1>0.0</x1>
|
||||||
|
<x2>0.289062</x2>
|
||||||
|
<y1>0.554688</y1>
|
||||||
|
<y2>0.617188</y2>
|
||||||
|
</texture>
|
||||||
|
<transformations>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>-142</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<condition>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/electrical/volts</property>
|
||||||
|
<value>12</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
</condition>
|
||||||
|
<type>rotation</type>
|
||||||
|
<property alias="../../../../../params/engine-egt-select"/>
|
||||||
|
<min>0.0</min>
|
||||||
|
<max>1.0</max>
|
||||||
|
<scale>100</scale>
|
||||||
|
<offset>-50</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/electrical/volts</property>
|
||||||
|
<value>12</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
<type>rotation</type>
|
||||||
|
<offset>60</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>78</offset>
|
||||||
|
</transformation>
|
||||||
|
</transformations>
|
||||||
|
</layer>
|
||||||
|
|
||||||
|
<layer>
|
||||||
|
<name>Fuel Flow Needle</name>
|
||||||
|
<w>148</w>
|
||||||
|
<h>32</h>
|
||||||
|
<texture>
|
||||||
|
<path>Aircraft/Instruments/Textures/misc2.rgb</path>
|
||||||
|
<x1>0.0</x1>
|
||||||
|
<x2>0.289062</x2>
|
||||||
|
<y1>0.554688</y1>
|
||||||
|
<y2>0.617188</y2>
|
||||||
|
</texture>
|
||||||
|
<transformations>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>142</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<condition>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/electrical/volts</property>
|
||||||
|
<value>12</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
</condition>
|
||||||
|
<type>rotation</type>
|
||||||
|
<property alias="../../../../../params/engine-fuel-flow-select"/>
|
||||||
|
<min>0.0</min>
|
||||||
|
<max>20.0</max>
|
||||||
|
<scale>1.0</scale>
|
||||||
|
<interpolation>
|
||||||
|
<entry><ind> 0</ind><dep>126.8</dep></entry>
|
||||||
|
<entry><ind> 5</ind><dep>134.8</dep></entry>
|
||||||
|
<entry><ind> 6</ind><dep>137.4</dep></entry>
|
||||||
|
<entry><ind> 10</ind><dep>156.4</dep></entry>
|
||||||
|
<entry><ind> 15</ind><dep>191.8</dep></entry>
|
||||||
|
<entry><ind> 19</ind><dep>233.0</dep></entry>
|
||||||
|
<entry><ind> 20</ind><dep>242.7</dep></entry>
|
||||||
|
</interpolation>
|
||||||
|
<offset>0</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/electrical/volts</property>
|
||||||
|
<value>12</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
<type>rotation</type>
|
||||||
|
<offset>120</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>78</offset>
|
||||||
|
</transformation>
|
||||||
|
</transformations>
|
||||||
|
</layer>
|
||||||
|
|
||||||
|
<layer>
|
||||||
|
<name>EGT REF Needle</name>
|
||||||
|
<condition>
|
||||||
|
<equals>
|
||||||
|
<property>/sim/instrument-options/omit-knobs</property>
|
||||||
|
<value/>
|
||||||
|
</equals>
|
||||||
|
</condition>
|
||||||
|
<w>148</w>
|
||||||
|
<h>32</h>
|
||||||
|
<texture>
|
||||||
|
<path>Aircraft/Instruments/Textures/misc2.rgb</path>
|
||||||
|
<x1>0.289062</x1>
|
||||||
|
<x2>0.578125</x2>
|
||||||
|
<y1>0.554688</y1>
|
||||||
|
<y2>0.617188</y2>
|
||||||
|
</texture>
|
||||||
|
<transformations>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>-142</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<type>rotation</type>
|
||||||
|
<property>/engines/engine[0]/egt-bug-norm</property>
|
||||||
|
<scale>100</scale>
|
||||||
|
<offset>-50</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>78</offset>
|
||||||
|
</transformation>
|
||||||
|
</transformations>
|
||||||
|
</layer>
|
||||||
|
|
||||||
|
<layer>
|
||||||
|
<name>Foreground</name>
|
||||||
|
<w>512</w>
|
||||||
|
<h>512</h>
|
||||||
|
<texture>
|
||||||
|
<path>Aircraft/Instruments/Textures/smlf.rgb</path>
|
||||||
|
<x1>0.0</x1>
|
||||||
|
<x2>1.0</x2>
|
||||||
|
<y1>0.0</y1>
|
||||||
|
<y2>1.0</y2>
|
||||||
|
</texture>
|
||||||
|
</layer>
|
||||||
|
|
||||||
|
<layer>
|
||||||
|
<name>EGT REF Knob</name>
|
||||||
|
<w>88</w>
|
||||||
|
<h>88</h>
|
||||||
|
<texture>
|
||||||
|
<path>Aircraft/Instruments/Textures/misc2.rgb</path>
|
||||||
|
<x1>0.171875</x1>
|
||||||
|
<x2>0.34375</x2>
|
||||||
|
<y1>0.617188</y1>
|
||||||
|
<y2>0.789062</y2>
|
||||||
|
</texture>
|
||||||
|
<transformations>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>-142</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<type>rotation</type>
|
||||||
|
<property>/engines/engine[0]/egt-bug-norm</property>
|
||||||
|
</transformation>
|
||||||
|
</transformations>
|
||||||
|
</layer>
|
||||||
|
|
||||||
|
<layer>
|
||||||
|
<name>FUEL FLOW label</name>
|
||||||
|
<w>52</w>
|
||||||
|
<h>150</h>
|
||||||
|
<texture>
|
||||||
|
<path>Aircraft/Instruments/Textures/misc2.rgb</path>
|
||||||
|
<x1>0.703125</x1>
|
||||||
|
<x2>0.804688</x2>
|
||||||
|
<y1>0.707031</y1>
|
||||||
|
<y2>1.0</y2>
|
||||||
|
</texture>
|
||||||
|
<transformations>
|
||||||
|
<transformation>
|
||||||
|
<type>x-shift</type>
|
||||||
|
<offset>165</offset>
|
||||||
|
</transformation>
|
||||||
|
<transformation>
|
||||||
|
<type>y-shift</type>
|
||||||
|
<offset>-4</offset>
|
||||||
|
</transformation>
|
||||||
|
</transformations>
|
||||||
|
</layer>
|
||||||
|
</layers>
|
||||||
|
|
||||||
|
<actions>
|
||||||
|
<action>
|
||||||
|
<name>fine lower</name>
|
||||||
|
<button>0</button>
|
||||||
|
<x>-186</x>
|
||||||
|
<y>-44</y>
|
||||||
|
<w>44</w>
|
||||||
|
<h>88</h>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property>/engines/engine[0]/egt-bug-norm</property>
|
||||||
|
<step>-0.01</step>
|
||||||
|
<min>0.0</min>
|
||||||
|
<max>1.0</max>
|
||||||
|
<wrap>false</wrap>
|
||||||
|
</binding>
|
||||||
|
</action>
|
||||||
|
|
||||||
|
<action>
|
||||||
|
<name>coarse lower</name>
|
||||||
|
<button>1</button>
|
||||||
|
<x>-186</x>
|
||||||
|
<y>-44</y>
|
||||||
|
<w>44</w>
|
||||||
|
<h>88</h>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property>/engines/engine[0]/egt-bug-norm</property>
|
||||||
|
<step>-0.1</step>
|
||||||
|
<min>0.0</min>
|
||||||
|
<max>1.0</max>
|
||||||
|
<wrap>false</wrap>
|
||||||
|
</binding>
|
||||||
|
</action>
|
||||||
|
|
||||||
|
<action>
|
||||||
|
<name>fine raiser</name>
|
||||||
|
<button>0</button>
|
||||||
|
<x>-142</x>
|
||||||
|
<y>-44</y>
|
||||||
|
<w>44</w>
|
||||||
|
<h>88</h>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property>/engines/engine[0]/egt-bug-norm</property>
|
||||||
|
<step>0.01</step>
|
||||||
|
<min>0.0</min>
|
||||||
|
<max>1.0</max>
|
||||||
|
<wrap>false</wrap>
|
||||||
|
</binding>
|
||||||
|
</action>
|
||||||
|
|
||||||
|
<action>
|
||||||
|
<name>coarse lower</name>
|
||||||
|
<button>1</button>
|
||||||
|
<x>-142</x>
|
||||||
|
<y>-44</y>
|
||||||
|
<w>44</w>
|
||||||
|
<h>88</h>
|
||||||
|
<binding>
|
||||||
|
<command>property-adjust</command>
|
||||||
|
<property>/engines/engine[0]/egt-bug-norm</property>
|
||||||
|
<step>0.1</step>
|
||||||
|
<min>0.0</min>
|
||||||
|
<max>1.0</max>
|
||||||
|
<wrap>false</wrap>
|
||||||
|
</binding>
|
||||||
|
</action>
|
||||||
|
</actions>
|
||||||
|
|
||||||
|
</PropertyList>
|
|
@ -68,7 +68,7 @@ override those by providing <w>..</w> and <h>..</h> properties with the
|
||||||
<w>165</w>
|
<w>165</w>
|
||||||
<h>165</h>
|
<h>165</h>
|
||||||
</instrument>
|
</instrument>
|
||||||
<instrument include="Aircraft/Instruments/egt-ff-c172s.xml">
|
<instrument include="Instruments/egt-ff-c172s.xml">
|
||||||
<name>Exhaust Gas Temperature Gauge</name>
|
<name>Exhaust Gas Temperature Gauge</name>
|
||||||
<x>89</x>
|
<x>89</x>
|
||||||
<y>428</y>
|
<y>428</y>
|
||||||
|
@ -76,6 +76,10 @@ override those by providing <w>..</w> and <h>..</h> properties with the
|
||||||
<h>165</h>
|
<h>165</h>
|
||||||
</instrument>
|
</instrument>
|
||||||
<instrument include="Aircraft/Instruments/oil-c172s.xml">
|
<instrument include="Aircraft/Instruments/oil-c172s.xml">
|
||||||
|
<params>
|
||||||
|
<engine-oil-temp-select>/engines/active-engine/indicated-oil-temperature-degf</engine-oil-temp-select>
|
||||||
|
<engine-oil-press-select>/engines/active-engine/indicated-oil-pressure-psi</engine-oil-press-select>
|
||||||
|
</params>
|
||||||
<name>Oil Gauge</name>
|
<name>Oil Gauge</name>
|
||||||
<x>87</x>
|
<x>87</x>
|
||||||
<y>255</y>
|
<y>255</y>
|
||||||
|
@ -90,6 +94,10 @@ override those by providing <w>..</w> and <h>..</h> properties with the
|
||||||
<h>165</h>
|
<h>165</h>
|
||||||
</instrument>
|
</instrument>
|
||||||
<instrument include="Aircraft/Instruments/adf-c172s.xml">
|
<instrument include="Aircraft/Instruments/adf-c172s.xml">
|
||||||
|
<params>
|
||||||
|
<adf-course-rotation-deg>/instrumentation/adf/rotation-deg</adf-course-rotation-deg>
|
||||||
|
<adf-needle-deg>/instrumentation/adf/indicated-bearing-deg</adf-needle-deg>
|
||||||
|
</params>
|
||||||
<name>ADF Gauge</name>
|
<name>ADF Gauge</name>
|
||||||
<x>305</x>
|
<x>305</x>
|
||||||
<y>117</y>
|
<y>117</y>
|
||||||
|
@ -99,7 +107,10 @@ override those by providing <w>..</w> and <h>..</h> properties with the
|
||||||
<!-- End engine gauges cluster -->
|
<!-- End engine gauges cluster -->
|
||||||
|
|
||||||
<!-- Engine controls cluster -->
|
<!-- Engine controls cluster -->
|
||||||
<instrument include="Aircraft/Instruments/rpm-c172s.xml">
|
<instrument include="Aircraft/Instruments/rpm-c172s-digi-hobbs.xml">
|
||||||
|
<params>
|
||||||
|
<rpm-select>/engines/active-engine/rpm</rpm-select>
|
||||||
|
</params>
|
||||||
<name>RPM Gauge</name>
|
<name>RPM Gauge</name>
|
||||||
<x>838</x>
|
<x>838</x>
|
||||||
<y>120</y>
|
<y>120</y>
|
||||||
|
@ -140,6 +151,9 @@ override those by providing <w>..</w> and <h>..</h> properties with the
|
||||||
<!-- <instrument include="Aircraft/Instruments/hdg-c172s.xml"> -->
|
<!-- <instrument include="Aircraft/Instruments/hdg-c172s.xml"> -->
|
||||||
<!-- <name>Directional Gyro</name> -->
|
<!-- <name>Directional Gyro</name> -->
|
||||||
<instrument include="Aircraft/Instruments/hsi-bk-hi.xml">
|
<instrument include="Aircraft/Instruments/hsi-bk-hi.xml">
|
||||||
|
<params>
|
||||||
|
<heading-deg>/instrumentation/heading-indicator/indicated-heading-deg</heading-deg>
|
||||||
|
</params>
|
||||||
<name>Bendix King HSI</name>
|
<name>Bendix King HSI</name>
|
||||||
<x>572</x>
|
<x>572</x>
|
||||||
<y>377</y>
|
<y>377</y>
|
||||||
|
@ -147,7 +161,7 @@ override those by providing <w>..</w> and <h>..</h> properties with the
|
||||||
<h>236</h>
|
<h>236</h>
|
||||||
</instrument>
|
</instrument>
|
||||||
<instrument include="Aircraft/Instruments/vsi-c172s.xml">
|
<instrument include="Aircraft/Instruments/vsi-c172s.xml">
|
||||||
<name>Vertical Velocity Indicator</name>
|
<name>Vertical Speed Indicator</name>
|
||||||
<x>837</x>
|
<x>837</x>
|
||||||
<y>367</y>
|
<y>367</y>
|
||||||
<w>246</w>
|
<w>246</w>
|
||||||
|
|
|
@ -5,7 +5,7 @@ A high detailed version of the Cessna 172P aircraft for FlightGear.
|
||||||
|
|
||||||
Development thread: http://forum.flightgear.org/viewtopic.php?f=4&t=25157
|
Development thread: http://forum.flightgear.org/viewtopic.php?f=4&t=25157
|
||||||
|
|
||||||
![My image](http://s23.postimg.org/6cuditurf/project.png)
|
![Cessna 172P](http://s30.postimg.org/gl82bkjc1/fgfs_screen_003.png)
|
||||||
|
|
||||||
For the repository containing the texture files for the liveries and instruments (including their .xcf files), visit: https://github.com/gilbertohasnofb/c172p-detailed-liveries
|
For the repository containing the texture files for the liveries and instruments (including their .xcf files), visit: https://github.com/gilbertohasnofb/c172p-detailed-liveries
|
||||||
|
|
||||||
|
@ -13,12 +13,22 @@ For the repository containing the texture files for the liveries and instruments
|
||||||
|
|
||||||
This aircraft was modified and updated in a joint effort by the following people:
|
This aircraft was modified and updated in a joint effort by the following people:
|
||||||
|
|
||||||
Gilberto Agostinho (gsagostinho): texturing, sounds and bug hunting/reporting
|
* onox: programming, bug tracking, general organisation, git knowledge
|
||||||
(thevirtualfer): 3D modelling and texturing
|
|
||||||
(ludomotico)
|
* ludomotico: programming, 3D modeling, bug tracking, general organisation
|
||||||
Wayne Bragg (wlbragg): effects - damage, rain\fog\ice, internal\external shadows, bushkit. Special thanks to Thorsten Renk for all the work involved in giving us the base for these effects.
|
|
||||||
(onox)
|
* Gilberto Agostinho (gsagostinho): texturing, sounds, bug tracking, testing
|
||||||
Daniel Dubreuil (Dany93): [FDM] stall and spin + a few improvements, in-flight damages on wings, fuel float chamber.
|
|
||||||
Tuomas Kuosmanen (tigert): Reference photos of the aircraft and of the OH-CTL livery. Feedback and testing of the Aircraft Systems and operation.
|
* thevirtualfer: 3D modeling and texturing
|
||||||
Anders Gidenstam (AndersG): Hydrodynamics for the pontoon/float and amphibious variants.
|
|
||||||
(wkitty42): bug hunting/reporting
|
* Wayne Bragg (wlbragg): effects - damage, rain/fog/ice, internal/external shadows, bushkit (Special thanks to Thorsten Renk for all the work involved in giving us the base for these effects)
|
||||||
|
|
||||||
|
* Daniel Dubreuil (Dany93): [FDM] stall and spin + a few improvements, in-flight damages on wings, fuel float chamber
|
||||||
|
|
||||||
|
* Tuomas Kuosmanen (tigert): Reference photos of the aircraft and of the OH-CTL livery. Feedback and testing of the Aircraft Systems and operation
|
||||||
|
|
||||||
|
* Anders Gidenstam (AndersG): Hydrodynamics for the pontoon/float and amphibious variants
|
||||||
|
|
||||||
|
* Waldo Kitty (wkitty42): bug hunting/reporting
|
||||||
|
|
||||||
|
* dg-505: 3D modeling, exhaust smoke, checklists
|
||||||
|
|
|
@ -1,308 +1,306 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!-- KAP 140 Autopilot Configuration -->
|
<!-- KAP 140 Autopilot Configuration -->
|
||||||
<!-- Each component is evaluated in the order specified. You can make up -->
|
<!-- 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 -->
|
<!-- property names to pass the result of one component on to a subsequent -->
|
||||||
<!-- component. -->
|
<!-- component. -->
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>heading bug error computer/normalizer</name>
|
<name>heading bug error computer/normalizer</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<input>
|
<input>
|
||||||
<property>autopilot/settings/heading-bug-deg</property>
|
<property>autopilot/settings/heading-bug-deg</property>
|
||||||
<offset>
|
<offset>
|
||||||
<property>instrumentation/heading-indicator/indicated-heading-deg</property>
|
<property>instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
<scale>-1.0</scale>
|
<scale>-1.0</scale>
|
||||||
</offset>
|
</offset>
|
||||||
</input>
|
</input>
|
||||||
<output>autopilot/internal/heading-bug-error-deg</output>
|
<output>autopilot/internal/heading-bug-error-deg</output>
|
||||||
<period>
|
<period>
|
||||||
<min>-180</min>
|
<min>-180</min>
|
||||||
<max>180</max>
|
<max>180</max>
|
||||||
</period>
|
</period>
|
||||||
<gain>1.0</gain>
|
<gain>1.0</gain>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
<!-- =============================================================== -->
|
||||||
|
<!-- Roll Axis Modes -->
|
||||||
|
<!-- =============================================================== -->
|
||||||
|
|
||||||
<!-- =============================================================== -->
|
<!-- Nav hold (NAV) Mode -->
|
||||||
<!-- Roll Axis Modes -->
|
<pid-controller>
|
||||||
<!-- =============================================================== -->
|
<name>Nav hold (NAV) Mode</name>
|
||||||
|
<debug>false</debug>
|
||||||
|
<enable>
|
||||||
|
<prop>/autopilot/KAP140/locks/nav-hold</prop>
|
||||||
|
<value type="bool">true</value>
|
||||||
|
</enable>
|
||||||
|
<input>
|
||||||
|
<prop>/instrumentation/nav/heading-needle-deflection</prop>
|
||||||
|
</input>
|
||||||
|
<reference>
|
||||||
|
<value>0.0</value>
|
||||||
|
</reference>
|
||||||
|
<output>
|
||||||
|
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
||||||
|
</output>
|
||||||
|
<config>
|
||||||
|
<Kp>2.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>15.0</Ti> <!-- integrator time -->
|
||||||
|
<Td>0.0</Td> <!-- derivator time -->
|
||||||
|
<u_min>-45.0</u_min> <!-- minimum output clamp -->
|
||||||
|
<u_max>45.0</u_max> <!-- maximum output clamp -->
|
||||||
|
</config>
|
||||||
|
</pid-controller>
|
||||||
|
|
||||||
<!-- Nav hold (NAV) Mode-->
|
<!-- Approach hold (APR) Mode -->
|
||||||
|
<pid-controller>
|
||||||
|
<name>Approach hold (APR) Mode</name>
|
||||||
|
<debug>false</debug>
|
||||||
|
<enable>
|
||||||
|
<prop>/autopilot/KAP140/locks/apr-hold</prop>
|
||||||
|
<value type="bool">true</value>
|
||||||
|
</enable>
|
||||||
|
<input>
|
||||||
|
<prop>/instrumentation/nav/heading-needle-deflection</prop>
|
||||||
|
</input>
|
||||||
|
<reference>
|
||||||
|
<value>0.0</value>
|
||||||
|
</reference>
|
||||||
|
<output>
|
||||||
|
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
||||||
|
</output>
|
||||||
|
<config>
|
||||||
|
<Kp>2.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>15.0</Ti> <!-- integrator time -->
|
||||||
|
<Td>0.001</Td> <!-- derivator time -->
|
||||||
|
<u_min>-45.0</u_min> <!-- minimum output clamp -->
|
||||||
|
<u_max>45.0</u_max> <!-- maximum output clamp -->
|
||||||
|
</config>
|
||||||
|
</pid-controller>
|
||||||
|
|
||||||
<pid-controller>
|
<!-- Backcourse hold (REV) Mode -->
|
||||||
<name>Nav hold (NAV) Mode</name>
|
<pid-controller>
|
||||||
<debug>false</debug>
|
<name>Backcourse hold (REV) Mode</name>
|
||||||
<enable>
|
<debug>false</debug>
|
||||||
<prop>/autopilot/KAP140/locks/nav-hold</prop>
|
<enable>
|
||||||
<value type="bool">true</value>
|
<prop>/autopilot/KAP140/locks/rev-hold</prop>
|
||||||
</enable>
|
<value type="bool">true</value>
|
||||||
<input>
|
</enable>
|
||||||
<prop>/instrumentation/nav/heading-needle-deflection</prop>
|
<input>
|
||||||
</input>
|
<prop>/instrumentation/nav/heading-needle-deflection</prop>
|
||||||
<reference>
|
<scale>-1.0</scale>
|
||||||
<value>0.0</value>
|
</input>
|
||||||
</reference>
|
<reference>
|
||||||
<output>
|
<value>0.0</value>
|
||||||
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
</reference>
|
||||||
</output>
|
<output>
|
||||||
<config>
|
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
||||||
<Kp>2.0</Kp> <!-- proportional gain -->
|
</output>
|
||||||
<beta>1.0</beta> <!-- input value weighing factor -->
|
<config>
|
||||||
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
<Kp>2.0</Kp> <!-- proportional gain -->
|
||||||
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
<beta>1.0</beta> <!-- input value weighing factor -->
|
||||||
<!-- unfiltered derivative error -->
|
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
||||||
<Ti>15.0</Ti> <!-- integrator time -->
|
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
||||||
<Td>0.0</Td> <!-- derivator time -->
|
<!-- unfiltered derivative error -->
|
||||||
<u_min>-45.0</u_min> <!-- minimum output clamp -->
|
<Ti>15.0</Ti> <!-- integrator time -->
|
||||||
<u_max>45.0</u_max> <!-- maximum output clamp -->
|
<Td>0.0</Td> <!-- derivator time -->
|
||||||
</config>
|
<u_min>-45.0</u_min> <!-- minimum output clamp -->
|
||||||
</pid-controller>
|
<u_max>45.0</u_max> <!-- maximum output clamp -->
|
||||||
|
</config>
|
||||||
|
</pid-controller>
|
||||||
|
|
||||||
<!-- Approach hold (APR) Mode-->
|
<!-- Heading Select (HDG) Mode -->
|
||||||
<pid-controller>
|
<pid-controller>
|
||||||
<name>Approach hold (APR) Mode</name>
|
<name>Heading Select (HDG) Mode</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<enable>
|
<enable>
|
||||||
<prop>/autopilot/KAP140/locks/apr-hold</prop>
|
<prop>/autopilot/KAP140/locks/hdg-hold</prop>
|
||||||
<value type="bool">true</value>
|
<value type="bool">true</value>
|
||||||
</enable>
|
</enable>
|
||||||
<input>
|
<input>
|
||||||
<prop>/instrumentation/nav/heading-needle-deflection</prop>
|
<prop>/autopilot/internal/heading-bug-error-deg</prop>
|
||||||
</input>
|
<!-- <prop>/instrumentation/gps/true-bug-error-deg</prop> -->
|
||||||
<reference>
|
</input>
|
||||||
<value>0.0</value>
|
<reference>
|
||||||
</reference>
|
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
||||||
<output>
|
</reference>
|
||||||
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
<output>
|
||||||
</output>
|
<prop>/autopilot/KAP140/settings/target-turn-rate</prop>
|
||||||
<config>
|
</output>
|
||||||
<Kp>2.0</Kp> <!-- proportional gain -->
|
<config>
|
||||||
<beta>1.0</beta> <!-- input value weighing factor -->
|
<Kp>-0.05</Kp> <!-- proportional gain -->
|
||||||
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
<beta>1.0</beta> <!-- input value weighing factor -->
|
||||||
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
||||||
<!-- unfiltered derivative error -->
|
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
||||||
<Ti>15.0</Ti> <!-- integrator time -->
|
<!-- unfiltered derivative error -->
|
||||||
<Td>0.001</Td> <!-- derivator time -->
|
<Ti>15.0</Ti> <!-- integrator time -->
|
||||||
<u_min>-45.0</u_min> <!-- minimum output clamp -->
|
<Td>0.0</Td> <!-- derivator time -->
|
||||||
<u_max>45.0</u_max> <!-- maximum output clamp -->
|
<u_min>-1.0</u_min> <!-- minimum output clamp -->
|
||||||
</config>
|
<u_max>1.0</u_max> <!-- maximum output clamp -->
|
||||||
</pid-controller>
|
</config>
|
||||||
|
</pid-controller>
|
||||||
|
|
||||||
<!-- Backcourse hold (REV) Mode-->
|
<!-- Wing leveler (ROL) Mode -->
|
||||||
<pid-controller>
|
<pid-controller>
|
||||||
<name>Backcourse hold (REV) Mode</name>
|
<name>Wing Leveler (ROL) Mode</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<enable>
|
<enable>
|
||||||
<prop>/autopilot/KAP140/locks/rev-hold</prop>
|
<prop>/autopilot/KAP140/locks/roll-axis</prop>
|
||||||
<value type="bool">true</value>
|
<value type="bool">true</value>
|
||||||
</enable>
|
</enable>
|
||||||
<input>
|
<input>
|
||||||
<prop>/instrumentation/nav/heading-needle-deflection</prop>
|
<prop>/instrumentation/turn-indicator/indicated-turn-rate</prop>
|
||||||
<scale>-1.0</scale>
|
</input>
|
||||||
</input>
|
<reference>
|
||||||
<reference>
|
<prop>/autopilot/KAP140/settings/target-turn-rate</prop>
|
||||||
<value>0.0</value>
|
</reference>
|
||||||
</reference>
|
<output>
|
||||||
<output>
|
<prop>/controls/flight/aileron</prop>
|
||||||
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
</output>
|
||||||
</output>
|
<config>
|
||||||
<config>
|
<Kp>0.15</Kp> <!-- proportional gain -->
|
||||||
<Kp>2.0</Kp> <!-- proportional gain -->
|
<beta>1.0</beta> <!-- input value weighing factor -->
|
||||||
<beta>1.0</beta> <!-- input value weighing factor -->
|
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
||||||
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
||||||
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
<!-- unfiltered derivative error -->
|
||||||
<!-- unfiltered derivative error -->
|
<Ti>15.0</Ti> <!-- integrator time -->
|
||||||
<Ti>15.0</Ti> <!-- integrator time -->
|
<Td>0.0</Td> <!-- derivator time -->
|
||||||
<Td>0.0</Td> <!-- derivator time -->
|
<u_min>-0.25</u_min> <!-- minimum output clamp -->
|
||||||
<u_min>-45.0</u_min> <!-- minimum output clamp -->
|
<u_max>0.25</u_max> <!-- maximum output clamp -->
|
||||||
<u_max>45.0</u_max> <!-- maximum output clamp -->
|
</config>
|
||||||
</config>
|
</pid-controller>
|
||||||
</pid-controller>
|
|
||||||
|
|
||||||
<!-- Heading Select (HDG) Mode -->
|
<!-- =============================================================== -->
|
||||||
|
<!-- Pitch Axis Modes -->
|
||||||
|
<!-- =============================================================== -->
|
||||||
|
|
||||||
<pid-controller>
|
<!-- Altitude Hold (ALT) Mode -->
|
||||||
<name>Heading Select (HDG) Mode</name>
|
<pid-controller>
|
||||||
<debug>false</debug>
|
<name>Altitude Hold (ALT) Mode</name>
|
||||||
<enable>
|
<debug>false</debug>
|
||||||
<prop>/autopilot/KAP140/locks/hdg-hold</prop>
|
<enable>
|
||||||
<value type="bool">true</value>
|
<prop>/autopilot/KAP140/locks/alt-hold</prop>
|
||||||
</enable>
|
<value type="bool">true</value>
|
||||||
<input>
|
</enable>
|
||||||
<prop>/autopilot/internal/heading-bug-error-deg</prop>
|
<input>
|
||||||
<!-- <prop>/instrumentation/gps/true-bug-error-deg</prop> -->
|
<prop>/systems/static[0]/pressure-inhg[0]</prop>
|
||||||
</input>
|
</input>
|
||||||
<reference>
|
<reference>
|
||||||
<prop>/autopilot/KAP140/settings/target-intercept-angle</prop>
|
<prop>/autopilot/KAP140/settings/target-alt-pressure</prop>
|
||||||
</reference>
|
</reference>
|
||||||
<output>
|
<output>
|
||||||
<prop>/autopilot/KAP140/settings/target-turn-rate</prop>
|
<prop>/autopilot/KAP140/settings/target-pressure-rate</prop>
|
||||||
</output>
|
</output>
|
||||||
<config>
|
<config>
|
||||||
<Kp>-0.05</Kp> <!-- proportional gain -->
|
<Kp>0.125</Kp> <!-- proportional gain -->
|
||||||
<beta>1.0</beta> <!-- input value weighing factor -->
|
<beta>1.0</beta> <!-- input value weighing factor -->
|
||||||
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
||||||
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
||||||
<!-- unfiltered derivative error -->
|
<!-- unfiltered derivative error -->
|
||||||
<Ti>15.0</Ti> <!-- integrator time -->
|
<Ti>12.0</Ti> <!-- integrator time -->
|
||||||
<Td>0.0</Td> <!-- derivator time -->
|
<Td>0.0</Td> <!-- derivator time -->
|
||||||
<u_min>-1.0</u_min> <!-- minimum output clamp -->
|
<u_min>-0.007</u_min> <!-- minimum output clamp -->
|
||||||
<u_max>1.0</u_max> <!-- maximum output clamp -->
|
<u_max>0.007</u_max> <!-- maximum output clamp -->
|
||||||
</config>
|
</config>
|
||||||
</pid-controller>
|
</pid-controller>
|
||||||
|
|
||||||
<!-- Wing leveler (ROL) Mode -->
|
<!-- Glideslope Hold (GS) Mode -->
|
||||||
|
<pid-controller>
|
||||||
|
<name>Glideslope Hold (GS) Mode</name>
|
||||||
|
<debug>false</debug>
|
||||||
|
<enable>
|
||||||
|
<prop>/autopilot/KAP140/locks/gs-hold</prop>
|
||||||
|
<value type="bool">true</value>
|
||||||
|
</enable>
|
||||||
|
<input>
|
||||||
|
<prop>/instrumentation/nav/gs-needle-deflection-norm</prop>
|
||||||
|
</input>
|
||||||
|
<reference>
|
||||||
|
<value>0.0</value>
|
||||||
|
</reference>
|
||||||
|
<output>
|
||||||
|
<prop>/autopilot/KAP140/settings/target-pressure-rate</prop>
|
||||||
|
</output>
|
||||||
|
<config>
|
||||||
|
<Kp>0.025</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>15.0</Ti> <!-- integrator time -->
|
||||||
|
<Td>0.0</Td> <!-- derivator time -->
|
||||||
|
<u_min>-0.001</u_min> <!-- minimum output clamp -->
|
||||||
|
<u_max>0.017</u_max> <!-- maximum output clamp -->
|
||||||
|
</config>
|
||||||
|
</pid-controller>
|
||||||
|
|
||||||
<pid-controller>
|
<filter>
|
||||||
<name>Wing Leveler (ROL) Mode</name>
|
<name>static port pressure rate computer</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<enable>
|
<type>derivative</type>
|
||||||
<prop>/autopilot/KAP140/locks/roll-axis</prop>
|
<input>systems/static[0]/pressure-inhg</input>
|
||||||
<value type="bool">true</value>
|
<output>autopilot/internal/pressure-rate</output>
|
||||||
</enable>
|
<filter-time>1.0</filter-time>
|
||||||
<input>
|
</filter>
|
||||||
<prop>/instrumentation/turn-indicator/indicated-turn-rate</prop>
|
|
||||||
</input>
|
|
||||||
<reference>
|
|
||||||
<prop>/autopilot/KAP140/settings/target-turn-rate</prop>
|
|
||||||
</reference>
|
|
||||||
<output>
|
|
||||||
<prop>/controls/flight/aileron</prop>
|
|
||||||
</output>
|
|
||||||
<config>
|
|
||||||
<Kp>0.15</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>15.0</Ti> <!-- integrator time -->
|
|
||||||
<Td>0.0</Td> <!-- derivator time -->
|
|
||||||
<u_min>-0.25</u_min> <!-- minimum output clamp -->
|
|
||||||
<u_max>0.25</u_max> <!-- maximum output clamp -->
|
|
||||||
</config>
|
|
||||||
</pid-controller>
|
|
||||||
|
|
||||||
<!-- =============================================================== -->
|
<filter>
|
||||||
<!-- Pitch Axis Modes -->
|
<name>pressure-rate-filter</name>
|
||||||
<!-- =============================================================== -->
|
<debug>false</debug>
|
||||||
|
<type>double-exponential</type>
|
||||||
|
<input>/autopilot/internal/pressure-rate</input>
|
||||||
|
<output>/autopilot/internal/filtered-pressure-rate</output>
|
||||||
|
<filter-time>0.1</filter-time>
|
||||||
|
</filter>
|
||||||
|
|
||||||
<!-- Altitude Hold (ALT) Mode -->
|
<filter>
|
||||||
<pid-controller>
|
<name>conversion to fpm</name>
|
||||||
<name>Altitude Hold (ALT) Mode</name>
|
<debug>false</debug>
|
||||||
<debug>false</debug>
|
<type>gain</type>
|
||||||
<enable>
|
<input>/autopilot/KAP140/settings/target-pressure-rate</input>
|
||||||
<prop>/autopilot/KAP140/locks/alt-hold</prop>
|
<output>/autopilot/KAP140/settings/target-pressure-rate-fpm</output>
|
||||||
<value type="bool">true</value>
|
<gain>-58000</gain>
|
||||||
</enable>
|
</filter>
|
||||||
<input>
|
|
||||||
<prop>/systems/static[0]/pressure-inhg[0]</prop>
|
|
||||||
</input>
|
|
||||||
<reference>
|
|
||||||
<prop>/autopilot/KAP140/settings/target-alt-pressure</prop>
|
|
||||||
</reference>
|
|
||||||
<output>
|
|
||||||
<prop>/autopilot/KAP140/settings/target-pressure-rate</prop>
|
|
||||||
</output>
|
|
||||||
<config>
|
|
||||||
<Kp>0.125</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>12.0</Ti> <!-- integrator time -->
|
|
||||||
<Td>0.0</Td> <!-- derivator time -->
|
|
||||||
<u_min>-0.007</u_min> <!-- minimum output clamp -->
|
|
||||||
<u_max>0.007</u_max> <!-- maximum output clamp -->
|
|
||||||
</config>
|
|
||||||
</pid-controller>
|
|
||||||
|
|
||||||
<!-- Glideslope Hold (GS) Mode -->
|
<!-- Vertical Speed (VS) Mode -->
|
||||||
<pid-controller>
|
<pid-controller>
|
||||||
<name>Glideslope Hold (GS) Mode</name>
|
<name>Vertical Speed (VS) Mode</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<enable>
|
<enable>
|
||||||
<prop>/autopilot/KAP140/locks/gs-hold</prop>
|
<prop>/autopilot/KAP140/locks/pitch-axis</prop>
|
||||||
<value type="bool">true</value>
|
<value type="bool">true</value>
|
||||||
</enable>
|
</enable>
|
||||||
<input>
|
<input>
|
||||||
<prop>/instrumentation/nav/gs-needle-deflection-norm</prop>
|
<prop>/autopilot/internal/filtered-pressure-rate</prop>
|
||||||
</input>
|
</input>
|
||||||
<reference>
|
<reference>
|
||||||
<value>0.0</value>
|
<prop>/autopilot/KAP140/settings/target-pressure-rate</prop>
|
||||||
</reference>
|
</reference>
|
||||||
<output>
|
<output>
|
||||||
<prop>/autopilot/KAP140/settings/target-pressure-rate</prop>
|
<prop>/controls/flight/elevator</prop>
|
||||||
</output>
|
</output>
|
||||||
<config>
|
<config>
|
||||||
<Kp>0.025</Kp> <!-- proportional gain -->
|
<Kp>5.0</Kp> <!-- proportional gain -->
|
||||||
<beta>1.0</beta> <!-- input value weighing factor -->
|
<beta>1.0</beta> <!-- input value weighing factor -->
|
||||||
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
<alpha>0.1</alpha> <!-- low pass filter weighing factor -->
|
||||||
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
<gamma>0.0</gamma> <!-- input value weighing factor for -->
|
||||||
<!-- unfiltered derivative error -->
|
<!-- unfiltered derivative error -->
|
||||||
<Ti>15.0</Ti> <!-- integrator time -->
|
<Ti>4.0</Ti> <!-- integrator time -->
|
||||||
<Td>0.0</Td> <!-- derivator time -->
|
<Td>0.0</Td> <!-- derivator time -->
|
||||||
<u_min>-0.001</u_min> <!-- minimum output clamp -->
|
<u_min>-0.5</u_min> <!-- minimum output clamp -->
|
||||||
<u_max>0.017</u_max> <!-- maximum output clamp -->
|
<u_max>0.5</u_max> <!-- maximum output clamp -->
|
||||||
</config>
|
</config>
|
||||||
</pid-controller>
|
</pid-controller>
|
||||||
|
|
||||||
<filter>
|
|
||||||
<name>static port pressure rate computer</name>
|
|
||||||
<debug>false</debug>
|
|
||||||
<type>derivative</type>
|
|
||||||
<input>systems/static[0]/pressure-inhg</input>
|
|
||||||
<output>autopilot/internal/pressure-rate</output>
|
|
||||||
<filter-time>1.0</filter-time>
|
|
||||||
</filter>
|
|
||||||
|
|
||||||
<filter>
|
|
||||||
<name>pressure-rate-filter</name>
|
|
||||||
<debug>false</debug>
|
|
||||||
<type>double-exponential</type>
|
|
||||||
<input>/autopilot/internal/pressure-rate</input>
|
|
||||||
<output>/autopilot/internal/filtered-pressure-rate</output>
|
|
||||||
<filter-time>0.1</filter-time>
|
|
||||||
</filter>
|
|
||||||
|
|
||||||
<filter>
|
|
||||||
<name>conversion to fpm</name>
|
|
||||||
<debug>false</debug>
|
|
||||||
<type>gain</type>
|
|
||||||
<input>/autopilot/KAP140/settings/target-pressure-rate</input>
|
|
||||||
<output>/autopilot/KAP140/settings/target-pressure-rate-fpm</output>
|
|
||||||
<gain>-58000</gain>
|
|
||||||
</filter>
|
|
||||||
|
|
||||||
<!-- Vertical Speed (VS) Mode -->
|
|
||||||
<pid-controller>
|
|
||||||
<name>Vertical Speed (VS) Mode</name>
|
|
||||||
<debug>false</debug>
|
|
||||||
<enable>
|
|
||||||
<prop>/autopilot/KAP140/locks/pitch-axis</prop>
|
|
||||||
<value type="bool">true</value>
|
|
||||||
</enable>
|
|
||||||
<input>
|
|
||||||
<prop>/autopilot/internal/filtered-pressure-rate</prop>
|
|
||||||
</input>
|
|
||||||
<reference>
|
|
||||||
<prop>/autopilot/KAP140/settings/target-pressure-rate</prop>
|
|
||||||
</reference>
|
|
||||||
<output>
|
|
||||||
<prop>/controls/flight/elevator</prop>
|
|
||||||
</output>
|
|
||||||
<config>
|
|
||||||
<Kp>5.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>4.0</Ti> <!-- integrator time -->
|
|
||||||
<Td>0.0</Td> <!-- derivator time -->
|
|
||||||
<u_min>-0.5</u_min> <!-- minimum output clamp -->
|
|
||||||
<u_max>0.5</u_max> <!-- maximum output clamp -->
|
|
||||||
</config>
|
|
||||||
</pid-controller>
|
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,75 +1,76 @@
|
||||||
<?xml version = '1.0' encoding = 'UTF-8' ?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>CDI0 lowpass</name>
|
<name>CDI0 lowpass</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<type>exponential</type>
|
<type>exponential</type>
|
||||||
<filter-time>2.0</filter-time>
|
<filter-time>2.0</filter-time>
|
||||||
<input>instrumentation/nav[0]/heading-needle-deflection</input>
|
<input>instrumentation/nav[0]/heading-needle-deflection</input>
|
||||||
<output>instrumentation/nav[0]/filtered-cdiNAV0-deflection</output>
|
<output>instrumentation/nav[0]/filtered-cdiNAV0-deflection</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>CDI1 lowpass</name>
|
<name>CDI1 lowpass</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<type>exponential</type>
|
<type>exponential</type>
|
||||||
<filter-time>2.0</filter-time>
|
<filter-time>2.0</filter-time>
|
||||||
<input>instrumentation/nav[1]/heading-needle-deflection</input>
|
<input>instrumentation/nav[1]/heading-needle-deflection</input>
|
||||||
<output>instrumentation/nav[1]/filtered-cdiNAV1-deflection</output>
|
<output>instrumentation/nav[1]/filtered-cdiNAV1-deflection</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>GS0 lowpass</name>
|
<name>GS0 lowpass</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<type>exponential</type>
|
<type>exponential</type>
|
||||||
<filter-time>2.0</filter-time>
|
<filter-time>2.0</filter-time>
|
||||||
<input>instrumentation/nav[0]/gs-needle-deflection-norm</input>
|
<input>instrumentation/nav[0]/gs-needle-deflection-norm</input>
|
||||||
<output>instrumentation/nav[0]/filtered-gsNAV0-deflection</output>
|
<output>instrumentation/nav[0]/filtered-gsNAV0-deflection</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>GS1 lowpass</name>
|
<name>GS1 lowpass</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<type>exponential</type>
|
<type>exponential</type>
|
||||||
<filter-time>2.0</filter-time>
|
<filter-time>2.0</filter-time>
|
||||||
<input>instrumentation/nav[1]/gs-needle-deflection-norm</input>
|
<input>instrumentation/nav[1]/gs-needle-deflection-norm</input>
|
||||||
<output>instrumentation/nav[1]/filtered-gsNAV1-deflection</output>
|
<output>instrumentation/nav[1]/filtered-gsNAV1-deflection</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>EGT 160 HP lowpass</name>
|
<name>EGT 160 HP lowpass</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<type>exponential</type>
|
<type>exponential</type>
|
||||||
<filter-time>4.0</filter-time>
|
<filter-time>4.0</filter-time>
|
||||||
<input>
|
<input>
|
||||||
<property>engines/engine[0]/egt-degf</property>
|
<property>engines/engine[0]/egt-degf</property>
|
||||||
<!-- 1200 * scale + offset = 0.0
|
<!-- 1200 * scale + offset = 0.0
|
||||||
1700 * scale + offset = 1.0 -->
|
1700 * scale + offset = 1.0 -->
|
||||||
<scale>0.002</scale>
|
<scale>0.002</scale>
|
||||||
<offset>-2.4</offset>
|
<offset>-2.4</offset>
|
||||||
</input>
|
</input>
|
||||||
<output>engines/engine[0]/egt-norm</output>
|
<output>engines/engine[0]/egt-norm</output>
|
||||||
<min>0.0</min>
|
<min>0.0</min>
|
||||||
<max>1.0</max>
|
<max>1.0</max>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>EGT 180 HP lowpass</name>
|
<name>EGT 180 HP lowpass</name>
|
||||||
<debug>false</debug>
|
<debug>false</debug>
|
||||||
<type>exponential</type>
|
<type>exponential</type>
|
||||||
<filter-time>4.0</filter-time>
|
<filter-time>4.0</filter-time>
|
||||||
<input>
|
<input>
|
||||||
<property>engines/engine[1]/egt-degf</property>
|
<property>engines/engine[1]/egt-degf</property>
|
||||||
<!-- 1200 * scale + offset = 0.0
|
<!-- 1200 * scale + offset = 0.0
|
||||||
1700 * scale + offset = 1.0 -->
|
1700 * scale + offset = 1.0 -->
|
||||||
<scale>0.002</scale>
|
<scale>0.002</scale>
|
||||||
<offset>-2.4</offset>
|
<offset>-2.4</offset>
|
||||||
</input>
|
</input>
|
||||||
<output>engines/engine[1]/egt-norm</output>
|
<output>engines/engine[1]/egt-norm</output>
|
||||||
<min>0.0</min>
|
<min>0.0</min>
|
||||||
<max>1.0</max>
|
<max>1.0</max>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Tank 0 Indicated Level</name>
|
<name>Tank 0 Indicated Level</name>
|
||||||
|
@ -155,5 +156,23 @@
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
</PropertyList>
|
<filter>
|
||||||
|
<name>Engine Total Hobbs Hours</name>
|
||||||
|
<type>gain</type>
|
||||||
|
<input>
|
||||||
|
<expression>
|
||||||
|
<div>
|
||||||
|
<sum>
|
||||||
|
<property>/sim/time/hobbs/engine[0]</property>
|
||||||
|
<property>/sim/time/hobbs/engine[1]</property>
|
||||||
|
</sum>
|
||||||
|
<value>3600.0</value>
|
||||||
|
</div>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>/instrumentation/clock/hobbs-meter-hours</property>
|
||||||
|
</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
</PropertyList>
|
||||||
|
|
|
@ -123,4 +123,61 @@
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<name>Lighting Beacon On/Off</name>
|
||||||
|
<input>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/electrical/outputs/beacon</property>
|
||||||
|
<value>31.5</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/systems/electrical/outputs/beacon</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>/sim/model/c172p/lighting/beacon/enabled</property>
|
||||||
|
</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<name>Lighting Strobe On/Off</name>
|
||||||
|
<input>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/electrical/outputs/strobe</property>
|
||||||
|
<value>31.5</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/systems/electrical/outputs/strobe</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>/sim/model/c172p/lighting/strobes/enabled</property>
|
||||||
|
</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<name>Lighting Navigation On/Off</name>
|
||||||
|
<input>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/electrical/outputs/nav-lights</property>
|
||||||
|
<value>31.5</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/systems/electrical/outputs/nav-lights</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>/sim/model/c172p/lighting/nav-lights</property>
|
||||||
|
</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,302 +1,300 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
***********************************************************************************
|
***********************************************************************************
|
||||||
c172p-detailed, May 2015
|
c172p-detailed, May 2015
|
||||||
Extra weight and drag due to bush wheels, floats and 180 hp engine
|
Extra weight and drag due to bush wheels, floats and 180 hp engine
|
||||||
***********************************************************************************
|
***********************************************************************************
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<system name="bushkits">
|
<system name="bushkits">
|
||||||
|
|
||||||
<channel name="extra-weight">
|
<channel name="extra-weight">
|
||||||
|
<switch name="extra-weight-left-26-in">
|
||||||
<switch name="extra-weight-left-26-in">
|
<default value="0"/>
|
||||||
<default value="0"/>
|
<test logic="AND" value="10">
|
||||||
<test logic="AND" value="10">
|
bushkit EQ 1
|
||||||
bushkit EQ 1
|
</test>
|
||||||
</test>
|
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[5]</output>
|
||||||
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[5]</output>
|
</switch>
|
||||||
</switch>
|
|
||||||
|
<switch name="extra-weight-right-26-in">
|
||||||
<switch name="extra-weight-right-26-in">
|
<default value="0"/>
|
||||||
<default value="0"/>
|
<test logic="AND" value="10">
|
||||||
<test logic="AND" value="10">
|
bushkit EQ 1
|
||||||
bushkit EQ 1
|
</test>
|
||||||
</test>
|
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[6]</output>
|
||||||
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[6]</output>
|
</switch>
|
||||||
</switch>
|
|
||||||
|
<switch name="extra-weight-left-36-in">
|
||||||
<switch name="extra-weight-left-36-in">
|
<default value="0"/>
|
||||||
<default value="0"/>
|
<test logic="AND" value="15">
|
||||||
<test logic="AND" value="15">
|
bushkit EQ 2
|
||||||
bushkit EQ 2
|
</test>
|
||||||
</test>
|
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[7]</output>
|
||||||
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[7]</output>
|
</switch>
|
||||||
</switch>
|
|
||||||
|
<switch name="extra-weight-right-36-in">
|
||||||
<switch name="extra-weight-right-36-in">
|
<default value="0"/>
|
||||||
<default value="0"/>
|
<test logic="AND" value="15">
|
||||||
<test logic="AND" value="15">
|
bushkit EQ 2
|
||||||
bushkit EQ 2
|
</test>
|
||||||
</test>
|
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[8]</output>
|
||||||
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[8]</output>
|
</switch>
|
||||||
</switch>
|
|
||||||
|
<switch name="extra-weight-180hp">
|
||||||
<switch name="extra-weight-180hp">
|
<default value="0"/>
|
||||||
<default value="0"/>
|
<test logic="AND" value="142">
|
||||||
<test logic="AND" value="142">
|
/controls/engines/active-engine EQ 1
|
||||||
/controls/engines/active-engine EQ 1
|
</test>
|
||||||
</test>
|
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[13]</output>
|
||||||
<output>/fdm/jsbsim/inertia/pointmass-weight-lbs[13]</output>
|
</switch>
|
||||||
</switch>
|
|
||||||
|
<fcs_function name="extra-weight-left-float">
|
||||||
<fcs_function name="extra-weight-left-float">
|
<function>
|
||||||
<function>
|
<product>
|
||||||
<product>
|
<eq>
|
||||||
<eq>
|
<property>bushkit</property>
|
||||||
<property>bushkit</property>
|
<value>3</value>
|
||||||
<value>3</value>
|
</eq>
|
||||||
</eq>
|
<sum>
|
||||||
<sum>
|
<value>66.0</value>
|
||||||
<value>66.0</value>
|
<property>left-pontoon/leaked-water-lbs</property>
|
||||||
<property>left-pontoon/leaked-water-lbs</property>
|
</sum>
|
||||||
</sum>
|
</product>
|
||||||
</product>
|
</function>
|
||||||
</function>
|
<output>inertia/pointmass-weight-lbs[9]</output>
|
||||||
<output>inertia/pointmass-weight-lbs[9]</output>
|
</fcs_function>
|
||||||
</fcs_function>
|
|
||||||
|
<fcs_function name="extra-weight-right-float">
|
||||||
<fcs_function name="extra-weight-right-float">
|
<function>
|
||||||
<function>
|
<product>
|
||||||
<product>
|
<eq>
|
||||||
<eq>
|
<property>bushkit</property>
|
||||||
<property>bushkit</property>
|
<value>3</value>
|
||||||
<value>3</value>
|
</eq>
|
||||||
</eq>
|
<sum>
|
||||||
<sum>
|
<value>66.0</value>
|
||||||
<value>66.0</value>
|
<property>right-pontoon/leaked-water-lbs</property>
|
||||||
<property>right-pontoon/leaked-water-lbs</property>
|
</sum>
|
||||||
</sum>
|
</product>
|
||||||
</product>
|
</function>
|
||||||
</function>
|
<output>inertia/pointmass-weight-lbs[10]</output>
|
||||||
<output>inertia/pointmass-weight-lbs[10]</output>
|
</fcs_function>
|
||||||
</fcs_function>
|
|
||||||
|
<fcs_function name="extra-weight-left-amphibious">
|
||||||
<fcs_function name="extra-weight-left-amphibious">
|
<function>
|
||||||
<function>
|
<product>
|
||||||
<product>
|
<eq>
|
||||||
<eq>
|
<property>bushkit</property>
|
||||||
<property>bushkit</property>
|
<value>4</value>
|
||||||
<value>4</value>
|
</eq>
|
||||||
</eq>
|
<sum>
|
||||||
<sum>
|
<value>138.0</value>
|
||||||
<value>138.0</value>
|
<property>left-pontoon/leaked-water-lbs</property>
|
||||||
<property>left-pontoon/leaked-water-lbs</property>
|
</sum>
|
||||||
</sum>
|
</product>
|
||||||
</product>
|
</function>
|
||||||
</function>
|
<output>inertia/pointmass-weight-lbs[11]</output>
|
||||||
<output>inertia/pointmass-weight-lbs[11]</output>
|
</fcs_function>
|
||||||
</fcs_function>
|
|
||||||
|
<fcs_function name="extra-weight-right-amphibious">
|
||||||
<fcs_function name="extra-weight-right-amphibious">
|
<function>
|
||||||
<function>
|
<product>
|
||||||
<product>
|
<eq>
|
||||||
<eq>
|
<property>bushkit</property>
|
||||||
<property>bushkit</property>
|
<value>4</value>
|
||||||
<value>4</value>
|
</eq>
|
||||||
</eq>
|
<sum>
|
||||||
<sum>
|
<value>138.0</value>
|
||||||
<value>138.0</value>
|
<property>right-pontoon/leaked-water-lbs</property>
|
||||||
<property>right-pontoon/leaked-water-lbs</property>
|
</sum>
|
||||||
</sum>
|
</product>
|
||||||
</product>
|
</function>
|
||||||
</function>
|
<output>inertia/pointmass-weight-lbs[12]</output>
|
||||||
<output>inertia/pointmass-weight-lbs[12]</output>
|
</fcs_function>
|
||||||
</fcs_function>
|
</channel>
|
||||||
|
|
||||||
</channel>
|
<channel name="extra-drag">
|
||||||
|
<switch name="drag-26-in">
|
||||||
<channel name="extra-drag">
|
<default value="1"/>
|
||||||
|
<test logic="AND" value="1.05">
|
||||||
<switch name="drag-26-in">
|
bushkit EQ 1
|
||||||
<default value="1"/>
|
</test>
|
||||||
<test logic="AND" value="1.05">
|
<output>gear/drag-coef[1]</output>
|
||||||
bushkit EQ 1
|
</switch>
|
||||||
</test>
|
|
||||||
<output>gear/drag-coef[1]</output>
|
<switch name="drag-36-in">
|
||||||
</switch>
|
<default value="1"/>
|
||||||
|
<test logic="AND" value="1.07">
|
||||||
<switch name="drag-36-in">
|
bushkit EQ 2
|
||||||
<default value="1"/>
|
</test>
|
||||||
<test logic="AND" value="1.07">
|
<output>gear/drag-coef[2]</output>
|
||||||
bushkit EQ 2
|
</switch>
|
||||||
</test>
|
|
||||||
<output>gear/drag-coef[2]</output>
|
<switch name="drag-Floats">
|
||||||
</switch>
|
<default value="1"/>
|
||||||
|
<test logic="AND" value="1.20">
|
||||||
<switch name="drag-Floats">
|
bushkit EQ 3
|
||||||
<default value="1"/>
|
</test>
|
||||||
<test logic="AND" value="1.20">
|
<output>gear/drag-coef[3]</output>
|
||||||
bushkit EQ 3
|
</switch>
|
||||||
</test>
|
|
||||||
<output>gear/drag-coef[3]</output>
|
<switch name="drag-Amphibious">
|
||||||
</switch>
|
<default value="1"/>
|
||||||
|
<test logic="AND" value="1.22">
|
||||||
<switch name="drag-Amphibious">
|
bushkit EQ 4
|
||||||
<default value="1"/>
|
</test>
|
||||||
<test logic="AND" value="1.22">
|
<output>gear/drag-coef[4]</output>
|
||||||
bushkit EQ 4
|
</switch>
|
||||||
</test>
|
</channel>
|
||||||
<output>gear/drag-coef[4]</output>
|
|
||||||
</switch>
|
<channel name="JSBSim hydrodynamics integration">
|
||||||
|
<fcs_function name="tmp/floats-enabled-norm">
|
||||||
</channel>
|
<function>
|
||||||
|
<product>
|
||||||
<channel name="JSBSim hydrodynamics integration">
|
<value>1.0</value>
|
||||||
|
<le>
|
||||||
<fcs_function name="tmp/floats-enabled-norm">
|
<value>3.0</value>
|
||||||
<function>
|
<property>bushkit</property>
|
||||||
<product>
|
</le>
|
||||||
<value>1.0</value>
|
<le>
|
||||||
<le>
|
<property>bushkit</property>
|
||||||
<value>3.0</value>
|
<value>4.0</value>
|
||||||
<property>bushkit</property>
|
</le>
|
||||||
</le>
|
<not>
|
||||||
<le>
|
<and>
|
||||||
<property>bushkit</property>
|
<property>contact/unit[13]/solid</property>
|
||||||
<value>4.0</value>
|
<property>contact/unit[14]/solid</property>
|
||||||
</le>
|
<property>contact/unit[15]/solid</property>
|
||||||
<not>
|
<property>contact/unit[16]/solid</property>
|
||||||
<and>
|
<property>contact/unit[17]/solid</property>
|
||||||
<property>contact/unit[13]/solid</property>
|
<property>contact/unit[18]/solid</property>
|
||||||
<property>contact/unit[14]/solid</property>
|
</and>
|
||||||
<property>contact/unit[15]/solid</property>
|
</not>
|
||||||
<property>contact/unit[16]/solid</property>
|
</product>
|
||||||
<property>contact/unit[17]/solid</property>
|
</function>
|
||||||
<property>contact/unit[18]/solid</property>
|
<output>floats-enabled-norm</output>
|
||||||
</and>
|
</fcs_function>
|
||||||
</not>
|
|
||||||
</product>
|
<!-- FIXME: The delayed activation isn't pretty but, apparently,
|
||||||
</function>
|
the solid property isn't reliable at the begining. -->
|
||||||
<output>floats-enabled-norm</output>
|
<switch name="left-pontoon/contact-z-pos-in[0]">
|
||||||
</fcs_function>
|
<default value="38.5"/>
|
||||||
|
<test logic="AND" value="-50.0">
|
||||||
<!-- FIXME: The delayed activation isn't pretty but, apparently,
|
simulation/sim-time-sec GT 0.25
|
||||||
the solid property isn't reliable at the begining. -->
|
bushkit GE 3
|
||||||
<switch name="left-pontoon/contact-z-pos-in[0]">
|
bushkit LE 4
|
||||||
<default value="38.5"/>
|
contact/unit[13]/solid NE 0
|
||||||
<test logic="AND" value="-50.0">
|
</test>
|
||||||
simulation/sim-time-sec GT 0.25
|
<output>contact/unit[13]/z-position</output>
|
||||||
bushkit GE 3
|
</switch>
|
||||||
bushkit LE 4
|
|
||||||
contact/unit[13]/solid NE 0
|
<switch name="left-pontoon/contact-z-pos-in[1]">
|
||||||
</test>
|
<default value="38.5"/>
|
||||||
<output>contact/unit[13]/z-position</output>
|
<test logic="AND" value="-44.2">
|
||||||
</switch>
|
simulation/sim-time-sec GT 0.25
|
||||||
<switch name="left-pontoon/contact-z-pos-in[1]">
|
bushkit GE 3
|
||||||
<default value="38.5"/>
|
bushkit LE 4
|
||||||
<test logic="AND" value="-44.2">
|
contact/unit[15]/solid NE 0
|
||||||
simulation/sim-time-sec GT 0.25
|
</test>
|
||||||
bushkit GE 3
|
<output>contact/unit[15]/z-position</output>
|
||||||
bushkit LE 4
|
</switch>
|
||||||
contact/unit[15]/solid NE 0
|
|
||||||
</test>
|
<switch name="left-pontoon/contact-z-pos-in[2]">
|
||||||
<output>contact/unit[15]/z-position</output>
|
<default value="38.5"/>
|
||||||
</switch>
|
<test logic="AND" value="-24.5">
|
||||||
<switch name="left-pontoon/contact-z-pos-in[2]">
|
simulation/sim-time-sec GT 0.25
|
||||||
<default value="38.5"/>
|
bushkit GE 3
|
||||||
<test logic="AND" value="-24.5">
|
bushkit LE 4
|
||||||
simulation/sim-time-sec GT 0.25
|
contact/unit[17]/solid NE 0
|
||||||
bushkit GE 3
|
</test>
|
||||||
bushkit LE 4
|
<output>contact/unit[17]/z-position</output>
|
||||||
contact/unit[17]/solid NE 0
|
</switch>
|
||||||
</test>
|
|
||||||
<output>contact/unit[17]/z-position</output>
|
<switch name="right-pontoon/contact-z-pos-in[0]">
|
||||||
</switch>
|
<default value="38.5"/>
|
||||||
|
<test logic="AND" value="-50.0">
|
||||||
<switch name="right-pontoon/contact-z-pos-in[0]">
|
simulation/sim-time-sec GT 0.25
|
||||||
<default value="38.5"/>
|
bushkit GE 3
|
||||||
<test logic="AND" value="-50.0">
|
bushkit LE 4
|
||||||
simulation/sim-time-sec GT 0.25
|
contact/unit[14]/solid NE 0
|
||||||
bushkit GE 3
|
</test>
|
||||||
bushkit LE 4
|
<output>contact/unit[14]/z-position</output>
|
||||||
contact/unit[14]/solid NE 0
|
</switch>
|
||||||
</test>
|
|
||||||
<output>contact/unit[14]/z-position</output>
|
<switch name="right-pontoon/contact-z-pos-in[1]">
|
||||||
</switch>
|
<default value="38.5"/>
|
||||||
<switch name="right-pontoon/contact-z-pos-in[1]">
|
<test logic="AND" value="-44.2">
|
||||||
<default value="38.5"/>
|
bushkit GE 3
|
||||||
<test logic="AND" value="-44.2">
|
bushkit LE 4
|
||||||
bushkit GE 3
|
contact/unit[16]/solid NE 0
|
||||||
bushkit LE 4
|
</test>
|
||||||
contact/unit[16]/solid NE 0
|
<output>contact/unit[16]/z-position</output>
|
||||||
</test>
|
</switch>
|
||||||
<output>contact/unit[16]/z-position</output>
|
|
||||||
</switch>
|
<switch name="right-pontoon/contact-z-pos-in[2]">
|
||||||
<switch name="right-pontoon/contact-z-pos-in[2]">
|
<default value="38.5"/>
|
||||||
<default value="38.5"/>
|
<test logic="AND" value="-24.5">
|
||||||
<test logic="AND" value="-24.5">
|
simulation/sim-time-sec GT 0.25
|
||||||
simulation/sim-time-sec GT 0.25
|
bushkit GE 3
|
||||||
bushkit GE 3
|
bushkit LE 4
|
||||||
bushkit LE 4
|
contact/unit[18]/solid NE 0
|
||||||
contact/unit[18]/solid NE 0
|
</test>
|
||||||
</test>
|
<output>contact/unit[18]/z-position</output>
|
||||||
<output>contact/unit[18]/z-position</output>
|
</switch>
|
||||||
</switch>
|
|
||||||
|
<fcs_function name="left-pontoon/leakage-lbs_sec">
|
||||||
<fcs_function name="left-pontoon/leakage-lbs_sec">
|
<function>
|
||||||
<function>
|
<product>
|
||||||
<product>
|
<property>hydro/active-norm</property>
|
||||||
<property>hydro/active-norm</property>
|
<switch>
|
||||||
<switch>
|
<property>pontoon-damage/left-pontoon</property>
|
||||||
<property>pontoon-damage/left-pontoon</property>
|
<value>0.0</value>
|
||||||
<value>0.0</value>
|
<value>250.0</value>
|
||||||
<value>250.0</value>
|
<value>5.0</value>
|
||||||
<value>5.0</value>
|
</switch>
|
||||||
</switch>
|
</product>
|
||||||
</product>
|
</function>
|
||||||
</function>
|
</fcs_function>
|
||||||
</fcs_function>
|
|
||||||
|
<!-- FIXME: How to reset this to 0 on repair? -->
|
||||||
<!-- FIXME: How to reset this to 0 on repair? -->
|
<pid name="left-pontoon/leaked-water-lbs">
|
||||||
<pid name="left-pontoon/leaked-water-lbs">
|
<input>left-pontoon/leakage-lbs_sec</input>
|
||||||
<input>left-pontoon/leakage-lbs_sec</input>
|
<kp>0.0</kp>
|
||||||
<kp>0.0</kp>
|
<ki>1.0</ki>
|
||||||
<ki>1.0</ki>
|
<kd>0.0</kd>
|
||||||
<kd>0.0</kd>
|
<clipto>
|
||||||
<clipto>
|
<min>0.0</min>
|
||||||
<min>0.0</min>
|
<max>2500.0</max> <!-- FIXME: Too much? Or too little? -->
|
||||||
<max>2500.0</max> <!-- FIXME: Too much? Or too little? -->
|
</clipto>
|
||||||
</clipto>
|
</pid>
|
||||||
</pid>
|
|
||||||
|
<fcs_function name="right-pontoon/leakage-lbs_sec">
|
||||||
<fcs_function name="right-pontoon/leakage-lbs_sec">
|
<function>
|
||||||
<function>
|
<product>
|
||||||
<product>
|
<property>hydro/active-norm</property>
|
||||||
<property>hydro/active-norm</property>
|
<switch>
|
||||||
<switch>
|
<property>pontoon-damage/right-pontoon</property>
|
||||||
<property>pontoon-damage/right-pontoon</property>
|
<value>0.0</value>
|
||||||
<value>0.0</value>
|
<value>250.0</value>
|
||||||
<value>250.0</value>
|
<value>5.0</value>
|
||||||
<value>5.0</value>
|
</switch>
|
||||||
</switch>
|
</product>
|
||||||
</product>
|
</function>
|
||||||
</function>
|
</fcs_function>
|
||||||
</fcs_function>
|
|
||||||
|
<!-- FIXME: How to reset this to 0 on repair? -->
|
||||||
<!-- FIXME: How to reset this to 0 on repair? -->
|
<pid name="right-pontoon/leaked-water-lbs">
|
||||||
<pid name="right-pontoon/leaked-water-lbs">
|
<input>right-pontoon/leakage-lbs_sec</input>
|
||||||
<input>right-pontoon/leakage-lbs_sec</input>
|
<kp>0.0</kp>
|
||||||
<kp>0.0</kp>
|
<ki>1.0</ki>
|
||||||
<ki>1.0</ki>
|
<kd>0.0</kd>
|
||||||
<kd>0.0</kd>
|
<clipto>
|
||||||
<clipto>
|
<min>0.0</min>
|
||||||
<min>0.0</min>
|
<max>2500.0</max> <!-- FIXME: Too much? Or too little? -->
|
||||||
<max>2500.0</max> <!-- FIXME: Too much? Or too little? -->
|
</clipto>
|
||||||
</clipto>
|
</pid>
|
||||||
</pid>
|
</channel>
|
||||||
|
|
||||||
</channel>
|
</system>
|
||||||
|
|
||||||
</system>
|
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<system name="c172p damage">
|
<system name="c172p damage">
|
||||||
|
|
||||||
<channel name="gear-forces">
|
<channel name="gear-forces">
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
c172p damage effects for JSBSim.
|
c172p damage effects for JSBSim.
|
||||||
|
@ -18,129 +19,130 @@
|
||||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<system name="c172p ground effects">
|
<system name="c172p ground effects">
|
||||||
|
|
||||||
<channel name="groundeffects">
|
<channel name="groundeffects">
|
||||||
|
|
||||||
<fcs_function name="ground/tail-ground-effect-speed-kt">
|
<fcs_function name="ground/tail-ground-effect-speed-kt">
|
||||||
<function>
|
<function>
|
||||||
<product>
|
<product>
|
||||||
<property>/fdm/jsbsim/contact/unit[3]/WOW</property>
|
<property>/fdm/jsbsim/contact/unit[3]/WOW</property>
|
||||||
<property>/velocities/groundspeed-kt</property>
|
|
||||||
</product>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/left-wing-ground-effect-speed-kt">
|
|
||||||
<function>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/contact/unit[4]/WOW</property>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
|
||||||
<eq>
|
|
||||||
<property>/fdm/jsbsim/wing-damage/left-wing</property>
|
|
||||||
<value>0.0</value>
|
|
||||||
</eq>
|
|
||||||
</product>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/right-wing-ground-effect-speed-kt">
|
|
||||||
<function>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/contact/unit[5]/WOW</property>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
|
||||||
<eq>
|
|
||||||
<property>/fdm/jsbsim/wing-damage/right-wing</property>
|
|
||||||
<value>0.0</value>
|
|
||||||
</eq>
|
|
||||||
</product>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/nose-gear-ground-effect-speed-kt">
|
|
||||||
<function>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/contact/unit[6]/WOW</property>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
|
||||||
</product>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/left-gear-ground-effect-speed-kt">
|
|
||||||
<function>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/contact/unit[7]/WOW</property>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
|
||||||
</product>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/right-gear-ground-effect-speed-kt">
|
|
||||||
<function>
|
|
||||||
<product>
|
|
||||||
<property>/fdm/jsbsim/contact/unit[8]/WOW</property>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
|
||||||
</product>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/nose-tyre-smoke-ground-effect-speed-kt">
|
|
||||||
<function>
|
|
||||||
<or>
|
|
||||||
<property>/gear/gear[0]/tyre-smoke</property>
|
|
||||||
<product>
|
|
||||||
<property>/gear/gear[0]/wow</property>
|
|
||||||
<gt>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
<property>/velocities/groundspeed-kt</property>
|
||||||
<value>20.0</value>
|
</product>
|
||||||
</gt>
|
</function>
|
||||||
<gt>
|
</fcs_function>
|
||||||
<property>/fdm/jsbsim/ground/rolling_friction-factor</property>
|
|
||||||
<value>1</value>
|
|
||||||
</gt>
|
|
||||||
</product>
|
|
||||||
</or>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/left-tyre-smoke-ground-effect-speed-kt">
|
<fcs_function name="ground/left-wing-ground-effect-speed-kt">
|
||||||
<function>
|
<function>
|
||||||
<or>
|
<product>
|
||||||
<property>/gear/gear[1]/tyre-smoke</property>
|
<property>/fdm/jsbsim/contact/unit[4]/WOW</property>
|
||||||
<product>
|
|
||||||
<property>/gear/gear[1]/wow</property>
|
|
||||||
<gt>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
<property>/velocities/groundspeed-kt</property>
|
||||||
<value>20.0</value>
|
<eq>
|
||||||
</gt>
|
<property>/fdm/jsbsim/wing-damage/left-wing</property>
|
||||||
<gt>
|
<value>0.0</value>
|
||||||
<property>/fdm/jsbsim/ground/rolling_friction-factor</property>
|
</eq>
|
||||||
<value>1</value>
|
</product>
|
||||||
</gt>
|
</function>
|
||||||
</product>
|
</fcs_function>
|
||||||
</or>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
<fcs_function name="ground/right-tyre-smoke-ground-effect-speed-kt">
|
<fcs_function name="ground/right-wing-ground-effect-speed-kt">
|
||||||
<function>
|
<function>
|
||||||
<or>
|
<product>
|
||||||
<property>/gear/gear[2]/tyre-smoke</property>
|
<property>/fdm/jsbsim/contact/unit[5]/WOW</property>
|
||||||
<product>
|
|
||||||
<property>/gear/gear[2]/wow</property>
|
|
||||||
<gt>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
<property>/velocities/groundspeed-kt</property>
|
||||||
<value>20.0</value>
|
<eq>
|
||||||
</gt>
|
<property>/fdm/jsbsim/wing-damage/right-wing</property>
|
||||||
<gt>
|
<value>0.0</value>
|
||||||
<property>/fdm/jsbsim/ground/rolling_friction-factor</property>
|
</eq>
|
||||||
<value>1</value>
|
</product>
|
||||||
</gt>
|
</function>
|
||||||
</product>
|
</fcs_function>
|
||||||
</or>
|
|
||||||
</function>
|
|
||||||
</fcs_function>
|
|
||||||
|
|
||||||
</channel>
|
<fcs_function name="ground/nose-gear-ground-effect-speed-kt">
|
||||||
|
<function>
|
||||||
|
<product>
|
||||||
|
<property>/fdm/jsbsim/contact/unit[6]/WOW</property>
|
||||||
|
<property>/velocities/groundspeed-kt</property>
|
||||||
|
</product>
|
||||||
|
</function>
|
||||||
|
</fcs_function>
|
||||||
|
|
||||||
|
<fcs_function name="ground/left-gear-ground-effect-speed-kt">
|
||||||
|
<function>
|
||||||
|
<product>
|
||||||
|
<property>/fdm/jsbsim/contact/unit[7]/WOW</property>
|
||||||
|
<property>/velocities/groundspeed-kt</property>
|
||||||
|
</product>
|
||||||
|
</function>
|
||||||
|
</fcs_function>
|
||||||
|
|
||||||
|
<fcs_function name="ground/right-gear-ground-effect-speed-kt">
|
||||||
|
<function>
|
||||||
|
<product>
|
||||||
|
<property>/fdm/jsbsim/contact/unit[8]/WOW</property>
|
||||||
|
<property>/velocities/groundspeed-kt</property>
|
||||||
|
</product>
|
||||||
|
</function>
|
||||||
|
</fcs_function>
|
||||||
|
|
||||||
|
<fcs_function name="ground/nose-tyre-smoke-ground-effect-speed-kt">
|
||||||
|
<function>
|
||||||
|
<or>
|
||||||
|
<property>/gear/gear[0]/tyre-smoke</property>
|
||||||
|
<product>
|
||||||
|
<property>/gear/gear[0]/wow</property>
|
||||||
|
<gt>
|
||||||
|
<property>/velocities/groundspeed-kt</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</gt>
|
||||||
|
<gt>
|
||||||
|
<property>/fdm/jsbsim/ground/rolling_friction-factor</property>
|
||||||
|
<value>1</value>
|
||||||
|
</gt>
|
||||||
|
</product>
|
||||||
|
</or>
|
||||||
|
</function>
|
||||||
|
</fcs_function>
|
||||||
|
|
||||||
|
<fcs_function name="ground/left-tyre-smoke-ground-effect-speed-kt">
|
||||||
|
<function>
|
||||||
|
<or>
|
||||||
|
<property>/gear/gear[1]/tyre-smoke</property>
|
||||||
|
<product>
|
||||||
|
<property>/gear/gear[1]/wow</property>
|
||||||
|
<gt>
|
||||||
|
<property>/velocities/groundspeed-kt</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</gt>
|
||||||
|
<gt>
|
||||||
|
<property>/fdm/jsbsim/ground/rolling_friction-factor</property>
|
||||||
|
<value>1</value>
|
||||||
|
</gt>
|
||||||
|
</product>
|
||||||
|
</or>
|
||||||
|
</function>
|
||||||
|
</fcs_function>
|
||||||
|
|
||||||
|
<fcs_function name="ground/right-tyre-smoke-ground-effect-speed-kt">
|
||||||
|
<function>
|
||||||
|
<or>
|
||||||
|
<property>/gear/gear[2]/tyre-smoke</property>
|
||||||
|
<product>
|
||||||
|
<property>/gear/gear[2]/wow</property>
|
||||||
|
<gt>
|
||||||
|
<property>/velocities/groundspeed-kt</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</gt>
|
||||||
|
<gt>
|
||||||
|
<property>/fdm/jsbsim/ground/rolling_friction-factor</property>
|
||||||
|
<value>1</value>
|
||||||
|
</gt>
|
||||||
|
</product>
|
||||||
|
</or>
|
||||||
|
</function>
|
||||||
|
</fcs_function>
|
||||||
|
|
||||||
|
</channel>
|
||||||
|
|
||||||
</system>
|
</system>
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -155,6 +155,26 @@
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<name>Engine Fuel Flow</name>
|
||||||
|
<type>gain</type>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/engines/active-engine</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
</condition>
|
||||||
|
<property>/engines/engine[1]/fuel-flow-gph</property>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<property>/engines/engine[0]/fuel-flow-gph</property>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>/engines/active-engine/fuel-flow-gph</property>
|
||||||
|
</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Engine EGT Norm</name>
|
<name>Engine EGT Norm</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
|
@ -312,7 +332,7 @@
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
</input>
|
</input>
|
||||||
<input>
|
<input>
|
||||||
<value>0.0</value>
|
<property>/controls/engines/engine[1]/throttle</property>
|
||||||
</input>
|
</input>
|
||||||
<output>
|
<output>
|
||||||
<property>/controls/engines/engine[0]/throttle</property>
|
<property>/controls/engines/engine[0]/throttle</property>
|
||||||
|
|
|
@ -7,56 +7,56 @@
|
||||||
<property type="string">/velocities/groundspeed-kt</property>
|
<property type="string">/velocities/groundspeed-kt</property>
|
||||||
</signal>
|
</signal>
|
||||||
|
|
||||||
<!-- Gear smoke and spark-->
|
<!-- Gear smoke and spark-->
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/nose-gear-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/nose-gear-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/left-gear-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/left-gear-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/right-gear-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/right-gear-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
|
|
||||||
<!-- Wing smoke and spark-->
|
<!-- Wing smoke and spark-->
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/left-wing-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/left-wing-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/right-wing-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/right-wing-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
|
|
||||||
<!-- Tail smoke and spark-->
|
<!-- Tail smoke and spark-->
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/tail-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/tail-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
|
|
||||||
<!-- Off Road Tyre smoke-->
|
<!-- Off Road Tyre smoke-->
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/nose-tyre-smoke-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/nose-tyre-smoke-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/left-tyre-smoke-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/left-tyre-smoke-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/ground/right-tyre-smoke-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/ground/right-tyre-smoke-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
|
|
||||||
<!-- Pontoon smoke and spark-->
|
<!-- Pontoon smoke and spark-->
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/hydro/left-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/hydro/left-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
<signal>
|
<signal>
|
||||||
<type>float</type>
|
<type>float</type>
|
||||||
<property type="string">/fdm/jsbsim/hydro/right-ground-effect-speed-kt-actual</property>
|
<property type="string">/fdm/jsbsim/hydro/right-ground-effect-speed-kt-actual</property>
|
||||||
</signal>
|
</signal>
|
||||||
|
|
|
@ -1,137 +1,136 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
***********************************************************************************
|
***********************************************************************************
|
||||||
c172p, June 2015
|
c172p, June 2015
|
||||||
Fuel system for 2 different engines at choice, JSBSim FDM
|
Fuel system for 2 different engines at choice, JSBSim FDM
|
||||||
***********************************************************************************
|
***********************************************************************************
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<system name="fuel">
|
<system name="fuel">
|
||||||
|
|
||||||
<!-- *********************************************************************************** -->
|
<!-- *********************************************************************************** -->
|
||||||
<!-- Main tanks: 0 and 1 -->
|
<!-- Main tanks: 0 and 1 -->
|
||||||
<!-- Collector Tanks: 2 and 3, constant-level intermediate float chambers -->
|
<!-- Collector Tanks: 2 and 3, constant-level intermediate float chambers -->
|
||||||
<!-- Collector Tank 2: engine 0, Collector Tank 3: engine 1 -->
|
<!-- Collector Tank 2: engine 0, Collector Tank 3: engine 1 -->
|
||||||
<!-- Fuel Flow Rates in pounds per second -->
|
<!-- Fuel Flow Rates in pounds per second -->
|
||||||
<!-- *********************************************************************************** -->
|
<!-- *********************************************************************************** -->
|
||||||
|
|
||||||
<channel name="Float Chamber Selection">
|
<channel name="Float Chamber Selection">
|
||||||
<!-- Give tank[2] priority if 160 HP engine is used -->
|
<!-- Give tank[2] priority if 160 HP engine is used -->
|
||||||
<switch>
|
<switch name="Float Chamber 160 HP Priority">
|
||||||
<output>propulsion/tank[2]/priority</output>
|
<output>propulsion/tank[2]/priority</output>
|
||||||
<default value="0"/>
|
<default value="0"/>
|
||||||
<test logic="AND" value="1">
|
<test logic="AND" value="1">
|
||||||
/controls/engines/active-engine EQ 0
|
/controls/engines/active-engine EQ 0
|
||||||
/engines/active-engine/killed EQ 0
|
/engines/active-engine/killed EQ 0
|
||||||
</test>
|
</test>
|
||||||
</switch>
|
</switch>
|
||||||
|
|
||||||
<!-- Give tank[3] priority if 180 HP engine is used -->
|
<!-- Give tank[3] priority if 180 HP engine is used -->
|
||||||
<switch>
|
<switch name="Float Chamber 180 HP Priority">
|
||||||
<output>propulsion/tank[3]/priority</output>
|
<output>propulsion/tank[3]/priority</output>
|
||||||
<default value="0"/>
|
<default value="0"/>
|
||||||
<test logic="AND" value="1">
|
<test logic="AND" value="1">
|
||||||
/controls/engines/active-engine EQ 1
|
/controls/engines/active-engine EQ 1
|
||||||
/engines/active-engine/killed EQ 0
|
/engines/active-engine/killed EQ 0
|
||||||
</test>
|
</test>
|
||||||
</switch>
|
</switch>
|
||||||
</channel>
|
</channel>
|
||||||
|
|
||||||
<!-- ****************************************************** -->
|
<!-- ****************************************************** -->
|
||||||
<!-- Collector Tank 2 level-maintenance -->
|
<!-- Collector Tank 2 level-maintenance -->
|
||||||
<!-- ****************************************************** -->
|
<!-- ****************************************************** -->
|
||||||
<channel name="To Tank2">
|
<channel name="To Tank2">
|
||||||
<!-- from Tank 0 (to Collector Tank 2) -->
|
<!-- from Tank 0 (to Collector Tank 2) -->
|
||||||
<switch name="fuel/from-tank0-to-tank2">
|
<switch name="fuel/from-tank0-to-tank2">
|
||||||
<default value="0"/>
|
<default value="0"/>
|
||||||
<test logic="AND" value="0.1">
|
<test logic="AND" value="0.1">
|
||||||
propulsion/tank[0]/priority EQ 1
|
propulsion/tank[0]/priority EQ 1
|
||||||
propulsion/tank[0]/contents-lbs GT 0
|
propulsion/tank[0]/contents-lbs GT 0
|
||||||
/consumables/fuel/tank[2]/level-lbs LT 0.05
|
/consumables/fuel/tank[2]/level-lbs LT 0.05
|
||||||
propulsion/tank[2]/priority EQ 1
|
propulsion/tank[2]/priority EQ 1
|
||||||
accelerations/Nz GE 0
|
accelerations/Nz GE 0
|
||||||
</test>
|
</test>
|
||||||
</switch>
|
</switch>
|
||||||
|
|
||||||
<!-- from Tank 1 (to Collector Tank 2) -->
|
<!-- from Tank 1 (to Collector Tank 2) -->
|
||||||
<switch name="fuel/from-tank1-to-tank2">
|
<switch name="fuel/from-tank1-to-tank2">
|
||||||
<default value="0"/>
|
<default value="0"/>
|
||||||
<test logic="AND" value="0.1">
|
<test logic="AND" value="0.1">
|
||||||
propulsion/tank[1]/priority EQ 1
|
propulsion/tank[1]/priority EQ 1
|
||||||
propulsion/tank[1]/contents-lbs GT 0
|
propulsion/tank[1]/contents-lbs GT 0
|
||||||
/consumables/fuel/tank[2]/level-lbs LT 0.05
|
/consumables/fuel/tank[2]/level-lbs LT 0.05
|
||||||
propulsion/tank[2]/priority EQ 1
|
propulsion/tank[2]/priority EQ 1
|
||||||
accelerations/Nz GE 0
|
accelerations/Nz GE 0
|
||||||
</test>
|
</test>
|
||||||
</switch>
|
</switch>
|
||||||
</channel>
|
</channel>
|
||||||
|
|
||||||
<!-- Total from Tank 0 and Tank 1 to Collector Tank 2 -->
|
<!-- Total from Tank 0 and Tank 1 to Collector Tank 2 -->
|
||||||
<channel name="Total flow rate into tank 2">
|
<channel name="Total flow rate into tank 2">
|
||||||
<summer name="tank0 and 1 to tank2">
|
<summer name="tank0 and 1 to tank2">
|
||||||
<input>fuel/from-tank0-to-tank2</input>
|
<input>fuel/from-tank0-to-tank2</input>
|
||||||
<input>fuel/from-tank1-to-tank2</input>
|
<input>fuel/from-tank1-to-tank2</input>
|
||||||
<output>propulsion/tank[2]/external-flow-rate-pps</output>
|
<output>propulsion/tank[2]/external-flow-rate-pps</output>
|
||||||
</summer>
|
</summer>
|
||||||
</channel>
|
</channel>
|
||||||
|
|
||||||
<!-- ****************************************************** -->
|
<!-- ****************************************************** -->
|
||||||
<!-- Collector Tank 3 level maintenance -->
|
<!-- Collector Tank 3 level maintenance -->
|
||||||
<!-- ****************************************************** -->
|
<!-- ****************************************************** -->
|
||||||
<channel name="To Tank3">
|
|
||||||
<!-- from Tank 0 (to Collector Tank 3) -->
|
<channel name="To Tank3">
|
||||||
<switch name="fuel/from-tank0-to-tank3">
|
<!-- from Tank 0 (to Collector Tank 3) -->
|
||||||
<default value="0"/>
|
<switch name="fuel/from-tank0-to-tank3">
|
||||||
<test logic="AND" value="0.1">
|
<default value="0"/>
|
||||||
propulsion/tank[0]/priority EQ 1
|
<test logic="AND" value="0.1">
|
||||||
propulsion/tank[0]/contents-lbs GT 0
|
propulsion/tank[0]/priority EQ 1
|
||||||
/consumables/fuel/tank[3]/level-lbs LT 0.05
|
propulsion/tank[0]/contents-lbs GT 0
|
||||||
propulsion/tank[3]/priority EQ 1
|
/consumables/fuel/tank[3]/level-lbs LT 0.05
|
||||||
accelerations/Nz GE 0
|
propulsion/tank[3]/priority EQ 1
|
||||||
</test>
|
accelerations/Nz GE 0
|
||||||
</switch>
|
</test>
|
||||||
|
</switch>
|
||||||
<!-- from Tank 1 (to Collector Tank 3) Fuel Flow Rate in pps -->
|
|
||||||
<switch name="fuel/from-tank1-to-tank3">
|
<!-- from Tank 1 (to Collector Tank 3) Fuel Flow Rate in pps -->
|
||||||
<default value="0"/>
|
<switch name="fuel/from-tank1-to-tank3">
|
||||||
<test logic="AND" value="0.1">
|
<default value="0"/>
|
||||||
propulsion/tank[1]/priority EQ 1
|
<test logic="AND" value="0.1">
|
||||||
propulsion/tank[1]/contents-lbs GT 0
|
propulsion/tank[1]/priority EQ 1
|
||||||
/consumables/fuel/tank[3]/level-lbs LT 0.05
|
propulsion/tank[1]/contents-lbs GT 0
|
||||||
propulsion/tank[3]/priority EQ 1
|
/consumables/fuel/tank[3]/level-lbs LT 0.05
|
||||||
accelerations/Nz GE 0
|
propulsion/tank[3]/priority EQ 1
|
||||||
</test>
|
accelerations/Nz GE 0
|
||||||
</switch>
|
</test>
|
||||||
</channel>
|
</switch>
|
||||||
|
</channel>
|
||||||
<!-- Total from Tank 0 and Tank 1 to Collector Tank 3 -->
|
|
||||||
<channel name="Total flow rate into tank 3">
|
<!-- Total from Tank 0 and Tank 1 to Collector Tank 3 -->
|
||||||
<summer name="tank0 and 1 to tank3">
|
<channel name="Total flow rate into tank 3">
|
||||||
<input>fuel/from-tank0-to-tank3</input>
|
<summer name="tank0 and 1 to tank3">
|
||||||
<input>fuel/from-tank1-to-tank3</input>
|
<input>fuel/from-tank0-to-tank3</input>
|
||||||
<output>propulsion/tank[3]/external-flow-rate-pps</output>
|
<input>fuel/from-tank1-to-tank3</input>
|
||||||
</summer>
|
<output>propulsion/tank[3]/external-flow-rate-pps</output>
|
||||||
</channel>
|
</summer>
|
||||||
|
</channel>
|
||||||
|
|
||||||
<!-- *********************************************************************************** -->
|
<!-- ****************************************************** -->
|
||||||
<!-- FLOW RATE from each MAIN TANK (consumption) -->
|
<!-- FLOW RATE from each MAIN TANK (consumption) -->
|
||||||
<!-- *********************************************************************************** -->
|
<!-- ****************************************************** -->
|
||||||
|
|
||||||
<channel name="Total flow rates">
|
<channel name="Total flow rates">
|
||||||
<summer name="fuel/tank0-flow-rate">
|
<summer name="fuel/tank0-flow-rate">
|
||||||
<input>-fuel/from-tank0-to-tank2</input>
|
<input>-fuel/from-tank0-to-tank2</input>
|
||||||
<input>-fuel/from-tank0-to-tank3</input>
|
<input>-fuel/from-tank0-to-tank3</input>
|
||||||
<output>propulsion/tank[0]/external-flow-rate-pps</output>
|
<output>propulsion/tank[0]/external-flow-rate-pps</output>
|
||||||
</summer>
|
</summer>
|
||||||
|
|
||||||
<summer name="fuel/tank1-flow-rate">
|
<summer name="fuel/tank1-flow-rate">
|
||||||
<input>-fuel/from-tank1-to-tank2</input>
|
<input>-fuel/from-tank1-to-tank2</input>
|
||||||
<input>-fuel/from-tank1-to-tank3</input>
|
<input>-fuel/from-tank1-to-tank3</input>
|
||||||
<output>propulsion/tank[1]/external-flow-rate-pps</output>
|
<output>propulsion/tank[1]/external-flow-rate-pps</output>
|
||||||
</summer>
|
</summer>
|
||||||
</channel>
|
</channel>
|
||||||
|
|
||||||
</system>
|
</system>
|
||||||
|
|
||||||
|
|
|
@ -1,28 +1,29 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<!-- (c) 2015, wlbragg. http://forum.flightgear.org/viewtopic.php?f=4&t=25157&start=75#p232085
|
<!-- (c) 2015, wlbragg. http://forum.flightgear.org/viewtopic.php?f=4&t=25157&start=75#p232085
|
||||||
Under the GPL. Used by shadows under ALS -->
|
Under the GPL. Used by shadows under ALS -->
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<gain>0.3048</gain>
|
<gain>0.3048</gain>
|
||||||
<input>/position/altitude-agl-ft</input>
|
<input>/position/altitude-agl-ft</input>
|
||||||
<reference>-.75</reference>
|
<reference>-.75</reference>
|
||||||
<output>/position/gear-agl-m</output>
|
<output>/position/gear-agl-m</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<gain>0.3048</gain>
|
<gain>0.3048</gain>
|
||||||
<input>/position/altitude-agl-ft</input>
|
<input>/position/altitude-agl-ft</input>
|
||||||
<output>/position/altitude-agl-m</output>
|
<output>/position/altitude-agl-m</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<!-- These filters are used to passthrough a value in non-replay mode.
|
<!-- These filters are used to passthrough a value in non-replay mode.
|
||||||
In replay mode, the value from the flight recorder is used.
|
In replay mode, the value from the flight recorder is used.
|
||||||
This filter is needed because JSBSim wins over the flight recorder.
|
This filter is needed because JSBSim wins over the flight recorder.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Stall Horn Volume</name>
|
<name>Stall Horn Volume</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
|
@ -95,7 +96,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Left Ground Effect for Pontoons</name>
|
<name>Left Ground Effect for Pontoons</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -113,7 +114,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Right Ground Effect for Pontoons</name>
|
<name>Right Ground Effect for Pontoons</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -131,7 +132,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Tail Ground Effect</name>
|
<name>Tail Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -149,7 +150,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Left Wing Ground Effect</name>
|
<name>Left Wing Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -167,7 +168,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Right Wing Ground Effect</name>
|
<name>Right Wing Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -185,7 +186,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Nose Gear Ground Effect</name>
|
<name>Nose Gear Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -203,7 +204,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Left Gear Ground Effect</name>
|
<name>Left Gear Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -221,7 +222,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Right Gear Ground Effect</name>
|
<name>Right Gear Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -239,7 +240,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Nose Off Road Tyre Smoke Ground Effect</name>
|
<name>Nose Off Road Tyre Smoke Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -257,7 +258,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Left Off Road Tyre Smoke Ground Effect</name>
|
<name>Left Off Road Tyre Smoke Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
@ -275,7 +276,7 @@ Under the GPL. Used by shadows under ALS -->
|
||||||
</output>
|
</output>
|
||||||
</filter>
|
</filter>
|
||||||
|
|
||||||
<filter>
|
<filter>
|
||||||
<name>Right Off Road Tyre Smoke Ground Effect</name>
|
<name>Right Off Road Tyre Smoke Ground Effect</name>
|
||||||
<type>gain</type>
|
<type>gain</type>
|
||||||
<enable>
|
<enable>
|
||||||
|
|
|
@ -25,160 +25,160 @@ file, these values will be used (they are hardcoded).
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
<adf>
|
<adf>
|
||||||
<name>adf</name>
|
<name>adf</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</adf>
|
</adf>
|
||||||
|
|
||||||
<airspeed-indicator>
|
<airspeed-indicator>
|
||||||
<name>airspeed-indicator</name>
|
<name>airspeed-indicator</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<total-pressure>/systems/pitot/total-pressure-inhg</total-pressure>
|
<total-pressure>/systems/pitot/total-pressure-inhg</total-pressure>
|
||||||
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
||||||
</airspeed-indicator>
|
</airspeed-indicator>
|
||||||
|
|
||||||
<altimeter>
|
<altimeter>
|
||||||
<name>altimeter</name>
|
<name>altimeter</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
||||||
<quantum>0</quantum>
|
<quantum>0</quantum>
|
||||||
<tau>0</tau>
|
<tau>0</tau>
|
||||||
</altimeter>
|
</altimeter>
|
||||||
|
|
||||||
<attitude-indicator>
|
<attitude-indicator>
|
||||||
<name>attitude-indicator</name>
|
<name>attitude-indicator</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<suction>/systems/vacuum/suction-inhg</suction>
|
<suction>/systems/vacuum/suction-inhg</suction>
|
||||||
</attitude-indicator>
|
</attitude-indicator>
|
||||||
|
|
||||||
<clock>
|
<clock>
|
||||||
<name>clock</name>
|
<name>clock</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</clock>
|
</clock>
|
||||||
|
|
||||||
<dme>
|
<dme>
|
||||||
<name>dme</name>
|
<name>dme</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</dme>
|
</dme>
|
||||||
|
|
||||||
<altimeter>
|
<altimeter>
|
||||||
<name>encoder</name>
|
<name>encoder</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
||||||
<quantum>10</quantum>
|
<quantum>10</quantum>
|
||||||
<tau>0.1</tau>
|
<tau>0.1</tau>
|
||||||
</altimeter>
|
</altimeter>
|
||||||
|
|
||||||
<marker-beacon>
|
<marker-beacon>
|
||||||
<name>marker-beacon</name>
|
<name>marker-beacon</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</marker-beacon>
|
</marker-beacon>
|
||||||
|
|
||||||
<heading-indicator>
|
<heading-indicator>
|
||||||
<name>heading-indicator</name>
|
<name>heading-indicator</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<suction>/systems/vacuum/suction-inhg</suction>
|
<suction>/systems/vacuum/suction-inhg</suction>
|
||||||
</heading-indicator>
|
</heading-indicator>
|
||||||
|
|
||||||
<magnetic-compass>
|
<magnetic-compass>
|
||||||
<name>magnetic-compass</name>
|
<name>magnetic-compass</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<!-- use either deviation property or deviation table for compass deviation -->
|
<!-- use either deviation property or deviation table for compass deviation -->
|
||||||
<!--deviation>/instrumentation/magnetic-compass/deviation-deg</deviation-->
|
<!--deviation>/instrumentation/magnetic-compass/deviation-deg</deviation-->
|
||||||
<deviation>
|
<deviation>
|
||||||
<table>
|
<table>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>0</ind>
|
<ind>0</ind>
|
||||||
<dep>0</dep>
|
<dep>0</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>30</ind>
|
<ind>30</ind>
|
||||||
<dep>2</dep>
|
<dep>2</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>60</ind>
|
<ind>60</ind>
|
||||||
<dep>3</dep>
|
<dep>3</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>90</ind>
|
<ind>90</ind>
|
||||||
<dep>4</dep>
|
<dep>4</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>120</ind>
|
<ind>120</ind>
|
||||||
<dep>3</dep>
|
<dep>3</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>150</ind>
|
<ind>150</ind>
|
||||||
<dep>2</dep>
|
<dep>2</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>180</ind>
|
<ind>180</ind>
|
||||||
<dep>0</dep>
|
<dep>0</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>210</ind>
|
<ind>210</ind>
|
||||||
<dep>-2</dep>
|
<dep>-2</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>240</ind>
|
<ind>240</ind>
|
||||||
<dep>-3</dep>
|
<dep>-3</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>270</ind>
|
<ind>270</ind>
|
||||||
<dep>-4</dep>
|
<dep>-4</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>300</ind>
|
<ind>300</ind>
|
||||||
<dep>-3</dep>
|
<dep>-3</dep>
|
||||||
</entry>
|
</entry>
|
||||||
<entry>
|
<entry>
|
||||||
<ind>330</ind>
|
<ind>330</ind>
|
||||||
<dep>-2</dep>
|
<dep>-2</dep>
|
||||||
</entry>
|
</entry>
|
||||||
</table>
|
</table>
|
||||||
</deviation>
|
</deviation>
|
||||||
</magnetic-compass>
|
</magnetic-compass>
|
||||||
|
|
||||||
<comm-radio>
|
<comm-radio>
|
||||||
<name>comm</name>
|
<name>comm</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</comm-radio>
|
</comm-radio>
|
||||||
|
|
||||||
<comm-radio>
|
<comm-radio>
|
||||||
<name>comm</name>
|
<name>comm</name>
|
||||||
<number>1</number>
|
<number>1</number>
|
||||||
</comm-radio>
|
</comm-radio>
|
||||||
|
|
||||||
<nav-radio>
|
<nav-radio>
|
||||||
<name>nav</name>
|
<name>nav</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</nav-radio>
|
</nav-radio>
|
||||||
|
|
||||||
<nav-radio>
|
<nav-radio>
|
||||||
<name>nav</name>
|
<name>nav</name>
|
||||||
<number>1</number>
|
<number>1</number>
|
||||||
</nav-radio>
|
</nav-radio>
|
||||||
|
|
||||||
<slip-skid-ball>
|
<slip-skid-ball>
|
||||||
<name>slip-skid-ball</name>
|
<name>slip-skid-ball</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</slip-skid-ball>
|
</slip-skid-ball>
|
||||||
|
|
||||||
<transponder>
|
<transponder>
|
||||||
<name>transponder</name>
|
<name>transponder</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<mode-c-altitude>/instrumentation/encoder/mode-c-alt-ft</mode-c-altitude>
|
<mode-c-altitude>/instrumentation/encoder/mode-c-alt-ft</mode-c-altitude>
|
||||||
</transponder>
|
</transponder>
|
||||||
|
|
||||||
<turn-indicator>
|
<turn-indicator>
|
||||||
<name>turn-indicator</name>
|
<name>turn-indicator</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</turn-indicator>
|
</turn-indicator>
|
||||||
|
|
||||||
<vertical-speed-indicator>
|
<vertical-speed-indicator>
|
||||||
<name>vertical-speed-indicator</name>
|
<name>vertical-speed-indicator</name>
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
<static-pressure>/systems/static/pressure-inhg</static-pressure>
|
||||||
</vertical-speed-indicator>
|
</vertical-speed-indicator>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
61
Aircraft/c172p/Systems/pax.xml
Normal file
61
Aircraft/c172p/Systems/pax.xml
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Copyright (c) 2015 onox
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<PropertyList>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<name>Co-Pilot Present</name>
|
||||||
|
<input>
|
||||||
|
<greater-than>
|
||||||
|
<property>payload/weight[1]/weight-lb</property>
|
||||||
|
<value>100.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>pax/co-pilot/present</property>
|
||||||
|
</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<name>Left Passenger Present</name>
|
||||||
|
<input>
|
||||||
|
<greater-than>
|
||||||
|
<property>payload/weight[2]/weight-lb</property>
|
||||||
|
<value>100.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>pax/left-passenger/present</property>
|
||||||
|
</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
|
<logic>
|
||||||
|
<name>Right Passenger Present</name>
|
||||||
|
<input>
|
||||||
|
<greater-than>
|
||||||
|
<property>payload/weight[3]/weight-lb</property>
|
||||||
|
<value>100.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</input>
|
||||||
|
<output>
|
||||||
|
<property>pax/right-passenger/present</property>
|
||||||
|
</output>
|
||||||
|
</logic>
|
||||||
|
|
||||||
|
</PropertyList>
|
|
@ -24,7 +24,7 @@
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
<!-- null electrical system path here so we can use a nasal based -->
|
<!-- null electrical system path here so we can use a nasal based -->
|
||||||
<!-- model defined later in the nasal section of this file. -->
|
<!-- model defined later in the nasal section of this file. -->
|
||||||
<path></path>
|
<path/>
|
||||||
</electrical>
|
</electrical>
|
||||||
|
|
||||||
<pitot>
|
<pitot>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<name>Setting the Altimeter</name>
|
|
||||||
<description>
|
<name>Setting the Altimeter</name>
|
||||||
|
|
||||||
|
<description>
|
||||||
The Altimeter on an aircraft works using air pressure. This varies due to weather conditions, so the altimeter must be set regularly to a known value.
|
The Altimeter on an aircraft works using air pressure. This varies due to weather conditions, so the altimeter must be set regularly to a known value.
|
||||||
|
|
||||||
Having the correct altimeter setting is important. As well as helping pilots to avoid any high terrain, it means that aircraft can be separated by altitude and not hit each other. This is particular important in busy airspace.
|
Having the correct altimeter setting is important. As well as helping pilots to avoid any high terrain, it means that aircraft can be separated by altitude and not hit each other. This is particular important in busy airspace.
|
||||||
|
@ -8,177 +12,178 @@ Having the correct altimeter setting is important. As well as helping pilots to
|
||||||
The source of this altimeter setting varies. At high altitudes, a standard pressure is used. At lower levels, and area setting is used, and around airports, the current airport setting is used.
|
The source of this altimeter setting varies. At high altitudes, a standard pressure is used. At lower levels, and area setting is used, and around airports, the current airport setting is used.
|
||||||
|
|
||||||
This tutorial will teach you how to set the altimeter based on the ATIS (Automatic Terminal Information Service) for Livermore Municipal airport.
|
This tutorial will teach you how to set the altimeter based on the ATIS (Automatic Terminal Information Service) for Livermore Municipal airport.
|
||||||
</description>
|
</description>
|
||||||
<audio-dir>Tutorials/altimeter</audio-dir>
|
|
||||||
<timeofday>morning</timeofday>
|
|
||||||
<presets>
|
|
||||||
<airport-id>KLVK</airport-id>
|
|
||||||
<on-ground>1</on-ground>
|
|
||||||
<runway>12</runway>
|
|
||||||
<altitude-ft>-9999</altitude-ft>
|
|
||||||
<latitude-deg>37.6952</latitude-deg>
|
|
||||||
<longitude-deg>-121.8167</longitude-deg>
|
|
||||||
<heading-deg>175.0</heading-deg>
|
|
||||||
<airspeed-kt>0</airspeed-kt>
|
|
||||||
<glideslope-deg>0</glideslope-deg>
|
|
||||||
<offset-azimuth-deg>0</offset-azimuth-deg>
|
|
||||||
<offset-distance-nm>0</offset-distance-nm>
|
|
||||||
</presets>
|
|
||||||
|
|
||||||
<init>
|
<audio-dir>Tutorials/altimeter</audio-dir>
|
||||||
<set>
|
<timeofday>morning</timeofday>
|
||||||
<property>/controls/gear/brake-parking</property>
|
|
||||||
<value>1</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/flight/flaps</property>
|
|
||||||
<value>0.0</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/switches/magnetos</property>
|
|
||||||
<value>0</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
|
||||||
<value>0.0</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/engines/active-engine/running</property>
|
|
||||||
<value>false</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
|
||||||
<value>340</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/environment/weather-scenario</property>
|
|
||||||
<value>Fair weather</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/flight/elevator-trim</property>
|
|
||||||
<value>0.17</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/instrumentation/comm[0]/frequencies/selected-mhz</property>
|
|
||||||
<value>119.650</value>
|
|
||||||
</set>
|
|
||||||
</init>
|
|
||||||
|
|
||||||
<step>
|
<presets>
|
||||||
<message>In this lesson, you'll learn how to set the altimeter to the Livermore ATIS. I've already
|
<airport-id>KLVK</airport-id>
|
||||||
|
<on-ground>1</on-ground>
|
||||||
|
<runway>12</runway>
|
||||||
|
<altitude-ft>-9999</altitude-ft>
|
||||||
|
<latitude-deg>37.6952</latitude-deg>
|
||||||
|
<longitude-deg>-121.8167</longitude-deg>
|
||||||
|
<heading-deg>175.0</heading-deg>
|
||||||
|
<airspeed-kt>0</airspeed-kt>
|
||||||
|
<glideslope-deg>0</glideslope-deg>
|
||||||
|
<offset-azimuth-deg>0</offset-azimuth-deg>
|
||||||
|
<offset-distance-nm>0</offset-distance-nm>
|
||||||
|
</presets>
|
||||||
|
|
||||||
|
<init>
|
||||||
|
<set>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>1</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/flight/flaps</property>
|
||||||
|
<value>0.0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/magnetos</property>
|
||||||
|
<value>0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
|
<value>0.0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/engines/active-engine/running</property>
|
||||||
|
<value>false</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
||||||
|
<value>340</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/environment/weather-scenario</property>
|
||||||
|
<value>Fair weather</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/flight/elevator-trim</property>
|
||||||
|
<value>0.17</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/instrumentation/comm[0]/frequencies/selected-mhz</property>
|
||||||
|
<value>119.650</value>
|
||||||
|
</set>
|
||||||
|
</init>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>In this lesson, you'll learn how to set the altimeter to the Livermore ATIS. I've already
|
||||||
set the radio to the correct frequency - 119.65</message>
|
set the radio to the correct frequency - 119.65</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Listen to the ATIS message. If you cannot hear it, check the Sound Configuration item in the File menu.</message>
|
<message>Listen to the ATIS message. If you cannot hear it, check the Sound Configuration item in the File menu.</message>
|
||||||
<wait>20</wait>
|
<wait>20</wait>
|
||||||
<set>
|
<set>
|
||||||
<property>/instrumentation/kma20/com1</property>
|
<property>/instrumentation/kma20/com1</property>
|
||||||
<value>-1</value>
|
<value>-1</value>
|
||||||
</set>
|
</set>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>The ATIS message said the altimeter setting was 30.13.
|
<message>The ATIS message said the altimeter setting was 30.13.
|
||||||
We can set this on the altimeter by using the small insert window on the right side.
|
We can set this on the altimeter by using the small insert window on the right side.
|
||||||
Alternatively we can adjust the altimeter so that it matches the altitude of Livermore - 380ft.
|
Alternatively we can adjust the altimeter so that it matches the altitude of Livermore - 380ft.
|
||||||
</message>
|
</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
<view>
|
<view>
|
||||||
<heading-offset-deg>353.8</heading-offset-deg>
|
<heading-offset-deg>353.8</heading-offset-deg>
|
||||||
<pitch-offset-deg>-20.3</pitch-offset-deg>
|
<pitch-offset-deg>-20.3</pitch-offset-deg>
|
||||||
<roll-offset-deg>0.0</roll-offset-deg>
|
<roll-offset-deg>0.0</roll-offset-deg>
|
||||||
<x-offset-m>-0.2</x-offset-m>
|
<x-offset-m>-0.2</x-offset-m>
|
||||||
<y-offset-m>0.3</y-offset-m>
|
<y-offset-m>0.3</y-offset-m>
|
||||||
<z-offset-m>0.4</z-offset-m>
|
<z-offset-m>0.4</z-offset-m>
|
||||||
<field-of-view>15.1</field-of-view>
|
<field-of-view>15.1</field-of-view>
|
||||||
</view>
|
</view>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>To adjust the altimeter directly, use the knob on the bottom left. Click on the right
|
<message>To adjust the altimeter directly, use the knob on the bottom left. Click on the right
|
||||||
side to increase the altitude, and left to decrease. Alternatively, use your mouse scroll wheel.
|
side to increase the altitude, and left to decrease. Alternatively, use your mouse scroll wheel.
|
||||||
</message>
|
</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
<view>
|
<view>
|
||||||
<heading-offset-deg>353.8</heading-offset-deg>
|
<heading-offset-deg>353.8</heading-offset-deg>
|
||||||
<pitch-offset-deg>-20.3</pitch-offset-deg>
|
<pitch-offset-deg>-20.3</pitch-offset-deg>
|
||||||
<roll-offset-deg>0.0</roll-offset-deg>
|
<roll-offset-deg>0.0</roll-offset-deg>
|
||||||
<x-offset-m>-0.2</x-offset-m>
|
<x-offset-m>-0.2</x-offset-m>
|
||||||
<y-offset-m>0.3</y-offset-m>
|
<y-offset-m>0.3</y-offset-m>
|
||||||
<z-offset-m>0.4</z-offset-m>
|
<z-offset-m>0.4</z-offset-m>
|
||||||
<field-of-view>15.1</field-of-view>
|
<field-of-view>15.1</field-of-view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<marker>
|
<marker>
|
||||||
<x-m>-0.3525</x-m>
|
<x-m>-0.3525</x-m>
|
||||||
<y-m>-0.1640</y-m>
|
<y-m>-0.1640</y-m>
|
||||||
<z-m>0.0409</z-m>
|
<z-m>0.0409</z-m>
|
||||||
<scale>0.8756</scale>
|
<scale>0.8756</scale>
|
||||||
</marker>
|
</marker>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Set the altimeter to 380 feet, or the pressure setting to 30.13 inHG.</message>
|
<message>Set the altimeter to 380 feet, or the pressure setting to 30.13 inHG.</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
<view>
|
<view>
|
||||||
<heading-offset-deg>353.8</heading-offset-deg>
|
<heading-offset-deg>353.8</heading-offset-deg>
|
||||||
<pitch-offset-deg>-20.3</pitch-offset-deg>
|
<pitch-offset-deg>-20.3</pitch-offset-deg>
|
||||||
<roll-offset-deg>0.0</roll-offset-deg>
|
<roll-offset-deg>0.0</roll-offset-deg>
|
||||||
<x-offset-m>-0.2</x-offset-m>
|
<x-offset-m>-0.2</x-offset-m>
|
||||||
<y-offset-m>0.3</y-offset-m>
|
<y-offset-m>0.3</y-offset-m>
|
||||||
<z-offset-m>0.4</z-offset-m>
|
<z-offset-m>0.4</z-offset-m>
|
||||||
<field-of-view>15.1</field-of-view>
|
<field-of-view>15.1</field-of-view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<marker>
|
<marker>
|
||||||
<x-m>-0.3525</x-m>
|
<x-m>-0.3525</x-m>
|
||||||
<y-m>-0.1640</y-m>
|
<y-m>-0.1640</y-m>
|
||||||
<z-m>0.0409</z-m>
|
<z-m>0.0409</z-m>
|
||||||
<scale>0.8756</scale>
|
<scale>0.8756</scale>
|
||||||
</marker>
|
</marker>
|
||||||
|
|
||||||
<error>
|
<error>
|
||||||
<message>That's too low. Increase the altimeter setting or altitude.</message>
|
<message>That's too low. Increase the altimeter setting or altitude.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<less-than>
|
<less-than>
|
||||||
<property>/instrumentation/altimeter/setting-inhg</property>
|
<property>/instrumentation/altimeter/setting-inhg</property>
|
||||||
<value>30.12</value>
|
<value>30.12</value>
|
||||||
</less-than>
|
</less-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
|
|
||||||
<error>
|
<error>
|
||||||
<message>That's too high. Decrease the altimeter setting or altitude.</message>
|
<message>That's too high. Decrease the altimeter setting or altitude.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/instrumentation/altimeter/setting-inhg</property>
|
<property>/instrumentation/altimeter/setting-inhg</property>
|
||||||
<value>30.14</value>
|
<value>30.14</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/altimeter/setting-inhg</property>
|
||||||
|
<value>30.12</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/altimeter/setting-inhg</property>
|
||||||
|
<value>30.14</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
<exit>
|
<end>
|
||||||
<condition>
|
<message>Tutorial complete. If you set the pressure setting directly,
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/altimeter/setting-inhg</property>
|
|
||||||
<value>30.12</value>
|
|
||||||
</greater-than>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/altimeter/setting-inhg</property>
|
|
||||||
<value>30.14</value>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
<end>
|
|
||||||
<message>Tutorial complete. If you set the pressure setting directly,
|
|
||||||
you can double-check you've set the correct value by checking the current altitude.</message>
|
you can double-check you've set the correct value by checking the current altitude.</message>
|
||||||
</end>
|
</end>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,11 +1,15 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<tutorial include="startup.xml"/>
|
|
||||||
<tutorial include="taxiing.xml"/>
|
<tutorial include="startup.xml"/>
|
||||||
<tutorial include="runup.xml"/>
|
<tutorial include="taxiing.xml"/>
|
||||||
<tutorial include="radios.xml"/>
|
<tutorial include="runup.xml"/>
|
||||||
<tutorial include="altimeter.xml"/>
|
<tutorial include="radios.xml"/>
|
||||||
<tutorial include="takeoff.xml"/>
|
<tutorial include="altimeter.xml"/>
|
||||||
<tutorial include="landing.xml"/>
|
<tutorial include="takeoff.xml"/>
|
||||||
<tutorial include="pattern.xml"/>
|
<tutorial include="landing.xml"/>
|
||||||
<tutorial include="engine-failure.xml"/>
|
<tutorial include="pattern.xml"/>
|
||||||
|
<tutorial include="engine-failure.xml"/>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<name>Engine Failure</name>
|
|
||||||
<description>Engine failure is very rare in flight simulators, but a risk in real life.
|
<name>Engine Failure</name>
|
||||||
|
|
||||||
|
<description>Engine failure is very rare in flight simulators, but a risk in real life.
|
||||||
|
|
||||||
|
|
||||||
The tutorial starts with you cruising at 3500ft over the hills of San Francisco. A total engine failure will occur, with no possibility of restart - black smoke, chunks of metal pushed out of the cowling.
|
The tutorial starts with you cruising at 3500ft over the hills of San Francisco. A total engine failure will occur, with no possibility of restart - black smoke, chunks of metal pushed out of the cowling.
|
||||||
|
@ -11,229 +15,237 @@ The Cessna 172 glides at a ratio of 9:1 at a best glide speed of 65 kts IAS. The
|
||||||
|
|
||||||
Both KSFO (San Francisco International) and KHAF (Half Moon Bay) are within glide distance. In real life, you would opt for the larger of the two airports, but for an extra challenge, try to land at KHAF.
|
Both KSFO (San Francisco International) and KHAF (Half Moon Bay) are within glide distance. In real life, you would opt for the larger of the two airports, but for an extra challenge, try to land at KHAF.
|
||||||
</description>
|
</description>
|
||||||
<timeofday>dusk</timeofday>
|
|
||||||
<presets>
|
<timeofday>dusk</timeofday>
|
||||||
<airport-id>KHAF</airport-id>
|
<presets>
|
||||||
<on-ground>0</on-ground>
|
<airport-id>KHAF</airport-id>
|
||||||
<runway>30</runway>
|
<on-ground>0</on-ground>
|
||||||
<altitude-ft>3500</altitude-ft>
|
<runway>30</runway>
|
||||||
<latitude-deg>37.5</latitude-deg>
|
<altitude-ft>3500</altitude-ft>
|
||||||
<longitude-deg>-122.4</longitude-deg>
|
<latitude-deg>37.5</latitude-deg>
|
||||||
<heading-deg>010.0</heading-deg>
|
<longitude-deg>-122.4</longitude-deg>
|
||||||
<airspeed-kt>105.0</airspeed-kt>
|
<heading-deg>010.0</heading-deg>
|
||||||
<glideslope-deg>0</glideslope-deg>
|
<airspeed-kt>105.0</airspeed-kt>
|
||||||
<offset-azimuth-deg>0</offset-azimuth-deg>
|
<glideslope-deg>0</glideslope-deg>
|
||||||
<offset-distance-nm>0</offset-distance-nm>
|
<offset-azimuth-deg>0</offset-azimuth-deg>
|
||||||
<ndb-id>0</ndb-id>
|
<offset-distance-nm>0</offset-distance-nm>
|
||||||
<vor-id>0</vor-id>
|
<ndb-id>0</ndb-id>
|
||||||
<fix>0</fix>
|
<vor-id>0</vor-id>
|
||||||
</presets>
|
<fix>0</fix>
|
||||||
|
</presets>
|
||||||
<init>
|
|
||||||
<set>
|
<init>
|
||||||
<property>/controls/flight/flaps</property>
|
<set>
|
||||||
<value>0.0</value>
|
<property>/controls/flight/flaps</property>
|
||||||
</set>
|
<value>0.0</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/switches/magnetos</property>
|
<set>
|
||||||
<value>3</value>
|
<property>/controls/switches/magnetos</property>
|
||||||
</set>
|
<value>3</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
<set>
|
||||||
<value>0.5</value>
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
</set>
|
<value>0.5</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/switches/starter</property>
|
<set>
|
||||||
<value>true</value>
|
<property>/controls/switches/starter</property>
|
||||||
</set>
|
<value>true</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
<set>
|
||||||
<value>340</value>
|
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
||||||
</set>
|
<value>340</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/environment/weather-scenario</property>
|
<set>
|
||||||
<value>Fair weather</value>
|
<property>/environment/weather-scenario</property>
|
||||||
</set>
|
<value>Fair weather</value>
|
||||||
</init>
|
</set>
|
||||||
|
</init>
|
||||||
<step>
|
|
||||||
<message>We're happily cruising along, enjoying an evenings flight.</message>
|
<step>
|
||||||
<wait>10</wait>
|
<message>We're happily cruising along, enjoying an evenings flight.</message>
|
||||||
</step>
|
<wait>10</wait>
|
||||||
|
</step>
|
||||||
<step>
|
|
||||||
<message>Engine failure! Engine failure! Trim for a best glide speed of 65 knots.</message>
|
<step>
|
||||||
<set>
|
<message>Engine failure! Engine failure! Trim for a best glide speed of 65 knots.</message>
|
||||||
<property>/controls/switches/starter</property>
|
<set>
|
||||||
<value>false</value>
|
<property>/controls/switches/starter</property>
|
||||||
</set>
|
<value>false</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/engines/engine/faults/left-magneto-serviceable</property>
|
<set>
|
||||||
<value>false</value>
|
<property>/controls/engines/engine/faults/left-magneto-serviceable</property>
|
||||||
</set>
|
<value>false</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/engines/engine/faults/right-magneto-serviceable</property>
|
<set>
|
||||||
<value>false</value>
|
<property>/controls/engines/engine/faults/right-magneto-serviceable</property>
|
||||||
</set>
|
<value>false</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/engines/engine/faults/spark-plugs-serviceable</property>
|
<set>
|
||||||
<value>false</value>
|
<property>/controls/engines/engine/faults/spark-plugs-serviceable</property>
|
||||||
</set>
|
<value>false</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/switches/magnetos</property>
|
<set>
|
||||||
<value>0</value>
|
<property>/controls/switches/magnetos</property>
|
||||||
</set>
|
<value>0</value>
|
||||||
</step>
|
</set>
|
||||||
|
</step>
|
||||||
<step>
|
|
||||||
<message>Now look around and choose an airport, or emergency landing site. Stay at 65 knots.</message>
|
<step>
|
||||||
<set>
|
<message>Now look around and choose an airport, or emergency landing site. Stay at 65 knots.</message>
|
||||||
<property>/engines/active-engine/running</property>
|
<set>
|
||||||
<value>false</value>
|
<property>/engines/active-engine/running</property>
|
||||||
</set>
|
<value>false</value>
|
||||||
<error>
|
</set>
|
||||||
<message>You are too slow. You need to fly at 65 knots IAS for maximum glide.</message>
|
|
||||||
<condition>
|
<error>
|
||||||
<less-than>
|
<message>You are too slow. You need to fly at 65 knots IAS for maximum glide.</message>
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
<condition>
|
||||||
<value>62</value>
|
<less-than>
|
||||||
</less-than>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
</condition>
|
<value>62</value>
|
||||||
</error>
|
</less-than>
|
||||||
<error>
|
</condition>
|
||||||
<message>You are too fast. You need to fly at 65 knots IAS for maximum glide.</message>
|
</error>
|
||||||
<condition>
|
<error>
|
||||||
<greater-than>
|
<message>You are too fast. You need to fly at 65 knots IAS for maximum glide.</message>
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
<condition>
|
||||||
<value>69</value>
|
<greater-than>
|
||||||
</greater-than>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
</condition>
|
<value>69</value>
|
||||||
</error>
|
</greater-than>
|
||||||
<error>
|
</condition>
|
||||||
<message>Engine failure is currently simulated by switching off the magnetos.
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>Engine failure is currently simulated by switching off the magnetos.
|
||||||
Please switch them off again to continue the tutorial.</message>
|
Please switch them off again to continue the tutorial.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/controls/switches/magnetos</property>
|
<property>/controls/switches/magnetos</property>
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Start maneuvering towards your chosen emergency landing spot,
|
<message>Start maneuvering towards your chosen emergency landing spot,
|
||||||
keeping your speed at 65 knots IAS.</message>
|
keeping your speed at 65 knots IAS.</message>
|
||||||
<set>
|
<set>
|
||||||
<property>/engines/active-engine/running</property>
|
<property>/engines/active-engine/running</property>
|
||||||
<value>false</value>
|
<value>false</value>
|
||||||
</set>
|
</set>
|
||||||
<error>
|
|
||||||
<message>You are too slow. You need to fly at 65 knots IAS for maximum glide.</message>
|
<error>
|
||||||
<condition>
|
<message>You are too slow. You need to fly at 65 knots IAS for maximum glide.</message>
|
||||||
<less-than>
|
<condition>
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
<less-than>
|
||||||
<value>62</value>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
</less-than>
|
<value>62</value>
|
||||||
</condition>
|
</less-than>
|
||||||
</error>
|
</condition>
|
||||||
<error>
|
</error>
|
||||||
<message>You are too fast. You need to fly at 65 knots IAS for maximum glide.</message>
|
<error>
|
||||||
<condition>
|
<message>You are too fast. You need to fly at 65 knots IAS for maximum glide.</message>
|
||||||
<greater-than>
|
<condition>
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
<greater-than>
|
||||||
<value>69</value>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
</greater-than>
|
<value>69</value>
|
||||||
</condition>
|
</greater-than>
|
||||||
</error>
|
</condition>
|
||||||
<error>
|
</error>
|
||||||
<message>Engine failure is currently simulated by switching off the magnetos.
|
<error>
|
||||||
|
<message>Engine failure is currently simulated by switching off the magnetos.
|
||||||
Please switch them off again to continue the tutorial.</message>
|
Please switch them off again to continue the tutorial.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/controls/switches/magnetos</property>
|
<property>/controls/switches/magnetos</property>
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>At this point we would radio an emergency/mayday.
|
<message>At this point we would radio an emergency/mayday.
|
||||||
Remember - Aviate, Navigate, Communicate - in that order.</message>
|
Remember - Aviate, Navigate, Communicate - in that order.</message>
|
||||||
<set>
|
<set>
|
||||||
<property>/engines/active-engine/running</property>
|
<property>/engines/active-engine/running</property>
|
||||||
<value>false</value>
|
<value>false</value>
|
||||||
</set>
|
</set>
|
||||||
<error>
|
|
||||||
<message>You are too slow. You need to fly at 65 knots IAS for maximum glide.</message>
|
<error>
|
||||||
<condition>
|
<message>You are too slow. You need to fly at 65 knots IAS for maximum glide.</message>
|
||||||
<less-than>
|
<condition>
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
<less-than>
|
||||||
<value>62</value>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
</less-than>
|
<value>62</value>
|
||||||
</condition>
|
</less-than>
|
||||||
</error>
|
</condition>
|
||||||
<error>
|
</error>
|
||||||
<message>You are too fast. You need to fly at 65 knots IAS for maximum glide.</message>
|
<error>
|
||||||
<condition>
|
<message>You are too fast. You need to fly at 65 knots IAS for maximum glide.</message>
|
||||||
<greater-than>
|
<condition>
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
<greater-than>
|
||||||
<value>69</value>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
</greater-than>
|
<value>69</value>
|
||||||
</condition>
|
</greater-than>
|
||||||
</error>
|
</condition>
|
||||||
<error>
|
</error>
|
||||||
<message>Engine failure is currently simulated by switching off the magnetos.
|
<error>
|
||||||
|
<message>Engine failure is currently simulated by switching off the magnetos.
|
||||||
Please switch them off again to continue the tutorial.</message>
|
Please switch them off again to continue the tutorial.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/controls/switches/magnetos</property>
|
<property>/controls/switches/magnetos</property>
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Continue flying towards your emergency landing spot.
|
<message>Continue flying towards your emergency landing spot.
|
||||||
If we had the spare capacity, we might attempt to restart the engine at this point.</message>
|
If we had the spare capacity, we might attempt to restart the engine at this point.</message>
|
||||||
<error>
|
|
||||||
<message>Engine failure is currently simulated by switching off the magnetos.
|
<error>
|
||||||
|
<message>Engine failure is currently simulated by switching off the magnetos.
|
||||||
Please switch them off again to continue the tutorial.</message>
|
Please switch them off again to continue the tutorial.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/controls/switches/magnetos</property>
|
<property>/controls/switches/magnetos</property>
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Stay a 65 knots for maximum glide. Only use flaps once the runway is "made".</message>
|
<message>Stay a 65 knots for maximum glide. Only use flaps once the runway is "made".</message>
|
||||||
<error>
|
|
||||||
<message>Engine failure is currently simulated by switching off the magnetos.
|
<error>
|
||||||
|
<message>Engine failure is currently simulated by switching off the magnetos.
|
||||||
Please switch them off again to continue the tutorial.</message>
|
Please switch them off again to continue the tutorial.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/controls/switches/magnetos</property>
|
<property>/controls/switches/magnetos</property>
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
<exit>
|
|
||||||
<condition>
|
<exit>
|
||||||
<less-than>
|
<condition>
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
<less-than>
|
||||||
<value>10</value>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
</less-than>
|
<value>10</value>
|
||||||
</condition>
|
</less-than>
|
||||||
</exit>
|
</condition>
|
||||||
</step>
|
</exit>
|
||||||
|
</step>
|
||||||
<end>
|
|
||||||
<message>Assuming the aircraft is upright and you landed on a runway,
|
<end>
|
||||||
|
<message>Assuming the aircraft is upright and you landed on a runway,
|
||||||
you walked away from a total engine failure - well done!</message>
|
you walked away from a total engine failure - well done!</message>
|
||||||
</end>
|
</end>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<name>Straight-in Landing</name>
|
|
||||||
<description>Landings are not optional...
|
<name>Straight-in Landing</name>
|
||||||
|
|
||||||
|
<description>Landings are not optional...
|
||||||
|
|
||||||
Land the aircraft from an altitude of 1000ft on runway 30 at KHAF on a calm morning.
|
Land the aircraft from an altitude of 1000ft on runway 30 at KHAF on a calm morning.
|
||||||
|
|
||||||
|
@ -10,189 +14,199 @@ KHAF has a VASI to the left of runway 30, a series of lights designed to help yo
|
||||||
|
|
||||||
You start the tutorial cruising at around 1000ft and 90kts. To begin your descent, you will need to reduce power and drop one notch flaps. You are aiming to approach at 80kts and 300fpm. As you get closer, you will need to reduce power further and drop more flaps, aiming to touch down "on the numbers" at 65kts.
|
You start the tutorial cruising at around 1000ft and 90kts. To begin your descent, you will need to reduce power and drop one notch flaps. You are aiming to approach at 80kts and 300fpm. As you get closer, you will need to reduce power further and drop more flaps, aiming to touch down "on the numbers" at 65kts.
|
||||||
</description>
|
</description>
|
||||||
<timeofday>afternoon</timeofday>
|
|
||||||
<presets>
|
|
||||||
<airport-id>KHAF</airport-id>
|
|
||||||
<on-ground>0</on-ground>
|
|
||||||
<runway>30</runway>
|
|
||||||
<altitude-ft>1000</altitude-ft>
|
|
||||||
<latitude-deg>-9999</latitude-deg>
|
|
||||||
<longitude-deg>-9999</longitude-deg>
|
|
||||||
<!-- <heading-deg>300.0</heading-deg> -->
|
|
||||||
<airspeed-kt>90.0</airspeed-kt>
|
|
||||||
<glideslope-deg>3</glideslope-deg>
|
|
||||||
<offset-azimuth-deg>0</offset-azimuth-deg>
|
|
||||||
<offset-distance-nm>3</offset-distance-nm>
|
|
||||||
<ndb-id>0</ndb-id>
|
|
||||||
<vor-id>0</vor-id>
|
|
||||||
<fix>0</fix>
|
|
||||||
</presets>
|
|
||||||
|
|
||||||
<init>
|
<timeofday>afternoon</timeofday>
|
||||||
<set>
|
<presets>
|
||||||
<property>/controls/flight/flaps</property>
|
<airport-id>KHAF</airport-id>
|
||||||
<value>0.0</value>
|
<on-ground>0</on-ground>
|
||||||
</set>
|
<runway>30</runway>
|
||||||
<set>
|
<altitude-ft>1000</altitude-ft>
|
||||||
<property>/controls/switches/magnetos</property>
|
<latitude-deg>-9999</latitude-deg>
|
||||||
<value>3</value>
|
<longitude-deg>-9999</longitude-deg>
|
||||||
</set>
|
<!-- <heading-deg>300.0</heading-deg> -->
|
||||||
<set>
|
<airspeed-kt>90.0</airspeed-kt>
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
<glideslope-deg>3</glideslope-deg>
|
||||||
<value>0.4</value>
|
<offset-azimuth-deg>0</offset-azimuth-deg>
|
||||||
</set>
|
<offset-distance-nm>3</offset-distance-nm>
|
||||||
<set>
|
<ndb-id>0</ndb-id>
|
||||||
<property>/controls/switches/starter</property>
|
<vor-id>0</vor-id>
|
||||||
<value>true</value>
|
<fix>0</fix>
|
||||||
</set>
|
</presets>
|
||||||
<set>
|
|
||||||
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
|
||||||
<value>340</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/environment/weather-scenario</property>
|
|
||||||
<value>Fair weather</value>
|
|
||||||
</set>
|
|
||||||
</init>
|
|
||||||
|
|
||||||
<step>
|
<init>
|
||||||
<message>The runway is straight ahead. Reduce throttle to 50% and apply one degree of flaps.
|
<set>
|
||||||
|
<property>/controls/flight/flaps</property>
|
||||||
|
<value>0.0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/magnetos</property>
|
||||||
|
<value>3</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
|
<value>0.4</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/starter</property>
|
||||||
|
<value>true</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
||||||
|
<value>340</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/environment/weather-scenario</property>
|
||||||
|
<value>Fair weather</value>
|
||||||
|
</set>
|
||||||
|
</init>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>The runway is straight ahead. Reduce throttle to 50% and apply one degree of flaps.
|
||||||
Stay in line with the runway about a hands-width above the glare-shield.
|
Stay in line with the runway about a hands-width above the glare-shield.
|
||||||
You are aiming to descend at around 500 feet per minute and 80 knots.
|
You are aiming to descend at around 500 feet per minute and 80 knots.
|
||||||
</message>
|
</message>
|
||||||
<set>
|
<set>
|
||||||
<property>/controls/flight/elevator-trim</property>
|
<property>/controls/flight/elevator-trim</property>
|
||||||
<value>0.11</value>
|
<value>0.11</value>
|
||||||
</set>
|
</set>
|
||||||
<error>
|
|
||||||
<message>You are going too fast. Reduce power and pitch up to reduce your airspeed to 80 knots.</message>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
|
||||||
<value>100.0</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>Reduce throttle to 50%</message>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
|
||||||
<value>0.5</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>Set one step of flaps by pressing ]</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/controls/flight/flaps</property>
|
|
||||||
<value>0.3</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/position/latitude-deg</property>
|
|
||||||
<value>37.48</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<error>
|
||||||
<set>
|
<message>You are going too fast. Reduce power and pitch up to reduce your airspeed to 80 knots.</message>
|
||||||
<property>/controls/switches/starter</property>
|
<condition>
|
||||||
<value>false</value>
|
<greater-than>
|
||||||
</set>
|
<property>/instrumentation/airspeed-indicator/indicated-speed-kt</property>
|
||||||
<message>Let down the second step of flaps and use the VASI to check your descent rate.
|
<value>100.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<error>
|
||||||
|
<message>Reduce throttle to 50%</message>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
|
<value>0.5</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<error>
|
||||||
|
<message>Set one step of flaps by pressing ]</message>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/controls/flight/flaps</property>
|
||||||
|
<value>0.3</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/position/latitude-deg</property>
|
||||||
|
<value>37.48</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/starter</property>
|
||||||
|
<value>false</value>
|
||||||
|
</set>
|
||||||
|
<message>Let down the second step of flaps and use the VASI to check your descent rate.
|
||||||
White - too high. Red - too low, Red and white - just right.
|
White - too high. Red - too low, Red and white - just right.
|
||||||
Use throttle to control your descent rate rather than attitude.
|
Use throttle to control your descent rate rather than attitude.
|
||||||
</message>
|
</message>
|
||||||
<error>
|
|
||||||
<message>Set your second set of flaps by pressing ]</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/controls/flight/flaps</property>
|
|
||||||
<value>0.6</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/position/latitude-deg</property>
|
|
||||||
<value>37.495</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<error>
|
||||||
<message>Let down your final set of flaps and continue to follow the VASI glideslope.
|
<message>Set your second set of flaps by pressing ]</message>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/controls/flight/flaps</property>
|
||||||
|
<value>0.6</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/position/latitude-deg</property>
|
||||||
|
<value>37.495</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Let down your final set of flaps and continue to follow the VASI glideslope.
|
||||||
Stay lined up with the middle of the runway.
|
Stay lined up with the middle of the runway.
|
||||||
</message>
|
</message>
|
||||||
<error>
|
|
||||||
<message>Set your final set of flaps by pressing ]</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/controls/flight/flaps</property>
|
|
||||||
<value>0.9</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
|
|
||||||
<exit>
|
<error>
|
||||||
<condition>
|
<message>Set your final set of flaps by pressing ]</message>
|
||||||
<greater-than>
|
<condition>
|
||||||
<property>/position/latitude-deg</property>
|
<less-than>
|
||||||
<value>37.506</value>
|
<property>/controls/flight/flaps</property>
|
||||||
</greater-than>
|
<value>0.9</value>
|
||||||
</condition>
|
</less-than>
|
||||||
</exit>
|
</condition>
|
||||||
</step>
|
</error>
|
||||||
|
|
||||||
<step>
|
<exit>
|
||||||
<message>Reduce power to idle. When you are about 10 feet above the ground,
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/position/latitude-deg</property>
|
||||||
|
<value>37.506</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Reduce power to idle. When you are about 10 feet above the ground,
|
||||||
smoothly bring the nose up so it is level with the horizon.
|
smoothly bring the nose up so it is level with the horizon.
|
||||||
</message>
|
</message>
|
||||||
<exit>
|
<exit>
|
||||||
<condition>
|
<condition>
|
||||||
<less-than>
|
<less-than>
|
||||||
<property>/position/altitude-agl-ft</property>
|
<property>/position/altitude-agl-ft</property>
|
||||||
<value>7.0</value>
|
<value>7.0</value>
|
||||||
</less-than>
|
</less-than>
|
||||||
</condition>
|
</condition>
|
||||||
</exit>
|
</exit>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Keep tracking straight down the runway and let the aircraft land on the main gear.</message>
|
<message>Keep tracking straight down the runway and let the aircraft land on the main gear.</message>
|
||||||
<exit>
|
<exit>
|
||||||
<condition>
|
<condition>
|
||||||
<less-than>
|
<less-than>
|
||||||
<property>/velocities/airspeed-kt</property>
|
<property>/velocities/airspeed-kt</property>
|
||||||
<value>45.0</value>
|
<value>45.0</value>
|
||||||
</less-than>
|
</less-than>
|
||||||
</condition>
|
</condition>
|
||||||
</exit>
|
</exit>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Lower the nose wheel, continue to track down the runway and gently brake to a stop. Use
|
<message>Lower the nose wheel, continue to track down the runway and gently brake to a stop. Use
|
||||||
the mouse with the left button held down to steer.</message>
|
the mouse with the left button held down to steer.
|
||||||
<exit>
|
</message>
|
||||||
<condition>
|
<exit>
|
||||||
<less-than>
|
<condition>
|
||||||
<property>/velocities/groundspeed-kt</property>
|
<less-than>
|
||||||
<value>5.0</value>
|
<property>/velocities/groundspeed-kt</property>
|
||||||
</less-than>
|
<value>5.0</value>
|
||||||
</condition>
|
</less-than>
|
||||||
</exit>
|
</condition>
|
||||||
</step>
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<end>
|
||||||
|
<message>Congratulations on a successful landing.</message>
|
||||||
|
</end>
|
||||||
|
|
||||||
<end>
|
|
||||||
<message>Congratulations on a successful landing.</message>
|
|
||||||
</end>
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<name>Flying the Pattern</name>
|
|
||||||
<description>
|
<name>Flying the Pattern</name>
|
||||||
|
|
||||||
|
<description>
|
||||||
The traffic pattern is used as a method to stop aircraft crashing into each other when near an airport.
|
The traffic pattern is used as a method to stop aircraft crashing into each other when near an airport.
|
||||||
|
|
||||||
The pattern is a rectangular flight path with the runway forming one of the long sides.
|
The pattern is a rectangular flight path with the runway forming one of the long sides.
|
||||||
|
@ -15,411 +19,433 @@ It consists of the following sections:
|
||||||
As before, we'll be flying at KHAF, on runway 12, on a clear day.
|
As before, we'll be flying at KHAF, on runway 12, on a clear day.
|
||||||
|
|
||||||
Runway 12 does not have a VASI. Instead you will need to judge whether you are too low or too high by the view of the runway. If the runway is going away from you, you will land short. If the runway is coming towards you, you will over-shoot. Remember, you should aim to have the runway about a third of the way above the glare-shield, and adjust your rate of descent using power.
|
Runway 12 does not have a VASI. Instead you will need to judge whether you are too low or too high by the view of the runway. If the runway is going away from you, you will land short. If the runway is coming towards you, you will over-shoot. Remember, you should aim to have the runway about a third of the way above the glare-shield, and adjust your rate of descent using power.
|
||||||
</description>
|
</description>
|
||||||
<audio-dir>Tutorials/pattern</audio-dir>
|
|
||||||
<timeofday>morning</timeofday>
|
<audio-dir>Tutorials/pattern</audio-dir>
|
||||||
<presets>
|
<timeofday>morning</timeofday>
|
||||||
<airport-id>KHAF</airport-id>
|
<presets>
|
||||||
<on-ground>1</on-ground>
|
<airport-id>KHAF</airport-id>
|
||||||
<runway>12</runway>
|
<on-ground>1</on-ground>
|
||||||
<altitude-ft>-9999</altitude-ft>
|
<runway>12</runway>
|
||||||
<latitude-deg>-9999</latitude-deg>
|
<altitude-ft>-9999</altitude-ft>
|
||||||
<longitude-deg>-9999</longitude-deg>
|
<latitude-deg>-9999</latitude-deg>
|
||||||
<heading-deg>0</heading-deg>
|
<longitude-deg>-9999</longitude-deg>
|
||||||
<airspeed-kt>0</airspeed-kt>
|
<heading-deg>0</heading-deg>
|
||||||
<glideslope-deg>0</glideslope-deg>
|
<airspeed-kt>0</airspeed-kt>
|
||||||
<offset-azimuth-deg>0</offset-azimuth-deg>
|
<glideslope-deg>0</glideslope-deg>
|
||||||
<offset-distance-nm>0</offset-distance-nm>
|
<offset-azimuth-deg>0</offset-azimuth-deg>
|
||||||
</presets>
|
<offset-distance-nm>0</offset-distance-nm>
|
||||||
|
</presets>
|
||||||
<init>
|
|
||||||
<set>
|
<init>
|
||||||
<property>/controls/flight/flaps</property>
|
<set>
|
||||||
<value>0.0</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/gear/brake-parking</property>
|
|
||||||
<value>1</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/switches/magnetos</property>
|
|
||||||
<value>3</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
|
||||||
<value>0.5</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/switches/starter</property>
|
|
||||||
<value>true</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
|
||||||
<value>340</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/environment/weather-scenario</property>
|
|
||||||
<value>Fair weather</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/flight/elevator-trim</property>
|
|
||||||
<value>0.17</value>
|
|
||||||
</set>
|
|
||||||
</init>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>Release the parking brakes, smoothly apply full power and start your take-off.</message>
|
|
||||||
<error>
|
|
||||||
<message>Apply full throttle for take-off</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
|
||||||
<value>0.95</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>Release the parking brake using Shift B</message>
|
|
||||||
<condition>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-parking</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/velocities/airspeed-kt</property>
|
|
||||||
<value>5.0</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>Stay on the center-line of the runway using the rudder.</message>
|
|
||||||
<set>
|
|
||||||
<property>/controls/switches/starter</property>
|
|
||||||
<value>false</value>
|
|
||||||
</set>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/velocities/airspeed-kt</property>
|
|
||||||
<value>45.0</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>Take-off at 65 knots and climb straight out on heading 120 at 600 feet per minute (about 70 knots).</message>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
|
||||||
<value>300</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>Continue your climb on heading 120 at 600 feet per minute to 500 feet.</message>
|
|
||||||
<error>
|
|
||||||
<message>Your climb angle is too shallow - raise the nose slightly to increase your climb rate.</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
|
||||||
<value>400</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>Your climb angle is too great - lower the nose slightly to decrease your climb rate.</message>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
|
||||||
<value>900</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>You are heading too far left, Turn right slightly to heading 120.</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>110</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>You are heading too far right, Turn left slightly to heading 120.</message>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>130</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>You are in danger of being "behind the power curve". Drop the nose to speed up to 70 knots.</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/velocities/airspeed-kt</property>
|
|
||||||
<value>69</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
|
||||||
<value>500</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>Make a left turn to crosswind (heading 030) and continue climbing to 1000 feet.</message>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
|
||||||
<value>900</value>
|
|
||||||
</greater-than>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>020</value>
|
|
||||||
</greater-than>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>040</value>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>Level off at 1000 feet and make another left turn to downwind (heading 300).</message>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
|
||||||
<value>950</value>
|
|
||||||
</greater-than>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>290</value>
|
|
||||||
</greater-than>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>310</value>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>Reduce power to 60%, and trim for level flight. Continue flying parallel to the runway.</message>
|
|
||||||
<error>
|
|
||||||
<message>You are heading too far left, Turn right slightly to heading 300.</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>290</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>You are heading too far right, Turn left slightly to heading 300.</message>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>310</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>You are too high. Pattern altitude is 1000 feet.</message>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
|
||||||
<value>1100</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>You are too low. Pattern altitude is 1000 feet.</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
|
||||||
<value>900</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<greater-than>
|
|
||||||
<property>/position/latitude-deg</property>
|
|
||||||
<value>37.528</value>
|
|
||||||
</greater-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>You are now opposite the end of the runway. Reduce power to 50%, set flaps to 10.</message>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/controls/flight/flaps</property>
|
<property>/controls/flight/flaps</property>
|
||||||
<value>0.3</value>
|
<value>0.0</value>
|
||||||
</greater-than>
|
</set>
|
||||||
<less-than>
|
<set>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>1</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/magnetos</property>
|
||||||
|
<value>3</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
<value>0.55</value>
|
<value>0.5</value>
|
||||||
</less-than>
|
</set>
|
||||||
</and>
|
<set>
|
||||||
</condition>
|
<property>/controls/switches/starter</property>
|
||||||
</exit>
|
<value>true</value>
|
||||||
</step>
|
</set>
|
||||||
|
<set>
|
||||||
<step>
|
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
||||||
<message>Let the aircraft descend and slow. Continue flying a heading of 300.</message>
|
<value>340</value>
|
||||||
<error>
|
</set>
|
||||||
<message>You are heading too far left, Turn right slightly to heading 300.</message>
|
<set>
|
||||||
<condition>
|
<property>/environment/weather-scenario</property>
|
||||||
<less-than>
|
<value>Fair weather</value>
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
</set>
|
||||||
<value>290</value>
|
<set>
|
||||||
</less-than>
|
<property>/controls/flight/elevator-trim</property>
|
||||||
</condition>
|
<value>0.17</value>
|
||||||
</error>
|
</set>
|
||||||
<error>
|
</init>
|
||||||
<message>You are heading too far right, Turn left slightly to heading 300.</message>
|
|
||||||
<condition>
|
<step>
|
||||||
<greater-than>
|
<message>Release the parking brakes, smoothly apply full power and start your take-off.</message>
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>310</value>
|
<error>
|
||||||
</greater-than>
|
<message>Apply full throttle for take-off</message>
|
||||||
</condition>
|
<condition>
|
||||||
</error>
|
<less-than>
|
||||||
<error>
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
<message>You are too high. You should be descending to around 850 feet.</message>
|
<value>0.95</value>
|
||||||
<condition>
|
</less-than>
|
||||||
<greater-than>
|
</condition>
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
</error>
|
||||||
<value>1100</value>
|
<error>
|
||||||
</greater-than>
|
<message>Release the parking brake using Shift B</message>
|
||||||
</condition>
|
<condition>
|
||||||
</error>
|
<equals>
|
||||||
<exit>
|
<property>/controls/gear/brake-parking</property>
|
||||||
<condition>
|
<value>1</value>
|
||||||
<less-than>
|
</equals>
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
</condition>
|
||||||
<value>900</value>
|
</error>
|
||||||
</less-than>
|
|
||||||
</condition>
|
<exit>
|
||||||
</exit>
|
<condition>
|
||||||
</step>
|
<greater-than>
|
||||||
|
<property>/velocities/airspeed-kt</property>
|
||||||
<step>
|
<value>5.0</value>
|
||||||
<message>Turn left to base (heading 210), and set flaps to 20.
|
</greater-than>
|
||||||
Continue to descend at around 500 feet per minute.</message>
|
</condition>
|
||||||
<exit>
|
</exit>
|
||||||
<condition>
|
</step>
|
||||||
<less-than>
|
|
||||||
<property>/position/longitude-deg</property>
|
<step>
|
||||||
<value>-122.520</value>
|
<message>Stay on the center-line of the runway using the rudder.</message>
|
||||||
</less-than>
|
|
||||||
</condition>
|
<set>
|
||||||
</exit>
|
<property>/controls/switches/starter</property>
|
||||||
</step>
|
<value>false</value>
|
||||||
|
</set>
|
||||||
<step>
|
|
||||||
<message>Turn onto final (heading 120), and line up with the runway.</message>
|
<exit>
|
||||||
<exit>
|
<condition>
|
||||||
<condition>
|
<greater-than>
|
||||||
<and>
|
<property>/velocities/airspeed-kt</property>
|
||||||
<less-than>
|
<value>45.0</value>
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
</greater-than>
|
||||||
<value>140</value>
|
</condition>
|
||||||
</less-than>
|
</exit>
|
||||||
<greater-than>
|
</step>
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
|
||||||
<value>100</value>
|
<step>
|
||||||
</greater-than>
|
<message>Take-off at 65 knots and climb straight out on heading 120 at 600 feet per minute (about 70 knots).</message>
|
||||||
<less-than>
|
<exit>
|
||||||
<property>/position/latitude-deg</property>
|
<condition>
|
||||||
<value>37.545</value>
|
<greater-than>
|
||||||
</less-than>
|
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
</and>
|
<value>300</value>
|
||||||
</condition>
|
</greater-than>
|
||||||
</exit>
|
</condition>
|
||||||
</step>
|
</exit>
|
||||||
|
</step>
|
||||||
<step>
|
|
||||||
<message>Set flaps to 30. Control your descent rate using the throttle.</message>
|
<step>
|
||||||
<exit>
|
<message>Continue your climb on heading 120 at 600 feet per minute to 500 feet.</message>
|
||||||
<condition>
|
|
||||||
<less-than>
|
<error>
|
||||||
<property>/position/latitude-deg</property>
|
<message>Your climb angle is too shallow - raise the nose slightly to increase your climb rate.</message>
|
||||||
<value>37.525</value>
|
<condition>
|
||||||
</less-than>
|
<less-than>
|
||||||
</condition>
|
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
</exit>
|
<value>400</value>
|
||||||
</step>
|
</less-than>
|
||||||
|
</condition>
|
||||||
<step>
|
</error>
|
||||||
<message>Reduce power to idle. When you are about 10 feet above the ground,
|
<error>
|
||||||
smoothly bring the nose up so it is just above the horizon.</message>
|
<message>Your climb angle is too great - lower the nose slightly to decrease your climb rate.</message>
|
||||||
<exit>
|
<condition>
|
||||||
<condition>
|
<greater-than>
|
||||||
<less-than>
|
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
<property>/position/altitude-agl-ft</property>
|
<value>900</value>
|
||||||
<value>10.0</value>
|
</greater-than>
|
||||||
</less-than>
|
</condition>
|
||||||
</condition>
|
</error>
|
||||||
</exit>
|
<error>
|
||||||
</step>
|
<message>You are heading too far left, Turn right slightly to heading 120.</message>
|
||||||
|
<condition>
|
||||||
<step>
|
<less-than>
|
||||||
<message>Keep tracking straight down the runway using the rudder
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
and let the aircraft land on the main gear.</message>
|
<value>110</value>
|
||||||
<exit>
|
</less-than>
|
||||||
<condition>
|
</condition>
|
||||||
<less-than>
|
</error>
|
||||||
<property>/velocities/airspeed-kt</property>
|
<error>
|
||||||
<value>45.0</value>
|
<message>You are heading too far right, Turn left slightly to heading 120.</message>
|
||||||
</less-than>
|
<condition>
|
||||||
</condition>
|
<greater-than>
|
||||||
</exit>
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
</step>
|
<value>130</value>
|
||||||
|
</greater-than>
|
||||||
<step>
|
</condition>
|
||||||
<message>Lower the nose wheel, continue to track down the runway and gently brake to a stop.</message>
|
</error>
|
||||||
<exit>
|
<error>
|
||||||
<condition>
|
<message>You are in danger of being "behind the power curve". Drop the nose to speed up to 70 knots.</message>
|
||||||
<less-than>
|
<condition>
|
||||||
<property>/velocities/airspeed-kt</property>
|
<less-than>
|
||||||
<value>5.0</value>
|
<property>/velocities/airspeed-kt</property>
|
||||||
</less-than>
|
<value>69</value>
|
||||||
</condition>
|
</less-than>
|
||||||
</exit>
|
</condition>
|
||||||
</step>
|
</error>
|
||||||
|
|
||||||
<end>
|
<exit>
|
||||||
<message>Congratulations on successfully following the pattern.
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
|
<value>500</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Make a left turn to crosswind (heading 030) and continue climbing to 1000 feet.</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
|
<value>900</value>
|
||||||
|
</greater-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>020</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>040</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Level off at 1000 feet and make another left turn to downwind (heading 300).</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
|
<value>950</value>
|
||||||
|
</greater-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>290</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>310</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Reduce power to 60%, and trim for level flight. Continue flying parallel to the runway.</message>
|
||||||
|
<error>
|
||||||
|
<message>You are heading too far left, Turn right slightly to heading 300.</message>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>290</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>You are heading too far right, Turn left slightly to heading 300.</message>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>310</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>You are too high. Pattern altitude is 1000 feet.</message>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
|
<value>1100</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>You are too low. Pattern altitude is 1000 feet.</message>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
|
<value>900</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/position/latitude-deg</property>
|
||||||
|
<value>37.528</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>You are now opposite the end of the runway. Reduce power to 50%, set flaps to 10.</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/controls/flight/flaps</property>
|
||||||
|
<value>0.3</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
|
<value>0.55</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Let the aircraft descend and slow. Continue flying a heading of 300.</message>
|
||||||
|
|
||||||
|
<error>
|
||||||
|
<message>You are heading too far left, Turn right slightly to heading 300.</message>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>290</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>You are heading too far right, Turn left slightly to heading 300.</message>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>310</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>You are too high. You should be descending to around 850 feet.</message>
|
||||||
|
<condition>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
|
<value>1100</value>
|
||||||
|
</greater-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
|
<value>900</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Turn left to base (heading 210), and set flaps to 20.
|
||||||
|
Continue to descend at around 500 feet per minute.
|
||||||
|
</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/position/longitude-deg</property>
|
||||||
|
<value>-122.520</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Turn onto final (heading 120), and line up with the runway.</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>140</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
|
<value>100</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/position/latitude-deg</property>
|
||||||
|
<value>37.545</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Set flaps to 30. Control your descent rate using the throttle.</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/position/latitude-deg</property>
|
||||||
|
<value>37.525</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Reduce power to idle. When you are about 10 feet above the ground,
|
||||||
|
smoothly bring the nose up so it is just above the horizon.
|
||||||
|
</message>
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/position/altitude-agl-ft</property>
|
||||||
|
<value>10.0</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Keep tracking straight down the runway using the rudder
|
||||||
|
and let the aircraft land on the main gear.
|
||||||
|
</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/velocities/airspeed-kt</property>
|
||||||
|
<value>45.0</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Lower the nose wheel, continue to track down the runway and gently brake to a stop.</message>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/velocities/airspeed-kt</property>
|
||||||
|
<value>5.0</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<end>
|
||||||
|
<message>Congratulations on successfully following the pattern.
|
||||||
If you want to practice more landings, you can take off again immediately.
|
If you want to practice more landings, you can take off again immediately.
|
||||||
Don't forget to lift your flaps though! This is known as a Touch and Go.
|
Don't forget to lift your flaps though! This is known as a Touch and Go.
|
||||||
</message>
|
</message>
|
||||||
</end>
|
</end>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,233 +1,246 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<name>Radio Tuning</name>
|
|
||||||
<description>
|
<name>Radio Tuning</name>
|
||||||
|
|
||||||
|
<description>
|
||||||
Radios are used both for communication, and also for navigation.
|
Radios are used both for communication, and also for navigation.
|
||||||
|
|
||||||
This tutorial will teach you how to tune the radio of the aircraft to pick up
|
This tutorial will teach you how to tune the radio of the aircraft to pick up
|
||||||
the ATIS - Automatic Terminal Information Service. This is broadcast by all
|
the ATIS - Automatic Terminal Information Service. This is broadcast by all
|
||||||
but the smallest airports and provides information on the current ground-level
|
but the smallest airports and provides information on the current ground-level
|
||||||
weather, the altimeter setting and the runway in use.
|
weather, the altimeter setting and the runway in use.
|
||||||
</description>
|
</description>
|
||||||
<audio-dir>Tutorials/radio</audio-dir>
|
|
||||||
<timeofday>morning</timeofday>
|
|
||||||
<presets>
|
|
||||||
<airport-id>KLVK</airport-id>
|
|
||||||
<on-ground>1</on-ground>
|
|
||||||
<runway>12</runway>
|
|
||||||
<altitude-ft>-9999</altitude-ft>
|
|
||||||
<latitude-deg>37.6952</latitude-deg>
|
|
||||||
<longitude-deg>-121.8167</longitude-deg>
|
|
||||||
<heading-deg>175.0</heading-deg>
|
|
||||||
<airspeed-kt>0</airspeed-kt>
|
|
||||||
<glideslope-deg>0</glideslope-deg>
|
|
||||||
<offset-azimuth-deg>0</offset-azimuth-deg>
|
|
||||||
<offset-distance-nm>0</offset-distance-nm>
|
|
||||||
</presets>
|
|
||||||
|
|
||||||
<init>
|
<audio-dir>Tutorials/radio</audio-dir>
|
||||||
<set>
|
<timeofday>morning</timeofday>
|
||||||
<property>/controls/gear/brake-parking</property>
|
<presets>
|
||||||
<value>1</value>
|
<airport-id>KLVK</airport-id>
|
||||||
</set>
|
<on-ground>1</on-ground>
|
||||||
<set>
|
<runway>12</runway>
|
||||||
<property>/controls/flight/flaps</property>
|
<altitude-ft>-9999</altitude-ft>
|
||||||
<value>0.0</value>
|
<latitude-deg>37.6952</latitude-deg>
|
||||||
</set>
|
<longitude-deg>-121.8167</longitude-deg>
|
||||||
<set>
|
<heading-deg>175.0</heading-deg>
|
||||||
<property>/controls/switches/magnetos</property>
|
<airspeed-kt>0</airspeed-kt>
|
||||||
<value>0</value>
|
<glideslope-deg>0</glideslope-deg>
|
||||||
</set>
|
<offset-azimuth-deg>0</offset-azimuth-deg>
|
||||||
<set>
|
<offset-distance-nm>0</offset-distance-nm>
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
</presets>
|
||||||
<value>0.0</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/engines/active-engine/running</property>
|
|
||||||
<value>false</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
|
||||||
<value>340</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/environment/weather-scenario</property>
|
|
||||||
<value>Fair weather</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/flight/elevator-trim</property>
|
|
||||||
<value>0.17</value>
|
|
||||||
</set>
|
|
||||||
</init>
|
|
||||||
|
|
||||||
<step>
|
<init>
|
||||||
<message>In this lesson, you'll learn how to tune the radio to the Livermore ATIS.
|
<set>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>1</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/flight/flaps</property>
|
||||||
|
<value>0.0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/magnetos</property>
|
||||||
|
<value>0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
|
<value>0.0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/engines/active-engine/running</property>
|
||||||
|
<value>false</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
||||||
|
<value>340</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/environment/weather-scenario</property>
|
||||||
|
<value>Fair weather</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/flight/elevator-trim</property>
|
||||||
|
<value>0.17</value>
|
||||||
|
</set>
|
||||||
|
</init>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>In this lesson, you'll learn how to tune the radio to the Livermore ATIS.
|
||||||
The radio is in the middle of the center console.</message>
|
The radio is in the middle of the center console.</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>There are 4 radios on this aircraft - two for communication (COMM1, COMM2) and two for navigation (NAV1, NAV2).
|
<message>There are 4 radios on this aircraft - two for communication (COMM1, COMM2) and two for navigation (NAV1, NAV2).
|
||||||
Each radio has an active frequency and a standby frequency.
|
Each radio has an active frequency and a standby frequency.
|
||||||
We tune the radio by changing the standby frequency, and then swapping the active and standby. </message>
|
We tune the radio by changing the standby frequency, and then swapping the active and standby. </message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
</step>
|
</step>
|
||||||
<step>
|
|
||||||
<message>To change the standby frequency, click on the highlighted knob. The outer knob changes the number on the left of the decimal place.
|
<step>
|
||||||
|
<message>To change the standby frequency, click on the highlighted knob. The outer knob changes the number on the left of the decimal place.
|
||||||
The inner knob changes the number on the right of the decimal place.</message>
|
The inner knob changes the number on the right of the decimal place.</message>
|
||||||
<view>
|
<view>
|
||||||
<field-of-view>14.0</field-of-view>
|
<field-of-view>14.0</field-of-view>
|
||||||
<heading-offset-deg>336</heading-offset-deg>
|
<heading-offset-deg>336</heading-offset-deg>
|
||||||
<pitch-offset-deg>-20</pitch-offset-deg>
|
<pitch-offset-deg>-20</pitch-offset-deg>
|
||||||
</view>
|
</view>
|
||||||
<marker>
|
<marker>
|
||||||
<x-m>-0.3444</x-m>
|
<x-m>-0.3444</x-m>
|
||||||
<y-m>0.0907</y-m>
|
<y-m>0.0907</y-m>
|
||||||
<z-m>0.0053</z-m>
|
<z-m>0.0053</z-m>
|
||||||
<scale>1.0000</scale>
|
<scale>1.0000</scale>
|
||||||
</marker>
|
</marker>
|
||||||
</step>
|
</step>
|
||||||
<step>
|
|
||||||
<message>The left mouse button increases the value, while the middle button decreases it. Alternatively, you can use your mouse wheel.</message>
|
|
||||||
<view>
|
|
||||||
<field-of-view>14.0</field-of-view>
|
|
||||||
<heading-offset-deg>336</heading-offset-deg>
|
|
||||||
<pitch-offset-deg>-20</pitch-offset-deg>
|
|
||||||
</view>
|
|
||||||
<marker>
|
|
||||||
<x-m>-0.3444</x-m>
|
|
||||||
<y-m>0.0907</y-m>
|
|
||||||
<z-m>0.0053</z-m>
|
|
||||||
<scale>1.0000</scale>
|
|
||||||
</marker>
|
|
||||||
</step>
|
|
||||||
<step>
|
|
||||||
<message>Set the standby frequency to 119.65 MHz. This is the ATIS frequency for Livermore, and is printed on sectional charts.</message>
|
|
||||||
<view>
|
|
||||||
<field-of-view>14.0</field-of-view>
|
|
||||||
<heading-offset-deg>336</heading-offset-deg>
|
|
||||||
<pitch-offset-deg>-20</pitch-offset-deg>
|
|
||||||
</view>
|
|
||||||
<marker>
|
|
||||||
<x-m>-0.3444</x-m>
|
|
||||||
<y-m>0.0907</y-m>
|
|
||||||
<z-m>0.0053</z-m>
|
|
||||||
<scale>1.0000</scale>
|
|
||||||
</marker>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
|
||||||
<value>119.64</value>
|
|
||||||
</greater-than>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
|
||||||
<value>119.66</value>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
<step>
|
|
||||||
<message>Now, switch the active and standby frequencies by pressing the swap button so the active frequency is 119.650MHz.</message>
|
|
||||||
<view>
|
|
||||||
<field-of-view>14.0</field-of-view>
|
|
||||||
<heading-offset-deg>336</heading-offset-deg>
|
|
||||||
<pitch-offset-deg>-20</pitch-offset-deg>
|
|
||||||
</view>
|
|
||||||
<marker>
|
|
||||||
<x-m>-0.3444</x-m>
|
|
||||||
<y-m>0.0684</y-m>
|
|
||||||
<z-m>0.0142</z-m>
|
|
||||||
<scale>1.0000</scale>
|
|
||||||
</marker>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/comm[0]/frequencies/selected-mhz</property>
|
|
||||||
<value>119.64</value>
|
|
||||||
</greater-than>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/comm[0]/frequencies/selected-mhz</property>
|
|
||||||
<value>119.66</value>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>We need to set the COMM1 output to our headset using the audio panel.
|
<message>The left mouse button increases the value, while the middle button decreases it. Alternatively, you can use your mouse wheel.</message>
|
||||||
|
<view>
|
||||||
|
<field-of-view>14.0</field-of-view>
|
||||||
|
<heading-offset-deg>336</heading-offset-deg>
|
||||||
|
<pitch-offset-deg>-20</pitch-offset-deg>
|
||||||
|
</view>
|
||||||
|
<marker>
|
||||||
|
<x-m>-0.3444</x-m>
|
||||||
|
<y-m>0.0907</y-m>
|
||||||
|
<z-m>0.0053</z-m>
|
||||||
|
<scale>1.0000</scale>
|
||||||
|
</marker>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Set the standby frequency to 119.65 MHz. This is the ATIS frequency for Livermore, and is printed on sectional charts.</message>
|
||||||
|
<view>
|
||||||
|
<field-of-view>14.0</field-of-view>
|
||||||
|
<heading-offset-deg>336</heading-offset-deg>
|
||||||
|
<pitch-offset-deg>-20</pitch-offset-deg>
|
||||||
|
</view>
|
||||||
|
<marker>
|
||||||
|
<x-m>-0.3444</x-m>
|
||||||
|
<y-m>0.0907</y-m>
|
||||||
|
<z-m>0.0053</z-m>
|
||||||
|
<scale>1.0000</scale>
|
||||||
|
</marker>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
||||||
|
<value>119.64</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
||||||
|
<value>119.66</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Now, switch the active and standby frequencies by pressing the swap button so the active frequency is 119.650MHz.</message>
|
||||||
|
<view>
|
||||||
|
<field-of-view>14.0</field-of-view>
|
||||||
|
<heading-offset-deg>336</heading-offset-deg>
|
||||||
|
<pitch-offset-deg>-20</pitch-offset-deg>
|
||||||
|
</view>
|
||||||
|
<marker>
|
||||||
|
<x-m>-0.3444</x-m>
|
||||||
|
<y-m>0.0684</y-m>
|
||||||
|
<z-m>0.0142</z-m>
|
||||||
|
<scale>1.0000</scale>
|
||||||
|
</marker>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/comm[0]/frequencies/selected-mhz</property>
|
||||||
|
<value>119.64</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/comm[0]/frequencies/selected-mhz</property>
|
||||||
|
<value>119.66</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>We need to set the COMM1 output to our headset using the audio panel.
|
||||||
Use your left mouse button to drag the COMM1 switch upwards.</message>
|
Use your left mouse button to drag the COMM1 switch upwards.</message>
|
||||||
<view>
|
<view>
|
||||||
<field-of-view>14.0</field-of-view>
|
<field-of-view>14.0</field-of-view>
|
||||||
<heading-offset-deg>336</heading-offset-deg>
|
<heading-offset-deg>336</heading-offset-deg>
|
||||||
<pitch-offset-deg>-20</pitch-offset-deg>
|
<pitch-offset-deg>-20</pitch-offset-deg>
|
||||||
</view>
|
</view>
|
||||||
<marker>
|
<marker>
|
||||||
<x-m>-0.3494</x-m>
|
<x-m>-0.3494</x-m>
|
||||||
<y-m>0.0884</y-m>
|
<y-m>0.0884</y-m>
|
||||||
<z-m>0.1084</z-m>
|
<z-m>0.1084</z-m>
|
||||||
<scale>1.0000</scale>
|
<scale>1.0000</scale>
|
||||||
</marker>
|
</marker>
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<not>
|
|
||||||
<equals>
|
|
||||||
<property>/instrumentation/kma20/com1</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
</not>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<exit>
|
||||||
<message>Listen to the ATIS message. If you cannot hear it, look at the Sound Configuration dialog on the File menu.
|
<condition>
|
||||||
|
<not>
|
||||||
|
<equals>
|
||||||
|
<property>/instrumentation/kma20/com1</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
</not>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Listen to the ATIS message. If you cannot hear it, look at the Sound Configuration dialog on the File menu.
|
||||||
It will tell you the current weather conditions, the runway in use, and the altimeter setting.</message>
|
It will tell you the current weather conditions, the runway in use, and the altimeter setting.</message>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Once you've heard it, you can switch it off by swapping the frequency back to standby, or toggling off the audio panel.
|
<message>Once you've heard it, you can switch it off by swapping the frequency back to standby, or toggling off the audio panel.
|
||||||
Do that now.</message>
|
Do that now.</message>
|
||||||
<view>
|
<view>
|
||||||
<field-of-view>14.0</field-of-view>
|
<field-of-view>14.0</field-of-view>
|
||||||
<heading-offset-deg>336</heading-offset-deg>
|
<heading-offset-deg>336</heading-offset-deg>
|
||||||
<pitch-offset-deg>-20</pitch-offset-deg>
|
<pitch-offset-deg>-20</pitch-offset-deg>
|
||||||
</view>
|
</view>
|
||||||
<marker>
|
<marker>
|
||||||
<x-m>-0.3494</x-m>
|
<x-m>-0.3494</x-m>
|
||||||
<y-m>0.0884</y-m>
|
<y-m>0.0884</y-m>
|
||||||
<z-m>0.1084</z-m>
|
<z-m>0.1084</z-m>
|
||||||
<scale>1.0000</scale>
|
<scale>1.0000</scale>
|
||||||
</marker>
|
</marker>
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<or>
|
|
||||||
<and>
|
|
||||||
<greater-than>
|
|
||||||
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
|
||||||
<value>119.64</value>
|
|
||||||
</greater-than>
|
|
||||||
<less-than>
|
|
||||||
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
|
||||||
<value>119.66</value>
|
|
||||||
</less-than>
|
|
||||||
</and>
|
|
||||||
<equals>
|
|
||||||
<property>/instrumentation/kma20/com1</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
</or>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<end>
|
<exit>
|
||||||
<message>Great job. COMM2 is located immediately below COMM1 in the radio stack, and is tuned in the same way.
|
<condition>
|
||||||
|
<or>
|
||||||
|
<and>
|
||||||
|
<greater-than>
|
||||||
|
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
||||||
|
<value>119.64</value>
|
||||||
|
</greater-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/instrumentation/comm[0]/frequencies/standby-mhz</property>
|
||||||
|
<value>119.66</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
<equals>
|
||||||
|
<property>/instrumentation/kma20/com1</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<end>
|
||||||
|
<message>Great job. COMM2 is located immediately below COMM1 in the radio stack, and is tuned in the same way.
|
||||||
The NAV radios work in exactly the same way, except they use a different frequency
|
The NAV radios work in exactly the same way, except they use a different frequency
|
||||||
range, and their output goes to the navigational instruments.</message>
|
range, and their output goes to the navigational instruments.</message>
|
||||||
</end>
|
</end>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,261 +1,276 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<name>Takeoff</name>
|
|
||||||
<description>
|
<name>Takeoff</name>
|
||||||
|
|
||||||
|
<description>
|
||||||
This tutorial starts from Half-Moon Bay (KHAF), a small airport on the coast near San Francisco, in clear, still, weather.
|
This tutorial starts from Half-Moon Bay (KHAF), a small airport on the coast near San Francisco, in clear, still, weather.
|
||||||
|
|
||||||
This tutorial will teach you how to take-off, and climb at 600 feet per minute. You will level off at 1000ft to complete the tutorial.
|
This tutorial will teach you how to take-off, and climb at 600 feet per minute. You will level off at 1000ft to complete the tutorial.
|
||||||
</description>
|
</description>
|
||||||
<audio-dir>Tutorials/takeoff</audio-dir>
|
|
||||||
<timeofday>morning</timeofday>
|
<audio-dir>Tutorials/takeoff</audio-dir>
|
||||||
<presets>
|
<timeofday>morning</timeofday>
|
||||||
<airport-id>KHAF</airport-id>
|
<presets>
|
||||||
<on-ground>1</on-ground>
|
<airport-id>KHAF</airport-id>
|
||||||
<runway>12</runway>
|
<on-ground>1</on-ground>
|
||||||
<altitude-ft>-9999</altitude-ft>
|
<runway>12</runway>
|
||||||
<latitude-deg>-9999</latitude-deg>
|
<altitude-ft>-9999</altitude-ft>
|
||||||
<longitude-deg>-9999</longitude-deg>
|
<latitude-deg>-9999</latitude-deg>
|
||||||
<heading-deg>0</heading-deg>
|
<longitude-deg>-9999</longitude-deg>
|
||||||
<airspeed-kt>0</airspeed-kt>
|
<heading-deg>0</heading-deg>
|
||||||
<glideslope-deg>0</glideslope-deg>
|
<airspeed-kt>0</airspeed-kt>
|
||||||
<offset-azimuth-deg>0</offset-azimuth-deg>
|
<glideslope-deg>0</glideslope-deg>
|
||||||
<offset-distance-nm>0</offset-distance-nm>
|
<offset-azimuth-deg>0</offset-azimuth-deg>
|
||||||
</presets>
|
<offset-distance-nm>0</offset-distance-nm>
|
||||||
|
</presets>
|
||||||
<init>
|
|
||||||
<set>
|
<init>
|
||||||
<property>/controls/gear/brake-parking</property>
|
<set>
|
||||||
<value>1</value>
|
<property>/controls/gear/brake-parking</property>
|
||||||
</set>
|
<value>1</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/flight/flaps</property>
|
<set>
|
||||||
<value>0.0</value>
|
<property>/controls/flight/flaps</property>
|
||||||
</set>
|
<value>0.0</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/switches/magnetos</property>
|
<set>
|
||||||
<value>3</value>
|
<property>/controls/switches/magnetos</property>
|
||||||
</set>
|
<value>3</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
<set>
|
||||||
<value>0.2</value>
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
</set>
|
<value>0.2</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/switches/starter</property>
|
<set>
|
||||||
<value>true</value>
|
<property>/controls/switches/starter</property>
|
||||||
</set>
|
<value>true</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
<set>
|
||||||
<value>340</value>
|
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
||||||
</set>
|
<value>340</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/environment/weather-scenario</property>
|
<set>
|
||||||
<value>Fair weather</value>
|
<property>/environment/weather-scenario</property>
|
||||||
</set>
|
<value>Fair weather</value>
|
||||||
<set>
|
</set>
|
||||||
<property>/controls/flight/elevator-trim</property>
|
<set>
|
||||||
<value>0.17</value>
|
<property>/controls/flight/elevator-trim</property>
|
||||||
</set>
|
<value>0.17</value>
|
||||||
</init>
|
</set>
|
||||||
|
</init>
|
||||||
<step>
|
|
||||||
<message>At the start of the take-off roll, you will control the direction of the aircraft using the
|
<step>
|
||||||
|
<message>At the start of the take-off roll, you will control the direction of the aircraft using the
|
||||||
nose-wheel steering and rudder. As the aircraft takes off, you will use the ailerons and elevator
|
nose-wheel steering and rudder. As the aircraft takes off, you will use the ailerons and elevator
|
||||||
to control the direction and attitude of the aircraft.
|
to control the direction and attitude of the aircraft.
|
||||||
</message>
|
</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>
|
<message>
|
||||||
The nose-wheel and rudder is controlled using 0/Enter on the numeric keypad, or by using the mouse
|
The nose-wheel and rudder is controlled using 0/Enter on the numeric keypad, or by using the mouse
|
||||||
in "yoke" mode with the left mouse button held down.
|
in "yoke" mode with the left mouse button held down.
|
||||||
To switch the mouse to yoke mode, press the right mouse button until it displays as a + sign.
|
To switch the mouse to yoke mode, press the right mouse button until it displays as a + sign.
|
||||||
</message>
|
</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Release the parking brakes using Shift-B</message>
|
<message>Release the parking brakes using Shift-B</message>
|
||||||
<set>
|
<set>
|
||||||
<property>/controls/switches/starter</property>
|
<property>/controls/switches/starter</property>
|
||||||
<value>false</value>
|
<value>false</value>
|
||||||
</set>
|
</set>
|
||||||
<error>
|
|
||||||
<message>Release the parking brake using Shift B</message>
|
<error>
|
||||||
<condition>
|
<message>Release the parking brake using Shift B</message>
|
||||||
<equals>
|
<condition>
|
||||||
<property>/controls/gear/brake-parking</property>
|
<equals>
|
||||||
<value>1</value>
|
<property>/controls/gear/brake-parking</property>
|
||||||
</equals>
|
<value>1</value>
|
||||||
</condition>
|
</equals>
|
||||||
</error>
|
</condition>
|
||||||
|
</error>
|
||||||
</step>
|
</step>
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Smoothly apply full power using PgUp, controlling the direction using the nosewheel.</message>
|
<message>Smoothly apply full power using PgUp, controlling the direction using the nosewheel.</message>
|
||||||
<error>
|
|
||||||
<message>Release the parking brake using Shift B</message>
|
<error>
|
||||||
<condition>
|
<message>Release the parking brake using Shift B</message>
|
||||||
<equals>
|
<condition>
|
||||||
<property>/controls/gear/brake-parking</property>
|
<equals>
|
||||||
<value>1</value>
|
<property>/controls/gear/brake-parking</property>
|
||||||
</equals>
|
<value>1</value>
|
||||||
</condition>
|
</equals>
|
||||||
</error>
|
</condition>
|
||||||
<error>
|
</error>
|
||||||
<message>Apply full throttle for take-off.</message>
|
<error>
|
||||||
<condition>
|
<message>Apply full throttle for take-off.</message>
|
||||||
<less-than>
|
<condition>
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
<less-than>
|
||||||
<value>0.95</value>
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
</less-than>
|
<value>0.95</value>
|
||||||
</condition>
|
</less-than>
|
||||||
</error>
|
</condition>
|
||||||
<exit>
|
</error>
|
||||||
<condition>
|
|
||||||
<greater-than>
|
<exit>
|
||||||
<property>/velocities/airspeed-kt</property>
|
<condition>
|
||||||
<value>5.0</value>
|
<greater-than>
|
||||||
</greater-than>
|
<property>/velocities/airspeed-kt</property>
|
||||||
</condition>
|
<value>5.0</value>
|
||||||
</exit>
|
</greater-than>
|
||||||
</step>
|
</condition>
|
||||||
|
</exit>
|
||||||
<step>
|
</step>
|
||||||
<message>Stay on the center-line of the runway using the rudder. Steer using the mouse with the left button held down, or using 0/Enter on the numeric keypad</message>
|
|
||||||
<exit>
|
<step>
|
||||||
<condition>
|
<message>Stay on the center-line of the runway using the rudder. Steer using the mouse with the left button held down, or using 0/Enter on the numeric keypad</message>
|
||||||
<greater-than>
|
|
||||||
<property>/velocities/airspeed-kt</property>
|
<exit>
|
||||||
<value>45.0</value>
|
<condition>
|
||||||
</greater-than>
|
<greater-than>
|
||||||
</condition>
|
<property>/velocities/airspeed-kt</property>
|
||||||
</exit>
|
<value>45.0</value>
|
||||||
</step>
|
</greater-than>
|
||||||
|
</condition>
|
||||||
<step>
|
</exit>
|
||||||
<message>Let the aircraft lift off at 65 knots and climb straight out on heading 120 at 600 feet per minute.</message>
|
</step>
|
||||||
<error>
|
|
||||||
<message>Gently raise the nose, by pressing the down key on the keypad, or moving the mouse back slightly.</message>
|
<step>
|
||||||
<condition>
|
<message>Let the aircraft lift off at 65 knots and climb straight out on heading 120 at 600 feet per minute.</message>
|
||||||
<equals>
|
|
||||||
<property>/gear/gear[0]/wow</property>
|
<error>
|
||||||
<value>1</value>
|
<message>Gently raise the nose, by pressing the down key on the keypad, or moving the mouse back slightly.</message>
|
||||||
</equals>
|
<condition>
|
||||||
</condition>
|
<equals>
|
||||||
</error>
|
<property>/gear/gear[0]/wow</property>
|
||||||
<exit>
|
<value>1</value>
|
||||||
<condition>
|
</equals>
|
||||||
<greater-than>
|
</condition>
|
||||||
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
</error>
|
||||||
<value>300</value>
|
|
||||||
</greater-than>
|
<exit>
|
||||||
</condition>
|
<condition>
|
||||||
</exit>
|
<greater-than>
|
||||||
</step>
|
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
|
<value>300</value>
|
||||||
<step>
|
</greater-than>
|
||||||
<message>Continue your climb on heading 120 at 600 feet per minute to 1000 feet.</message>
|
</condition>
|
||||||
<error>
|
</exit>
|
||||||
<message>Your climb angle is too shallow - raise the nose very slightly to increase your climb rate.</message>
|
</step>
|
||||||
<condition>
|
|
||||||
<less-than>
|
<step>
|
||||||
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
<message>Continue your climb on heading 120 at 600 feet per minute to 1000 feet.</message>
|
||||||
<value>400</value>
|
|
||||||
</less-than>
|
<error>
|
||||||
</condition>
|
<message>Your climb angle is too shallow - raise the nose very slightly to increase your climb rate.</message>
|
||||||
</error>
|
<condition>
|
||||||
<error>
|
<less-than>
|
||||||
<message>Your climb angle is too great - lower the nose slightly to decrease your climb rate.</message>
|
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
<condition>
|
<value>400</value>
|
||||||
<greater-than>
|
</less-than>
|
||||||
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
</condition>
|
||||||
<value>900</value>
|
</error>
|
||||||
</greater-than>
|
<error>
|
||||||
</condition>
|
<message>Your climb angle is too great - lower the nose slightly to decrease your climb rate.</message>
|
||||||
</error>
|
<condition>
|
||||||
<error>
|
<greater-than>
|
||||||
<message>You are heading too far left, Turn right slightly to heading 120.</message>
|
<property>/instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
<condition>
|
<value>900</value>
|
||||||
<less-than>
|
</greater-than>
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
</condition>
|
||||||
<value>110</value>
|
</error>
|
||||||
</less-than>
|
<error>
|
||||||
</condition>
|
<message>You are heading too far left, Turn right slightly to heading 120.</message>
|
||||||
</error>
|
<condition>
|
||||||
<error>
|
<less-than>
|
||||||
<message>You are heading too far right, Turn left slightly to heading 120.</message>
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
<condition>
|
<value>110</value>
|
||||||
<greater-than>
|
</less-than>
|
||||||
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
</condition>
|
||||||
<value>130</value>
|
</error>
|
||||||
</greater-than>
|
<error>
|
||||||
</condition>
|
<message>You are heading too far right, Turn left slightly to heading 120.</message>
|
||||||
</error>
|
<condition>
|
||||||
<error>
|
<greater-than>
|
||||||
<message>You are in danger of being "behind the power curve". Drop the nose to speed up to 70 knots.</message>
|
<property>/instrumentation/heading-indicator/indicated-heading-deg</property>
|
||||||
<condition>
|
<value>130</value>
|
||||||
<less-than>
|
</greater-than>
|
||||||
<property>/velocities/airspeed-kt</property>
|
</condition>
|
||||||
<value>69.0</value>
|
</error>
|
||||||
</less-than>
|
<error>
|
||||||
</condition>
|
<message>You are in danger of being "behind the power curve". Drop the nose to speed up to 70 knots.</message>
|
||||||
</error>
|
<condition>
|
||||||
<exit>
|
<less-than>
|
||||||
<condition>
|
<property>/velocities/airspeed-kt</property>
|
||||||
<greater-than>
|
<value>69.0</value>
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
</less-than>
|
||||||
<value>1000</value>
|
</condition>
|
||||||
</greater-than>
|
</error>
|
||||||
</condition>
|
|
||||||
</exit>
|
<exit>
|
||||||
</step>
|
<condition>
|
||||||
|
<greater-than>
|
||||||
<step>
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
<message>Level off at between 1000 and 1100 feet.</message>
|
<value>1000</value>
|
||||||
<error>
|
</greater-than>
|
||||||
<message>You are too low</message>
|
</condition>
|
||||||
<condition>
|
</exit>
|
||||||
<less-than>
|
</step>
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
|
||||||
<value>1000</value>
|
<step>
|
||||||
</less-than>
|
<message>Level off at between 1000 and 1100 feet.</message>
|
||||||
</condition>
|
|
||||||
</error>
|
<error>
|
||||||
<error>
|
<message>You are too low</message>
|
||||||
<message>You are too high</message>
|
<condition>
|
||||||
<condition>
|
<less-than>
|
||||||
<greater-than>
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
<value>1000</value>
|
||||||
<value>1100</value>
|
</less-than>
|
||||||
</greater-than>
|
</condition>
|
||||||
</condition>
|
</error>
|
||||||
</error>
|
<error>
|
||||||
<exit>
|
<message>You are too high</message>
|
||||||
<condition>
|
<condition>
|
||||||
<and>
|
<greater-than>
|
||||||
<greater-than>
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
<value>1100</value>
|
||||||
<value>1000</value>
|
</greater-than>
|
||||||
</greater-than>
|
</condition>
|
||||||
<less-than>
|
</error>
|
||||||
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
|
||||||
<value>1100</value>
|
<exit>
|
||||||
</less-than>
|
<condition>
|
||||||
<less-than>
|
<and>
|
||||||
<property>instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
<greater-than>
|
||||||
<value>150</value>
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
</less-than>
|
<value>1000</value>
|
||||||
<greater-than>
|
</greater-than>
|
||||||
<property>instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
<less-than>
|
||||||
<value>-150</value>
|
<property>/instrumentation/altimeter/indicated-altitude-ft</property>
|
||||||
</greater-than>
|
<value>1100</value>
|
||||||
</and>
|
</less-than>
|
||||||
</condition>
|
<less-than>
|
||||||
</exit>
|
<property>instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
</step>
|
<value>150</value>
|
||||||
|
</less-than>
|
||||||
<end>
|
<greater-than>
|
||||||
<message>Congratulations, you've successfully taken off. Now try landing!</message>
|
<property>instrumentation/vertical-speed-indicator/indicated-speed-fpm</property>
|
||||||
</end>
|
<value>-150</value>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<end>
|
||||||
|
<message>Congratulations, you've successfully taken off. Now try landing!</message>
|
||||||
|
</end>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -1,436 +1,444 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<name>Taxiing</name>
|
|
||||||
<description>
|
<name>Taxiing</name>
|
||||||
|
|
||||||
|
<description>
|
||||||
This tutorial covers moving the aircraft around on the ground, from the parking position to the run-up area.
|
This tutorial covers moving the aircraft around on the ground, from the parking position to the run-up area.
|
||||||
|
|
||||||
For more information on taxiing, see Section 2-9 of the FAA Airplane Flying Handbook available at http://www.faa.gov/library/manuals/aircraft/airplane_handbook/.
|
For more information on taxiing, see Section 2-9 of the FAA Airplane Flying Handbook available at http://www.faa.gov/library/manuals/aircraft/airplane_handbook/.
|
||||||
</description>
|
</description>
|
||||||
<audio-dir>Tutorials/taxiing</audio-dir>
|
|
||||||
<timeofday>morning</timeofday>
|
|
||||||
<presets>
|
|
||||||
<airport-id>KLVK</airport-id>
|
|
||||||
<on-ground>1</on-ground>
|
|
||||||
<runway>12</runway>
|
|
||||||
<altitude-ft>-9999</altitude-ft>
|
|
||||||
<latitude-deg>37.6952</latitude-deg>
|
|
||||||
<longitude-deg>-121.8167</longitude-deg>
|
|
||||||
<heading-deg>175.0</heading-deg>
|
|
||||||
<airspeed-kt>0</airspeed-kt>
|
|
||||||
<glideslope-deg>0</glideslope-deg>
|
|
||||||
<offset-azimuth-deg>0</offset-azimuth-deg>
|
|
||||||
<offset-distance-nm>0</offset-distance-nm>
|
|
||||||
</presets>
|
|
||||||
|
|
||||||
<targets>
|
<audio-dir>Tutorials/taxiing</audio-dir>
|
||||||
<j1>
|
<timeofday>morning</timeofday>
|
||||||
<!-- Turn right onto taxiway -->
|
<presets>
|
||||||
<longitude-deg>-121.81664</longitude-deg>
|
<airport-id>KLVK</airport-id>
|
||||||
<latitude-deg>37.6949</latitude-deg>
|
<on-ground>1</on-ground>
|
||||||
</j1>
|
<runway>12</runway>
|
||||||
|
<altitude-ft>-9999</altitude-ft>
|
||||||
|
<latitude-deg>37.6952</latitude-deg>
|
||||||
|
<longitude-deg>-121.8167</longitude-deg>
|
||||||
|
<heading-deg>175.0</heading-deg>
|
||||||
|
<airspeed-kt>0</airspeed-kt>
|
||||||
|
<glideslope-deg>0</glideslope-deg>
|
||||||
|
<offset-azimuth-deg>0</offset-azimuth-deg>
|
||||||
|
<offset-distance-nm>0</offset-distance-nm>
|
||||||
|
</presets>
|
||||||
|
|
||||||
<j2>
|
<targets>
|
||||||
<!-- Mention differential braking -->
|
<j1>
|
||||||
<longitude-deg>-121.82258</longitude-deg>
|
<!-- Turn right onto taxiway -->
|
||||||
<latitude-deg>37.6949</latitude-deg>
|
<longitude-deg>-121.81664</longitude-deg>
|
||||||
</j2>
|
<latitude-deg>37.6949</latitude-deg>
|
||||||
|
</j1>
|
||||||
|
<j2>
|
||||||
|
<!-- Mention differential braking -->
|
||||||
|
<longitude-deg>-121.82258</longitude-deg>
|
||||||
|
<latitude-deg>37.6949</latitude-deg>
|
||||||
|
</j2>
|
||||||
|
<j3>
|
||||||
|
<!-- Left turn in taxiway -->
|
||||||
|
<longitude-deg>-121.8250</longitude-deg>
|
||||||
|
<latitude-deg>37.69498</latitude-deg>
|
||||||
|
</j3>
|
||||||
|
<a1>
|
||||||
|
<!-- Right turn onto taxiway A -->
|
||||||
|
<longitude-deg>-121.8251</longitude-deg>
|
||||||
|
<latitude-deg>37.694616</latitude-deg>
|
||||||
|
</a1>
|
||||||
|
<a2>
|
||||||
|
<!-- Runup aread -->
|
||||||
|
<longitude-deg>-121.8294</longitude-deg>
|
||||||
|
<latitude-deg>37.69459</latitude-deg>
|
||||||
|
</a2>
|
||||||
|
</targets>
|
||||||
|
|
||||||
<j3>
|
<init>
|
||||||
<!-- Left turn in taxiway -->
|
<set>
|
||||||
<longitude-deg>-121.8250</longitude-deg>
|
|
||||||
<latitude-deg>37.69498</latitude-deg>
|
|
||||||
</j3>
|
|
||||||
|
|
||||||
<a1>
|
|
||||||
<!-- Right turn onto taxiway A -->
|
|
||||||
<longitude-deg>-121.8251</longitude-deg>
|
|
||||||
<latitude-deg>37.694616</latitude-deg>
|
|
||||||
</a1>
|
|
||||||
|
|
||||||
<a2>
|
|
||||||
<!-- Runup aread -->
|
|
||||||
<longitude-deg>-121.8294</longitude-deg>
|
|
||||||
<latitude-deg>37.69459</latitude-deg>
|
|
||||||
</a2>
|
|
||||||
|
|
||||||
</targets>
|
|
||||||
|
|
||||||
<init>
|
|
||||||
<set>
|
|
||||||
<property>/controls/gear/brake-parking</property>
|
|
||||||
<value>1</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/flight/flaps</property>
|
|
||||||
<value>0.0</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/switches/magnetos</property>
|
|
||||||
<value>3</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
|
||||||
<value>0.2</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/switches/starter</property>
|
|
||||||
<value>true</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
|
||||||
<value>340</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/environment/weather-scenario</property>
|
|
||||||
<value>Fair weather</value>
|
|
||||||
</set>
|
|
||||||
<set>
|
|
||||||
<property>/controls/flight/elevator-trim</property>
|
|
||||||
<value>0.17</value>
|
|
||||||
</set>
|
|
||||||
</init>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<message>In this lesson we'll taxi the aircraft from its parking position infront of the FBO,
|
|
||||||
along taxiways Juliet and Alpha to the run-up area near runway 07L.</message>
|
|
||||||
<nasal>
|
|
||||||
<script>
|
|
||||||
|
|
||||||
# Script to simulate holding down the starter button until the engine starts
|
|
||||||
var starter = func() {
|
|
||||||
setprop("/controls/switches/starter", 1);
|
|
||||||
if (! getprop("/engines/active-engine/running")) {
|
|
||||||
settimer(starter, 0);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
# The FDM resets the starter property on each FDM cycle. By effectively starting
|
|
||||||
# a number of threads to continually keep setting the starter to true, we can
|
|
||||||
# get around this and give the engine the opportunity to catch.
|
|
||||||
starter();
|
|
||||||
starter();
|
|
||||||
starter();
|
|
||||||
starter();
|
|
||||||
starter();
|
|
||||||
</script>
|
|
||||||
</nasal>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
|
||||||
<set>
|
|
||||||
<property>/controls/switches/starter</property>
|
|
||||||
<value>false</value>
|
|
||||||
</set>
|
|
||||||
<message>I've already started the engine. Press Shift-B to release the parking brake. Throttle up to about
|
|
||||||
20% to move forward slightly, then hold b to check that the normal brakes work.</message>
|
|
||||||
<error>
|
|
||||||
<message>The parking brake is still on. Release it by pressing Shift-B.</message>
|
|
||||||
<condition>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-parking</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>Throttle up to about 20% to move forward slightly.</message>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-parking</property>
|
<property>/controls/gear/brake-parking</property>
|
||||||
<value>0</value>
|
<value>1</value>
|
||||||
</equals>
|
</set>
|
||||||
<less-than>
|
<set>
|
||||||
|
<property>/controls/flight/flaps</property>
|
||||||
|
<value>0.0</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/magnetos</property>
|
||||||
|
<value>3</value>
|
||||||
|
</set>
|
||||||
|
<set>
|
||||||
<property>/controls/engines/current-engine/throttle</property>
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
<value>0.15</value>
|
<value>0.2</value>
|
||||||
</less-than>
|
</set>
|
||||||
</and>
|
<set>
|
||||||
</condition>
|
<property>/controls/switches/starter</property>
|
||||||
</error>
|
<value>true</value>
|
||||||
<error>
|
</set>
|
||||||
<message>Apply the brakes by pressing b.</message>
|
<set>
|
||||||
<condition>
|
<property>/instrumentation/adf/frequencies/selected-khz</property>
|
||||||
<and>
|
<value>340</value>
|
||||||
<equals>
|
</set>
|
||||||
<property>/controls/gear/brake-parking</property>
|
<set>
|
||||||
<value>0</value>
|
<property>/environment/weather-scenario</property>
|
||||||
</equals>
|
<value>Fair weather</value>
|
||||||
<equals>
|
</set>
|
||||||
<property>/controls/gear/brake-left</property>
|
<set>
|
||||||
<value>0</value>
|
<property>/controls/flight/elevator-trim</property>
|
||||||
</equals>
|
<value>0.17</value>
|
||||||
<equals>
|
</set>
|
||||||
<property>/controls/gear/brake-left</property>
|
</init>
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-parking</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-left</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-left</property>
|
|
||||||
<value>1</value>
|
|
||||||
</equals>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Keep applying the brakes. You can steer the aircraft on the ground by either using 0/Enter on the
|
<message>In this lesson we'll taxi the aircraft from its parking position infront of the FBO,
|
||||||
|
along taxiways Juliet and Alpha to the run-up area near runway 07L.</message>
|
||||||
|
<nasal>
|
||||||
|
<script>
|
||||||
|
# Script to simulate holding down the starter button until the engine starts
|
||||||
|
var starter = func() {
|
||||||
|
setprop("/controls/switches/starter", 1);
|
||||||
|
if (!getprop("/engines/active-engine/running")) {
|
||||||
|
settimer(starter, 0);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
# The FDM resets the starter property on each FDM cycle. By effectively starting
|
||||||
|
# a number of threads to continually keep setting the starter to true, we can
|
||||||
|
# get around this and give the engine the opportunity to catch.
|
||||||
|
starter();
|
||||||
|
starter();
|
||||||
|
starter();
|
||||||
|
starter();
|
||||||
|
starter();
|
||||||
|
</script>
|
||||||
|
</nasal>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<set>
|
||||||
|
<property>/controls/switches/starter</property>
|
||||||
|
<value>false</value>
|
||||||
|
</set>
|
||||||
|
<message>I've already started the engine. Press Shift-B to release the parking brake. Throttle up to about
|
||||||
|
20% to move forward slightly, then hold b to check that the normal brakes work.</message>
|
||||||
|
|
||||||
|
<error>
|
||||||
|
<message>The parking brake is still on. Release it by pressing Shift-B.</message>
|
||||||
|
<condition>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>Throttle up to about 20% to move forward slightly.</message>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
<less-than>
|
||||||
|
<property>/controls/engines/current-engine/throttle</property>
|
||||||
|
<value>0.15</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>Apply the brakes by pressing b.</message>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-left</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-left</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>0</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-left</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-left</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Keep applying the brakes. You can steer the aircraft on the ground by either using 0/Enter on the
|
||||||
numeric keypad, or using the mouse in yoke mode (+) with the left mouse button held down. If you need to slow
|
numeric keypad, or using the mouse in yoke mode (+) with the left mouse button held down. If you need to slow
|
||||||
down, just press b to apply the brakes.</message>
|
down, just press b to apply the brakes.</message>
|
||||||
<wait>10</wait>
|
<wait>10</wait>
|
||||||
<error>
|
|
||||||
<message>Keep the brakes on until I tell you to start taxiing.</message>
|
|
||||||
<condition>
|
|
||||||
<or>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-left</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
<equals>
|
|
||||||
<property>/controls/gear/brake-left</property>
|
|
||||||
<value>0</value>
|
|
||||||
</equals>
|
|
||||||
</or>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<error>
|
||||||
<message>Release the brakes and taxi forwards. You may need to apply a little throttle to get going. Make a right turn onto taxiway Juliet.</message>
|
<message>Keep the brakes on until I tell you to start taxiing.</message>
|
||||||
<wait>5</wait>
|
<condition>
|
||||||
<error>
|
<or>
|
||||||
<message>That's left, not right.</message>
|
<equals>
|
||||||
<condition>
|
<property>/controls/gear/brake-left</property>
|
||||||
<or>
|
<value>0</value>
|
||||||
<less-than>
|
</equals>
|
||||||
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
<equals>
|
||||||
<value>-135.0</value>
|
<property>/controls/gear/brake-left</property>
|
||||||
</less-than>
|
<value>0</value>
|
||||||
<greater-than>
|
</equals>
|
||||||
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
</or>
|
||||||
<value>135.0</value>
|
</condition>
|
||||||
</greater-than>
|
</error>
|
||||||
</or>
|
</step>
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<error>
|
|
||||||
<message>Apply a little throttle to get going, but then reduce it once you're moving.</message>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/velocities/groundspeed-kt</property>
|
|
||||||
<value>1.0</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<less-than>
|
|
||||||
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
|
||||||
<value>20.0</value>
|
|
||||||
</less-than>
|
|
||||||
<greater-than>
|
|
||||||
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
|
||||||
<value>-20.0</value>
|
|
||||||
</greater-than>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
|
|
||||||
</exit>
|
<step>
|
||||||
</step>
|
<message>Release the brakes and taxi forwards. You may need to apply a little throttle to get going. Make a right turn onto taxiway Juliet.</message>
|
||||||
|
<wait>5</wait>
|
||||||
|
|
||||||
<step>
|
<error>
|
||||||
<message>Continue taxiing along taxiway Juliet. Keep the nosewheel on the yellow line. Don't allow the aircraft to go too fast - use b to brake if you need to. </message>
|
<message>That's left, not right.</message>
|
||||||
<error>
|
<condition>
|
||||||
<message>
|
<or>
|
||||||
|
<less-than>
|
||||||
|
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
||||||
|
<value>-135.0</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
||||||
|
<value>135.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
<error>
|
||||||
|
<message>Apply a little throttle to get going, but then reduce it once you're moving.</message>
|
||||||
|
<condition>
|
||||||
|
<less-than>
|
||||||
|
<property>/velocities/groundspeed-kt</property>
|
||||||
|
<value>1.0</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
||||||
|
<value>-20.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Continue taxiing along taxiway Juliet. Keep the nosewheel on the yellow line. Don't allow the aircraft to go too fast - use b to brake if you need to. </message>
|
||||||
|
|
||||||
|
<error>
|
||||||
|
<message>
|
||||||
You're straying off the taxiway. Keep heading on taxiway Juliet, keeping your nosewheel on the yellow line.
|
You're straying off the taxiway. Keep heading on taxiway Juliet, keeping your nosewheel on the yellow line.
|
||||||
</message>
|
</message>
|
||||||
<condition>
|
<condition>
|
||||||
<or>
|
<or>
|
||||||
<less-than>
|
<less-than>
|
||||||
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
||||||
<value>-20.0</value>
|
<value>-20.0</value>
|
||||||
</less-than>
|
</less-than>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
<property>/sim/tutorials/targets/j2/direction-deg</property>
|
||||||
<value>20.0</value>
|
<value>20.0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</or>
|
</or>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
<error>
|
<error>
|
||||||
<message>You're going too fast. Reduce your throttle slightly and apply your brakes.</message>
|
<message>You're going too fast. Reduce your throttle slightly and apply your brakes.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/velocities/groundspeed-kt</property>
|
<property>/velocities/groundspeed-kt</property>
|
||||||
<value>10.0</value>
|
<value>10.0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/sim/tutorials/targets/j2/distance-m</property>
|
|
||||||
<value>150.0</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<exit>
|
||||||
<message>If you need to turn very tightly, you can apply differential braking, and only brake one wheel, by pressing ',' for the left, or '.' for the right.</message>
|
<condition>
|
||||||
<error>
|
<less-than>
|
||||||
<message>
|
<property>/sim/tutorials/targets/j2/distance-m</property>
|
||||||
|
<value>150.0</value>
|
||||||
|
</less-than>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
<step>
|
||||||
|
<message>If you need to turn very tightly, you can apply differential braking, and only brake one wheel, by pressing ',' for the left, or '.' for the right.</message>
|
||||||
|
|
||||||
|
<error>
|
||||||
|
<message>
|
||||||
You're straying off the taxiway. Keep your nosewheel on the yellow line.
|
You're straying off the taxiway. Keep your nosewheel on the yellow line.
|
||||||
</message>
|
</message>
|
||||||
<condition>
|
<condition>
|
||||||
<or>
|
<or>
|
||||||
<less-than>
|
<less-than>
|
||||||
<property>/sim/tutorials/targets/j3/direction-deg</property>
|
<property>/sim/tutorials/targets/j3/direction-deg</property>
|
||||||
<value>-20.0</value>
|
<value>-20.0</value>
|
||||||
</less-than>
|
</less-than>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/sim/tutorials/targets/j3/direction-deg</property>
|
<property>/sim/tutorials/targets/j3/direction-deg</property>
|
||||||
<value>20.0</value>
|
<value>20.0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</or>
|
</or>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
<error>
|
<error>
|
||||||
<message>You're going too fast. Reduce your throttle slightly and apply your brakes.</message>
|
<message>You're going too fast. Reduce your throttle slightly and apply your brakes.</message>
|
||||||
<condition>
|
<condition>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/velocities/groundspeed-kt</property>
|
<property>/velocities/groundspeed-kt</property>
|
||||||
<value>10.0</value>
|
<value>10.0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/sim/tutorials/targets/j3/distance-m</property>
|
|
||||||
<value>100.0</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<exit>
|
||||||
<message>The taxiway turns left here. Slow down by applying some brakes (b) and follow it round.</message>
|
<condition>
|
||||||
<error>
|
<less-than>
|
||||||
<message>
|
<property>/sim/tutorials/targets/j3/distance-m</property>
|
||||||
You're straying off the taxiway. Turn left.
|
<value>100.0</value>
|
||||||
</message>
|
</less-than>
|
||||||
<condition>
|
</condition>
|
||||||
<or>
|
</exit>
|
||||||
<less-than>
|
</step>
|
||||||
<property>/sim/tutorials/targets/a1/direction-deg</property>
|
<step>
|
||||||
<value>-45.0</value>
|
<message>The taxiway turns left here. Slow down by applying some brakes (b) and follow it round.</message>
|
||||||
</less-than>
|
<error>
|
||||||
<greater-than>
|
<message>You're straying off the taxiway. Turn left.</message>
|
||||||
<property>/sim/tutorials/targets/a1/direction-deg</property>
|
<condition>
|
||||||
<value>45.0</value>
|
<or>
|
||||||
</greater-than>
|
<less-than>
|
||||||
</or>
|
<property>/sim/tutorials/targets/a1/direction-deg</property>
|
||||||
</condition>
|
<value>-45.0</value>
|
||||||
</error>
|
</less-than>
|
||||||
<exit>
|
<greater-than>
|
||||||
<condition>
|
<property>/sim/tutorials/targets/a1/direction-deg</property>
|
||||||
<less-than>
|
<value>45.0</value>
|
||||||
<property>/sim/tutorials/targets/a1/distance-m</property>
|
</greater-than>
|
||||||
<value>25.0</value>
|
</or>
|
||||||
</less-than>
|
</condition>
|
||||||
</condition>
|
</error>
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<exit>
|
||||||
<message>We're now at the intersection of taxiways Juliet, Golf and Alpha. Turn right onto taxiway Alpha.</message>
|
<condition>
|
||||||
<error>
|
<less-than>
|
||||||
<message>That's left, not right.</message>
|
<property>/sim/tutorials/targets/a1/distance-m</property>
|
||||||
<condition>
|
<value>25.0</value>
|
||||||
<or>
|
</less-than>
|
||||||
<less-than>
|
</condition>
|
||||||
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
</exit>
|
||||||
<value>-135.0</value>
|
</step>
|
||||||
</less-than>
|
|
||||||
<greater-than>
|
|
||||||
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
|
||||||
<value>135.0</value>
|
|
||||||
</greater-than>
|
|
||||||
</or>
|
|
||||||
</condition>
|
|
||||||
</error>
|
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<and>
|
|
||||||
<less-than>
|
|
||||||
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
|
||||||
<value>20.0</value>
|
|
||||||
</less-than>
|
|
||||||
<greater-than>
|
|
||||||
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
|
||||||
<value>-20.0</value>
|
|
||||||
</greater-than>
|
|
||||||
</and>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<step>
|
||||||
<message>Continue taxiing along taxiway Alpha to the end of the taxiway. </message>
|
<message>We're now at the intersection of taxiways Juliet, Golf and Alpha. Turn right onto taxiway Alpha.</message>
|
||||||
<error>
|
<error>
|
||||||
<message>
|
<message>That's left, not right.</message>
|
||||||
|
<condition>
|
||||||
|
<or>
|
||||||
|
<less-than>
|
||||||
|
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
||||||
|
<value>-135.0</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
||||||
|
<value>135.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
</error>
|
||||||
|
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
||||||
|
<value>20.0</value>
|
||||||
|
</less-than>
|
||||||
|
<greater-than>
|
||||||
|
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
||||||
|
<value>-20.0</value>
|
||||||
|
</greater-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<message>Continue taxiing along taxiway Alpha to the end of the taxiway. </message>
|
||||||
|
|
||||||
|
<error>
|
||||||
|
<message>
|
||||||
You're straying off the taxiway. Keep heading on taxiway Alpha, keeping your nosewheel on the yellow line.
|
You're straying off the taxiway. Keep heading on taxiway Alpha, keeping your nosewheel on the yellow line.
|
||||||
</message>
|
</message>
|
||||||
<condition>
|
<condition>
|
||||||
<or>
|
<or>
|
||||||
<less-than>
|
<less-than>
|
||||||
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
||||||
<value>-15.0</value>
|
<value>-15.0</value>
|
||||||
</less-than>
|
</less-than>
|
||||||
<greater-than>
|
<greater-than>
|
||||||
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
<property>/sim/tutorials/targets/a2/direction-deg</property>
|
||||||
<value>15.0</value>
|
<value>15.0</value>
|
||||||
</greater-than>
|
</greater-than>
|
||||||
</or>
|
</or>
|
||||||
</condition>
|
</condition>
|
||||||
</error>
|
</error>
|
||||||
<exit>
|
|
||||||
<condition>
|
|
||||||
<less-than>
|
|
||||||
<property>/sim/tutorials/targets/a2/distance-m</property>
|
|
||||||
<value>60.0</value>
|
|
||||||
</less-than>
|
|
||||||
</condition>
|
|
||||||
</exit>
|
|
||||||
</step>
|
|
||||||
|
|
||||||
<step>
|
<exit>
|
||||||
<message>We've reached the run-up area. Brake slowly to a stop and set the parking brake (shift-b).</message>
|
<condition>
|
||||||
<exit>
|
<less-than>
|
||||||
<condition>
|
<property>/sim/tutorials/targets/a2/distance-m</property>
|
||||||
<equals>
|
<value>60.0</value>
|
||||||
<property>/controls/gear/brake-parking</property>
|
</less-than>
|
||||||
<value>1</value>
|
</condition>
|
||||||
</equals>
|
</exit>
|
||||||
</condition>
|
</step>
|
||||||
</exit>
|
|
||||||
</step>
|
<step>
|
||||||
|
<message>We've reached the run-up area. Brake slowly to a stop and set the parking brake (shift-b).</message>
|
||||||
|
<exit>
|
||||||
|
<condition>
|
||||||
|
<equals>
|
||||||
|
<property>/controls/gear/brake-parking</property>
|
||||||
|
<value>1</value>
|
||||||
|
</equals>
|
||||||
|
</condition>
|
||||||
|
</exit>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<end>
|
||||||
|
<message>We've reached the run-up area. Well done.</message>
|
||||||
|
</end>
|
||||||
|
|
||||||
<end>
|
|
||||||
<message>We've reached the run-up area. Well done.</message>
|
|
||||||
</end>
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,42 +1,48 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
<title>Cessna 172P</title>
|
|
||||||
<key>
|
<title>Cessna 172P</title>
|
||||||
<name>c</name>
|
|
||||||
<desc>Toggle cockpit on/off</desc>
|
<key>
|
||||||
</key>
|
<name>c</name>
|
||||||
<key>
|
<desc>Toggle cockpit on/off</desc>
|
||||||
<name>P</name>
|
</key>
|
||||||
<desc>Toggle high resolution panel on/off</desc>
|
<key>
|
||||||
</key>
|
<name>P</name>
|
||||||
<key>
|
<desc>Toggle high resolution panel on/off</desc>
|
||||||
<name>Ctrl-c</name>
|
</key>
|
||||||
<desc>Toggle panel hotspots and labels</desc>
|
<key>
|
||||||
</key>
|
<name>Ctrl-c</name>
|
||||||
<key>
|
<desc>Toggle panel hotspots and labels</desc>
|
||||||
<name>l/L</name>
|
</key>
|
||||||
<desc>Increase/decrease panel lighting</desc>
|
<key>
|
||||||
</key>
|
<name>l/L</name>
|
||||||
<key>
|
<desc>Increase/decrease panel lighting</desc>
|
||||||
<name>r/R</name>
|
</key>
|
||||||
<desc>Move water rudders up/down (amphibious)</desc>
|
<key>
|
||||||
</key>
|
<name>r/R</name>
|
||||||
<line/>
|
<desc>Move water rudders up/down (float plane)</desc>
|
||||||
<line>For checklists, see under Help->Aircraft Checklists</line>
|
</key>
|
||||||
<line/>
|
|
||||||
<line>To show the high resolution panel for a multi-</line>
|
<line/>
|
||||||
<line>computer setup, press P.</line>
|
<line>For checklists, see under Help->Aircraft Checklists</line>
|
||||||
<line/>
|
<line/>
|
||||||
<line>Takeoff: no flaps, full throttle, rotate at 55 KIAS</line>
|
<line>To show the high resolution panel for a multi-</line>
|
||||||
<line>Climbout: no flaps, full throttle, 80 KIAS</line>
|
<line>computer setup, press P.</line>
|
||||||
<line>Cruise: Throttle 65%, Mixture rich of peak</line>
|
<line/>
|
||||||
<line>Landing: full flaps, 65 KIAS</line>
|
<line>Takeoff: no flaps, full throttle, rotate at 55 KIAS</line>
|
||||||
<line/>
|
<line>Climbout: no flaps, full throttle, 80 KIAS</line>
|
||||||
<line>_________V Speeds_________</line>
|
<line>Cruise: Throttle 65%, Mixture rich of peak</line>
|
||||||
<line>Vso: 33kts</line>
|
<line>Landing: full flaps, 65 KIAS</line>
|
||||||
<line>Vx: 56kts</line>
|
<line/>
|
||||||
<line>Vy: 76kts</line>
|
<line>_________V Speeds_________</line>
|
||||||
<line>Va: 99kts</line>
|
<line>Vso: 33kts</line>
|
||||||
<line>Vne: 158kts</line>
|
<line>Vx: 56kts</line>
|
||||||
<line>Approach: 65kts</line>
|
<line>Vy: 76kts</line>
|
||||||
<line>Best Glide: 65kts</line>
|
<line>Va: 99kts</line>
|
||||||
|
<line>Vne: 158kts</line>
|
||||||
|
<line>Approach: 65kts</line>
|
||||||
|
<line>Best Glide: 65kts</line>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,426 +1,426 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
<!-- C172p-detailed
|
<!-- C172p-detailed
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
modify it under the terms of the GNU General Public License as
|
modify it under the terms of the GNU General Public License as
|
||||||
published by the Free Software Foundation; either version 2 of the
|
published by the Free Software Foundation; either version 2 of the
|
||||||
License, or (at your option) any later version.
|
License, or (at your option) any later version.
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful, but
|
This program is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
General Public License for more details.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
<name>aircraft-dialog</name>
|
<name>aircraft-dialog</name>
|
||||||
<layout>vbox</layout>
|
<layout>vbox</layout>
|
||||||
<resizable>false</resizable>
|
<resizable>false</resizable>
|
||||||
<modal>false</modal>
|
<modal>false</modal>
|
||||||
<draggable>true</draggable>
|
<draggable>true</draggable>
|
||||||
|
|
||||||
<nasal>
|
<nasal>
|
||||||
<open>
|
<open>
|
||||||
# Bush kit
|
# Bush kit
|
||||||
var p = getprop("fdm/jsbsim/bushkit");
|
var p = getprop("fdm/jsbsim/bushkit");
|
||||||
setprop("/sim/model/c172p/bushkit_flag_0", 0);
|
setprop("/sim/model/c172p/bushkit_flag_0", 0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_1", 0);
|
setprop("/sim/model/c172p/bushkit_flag_1", 0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_2", 0);
|
setprop("/sim/model/c172p/bushkit_flag_2", 0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_3", 0);
|
setprop("/sim/model/c172p/bushkit_flag_3", 0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_4", 0);
|
setprop("/sim/model/c172p/bushkit_flag_4", 0);
|
||||||
setprop("/sim/model/c172p/bushkit_flag_" ~ p, 1);
|
setprop("/sim/model/c172p/bushkit_flag_" ~ p, 1);
|
||||||
|
|
||||||
# Engine power
|
# Engine power
|
||||||
var p = getprop("/controls/engines/active-engine");
|
var p = getprop("/controls/engines/active-engine");
|
||||||
setprop("sim/model/c172p/engine_flag_0", 0);
|
setprop("sim/model/c172p/engine_flag_0", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 0);
|
setprop("sim/model/c172p/engine_flag_1", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_" ~ p, 1);
|
setprop("sim/model/c172p/engine_flag_" ~ p, 1);
|
||||||
</open>
|
</open>
|
||||||
</nasal>
|
</nasal>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>hbox</layout>
|
<layout>hbox</layout>
|
||||||
|
|
||||||
<empty><stretch>true</stretch></empty>
|
<empty><stretch>true</stretch></empty>
|
||||||
<text>
|
<text>
|
||||||
<label>Aircraft Options</label>
|
<label>Aircraft Options</label>
|
||||||
</text>
|
</text>
|
||||||
<empty><stretch>true</stretch></empty>
|
<empty><stretch>true</stretch></empty>
|
||||||
|
|
||||||
<button>
|
<button>
|
||||||
<legend/>
|
<legend/>
|
||||||
<key>Esc</key>
|
<key>Esc</key>
|
||||||
<pref-width>16</pref-width>
|
<pref-width>16</pref-width>
|
||||||
<pref-height>16</pref-height>
|
<pref-height>16</pref-height>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-close</command>
|
<command>dialog-close</command>
|
||||||
</binding>
|
</binding>
|
||||||
</button>
|
</button>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<hrule/>
|
<hrule/>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>vbox</layout>
|
<layout>vbox</layout>
|
||||||
<padding>6</padding>
|
<padding>6</padding>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>vbox</layout>
|
<layout>vbox</layout>
|
||||||
|
|
||||||
<checkbox>
|
<checkbox>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Start with engine running</label>
|
<label>Start with engine running</label>
|
||||||
<property>/fdm/jsbsim/running</property>
|
<property>/fdm/jsbsim/running</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
</checkbox>
|
</checkbox>
|
||||||
|
|
||||||
<checkbox>
|
<checkbox>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Complex start up procedures</label>
|
<label>Complex start up procedures</label>
|
||||||
<property>/fdm/jsbsim/complex</property>
|
<property>/fdm/jsbsim/complex</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
</checkbox>
|
</checkbox>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<hrule/>
|
<hrule/>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>hbox</layout>
|
<layout>hbox</layout>
|
||||||
|
|
||||||
<checkbox>
|
<checkbox>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Damage</label>
|
<label>Damage</label>
|
||||||
<property>/fdm/jsbsim/settings/damage</property>
|
<property>/fdm/jsbsim/settings/damage</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
</checkbox>
|
</checkbox>
|
||||||
|
|
||||||
<button>
|
<button>
|
||||||
<halign>right</halign>
|
<halign>right</halign>
|
||||||
<legend>Repair</legend>
|
<legend>Repair</legend>
|
||||||
<pref-width>60</pref-width>
|
<pref-width>60</pref-width>
|
||||||
<pref-height>28</pref-height>
|
<pref-height>28</pref-height>
|
||||||
<visible>
|
<visible>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</visible>
|
</visible>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>c172p.repair_damage();electrical.reset_battery_and_circuit_breakers();c172p.click("engine-repair", 6.0)</script>
|
<script>c172p.repair_damage();electrical.reset_battery_and_circuit_breakers();c172p.click("engine-repair", 6.0)</script>
|
||||||
</binding>
|
</binding>
|
||||||
</button>
|
</button>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<hrule/>
|
<hrule/>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>vbox</layout>
|
<layout>vbox</layout>
|
||||||
|
|
||||||
<checkbox>
|
<checkbox>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Show shadow</label>
|
<label>Show shadow</label>
|
||||||
<property>/sim/rendering/shadow-volume</property>
|
<property>/sim/rendering/shadow-volume</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-toggle</command>
|
<command>property-toggle</command>
|
||||||
<property>/sim/rendering/shadow-volume</property>
|
<property>/sim/rendering/shadow-volume</property>
|
||||||
</binding>
|
</binding>
|
||||||
</checkbox>
|
</checkbox>
|
||||||
|
|
||||||
<checkbox>
|
<checkbox>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Human models</label>
|
<label>Human models</label>
|
||||||
<property>/sim/model/occupants</property>
|
<property>/sim/model/occupants</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
</checkbox>
|
</checkbox>
|
||||||
|
|
||||||
<checkbox>
|
<checkbox>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Disable frost and fog</label>
|
<label>Disable frost and fog</label>
|
||||||
<property>/fdm/jsbsim/weather</property>
|
<property>/fdm/jsbsim/weather</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
</checkbox>
|
</checkbox>
|
||||||
|
|
||||||
<checkbox>
|
<checkbox>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Show registration on panel</label>
|
<label>Show registration on panel</label>
|
||||||
<property>/sim/model/c172p/immat-on-panel</property>
|
<property>/sim/model/c172p/immat-on-panel</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
</checkbox>
|
</checkbox>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<hrule/>
|
<hrule/>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>vbox</layout>
|
<layout>vbox</layout>
|
||||||
|
|
||||||
<text>
|
<text>
|
||||||
<label>Engine power options</label>
|
<label>Engine power options</label>
|
||||||
<halign>center</halign>
|
<halign>center</halign>
|
||||||
</text>
|
</text>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>hbox</layout>
|
<layout>hbox</layout>
|
||||||
|
|
||||||
<radio>
|
<radio>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>160 HP</label>
|
<label>160 HP</label>
|
||||||
<property>sim/model/c172p/engine_flag_0</property>
|
<property>sim/model/c172p/engine_flag_0</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<enable>
|
<enable>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</enable>
|
</enable>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>
|
<script>
|
||||||
setprop("/controls/engines/active-engine", 0);
|
setprop("/controls/engines/active-engine", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_0", 1);
|
setprop("sim/model/c172p/engine_flag_0", 1);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 0);
|
setprop("sim/model/c172p/engine_flag_1", 0);
|
||||||
</script>
|
</script>
|
||||||
</binding>
|
</binding>
|
||||||
</radio>
|
</radio>
|
||||||
|
|
||||||
<radio>
|
<radio>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>180 HP</label>
|
<label>180 HP</label>
|
||||||
<property>sim/model/c172p/engine_flag_1</property>
|
<property>sim/model/c172p/engine_flag_1</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<enable>
|
<enable>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</enable>
|
</enable>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>
|
<script>
|
||||||
setprop("/controls/engines/active-engine", 1);
|
setprop("/controls/engines/active-engine", 1);
|
||||||
setprop("sim/model/c172p/engine_flag_0", 0);
|
setprop("sim/model/c172p/engine_flag_0", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 1);
|
setprop("sim/model/c172p/engine_flag_1", 1);
|
||||||
</script>
|
</script>
|
||||||
</binding>
|
</binding>
|
||||||
</radio>
|
</radio>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<hrule/>
|
<hrule/>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>vbox</layout>
|
<layout>vbox</layout>
|
||||||
|
|
||||||
<text>
|
<text>
|
||||||
<label>Landing gear options</label>
|
<label>Landing gear options</label>
|
||||||
<halign>center</halign>
|
<halign>center</halign>
|
||||||
</text>
|
</text>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>hbox</layout>
|
<layout>hbox</layout>
|
||||||
|
|
||||||
<radio>
|
<radio>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Default</label>
|
<label>Default</label>
|
||||||
<property>sim/model/c172p/bushkit_flag_0</property>
|
<property>sim/model/c172p/bushkit_flag_0</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<enable>
|
<enable>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</enable>
|
</enable>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>
|
<script>
|
||||||
setprop("fdm/jsbsim/bushkit", 0);
|
setprop("fdm/jsbsim/bushkit", 0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_0",1);
|
setprop("sim/model/c172p/bushkit_flag_0",1);
|
||||||
setprop("sim/model/c172p/bushkit_flag_1",0);
|
setprop("sim/model/c172p/bushkit_flag_1",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_2",0);
|
setprop("sim/model/c172p/bushkit_flag_2",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_3",0);
|
setprop("sim/model/c172p/bushkit_flag_3",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_4",0);
|
setprop("sim/model/c172p/bushkit_flag_4",0);
|
||||||
|
|
||||||
# Select 160 HP engine
|
# Select 160 HP engine
|
||||||
setprop("/controls/engines/active-engine", 0);
|
setprop("/controls/engines/active-engine", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_0", 1);
|
setprop("sim/model/c172p/engine_flag_0", 1);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 0);
|
setprop("sim/model/c172p/engine_flag_1", 0);
|
||||||
</script>
|
</script>
|
||||||
</binding>
|
</binding>
|
||||||
</radio>
|
</radio>
|
||||||
|
|
||||||
<radio>
|
<radio>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>26"</label>
|
<label>26"</label>
|
||||||
<property>sim/model/c172p/bushkit_flag_1</property>
|
<property>sim/model/c172p/bushkit_flag_1</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<enable>
|
<enable>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</enable>
|
</enable>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>
|
<script>
|
||||||
setprop("fdm/jsbsim/bushkit", 1);
|
setprop("fdm/jsbsim/bushkit", 1);
|
||||||
setprop("sim/model/c172p/bushkit_flag_0",0);
|
setprop("sim/model/c172p/bushkit_flag_0",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_1",1);
|
setprop("sim/model/c172p/bushkit_flag_1",1);
|
||||||
setprop("sim/model/c172p/bushkit_flag_2",0);
|
setprop("sim/model/c172p/bushkit_flag_2",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_3",0);
|
setprop("sim/model/c172p/bushkit_flag_3",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_4",0);
|
setprop("sim/model/c172p/bushkit_flag_4",0);
|
||||||
|
|
||||||
# Select 160 HP engine
|
# Select 160 HP engine
|
||||||
setprop("/controls/engines/active-engine", 0);
|
setprop("/controls/engines/active-engine", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_0", 1);
|
setprop("sim/model/c172p/engine_flag_0", 1);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 0);
|
setprop("sim/model/c172p/engine_flag_1", 0);
|
||||||
</script>
|
</script>
|
||||||
</binding>
|
</binding>
|
||||||
</radio>
|
</radio>
|
||||||
|
|
||||||
<radio>
|
<radio>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>36"</label>
|
<label>36"</label>
|
||||||
<property>sim/model/c172p/bushkit_flag_2</property>
|
<property>sim/model/c172p/bushkit_flag_2</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<enable>
|
<enable>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</enable>
|
</enable>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>
|
<script>
|
||||||
setprop("fdm/jsbsim/bushkit", 2);
|
setprop("fdm/jsbsim/bushkit", 2);
|
||||||
setprop("sim/model/c172p/bushkit_flag_0",0);
|
setprop("sim/model/c172p/bushkit_flag_0",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_1",0);
|
setprop("sim/model/c172p/bushkit_flag_1",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_2",1);
|
setprop("sim/model/c172p/bushkit_flag_2",1);
|
||||||
setprop("sim/model/c172p/bushkit_flag_3",0);
|
setprop("sim/model/c172p/bushkit_flag_3",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_4",0);
|
setprop("sim/model/c172p/bushkit_flag_4",0);
|
||||||
|
|
||||||
# Select 160 HP engine
|
# Select 160 HP engine
|
||||||
setprop("/controls/engines/active-engine", 0);
|
setprop("/controls/engines/active-engine", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_0", 1);
|
setprop("sim/model/c172p/engine_flag_0", 1);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 0);
|
setprop("sim/model/c172p/engine_flag_1", 0);
|
||||||
</script>
|
</script>
|
||||||
</binding>
|
</binding>
|
||||||
</radio>
|
</radio>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>hbox</layout>
|
<layout>hbox</layout>
|
||||||
|
|
||||||
<radio>
|
<radio>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Floats</label>
|
<label>Floats</label>
|
||||||
<property>sim/model/c172p/bushkit_flag_3</property>
|
<property>sim/model/c172p/bushkit_flag_3</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<enable>
|
<enable>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</enable>
|
</enable>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>
|
<script>
|
||||||
setprop("fdm/jsbsim/bushkit", 3);
|
setprop("fdm/jsbsim/bushkit", 3);
|
||||||
setprop("sim/model/c172p/bushkit_flag_0",0);
|
setprop("sim/model/c172p/bushkit_flag_0",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_1",0);
|
setprop("sim/model/c172p/bushkit_flag_1",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_2",0);
|
setprop("sim/model/c172p/bushkit_flag_2",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_3",1);
|
setprop("sim/model/c172p/bushkit_flag_3",1);
|
||||||
setprop("sim/model/c172p/bushkit_flag_4",0);
|
setprop("sim/model/c172p/bushkit_flag_4",0);
|
||||||
|
|
||||||
# Select 180 HP engine
|
# Select 180 HP engine
|
||||||
setprop("/controls/engines/active-engine", 1);
|
setprop("/controls/engines/active-engine", 1);
|
||||||
setprop("sim/model/c172p/engine_flag_0", 0);
|
setprop("sim/model/c172p/engine_flag_0", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 1);
|
setprop("sim/model/c172p/engine_flag_1", 1);
|
||||||
</script>
|
</script>
|
||||||
</binding>
|
</binding>
|
||||||
</radio>
|
</radio>
|
||||||
|
|
||||||
<radio>
|
<radio>
|
||||||
<halign>left</halign>
|
<halign>left</halign>
|
||||||
<label>Amphibious</label>
|
<label>Amphibious</label>
|
||||||
<property>sim/model/c172p/bushkit_flag_4</property>
|
<property>sim/model/c172p/bushkit_flag_4</property>
|
||||||
<live>true</live>
|
<live>true</live>
|
||||||
<enable>
|
<enable>
|
||||||
<not>
|
<not>
|
||||||
<property>/sim/freeze/replay-state</property>
|
<property>/sim/freeze/replay-state</property>
|
||||||
</not>
|
</not>
|
||||||
</enable>
|
</enable>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-apply</command>
|
<command>dialog-apply</command>
|
||||||
</binding>
|
</binding>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
<script>
|
<script>
|
||||||
setprop("fdm/jsbsim/bushkit", 4);
|
setprop("fdm/jsbsim/bushkit", 4);
|
||||||
setprop("sim/model/c172p/bushkit_flag_0",0);
|
setprop("sim/model/c172p/bushkit_flag_0",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_1",0);
|
setprop("sim/model/c172p/bushkit_flag_1",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_2",0);
|
setprop("sim/model/c172p/bushkit_flag_2",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_3",0);
|
setprop("sim/model/c172p/bushkit_flag_3",0);
|
||||||
setprop("sim/model/c172p/bushkit_flag_4",1);
|
setprop("sim/model/c172p/bushkit_flag_4",1);
|
||||||
|
|
||||||
# Select 180 HP engine
|
# Select 180 HP engine
|
||||||
setprop("/controls/engines/active-engine", 1);
|
setprop("/controls/engines/active-engine", 1);
|
||||||
setprop("sim/model/c172p/engine_flag_0", 0);
|
setprop("sim/model/c172p/engine_flag_0", 0);
|
||||||
setprop("sim/model/c172p/engine_flag_1", 1);
|
setprop("sim/model/c172p/engine_flag_1", 1);
|
||||||
</script>
|
</script>
|
||||||
</binding>
|
</binding>
|
||||||
</radio>
|
</radio>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<hrule/>
|
<hrule/>
|
||||||
|
|
||||||
<group>
|
<group>
|
||||||
<layout>hbox</layout>
|
<layout>hbox</layout>
|
||||||
<default-padding>6</default-padding>
|
<default-padding>6</default-padding>
|
||||||
|
|
||||||
<empty><stretch>true</stretch></empty>
|
<empty><stretch>true</stretch></empty>
|
||||||
|
|
||||||
<button>
|
<button>
|
||||||
<legend>Close</legend>
|
<legend>Close</legend>
|
||||||
<equal>true</equal>
|
<equal>true</equal>
|
||||||
<key>Esc</key>
|
<key>Esc</key>
|
||||||
<default>true</default>
|
<default>true</default>
|
||||||
<binding>
|
<binding>
|
||||||
<command>dialog-close</command>
|
<command>dialog-close</command>
|
||||||
</binding>
|
</binding>
|
||||||
</button>
|
</button>
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
<default>
|
<default>
|
||||||
|
|
||||||
<menu n="10">
|
<menu n="10">
|
||||||
<label>Cessna C172P</label>
|
<label>Cessna C172P</label>
|
||||||
<enabled type="bool">true</enabled>
|
<enabled type="bool">true</enabled>
|
||||||
|
@ -31,7 +32,7 @@
|
||||||
</binding>
|
</binding>
|
||||||
</item>
|
</item>
|
||||||
|
|
||||||
<item>
|
<item>
|
||||||
<label>Flashlight</label>
|
<label>Flashlight</label>
|
||||||
<binding>
|
<binding>
|
||||||
<command>nasal</command>
|
<command>nasal</command>
|
||||||
|
@ -41,10 +42,10 @@
|
||||||
|
|
||||||
<item>
|
<item>
|
||||||
<label>Show/Hide Yokes</label>
|
<label>Show/Hide Yokes</label>
|
||||||
<binding>
|
<binding>
|
||||||
<command>property-toggle</command>
|
<command>property-toggle</command>
|
||||||
<property>/sim/model/hide-yoke</property>
|
<property>/sim/model/hide-yoke</property>
|
||||||
</binding>
|
</binding>
|
||||||
</item>
|
</item>
|
||||||
|
|
||||||
<item>
|
<item>
|
||||||
|
@ -55,6 +56,7 @@
|
||||||
</binding>
|
</binding>
|
||||||
</item>
|
</item>
|
||||||
</menu>
|
</menu>
|
||||||
|
|
||||||
</default>
|
</default>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
BIN
Aircraft/c172p/splash6.png
Normal file
BIN
Aircraft/c172p/splash6.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 368 KiB |
Binary file not shown.
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 7 KiB |
Loading…
Reference in a new issue