improve hydraulics, make elevator/ailerons connected to hydraulics, fix animations exterior, elevator/aileron/rudder new props over MP
This commit is contained in:
parent
f861b6e525
commit
4d7197aefd
14 changed files with 340 additions and 74 deletions
|
@ -566,7 +566,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
<flight_control name="FCS: A320">
|
<flight_control name="FCS: A320">
|
||||||
<channel name="Pitch">
|
<channel name="Pitch">
|
||||||
<summer name="Pitch Trim Sum">
|
<summer name="Pitch Trim Sum">
|
||||||
<input>/controls/flight/elevator-fbw</input>
|
<input>/controls/flight/elevator-sum</input>
|
||||||
<input>/controls/flight/elevator-trim</input>
|
<input>/controls/flight/elevator-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
@ -594,7 +594,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
</channel>
|
</channel>
|
||||||
<channel name="Roll">
|
<channel name="Roll">
|
||||||
<summer name="Roll Trim Sum">
|
<summer name="Roll Trim Sum">
|
||||||
<input>/controls/flight/aileron-fbw</input>
|
<input>/controls/flight/aileron-sum</input>
|
||||||
<input>/controls/flight/aileron-trim</input>
|
<input>/controls/flight/aileron-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
|
|
@ -566,7 +566,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
<flight_control name="FCS: A320">
|
<flight_control name="FCS: A320">
|
||||||
<channel name="Pitch">
|
<channel name="Pitch">
|
||||||
<summer name="Pitch Trim Sum">
|
<summer name="Pitch Trim Sum">
|
||||||
<input>/controls/flight/elevator-fbw</input>
|
<input>/controls/flight/elevator-sum</input>
|
||||||
<input>/controls/flight/elevator-trim</input>
|
<input>/controls/flight/elevator-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
@ -594,7 +594,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
</channel>
|
</channel>
|
||||||
<channel name="Roll">
|
<channel name="Roll">
|
||||||
<summer name="Roll Trim Sum">
|
<summer name="Roll Trim Sum">
|
||||||
<input>/controls/flight/aileron-fbw</input>
|
<input>/controls/flight/aileron-sum</input>
|
||||||
<input>/controls/flight/aileron-trim</input>
|
<input>/controls/flight/aileron-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
|
|
@ -34,9 +34,9 @@
|
||||||
<path></path>
|
<path></path>
|
||||||
</electrical>
|
</electrical>
|
||||||
<!-- Custom FBW/Flight Controls System -->
|
<!-- Custom FBW/Flight Controls System -->
|
||||||
<!--autopilot>
|
<autopilot>
|
||||||
<path>Aircraft/A320Family/Systems/hydraulics.xml</path>
|
<path>Aircraft/A320Family/Systems/hydraulics.xml</path>
|
||||||
</autopilot-->
|
</autopilot>
|
||||||
<autopilot>
|
<autopilot>
|
||||||
<path>Aircraft/A320Family/Systems/it-fbw-b.xml</path>
|
<path>Aircraft/A320Family/Systems/it-fbw-b.xml</path>
|
||||||
</autopilot>
|
</autopilot>
|
||||||
|
@ -152,6 +152,11 @@
|
||||||
<float n="1" alias="/controls/lighting/interior" />
|
<float n="1" alias="/controls/lighting/interior" />
|
||||||
<float n="2" alias="/engines/engine[0]/reverser-pos-norm" />
|
<float n="2" alias="/engines/engine[0]/reverser-pos-norm" />
|
||||||
<float n="3" alias="/engines/engine[1]/reverser-pos-norm" />
|
<float n="3" alias="/engines/engine[1]/reverser-pos-norm" />
|
||||||
|
<float n="4" alias="/controls/flight/elevator-left" />
|
||||||
|
<float n="5" alias="/controls/flight/elevator-right" />
|
||||||
|
<float n="6" alias="/controls/flight/aileron-left" />
|
||||||
|
<float n="7" alias="/controls/flight/aileron-right" />
|
||||||
|
<float n="8" alias="/controls/flight/rudder-fdm" />
|
||||||
<int n="2" alias="/controls/lighting/landing-lights[0]" />
|
<int n="2" alias="/controls/lighting/landing-lights[0]" />
|
||||||
<int n="3" alias="/controls/lighting/landing-lights[1]" />
|
<int n="3" alias="/controls/lighting/landing-lights[1]" />
|
||||||
<int n="4" alias="/controls/lighting/landing-lights[2]" />
|
<int n="4" alias="/controls/lighting/landing-lights[2]" />
|
||||||
|
@ -389,7 +394,13 @@
|
||||||
</engines>
|
</engines>
|
||||||
<flight>
|
<flight>
|
||||||
<aileron-fbw>0</aileron-fbw>
|
<aileron-fbw>0</aileron-fbw>
|
||||||
|
<aileron-left>0.5</aileron-left>
|
||||||
|
<aileron-right>-0.5</aileron-right>
|
||||||
|
<aileron-sum>0.0</aileron-sum>
|
||||||
<elevator-fbw>0</elevator-fbw>
|
<elevator-fbw>0</elevator-fbw>
|
||||||
|
<elevator-left>0.1</elevator-left>
|
||||||
|
<elevator-right>0.1</elevator-right>
|
||||||
|
<elevator-sum>0.2</elevator-sum>
|
||||||
<speedbrake-arm>0</speedbrake-arm>
|
<speedbrake-arm>0</speedbrake-arm>
|
||||||
<ground-spoilers-armed type="bool">0</ground-spoilers-armed>
|
<ground-spoilers-armed type="bool">0</ground-spoilers-armed>
|
||||||
<speedbrake-lever type="double">0</speedbrake-lever>
|
<speedbrake-lever type="double">0</speedbrake-lever>
|
||||||
|
|
|
@ -566,7 +566,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
<flight_control name="FCS: A320">
|
<flight_control name="FCS: A320">
|
||||||
<channel name="Pitch">
|
<channel name="Pitch">
|
||||||
<summer name="Pitch Trim Sum">
|
<summer name="Pitch Trim Sum">
|
||||||
<input>/controls/flight/elevator-fbw</input>
|
<input>/controls/flight/elevator-sum</input>
|
||||||
<input>/controls/flight/elevator-trim</input>
|
<input>/controls/flight/elevator-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
@ -594,7 +594,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
</channel>
|
</channel>
|
||||||
<channel name="Roll">
|
<channel name="Roll">
|
||||||
<summer name="Roll Trim Sum">
|
<summer name="Roll Trim Sum">
|
||||||
<input>/controls/flight/aileron-fbw</input>
|
<input>/controls/flight/aileron-sum</input>
|
||||||
<input>/controls/flight/aileron-trim</input>
|
<input>/controls/flight/aileron-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
|
|
@ -566,7 +566,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
<flight_control name="FCS: A320">
|
<flight_control name="FCS: A320">
|
||||||
<channel name="Pitch">
|
<channel name="Pitch">
|
||||||
<summer name="Pitch Trim Sum">
|
<summer name="Pitch Trim Sum">
|
||||||
<input>/controls/flight/elevator-fbw</input>
|
<input>/controls/flight/elevator-sum</input>
|
||||||
<input>/controls/flight/elevator-trim</input>
|
<input>/controls/flight/elevator-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
@ -594,7 +594,7 @@ YAW MOI_________3950000______23089847_______24848934
|
||||||
</channel>
|
</channel>
|
||||||
<channel name="Roll">
|
<channel name="Roll">
|
||||||
<summer name="Roll Trim Sum">
|
<summer name="Roll Trim Sum">
|
||||||
<input>/controls/flight/aileron-fbw</input>
|
<input>/controls/flight/aileron-sum</input>
|
||||||
<input>/controls/flight/aileron-trim</input>
|
<input>/controls/flight/aileron-trim</input>
|
||||||
<clipto>
|
<clipto>
|
||||||
<min>-1</min>
|
<min>-1</min>
|
||||||
|
|
|
@ -9,11 +9,11 @@
|
||||||
<name>Left elevator</name>
|
<name>Left elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorL</object-name>
|
<object-name>ElevatorL</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[4]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>4.8217428</x1-m>
|
<x1-m>4.8217428</x1-m>
|
||||||
|
@ -28,11 +28,11 @@
|
||||||
<name>Right elevator</name>
|
<name>Right elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorR</object-name>
|
<object-name>ElevatorR</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[5]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>2.9796817</x1-m>
|
<x1-m>2.9796817</x1-m>
|
||||||
|
|
|
@ -9,11 +9,11 @@
|
||||||
<name>Left elevator</name>
|
<name>Left elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorL</object-name>
|
<object-name>ElevatorL</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[4]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>4.8217428</x1-m>
|
<x1-m>4.8217428</x1-m>
|
||||||
|
@ -28,11 +28,11 @@
|
||||||
<name>Right elevator</name>
|
<name>Right elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorR</object-name>
|
<object-name>ElevatorR</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[5]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>2.9796817</x1-m>
|
<x1-m>2.9796817</x1-m>
|
||||||
|
|
|
@ -9,11 +9,11 @@
|
||||||
<name>Left elevator</name>
|
<name>Left elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorL</object-name>
|
<object-name>ElevatorL</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[4]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>4.8217428</x1-m>
|
<x1-m>4.8217428</x1-m>
|
||||||
|
@ -28,11 +28,11 @@
|
||||||
<name>Right elevator</name>
|
<name>Right elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorR</object-name>
|
<object-name>ElevatorR</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[5]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>2.9796817</x1-m>
|
<x1-m>2.9796817</x1-m>
|
||||||
|
|
|
@ -9,11 +9,11 @@
|
||||||
<name>Left elevator</name>
|
<name>Left elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorL</object-name>
|
<object-name>ElevatorL</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[4]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>4.8217428</x1-m>
|
<x1-m>4.8217428</x1-m>
|
||||||
|
@ -28,11 +28,11 @@
|
||||||
<name>Right elevator</name>
|
<name>Right elevator</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>ElevatorR</object-name>
|
<object-name>ElevatorR</object-name>
|
||||||
<property>/controls/flight/elevator-fbw</property>
|
<property>/sim/multiplay/generic/float[5]</property>
|
||||||
<interpolation>
|
<interpolation>
|
||||||
<entry><ind>-1.0</ind><dep>-15.0</dep></entry>
|
<entry><ind>-0.5</ind><dep>-20.0</dep></entry>
|
||||||
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
<entry><ind>0.0</ind><dep>0.0</dep></entry>
|
||||||
<entry><ind>1.0</ind><dep>15.0</dep></entry>
|
<entry><ind>0.5</ind><dep>20.0</dep></entry>
|
||||||
</interpolation>
|
</interpolation>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>2.9796817</x1-m>
|
<x1-m>2.9796817</x1-m>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<name>Rudder</name>
|
<name>Rudder</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>Rudder</object-name>
|
<object-name>Rudder</object-name>
|
||||||
<property>surface-positions/rudder-pos-norm</property>
|
<property>/sim/multiplay/generic/float[8]</property>
|
||||||
<factor>25</factor>
|
<factor>25</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>4.013</x1-m>
|
<x1-m>4.013</x1-m>
|
||||||
|
|
|
@ -29,8 +29,8 @@
|
||||||
<name>Left aileron</name>
|
<name>Left aileron</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>AileronL</object-name>
|
<object-name>AileronL</object-name>
|
||||||
<property>surface-positions/left-aileron-pos-norm</property>
|
<property>/sim/multiplay/generic/float[6]</property>
|
||||||
<factor>25</factor>
|
<factor>40</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>8.7295</x1-m>
|
<x1-m>8.7295</x1-m>
|
||||||
<y1-m>-16.3231163</y1-m>
|
<y1-m>-16.3231163</y1-m>
|
||||||
|
@ -44,8 +44,8 @@
|
||||||
<name>Right aileron</name>
|
<name>Right aileron</name>
|
||||||
<type>rotate</type>
|
<type>rotate</type>
|
||||||
<object-name>AileronR</object-name>
|
<object-name>AileronR</object-name>
|
||||||
<property>surface-positions/right-aileron-pos-norm</property>
|
<property>/sim/multiplay/generic/float[7]</property>
|
||||||
<factor>25</factor>
|
<factor>40</factor>
|
||||||
<axis>
|
<axis>
|
||||||
<x1-m>7.6792</x1-m>
|
<x1-m>7.6792</x1-m>
|
||||||
<y1-m>13.3967144</y1-m>
|
<y1-m>13.3967144</y1-m>
|
||||||
|
|
|
@ -53,9 +53,15 @@ var master_hyd = func {
|
||||||
} else {
|
} else {
|
||||||
setprop("/systems/hydraulic/blue-psi", 3000);
|
setprop("/systems/hydraulic/blue-psi", 3000);
|
||||||
}
|
}
|
||||||
|
} else if (getprop("/instrumentation/airspeed-indicator/indicated-speed-kt") >= 120 and rat_man_sw == 1) {
|
||||||
|
if (blue_psi < 2400) {
|
||||||
|
setprop("/systems/hydraulic/blue-psi", blue_psi + 100);
|
||||||
|
} else {
|
||||||
|
setprop("/systems/hydraulic/blue-psi", 2500);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
if (blue_psi > 1) {
|
if (blue_psi > 1) {
|
||||||
setprop("/systems/hydraulic/blue-psi", blue_psi - 0.1);
|
setprop("/systems/hydraulic/blue-psi", blue_psi - 5);
|
||||||
} else {
|
} else {
|
||||||
setprop("/systems/hydraulic/blue-psi", 0);
|
setprop("/systems/hydraulic/blue-psi", 0);
|
||||||
}
|
}
|
||||||
|
@ -75,7 +81,7 @@ var master_hyd = func {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (green_psi > 1) {
|
if (green_psi > 1) {
|
||||||
setprop("/systems/hydraulic/green-psi", green_psi - 0.1);
|
setprop("/systems/hydraulic/green-psi", green_psi - 5);
|
||||||
} else {
|
} else {
|
||||||
setprop("/systems/hydraulic/green-psi", 0);
|
setprop("/systems/hydraulic/green-psi", 0);
|
||||||
}
|
}
|
||||||
|
@ -101,7 +107,7 @@ var master_hyd = func {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (yellow_psi > 1) {
|
if (yellow_psi > 1) {
|
||||||
setprop("/systems/hydraulic/yellow-psi", yellow_psi - 0.1);
|
setprop("/systems/hydraulic/yellow-psi", yellow_psi - 5);
|
||||||
} else {
|
} else {
|
||||||
setprop("/systems/hydraulic/yellow-psi", 0);
|
setprop("/systems/hydraulic/yellow-psi", 0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
# Airbus A3XX FBW System by Joshua Davidson (it0uchpods)
|
# Airbus A3XX FBW System by Joshua Davidson (it0uchpods)
|
||||||
# V0.9.6
|
# V0.9.7
|
||||||
|
|
||||||
########################
|
###################
|
||||||
# Roll Update Function #
|
# Update Function #
|
||||||
########################
|
###################
|
||||||
|
|
||||||
var roll_input = func {
|
var update_loop = func {
|
||||||
|
|
||||||
var ail = getprop("/controls/flight/aileron");
|
var ail = getprop("/controls/flight/aileron");
|
||||||
|
|
||||||
|
@ -29,13 +29,6 @@ var roll_input = func {
|
||||||
setprop("/it-fbw/roll-lim-max", "33");
|
setprop("/it-fbw/roll-lim-max", "33");
|
||||||
setprop("/it-fbw/roll-lim-min", "-33");
|
setprop("/it-fbw/roll-lim-min", "-33");
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
#########################
|
|
||||||
# Pitch Update Function #
|
|
||||||
#########################
|
|
||||||
|
|
||||||
var pitch_input = func {
|
|
||||||
|
|
||||||
var elev = getprop("/controls/flight/elevator");
|
var elev = getprop("/controls/flight/elevator");
|
||||||
|
|
||||||
|
@ -54,29 +47,16 @@ var pitch_input = func {
|
||||||
setprop("/it-fbw/pitch-lim-max", "15");
|
setprop("/it-fbw/pitch-lim-max", "15");
|
||||||
setprop("/it-fbw/pitch-lim-min", "-15");
|
setprop("/it-fbw/pitch-lim-min", "-15");
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Various Other Functions #
|
|
||||||
###########################
|
|
||||||
|
|
||||||
setlistener("/sim/signals/fdm-initialized", func {
|
|
||||||
setprop("/it-fbw/override", 0);
|
|
||||||
setprop("/it-fbw/law", 3);
|
|
||||||
update_roll.start();
|
|
||||||
update_pitch.start();
|
|
||||||
});
|
|
||||||
|
|
||||||
setlistener("/systems/electrical/bus/ac-ess", func {
|
|
||||||
fbw_law();
|
|
||||||
});
|
|
||||||
|
|
||||||
var fbw_law = func {
|
|
||||||
if (getprop("/it-fbw/override") == 0) {
|
if (getprop("/it-fbw/override") == 0) {
|
||||||
if (getprop("/systems/electrical/bus/ac-ess") >= 110) {
|
if ((getprop("/systems/electrical/bus/ac-ess") >= 110) and (getprop("/systems/hydraulic/green-psi") >= 1500) and (getprop("/systems/hydraulic/yellow-psi") >= 1500)) {
|
||||||
if (getprop("/it-fbw/law") != 0) {
|
if (getprop("/it-fbw/law") != 0) {
|
||||||
setprop("/it-fbw/law", 0);
|
setprop("/it-fbw/law", 0);
|
||||||
}
|
}
|
||||||
|
} else if ((getprop("/systems/electrical/bus/ac-ess") >= 110) and (getprop("/systems/hydraulic/blue-psi") >= 1500)) {
|
||||||
|
if (getprop("/it-fbw/law") != 2) {
|
||||||
|
setprop("/it-fbw/law", 2);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
if (getprop("/it-fbw/law") != 3) {
|
if (getprop("/it-fbw/law") != 3) {
|
||||||
setprop("/it-fbw/law", 3);
|
setprop("/it-fbw/law", 3);
|
||||||
|
@ -85,8 +65,17 @@ var fbw_law = func {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###########################
|
||||||
|
# Various Other Functions #
|
||||||
|
###########################
|
||||||
|
|
||||||
|
setlistener("/sim/signals/fdm-initialized", func {
|
||||||
|
setprop("/it-fbw/override", 0);
|
||||||
|
setprop("/it-fbw/law", 3);
|
||||||
|
updatet.start();
|
||||||
|
});
|
||||||
|
|
||||||
##########
|
##########
|
||||||
# Timers #
|
# Timers #
|
||||||
##########
|
##########
|
||||||
var update_roll = maketimer(0.01, roll_input);
|
var updatet = maketimer(0.01, update_loop);
|
||||||
var update_pitch = maketimer(0.01, pitch_input);
|
|
||||||
|
|
|
@ -4,6 +4,266 @@
|
||||||
|
|
||||||
<PropertyList>
|
<PropertyList>
|
||||||
|
|
||||||
|
<!-- Elevator Control -->
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<debug>false</debug>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1.0</gain>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
<value>0.5</value>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<or>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
<expression>
|
||||||
|
<table>
|
||||||
|
<property>/controls/flight/aileron-fbw</property>
|
||||||
|
<entry><ind>-1</ind><dep>-0.5</dep></entry>
|
||||||
|
<entry><ind> 0</ind><dep> 0.0</dep></entry>
|
||||||
|
<entry><ind> 1</ind><dep> 0.5</dep></entry>
|
||||||
|
</table>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/controls/flight/aileron-left</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<debug>false</debug>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1.0</gain>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
<value>0.5</value>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<or>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
<expression>
|
||||||
|
<table>
|
||||||
|
<property>/controls/flight/aileron-fbw</property>
|
||||||
|
<entry><ind>-1</ind><dep> 0.5</dep></entry>
|
||||||
|
<entry><ind> 0</ind><dep> 0.0</dep></entry>
|
||||||
|
<entry><ind> 1</ind><dep>-0.5</dep></entry>
|
||||||
|
</table>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/controls/flight/aileron-right</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<debug>false</debug>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1.0</gain>
|
||||||
|
<input>
|
||||||
|
<expression>
|
||||||
|
<sum>
|
||||||
|
<property>/controls/flight/aileron-left</property>
|
||||||
|
<property>/controls/flight/aileron-right</property>
|
||||||
|
</sum>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/controls/flight/aileron-sum</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<!-- Elevator Control -->
|
||||||
|
<filter>
|
||||||
|
<debug>false</debug>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1.0</gain>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
<value>0.1</value>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<or>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
<expression>
|
||||||
|
<table>
|
||||||
|
<property>/controls/flight/elevator-fbw</property>
|
||||||
|
<entry><ind>-1</ind><dep>-0.5</dep></entry>
|
||||||
|
<entry><ind> 0</ind><dep> 0.0</dep></entry>
|
||||||
|
<entry><ind> 1</ind><dep> 0.5</dep></entry>
|
||||||
|
</table>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/controls/flight/elevator-left</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<debug>false</debug>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1.0</gain>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/yellow-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
<value>0.1</value>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<or>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/yellow-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
<expression>
|
||||||
|
<table>
|
||||||
|
<property>/controls/flight/elevator-fbw</property>
|
||||||
|
<entry><ind>-1</ind><dep>-0.5</dep></entry>
|
||||||
|
<entry><ind> 0</ind><dep> 0.0</dep></entry>
|
||||||
|
<entry><ind> 1</ind><dep> 0.5</dep></entry>
|
||||||
|
</table>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/controls/flight/elevator-right</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<debug>false</debug>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1.0</gain>
|
||||||
|
<input>
|
||||||
|
<expression>
|
||||||
|
<sum>
|
||||||
|
<property>/controls/flight/elevator-left</property>
|
||||||
|
<property>/controls/flight/elevator-right</property>
|
||||||
|
</sum>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/controls/flight/elevator-sum</output>
|
||||||
|
</filter>
|
||||||
|
|
||||||
|
<!-- Rudder -->
|
||||||
|
<filter>
|
||||||
|
<debug>false</debug>
|
||||||
|
<type>gain</type>
|
||||||
|
<gain>1.0</gain>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<and>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
<less-than>
|
||||||
|
<property>/systems/hydraulic/yellow-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</less-than>
|
||||||
|
</and>
|
||||||
|
</condition>
|
||||||
|
<value>0.0</value>
|
||||||
|
</input>
|
||||||
|
<input>
|
||||||
|
<condition>
|
||||||
|
<or>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/green-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/blue-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
<greater-than-equals>
|
||||||
|
<property>/systems/hydraulic/yellow-psi</property>
|
||||||
|
<value>1500</value>
|
||||||
|
</greater-than-equals>
|
||||||
|
</or>
|
||||||
|
</condition>
|
||||||
|
<expression>
|
||||||
|
<sum>
|
||||||
|
<property>/controls/flight/rudder</property>
|
||||||
|
<property>/controls/flight/rudder-trim</property>
|
||||||
|
</sum>
|
||||||
|
</expression>
|
||||||
|
</input>
|
||||||
|
<output>/controls/flight/rudder-fdm</output>
|
||||||
|
<min>-1.0</min>
|
||||||
|
<max>1.0</max>
|
||||||
|
</filter>
|
||||||
|
|
||||||
</PropertyList>
|
</PropertyList>
|
||||||
|
|
Reference in a new issue