1
0
Fork 0

Global speed protection in DES mode

This commit is contained in:
legoboyvdlp R 2021-06-19 14:25:21 +01:00
parent 82bf436084
commit 72245558c6
3 changed files with 44 additions and 0 deletions

View file

@ -1043,6 +1043,17 @@ setlistener(pts.Systems.Navigation.ADR.Output.overspeed, func(v) {
} }
}, 0, 0); }, 0, 0);
setlistener(pts.Systems.Navigation.ADR.Output.underspeed, func(v) {
if (v.getBoolValue() and !Output.ap1.getBoolValue() and !Output.ap2.getBoolValue() and Output.athr.getBoolValue() and Modes.PFD.FMA.pitchMode.getValue() == "OP DES" and Modes.PFD.FMA.throttle.getValue() == "THR IDLE") {
Input.fd1.setValue(0);
Input.fd2.setValue(0);
ecam.aural[5].setBoolValue(0);
settimer(func() {
ecam.aural[5].setBoolValue(1);
}, 0.15);
}
}, 0, 0);
setlistener("/sim/signals/fdm-initialized", func { setlistener("/sim/signals/fdm-initialized", func {
ITAF.init(); ITAF.init();

View file

@ -282,6 +282,7 @@ var Systems = {
ADR: { ADR: {
Output: { Output: {
overspeed: props.globals.getNode("/systems/navigation/adr/output/overspeed"), overspeed: props.globals.getNode("/systems/navigation/adr/output/overspeed"),
underspeed: props.globals.getNode("/systems/navigation/adr/output/underspeed"),
}, },
}, },
}, },

View file

@ -736,6 +736,33 @@
</function> </function>
</fcs_function> </fcs_function>
<switch name="/systems/navigation/adr/computation/underspeed-difference">
<default value="2"/>
<test logic="OR" value="19">
/controls/flight/speedbrake eq 1.0
</test>
</switch>
<fcs_function name="/systems/navigation/adr/computation/underspeed">
<function>
<ifthen>
<lt>
<max>
<property>/systems/navigation/adr/output/cas-1</property>
<property>/systems/navigation/adr/output/cas-2</property>
<property>/systems/navigation/adr/output/cas-3</property>
</max>
<difference>
<property>/FMGC/internal/vls-min</property>
<property>/systems/navigation/adr/computation/underspeed-difference</property>
</difference>
</lt>
<value>1</value>
<value>0</value>
</ifthen>
</function>
</fcs_function>
</channel> </channel>
<channel name="ADR Output" execrate="2"> <!-- todo - need lowpass? --> <channel name="ADR Output" execrate="2"> <!-- todo - need lowpass? -->
@ -905,6 +932,11 @@
<gain>/systems/navigation/adr/any-adr-on</gain> <gain>/systems/navigation/adr/any-adr-on</gain>
</pure_gain> </pure_gain>
<pure_gain name="/systems/navigation/adr/output/underspeed">
<input>/systems/navigation/adr/computation/underspeed</input>
<gain>/systems/navigation/adr/any-adr-on</gain>
</pure_gain>
<pure_gain name="/instrumentation/radar-altimeter[0]/radar-altitude-ft-corrected"> <pure_gain name="/instrumentation/radar-altimeter[0]/radar-altitude-ft-corrected">
<input>/instrumentation/radar-altimeter[0]/radar-altitude-ft</input> <input>/instrumentation/radar-altimeter[0]/radar-altitude-ft</input>
<gain>1</gain> <gain>1</gain>