Howto:Implement pushback
Jump to navigation
Jump to search
Currently, pushback is only used on JSBSim planes.
Within a short period, some generic pushback models will be available in the $FG_ROOT/Models directory. These models can be used at any plane, in a process that is described below.
Systems/pushback.xml
Create the following directory, if not present:
- $FG_ROOT/Aircraft/.../Systems
<system name="pushback"> <channel name="Pushback"> <switch name="systems/pushback/linked"> <default value="0"/> <test logic="AND" value="1"> /sim/model/pushback/linked == 1 fcs/cutoff-switch == 0 /gear/gear[0]/compression-norm gt 0.15 </test> </switch> <switch name="systems/pushback/force"> <default value="0"/> <test logic="AND" value="/sim/model/pushback/magnitude"> systems/pushback/linked == 1 gear/unit[0]/wheel-speed-fps lt 500 </test> <output>external_reactions/pushback/magnitude</output> </switch> </channel> </system>
.xml
In the FDM file we have to add the pushback engine.
<engine file="pushback"> ...
After the </propulsion> tag we add a reference to the pushback system:
<system file="pushback"/>
-set.xml
Between the <model> tags in the -set.xml file we set two properties to false (0).
<model> <pushback> <magnitude>0</magnitude> <linked>0</linked> </pushback> </model>
Below the </sim> tag we add our keyboard bindings:
<keyboard> <key n="43"> <name>+</name> <desc>Pushback Magnitude increase</desc> <repeatable type="bool">true</repeatable> <binding> <command>property-adjust</command> <property>/sim/model/pushback/magnitude</property> <max type="double">40000</max> <step type="double">20000</step> </binding> </key> <key n="45"> <name>-</name> <desc>Pushback Magnitude decrease</desc> <repeatable type="bool">true</repeatable> <binding> <command>property-adjust</command> <property>/sim/model/pushback/magnitude</property> <min type="double">-40000</min> <step type="double">-20000</step> </binding> </key> <key n="109"> <name>m</name> <desc>Pushback Linked</desc> <binding> <command>property-toggle</command> <property>/sim/model/pushback/linked</property> </binding> <binding> <command>property-assign</command> <property>/sim/model/pushback/magnitude</property> <value type="double">0</value> </binding> </key> </keyboard>
Models/ .xml
In your planes model file, we add a reference to one of the generic pushback models, or a custom made, shipped with your plane.
<model> <name>Pushback</name> <path>Models\Airport\Pushback\Goldhofert.xml</path> <offsets> <x-m>-25.0</x-m> <y-m>0</y-m> <z-m>-4.0</z-m> </offsets> </model>