1
0
Fork 0

Hydraulics / brakes: smooth the pressure guague

This commit is contained in:
legoboyvdlp R 2021-06-07 15:38:50 +01:00
parent 8e0603d48d
commit 9798a20850
3 changed files with 46 additions and 16 deletions

View file

@ -346,7 +346,7 @@
<animation>
<type>rotate</type>
<object-name>brakes_lb_psi</object-name>
<property>systems/hydraulic/brakes/pressure-left-psi</property>
<property>systems/hydraulic/brakes/pressure-left-psi-output</property>
<factor>-0.03</factor>
<condition>
<or>
@ -360,7 +360,7 @@
<value>1</value>
</equals>
<equals>
<property>systems/hydraulic/brakes/pressure-left-psi</property>
<property>systems/hydraulic/brakes/pressure-left-psi-output</property>
<value>0</value>
</equals>
</and>
@ -378,7 +378,7 @@
<animation>
<type>rotate</type>
<object-name>brakes_rb_psi</object-name>
<property>systems/hydraulic/brakes/pressure-right-psi</property>
<property>systems/hydraulic/brakes/pressure-right-psi-output</property>
<factor>0.03</factor>
<condition>
<or>
@ -392,7 +392,7 @@
<value>1</value>
</equals>
<equals>
<property>systems/hydraulic/brakes/pressure-right-psi</property>
<property>systems/hydraulic/brakes/pressure-right-psi-output</property>
<value>0</value>
</equals>
</and>
@ -410,7 +410,7 @@
<animation>
<type>rotate</type>
<object-name>brakes_accum_psi</object-name>
<property>systems/hydraulic/yellow-accumulator-psi</property>
<property>systems/hydraulic/yellow-accumulator-psi-output</property>
<interpolation>
<entry><ind>0</ind><dep>0</dep></entry>
<entry><ind>700</ind><dep>-20</dep></entry>

View file

@ -2,10 +2,10 @@
# Jonathan Redpath
# Copyright (c) 2019 Jonathan Redpath
var lcont = 0;
var rcont = 0;
var HYD = {
lcont: 0,
rcont: 0,
Brakes: {
accumPressPsi: props.globals.initNode("/systems/hydraulic/yellow-accumulator-psi-cmd", 0, "INT"),
leftPressPsi: props.globals.initNode("/systems/hydraulic/brakes/pressure-left-psi", 0, "INT"),
@ -86,23 +86,24 @@ var HYD = {
me.Fail.yellowLeak.setBoolValue(0);
},
loop: func(notification) {
# Decrease accumPressPsi when green and yellow hydraulic's aren't pressurized
# Decrease accumPressPsi when green and yellow hydraulics aren't pressurized
if (me.Brakes.leftbrake.getValue() > 0 or notification.brakesMode == 0) {
lcont = lcont + 1;
me.lcont = me.lcont + 1;
} else {
lcont = 0;
me.lcont = 0;
}
if (me.Brakes.rightbrake.getValue() > 0 or notification.brakesMode == 0) {
rcont = rcont + 1;
me.rcont = me.rcont + 1;
} else {
rcont = 0;
me.rcont = 0;
}
if (notification.yellow < notification.accumPressPsi and notification.accumPressPsi > 0) {
if (lcont == 1) {
me.Brakes.accumPressPsi.setValue(notification.accumPressPsi - 200);
if (me.lcont == 1) {
me.Brakes.accumPressPsi.setValue(notification.accumPressPsi - 200);
}
if (rcont == 1) {
me.Brakes.accumPressPsi.setValue(notification.accumPressPsi - 200);
if (me.rcont == 1) {
me.Brakes.accumPressPsi.setValue(notification.accumPressPsi - 200);
}
if (notification.accumPressPsi < 0) {
me.Brakes.accumPressPsi.setValue(0);
@ -181,6 +182,7 @@ var HYD = {
},
};
# Restrict gear raising on the ground
setlistener("/controls/gear/gear-down", func {
if (!pts.Controls.Gear.gearDown.getValue() and (pts.Gear.wow[0].getValue() or pts.Gear.wow[1].getValue() or pts.Gear.wow[2].getValue())) {
pts.Controls.Gear.gearDown.setValue(1);

View file

@ -1326,4 +1326,32 @@
<output>/instrumentation/mk-viii/inputs/discretes/landing-flaps</output>
</logic>
<!-- Brake Pressure Guague -->
<filter>
<type>noise-spike</type>
<input>
<property>/systems/hydraulic/yellow-accumulator-psi</property>
</input>
<output>/systems/hydraulic/yellow-accumulator-psi-output</output>
<max-rate-of-change>3000</max-rate-of-change>
</filter>
<filter>
<type>noise-spike</type>
<input>
<property>/systems/hydraulic/brakes/pressure-left-psi</property>
</input>
<output>/systems/hydraulic/brakes/pressure-left-psi-output</output>
<max-rate-of-change>3000</max-rate-of-change>
</filter>
<filter>
<type>noise-spike</type>
<input>
<property>/systems/hydraulic/brakes/pressure-right-psi</property>
</input>
<output>/systems/hydraulic/brakes/pressure-right-psi-output</output>
<max-rate-of-change>3000</max-rate-of-change>
</filter>
</PropertyList>