From 2e64524f3ce4709c4e30efafebf385eab8c9a34b Mon Sep 17 00:00:00 2001 From: Joshua Davidson <joshuadavidson2000@gmail.com> Date: Sat, 11 Feb 2017 01:24:11 -0500 Subject: [PATCH] remove LGCIU for now... needs to be redone in a simpler, faster, less intensive way. --- A319-100-IAE-set.xml | 1 - A320-200-IAE-set.xml | 1 - A321-200-IAE-set.xml | 1 - ACJ-IAE-set.xml | 1 - Models/Instruments/ECAM/page-wheel.xml | 699 +------------------------ Nasal/LGCIU.nas | 308 ----------- 6 files changed, 1 insertion(+), 1010 deletions(-) delete mode 100644 Nasal/LGCIU.nas diff --git a/A319-100-IAE-set.xml b/A319-100-IAE-set.xml index 3e3448eb..3799761a 100644 --- a/A319-100-IAE-set.xml +++ b/A319-100-IAE-set.xml @@ -84,7 +84,6 @@ <file>Aircraft/A320Family/Nasal/efis.nas</file> <file>Aircraft/A320Family/Nasal/PFD_FMA.nas</file> <file>Aircraft/A320Family/Nasal/fctl.nas</file> - <file>Aircraft/A320Family/Nasal/LGCIU.nas</file> </A320> <itaf> <file>Aircraft/A320Family/Nasal/it-autoflight.nas</file> diff --git a/A320-200-IAE-set.xml b/A320-200-IAE-set.xml index 86aec940..e44da8d8 100644 --- a/A320-200-IAE-set.xml +++ b/A320-200-IAE-set.xml @@ -77,7 +77,6 @@ <file>Aircraft/A320Family/Nasal/efis.nas</file> <file>Aircraft/A320Family/Nasal/PFD_FMA.nas</file> <file>Aircraft/A320Family/Nasal/fctl.nas</file> - <file>Aircraft/A320Family/Nasal/LGCIU.nas</file> </A320> <itaf> <file>Aircraft/A320Family/Nasal/it-autoflight.nas</file> diff --git a/A321-200-IAE-set.xml b/A321-200-IAE-set.xml index d1c00839..80233cd3 100644 --- a/A321-200-IAE-set.xml +++ b/A321-200-IAE-set.xml @@ -77,7 +77,6 @@ <file>Aircraft/A320Family/Nasal/efis.nas</file> <file>Aircraft/A320Family/Nasal/PFD_FMA.nas</file> <file>Aircraft/A320Family/Nasal/fctl.nas</file> - <file>Aircraft/A320Family/Nasal/LGCIU.nas</file> </A320> <itaf> <file>Aircraft/A320Family/Nasal/it-autoflight.nas</file> diff --git a/ACJ-IAE-set.xml b/ACJ-IAE-set.xml index 01aaaed4..55e692b6 100644 --- a/ACJ-IAE-set.xml +++ b/ACJ-IAE-set.xml @@ -79,7 +79,6 @@ <file>Aircraft/A320Family/Nasal/efis.nas</file> <file>Aircraft/A320Family/Nasal/PFD_FMA.nas</file> <file>Aircraft/A320Family/Nasal/fctl.nas</file> - <file>Aircraft/A320Family/Nasal/LGCIU.nas</file> </A320> <itaf> <file>Aircraft/A320Family/Nasal/it-autoflight.nas</file> diff --git a/Models/Instruments/ECAM/page-wheel.xml b/Models/Instruments/ECAM/page-wheel.xml index 0291ddb2..7358510c 100644 --- a/Models/Instruments/ECAM/page-wheel.xml +++ b/Models/Instruments/ECAM/page-wheel.xml @@ -23,703 +23,6 @@ <emissive>true</emissive> </layer> - <layer> - <name>greentriangle1</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-green-triangle.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>80</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>0</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[1]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/nlg/isdownlock</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle1</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-red-triangle.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>80</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>0</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/nlgpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/nlgpos</property> - <value>0.01</value> - </greater-than> - </and> - </condition> - </layer> - - <layer> - <name>greentriangle2</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-green-triangle.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>-80</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[0]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/mlgleft/isdownlock</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle2</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-red-triangle.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>-80</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/mlgleftpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/mlgleftpos</property> - <value>0.01</value> - </greater-than> - </and> - </condition> - </layer> - - <layer> - <name>greentriangle3</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-green-triangle.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>80</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[3]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/mlgright/isdownlock</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle3</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-red-triangle.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>80</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/mlgrightpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/mlgrightpos</property> - <value>0.01</value> - </greater-than> - </and> - </condition> - </layer> - -<!-- ################################## Failed LGCIU #################################--> - <layer> - <name>greentriangle1fail</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-one-gr.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>80</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>0</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[1]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/nlg/isdownlock</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[0]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>greentriangle2fail</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-two-gr.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>80</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>0</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[1]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/nlg/isdownlock</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle1fail</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-one-rd.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>80</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>0</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/nlgpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/nlgpos</property> - <value>0.01</value> - </greater-than> - <equals> - <property>controls/lgciu[0]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle2fail</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-two-rd.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>80</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>0</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/nlgpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/nlgpos</property> - <value>0.01</value> - </greater-than> - <equals> - <property>controls/lgciu[1]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>greentriangle2onefailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-one-gr.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>-80</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[0]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/mlgright/isdownlock</property> - <value>1</value> - </equals> - <equals> - <property>/controls/lgciu[0]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>greentriangle2twofailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-two-gr.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>-80</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[0]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/mlgright/isdownlock</property> - <value>1</value> - </equals> - <equals> - <property>/controls/lgciu[1]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle2onefailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-one-rd.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>-80</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/mlgleftpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/mlgleftpos</property> - <value>0.01</value> - </greater-than> - <equals> - <property>/controls/lgciu[0]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle2twofailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-two-rd.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>-80</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/mlgleftpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/mlgleftpos</property> - <value>0.01</value> - </greater-than> - <equals> - <property>/controls/lgciu[1]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>greentriangle3onefailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-one-gr.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>80</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[3]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/mlgright/isdownlock</property> - <value>1</value> - </equals> - <equals> - <property>/controls/lgciu[0]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>greentriangle3twofailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-two-gr.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>80</offset> - </transformation> - </transformations> - <condition> - <and> - <equals> - <property>gear/gear[3]/position-norm</property> - <value>1</value> - </equals> - <equals> - <property>controls/lgciu[1]/mlgright/isdownlock</property> - <value>1</value> - </equals> - <equals> - <property>/controls/lgciu[1]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle3onefailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-one-rd.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>80</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/mlgrightpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/mlgrightpos</property> - <value>0.01</value> - </greater-than> - <equals> - <property>/controls/lgciu[0]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - - <layer> - <name>redtriangle3twofailed</name> - <w>50</w> - <h>25</h> - <texture> - <path>Aircraft/A320Family/Models/Instruments/ECAM/res/wheel-amber-two-rd.png</path> - <x1>0.0</x1> - <y1>0.0</y1> - <x2>1</x2> - <y2>1</y2> - </texture> - <emissive>true</emissive> - <transformations> - <transformation> - <type>y-shift</type> - <offset>45</offset> - </transformation> - <transformation> - <type>x-shift</type> - <offset>80</offset> - </transformation> - </transformations> - <condition> - <and> - <less-than> - <property>/controls/lgciu[0]/mlgrightpos</property> - <value>0.99</value> - </less-than> - <greater-than> - <property>/controls/lgciu[0]/mlgrightpos</property> - <value>0.01</value> - </greater-than> - <equals> - <property>/controls/lgciu[1]/fail</property> - <value>1</value> - </equals> - </and> - </condition> - </layer> - <!-- ################################## Bottom #################################--> <layer> @@ -867,4 +170,4 @@ </layers> -</PropertyList> +</PropertyList> \ No newline at end of file diff --git a/Nasal/LGCIU.nas b/Nasal/LGCIU.nas deleted file mode 100644 index 748f92a8..00000000 --- a/Nasal/LGCIU.nas +++ /dev/null @@ -1,308 +0,0 @@ -#### A320 Landing Gear System #### -#### Jonathan Redpath #### -#### v.0.4 #### - - -var lgciu_one_init = func { - setprop("controls/lgciu[0]/mlgleftpos",1); #0 = retracted, 1 = extended - setprop("controls/lgciu[0]/mlgrightpos",1); #0 = retracted, 1 = extended - setprop("controls/lgciu[0]/nlgpos",1); #0 = retracted, 1 = extended - setprop("/controls/lgciu[0]/doors/mlgleft",0); #0 = closed, 1 = open - setprop("controls/lgciu[0]/doors/mlgright",0); #0 = closed, 1 = open - setprop("controls/lgciu[0]/doors/nlg",0); #0 = closed, 1 = open - setprop("/controls/lgciu[0]/gearlever",1); #0 = retracted, 1 = extended - setprop("/controls/lgciu[0]/mlgleft/isdownlock",1); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/mlgright/isdownlock",1); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/nlg/isdownlock",1); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/mlgleft/isuplock",0); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/mlgright/isuplock",0); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/nlg/isuplock",0); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/hyd/greensupply",0); #0 = no, 1 = yes presently no supply as green pump is off - setprop("/controls/lgciu[0]/wow/isongroundl",1); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/wow/isongroundn",1); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/wow/isongroundr",1); #0 = no, 1 = yes - setprop("/controls/lgciu[0]/nws/nwsenabled",0); #0 = disabled 1 = enabled, must be disabled for push - setprop("/controls/lgciu[0]/inuse",1); #the LGCIUs switch between eachother on each gear cycle. eg if one LGCIU fails put the gear down and bring them up again to reset - setprop("/controls/lgciu[0]/hasbeenret",0); #has the gear been retracted with LGCIU1? - setprop("/controls/lgciu[0]/fail",0); #0 = no 1 = - setprop("/controls/lgciu[0]/emermanext",0); #0 = no 1 = begin - setprop("/controls/lgciu[0]/emermanextpos","0"); #0 = no 3 = extended can only be retracted if green hyd is available. crank must be turned 3 times clockwise so this has quotes - setprop("/controls/lgciu[0]/cargo/fwd/lock",1); - setprop("/controls/lgciu[0]/cargo/aft/lock",1); - setprop("/controls/lgciu[0]/cargo/bulk/lock",1); - setprop("/controls/lgciu[0]/cargo/fwd/open",0); - setprop("/controls/lgciu[0]/cargo/aft/open",0); - setprop("/controls/lgciu[0]/cargo/bulk/open",0); -} - -var lgciu_two_init = func { - setprop("controls/lgciu[1]/mlgleftpos",1); #0 = retracted, 1 = extended - setprop("controls/lgciu[1]/mlgrightpos",1); #0 = retracted, 1 = extended - setprop("controls/lgciu[1]/nlgpos",1); #0 = retracted, 1 = extended - setprop("/controls/lgciu[1]/doors/mlgleft",0); #0 = closed, 1 = open - setprop("controls/lgciu[1]/doors/mlgright",0); #0 = closed, 1 = open - setprop("controls/lgciu[1]/doors/nlg",0); #0 = closed, 1 = open - setprop("/controls/lgciu[1]/gearlever",1); #0 = retracted, 1 = extended - setprop("/controls/lgciu[1]/mlgleft/isdownlock",1); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/mlgright/isdownlock",1); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/nlg/isdownlock",1); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/mlgleft/isuplock",0); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/mlgright/isuplock",0); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/nlg/isuplock",0); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/hyd/greensupply",0); #0 = no, 1 = yes presently no supply as green pump is off - setprop("/controls/lgciu[1]/wow/isongroundl",1); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/wow/isongroundn",1); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/wow/isongroundr",1); #0 = no, 1 = yes - setprop("/controls/lgciu[1]/nws/nwsenabled",0); #0 = disabled 1 = enabled, must be disabled for push - setprop("/controls/lgciu[1]/inuse",0); #the LGCIUs switch between eachother on each gear cycle. eg if one LGCIU fails put the gear down and bring them up again to reset - setprop("/controls/lgciu[1]/hasbeenret",0); #has the gear been retracted with LGCIU2? - setprop("/controls/lgciu[1]/fail",0); #0 = no 1 = yes - setprop("/controls/lgciu[1]/emermanext",0); #0 = no 1 = begin - setprop("/controls/lgciu[1]/emermanextpos","0"); #0 = no 3 = extended can only be retracted if green hyd is available. crank must be turned 3 times clockwise so this has quotes - setprop("/controls/lgciu[1]/cargo/fwd/lock",1); - setprop("/controls/lgciu[1]/cargo/aft/lock",1); - setprop("/controls/lgciu[1]/cargo/bulk/lock",1); - setprop("/controls/lgciu[1]/cargo/fwd/open",0); - setprop("/controls/lgciu[1]/cargo/aft/open",0); - setprop("/controls/lgciu[1]/cargo/bulk/open",0); - setprop("/controls/lgciu[0]/init",1); #these two properties say that 'everything is ready now' - setprop("/controls/lgciu[1]/init",1); -} - -var BSCU_init = func { -setprop("/controls/BSCU/hyd/greensupply",0); -setprop("/controls/BSCU/nws/ruddlim","6"); -setprop("/controls/BSCU/nws/tilllim","70"); -setprop("/controls/BSCU/nws/enabled",0); -setprop("/controls/BSCU/nws/pedalsdisc",0); -setprop("/controls/BSCU/fail/nws",0); -setprop("/controls/BSCU/fail/askid",0); -setprop("/controls/BSCU/fail/BSCU",0); -setprop("/controls/BSCU/brakes/hydsupp","0"); #0 is off, 1 is grn, 2 is altn yellow accum -setprop("/controls/BSCU/brakes/mlgltemp","0"); #in celsius -setprop("/controls/BSCU/brakes/mlgrtemp","0"); #in celsius -setprop("/controls/BSCU/brakes/coolfans",0); #0 off 1 on -setprop("/controls/BSCU/brakes/loverheatplug",0); #0 off 1 on -setprop("/controls/BSCU/brakes/roverheatplug",0); #0 off 1 on -setprop("/controls/BSCU/brakes/mode","4"); #0 is norm, 1 is altn, 3 is altn no askid 4 is parkbrake -} - -# for now like this. later try to do a jsbsim table -var BSCU_timer = maketimer(0.1, func(){ -var ias = getprop("/velocities/airspeed-kt"); -if (ias > 130) { -setprop("/controls/BSCU/nws/ruddlim","0"); -} else if (ias > 70) { -setprop("/controls/BSCU/nws/tilllim","0"); -} else if (ias > 57.9 and ias < 61.99 ) { -setprop("/controls/BSCU/nws/ruddlim","3.5"); -} -}); -# BSCU logic is A/SKID and NWS sw on, one eng running, a/c on grnd, and towing ctrl lvr in norm pos - -# Initialize Landing Gear Control and Indication Unit -setlistener("/sim/signals/fdm-initialized", func { - lgciu_one_init(); - lgciu_two_init(); - BSCU_init(); - BSCU_timer.start(); - print("LGCIU System ... OK!"); - print("BSCU System ... OK!"); -}); - - - - -### Left MLG compressor sensor to check if we are on the ground ### -setlistener("/gear/gear[0]/wow", func { - var wowmlgl = getprop("/gear/gear[0]/wow"); - if (wowmlgl == 0) { - setprop("/controls/lgciu[0]/wow/isongroundl",0); - setprop("/controls/lgciu[1]/wow/isongroundl",0); - } else if (wowmlgl == 1) { - setprop("/controls/lgciu[0]/wow/isongroundl",1); - setprop("/controls/lgciu[1]/wow/isongroundl",1); -} -}); - -### Nose MLG compressor sensor to check if we are on the ground ### -setlistener("/gear/gear[1]/wow", func { - var wowmlgn = getprop("/gear/gear[1]/wow"); - if (wowmlgn == 0) { - setprop("/controls/lgciu[0]/wow/isongroundn",0); - setprop("/controls/lgciu[1]/wow/isongroundn",0); - } else if (wowmlgn == 1) { - setprop("/controls/lgciu[0]/wow/isongroundn",1); - setprop("/controls/lgciu[1]/wow/isongroundn",1); -} -}); - -### Right MLG compressor sensor to check if we are on the ground ### -setlistener("/gear/gear[2]/wow", func { - var wowmlgr = getprop("/gear/gear[2]/wow"); - if (wowmlgr == 0) { - setprop("/controls/lgciu[0]/wow/isongroundr",0); - setprop("/controls/lgciu[1]/wow/isongroundr",0); - } else if (wowmlgr == 1) { - setprop("/controls/lgciu[0]/wow/isongroundr",1); - setprop("/controls/lgciu[1]/wow/isongroundr",1); -} -}); - -### Interpolate MLG and NLG so that they take 10 seconds to move positions ### -setlistener("/controls/gear/gear-down", func { -var gr = getprop("/controls/gear/gear-down"); -var mlgl = getprop("/controls/lgciu[0]/mlgleftpos"); -var mlgr = getprop("/controls/lgciu[0]/mlgrightpos"); -var mlgl2 = getprop("/controls/lgciu[1]/mlgleftpos"); -var mlgr2 = getprop("/controls/lgciu[1]/mlgrightpos"); -var nlg = getprop("/controls/lgciu[0]/nlgpos"); -var nlg2 = getprop("/controls/lgciu[1]/nlgpos"); -var inuseno1 = getprop("/controls/lgciu[0]/inuse"); -var inuseno2 = getprop("/controls/lgciu[1]/inuse"); -if ((gr == 1) and (inuseno1 == 1)) { - interpolate("/controls/lgciu[0]/mlgleftpos", 1, 10); - interpolate("/controls/lgciu[0]/mlgrightpos", 1, 10); - interpolate("/controls/lgciu[0]/nlgpos", 1, 10); - interpolate("/controls/lgciu[1]/mlgleftpos", 1, 10); #we also interpolate the other LGCIU's properties just to keep the systems from clashing - interpolate("/controls/lgciu[1]/mlgrightpos", 1, 10); - interpolate("/controls/lgciu[1]/nlgpos", 1, 10); -} else if ((gr == 1) and (inuseno2 == 1)) { - interpolate("/controls/lgciu[1]/mlgleftpos", 1, 10); - interpolate("/controls/lgciu[1]/mlgrightpos", 1, 10); - interpolate("/controls/lgciu[1]/nlgpos", 1, 10); - interpolate("/controls/lgciu[0]/mlgleftpos", 1, 10); - interpolate("/controls/lgciu[0]/mlgrightpos", 1, 10); - interpolate("/controls/lgciu[0]/nlgpos", 1, 10); -} else if ((gr == 0) and (inuseno1 == 1)) { - interpolate("/controls/lgciu[0]/mlgleftpos", 0, 10); - interpolate("/controls/lgciu[0]/mlgrightpos", 0, 10); - interpolate("/controls/lgciu[0]/nlgpos", 0, 10); - interpolate("/controls/lgciu[1]/mlgleftpos", 0, 10); - interpolate("/controls/lgciu[1]/mlgrightpos", 0, 10); - interpolate("/controls/lgciu[1]/nlgpos", 0, 10); -} else if ((gr == 0) and (inuseno2 == 1)) { - interpolate("/controls/lgciu[1]/mlgleftpos", 0, 10); - interpolate("/controls/lgciu[1]/mlgrightpos", 0, 10); - interpolate("/controls/lgciu[1]/nlgpos", 0, 10); - interpolate("/controls/lgciu[0]/mlgleftpos", 0, 10); - interpolate("/controls/lgciu[0]/mlgrightpos", 0, 10); - interpolate("/controls/lgciu[0]/nlgpos", 0, 10); -} -}); - - - - - -### Checking the Hydraulics and Valves ### - -setlistener("/controls/gear/gear-down", func { -#var psigrn = getprop("/hydraulics/green/psi"); it0uchpods, please enable whenever hydraulic system is available -var spd = getprop("/velocities/airspeed-kt"); - #if ((psigrn < 2000) or (spd > 261)) { see above line where psigrn is defined - if (spd > 261) { - setprop("/controls/gear/gear-down",0); - screen.log.write("Hydraulic Safety Valve was disconnected at 260 kts; cannot move gear!", 1, 1, 1); -} -}); - -### Switching between LGCIUS ### - -# Putting the Gear Up -setlistener("/controls/gear/gear-down", func { -var inuse1 = getprop("/controls/lgciu[0]/inuse"); -var inuse2 = getprop("/controls/lgciu[1]/inuse"); -var isgearupordown = getprop("/controls/gear/gear-down"); -#var hydsupp = getprop("/controls/lgciu[0]/hyd/greensupply"); -#if ((inuse1 == 1) and (isgearupordown == 0) and (hydsupp == 1)) { -if ((inuse1 == 1) and (isgearupordown == 0)) { -setprop("/controls/lgciu[0]/hasbeenret",1); #we have put gear up on lgciu no 1 -setprop("/controls/lgciu[0]/inuse",1); #we want to keep active LGCIU on no 1 -setprop("/controls/lgciu[0]/gearlever",0); #0 = retracted, 1 = extended -setprop("/controls/lgciu[1]/gearlever",0); #0 = retracted, 1 = extended -} else { -#if ((inuse2 == 1) and (isgearupordown == 0) and (hydsupp == 1)) { -if ((inuse2 == 1) and (isgearupordown == 0)) { -setprop("/controls/lgciu[1]/hasbeenret",1); #we have put gear up on lgciu no 2 -setprop("/controls/lgciu[1]/inuse",1); #we want to keep active LGCIU on no 2 -setprop("/controls/lgciu[0]/gearlever",0); #0 = retracted, 1 = extended -setprop("/controls/lgciu[1]/gearlever",0); #0 = retracted, 1 = extended -} else { -} -} -}); - -# Putting the Gear Down Again -setlistener("/controls/gear/gear-down", func { -var inuse1 = getprop("/controls/lgciu[0]/inuse"); -var inuse2 = getprop("/controls/lgciu[1]/inuse"); -var hasbeen1 = getprop("/controls/lgciu[0]/hasbeenret"); -var hasbeen2 = getprop("/controls/lgciu[1]/hasbeenret"); -var isgearupordown = getprop("/controls/gear/gear-down"); -var hydsupp = getprop("/controls/lgciu[0]/hyd/greensupply"); -var no1fail = getprop("/controls/lgciu[0]/fail"); -var no2fail = getprop("/controls/lgciu[1]/fail"); -if ((inuse1 == 1) and (isgearupordown == 1) and (hasbeen1 == 1) and (hydsupp == 1)) { -setprop("/controls/lgciu[0]/hasbeenret",0); #reset retraction sensor -setprop("/controls/lgciu[0]/inuse",0); #we want to switch to no 2 after putting the gear down -setprop("/controls/lgciu[1]/inuse",1); -setprop("/controls/lgciu[0]/gearlever",1); #0 = retracted, 1 = extended -setprop("/controls/lgciu[1]/gearlever",1); #0 = retracted, 1 = extended -} else if ((inuse2 == 1) and (isgearupordown == 1) and (hasbeen2 == 1) and (hydsupp == 1)) { -setprop("/controls/lgciu[1]/hasbeenret",0); #reset retraction sensor -setprop("/controls/lgciu[0]/inuse",1); #we want to switch to no 1 after putting the gear down -setprop("/controls/lgciu[1]/inuse",0); -setprop("/controls/lgciu[0]/gearlever",1); #0 = retracted, 1 = extended -setprop("/controls/lgciu[1]/gearlever",1); #0 = retracted, 1 = extended -} else if ((inuse1 == 1) and (isgearupordown == 1) and (hasbeen1 == 1) and (hydsupp ==1) and (no2fail == 1)) { -setprop("/controls/lgciu[0]/hasbeenret",0); #reset retraction sensor -setprop("/controls/lgciu[0]/inuse",1); #we want to switch to no 2 after putting the gear down but we cant because it is failed -setprop("/controls/lgciu[1]/inuse",0); -setprop("/controls/lgciu[0]/gearlever",1); #0 = retracted, 1 = extended -setprop("/controls/lgciu[1]/gearlever",1); #0 = retracted, 1 = extended -} else if ((inuse1 == 2) and (isgearupordown == 1) and (hasbeen2 == 1) and (hydsupp ==1) and (no1fail == 1)) { -setprop("/controls/lgciu[0]/hasbeenret",0); #reset retraction sensor -setprop("/controls/lgciu[1]/inuse",1); #we want to switch to no 1 after putting the gear down but we cant because it is failed -setprop("/controls/lgciu[0]/inuse",0); -setprop("/controls/lgciu[0]/gearlever",1); #0 = retracted, 1 = extended -setprop("/controls/lgciu[1]/gearlever",1); #0 = retracted, 1 = extended -} -} -); - - -# No 1 failed -setlistener("/controls/lgciu[0]/fail", func { -var no1fail = getprop("/controls/lgciu[0]/fail"); -if (no1fail == 1) { -setprop("/controls/lgciu[0]/inuse",0); -setprop("/controls/lgciu[1]/inuse",1); -print("LGCIU No 1... Failed!"); -} else { -print("LGCIU No 1... Serviceable!"); -} -}); - -# No 2 failed -setlistener("/controls/lgciu[1]/fail", func { -var no2fail = getprop("/controls/lgciu[1]/fail"); -if (no2fail == 1) { -setprop("/controls/lgciu[1]/inuse",0); -setprop("/controls/lgciu[0]/inuse",1); -print("LGCIU No 2... Failed!"); -} else { -print("LGCIU No 2... Serviceable!"); -} -}); - -# BSCU failed -setlistener("/controls/BSCU/fail/BSCU", func { -var bscufail = getprop("/controls/BSCU/fail/BSCU"); -if (bscufail == 1) { -print("BSCU... Failed!"); -} else { -print("BSCU... Serviceable!"); -} -}); -