A3XX: Add Fuel System, Minor bugfixes, Add Relay Sound

Systems: Add new custom Fuel System
Systems: Fix some minor issues
Sound: Add Sounds for Battery and External Power Relays
This commit is contained in:
Joshua Davidson 2017-06-09 12:53:49 -04:00
parent 3159ed8b7b
commit c3d78cdf9e
23 changed files with 1880 additions and 587 deletions

View file

@ -416,9 +416,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> 1 </yaw>
</orient>
<feed>3</feed>
<feed>1</feed>
<feed>2</feed>
<feed>7</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -444,9 +442,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> -1 </yaw>
</orient>
<feed>3</feed>
<feed>5</feed>
<feed>4</feed>
<feed>8</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -552,10 +548,32 @@ YAW MOI_________3950000______23089847_______24848934
<type>JET-A1</type>
<temperature>50</temperature>
</tank>
<tank type="FUEL"> <!-- LEFT FUEL PIPES (Engine 1 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>-226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
<tank type="FUEL"> <!-- RIGHT FUEL PIPES (Engine 2 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
</propulsion>
<system file="pushback" />
<!--system file="a320-fuel" /-->
<system file="fuel" />
<system file="glass-effect1" />
<system file="it-fbw" />
<system file="fmgc" />

View file

@ -416,9 +416,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> 1 </yaw>
</orient>
<feed>3</feed>
<feed>1</feed>
<feed>2</feed>
<feed>7</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -444,9 +442,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> -1 </yaw>
</orient>
<feed>3</feed>
<feed>5</feed>
<feed>4</feed>
<feed>8</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -552,10 +548,32 @@ YAW MOI_________3950000______23089847_______24848934
<type>JET-A1</type>
<temperature>50</temperature>
</tank>
<tank type="FUEL"> <!-- LEFT FUEL PIPES (Engine 1 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>-226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
<tank type="FUEL"> <!-- RIGHT FUEL PIPES (Engine 2 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
</propulsion>
<system file="pushback" />
<!--system file="a320-fuel" /-->
<system file="fuel" />
<system file="glass-effect1" />
<system file="it-fbw" />
<system file="fmgc" />

View file

@ -416,9 +416,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> 1 </yaw>
</orient>
<feed>3</feed>
<feed>1</feed>
<feed>2</feed>
<feed>7</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -444,9 +442,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> -1 </yaw>
</orient>
<feed>3</feed>
<feed>5</feed>
<feed>4</feed>
<feed>8</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -552,10 +548,32 @@ YAW MOI_________3950000______23089847_______24848934
<type>JET-A1</type>
<temperature>50</temperature>
</tank>
<tank type="FUEL"> <!-- LEFT FUEL PIPES (Engine 1 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>-226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
<tank type="FUEL"> <!-- RIGHT FUEL PIPES (Engine 2 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
</propulsion>
<system file="pushback" />
<!--system file="a320-fuel" /-->
<system file="fuel" />
<system file="glass-effect1" />
<system file="it-fbw" />
<system file="fmgc" />

View file

@ -416,9 +416,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> 1 </yaw>
</orient>
<feed>3</feed>
<feed>1</feed>
<feed>2</feed>
<feed>7</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -444,9 +442,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> -1 </yaw>
</orient>
<feed>3</feed>
<feed>5</feed>
<feed>4</feed>
<feed>8</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -471,7 +467,7 @@ YAW MOI_________3950000______23089847_______24848934
<capacity unit="LBS"> 412 </capacity><!-- 1 percent of total capacity, needs 20C to be filled -->
<contents unit="LBS"> 0 </contents>
<priority>4</priority>
<priority>0</priority>
<type>JET-A1</type>
<temperature>50</temperature>
</tank>
@ -548,14 +544,36 @@ YAW MOI_________3950000______23089847_______24848934
</location>
<capacity unit="LBS"> 412 </capacity><!-- 1 percent of total fuel capacity, needs 20C-->
<contents unit="LBS"> 0 </contents>
<priority>4</priority>
<priority>0</priority>
<type>JET-A1</type>
<temperature>50</temperature>
</tank>
<tank type="FUEL"> <!-- LEFT FUEL PIPES (Engine 1 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>-226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
<tank type="FUEL"> <!-- RIGHT FUEL PIPES (Engine 2 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
</propulsion>
<system file="pushback" />
<!--system file="a320-fuel" /-->
<system file="fuel" />
<system file="glass-effect1" />
<system file="it-fbw" />
<system file="fmgc" />

View file

@ -239,6 +239,12 @@
<tank n="6">
<name>Right Wing Surge</name>
</tank>
<tank n="7">
<name>Left Pipes</name>
</tank>
<tank n="8">
<name>Right Pipes</name>
</tank>
</fuel>
</consumables>
@ -545,6 +551,21 @@
<pump-yellow-eng type="bool">0</pump-yellow-eng>
<pump-yellow-elec type="bool">0</pump-yellow-elec>
</failures>
<fuel n="0">
<only-use-ctr-tank type="bool">0</only-use-ctr-tank>
<tank n="2">
<feed0 type="bool">0</feed0>
<feed1 type="bool">0</feed1>
</tank>
<tank n="3">
<feed0 type="bool">0</feed0>
<feed1 type="bool">0</feed1>
</tank>
<tank n="4">
<feed0 type="bool">0</feed0>
<feed1 type="bool">0</feed1>
</tank>
</fuel>
<hydraulic n="0">
<blue-psi>0</blue-psi>
<green-psi>0</green-psi>
@ -745,10 +766,11 @@
<file>Aircraft/A320Family/AircraftConfig/acconfig.nas</file>
</acconfig>
<systems>
<file>Aircraft/A320Family/Nasal/engines.nas</file>
<file>Aircraft/A320Family/Nasal/electrical.nas</file>
<file>Aircraft/A320Family/Nasal/pneumatics.nas</file>
<file>Aircraft/A320Family/Nasal/hydraulics.nas</file>
<file>Aircraft/A320Family/Nasal/fuel.nas</file>
<file>Aircraft/A320Family/Nasal/engines.nas</file>
<file>Aircraft/A320Family/Nasal/ADIRS.nas</file>
</systems>
<thrust>

View file

@ -416,9 +416,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> 1 </yaw>
</orient>
<feed>3</feed>
<feed>1</feed>
<feed>2</feed>
<feed>7</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -444,9 +442,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> -1 </yaw>
</orient>
<feed>3</feed>
<feed>5</feed>
<feed>4</feed>
<feed>8</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -552,10 +548,32 @@ YAW MOI_________3950000______23089847_______24848934
<type>JET-A1</type>
<temperature>50</temperature>
</tank>
<tank type="FUEL"> <!-- LEFT FUEL PIPES (Engine 1 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>-226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
<tank type="FUEL"> <!-- RIGHT FUEL PIPES (Engine 2 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
</propulsion>
<system file="pushback" />
<!--system file="a320-fuel" /-->
<system file="fuel" />
<system file="glass-effect1" />
<system file="it-fbw" />
<system file="fmgc" />

View file

@ -416,9 +416,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> 1 </yaw>
</orient>
<feed>3</feed>
<feed>1</feed>
<feed>2</feed>
<feed>7</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -444,9 +442,7 @@ YAW MOI_________3950000______23089847_______24848934
<pitch> 2.2 </pitch>
<yaw> -1 </yaw>
</orient>
<feed>3</feed>
<feed>5</feed>
<feed>4</feed>
<feed>8</feed>
<thruster file="direct">
<location unit="IN">
<x> 655.4820 </x>
@ -552,10 +548,32 @@ YAW MOI_________3950000______23089847_______24848934
<type>JET-A1</type>
<temperature>50</temperature>
</tank>
<tank type="FUEL"> <!-- LEFT FUEL PIPES (Engine 1 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>-226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
<tank type="FUEL"> <!-- RIGHT FUEL PIPES (Engine 2 feed from this) -->
<location unit="IN">
<x>589.735</x>
<y>226.575</y>
<z>-45.567</z>
</location>
<capacity unit="LBS"> 100 </capacity><!-- need review -->
<contents unit="LBS"> 0 </contents>
<priority>1</priority>
<type>JET-A1</type>
</tank>
</propulsion>
<system file="pushback" />
<!--system file="a320-fuel" /-->
<system file="fuel" />
<system file="glass-effect1" />
<system file="it-fbw" />
<system file="fmgc" />

View file

@ -51,6 +51,8 @@ var systemsReset = func {
systems.ADIRSreset();
systems.pneu_init();
systems.hyd_init();
systems.press_init();
systems.fuel_init();
fmgc.FMGCinit();
mcdu1.MCDU_reset();
mcdu2.MCDU_reset();
@ -195,6 +197,12 @@ var beforestart = func {
}
var beforestart_b = func {
# Continue with engine start prep.
setprop("/controls/fuel/tank2pump1", 1);
setprop("/controls/fuel/tank2pump2", 1);
setprop("/controls/fuel/tank3pump1", 1);
setprop("/controls/fuel/tank3pump2", 1);
setprop("/controls/fuel/tank4pump1", 1);
setprop("/controls/fuel/tank4pump2", 1);
setprop("/controls/electrical/switches/gen-apu", 1);
setprop("/controls/electrical/switches/galley", 1);
setprop("/controls/electrical/switches/gen1", 1);
@ -264,6 +272,12 @@ var taxi = func {
}
var taxi_b = func {
# Continue with engine start prep, and start engine 2.
setprop("/controls/fuel/tank2pump1", 1);
setprop("/controls/fuel/tank2pump2", 1);
setprop("/controls/fuel/tank3pump1", 1);
setprop("/controls/fuel/tank3pump2", 1);
setprop("/controls/fuel/tank4pump1", 1);
setprop("/controls/fuel/tank4pump2", 1);
setprop("/controls/electrical/switches/gen-apu", 1);
setprop("/controls/electrical/switches/galley", 1);
setprop("/controls/electrical/switches/gen1", 1);
@ -287,7 +301,7 @@ var taxi_b = func {
setprop("instrumentation/adirs/ir[1]/aligned",1);
setprop("instrumentation/adirs/ir[2]/aligned",1);
setprop("/controls/adirs/mcducbtn", 1);
settimer(taxi_c, 0.5);
settimer(taxi_c, 2);
}
var taxi_c = func {
setprop("/controls/engines/engine-start-switch", 2);

View file

@ -9,12 +9,44 @@
<!-- No button lights without power! -->
<animation>
<type>select</type>
<object-name>ACESSFeedBtn1F</object-name>
<object-name>ACESSFeedBtn2O</object-name>
<object-name>ACPack1Btn1F</object-name>
<object-name>ACPack1Btn2O</object-name>
<object-name>ACPack2Btn1F</object-name>
<object-name>ACPack2Btn2O</object-name>
<object-name>BatteryBtn11F</object-name>
<object-name>BatteryBtn12O</object-name>
<object-name>BatteryBtn21F</object-name>
<object-name>BatteryBtn22O</object-name>
<object-name>Gen1Btn1F</object-name>
<object-name>Gen1Btn2O</object-name>
<object-name>Gen2Btn1F</object-name>
<object-name>Gen2Btn2O</object-name>
<condition>
<or>
<greater-than-equals>
<property>/systems/electrical/battery1-amps</property>
<value>120</value>
</greater-than-equals>
<greater-than-equals>
<property>/systems/electrical/battery2-amps</property>
<value>120</value>
</greater-than-equals>
<greater-than-equals>
<property>/systems/electrical/bus/dc1</property>
<value>25</value>
</greater-than-equals>
<greater-than-equals>
<property>/systems/electrical/bus/dc2</property>
<value>25</value>
</greater-than-equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>ACESSFeedBtn1F</object-name>
<object-name>ACESSFeedBtn2O</object-name>
<object-name>APUBleedBtn1F</object-name>
<object-name>APUBleedBtn2O</object-name>
<object-name>APUGenBtn1F</object-name>
@ -29,27 +61,23 @@
<object-name>ADR2Btn2O</object-name>
<object-name>ADR3Btn1F</object-name>
<object-name>ADR3Btn2O</object-name>
<object-name>BatteryBtn11F</object-name>
<object-name>BatteryBtn12O</object-name>
<object-name>BatteryBtn21F</object-name>
<object-name>BatteryBtn22O</object-name>
<object-name>Battery-volt</object-name>
<object-name>Battery-volt-test</object-name>
<object-name>BlueElecPump1F</object-name>
<object-name>BlueElecPump2O</object-name>
<object-name>BusTieBtn2O</object-name>
<object-name>CFuelTank1Btn1F</object-name>
<object-name>CFuelTank1Btn2O</object-name>
<object-name>CFuelTank2Btn1F</object-name>
<object-name>CFuelTank2Btn2O</object-name>
<object-name>Eng1BleedBtn1F</object-name>
<object-name>Eng1BleedBtn2O</object-name>
<object-name>Eng2BleedBtn1F</object-name>
<object-name>Eng2BleedBtn2O</object-name>
<object-name>ExtPwrBtn1A</object-name>
<object-name>ExtPwrBtn2O</object-name>
<object-name>FuelModeBtn1F</object-name>
<object-name>FuelModeBtn2O</object-name>
<object-name>FuelXfeedBtn2O</object-name>
<object-name>GalleyPwrBtn1F</object-name>
<object-name>GalleyPwrBtn2O</object-name>
<object-name>Gen1Btn1F</object-name>
<object-name>Gen1Btn2O</object-name>
<object-name>Gen2Btn1F</object-name>
<object-name>Gen2Btn2O</object-name>
<object-name>GreenEngPump1F</object-name>
<object-name>GreenEngPump2O</object-name>
<object-name>HotAirBtn1F</object-name>
@ -62,24 +90,24 @@
<object-name>IR2Btn2A</object-name>
<object-name>IR3Btn1F</object-name>
<object-name>IR3Btn2A</object-name>
<object-name>LFuelTank1Btn1F</object-name>
<object-name>LFuelTank1Btn2O</object-name>
<object-name>LFuelTank2Btn1F</object-name>
<object-name>LFuelTank2Btn2O</object-name>
<object-name>IrsOnBatLightOB</object-name>
<object-name>PTU1F</object-name>
<object-name>PTU2O</object-name>
<object-name>RamAirBtn2O</object-name>
<object-name>RFuelTank1Btn1F</object-name>
<object-name>RFuelTank1Btn2O</object-name>
<object-name>RFuelTank2Btn1F</object-name>
<object-name>RFuelTank2Btn2O</object-name>
<object-name>YellowElecPump1F</object-name>
<object-name>YellowElecPump2O</object-name>
<object-name>YellowEngPump1F</object-name>
<object-name>YellowEngPump2O</object-name>
<condition>
<or>
<equals>
<property>/controls/electrical/switches/battery1</property>
<value>1</value>
</equals>
<equals>
<property>/controls/electrical/switches/battery2</property>
<value>1</value>
</equals>
<greater-than-equals>
<property>/systems/electrical/bus/dc1</property>
<value>25</value>
@ -1248,6 +1276,430 @@
</condition>
</animation>
<!-- Fuel -->
<animation>
<type>pick</type>
<object-name>FuelXfeedBtn</object-name>
<object-name>FuelXfeedBtn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/x-feed</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<!-- Did not make light yet-->
<!--animation>
<type>select</type>
<object-name>FuelModeBtn1O</object-name>
<condition>
<or>
<equals>
<property>/something</property>
<value>1</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation-->
<animation>
<type>select</type>
<object-name>FuelModeBtn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/x-feed</property>
<value>1</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>LFuelTank1Btn1</object-name>
<object-name>LFuelTank1Btn2</object-name>
<object-name>LFuelTank1Btn1F</object-name>
<object-name>LFuelTank1Btn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/tank2pump1</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<animation>
<type>select</type>
<object-name>LFuelTank1Btn1F</object-name>
<condition>
<or>
<!--equals>
<property>/controls/adirs/adr[1]/fault</property>
<value>1</value>
</equals-->
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>LFuelTank1Btn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/tank2pump1</property>
<value>0</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>LFuelTank2Btn1</object-name>
<object-name>LFuelTank2Btn2</object-name>
<object-name>LFuelTank2Btn1F</object-name>
<object-name>LFuelTank2Btn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/tank2pump2</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<animation>
<type>select</type>
<object-name>LFuelTank2Btn1F</object-name>
<condition>
<or>
<!--equals>
<property>/controls/adirs/adr[1]/fault</property>
<value>1</value>
</equals-->
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>LFuelTank2Btn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/tank2pump2</property>
<value>0</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>CFuelTank1Btn1</object-name>
<object-name>CFuelTank1Btn2</object-name>
<object-name>CFuelTank1Btn1F</object-name>
<object-name>CFuelTank1Btn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/tank3pump1</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<animation>
<type>select</type>
<object-name>CFuelTank1Btn1F</object-name>
<condition>
<or>
<!--equals>
<property>/controls/adirs/adr[1]/fault</property>
<value>1</value>
</equals-->
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>CFuelTank1Btn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/tank3pump1</property>
<value>0</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<!--animation>
<type>pick</type>
<object-name>FuelModeBtn</object-name>
<object-name>FuelModeBtn1F</object-name>
<object-name>FuelModeBtn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/mode</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation-->
<animation>
<type>select</type>
<object-name>FuelModeBtn1F</object-name>
<condition>
<or>
<!--equals>
<property>/something</property>
<value>1</value>
</equals-->
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>FuelModeBtn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/mode</property>
<value>0</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>CFuelTank2Btn1</object-name>
<object-name>CFuelTank2Btn2</object-name>
<object-name>CFuelTank2Btn1F</object-name>
<object-name>CFuelTank2Btn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/tank3pump2</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<animation>
<type>select</type>
<object-name>CFuelTank2Btn1F</object-name>
<condition>
<or>
<!--equals>
<property>/controls/adirs/adr[1]/fault</property>
<value>1</value>
</equals-->
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>CFuelTank2Btn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/tank3pump2</property>
<value>0</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>RFuelTank1Btn1</object-name>
<object-name>RFuelTank1Btn2</object-name>
<object-name>RFuelTank1Btn1F</object-name>
<object-name>RFuelTank1Btn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/tank4pump1</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<animation>
<type>select</type>
<object-name>RFuelTank1Btn1F</object-name>
<condition>
<or>
<!--equals>
<property>/controls/adirs/adr[1]/fault</property>
<value>1</value>
</equals-->
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>RFuelTank1Btn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/tank4pump1</property>
<value>0</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>RFuelTank2Btn1</object-name>
<object-name>RFuelTank2Btn2</object-name>
<object-name>RFuelTank2Btn1F</object-name>
<object-name>RFuelTank2Btn2O</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-toggle</command>
<property>/controls/fuel/tank4pump2</property>
</binding>
<binding>
<command>nasal</command>
<script>setprop("/sim/sounde/btn1", 1);</script>
</binding>
</action>
</animation>
<animation>
<type>select</type>
<object-name>RFuelTank2Btn1F</object-name>
<condition>
<or>
<!--equals>
<property>/controls/adirs/adr[1]/fault</property>
<value>1</value>
</equals-->
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>RFuelTank2Btn2O</object-name>
<condition>
<or>
<equals>
<property>/controls/fuel/tank4pump2</property>
<value>0</value>
</equals>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
</equals>
</or>
</condition>
</animation>
<!-- Electrical -->
<animation>
<name>Galley pick</name>
@ -1476,6 +1928,16 @@
<property>/systems/failures/elec-gen1</property>
<value>1</value>
</equals>
<and>
<equals>
<property>/controls/electrical/switches/gen1</property>
<value>1</value>
</equals>
<not-equals>
<property>/engines/engine[0]/state</property>
<value>3</value>
</not-equals>
</and>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>
@ -1733,6 +2195,16 @@
<property>/systems/failures/elec-gen2</property>
<value>1</value>
</equals>
<and>
<equals>
<property>/controls/electrical/switches/gen2</property>
<value>1</value>
</equals>
<not-equals>
<property>/engines/engine[1]/state</property>
<value>3</value>
</not-equals>
</and>
<equals>
<property>/controls/switches/annun-test</property>
<value>1</value>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 MiB

After

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 151 KiB

After

Width:  |  Height:  |  Size: 147 KiB

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,5 @@
# Electrical system for A320 by Joshua Davidson (it0uchpods) and Johnathan Redpath (legoboyvdlp).
# A3XX Electrical System
# Joshua Davidson (it0uchpods) and Jonathan Redpath (legoboyvdlp)
#############
# Init Vars #
@ -9,7 +10,9 @@ var ac_volt_min = 110;
var dc_volt_std = 28;
var dc_volt_min = 25;
var dc_amps_std = 150;
var dc_amps_std = 130;
var ac_hz_std = 400;
var ac_hz_std = 300;
var elec_init = func {
setprop("/controls/switches/annun-test", 0);

109
Nasal/fuel.nas Normal file
View file

@ -0,0 +1,109 @@
# A3XX Fuel System
# Joshua Davidson (it0uchpods)
#############
# Init Vars #
#############
var fuel_init = func {
setprop("/controls/fuel/x-feed", 0);
setprop("/controls/fuel/tank2pump1", 0);
setprop("/controls/fuel/tank2pump2", 0);
setprop("/controls/fuel/tank3pump1", 0);
setprop("/controls/fuel/tank3pump2", 0);
setprop("/controls/fuel/tank4pump1", 0);
setprop("/controls/fuel/tank4pump2", 0);
setprop("/controls/fuel/mode", 1);
setprop("/systems/fuel/x-feed", 0);
setprop("/systems/fuel/tank[2]/feed0", 0);
setprop("/systems/fuel/tank[2]/feed1", 0);
setprop("/systems/fuel/tank[3]/feed0", 0);
setprop("/systems/fuel/tank[3]/feed1", 0);
setprop("/systems/fuel/tank[4]/feed0", 0);
setprop("/systems/fuel/tank[4]/feed1", 0);
setprop("/systems/fuel/only-use-ctr-tank", 0);
fuel_timer.start();
}
##############
# Main Loops #
##############
var master_fuel = func {
var xfeed_sw = getprop("/controls/fuel/x-feed");
var tank2pump1_sw = getprop("/controls/fuel/tank2pump1");
var tank2pump2_sw = getprop("/controls/fuel/tank2pump2");
var tank3pump1_sw = getprop("/controls/fuel/tank3pump1");
var tank3pump2_sw = getprop("/controls/fuel/tank3pump2");
var tank4pump1_sw = getprop("/controls/fuel/tank4pump1");
var tank4pump2_sw = getprop("/controls/fuel/tank4pump2");
var mode_sw = getprop("/controls/fuel/mode");
var xfeed = getprop("/systems/fuel/x-feed");
var ac1 = getprop("/systems/electrical/bus/ac1");
var ac2 = getprop("/systems/electrical/bus/ac2");
if ((ac1 >= 110 or ac2 >= 110) and tank2pump1_sw) {
setprop("/systems/fuel/tank[2]/feed0", 1);
} else {
setprop("/systems/fuel/tank[2]/feed0", 0);
}
if ((ac1 >= 110 or ac2 >= 110) and tank2pump2_sw) {
setprop("/systems/fuel/tank[2]/feed1", 1);
} else {
setprop("/systems/fuel/tank[2]/feed1", 0);
}
if ((ac1 >= 110 or ac2 >= 110) and tank3pump1_sw) {
setprop("/systems/fuel/tank[3]/feed0", 1);
} else {
setprop("/systems/fuel/tank[3]/feed0", 0);
}
if ((ac1 >= 110 or ac2 >= 110) and tank3pump2_sw) {
setprop("/systems/fuel/tank[3]/feed1", 1);
} else {
setprop("/systems/fuel/tank[3]/feed1", 0);
}
if ((ac1 >= 110 or ac2 >= 110) and tank4pump1_sw) {
setprop("/systems/fuel/tank[4]/feed0", 1);
} else {
setprop("/systems/fuel/tank[4]/feed0", 0);
}
if ((ac1 >= 110 or ac2 >= 110) and tank4pump2_sw) {
setprop("/systems/fuel/tank[4]/feed1", 1);
} else {
setprop("/systems/fuel/tank[4]/feed1", 0);
}
if ((ac1 >= 110 or ac2 >= 110) and xfeed_sw) {
setprop("/systems/fuel/x-feed", 1);
} else {
setprop("/systems/fuel/x-feed", 0);
}
var tank2feed0 = getprop("/systems/fuel/tank[2]/feed0");
var tank2feed1 = getprop("/systems/fuel/tank[2]/feed1");
var tank3feed0 = getprop("/systems/fuel/tank[3]/feed0");
var tank3feed1 = getprop("/systems/fuel/tank[3]/feed1");
var tank4feed0 = getprop("/systems/fuel/tank[4]/feed0");
var tank4feed1 = getprop("/systems/fuel/tank[4]/feed1");
if ((getprop("/fdm/jsbsim/propulsion/tank[3]/contents-lbs") >= 50) and tank3feed0 and tank3feed1) {
setprop("/systems/fuel/only-use-ctr-tank", 1);
} else {
setprop("/systems/fuel/only-use-ctr-tank", 0);
}
}
###################
# Update Function #
###################
var update_fuel = func {
master_fuel();
}
var fuel_timer = maketimer(0.2, update_fuel);

View file

@ -162,6 +162,7 @@ setlistener("/sim/signals/fdm-initialized", func {
systems.pneu_init();
systems.hyd_init();
systems.press_init();
systems.fuel_init();
fmgc.APinit();
librariesLoop.start();
fmgc.FMGCinit();

View file

@ -1,4 +1,4 @@
# A320 Pneumatics System
# A3XX Pneumatics System
# Joshua Davidson (it0uchpods) and Jonathan Redpath (legoboyvdlp)
#############

View file

@ -702,5 +702,56 @@
</volume>
</switch>
<relay>
<name>RelayBatt1</name>
<mode>once</mode>
<path>Aircraft/A320Family/Sounds/Cockpit/relay2.wav</path>
<condition>
<greater-than>
<property>/systems/electrical/battery1-amps</property>
<value>25</value>
</greater-than>
</condition>
<volume>
<factor>0.60</factor>
</volume>
</relay>
<relay>
<name>RelayBatt2</name>
<mode>once</mode>
<path>Aircraft/A320Family/Sounds/Cockpit/relay2.wav</path>
<condition>
<greater-than>
<property>/systems/electrical/battery2-amps</property>
<value>25</value>
</greater-than>
</condition>
<volume>
<factor>0.60</factor>
</volume>
</relay>
<relay>
<name>RelayEXT</name>
<mode>once</mode>
<path>Aircraft/A320Family/Sounds/Cockpit/relay1.wav</path>
<condition>
<and>
<equals>
<property>/controls/switches/cart</property>
<value>1</value>
</equals>
<equals>
<property>/controls/electrical/switches/gen-ext</property>
<value>1</value>
</equals>
</and>
</condition>
<volume>
<factor>0.60</factor>
</volume>
</relay>
</fx>
</PropertyList>

BIN
Sounds/Cockpit/relay1.wav Normal file

Binary file not shown.

BIN
Sounds/Cockpit/relay2.wav Normal file

Binary file not shown.

BIN
Sounds/Cockpit/relay3.wav Normal file

Binary file not shown.

191
Systems/fuel.xml Normal file
View file

@ -0,0 +1,191 @@
<?xml version="1.0"?>
<!-- A3XX Fuel System -->
<!-- Joshua Davidson (it0uchpods) -->
<system name="fuel">
<property>propulsion/tank[7]/external-flow-rate/jettison</property>
<property>propulsion/tank[8]/external-flow-rate/jettison</property>
<property>/systems/fuel/x-feed</property>
<channel name="fuel">
<switch name="propulsion/tank[7]/external-flow-rate/x-feed">
<default value="0"/>
<test logic="AND" value="10">
/systems/fuel/x-feed == 1
propulsion/tank[7]/contents-lbs gt propulsion/tank[8]/contents-lbs
propulsion/tank[7]/contents-lbs gt 0
propulsion/tank[8]/contents-lbs lt 100
</test>
</switch>
<switch name="propulsion/tank[8]/external-flow-rate/x-feed">
<default value="0"/>
<test logic="AND" value="10">
/systems/fuel/x-feed == 1
propulsion/tank[8]/contents-lbs gt propulsion/tank[7]/contents-lbs
propulsion/tank[8]/contents-lbs gt 0
propulsion/tank[7]/contents-lbs lt 100
</test>
</switch>
<switch name="propulsion/tank[1]/external-flow-rate/transfer-valve">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/only-use-ctr-tank == 0
propulsion/tank[1]/contents-lbs gt 0
propulsion/tank[2]/contents-lbs lt 1650
</test>
</switch>
<switch name="propulsion/tank[5]/external-flow-rate/transfer-valve">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/only-use-ctr-tank == 0
propulsion/tank[5]/contents-lbs gt 0
propulsion/tank[4]/contents-lbs lt 1650
</test>
</switch>
<switch name="propulsion/tank[2]/external-flow-rate/pump[0]">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/only-use-ctr-tank == 0
/systems/fuel/tank[2]/feed0 == 1
propulsion/tank[2]/contents-lbs gt 0
propulsion/tank[7]/contents-lbs lt 90
</test>
</switch>
<switch name="propulsion/tank[2]/external-flow-rate/pump[1]">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/only-use-ctr-tank == 0
/systems/fuel/tank[2]/feed1 == 1
propulsion/tank[2]/contents-lbs gt 0
propulsion/tank[7]/contents-lbs lt 90
</test>
</switch>
<switch name="propulsion/tank[4]/external-flow-rate/pump[0]">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/only-use-ctr-tank == 0
/systems/fuel/tank[4]/feed0 == 1
propulsion/tank[4]/contents-lbs gt 0
propulsion/tank[8]/contents-lbs lt 90
</test>
</switch>
<switch name="propulsion/tank[4]/external-flow-rate/pump[1]">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/only-use-ctr-tank == 0
/systems/fuel/tank[4]/feed1 == 1
propulsion/tank[4]/contents-lbs gt 0
propulsion/tank[8]/contents-lbs lt 90
</test>
</switch>
<switch name="propulsion/tank[3]/external-flow-rate/pump[0]">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/tank[3]/feed0 == 1
propulsion/tank[3]/contents-lbs gt 0
propulsion/tank[7]/contents-lbs lt 95
</test>
</switch>
<switch name="propulsion/tank[3]/external-flow-rate/pump[1]">
<default value="0"/>
<test logic="AND" value="5">
/systems/fuel/tank[3]/feed1 == 1
propulsion/tank[3]/contents-lbs gt 0
propulsion/tank[8]/contents-lbs lt 95
</test>
</switch>
<switch name="propulsion/tank[7]/external-flow-rate/recirculation">
<default value="0"/>
<test logic="AND" value="5">
propulsion/tank[4]/contents-lbs gt propulsion/tank[2]/contents-lbs
propulsion/tank[7]/contents-lbs gt 50
propulsion/tank[2]/contents-lbs lt 12186
</test>
</switch>
<switch name="propulsion/tank[8]/external-flow-rate/recirculation">
<default value="0"/>
<test logic="AND" value="5">
propulsion/tank[2]/contents-lbs gt propulsion/tank[4]/contents-lbs
propulsion/tank[8]/contents-lbs gt 50
propulsion/tank[4]/contents-lbs lt 12186
</test>
</switch>
<summer name="propulsion/tank[7]/external-flow-rate">
<input>-propulsion/tank[7]/external-flow-rate/jettison</input>
<input>-propulsion/tank[7]/external-flow-rate/recirculation</input>
<input>-propulsion/tank[7]/external-flow-rate/x-feed</input>
<input>propulsion/tank[8]/external-flow-rate/x-feed</input>
<input>propulsion/tank[2]/external-flow-rate/pump[0]</input>
<input>propulsion/tank[2]/external-flow-rate/pump[1]</input>
<input>propulsion/tank[3]/external-flow-rate/pump[0]</input>
<output>propulsion/tank[7]/external-flow-rate-pps</output>
</summer>
<summer name="propulsion/tank[8]/external-flow-rate">
<input>-propulsion/tank[8]/external-flow-rate/jettison</input>
<input>-propulsion/tank[8]/external-flow-rate/recirculation</input>
<input>-propulsion/tank[8]/external-flow-rate/x-feed</input>
<input>propulsion/tank[7]/external-flow-rate/x-feed</input>
<input>propulsion/tank[4]/external-flow-rate/pump[0]</input>
<input>propulsion/tank[4]/external-flow-rate/pump[1]</input>
<input>propulsion/tank[3]/external-flow-rate/pump[1]</input>
<output>propulsion/tank[8]/external-flow-rate-pps</output>
</summer>
<summer name="propulsion/tank[2]/external-flow-rate">
<input>-propulsion/tank[2]/external-flow-rate/pump[0]</input>
<input>-propulsion/tank[2]/external-flow-rate/pump[1]</input>
<input>propulsion/tank[7]/external-flow-rate/recirculation</input>
<input>propulsion/tank[1]/external-flow-rate/transfer-valve</input>
<output>propulsion/tank[2]/external-flow-rate-pps</output>
</summer>
<summer name="propulsion/tank[4]/external-flow-rate">
<input>-propulsion/tank[4]/external-flow-rate/pump[0]</input>
<input>-propulsion/tank[4]/external-flow-rate/pump[1]</input>
<input>propulsion/tank[8]/external-flow-rate/recirculation</input>
<input>propulsion/tank[5]/external-flow-rate/transfer-valve</input>
<output>propulsion/tank[4]/external-flow-rate-pps</output>
</summer>
<summer name="propulsion/tank[1]/external-flow-rate">
<input>-propulsion/tank[1]/external-flow-rate/transfer-valve</input>
<output>propulsion/tank[1]/external-flow-rate-pps</output>
</summer>
<summer name="propulsion/tank[5]/external-flow-rate">
<input>-propulsion/tank[5]/external-flow-rate/transfer-valve</input>
<output>propulsion/tank[5]/external-flow-rate-pps</output>
</summer>
<summer name="propulsion/tank[3]/external-flow-rate">
<input>-propulsion/tank[3]/external-flow-rate/pump[0]</input>
<input>-propulsion/tank[3]/external-flow-rate/pump[1]</input>
<output>propulsion/tank[3]/external-flow-rate-pps</output>
</summer>
</channel>
</system>