89 lines
4.2 KiB
XML
89 lines
4.2 KiB
XML
|
<?xml version="1.0"?>
|
||
|
|
||
|
<!-- c182s external heater
|
||
|
|
||
|
Accoring to POH (4-33) one should use an external heater below 20°F / -6°C).
|
||
|
The heater is implemented here as simple system:
|
||
|
- once activated, the heat is applied slowly until reaching a maximum
|
||
|
- once deactivated, additional heat cools down to 0°F.
|
||
|
- the calculated difference is then applied as offset to outside-air-temperature and engine oil temperature.
|
||
|
- these values are used by the priming code in fuel.xml to determine the correct priming value.
|
||
|
|
||
|
Copyright (C) 2017 Benedikt Hallinger
|
||
|
|
||
|
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, write to the Free Software
|
||
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||
|
-->
|
||
|
<system name="external-heat">
|
||
|
<channel name="External Heat">
|
||
|
<kinematic name="External Heater"> <!-- simulates heat slowly raising once heater applied -->
|
||
|
<input>/engines/active-engine/external-heat/enabled</input>
|
||
|
<traverse>
|
||
|
<setting>
|
||
|
<position>0</position>
|
||
|
<time>0</time>
|
||
|
</setting>
|
||
|
<setting>
|
||
|
<!-- time to raise to maximum applied heat -->
|
||
|
<position>1</position>
|
||
|
<time>300</time> <!-- reach max output at 5 minutes (=300s) -->
|
||
|
</setting>
|
||
|
</traverse>
|
||
|
<output>/engines/active-engine/external-heat/applied-norm</output>
|
||
|
</kinematic>
|
||
|
<aerosurface_scale name="Heat degF applied"> <!-- define heat applied in degF -->
|
||
|
<input>/engines/active-engine/external-heat/applied-norm</input>
|
||
|
<gain>1.0</gain>
|
||
|
<zero_centered>false</zero_centered>
|
||
|
<domain>
|
||
|
<min>0</min>
|
||
|
<max>1</max>
|
||
|
</domain>
|
||
|
<range>
|
||
|
<min>0</min>
|
||
|
<max>77</max> <!-- 68°F = 20°C --> <!-- TODO: I currently don't know how much heat the heater outputs! currently this gives a limit of -40°C after which priming gets really hard -->
|
||
|
</range>
|
||
|
<output>/engines/active-engine/external-heat/applied-degF</output>
|
||
|
</aerosurface_scale>
|
||
|
<fcs_function name="Oil temp plus external heat">
|
||
|
<function>
|
||
|
<sum>
|
||
|
<property>/engines/active-engine/external-heat/applied-degF</property>
|
||
|
<property>/engines/active-engine/oil-compensated-temperature-degf</property> <!-- compensated for env-temp and low oil, see engine.xml -->
|
||
|
</sum>
|
||
|
</function>
|
||
|
<output>/engines/active-engine/oil-final-temperature-degf</output>
|
||
|
</fcs_function>
|
||
|
|
||
|
<!-- todo: could be modelled more realistical, since engine radiation should also have a little effect -->
|
||
|
<fcs_function name="Cowling environment air Temperature">
|
||
|
<function>
|
||
|
<sum>
|
||
|
<property>/environment/temperature-degf</property>
|
||
|
<property>/engines/active-engine/external-heat/applied-degF</property>
|
||
|
</sum>
|
||
|
</function>
|
||
|
<output>/engines/active-engine/cowling-air-temperature-degf</output>
|
||
|
</fcs_function>
|
||
|
|
||
|
<!-- todo: should be better placed in engine.xml, but is not active there... -->
|
||
|
<summer name="Engine Oil compensated environment Temperature">
|
||
|
<input>/engines/active-engine/oil-temperature-degf</input>
|
||
|
<input>-/engines/active-engine/oil-temperature-env-diff</input>
|
||
|
<output>/engines/active-engine/oil-compensated-temperature-degf</output>
|
||
|
</summer>
|
||
|
</channel>
|
||
|
|
||
|
</system>
|