AAE 450 Spring 2008 William Yeong Liang Ling 2/27/2008 Propulsion Analysis of Balloon Rise Time Propulsion
AAE 450 Spring 2008 Propulsion Lift Mass Drag Determination of rise time Assumptions Constant sphere Constant C D = 0.2 Barometric formula Kinematic viscosity variation with temperature Constant acceleration over timesteps of 1 second
AAE 450 Spring 2008 Propulsion 1 hour 36 minutes to reach 30km. Compares well with high altitude balloon rise times Final velocity of 19.7m/s upwards In reality, balloon will either rupture or oscillate about 30km Determination of rise time Future work Determine maximum drift radius due to wind gusts
AAE 450 Spring 2008 Propulsion Thanks to Jerald Balta for modifying the balloon code to output this.
AAE 450 Spring 2008 Propulsion Thanks to Jerald Balta for modifying the balloon code to output this.
AAE 450 Spring 2008 Propulsion
AAE 450 Spring 2008 Propulsion function Output = Balloon_Rise(GLOW) close all %Timestep = 1 second % This is fixed within the code, i.e. dt = 1 Altitude = 0; g = ; % SUMMARY % This function determines the rise time of the balloon to an altitude of % 30,000m. As a bonus, it also determines the drag, Reynolds Number, % acceleration and velocity experienced by the balloon over the rise time. % x = 0; v = 0; i = 1; t = 0; while x < Variables = Balloon_Model(GLOW, x); Force = Variables(1); Force = Force - GLOW.*g; Volume = Variables(2); Diameter = Variables(3); [Density_Air Pressure_Air Temperature_Air] = Barometric_Formula(x); Drag = 0.2.*0.5.*Density_Air.*v.^2.*(pi./4).*Diameter^2; if Drag > Force Drag = Force; end
AAE 450 Spring 2008 Propulsion Acceleration = (Force - Drag)./GLOW; x = x + v *Acceleration; v = v + Acceleration; Altitude(i) = x; Velocity(i) = v; Acceleration_Grid(i) = Acceleration; Drag_Grid(i) = Drag; t = t + 1; Time(i) = t; % Dynamic Viscosity determined by a best fit curve by Ierardi, James. Dynamic_Viscosity = ( *10^-14).*Temperature_Air^3 + ( *10^-11).*Temperature_Air^2 + ( *10^-8).*Temperature_Air - ( *10^-6); Re(i) = (Density_Air.*v.*Diameter)./(Dynamic_Viscosity); i = i + 1; end figure(1) plot(Time,Altitude./1000); title('Change in balloon altitude over time') xlabel('Time (s)') ylabel('Altitude (km)')
AAE 450 Spring 2008 Propulsion function [Density_Air Pressure_Air Temperature_Air] = Barometric_Formula(Altitude) % Fixed Constraints g = ; % Gravitational acceleration, assumed to be constant [m/s^2] Molar_Air = ; % Molar mass of Earth's air [kg/mol] R = ; % Universal gas constant [N·m/(mol·K)] % Density of Air using the Barometric Formula if Altitude < Density_b = ; Temperature_b = ; Lapse_b = ; Height_b = 0; Pressure_b = ; elseif Altitude < Density_b = ; Temperature_b = ; Lapse_b = 0; Height_b = 11000; Pressure_b = ; elseif Altitude < Density_b = ; Temperature_b = ; Lapse_b = 0.001; Height_b = 20000; Pressure_b = ; elseif Altitude < Density_b = ; Temperature_b = ; Lapse_b = ; Height_b = 32000; Pressure_b = ;
AAE 450 Spring 2008 Propulsion elseif Altitude < Density_b = ; Temperature_b = ; Lapse_b = 0; Height_b = 47000; Pressure_b = ; elseif Altitude < Density_b = ; Temperature_b = ; Lapse_b = ; Height_b = 51000; Pressure_b = ; else Density_b = ; Temperature_b = ; Lapse_b = ; Height_b = 71000; Pressure_b = ; end if Lapse_b == 0 Density_Air = Density_b.*exp((-1.*g.*Molar_Air.*(Altitude - Height_b))/(R.*Temperature_b)); %[kg/m^3] else Density_Air = Density_b.*((Temperature_b./(Temperature_b + (Lapse_b.*(Altitude - Height_b))))^(((g.*Molar_Air)./(R.*Lapse_b)) + 1)); %[kg/m^3] end % Pressure of air using barometric formula if Lapse_b == 0 Pressure_Air = Pressure_b.*exp((-1.*g.*Molar_Air.*(Altitude - Height_b))/(R.*Temperature_b)); %[Pa] else Pressure_Air = Pressure_b.*((Temperature_b./(Temperature_b + (Lapse_b.*(Altitude - Height_b))))^(((g.*Molar_Air)./(R.*Lapse_b)))); %[Pa] end % Temperature of air using ideal gas law Temperature_Air = (Molar_Air.*Pressure_Air)./(Density_Air.*R); %[K]