Stall warning: add IR sourcing; bugfix condition. BUSS: enable when 3 ADRs are off
This commit is contained in:
parent
8890a073b9
commit
879168d1a3
4 changed files with 380 additions and 272 deletions
|
@ -770,8 +770,6 @@ var canvas_pfd = {
|
||||||
obj.AI_fpv_rot = obj["FPV"].createTransform();
|
obj.AI_fpv_rot = obj["FPV"].createTransform();
|
||||||
|
|
||||||
obj.page = obj.group;
|
obj.page = obj.group;
|
||||||
# temporarily hidden
|
|
||||||
obj["ASI_buss"].hide();
|
|
||||||
obj["ASI_index_middle"].hide();
|
obj["ASI_index_middle"].hide();
|
||||||
# end temporary hide
|
# end temporary hide
|
||||||
|
|
||||||
|
@ -786,7 +784,7 @@ var canvas_pfd = {
|
||||||
"ALT_digit_DN","ALT_digit_UP_metric","ALT_error","ALT_neg","ALT_group","ALT_group2","ALT_frame","VS_pointer","VS_box","VS_digit","VS_error","VS_group","QNH","QNH_setting","QNH_std","QNH_box","LOC_pointer","LOC_scale","GS_scale","GS_pointer","CRS_pointer",
|
"ALT_digit_DN","ALT_digit_UP_metric","ALT_error","ALT_neg","ALT_group","ALT_group2","ALT_frame","VS_pointer","VS_box","VS_digit","VS_error","VS_group","QNH","QNH_setting","QNH_std","QNH_box","LOC_pointer","LOC_scale","GS_scale","GS_pointer","CRS_pointer",
|
||||||
"HDG_target","HDG_scale","HDG_one","HDG_two","HDG_three","HDG_four","HDG_five","HDG_six","HDG_seven","HDG_digit_L","HDG_digit_R","HDG_error","HDG_group","HDG_frame","TRK_pointer","machError","ilsError","ils_code","ils_freq","dme_dist","dme_dist_legend",
|
"HDG_target","HDG_scale","HDG_one","HDG_two","HDG_three","HDG_four","HDG_five","HDG_six","HDG_seven","HDG_digit_L","HDG_digit_R","HDG_error","HDG_group","HDG_frame","TRK_pointer","machError","ilsError","ils_code","ils_freq","dme_dist","dme_dist_legend",
|
||||||
"ILS_HDG_R","ILS_HDG_L","ILS_right","ILS_left","outerMarker","middleMarker","innerMarker","v1_group","v1_text","vr_speed","F_target","S_target","FS_targets","flap_max","clean_speed","ground","ground_ref","FPV","spdLimError","vsFMArate","tailstrikeInd",
|
"ILS_HDG_R","ILS_HDG_L","ILS_right","ILS_left","outerMarker","middleMarker","innerMarker","v1_group","v1_text","vr_speed","F_target","S_target","FS_targets","flap_max","clean_speed","ground","ground_ref","FPV","spdLimError","vsFMArate","tailstrikeInd",
|
||||||
"Metric_box","Metric_letter","Metric_cur_alt","ASI_buss","ASI_index_middle"];
|
"Metric_box","Metric_letter","Metric_cur_alt","ASI_buss","ASI_buss_ref","ASI_index_middle"];
|
||||||
},
|
},
|
||||||
getKeysTest: func() {
|
getKeysTest: func() {
|
||||||
return ["Test_white","Test_text"];
|
return ["Test_white","Test_text"];
|
||||||
|
@ -796,6 +794,7 @@ var canvas_pfd = {
|
||||||
},
|
},
|
||||||
aoa: 0,
|
aoa: 0,
|
||||||
showMetricAlt: 0,
|
showMetricAlt: 0,
|
||||||
|
ASItrendIsShown: 0,
|
||||||
update: func(notification) {
|
update: func(notification) {
|
||||||
me.updatePower(notification);
|
me.updatePower(notification);
|
||||||
|
|
||||||
|
@ -877,6 +876,8 @@ var canvas_pfd = {
|
||||||
if (dmc.DMController.DMCs[me.number].outputs[0] != nil) {
|
if (dmc.DMController.DMCs[me.number].outputs[0] != nil) {
|
||||||
me.ind_spd = dmc.DMController.DMCs[me.number].outputs[0].getValue();
|
me.ind_spd = dmc.DMController.DMCs[me.number].outputs[0].getValue();
|
||||||
me["ASI_error"].hide();
|
me["ASI_error"].hide();
|
||||||
|
me["ASI_buss"].hide();
|
||||||
|
me["ASI_buss_ref"].hide();
|
||||||
me["ASI_frame"].setColor(1,1,1);
|
me["ASI_frame"].setColor(1,1,1);
|
||||||
me["ASI_group"].show();
|
me["ASI_group"].show();
|
||||||
me["VLS_min"].hide();
|
me["VLS_min"].hide();
|
||||||
|
@ -1219,17 +1220,23 @@ var canvas_pfd = {
|
||||||
me["ASI_trend_up"].setTranslation(0, math.clamp(me.ASItrend, 0, 50) * -6.6);
|
me["ASI_trend_up"].setTranslation(0, math.clamp(me.ASItrend, 0, 50) * -6.6);
|
||||||
me["ASI_trend_down"].setTranslation(0, math.clamp(me.ASItrend, -50, 0) * -6.6);
|
me["ASI_trend_down"].setTranslation(0, math.clamp(me.ASItrend, -50, 0) * -6.6);
|
||||||
|
|
||||||
if (me.ASItrend >= 2) {
|
if (notification.fac1 or notification.fac2) {
|
||||||
|
if (me.ASItrend >= 2 or (me.ASItrendIsShown and me.ASItrend >= 1)) {
|
||||||
me["ASI_trend_up"].show();
|
me["ASI_trend_up"].show();
|
||||||
me["ASI_trend_down"].hide();
|
me["ASI_trend_down"].hide();
|
||||||
} else if (me.ASItrend <= -2) {
|
me.ASItrendIsShown = 1;
|
||||||
me["ASI_trend_down"].show();
|
} else if (me.ASItrend <= -2 or (me.ASItrendIsShown and me.ASItrend <= -1)) {
|
||||||
me["ASI_trend_up"].hide();
|
me["ASI_trend_up"].hide();
|
||||||
|
me["ASI_trend_down"].show();
|
||||||
|
me.ASItrendIsShown = 1;
|
||||||
|
} else {
|
||||||
|
me["ASI_trend_up"].hide();
|
||||||
|
me["ASI_trend_down"].hide();
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
me["ASI_trend_up"].hide();
|
me["ASI_trend_up"].hide();
|
||||||
me["ASI_trend_down"].hide();
|
me["ASI_trend_down"].hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (-notification.agl >= -565 and -notification.agl <= 565) {
|
if (-notification.agl >= -565 and -notification.agl <= 565) {
|
||||||
me["ground_ref"].show();
|
me["ground_ref"].show();
|
||||||
|
@ -1238,7 +1245,16 @@ var canvas_pfd = {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
me["ASI_group"].hide();
|
me["ASI_group"].hide();
|
||||||
|
if (!systems.ADIRS.Operating.adr[0].getValue() and !systems.ADIRS.Operating.adr[1].getValue() and !systems.ADIRS.Operating.adr[2].getValue()) {
|
||||||
|
me["ASI_buss"].show();
|
||||||
|
me["ASI_buss_ref"].show();
|
||||||
|
me["ASI_buss"].setTranslation(0, getprop("/instrumentation/pfd/buss/translate"));
|
||||||
|
me["ASI_error"].hide();
|
||||||
|
} else {
|
||||||
|
me["ASI_buss"].hide();
|
||||||
|
me["ASI_buss_ref"].hide();
|
||||||
me["ASI_error"].show();
|
me["ASI_error"].show();
|
||||||
|
}
|
||||||
me["ASI_frame"].setColor(1,0,0);
|
me["ASI_frame"].setColor(1,0,0);
|
||||||
me["clean_speed"].hide();
|
me["clean_speed"].hide();
|
||||||
me["S_target"].hide();
|
me["S_target"].hide();
|
||||||
|
|
File diff suppressed because it is too large
Load diff
Before Width: | Height: | Size: 348 KiB After Width: | Height: | Size: 348 KiB |
|
@ -2379,6 +2379,14 @@
|
||||||
/it-fbw/law eq 0
|
/it-fbw/law eq 0
|
||||||
/fdm/jsbsim/fcs/slat-pos-deg lt 15
|
/fdm/jsbsim/fcs/slat-pos-deg lt 15
|
||||||
<test logic="OR">
|
<test logic="OR">
|
||||||
|
<test logic="AND">
|
||||||
|
aero/alpha-deg-corrected ge 13.5
|
||||||
|
<test logic="OR">
|
||||||
|
/systems/navigation/aligned-1 eq 1
|
||||||
|
/systems/navigation/aligned-2 eq 1
|
||||||
|
/systems/navigation/aligned-3 eq 1
|
||||||
|
</test>
|
||||||
|
</test>
|
||||||
<test logic="AND">
|
<test logic="AND">
|
||||||
/systems/navigation/adr/output/aoa-1 ge 13.5
|
/systems/navigation/adr/output/aoa-1 ge 13.5
|
||||||
/systems/navigation/adr/operating-1 eq 1
|
/systems/navigation/adr/operating-1 eq 1
|
||||||
|
@ -2396,6 +2404,15 @@
|
||||||
<test logic="AND">
|
<test logic="AND">
|
||||||
/it-fbw/law eq 0
|
/it-fbw/law eq 0
|
||||||
/fdm/jsbsim/fcs/slat-pos-deg ge 15
|
/fdm/jsbsim/fcs/slat-pos-deg ge 15
|
||||||
|
<test logic="OR">
|
||||||
|
<test logic="AND">
|
||||||
|
aero/alpha-deg-corrected ge 22
|
||||||
|
<test logic="OR">
|
||||||
|
/systems/navigation/aligned-1 eq 1
|
||||||
|
/systems/navigation/aligned-2 eq 1
|
||||||
|
/systems/navigation/aligned-3 eq 1
|
||||||
|
</test>
|
||||||
|
</test>
|
||||||
<test logic="AND">
|
<test logic="AND">
|
||||||
/systems/navigation/adr/output/aoa-1 ge 22
|
/systems/navigation/adr/output/aoa-1 ge 22
|
||||||
/systems/navigation/adr/operating-1 eq 1
|
/systems/navigation/adr/operating-1 eq 1
|
||||||
|
@ -2409,10 +2426,19 @@
|
||||||
/systems/navigation/adr/operating-3 eq 1
|
/systems/navigation/adr/operating-3 eq 1
|
||||||
</test>
|
</test>
|
||||||
</test>
|
</test>
|
||||||
|
</test>
|
||||||
<test logic="AND">
|
<test logic="AND">
|
||||||
/it-fbw/law ne 0
|
/it-fbw/law ne 0
|
||||||
/fdm/jsbsim/fcs/slat-pos-deg lt 15
|
/fdm/jsbsim/fcs/slat-pos-deg lt 15
|
||||||
<test logic="OR">
|
<test logic="OR">
|
||||||
|
<test logic="AND">
|
||||||
|
aero/alpha-deg-corrected ge 8
|
||||||
|
<test logic="OR">
|
||||||
|
/systems/navigation/aligned-1 eq 1
|
||||||
|
/systems/navigation/aligned-2 eq 1
|
||||||
|
/systems/navigation/aligned-3 eq 1
|
||||||
|
</test>
|
||||||
|
</test>
|
||||||
<test logic="AND">
|
<test logic="AND">
|
||||||
/systems/navigation/adr/output/aoa-1 ge 8
|
/systems/navigation/adr/output/aoa-1 ge 8
|
||||||
/systems/navigation/adr/operating-1 eq 1
|
/systems/navigation/adr/operating-1 eq 1
|
||||||
|
@ -2430,6 +2456,15 @@
|
||||||
<test logic="AND">
|
<test logic="AND">
|
||||||
/it-fbw/law ne 0
|
/it-fbw/law ne 0
|
||||||
/fdm/jsbsim/fcs/slat-pos-deg ge 15
|
/fdm/jsbsim/fcs/slat-pos-deg ge 15
|
||||||
|
<test logic="OR">
|
||||||
|
<test logic="AND">
|
||||||
|
aero/alpha-deg-corrected ge 14
|
||||||
|
<test logic="OR">
|
||||||
|
/systems/navigation/aligned-1 eq 1
|
||||||
|
/systems/navigation/aligned-2 eq 1
|
||||||
|
/systems/navigation/aligned-3 eq 1
|
||||||
|
</test>
|
||||||
|
</test>
|
||||||
<test logic="AND">
|
<test logic="AND">
|
||||||
/systems/navigation/adr/output/aoa-1 ge 14
|
/systems/navigation/adr/output/aoa-1 ge 14
|
||||||
/systems/navigation/adr/operating-1 eq 1
|
/systems/navigation/adr/operating-1 eq 1
|
||||||
|
@ -2445,6 +2480,7 @@
|
||||||
</test>
|
</test>
|
||||||
</test>
|
</test>
|
||||||
</test>
|
</test>
|
||||||
|
</test>
|
||||||
</switch>
|
</switch>
|
||||||
|
|
||||||
<switch name="/ECAM/warnings/logic/stall/stall-warn-on">
|
<switch name="/ECAM/warnings/logic/stall/stall-warn-on">
|
||||||
|
|
|
@ -466,4 +466,40 @@
|
||||||
|
|
||||||
</channel>
|
</channel>
|
||||||
|
|
||||||
|
<channel name="PFD BUSS" execrate="8">
|
||||||
|
|
||||||
|
|
||||||
|
<fcs_function name="/instrumentation/pfd/buss/translate">
|
||||||
|
<function>
|
||||||
|
<ifthen>
|
||||||
|
<lt>
|
||||||
|
<property>/fdm/jsbsim/fcs/slat-pos-deg</property>
|
||||||
|
<value>15</value>
|
||||||
|
</lt>
|
||||||
|
<table>
|
||||||
|
<independentVar lookup="row">aero/alpha-deg-corrected</independentVar>
|
||||||
|
<tableData>
|
||||||
|
-1.5 136.409
|
||||||
|
0.0 53.447
|
||||||
|
3.0 0
|
||||||
|
6.5 -53.447
|
||||||
|
8.0 -136.409
|
||||||
|
</tableData>
|
||||||
|
</table>
|
||||||
|
<table>
|
||||||
|
<independentVar lookup="row">aero/alpha-deg-corrected</independentVar>
|
||||||
|
<tableData>
|
||||||
|
-1.5 136.409
|
||||||
|
0.0 53.447
|
||||||
|
3.0 0
|
||||||
|
12.5 -53.447
|
||||||
|
14.0 -136.409
|
||||||
|
</tableData>
|
||||||
|
</table>
|
||||||
|
</ifthen>
|
||||||
|
</function>
|
||||||
|
</fcs_function>
|
||||||
|
|
||||||
|
</channel>
|
||||||
|
|
||||||
</system>
|
</system>
|
||||||
|
|
Loading…
Reference in a new issue