495 lines
15 KiB
XML
495 lines
15 KiB
XML
<!-- Copyright (c) 2019 Jonathan Redpath (legoboyvdlp) -->
|
|
|
|
<system name="A320: Pneumatic">
|
|
<channel name="Valves">
|
|
|
|
<!-- Low Pressure valve -->
|
|
<switch name="/systems/pneumatics/valves/engine-1-lp-valve-cmd">
|
|
<default value="1"/>
|
|
<test logic="OR" value="0">
|
|
/systems/pneumatics/valves/engine-1-hp-valve eq 1
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-1-lp-valve-cmd-power">
|
|
<default value="0"/>
|
|
<test logic="OR" value="5">
|
|
/systems/electrical/bus/dc-ess-shed ge 25
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-1-lp-valve">
|
|
<input>/systems/pneumatics/valves/engine-1-lp-valve-cmd</input>
|
|
<rate_limit>/systems/pneumatics/valves/engine-1-lp-valve-cmd-power</rate_limit>
|
|
</actuator>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-2-lp-valve-cmd">
|
|
<default value="1"/>
|
|
<test logic="OR" value="0">
|
|
/systems/pneumatics/valves/engine-2-hp-valve eq 1
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-2-lp-valve-cmd-power">
|
|
<default value="0"/>
|
|
<test logic="OR" value="5">
|
|
/systems/electrical/bus/dc-2 ge 25
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-2-lp-valve">
|
|
<input>/systems/pneumatics/valves/engine-2-lp-valve-cmd</input>
|
|
<rate_limit>/systems/pneumatics/valves/engine-2-lp-valve-cmd-power</rate_limit>
|
|
</actuator>
|
|
|
|
|
|
<!-- High Pressure valve -->
|
|
<switch name="/systems/pneumatics/valves/engine-1-hp-valve-cmd">
|
|
<default value="1"/>
|
|
<test logic="OR" value="0">
|
|
/systems/pneumatics/source/engine-1-hp-psi lt 8
|
|
/systems/pneumatics/source/engine-1-hp-psi ge 120
|
|
<test logic="AND">
|
|
/controls/deice/wing eq 0
|
|
/systems/pneumatics/source/engine-1-hp-psi ge 110
|
|
/position/altitude-ft ge 15000
|
|
/systems/pneumatics/valves/engine-1-prv-valve eq 1
|
|
/systems/pneumatics/valves/engine-2-prv-valve eq 1
|
|
</test>
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-1-hp-valve-cmd-power">
|
|
<default value="0"/>
|
|
<test logic="OR" value="3">
|
|
/systems/electrical/bus/dc-ess-shed ge 25
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-1-hp-valve">
|
|
<input>/systems/pneumatics/valves/engine-1-hp-valve-cmd</input>
|
|
<rate_limit>/systems/pneumatics/valves/engine-1-hp-valve-cmd-power</rate_limit>
|
|
</actuator>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-2-hp-valve-cmd">
|
|
<default value="1"/>
|
|
<test logic="OR" value="0">
|
|
/systems/pneumatics/source/engine-2-hp-psi lt 8
|
|
/systems/pneumatics/source/engine-2-hp-psi ge 120
|
|
<test logic="AND">
|
|
/controls/deice/wing eq 0
|
|
/systems/pneumatics/source/engine-2-hp-psi ge 110
|
|
/position/altitude-ft ge 15000
|
|
/systems/pneumatics/valves/engine-1-prv-valve eq 1
|
|
/systems/pneumatics/valves/engine-2-prv-valve eq 1
|
|
</test>
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-2-hp-valve-cmd-power">
|
|
<default value="0"/>
|
|
<test logic="OR" value="3">
|
|
/systems/electrical/bus/dc-2 ge 25
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-2-hp-valve">
|
|
<input>/systems/pneumatics/valves/engine-2-hp-valve-cmd</input>
|
|
<rate_limit>/systems/pneumatics/valves/engine-2-hp-valve-cmd-power</rate_limit>
|
|
</actuator>
|
|
|
|
<!-- Pressure regulation valve -->
|
|
<switch name="/systems/pneumatics/valves/engine-1-prv-valve-cmd">
|
|
<default value="0"/>
|
|
<test logic="OR" value="0">
|
|
/controls/engines/engine[0]/fire-btn eq 1
|
|
/systems/pneumatics/psi/engine-1-upstream-src gt 85
|
|
/systems/pneumatics/valves/apu-bleed-valve ne 0
|
|
/systems/pneumatics/valves/starter-valve-1 ne 0
|
|
</test>
|
|
<test logic="AND" value="1">
|
|
/controls/pneumatics/switches/bleed-1 eq 1
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-1-prv-valve-cmd-power">
|
|
<default value="0"/>
|
|
<test logic="OR" value="5.0">
|
|
/systems/electrical/bus/dc-ess-shed ge 25
|
|
/systems/pneumatics/psi/engine-1-upstream-src ge 8
|
|
/systems/failures/pneumatics/bleed-1-valve eq 0
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-1-prv-valve">
|
|
<input>/systems/pneumatics/valves/engine-1-prv-valve-cmd</input>
|
|
<rate_limit>/systems/pneumatics/valves/engine-1-prv-valve-cmd-power</rate_limit>
|
|
</actuator>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-2-prv-valve-cmd">
|
|
<default value="0"/>
|
|
<test logic="OR" value="0">
|
|
/controls/engines/engine[1]/fire-btn eq 1
|
|
/systems/pneumatics/psi/engine-2-upstream-src gt 85
|
|
<test logic="AND">
|
|
/systems/pneumatics/valves/apu-bleed-valve ne 0
|
|
/systems/pneumatics/valves/crossbleed-valve ne 0
|
|
</test>
|
|
/systems/pneumatics/valves/starter-valve-2 ne 0
|
|
</test>
|
|
<test logic="AND" value="1">
|
|
/controls/pneumatics/switches/bleed-2 eq 1
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-2-prv-valve-cmd-power">
|
|
<default value="0"/>
|
|
<test logic="OR" value="5.0">
|
|
/systems/electrical/bus/dc-2 ge 25
|
|
/systems/pneumatics/psi/engine-2-upstream-src ge 8
|
|
/systems/failures/pneumatics/bleed-2-valve eq 0
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-2-prv-valve">
|
|
<input>/systems/pneumatics/valves/engine-2-prv-valve-cmd</input>
|
|
<rate_limit>/systems/pneumatics/valves/engine-2-prv-valve-cmd-power</rate_limit>
|
|
</actuator>
|
|
|
|
<!-- Overpressure valve -->
|
|
<fcs_function name="/systems/pneumatics/valves/engine-1-opv-valve-cmd-schedule">
|
|
<function>
|
|
<table>
|
|
<independentVar lookup="row">/systems/pneumatics/psi/engine-1-upstream-prv</independentVar>
|
|
<tableData>
|
|
79 1.0
|
|
85 0.0
|
|
</tableData>
|
|
</table>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-1-opv-valve-cmd">
|
|
<default value="1"/>
|
|
<test logic="AND" value="0">
|
|
/systems/pneumatics/valves/engine-1-opv-valve-cmd eq 0.0
|
|
/systems/pneumatics/psi/engine-1-upstream-prv ge 35
|
|
</test>
|
|
<test logic="OR" value="/systems/pneumatics/valves/engine-1-opv-valve-cmd-schedule">
|
|
/systems/pneumatics/valves/engine-1-opv-valve-cmd-schedule ne 0
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-1-opv-valve">
|
|
<input>/systems/pneumatics/valves/engine-1-opv-valve-cmd</input>
|
|
<rate_limit>1.0</rate_limit> <!-- pneumatically controlled -->
|
|
</actuator>
|
|
|
|
<fcs_function name="/systems/pneumatics/valves/engine-2-opv-valve-cmd-schedule">
|
|
<function>
|
|
<table>
|
|
<independentVar lookup="row">/systems/pneumatics/psi/engine-2-upstream-prv</independentVar>
|
|
<tableData>
|
|
79 1.0
|
|
85 0.0
|
|
</tableData>
|
|
</table>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<switch name="/systems/pneumatics/valves/engine-2-opv-valve-cmd">
|
|
<default value="1"/>
|
|
<test logic="AND" value="0">
|
|
/systems/pneumatics/valves/engine-2-opv-valve-cmd eq 0.0
|
|
/systems/pneumatics/psi/engine-2-upstream-prv ge 35
|
|
</test>
|
|
<test logic="OR" value="/systems/pneumatics/valves/engine-2-opv-valve-cmd-schedule">
|
|
/systems/pneumatics/valves/engine-2-opv-valve-cmd-schedule ne 0
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/valves/engine-2-opv-valve">
|
|
<input>/systems/pneumatics/valves/engine-2-opv-valve-cmd</input>
|
|
<rate_limit>1.0</rate_limit> <!-- pneumatically controlled -->
|
|
</actuator>
|
|
|
|
</channel>
|
|
|
|
<channel name="Source PSI">
|
|
|
|
<fcs_function name="/systems/pneumatics/source/engine-1-hp-psi">
|
|
<function>
|
|
<table>
|
|
<independentVar lookup="row">/engines/engine[0]/n2-actual</independentVar>
|
|
<tableData>
|
|
22.0 0.0
|
|
25.0 12.0
|
|
44.0 22.0
|
|
60.9 72.0
|
|
65.0 78.0
|
|
70.4 96.0
|
|
80.4 132.0
|
|
</tableData>
|
|
</table>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/source/engine-2-hp-psi">
|
|
<function>
|
|
<table>
|
|
<independentVar lookup="row">/engines/engine[1]/n2-actual</independentVar>
|
|
<tableData>
|
|
22.0 0.0
|
|
25.0 12.0
|
|
44.0 22.0
|
|
60.9 72.0
|
|
65.0 78.0
|
|
70.4 96.0
|
|
80.4 132.0
|
|
</tableData>
|
|
</table>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/source/engine-1-lp-psi">
|
|
<function>
|
|
<table>
|
|
<independentVar lookup="row">/engines/engine[0]/n2-actual</independentVar>
|
|
<tableData>
|
|
22.0 0.0
|
|
25.0 2.0
|
|
60.9 18.0
|
|
70.4 36.0
|
|
80.4 44.0
|
|
101.4 48.0
|
|
</tableData>
|
|
</table>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
|
|
<fcs_function name="/systems/pneumatics/source/engine-2-lp-psi">
|
|
<function>
|
|
<table>
|
|
<independentVar lookup="row">/engines/engine[1]/n2-actual</independentVar>
|
|
<tableData>
|
|
22.0 0.0
|
|
25.0 2.0
|
|
60.9 18.0
|
|
70.4 36.0
|
|
80.4 44.0
|
|
101.4 48.0
|
|
</tableData>
|
|
</table>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
</channel>
|
|
|
|
<channel name="System PSI">
|
|
|
|
<fcs_function name="/systems/pneumatics/psi/engine-1-upstream-src">
|
|
<function>
|
|
<ifthen>
|
|
<lt>
|
|
<property>/systems/pneumatics/valves/engine-1-hp-valve</property> <!-- lp valve opens when the airflow reduces sufficiently from hp valve -->
|
|
<value>0.1</value>
|
|
</lt>
|
|
<product>
|
|
<property>/systems/pneumatics/source/engine-1-lp-psi</property>
|
|
<property>/systems/pneumatics/valves/engine-1-lp-valve</property>
|
|
</product>
|
|
<product>
|
|
<quotient>
|
|
<property>/systems/pneumatics/source/engine-1-hp-psi</property>
|
|
<value>3</value>
|
|
</quotient>
|
|
<property>/systems/pneumatics/valves/engine-1-hp-valve</property>
|
|
</product>
|
|
</ifthen>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/psi/engine-2-upstream-src">
|
|
<function>
|
|
<ifthen>
|
|
<lt>
|
|
<property>/systems/pneumatics/valves/engine-1-hp-valve</property>
|
|
<value>0.1</value>
|
|
</lt>
|
|
<product>
|
|
<property>/systems/pneumatics/source/engine-2-lp-psi</property>
|
|
<property>/systems/pneumatics/valves/engine-2-lp-valve</property>
|
|
</product>
|
|
<product>
|
|
<quotient>
|
|
<property>/systems/pneumatics/source/engine-2-hp-psi</property>
|
|
<value>3</value>
|
|
</quotient>
|
|
<property>/systems/pneumatics/valves/engine-2-hp-valve</property>
|
|
</product>
|
|
</ifthen>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/psi/engine-1-upstream-prv">
|
|
<function>
|
|
<product>
|
|
<property>/systems/pneumatics/valves/engine-1-prv-valve</property>
|
|
<property>/systems/pneumatics/psi/engine-1-upstream-src</property>
|
|
</product>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/psi/engine-2-upstream-prv">
|
|
<function>
|
|
<product>
|
|
<property>/systems/pneumatics/valves/engine-2-prv-valve</property>
|
|
<property>/systems/pneumatics/psi/engine-2-upstream-src</property>
|
|
</product>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/psi/engine-1-psi">
|
|
<function>
|
|
<product>
|
|
<property>/systems/pneumatics/valves/engine-1-opv-valve</property>
|
|
<property>/systems/pneumatics/psi/engine-1-upstream-prv</property>
|
|
</product>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/psi/engine-2-psi">
|
|
<function>
|
|
<product>
|
|
<property>/systems/pneumatics/valves/engine-2-opv-valve</property>
|
|
<property>/systems/pneumatics/psi/engine-2-upstream-prv</property>
|
|
</product>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
</channel>
|
|
|
|
<channel name="Precooler">
|
|
|
|
<fcs_function name="/systems/pneumatics/precooler/temp-1">
|
|
<function>
|
|
<product>
|
|
<property>/systems/pneumatics/valves/engine-1-prv-valve</property>
|
|
<property>/systems/pneumatics/valves/engine-1-opv-valve</property>
|
|
<property>/engines/engine[0]/egt-actual</property>
|
|
<value>0.35</value>
|
|
</product>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<fcs_function name="/systems/pneumatics/precooler/temp-2">
|
|
<function>
|
|
<product>
|
|
<property>/systems/pneumatics/valves/engine-2-prv-valve</property>
|
|
<property>/systems/pneumatics/valves/engine-2-opv-valve</property>
|
|
<property>/engines/engine[1]/egt-actual</property>
|
|
<value>0.35</value>
|
|
</product>
|
|
</function>
|
|
</fcs_function>
|
|
|
|
<switch name="/systems/pneumatics/precooler/calc/ovht-5-true">
|
|
<default value="0"/>
|
|
<test value="1">
|
|
/systems/pneumatics/precooler/temp-1 gt 290
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/precooler/calc/ovht-15-true">
|
|
<default value="0"/>
|
|
<test value="1">
|
|
/systems/pneumatics/precooler/temp-1 gt 270
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/precooler/calc/ovht-55-true">
|
|
<default value="0"/>
|
|
<test value="1">
|
|
/systems/pneumatics/precooler/temp-1 gt 257
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/precooler/calc/ovht-5">
|
|
<input>/systems/pneumatics/precooler/calc/ovht-5-true</input>
|
|
<rate_limit sense="incr">0.2</rate_limit>
|
|
<rate_limit sense="decr">100</rate_limit>
|
|
</actuator>
|
|
|
|
<actuator name="/systems/pneumatics/precooler/calc/ovht-15">
|
|
<input>/systems/pneumatics/precooler/calc/ovht-15-true</input>
|
|
<rate_limit sense="incr">0.06666</rate_limit>
|
|
<rate_limit sense="decr">100</rate_limit>
|
|
</actuator>
|
|
|
|
<actuator name="/systems/pneumatics/precooler/calc/ovht-55">
|
|
<input>/systems/pneumatics/precooler/calc/ovht-55-true</input>
|
|
<rate_limit sense="incr">0.018182</rate_limit>
|
|
<rate_limit sense="decr">100</rate_limit>
|
|
</actuator>
|
|
|
|
|
|
<switch name="/systems/pneumatics/precooler/calc/ovht-5-true-2">
|
|
<default value="0"/>
|
|
<test value="1">
|
|
/systems/pneumatics/precooler/temp-2 gt 290
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/precooler/calc/ovht-15-true-2">
|
|
<default value="0"/>
|
|
<test value="1">
|
|
/systems/pneumatics/precooler/temp-2 gt 270
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/precooler/calc/ovht-55-true-2">
|
|
<default value="0"/>
|
|
<test value="1">
|
|
/systems/pneumatics/precooler/temp-2 gt 257
|
|
</test>
|
|
</switch>
|
|
|
|
<actuator name="/systems/pneumatics/precooler/calc/ovht-5-2">
|
|
<input>/systems/pneumatics/precooler/calc/ovht-5-true-2</input>
|
|
<rate_limit sense="incr">0.2</rate_limit>
|
|
<rate_limit sense="decr">100</rate_limit>
|
|
</actuator>
|
|
|
|
<actuator name="/systems/pneumatics/precooler/calc/ovht-15-2">
|
|
<input>/systems/pneumatics/precooler/calc/ovht-15-true-2</input>
|
|
<rate_limit sense="incr">0.06666</rate_limit>
|
|
<rate_limit sense="decr">100</rate_limit>
|
|
</actuator>
|
|
|
|
<actuator name="/systems/pneumatics/precooler/calc/ovht-55-2">
|
|
<input>/systems/pneumatics/precooler/calc/ovht-55-true-2</input>
|
|
<rate_limit sense="incr">0.018182</rate_limit>
|
|
<rate_limit sense="decr">100</rate_limit>
|
|
</actuator>
|
|
|
|
<switch name="/systems/pneumatics/precooler/ovht-1">
|
|
<default value="0"/>
|
|
<test logic="OR" value="1">
|
|
/systems/pneumatics/precooler/calc/ovht-5 eq 1
|
|
/systems/pneumatics/precooler/calc/ovht-15 eq 1
|
|
/systems/pneumatics/precooler/calc/ovht-55 eq 1
|
|
</test>
|
|
</switch>
|
|
|
|
<switch name="/systems/pneumatics/precooler/ovht-2">
|
|
<default value="0"/>
|
|
<test logic="OR" value="1">
|
|
/systems/pneumatics/precooler/calc/ovht-5-2 eq 1
|
|
/systems/pneumatics/precooler/calc/ovht-15-2 eq 1
|
|
/systems/pneumatics/precooler/calc/ovht-55-2 eq 1
|
|
</test>
|
|
</switch>
|
|
</channel>
|
|
|
|
</system>
|