1
0
Fork 0

Merge branch 'dev' into FMGC

This commit is contained in:
legoboyvdlp R 2020-01-01 22:13:52 +00:00
commit cf05f3da8d
3 changed files with 70 additions and 1 deletions

View file

@ -324,7 +324,7 @@ var ECAMControlPanel = {
},
clrBtn: func() {
me.lightOff("clr");
if (athrWarnNode.getValue == 2) {
if (athrWarnNode.getValue() == 2) {
athrWarnNode.setValue(0);
return;
}

View file

@ -248,6 +248,8 @@ var masterFMGC = maketimer(0.2, func {
if (getprop("/systems/navigation/adr/computation/overspeed-vfe-spd") != 1024) {
setprop("/FMGC/internal/maxspeed", getprop("/systems/navigation/adr/computation/overspeed-vfe-spd") - 4);
} elsif (getprop("/systems/navigation/adr/computation/overspeed-vle")) {
setprop("/FMGC/internal/maxspeed", 284);
} else {
setprop("/FMGC/internal/maxspeed", getprop("/it-fbw/speeds/vmo-mmo"));
}

67
Nasal/Systems/APU.nas Normal file
View file

@ -0,0 +1,67 @@
# A3XX Auxilliary Power Unit
# Jonathan Redpath (legoboyvdlp)
# Copyright (c) 2019 Jonathan Redpath (legoboyvdlp)
var APU = {
state: 0, # power up, watch, starting, run, cooldown, shutdown
nRpm: 0,
fuelValve: aircraft.door.new("/controls/apu/fuel-valve", 1),
inletFlap: aircraft.door.new("/controls/apu/inlet-flap", 12),
listenSignals: 0,
start: 0,
cancelCheckFlap: 0,
new: func() {
var a = { parents:[APU] };
return a;
},
setState: func(num) {
me.state = num;
},
powerOn: func() {
# apu able to receive emergency stop or start signals
me.fuelValve.open();
me.inletFlap.open();
me.listenSignals = 1;
settimer(me.setState(1), 3);
},
getStartSignal: func() {
if (me.listenSignals and me.state < 2 and me.nRpm < 7) {
me.start = 1;
me.startCheckFlap();
} elsif (me.listenSignals) {
settimer(me.getStartSignal(), 0);
}
},
startCheckFlap: func() {
if (me.inletFlap.getpos() != 1 and me.cancelCheckFlap == 0 and me.state == 1) {
settimer(me.startCheckFlap(), 0);
} elsif (me.cancelCheckFlap) {
me.cancelCheckFlap = 0;
} else {
me.setState(2);
}
},
getStopSignal: func() {
if (me.listenSignals) {
me.cancelCheckFlap = 1;
me.inletFlap.close();
# wait for flap close --> power down relay output
}
},
};
var APUController = {
_init: 0,
APU: nil,
init: func() {
if (!me._init) {
me.APU = APU.new();
}
},
loop: func() {
if (me.APU != nil) {
APU.update();
}
},
};