From 68fc719ba9b9ca19e363d6960b5456d70de87e26 Mon Sep 17 00:00:00 2001 From: Thomas Gubler Date: Sun, 29 Dec 2013 22:49:59 +0100 Subject: [PATCH] flightgear HIL add catapult to Malolo1 --- .../Aircraft/Malolo1/Malolo1-set.xml | 26 ++++++++++++ files/flightgear/Aircraft/Malolo1/Malolo1.xml | 15 +++++++ .../Aircraft/Malolo1/Nasal/catapult.nas | 42 +++++++++++++++++++ .../Malolo1/readme_qgroundcontrol.txt | 3 ++ 4 files changed, 86 insertions(+) create mode 100644 files/flightgear/Aircraft/Malolo1/Nasal/catapult.nas create mode 100644 files/flightgear/Aircraft/Malolo1/readme_qgroundcontrol.txt diff --git a/files/flightgear/Aircraft/Malolo1/Malolo1-set.xml b/files/flightgear/Aircraft/Malolo1/Malolo1-set.xml index c85509bb8..67eda11d3 100644 --- a/files/flightgear/Aircraft/Malolo1/Malolo1-set.xml +++ b/files/flightgear/Aircraft/Malolo1/Malolo1-set.xml @@ -63,9 +63,33 @@ dynamics model, and external 3D model. Approach speed: 15-25 mph Stall speed (Vs): 10 mph + + + + + true + + + + nasal + + + + + + + + + + Aircraft/Malolo1/Nasal/catapult.nas + + + -0.01 @@ -100,4 +124,6 @@ dynamics model, and external 3D model. + + diff --git a/files/flightgear/Aircraft/Malolo1/Malolo1.xml b/files/flightgear/Aircraft/Malolo1/Malolo1.xml index c12a9ae9c..a38ff1f19 100644 --- a/files/flightgear/Aircraft/Malolo1/Malolo1.xml +++ b/files/flightgear/Aircraft/Malolo1/Malolo1.xml @@ -543,4 +543,19 @@ + + + + + 0 + 0 + 0 + + + 1 + 0 + 0 + + + diff --git a/files/flightgear/Aircraft/Malolo1/Nasal/catapult.nas b/files/flightgear/Aircraft/Malolo1/Nasal/catapult.nas new file mode 100644 index 000000000..e576822d4 --- /dev/null +++ b/files/flightgear/Aircraft/Malolo1/Nasal/catapult.nas @@ -0,0 +1,42 @@ +var launchCatapult = func { + # time on catapult = 1/10 sec + # speed when leaving catapult = 50 km/h ? + var countdownRunning = 1; + var count = 5; + var countdown = func { + if (countdownRunning) { + if (count != 0) { + setprop("/sim/screen/white",count); + count = count - 1; + settimer(countdown, 1); + } + else { + countdownRunning = 0; + setprop("/sim/screen/yellow","Go!"); + launch(); + var launchPad = aircraft.door.new("/sim/model/X100/launch-pad", 0.2); + launchPad.toggle(); + } + } + } + countdown(); + + var launchRunning = 1; + var magnitude = 230; # lbs, unrealisticly high, because the FDM is wrong + var launch = func { + if (launchRunning) { + if (magnitude == 0){ + launchRunning = 0; + + # remove launcher contact points + setprop("/fdm/jsbsim/contact/unit[6]/pos-norm",0); + setprop("/fdm/jsbsim/contact/unit[7]/pos-norm",0); + setprop("/fdm/jsbsim/contact/unit[8]/pos-norm",0); + } + setprop("/fdm/jsbsim/external_reactions/catapult/magnitude",magnitude); + print (magnitude); + magnitude = 0; + settimer(launch, 0.1); + } + } +} diff --git a/files/flightgear/Aircraft/Malolo1/readme_qgroundcontrol.txt b/files/flightgear/Aircraft/Malolo1/readme_qgroundcontrol.txt new file mode 100644 index 000000000..a1eb2c4ff --- /dev/null +++ b/files/flightgear/Aircraft/Malolo1/readme_qgroundcontrol.txt @@ -0,0 +1,3 @@ +This is the original Malolo1 model with added catapult functionality. The catapult is from https://gitorious.org/mavlab/x100/ + +-Thomas Gubler -- 2.22.0