Engines: New CFM performance, toga limit but its not active. needs fadec rewrite
This commit is contained in:
parent
318da4c0a2
commit
4466f8b701
14 changed files with 500 additions and 277 deletions
|
@ -94,7 +94,7 @@
|
|||
<ground_reactions file="Systems/a320-ground-reactions"/>
|
||||
|
||||
<propulsion>
|
||||
<engine file="cfm56_5b4_1">
|
||||
<engine file="cfm56-5b4_1">
|
||||
<location unit="M">
|
||||
<x>-5.34904</x>
|
||||
<y>-5.755</y>
|
||||
|
@ -120,7 +120,7 @@
|
|||
</thruster>
|
||||
</engine>
|
||||
|
||||
<engine file="cfm56_5b4_2">
|
||||
<engine file="cfm56-5b4_2">
|
||||
<location unit="M">
|
||||
<x>-5.34904</x>
|
||||
<y>5.755</y>
|
||||
|
@ -276,6 +276,7 @@
|
|||
<system file="glass-effect"/>
|
||||
<system file="a320-fbw"/>
|
||||
<system file="a320-fcs"/>
|
||||
<system file="a320-cfm56-5b4-engine-fadec"/>
|
||||
<system file="a320-fuel"/>
|
||||
<system file="a320-fwc"/>
|
||||
<system file="a320-fwc-phases"/>
|
||||
|
|
|
@ -94,7 +94,7 @@
|
|||
<ground_reactions file="Systems/a320-ground-reactions"/>
|
||||
|
||||
<propulsion>
|
||||
<engine file="v2527_a5_1">
|
||||
<engine file="v2527-a5_1">
|
||||
<location unit="M">
|
||||
<x>-5.34904</x>
|
||||
<y>-5.755</y>
|
||||
|
@ -120,7 +120,7 @@
|
|||
</thruster>
|
||||
</engine>
|
||||
|
||||
<engine file="v2527_a5_2">
|
||||
<engine file="v2527-a5_2">
|
||||
<location unit="M">
|
||||
<x>-5.34904</x>
|
||||
<y>5.755</y>
|
||||
|
|
|
@ -786,8 +786,9 @@
|
|||
|
||||
<FMGC n="0">
|
||||
<active-fmgc-channel type="int">0</active-fmgc-channel>
|
||||
<internal>
|
||||
<internal n="0">
|
||||
<cost-index type="int">0</cost-index>
|
||||
<flex type="int">45</flex>
|
||||
<to-state type="bool">0</to-state>
|
||||
</internal>
|
||||
<simbrief-username type="string"></simbrief-username>
|
||||
|
|
128
Engines/cfm56-5b4_1.xml
Normal file
128
Engines/cfm56-5b4_1.xml
Normal file
|
@ -0,0 +1,128 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!-- Copyright (c) 2021 Josh Davidson (Octal450) -->
|
||||
|
||||
<turbine_engine name="CFM56-5B4">
|
||||
|
||||
<milthrust>27000</milthrust>
|
||||
<tsfc>0.445</tsfc>
|
||||
<bleed>0.03</bleed>
|
||||
<ignitionn1>0.6</ignitionn1>
|
||||
<ignitionn2>22.2</ignitionn2>
|
||||
<n1spinup>0.05</n1spinup>
|
||||
<n2spinup>1.85</n2spinup>
|
||||
<n1startrate>0.573</n1startrate>
|
||||
<n2startrate>1.127</n2startrate>
|
||||
<idlen1>18.9</idlen1>
|
||||
<idlen2>59.4</idlen2>
|
||||
<maxn1>104.0</maxn1>
|
||||
<maxn2>105.0</maxn2>
|
||||
<augmented>0</augmented>
|
||||
<injected>0</injected>
|
||||
|
||||
<function name="N1SpoolUp">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N1SpoolDown">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolUp"> <!-- N1 to N2 factor 0.535840188014101 -->
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 0.6
|
||||
28 1.6
|
||||
46 5.2
|
||||
68 8.3
|
||||
80 10.5
|
||||
94 11.5
|
||||
103 12.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolDown"> <!-- N1 to N2 factor 0.535840188014101 -->
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 0.6
|
||||
28 1.6
|
||||
46 5.2
|
||||
68 8.3
|
||||
80 10.5
|
||||
94 11.5
|
||||
103 12.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="IdleThrust">
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 0.0000
|
||||
0.2 0.0500 0.0291 0.0205 0.0514 0.0727 0.0729 0.0000
|
||||
0.4 0.0040 0.0047 0.0012 0.0412 0.0585 0.0671 0.0000
|
||||
0.6 0.0000 0.0000 0.0000 0.0000 0.0416 0.0518 0.0000
|
||||
0.8 0.0000 0.0000 0.0000 0.0000 0.0354 0.0468 0.0000
|
||||
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0352 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="MilThrust"> <!-- If you change this, make sure you update the table in the engine system file -->
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2710 0.0000
|
||||
0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2610 0.0000
|
||||
0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2530 0.0000
|
||||
0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2180 0.0000
|
||||
0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.1930 0.0000
|
||||
0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1140 0.0000
|
||||
1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0450 0.0000
|
||||
1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
<property>fadec/limit/rated-thrust-factor</property>
|
||||
<table> <!-- Thrust loss due to reverser angle -->
|
||||
<independentVar lookup="row">/engines/engine[0]/reverser-pos-norm</independentVar>
|
||||
<tableData>
|
||||
0.01 1.00
|
||||
1.00 0.65
|
||||
</tableData>
|
||||
</table>
|
||||
</product>
|
||||
</function>
|
||||
|
||||
</turbine_engine>
|
128
Engines/cfm56-5b4_2.xml
Normal file
128
Engines/cfm56-5b4_2.xml
Normal file
|
@ -0,0 +1,128 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!-- Copyright (c) 2021 Josh Davidson (Octal450) -->
|
||||
|
||||
<turbine_engine name="CFM56-5B4">
|
||||
|
||||
<milthrust>27000</milthrust>
|
||||
<tsfc>0.445</tsfc>
|
||||
<bleed>0.03</bleed>
|
||||
<ignitionn1>0.6</ignitionn1>
|
||||
<ignitionn2>22.2</ignitionn2>
|
||||
<n1spinup>0.05</n1spinup>
|
||||
<n2spinup>1.85</n2spinup>
|
||||
<n1startrate>0.573</n1startrate>
|
||||
<n2startrate>1.127</n2startrate>
|
||||
<idlen1>18.9</idlen1>
|
||||
<idlen2>59.4</idlen2>
|
||||
<maxn1>104.0</maxn1>
|
||||
<maxn2>105.0</maxn2>
|
||||
<augmented>0</augmented>
|
||||
<injected>0</injected>
|
||||
|
||||
<function name="N1SpoolUp">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N1SpoolDown">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolUp"> <!-- N1 to N2 factor 0.535840188014101 -->
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 0.6
|
||||
28 1.6
|
||||
46 5.2
|
||||
68 8.3
|
||||
80 10.5
|
||||
94 11.5
|
||||
103 12.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolDown"> <!-- N1 to N2 factor 0.535840188014101 -->
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 0.6
|
||||
28 1.6
|
||||
46 5.2
|
||||
68 8.3
|
||||
80 10.5
|
||||
94 11.5
|
||||
103 12.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="IdleThrust">
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 0.0430 0.0458 0.0378 0.0684 0.0819 0.0793 0.0000
|
||||
0.2 0.0500 0.0291 0.0205 0.0514 0.0727 0.0729 0.0000
|
||||
0.4 0.0040 0.0047 0.0012 0.0412 0.0585 0.0671 0.0000
|
||||
0.6 0.0000 0.0000 0.0000 0.0000 0.0416 0.0518 0.0000
|
||||
0.8 0.0000 0.0000 0.0000 0.0000 0.0354 0.0468 0.0000
|
||||
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0352 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="MilThrust"> <!-- If you change this, make sure you update the table in the engine system file -->
|
||||
<product>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2710 0.0000
|
||||
0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2610 0.0000
|
||||
0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2530 0.0000
|
||||
0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2180 0.0000
|
||||
0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.1930 0.0000
|
||||
0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1140 0.0000
|
||||
1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0450 0.0000
|
||||
1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
<property>fadec/limit/rated-thrust-factor</property>
|
||||
<table> <!-- Thrust loss due to reverser angle -->
|
||||
<independentVar lookup="row">/engines/engine[1]/reverser-pos-norm</independentVar>
|
||||
<tableData>
|
||||
0.01 1.00
|
||||
1.00 0.65
|
||||
</tableData>
|
||||
</table>
|
||||
</product>
|
||||
</function>
|
||||
|
||||
</turbine_engine>
|
|
@ -1,119 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!-- Copyright (c) 2020 Josh Davidson (Octal450) -->
|
||||
|
||||
<turbine_engine name="CFM56_5B4">
|
||||
|
||||
<!-- source https://www.youtube.com/watch?v=jnGfzv7Odh4 -->
|
||||
<milthrust> 27000 </milthrust>
|
||||
<tsfc> 0.445 </tsfc>
|
||||
<bleed> 0.03 </bleed>
|
||||
<ignitionn1> 0.6 </ignitionn1>
|
||||
<ignitionn2> 22.2</ignitionn2>
|
||||
<idlen1> 18.9 </idlen1>
|
||||
<idlen2> 59.4 </idlen2>
|
||||
<n1spinup> 0.05 </n1spinup>
|
||||
<n2spinup> 1.85 </n2spinup>
|
||||
<n1startrate> 0.573 </n1startrate>
|
||||
<n2startrate> 1.127 </n2startrate>
|
||||
<maxn1> 103.8 </maxn1>
|
||||
<maxn2> 101.4 </maxn2>
|
||||
<augmented> 0 </augmented>
|
||||
<injected> 0 </injected>
|
||||
|
||||
<function name="N1SpoolUp">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N1SpoolDown">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolUp">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolDown">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[0]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="IdleThrust">
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 0.0430 0.0458 0.0378 0.0684 0.0619 0.0693 0.0000
|
||||
0.2 0.0500 0.0291 0.0205 0.0514 0.0627 0.0629 0.0000
|
||||
0.4 0.0040 0.0047 0.0012 0.0412 0.0485 0.0571 0.0000
|
||||
0.6 0.0000 0.0000 0.0000 0.0000 0.0316 0.0418 0.0000
|
||||
0.8 0.0000 0.0000 0.0000 0.0000 0.0254 0.0368 0.0000
|
||||
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="MilThrust">
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2710 0.0000
|
||||
0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2610 0.0000
|
||||
0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2530 0.0000
|
||||
0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2180 0.0000
|
||||
0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.1930 0.0000
|
||||
0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1140 0.0000
|
||||
1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0450 0.0000
|
||||
1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
</turbine_engine>
|
|
@ -1,119 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!-- Copyright (c) 2020 Josh Davidson (Octal450) -->
|
||||
|
||||
<turbine_engine name="CFM56_5B4">
|
||||
|
||||
<!-- source https://www.youtube.com/watch?v=jnGfzv7Odh4 -->
|
||||
<milthrust> 27000 </milthrust>
|
||||
<tsfc> 0.445 </tsfc>
|
||||
<bleed> 0.03 </bleed>
|
||||
<ignitionn1> 0.6 </ignitionn1>
|
||||
<ignitionn2> 22.2</ignitionn2>
|
||||
<idlen1> 18.9 </idlen1>
|
||||
<idlen2> 59.4 </idlen2>
|
||||
<n1spinup> 0.05 </n1spinup>
|
||||
<n2spinup> 1.85 </n2spinup>
|
||||
<n1startrate> 0.573 </n1startrate>
|
||||
<n2startrate> 1.127 </n2startrate>
|
||||
<maxn1> 103.8 </maxn1>
|
||||
<maxn2> 101.4 </maxn2>
|
||||
<augmented> 0 </augmented>
|
||||
<injected> 0 </injected>
|
||||
|
||||
<function name="N1SpoolUp">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N1SpoolDown">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolUp">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="N2SpoolDown">
|
||||
<table>
|
||||
<independentVar lookup="row">/engines/engine[1]/n1</independentVar>
|
||||
<tableData>
|
||||
24 1.1
|
||||
28 2.9
|
||||
46 9.7
|
||||
68 15.4
|
||||
80 19.6
|
||||
94 21.4
|
||||
103 23.6
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="IdleThrust">
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 0.0430 0.0458 0.0378 0.0684 0.0619 0.0693 0.0000
|
||||
0.2 0.0500 0.0291 0.0205 0.0514 0.0627 0.0629 0.0000
|
||||
0.4 0.0040 0.0047 0.0012 0.0412 0.0485 0.0571 0.0000
|
||||
0.6 0.0000 0.0000 0.0000 0.0000 0.0316 0.0418 0.0000
|
||||
0.8 0.0000 0.0000 0.0000 0.0000 0.0254 0.0368 0.0000
|
||||
1.0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0252 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
<function name="MilThrust">
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2710 0.0000
|
||||
0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2610 0.0000
|
||||
0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2530 0.0000
|
||||
0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2180 0.0000
|
||||
0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.1930 0.0000
|
||||
0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1140 0.0000
|
||||
1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0450 0.0000
|
||||
1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
|
||||
</turbine_engine>
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
<!-- Copyright (c) 2020 Josh Davidson (Octal450) -->
|
||||
|
||||
<turbine_engine name="V2527_A5">
|
||||
<turbine_engine name="V2527-A5">
|
||||
|
||||
<!-- data measured from https://www.youtube.com/watch?v=gPRQcYNRV_U -->
|
||||
<milthrust> 24800 </milthrust>
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
<!-- Copyright (c) 2020 Josh Davidson (Octal450) -->
|
||||
|
||||
<turbine_engine name="V2527_A5">
|
||||
<turbine_engine name="V2527-A5">
|
||||
|
||||
<!-- data measured from https://www.youtube.com/watch?v=gPRQcYNRV_U -->
|
||||
<milthrust> 24800 </milthrust>
|
|
@ -248,7 +248,7 @@ var postInit = func() {
|
|||
var FMGCNodes = {
|
||||
costIndex: props.globals.initNode("/FMGC/internal/cost-index", 0, "DOUBLE"),
|
||||
flexSet: props.globals.initNode("/FMGC/internal/flex-set", 0, "BOOL"),
|
||||
flexTemp: props.globals.initNode("/FMGC/internal/flex", 0, "INT"),
|
||||
flexTemp: props.globals.initNode("/FMGC/internal/flex", 45, "INT"),
|
||||
mngSpdAlt: props.globals.getNode("/FMGC/internal/mng-alt-spd"),
|
||||
mngMachAlt: props.globals.getNode("/FMGC/internal/mng-alt-mach"),
|
||||
toFromSet: props.globals.initNode("/FMGC/internal/tofrom-set", 0, "BOOL"),
|
||||
|
|
|
@ -222,7 +222,7 @@ var perfTOInput = func(key, i) {
|
|||
}
|
||||
} else if (key == "R4" and modifiable) {
|
||||
if (scratchpad == "CLR") {
|
||||
setprop("/FMGC/internal/flex", 0);
|
||||
setprop("/FMGC/internal/flex", 45);
|
||||
setprop("/FMGC/internal/flex-set", 0);
|
||||
mcdu_scratchpad.scratchpads[i].empty();
|
||||
} else {
|
||||
|
@ -231,8 +231,6 @@ var perfTOInput = func(key, i) {
|
|||
if (int(scratchpad) != nil and scratchpad >= 0 and scratchpad <= 99) {
|
||||
setprop("/FMGC/internal/flex", scratchpad);
|
||||
setprop("/FMGC/internal/flex-set", 1);
|
||||
var flex_calc = getprop("/FMGC/internal/flex") - getprop("environment/temperature-degc");
|
||||
setprop("/FMGC/internal/flex-cmd", flex_calc);
|
||||
mcdu_scratchpad.scratchpads[i].empty();
|
||||
} else {
|
||||
mcdu_message(i, "NOT ALLOWED");
|
||||
|
|
205
Systems/a320-cfm56-5b4-engine-fadec.xml
Normal file
205
Systems/a320-cfm56-5b4-engine-fadec.xml
Normal file
|
@ -0,0 +1,205 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!-- Airbus A320 CFM56-5B4 Engine -->
|
||||
<!-- Copyright (c) 2021 Josh Davidson (Octal450) -->
|
||||
|
||||
<system name="A320: CFM56 Engine">
|
||||
|
||||
<property value="45">fadec/limit/rated-temp</property>
|
||||
<property value="27000">fadec/limit/rated-thrust</property>
|
||||
|
||||
<channel name="Thrust Limits">
|
||||
|
||||
<fcs_function name="fadec/limit/rated-thrust-n1"> <!-- Vs 98.7, 104.8 (-15 bias + 1), 103.2 -->
|
||||
<function>
|
||||
<table>
|
||||
<independentVar lookup="row">/position/altitude-ft</independentVar>
|
||||
<independentVar lookup="column">propulsion/tat-c</independentVar>
|
||||
<tableData>
|
||||
-45 -15 15 45 75
|
||||
0 79.5 84.6 89.2 93.8 98.3
|
||||
10000 90.1 94.8 99.1 100.6 99.3
|
||||
43000 88.7 89.1 94.2 99.3 104.3
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<fcs_function name="fadec/limit/milthrust-unmodified"> <!-- Copy of MilThrust table in engines file -->
|
||||
<function>
|
||||
<table>
|
||||
<independentVar lookup="row">velocities/mach</independentVar>
|
||||
<independentVar lookup="column">atmosphere/density-altitude</independentVar>
|
||||
<tableData>
|
||||
-10000 0 10000 20000 30000 40000 50000
|
||||
0.0 1.2600 1.0000 0.7400 0.5640 0.3920 0.2710 0.0000
|
||||
0.2 1.1710 0.9740 0.6970 0.5360 0.3850 0.2610 0.0000
|
||||
0.4 1.1500 0.9570 0.6920 0.5460 0.3870 0.2530 0.0000
|
||||
0.6 1.1810 0.9410 0.7210 0.5660 0.3580 0.2180 0.0000
|
||||
0.8 1.2290 1.0200 0.7820 0.5570 0.3040 0.1930 0.0000
|
||||
0.9 1.2580 1.0200 0.7820 0.5220 0.2710 0.1140 0.0000
|
||||
1.0 1.1810 0.9510 0.7210 0.4410 0.1740 0.0450 0.0000
|
||||
1.2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
1.4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!-- Following functions fix a FGTurbine inaccuracy... rated thrust N1% should be rated thrust lbs -->
|
||||
<!-- These calculations change it so that the rated power at sea level is at the correct N1% value. It still changes with altitude and mach as it should -->
|
||||
<fcs_function name="fadec/limit/fgturbine-thrust-lbs">
|
||||
<function>
|
||||
<sum>
|
||||
<product>
|
||||
<property>propulsion/engine/IdleThrust</property>
|
||||
<property>fadec/limit/rated-thrust</property>
|
||||
</product>
|
||||
<product>
|
||||
<difference>
|
||||
<property>fadec/limit/rated-thrust</property>
|
||||
<product>
|
||||
<property>propulsion/engine[0]/IdleThrust</property> <!-- It doesn't matter which engine, its same for all -->
|
||||
<property>fadec/limit/rated-thrust</property>
|
||||
</product>
|
||||
</difference>
|
||||
<property>fadec/limit/milthrust-unmodified</property>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<fcs_function name="fadec/limit/rated-thrust-lbs">
|
||||
<function>
|
||||
<sum>
|
||||
<product>
|
||||
<property>propulsion/engine[0]/IdleThrust</property> <!-- It doesn't matter which engine, its same for all -->
|
||||
<property>fadec/limit/rated-thrust</property>
|
||||
</product>
|
||||
<product>
|
||||
<product>
|
||||
<difference>
|
||||
<property>fadec/limit/rated-thrust</property>
|
||||
<product>
|
||||
<property>propulsion/engine[0]/IdleThrust</property> <!-- It doesn't matter which engine, its same for all -->
|
||||
<property>fadec/limit/rated-thrust</property>
|
||||
</product>
|
||||
</difference>
|
||||
<property>fadec/limit/milthrust-unmodified</property>
|
||||
</product>
|
||||
<quotient>
|
||||
<difference>
|
||||
<property>fadec/limit/rated-thrust-n1</property>
|
||||
<value>18.9</value>
|
||||
</difference>
|
||||
<value>85.1</value>
|
||||
</quotient>
|
||||
<quotient>
|
||||
<difference>
|
||||
<property>fadec/limit/rated-thrust-n1</property>
|
||||
<value>18.9</value>
|
||||
</difference>
|
||||
<value>85.1</value>
|
||||
</quotient>
|
||||
</product>
|
||||
</sum>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<fcs_function name="fadec/limit/rated-thrust-factor"> <!-- Normalize -->
|
||||
<function>
|
||||
<ifthen>
|
||||
<eq>
|
||||
<property>/systems/acconfig/autoconfig-running</property>
|
||||
<value>1</value>
|
||||
</eq>
|
||||
<value>0</value>
|
||||
<ifthen>
|
||||
<nq> <!-- Prevent divide by 0 -->
|
||||
<property>fadec/limit/rated-thrust-lbs</property>
|
||||
<value>0</value>
|
||||
</nq>
|
||||
<quotient>
|
||||
<property>fadec/limit/fgturbine-thrust-lbs</property>
|
||||
<property>fadec/limit/rated-thrust-lbs</property>
|
||||
</quotient>
|
||||
<value>1</value>
|
||||
</ifthen>
|
||||
</ifthen>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<fcs_function name="fadec/limit/toga-ref"> <!-- Vs 98.7, 104.8 (-15 bias + 1), 103.2 -->
|
||||
<function>
|
||||
<table> <!-- TODO: Figure out how to integrate FCOM table with this one -->
|
||||
<independentVar lookup="row">/position/altitude-ft</independentVar>
|
||||
<independentVar lookup="column">propulsion/tat-c</independentVar>
|
||||
<tableData>
|
||||
-45 -15 15 45 75
|
||||
0 79.5 84.6 89.2 93.8 89.1
|
||||
10000 90.1 94.8 99.1 100.6 96.2
|
||||
43000 88.7 89.1 94.2 99.3 97.2
|
||||
</tableData>
|
||||
</table>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<fcs_function name="fadec/limit/toga">
|
||||
<function>
|
||||
<quotient>
|
||||
<integer>
|
||||
<sum>
|
||||
<product>
|
||||
<property>fadec/limit/toga-ref</property>
|
||||
<value>10</value>
|
||||
</product>
|
||||
<value>0.5</value> <!-- Make it round correctly -->
|
||||
</sum>
|
||||
</integer>
|
||||
<value>10</value>
|
||||
</quotient>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<summer name="fadec/limit/flex-temp-input"> <!-- (Rated - Flex) + TAT -->
|
||||
<input>fadec/limit/rated-temp</input>
|
||||
<input>-/FMGC/internal/flex</input>
|
||||
<input>propulsion/tat-c</input>
|
||||
</summer>
|
||||
|
||||
<fcs_function name="fadec/limit/flex-ref">
|
||||
<function>
|
||||
<min> <!-- FLEX can not increase thrust past TOGA -->
|
||||
<property>fadec/limit/toga-ref</property>
|
||||
<table> <!-- TODO: Figure out how to integrate FCOM table with this one -->
|
||||
<independentVar lookup="row">/position/altitude-ft</independentVar>
|
||||
<independentVar lookup="column">propulsion/tat-c</independentVar>
|
||||
<tableData>
|
||||
-45 -15 15 45 75
|
||||
0 79.5 84.6 89.2 93.8 89.1
|
||||
10000 90.1 94.8 99.1 100.6 96.2
|
||||
43000 88.7 89.1 94.2 99.3 97.2
|
||||
</tableData>
|
||||
</table>
|
||||
</min>
|
||||
</function>
|
||||
</fcs_function>
|
||||
|
||||
<!--
|
||||
TODO: need to figure out how to make MCT work, 24370lbs
|
||||
<switch name="fadec/limit/mct-final-ref">
|
||||
<default value="fadec/limit/mct-ref"/>
|
||||
<test value="fadec/limit/flex-ref">
|
||||
fadec/limit/flex-active eq 1
|
||||
</test>
|
||||
</switch>
|
||||
|
||||
<fcs_function name="fadec/limit/mct-ref">
|
||||
<function>
|
||||
</function>
|
||||
</fcs_function>
|
||||
-->
|
||||
|
||||
</channel>
|
||||
|
||||
</system>
|
|
@ -10,7 +10,7 @@
|
|||
<name>OAT Thrust Scale</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -28,7 +28,7 @@
|
|||
<name>FLX Thrust Scale</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -46,7 +46,7 @@
|
|||
<name>IDLE Limit</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -85,7 +85,7 @@
|
|||
<name>MAN One</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -107,7 +107,7 @@
|
|||
<name>MAN Two</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -129,7 +129,7 @@
|
|||
<name>MAN CMD One</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<product>
|
||||
|
@ -154,7 +154,7 @@
|
|||
<name>MAN CMD Two</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<product>
|
||||
|
@ -179,7 +179,7 @@
|
|||
<name>N1 CMD 1</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -220,7 +220,7 @@
|
|||
<name>N1 CMD 2</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -1057,7 +1057,7 @@
|
|||
<name>N1 Limit TOGA</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -1077,7 +1077,7 @@
|
|||
<name>N1 Limit MCT</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -1097,7 +1097,7 @@
|
|||
<name>N1 Limit FLX</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -1117,7 +1117,7 @@
|
|||
<name>N1 Limit CLB</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
<name>OAT Thrust Scale</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -28,7 +28,7 @@
|
|||
<name>FLX Thrust Scale</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -46,7 +46,7 @@
|
|||
<name>IDLE Limit</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<condition>
|
||||
<and>
|
||||
|
@ -85,7 +85,7 @@
|
|||
<name>MAN One</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -107,7 +107,7 @@
|
|||
<name>MAN Two</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -129,7 +129,7 @@
|
|||
<name>MAN CMD One</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<product>
|
||||
|
@ -154,7 +154,7 @@
|
|||
<name>MAN CMD Two</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<product>
|
||||
|
@ -1328,7 +1328,7 @@
|
|||
<name>EPR Limit TOGA</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -1356,7 +1356,7 @@
|
|||
<name>EPR CMD TOGA</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<sum>
|
||||
|
@ -1372,7 +1372,7 @@
|
|||
<name>EPR Limit MCT</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -1400,7 +1400,7 @@
|
|||
<name>EPR CMD MCT</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<sum>
|
||||
|
@ -1416,7 +1416,7 @@
|
|||
<name>EPR Limit FLX</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -1444,7 +1444,7 @@
|
|||
<name>EPR CMD FLX</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<sum>
|
||||
|
@ -1460,7 +1460,7 @@
|
|||
<name>EPR Limit CLB</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<table>
|
||||
|
@ -1488,7 +1488,7 @@
|
|||
<name>EPR CMD CLB</name>
|
||||
<type>gain</type>
|
||||
<gain>1.0</gain>
|
||||
<update-interval-secs type="double">0.05</update-interval-secs>
|
||||
<update-interval-secs>0.05</update-interval-secs>
|
||||
<input>
|
||||
<expression>
|
||||
<sum>
|
||||
|
|
Loading…
Reference in a new issue