Designing a Venus Atmosphere Sample Return Mission
I worked on this project as part of Purdue’s AAE 251 Introduction to Aerospace Design course, where my five teammates and I (Team R204) were tasked with designing a full spacecraft and mission concept from the ground up. Our goal was to design a rocket capable of traveling to Venus, collecting a sample of its atmosphere, and returning that sample safely to Earth.
We started by identifying our stakeholders (NASA, taxpayers, outside research institutions, and our own team) and translating their needs into concrete engineering requirements: the spacecraft had to withstand roughly 76 times Earth’s atmospheric pressure, survive temperatures ranging from 100 K to 489 K, and carry enough fuel to supply over 18 km/s of delta-V just to reach a low Venus orbit. From there, I helped calculate and plot Earth help velocity for different candidate launch sites and launch azimuths, which fed into our decision to launch from Kennedy Space Center. I also wrote a rocket sizing program that calculated gross lift-off weight and individual stage weights from a set of input parameters, which we used to compare one-stage, two-stage, and three-stage configurations before settling on a two-stage design.
Our final concept uses a solid first stage derived from Northrop Grumman’s Castor 30B engine to reach low Earth orbit, then a nuclear thermal propulsion (NTP) second stage that burns hydrogen on the way out and switches to carbon dioxide, pulled directly from Venus’s atmosphere, for the return trip. That in-situ refueling approach is what let the mission close: reaching Venus and coming home again requires a total delta-V of roughly 21.3 km/s, more than a conventional chemical rocket could carry as propellant alone. We built a full CAD model of the spacecraft, including a nose cone with dual sample-collection hatches on a four-bar linkage, an internal storage tank sized to hold about 3.6 cubic meters of atmospheric gas, and an explosive-bolt separation system between stages. We also ran a preliminary risk analysis covering fuel shortfall, uncontrolled re-entry, and hatch mechanism failure, and used it to justify specific design choices, like why the sample hatches open outward instead of inward.
The final deliverable was a complete mission design report covering requirements, trajectory selection, staging and propellant analysis, and a CAD-modeled spacecraft concept, along with the MATLAB code behind our sizing and trajectory calculations. We were upfront that the design would need real refinement before it could fly: our course covered single-body orbital transfers, not the full interplanetary trajectory optimization a real Venus mission would require, and the NTP system we specified is still experimental. But the project gave me a full pass through the aerospace design process, from stakeholder needs to a dimensioned CAD model, on a mission concept far more ambitious than anything I’d worked on at this time.
console.log( '%AAE 251 Fall 2022
clear
% initate variables
V = 21320;%21320
payload = 5041;%300 + 41 Minert as empty tank
Finert1 = 0.1;
Finert2 = 0.08;%.08
isp1 = 300;
isp2 = 900;%900
i = 1;
% calculate a vector for the a1 and GLOW values
for a = 0:0.0001:0.3%.14-.26
a1(i) = a;
a2 = 1 - a;
v1 = V * a;
v2 = V * a2;
m(i) = payload * calcM(v2, isp2, Finert2) * calcM(v1, isp1, Finert1);
i = i + 1;
end
% find the minimum GLOW, corresponding a1,a2, and total Mprop
min = min(m);
alpha1 = a1(find(m==min));
alpha2 = 1 - alpha1;
Mprop2 = payload * calcMprop(alpha2 * V, isp2, Finert2);
Minert2 = Finert2 * Mprop2 / (1 - Finert2);
Mi2 = payload + Minert2 + Mprop2;
Mprop1 = Mi2 * calcMprop(alpha1 * V, isp1, Finert1);
Mprop = Mprop1 + Mprop2;
Minert1 = Finert1 * Mprop1 / (1 - Finert1);
% print out values
fprintf("Minimum GLOW: %.3f\nα1: %.3f\nα2: %.3f\nMprop: %.3f", min, alpha1, alpha2, Mprop);
% plot the a1 vs GLOW and the minimum point
figure
hold on
plot(a1, m)
plot(alpha1, min, 'ro')
grid on
title('GLOW VS % of ∆V for Stage 1')
xlabel('% of ∆V for Stage 1')
ylabel('Gross Lift Off Weight (kg)')
legend('GLOW','Min GLOW')
hold off
% function to calculate a portion of the initial mass equation
function [Mi] = calcM(v, isp, Finert)
g = 9.81;
e = exp(v/(isp*g));
Mi = e*(1-Finert) / (1-Finert * e);
end
% function to calculate a portion of the Mprop equation
function [Mprop] = calcMprop(v, isp, Finert)
g = 9.81;
e = exp(v/(isp*g));
Mprop = (e - 1)*(1-Finert) / (1-Finert * e);
end
' );







