Justin Smithies wrote:
Hi!
I just saved the files from your email.
I have them running in the order of
electrical.nas
737-electrical.nas
I even tried them the other way around.
Ok, i've attached my current version to this mail.
I've forgotten to say, that i'am using e as module name for the
framework, to save my fingers :)
put this your 737-300-set.xml into the nasal block:
---snip---
electrical-base
fileAircraft/737-300/Systems/electrical.nas/file
modulee/module
/electrical-base
electrical
fileAircraft/737-300/Systems/737-electrical.nas/file
/electrical
---snip---
cu Markus
--
Markus Barenhoff - Hamburg - Germany - Earth
url: http://www.alios.org/ - mail: [EMAIL PROTECTED]
pgpkey: 0xAE7C7759 fp: 79 64 AA D9 B7 16 F5 06 6A 88 5F A9 4D 49 45 BB
##
# Copyright (c) 2006 Markus Barenhoff [EMAIL PROTECTED]
#
# This file is protected by the GNU Public License. For more details,
# please see the text file COPYING.
##
# TODO:
# - all the FIXMEs
# - automatic load shedding (galley)
# - generator drive disconnect
# - ac/dc meter stuff
net = e.ElecNet.new();
#
# helper functions
#
setprop_b() = func {
props.globals.getNode(arg[0], 1).setBoolValue(arg[1]);
};
#
# sources
#
apu = e.ElecNode.new();
apu.type = source;
apu.name = apu;
apu.u_transformer = func {
# FIXME: implment apu stuff
me.voltage = 115.0;
};
net.addSourceNode(apu);
external = e.ElecNode.new();
external.type = source;
external.name = external;
external.u_transformer = func {
# FIXME: implement external
me.voltage = 115.0;
};
net.addSourceNode(external);
enggen1 = e.ElecNode.new();
enggen1.type = source;
enggen1.name = generator1;
enggen1.u_transformer = func {
rpm = getprop(/engines/engine[0]/n1);
factor = rpm / 30;
if(factor 1.0) {
factor = 1.0;
}
me.voltage = (115 * factor) + (5.0 * (rand() - 0.5));
};
net.addSourceNode(enggen1);
enggen2 = e.ElecNode.new();
enggen2.type = source;
enggen2.name = generator2;
enggen2.u_transformer = func {
rpm = getprop(/engines/engine[1]/n1);
factor = rpm / 30;
if(factor 1.0) {
factor = 1.0;
}
me.voltage = (115 * factor) + (5.0 * (rand() - 0.5));
};
net.addSourceNode(enggen2);
# FIXME: implement battery stuff
battery = e.ElecNode.new();
battery.type = source;
battery.name = battery;
net.addSourceNode(battery);
# busses
genbus1 = e.ElecNode.new();
genbus1.name = genbus1;
genbus2 = e.ElecNode.new();
genbus2.name = genbus2;
extern_ac_bus = e.ElecNode.new();
extern_ac_bus.name = extern_ac_bus;
grd_svc_bus = e.ElecNode.new();
grd_svc_bus.name = ground_service_bus;
main_bus1 = e.ElecNode.new();
main_bus1.name = main_bus1;
main_bus2 = e.ElecNode.new();
main_bus2.name = main_bus2;
xfr_bus1 = e.ElecNode.new();
xfr_bus1.name = xfr_bus1;
xfr_bus2 = e.ElecNode.new();
xfr_bus2.name = xfr_bus2;
dc_bus1 = e.ElecNode.new();
dc_bus1.name = dc_bus1;
dc_bus2 = e.ElecNode.new();
dc_bus2.name = dc_bus2;
dctie_bus = e.ElecNode.new();
dctie_bus.name = dctie_bus;
hot_battery_bus = e.ElecNode.new();
hot_battery_bus.name = hot_battery_bus;
# relays
genswrelay1 = e.ElecNode.new();
genswrelay1.name = genswrelay1;
genswrelay1.type = relay;
genswrelay1.switch = func {
getprop(/controls/electric/genbuspanel/gen0);
};
genswrelay2 = e.ElecNode.new();
genswrelay2.name = genswrelay2;
genswrelay2.type = relay;
genswrelay2.switch = func {
getprop(/controls/electric/genbuspanel/gen1);
};
apuswrelay1 = e.ElecNode.new();
apuswrelay1.name = apuswrelay1;
apuswrelay1.type = relay;
apuswrelay1.switch = func {
getprop(/controls/electric/genbuspanel/apugen0);
};
apuswrelay2 = e.ElecNode.new();
apuswrelay2.name = apuswrelay2;
apuswrelay2.type = relay;
apuswrelay2.switch = func {
getprop(/controls/electric/genbuspanel/apugen1);
};
grdpwrrelay = e.ElecNode.new();
grdpwrrelay.name = grdpwrrelay;
grdpwrrelay.type = relay;
grdpwrrelay.switch = func {
getprop(/controls/electric/genbuspanel/grdpwr);
};
grdsvcrelay1 = e.ElecNode.new();
grdsvcrelay1.name = grdsvcrelay1;
grdsvcrelay1.type = relay;
grdsvcrelay1.switch = func {
getprop(/controls/electric/misc/grdsvcswitch);
};
grdsvcrelay2 = e.ElecNode.new();
grdsvcrelay2.name = grdsvcrelay2;
grdsvcrelay2.type = relay;
grdsvcrelay2.switch = func {
(!getprop(/controls/electric/misc/grdsvcswitch));
};
gengenbusrelay1 = e.ElecNode.new();
gengenbusrelay1.name = gengenbusrelay1;
gengenbusrelay1.type = relay;
gengenbusrelay1.switch = func {0;};
apugenbusrelay1 = e.ElecNode.new();
apugenbusrelay1.name = apugenbusrelay1;
apugenbusrelay1.type = relay;
apugenbusrelay1.switch = func {0;};
extgenbusrelay1 = e.ElecNode.new();
extgenbusrelay1.name = extgenbusrelay1;
extgenbusrelay1.type =