From 392fc5ee8ecd197310943e504202abdb3799d2f8 Mon Sep 17 00:00:00 2001 From: Mauco03 <marco.gaibotti@skywarder.eu> Date: Tue, 22 Oct 2024 19:11:41 +0200 Subject: [PATCH] [design-updates] Renamed Payload to Parafoil --- classes/Bay.m | 2 +- classes/Rocket.m | 32 +++++++++---------- classes/bays/{Payload.m => Parafoil.m} | 12 +++---- classes/components/Para.m | 4 +-- classes/components/{Parafoil.m => Wing.m} | 12 +++---- functions/miscellaneous/createDissileInput.m | 12 +++---- functions/simulations/stdDescent.m | 2 +- .../config/rocketConfig.m | 22 ++++++------- .../config/rocketConfig.m | 22 ++++++------- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 22 ++++++------- .../old/simulationsData.m | 4 +-- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 22 ++++++------- .../old/simulationsData.m | 4 +-- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 22 ++++++------- .../old/simulationsData.m | 4 +-- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 22 ++++++------- .../old/simulationsData.m | 4 +-- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 26 +++++++-------- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 26 +++++++-------- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 26 +++++++-------- .../config/paraConfig.m | 10 +++--- .../config/rocketConfig.m | 26 +++++++-------- 29 files changed, 204 insertions(+), 204 deletions(-) rename classes/bays/{Payload.m => Parafoil.m} (86%) rename classes/components/{Parafoil.m => Wing.m} (87%) diff --git a/classes/Bay.m b/classes/Bay.m index b7e1775..beb567f 100644 --- a/classes/Bay.m +++ b/classes/Bay.m @@ -12,7 +12,7 @@ classdef Bay < Component & matlab.mixin.Heterogeneous methods (Static, Sealed, Access=protected) function default = getDefaultScalarElement - default = Payload; + default = Parafoil; end end end diff --git a/classes/Rocket.m b/classes/Rocket.m index da1e33e..0088c2c 100644 --- a/classes/Rocket.m +++ b/classes/Rocket.m @@ -11,7 +11,7 @@ classdef Rocket < Component % file properties - payload Payload % [-] Payload bay + parafoil Parafoil % [-] Parafoil bay recovery Recovery % [-] Recovery bay electronics Electronics % [-] Electronics bay airbrakes Airbrakes % [-] Airbrakes bay @@ -76,21 +76,21 @@ classdef Rocket < Component absPositions = cumsum([-shift(1); shift(1:end-1)]); absPositions = absPositions + ... - (obj.payload.length - obj.payload.noseLength); + (obj.parafoil.length - obj.parafoil.noseLength); obj.absolutePositions = dictionary(keys(bDictionay), absPositions); end function updateGeometry(obj) if ~isempty(obj.lengthCenterNoMot) - obj.length = obj.lengthCenterNoMot + obj.motor.length + obj.payload.noseLength; + obj.length = obj.lengthCenterNoMot + obj.motor.length + obj.parafoil.noseLength; else - obj.length = (obj.absolutePositions("rear") + obj.bays("rear").length) + obj.bays("payload").noseLength; + obj.length = (obj.absolutePositions("rear") + obj.bays("rear").length) + obj.bays("parafoil").noseLength; obj.lengthCenterNoMot = obj.absolutePositions("motor"); end if isempty(obj.crossSection) obj.crossSection = 0.25*pi*obj.diameter^2; end - obj.lengthCenter = obj.length - obj.payload.noseLength - obj.rear.boatLength; + obj.lengthCenter = obj.length - obj.parafoil.noseLength - obj.rear.boatLength; end function updateMassNoMotor(obj) @@ -156,11 +156,11 @@ classdef Rocket < Component end function updateStagesMass(obj) - stage1 = obj.cutoffMass - (obj.parachutes(1,2).mass + obj.parachutes(2,2).mass + obj.payload.mass); - % Everything at cut off without payload, payload drogue and - % payload airfoil + stage1 = obj.cutoffMass - (obj.parachutes(1,2).mass + obj.parachutes(2,2).mass + obj.parafoil.mass); + % Everything at cut off without parafoil, parafoil drogue and + % parafoil airfoil stage2 = obj.cutoffMass - stage1; - % only payload: payload, payload drogue and payload airfoil + % only parafoil: parafoil, parafoil drogue and parafoil airfoil obj.stagesMass = [stage1 stage2]; end @@ -246,7 +246,7 @@ classdef Rocket < Component end vars = obj.getConfig(mission); % Load config once and apply to other bays - obj.payload = Payload(mission, vars); + obj.parafoil = Parafoil(mission, vars); obj.recovery = Recovery(mission, vars); obj.electronics = Electronics(mission, vars); obj.motor = Motor(mission, vars); @@ -366,10 +366,10 @@ classdef Rocket < Component obj.coefficients.geometry.xcg(end); ], 3); - if (obj.payload.noseCMod & obj.payload.nosePMod) == 0 % KARMAN ogive case, no modified p and c coefficients + if (obj.parafoil.noseCMod & obj.parafoil.nosePMod) == 0 % KARMAN ogive case, no modified p and c coefficients geometryRocket = round([ obj.diameter; - obj.payload.noseLength; + obj.parafoil.noseLength; obj.lengthCenter; obj.rear.finsRootChord; obj.rear.finsFreeChord; @@ -395,10 +395,10 @@ classdef Rocket < Component else % MHAAK ogive case, modified p and c coefficients geometryRocket = round([ obj.diameter; - obj.payload.noseLength; + obj.parafoil.noseLength; obj.lengthCenter; - obj.payload.noseCMod; - obj.payload.nosePMod; + obj.parafoil.noseCMod; + obj.parafoil.nosePMod; obj.rear.finsRootChord; obj.rear.finsFreeChord; obj.rear.finsHeight; @@ -426,7 +426,7 @@ classdef Rocket < Component checks = [ xCgRocket == xCgTest; - strcmp(obj.coefficients.geometry.ogType, obj.payload.noseType); + strcmp(obj.coefficients.geometry.ogType, obj.parafoil.noseType); geometryRocket == geometryTest; strcmp(obj.coefficients.geometry.boatType, obj.rear.boatType) ]; diff --git a/classes/bays/Payload.m b/classes/bays/Parafoil.m similarity index 86% rename from classes/bays/Payload.m rename to classes/bays/Parafoil.m index 0f9f7ed..378fb88 100644 --- a/classes/bays/Payload.m +++ b/classes/bays/Parafoil.m @@ -1,9 +1,9 @@ -classdef Payload < Bay - % Payload: Represents nose + payload configuration for a rocket. +classdef Parafoil < Bay + % Parafoil: Represents nose + parafoil configuration for a rocket. % % Constructor: - % - Payload: Creates an instance of the Payload class. - % Loaded config: rocketConfig.m > payload + % - Parafoil: Creates an instance of the Parafoil class. + % Loaded config: rocketConfig.m > parafoil % Loaded data: - % Arguments: % - mission: Mission, mission object @@ -33,12 +33,12 @@ classdef Payload < Bay properties(Access = protected) configName = 'rocketConfig.m' - variableName = 'payload' + variableName = 'parafoil' mission Mission = Mission() end methods - function obj = Payload(mission, varIn) + function obj = Parafoil(mission, varIn) arguments(Input) mission Mission = Mission() varIn = [] diff --git a/classes/components/Para.m b/classes/components/Para.m index ef74338..fb7388e 100644 --- a/classes/components/Para.m +++ b/classes/components/Para.m @@ -35,8 +35,8 @@ classdef Para < matlab.mixin.Heterogeneous & Component % In case of homogeneous type, forces conversion to % heterogeneous Para array case 'Parachute' - obj(1, 1, 2) = Parafoil(); - case 'Parafoil' + obj(1, 1, 2) = Wing(); + case 'Wing' obj(1, 1, 2) = Parachute(); otherwise end diff --git a/classes/components/Parafoil.m b/classes/components/Wing.m similarity index 87% rename from classes/components/Parafoil.m rename to classes/components/Wing.m index 6a60eb0..4e47f9e 100644 --- a/classes/components/Parafoil.m +++ b/classes/components/Wing.m @@ -1,4 +1,4 @@ -classdef Parafoil < Para +classdef Wing < Para % Parachute: Represents a parachute component. % % Constructor: @@ -15,13 +15,13 @@ classdef Parafoil < Para surface double % [m^2] Surface deltaSMax double % [-] Aerodynamic control coefficient - symmetric, max value - mass double % [kg] Parafoil Mass - openingTime double % [s] Parafoil opening time (delay + time to get fully open) + mass double % [kg] Wing Mass + openingTime double % [s] Wing opening time (delay + time to get fully open) inertia % [kg*m^2] 3x3 Inertia Matrix (the diagonal is made of the inertia vector values) finalAltitude double % [m] Final altitude of the parafoil - semiWingSpan double % [m] Parafoil semiwingspan - MAC double % [m] Parafoil mean aero chord + semiWingSpan double % [m] Wing semiwingspan + MAC double % [m] Wing mean aero chord cd0 double % [-] aerodynamic control coefficient - asymetric, CD0 cdAlpha double % [-] aerodynamic control coefficient - asymetric, CDAlpha @@ -50,7 +50,7 @@ classdef Parafoil < Para end methods - function obj = Parafoil(mission, varIn) + function obj = Wing(mission, varIn) arguments(Input) mission Mission = Mission() varIn = [] diff --git a/functions/miscellaneous/createDissileInput.m b/functions/miscellaneous/createDissileInput.m index cd655d6..f6c07fd 100644 --- a/functions/miscellaneous/createDissileInput.m +++ b/functions/miscellaneous/createDissileInput.m @@ -80,13 +80,13 @@ input.refq.LATREF = rocket.diameter; input.axibod.about = 'Axisymmetric body quantities'; %%% nose -input.axibod.TNOSE = find(strcmp(noses, rocket.payload.noseType))-1; % [0=CONICAL, 1=OGIVE, 2=POWER, 3=HAACK, 4=KARMAN, 5=MHAACK] ogive type -if strcmp(rocket.payload.noseType, 'MHAACK') - input.axibod.MHAACKCP = [rocket.payload.noseCMod rocket.payload.nosePMod]; % [-] CMOD PMOD mhaack parameters, set CMOD = 1/3 and PMOD = 1 to get a haack -elseif strcmp(rocket.payload.noseType, 'POWER') - input.axibod.POWER = rocket.payload.nosePower; % [-] Exponent of the power series, set a value between 0 and 1 +input.axibod.TNOSE = find(strcmp(noses, rocket.parafoil.noseType))-1; % [0=CONICAL, 1=OGIVE, 2=POWER, 3=HAACK, 4=KARMAN, 5=MHAACK] ogive type +if strcmp(rocket.parafoil.noseType, 'MHAACK') + input.axibod.MHAACKCP = [rocket.parafoil.noseCMod rocket.parafoil.nosePMod]; % [-] CMOD PMOD mhaack parameters, set CMOD = 1/3 and PMOD = 1 to get a haack +elseif strcmp(rocket.parafoil.noseType, 'POWER') + input.axibod.POWER = rocket.parafoil.nosePower; % [-] Exponent of the power series, set a value between 0 and 1 end -input.axibod.LNOSE = rocket.payload.noseLength; % [m] Nose length +input.axibod.LNOSE = rocket.parafoil.noseLength; % [m] Nose length input.axibod.DNOSE = rocket.diameter; % [m] Nose diameter at base input.axibod.TRUNC = false; diff --git a/functions/simulations/stdDescent.m b/functions/simulations/stdDescent.m index 5f8a2c8..10076a5 100644 --- a/functions/simulations/stdDescent.m +++ b/functions/simulations/stdDescent.m @@ -121,7 +121,7 @@ for i = 1:nParachutes solution = ode113(@descentParachute, [t0, tf], Y0, options, ... rocket, environment, wind, descentData, wrapper); - case 'Parafoil' + case 'Wing' if ~settings.simulator.parafoil, continue; end if i == 1 error("Cannot simulate parafoil as fist descent stage"); diff --git a/missions/2021_Lynx_Portugal_October/config/rocketConfig.m b/missions/2021_Lynx_Portugal_October/config/rocketConfig.m index 7f6e832..692225f 100644 --- a/missions/2021_Lynx_Portugal_October/config/rocketConfig.m +++ b/missions/2021_Lynx_Portugal_October/config/rocketConfig.m @@ -16,21 +16,21 @@ rocket.inertiaNoMotor = [0.0786; 12.972; 12.972]; % [kg*m^2] OVERRIDE iner rocket.xCgNoMotor = 1.6025; % [m] OVERRIDE xCg without motor rocket.lengthCenterNoMot = 1.7640; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); % !!!!! -payload.length = 0.31; % [m] Total bay length -payload.mass = 0; % [kg] Total bay mass -payload.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 0; % [m] Cg relative to bay upper side +parafoil.length = 0.31; % [m] Total bay length +parafoil.mass = 0; % [kg] Total bay mass +parafoil.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 0; % [m] Cg relative to bay upper side % !!!!! -payload.noseLength = 0.26; % [m] Nosecone length -payload.noseType = 'KARMAN'; % [-] Nosecone shape -payload.nosePower = 0; % [-] Nosecone power type parameter -payload.nosePMod = 0; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 0; % [-] C coefficient for modified nosecone shapes +parafoil.noseLength = 0.26; % [m] Nosecone length +parafoil.noseType = 'KARMAN'; % [-] Nosecone shape +parafoil.nosePower = 0; % [-] Nosecone power type parameter +parafoil.nosePMod = 0; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 0; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2021_Lynx_Roccaraso_September/config/rocketConfig.m b/missions/2021_Lynx_Roccaraso_September/config/rocketConfig.m index 7b4fd77..fa07215 100644 --- a/missions/2021_Lynx_Roccaraso_September/config/rocketConfig.m +++ b/missions/2021_Lynx_Roccaraso_September/config/rocketConfig.m @@ -16,21 +16,21 @@ rocket.inertiaNoMotor = [0.06; 7.511; 7.512]; % [kg*m^2] OVERRIDE inertia rocket.xCgNoMotor = 1.1986; % [m] OVERRIDE xCg without motor rocket.lengthCenterNoMot = 1.7840; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); % !!!!! -payload.length = 0.31; % [m] Total bay length -payload.mass = 0; % [kg] Total bay mass -payload.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 0; % [m] Cg relative to bay upper side +parafoil.length = 0.31; % [m] Total bay length +parafoil.mass = 0; % [kg] Total bay mass +parafoil.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 0; % [m] Cg relative to bay upper side % !!!!! -payload.noseLength = 0.26; % [m] Nosecone length -payload.noseType = 'KARMAN'; % [-] Nosecone shape -payload.nosePower = 0; % [-] Nosecone power type parameter -payload.nosePMod = 0; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 0; % [-] C coefficient for modified nosecone shapes +parafoil.noseLength = 0.26; % [m] Nosecone length +parafoil.noseType = 'KARMAN'; % [-] Nosecone shape +parafoil.nosePower = 0; % [-] Nosecone power type parameter +parafoil.nosePMod = 0; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 0; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2022_Pyxis_Portugal_October/config/paraConfig.m b/missions/2022_Pyxis_Portugal_October/config/paraConfig.m index fbd7712..a1e6cf6 100644 --- a/missions/2022_Pyxis_Portugal_October/config/paraConfig.m +++ b/missions/2022_Pyxis_Portugal_October/config/paraConfig.m @@ -41,7 +41,7 @@ para(2, 1).forceCoefficient = []; % [-] Empirical coefficient to obtain c % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.05; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -58,11 +58,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = []; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 0.45; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 0.45; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2022_Pyxis_Portugal_October/config/rocketConfig.m b/missions/2022_Pyxis_Portugal_October/config/rocketConfig.m index ca08ee5..285238c 100644 --- a/missions/2022_Pyxis_Portugal_October/config/rocketConfig.m +++ b/missions/2022_Pyxis_Portugal_October/config/rocketConfig.m @@ -16,21 +16,21 @@ rocket.inertiaNoMotor = [0.06303; 9.62497; 9.62524]; % [kg*m^2] OVERRIDE i rocket.xCgNoMotor = 1.2239; % [m] OVERRIDE xCg without motor rocket.lengthCenterNoMot = 1.4470; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); % !!!!! -payload.length = 0.31; % [m] Total bay length -payload.mass = 0; % [kg] Total bay mass -payload.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 0; % [m] Cg relative to bay upper side +parafoil.length = 0.31; % [m] Total bay length +parafoil.mass = 0; % [kg] Total bay mass +parafoil.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 0; % [m] Cg relative to bay upper side % !!!!! -payload.noseLength = 0.31; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 0; % [-] Nosecone power type parameter -payload.nosePMod = 1.293318e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.864832e-01; % [-] C coefficient for modified nosecone shapes +parafoil.noseLength = 0.31; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 0; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.293318e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.864832e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2022_Pyxis_Portugal_October/old/simulationsData.m b/missions/2022_Pyxis_Portugal_October/old/simulationsData.m index 75e03f8..029a27b 100644 --- a/missions/2022_Pyxis_Portugal_October/old/simulationsData.m +++ b/missions/2022_Pyxis_Portugal_October/old/simulationsData.m @@ -201,7 +201,7 @@ settings.para(2, 1).nf = 8.7; % [/] Adimensional Opening Time %%% PAYLOAD CHUTES % parachute 1 -settings.para(1, 2).name = "Payload DROGUE"; +settings.para(1, 2).name = "Parafoil DROGUE"; settings.para(1, 2).S = 0.11; % [m^2] Surface settings.para(1, 2).mass = 0.05; % [kg] Parachute Mass settings.para(1, 2).CD = 1.2; % [/] Parachute Drag Coefficient @@ -217,7 +217,7 @@ settings.para(1, 2).nf = 12; % [/] Adimensional Opening Time settings.para(1, 2).Vexit = 10; % [m/s] Expulsion Speed % parachute 2 -settings.para(2, 2).name = "Payload AIRFOIL"; +settings.para(2, 2).name = "Parafoil AIRFOIL"; settings.para(2, 2).mass = 0.45; % [kg] Parachute Mass settings.para(2, 2).z_cut = 0; % [m] Final altitude of the parachute diff --git a/missions/2022_Pyxis_Roccaraso_September/config/paraConfig.m b/missions/2022_Pyxis_Roccaraso_September/config/paraConfig.m index 4da985a..4f9430b 100644 --- a/missions/2022_Pyxis_Roccaraso_September/config/paraConfig.m +++ b/missions/2022_Pyxis_Roccaraso_September/config/paraConfig.m @@ -41,7 +41,7 @@ para(2, 1).forceCoefficient = []; % [-] Empirical coefficient to obtain c % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.05; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -58,11 +58,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = []; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 0.45; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 0.45; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2022_Pyxis_Roccaraso_September/config/rocketConfig.m b/missions/2022_Pyxis_Roccaraso_September/config/rocketConfig.m index 55ca1f2..ed371b1 100644 --- a/missions/2022_Pyxis_Roccaraso_September/config/rocketConfig.m +++ b/missions/2022_Pyxis_Roccaraso_September/config/rocketConfig.m @@ -18,21 +18,21 @@ rocket.xCgNoMotor = 1.2957; % [m] % settings.Lcenter - motors(iMotor).L/1000 rocket.lengthCenterNoMot = 1.61; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); % !!!!! -payload.length = 0.31; % [m] Total bay length -payload.mass = 0; % [kg] Total bay mass -payload.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 0; % [m] Cg relative to bay upper side +parafoil.length = 0.31; % [m] Total bay length +parafoil.mass = 0; % [kg] Total bay mass +parafoil.inertia = zeros(3,1); % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 0; % [m] Cg relative to bay upper side % !!!!! -payload.noseLength = 0.31; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 0; % [-] Nosecone power type parameter -payload.nosePMod = 1.293318e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.864832e-01; % [-] C coefficient for modified nosecone shapes +parafoil.noseLength = 0.31; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 0; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.293318e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.864832e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2022_Pyxis_Roccaraso_September/old/simulationsData.m b/missions/2022_Pyxis_Roccaraso_September/old/simulationsData.m index 8c241bb..11aa4bf 100644 --- a/missions/2022_Pyxis_Roccaraso_September/old/simulationsData.m +++ b/missions/2022_Pyxis_Roccaraso_September/old/simulationsData.m @@ -197,7 +197,7 @@ settings.para(2, 1).nf = 8.7; % [/] Adimensional Opening Time %%% PAYLOAD CHUTES % parachute 1 -settings.para(1, 2).name = "Payload DROGUE"; +settings.para(1, 2).name = "Parafoil DROGUE"; settings.para(1, 2).S = 0.11; % [m^2] Surface settings.para(1, 2).mass = 0.05; % [kg] Parachute Mass settings.para(1, 2).CD = 1.2; % [/] Parachute Drag Coefficient @@ -213,7 +213,7 @@ settings.para(1, 2).nf = 12; % [/] Adimensional Opening Time settings.para(1, 2).Vexit = 10; % [m/s] Expulsion Speed % parachute 2 -settings.para(2, 2).name = "Payload AIRFOIL"; +settings.para(2, 2).name = "Parafoil AIRFOIL"; settings.para(2, 2).mass = 0.45; % [kg] Parachute Mass settings.para(2, 2).z_cut = 0; % [m] Final altitude of the parachute diff --git a/missions/2023_Gemini_Portugal_October/config/paraConfig.m b/missions/2023_Gemini_Portugal_October/config/paraConfig.m index 3ce7ff1..2785d5a 100644 --- a/missions/2023_Gemini_Portugal_October/config/paraConfig.m +++ b/missions/2023_Gemini_Portugal_October/config/paraConfig.m @@ -41,7 +41,7 @@ para(2, 1).forceCoefficient = []; % [-] Empirical coefficient to obtain % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.15; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -58,11 +58,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = []; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 4.20; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 4.20; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2023_Gemini_Portugal_October/config/rocketConfig.m b/missions/2023_Gemini_Portugal_October/config/rocketConfig.m index 2af8168..24d971d 100644 --- a/missions/2023_Gemini_Portugal_October/config/rocketConfig.m +++ b/missions/2023_Gemini_Portugal_October/config/rocketConfig.m @@ -15,21 +15,21 @@ rocket.inertiaNoMotor = [0.06535397; 17.21019828; 17.21056483]; % [kg*m^2] rocket.xCgNoMotor = 1.254; % [m] OVERRIDE xCg without motor rocket.lengthCenterNoMot = 1.517; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); % !!!!! -payload.length = 638.89 * 1e-3; % [m] Total bay length -payload.mass = 4.441; % [kg] Total bay mass -payload.inertia = 1e-9*[12431765; 106903809; 106823939]; % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 479.24 * 1e-3; % [m] Cg relative to bay upper side +parafoil.length = 638.89 * 1e-3; % [m] Total bay length +parafoil.mass = 4.441; % [kg] Total bay mass +parafoil.inertia = 1e-9*[12431765; 106903809; 106823939]; % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 479.24 * 1e-3; % [m] Cg relative to bay upper side % !!!!! -payload.noseLength = 0.32; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 3/4; % [-] Nosecone power type parameter -payload.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes +parafoil.noseLength = 0.32; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 3/4; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2023_Gemini_Portugal_October/old/simulationsData.m b/missions/2023_Gemini_Portugal_October/old/simulationsData.m index 5f62802..1fd821d 100644 --- a/missions/2023_Gemini_Portugal_October/old/simulationsData.m +++ b/missions/2023_Gemini_Portugal_October/old/simulationsData.m @@ -271,7 +271,7 @@ settings.para(2, 1).nf = 8.7; % [/] Adimensional Opening Time %%% PAYLOAD CHUTES % parachute 1 -settings.para(1, 2).name = "Payload DROGUE"; +settings.para(1, 2).name = "Parafoil DROGUE"; settings.para(1, 2).S = 0.11; % [m^2] Surface settings.para(1, 2).mass = 0.15; % [kg] Parachute Mass settings.para(1, 2).CD = 1.2; % [/] Parachute Drag Coefficient @@ -287,7 +287,7 @@ settings.para(1, 2).nf = 12; % [/] Adimensional Opening Time settings.para(1, 2).Vexit = 10; % [m/s] Expulsion Speed % parachute 2 -settings.para(2, 2).name = "Payload AIRFOIL"; +settings.para(2, 2).name = "Parafoil AIRFOIL"; settings.para(2, 2).mass = 0.50; % [kg] Parachute Mass settings.para(2, 2).z_cut = 0; % [m] Final altitude of the parachute diff --git a/missions/2023_Gemini_Roccaraso_September/config/paraConfig.m b/missions/2023_Gemini_Roccaraso_September/config/paraConfig.m index 3d3ae9c..c7cf8e7 100644 --- a/missions/2023_Gemini_Roccaraso_September/config/paraConfig.m +++ b/missions/2023_Gemini_Roccaraso_September/config/paraConfig.m @@ -41,7 +41,7 @@ para(2, 1).forceCoefficient = []; % [-] Empirical coefficient to obtain c % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.15; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -58,11 +58,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = []; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 4.20; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 4.20; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2023_Gemini_Roccaraso_September/config/rocketConfig.m b/missions/2023_Gemini_Roccaraso_September/config/rocketConfig.m index 142705c..c15b52c 100644 --- a/missions/2023_Gemini_Roccaraso_September/config/rocketConfig.m +++ b/missions/2023_Gemini_Roccaraso_September/config/rocketConfig.m @@ -15,21 +15,21 @@ rocket.inertiaNoMotor = [0.06535397; 12.07664659; 12.07701314]; % [kg*m^2] rocket.xCgNoMotor = 1.149; % [m] OVERRIDE xCg without motor rocket.lengthCenterNoMot = 1.517; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); % !!!!! -payload.length = 638.89 * 1e-3; % [m] Total bay length -payload.mass = 4.441; % [kg] Total bay mass -payload.inertia = 1e-9*[12431765; 106903809; 106823939]; % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 479.24 * 1e-3; % [m] Cg relative to bay upper side +parafoil.length = 638.89 * 1e-3; % [m] Total bay length +parafoil.mass = 4.441; % [kg] Total bay mass +parafoil.inertia = 1e-9*[12431765; 106903809; 106823939]; % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 479.24 * 1e-3; % [m] Cg relative to bay upper side % !!!!! -payload.noseLength = 0.32; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 3/4; % [-] Nosecone power type parameter -payload.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes +parafoil.noseLength = 0.32; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 3/4; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2023_Gemini_Roccaraso_September/old/simulationsData.m b/missions/2023_Gemini_Roccaraso_September/old/simulationsData.m index 9ad1252..457db24 100644 --- a/missions/2023_Gemini_Roccaraso_September/old/simulationsData.m +++ b/missions/2023_Gemini_Roccaraso_September/old/simulationsData.m @@ -269,7 +269,7 @@ settings.para(2, 1).nf = 8.7; % [/] Adimensional Opening Time %%% PAYLOAD CHUTES % parachute 1 -settings.para(1, 2).name = "Payload DROGUE"; +settings.para(1, 2).name = "Parafoil DROGUE"; settings.para(1, 2).S = 0.11; % [m^2] Surface settings.para(1, 2).mass = 0.15; % [kg] Parachute Mass settings.para(1, 2).CD = 1.2; % [/] Parachute Drag Coefficient @@ -285,7 +285,7 @@ settings.para(1, 2).nf = 12; % [/] Adimensional Opening Time settings.para(1, 2).Vexit = 10; % [m/s] Expulsion Speed % parachute 2 -settings.para(2, 2).name = "Payload AIRFOIL"; +settings.para(2, 2).name = "Parafoil AIRFOIL"; settings.para(2, 2).mass = 0.50; % [kg] Parachute Mass settings.para(2, 2).z_cut = 0; % [m] Final altitude of the parachute diff --git a/missions/2024_Lyra_Portugal_October/config/paraConfig.m b/missions/2024_Lyra_Portugal_October/config/paraConfig.m index aa0a50a..109d023 100644 --- a/missions/2024_Lyra_Portugal_October/config/paraConfig.m +++ b/missions/2024_Lyra_Portugal_October/config/paraConfig.m @@ -41,7 +41,7 @@ para(2, 1).forceCoefficient = 2.2; % [-] Empirical coefficient to obtain % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.1; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -58,11 +58,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = 0; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 0.40; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 0.40; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2024_Lyra_Portugal_October/config/rocketConfig.m b/missions/2024_Lyra_Portugal_October/config/rocketConfig.m index 6bc8bb2..be779ec 100644 --- a/missions/2024_Lyra_Portugal_October/config/rocketConfig.m +++ b/missions/2024_Lyra_Portugal_October/config/rocketConfig.m @@ -9,19 +9,19 @@ rocket.inertiaNoMotor = []; % [kg*m^ rocket.xCgNoMotor = []; % [m] OVERRIDE xCg without motor rocket.lengthCenterNoMot = []; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); - -payload.length = 647.25 * 1e-3; % [m] Total bay length -payload.mass = 4.401; % [kg] Total bay mass -payload.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side - -payload.noseLength = 0.32; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 3/4; % [-] Nosecone power type parameter -payload.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); + +parafoil.length = 647.25 * 1e-3; % [m] Total bay length +parafoil.mass = 4.401; % [kg] Total bay mass +parafoil.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side + +parafoil.noseLength = 0.32; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 3/4; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2024_Lyra_Roccaraso_September/config/paraConfig.m b/missions/2024_Lyra_Roccaraso_September/config/paraConfig.m index 80f10da..18e99a4 100644 --- a/missions/2024_Lyra_Roccaraso_September/config/paraConfig.m +++ b/missions/2024_Lyra_Roccaraso_September/config/paraConfig.m @@ -42,7 +42,7 @@ para(2, 1).forceCoefficient = 2.2; % [-] Empirical coefficient to obtain % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.1; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -59,11 +59,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = 0; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 0.40; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 0.40; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2024_Lyra_Roccaraso_September/config/rocketConfig.m b/missions/2024_Lyra_Roccaraso_September/config/rocketConfig.m index bcc3bb6..4f90b9b 100644 --- a/missions/2024_Lyra_Roccaraso_September/config/rocketConfig.m +++ b/missions/2024_Lyra_Roccaraso_September/config/rocketConfig.m @@ -15,19 +15,19 @@ rocket.lengthCenterNoMot = []; % [m] % rocket.xCgNoMotor = 1.28; % [m] OVERRIDE xCg without motor % rocket.lengthCenterNoMot = 1.778; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); - -payload.length = 647.25 * 1e-3; % [m] Total bay length -payload.mass = 4.401; % [kg] Total bay mass -payload.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side - -payload.noseLength = 0.32; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 3/4; % [-] Nosecone power type parameter -payload.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); + +parafoil.length = 647.25 * 1e-3; % [m] Total bay length +parafoil.mass = 4.401; % [kg] Total bay mass +parafoil.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side + +parafoil.noseLength = 0.32; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 3/4; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2025_Orion_Portugal_October/config/paraConfig.m b/missions/2025_Orion_Portugal_October/config/paraConfig.m index aa0a50a..109d023 100644 --- a/missions/2025_Orion_Portugal_October/config/paraConfig.m +++ b/missions/2025_Orion_Portugal_October/config/paraConfig.m @@ -41,7 +41,7 @@ para(2, 1).forceCoefficient = 2.2; % [-] Empirical coefficient to obtain % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.1; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -58,11 +58,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = 0; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 0.40; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 0.40; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2025_Orion_Portugal_October/config/rocketConfig.m b/missions/2025_Orion_Portugal_October/config/rocketConfig.m index 7a1c447..6a9b264 100644 --- a/missions/2025_Orion_Portugal_October/config/rocketConfig.m +++ b/missions/2025_Orion_Portugal_October/config/rocketConfig.m @@ -9,19 +9,19 @@ rocket.inertiaNoMotor = []; % [kg*m^ rocket.xCgNoMotor = []; % [m] OVERRIDE xCg without motor rocket.lengthCenterNoMot = []; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); - -payload.length = 647.25 * 1e-3; % [m] Total bay length -payload.mass = 4.401; % [kg] Total bay mass -payload.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side - -payload.noseLength = 0.32; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 3/4; % [-] Nosecone power type parameter -payload.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); + +parafoil.length = 647.25 * 1e-3; % [m] Total bay length +parafoil.mass = 4.401; % [kg] Total bay mass +parafoil.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side + +parafoil.noseLength = 0.32; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 3/4; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); diff --git a/missions/2025_Orion_Roccaraso_Settember/config/paraConfig.m b/missions/2025_Orion_Roccaraso_Settember/config/paraConfig.m index 80f10da..18e99a4 100644 --- a/missions/2025_Orion_Roccaraso_Settember/config/paraConfig.m +++ b/missions/2025_Orion_Roccaraso_Settember/config/paraConfig.m @@ -42,7 +42,7 @@ para(2, 1).forceCoefficient = 2.2; % [-] Empirical coefficient to obtain % parachute 1 para(1, 2) = Parachute(); -para(1, 2).name = "Payload DROGUE"; +para(1, 2).name = "Parafoil DROGUE"; para(1, 2).surface = 0.11; % [m^2] Surface para(1, 2).mass = 0.1; % [kg] Parachute Mass para(1, 2).cd = 1.2; % [/] Parachute Drag Coefficient @@ -59,11 +59,11 @@ para(1, 2).expulsionSpeed = 10; % [m/s] Expulsion Speed para(1, 2).forceCoefficient = 0; % [-] Empirical coefficient to obtain correct peak force at deployment % parachute 2 -para(2, 2) = Parafoil(); +para(2, 2) = Wing(); -para(2, 2).name = "Payload AIRFOIL"; -para(2, 2).mass = 0.40; % [kg] Parafoil Mass -para(2, 2).openingTime = 0; % [s] Parafoil opening delay +para(2, 2).name = "Parafoil AIRFOIL"; +para(2, 2).mass = 0.40; % [kg] Wing Mass +para(2, 2).openingTime = 0; % [s] Wing opening delay para(2, 2).surface = 0.11; % [m^2] Surface para(2, 2).deltaSMax = 0.1; % max value diff --git a/missions/2025_Orion_Roccaraso_Settember/config/rocketConfig.m b/missions/2025_Orion_Roccaraso_Settember/config/rocketConfig.m index bcc3bb6..4f90b9b 100644 --- a/missions/2025_Orion_Roccaraso_Settember/config/rocketConfig.m +++ b/missions/2025_Orion_Roccaraso_Settember/config/rocketConfig.m @@ -15,19 +15,19 @@ rocket.lengthCenterNoMot = []; % [m] % rocket.xCgNoMotor = 1.28; % [m] OVERRIDE xCg without motor % rocket.lengthCenterNoMot = 1.778; % [m] OVERRIDE Center length - no nose, no motor -%% PLD - Includes Payload + Nose -payload = Payload(); - -payload.length = 647.25 * 1e-3; % [m] Total bay length -payload.mass = 4.401; % [kg] Total bay mass -payload.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) -payload.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side - -payload.noseLength = 0.32; % [m] Nosecone length -payload.noseType = 'MHAACK'; % [-] Nosecone shape -payload.nosePower = 3/4; % [-] Nosecone power type parameter -payload.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes -payload.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes +%% PLD - Includes Parafoil + Nose +parafoil = Parafoil(); + +parafoil.length = 647.25 * 1e-3; % [m] Total bay length +parafoil.mass = 4.401; % [kg] Total bay mass +parafoil.inertia = 1e-9*[12531966; 109986813; 109930516]; % [kg*m^2] Total bay inertia (Body reference) +parafoil.xCg = 487.78 * 1e-3; % [m] Cg relative to bay upper side + +parafoil.noseLength = 0.32; % [m] Nosecone length +parafoil.noseType = 'MHAACK'; % [-] Nosecone shape +parafoil.nosePower = 3/4; % [-] Nosecone power type parameter +parafoil.nosePMod = 1.250152e+00; % [-] P coefficient for modified nosecone shapes +parafoil.noseCMod = 1.799127e-01; % [-] C coefficient for modified nosecone shapes %% RCS recovery = Recovery(); -- GitLab