AE 687 MTE Solutions [Sem 2, 2024-25]
Problem 1: Design case study- Helicopter Loops
(a) Refer to the image below from https://aircraftflightmechanics.com/AircraftPerformance/Manoeuvre.html
With at the bottom of the loop and increasing clockwise, the equilibrium along the normal direction to the
loop is:
, this is highest at the bottom of the loop and lowest at the top of the loop.
(b) The maximum tip deflection should happen at bottom of the loop. The variation in the lift comes from
changing the blade pitch.
To get the tip deflection, one can apply a fictitious bending load Fat the tip and use Catigliano's II theorem.
1
Consider equilibrium:
Eq 1: ,
Eq 2:
syms E I A kappa b k rho Omega V D F x real
RzL = -simplify(int(k*(V + rho * Omega)^2, rho, 0, D/2))-F
RzL =
Eq 3:
kTheta0 = simplify(int(k*rho*(V + rho * Omega)^2, rho, 0, D/2) + RzL * D/2)
kTheta0 =
M_rho = simplify(kTheta0 - int(k*x*(V + x * Omega)^2, x, 0, rho) - RzL * rho)
M_rho =
2
N_rho = int(b*Omega^2*x, x, 0, rho) - b*Omega^2*D^2/8
N_rho =
% Complementary Potential Energy
Ustar = simplify(1/(2*E*I) * int(M_rho^2, rho, 0, D/2) + 1/(2*E*A)...
* int(N_rho^2, rho, 0, D/2)) + 1/2 * kappa * (kTheta0/kappa)^2
Ustar =
vTip = subs(diff(Ustar, F), F, 0) % this is the tip deflection
vTip =
Let's plug in some parameters at this point. From the wikipedia link:
Main rotor diameter, D = 10 m (approximately)
Rotor speed = 400 RPM (Refer https://www.easa.europa.eu/es/downloads/7939/en)
Observe that the total lift produced is:
Lift_rotor = subs(4*int(k*(V + rho * Omega)^2, rho, 0, D/2),...
[D, Omega],[10, 400*2*pi/60]) % four blades
Lift_rotor =
This should be equal to
The mass of the airplane is assumed to be 2000 kg (the max take off weight is 2500 kg but we should be below
this weight). Therefore, at the lowest point the total lift force is analyzed as below.
syms R real
m = 2000;
g = 10;
Lift = m*g + m * V^2/R
Lift =
3
We can assume that the loops are happening at speed much lower than cruise speed, say 100 km/h
Further, the radius of the loop looks at least 10 times higher than the rotor diameter, so 100 m
kgm^2 for helicopter blades. From https://ntrs.nasa.gov/api/citations/19970016974/downloads/
19970016974.pdf
Figure shows chordwise stiffness in lb-in^2
Let's solve for k.
ksol = vpa(solve(subs(Lift - Lift_rotor, [V, R], [100 * 5/18, 100]), k), 5)
ksol =
We will now try to estimate the tip deflection
vTip1 = vpa(subs(vTip, [k, V, D, Omega, E, I],...
[ksol, 100 * 5/18, 10, 400*2*pi/60, 3*10^4, 1]), 4)
vTip1 =
kapVec = 10^4:100:10^6;
figure()
semilogx(kapVec, subs(vTip1, kappa, kapVec))
xlabel('kappa')
ylabel('max tip deflection (m)')
4
A base torsional stiffness less than Nm is therefore, impractical. We will use for further analysis
(c) Root stress at different points in maneuver
Solution procedure:
1. Starting from the bottom most point, let's first use the values above to find the normal and shear stress
2.
for bending, take z = -0.05, assume blade is 10 cm thick at the base. I is of the order , A is of the order
Mbase = vpa(subs(kTheta0, [F, k, V, D, Omega], [0, ksol, 100 * 5/18, 10, 400*2*pi/
60]), 4);
Nbase = vpa(subs(b*Omega^2*D^2/8, [b, D, Omega], [1, 10, 400*2*pi/60]), 4);
sig_bend = Mbase * z/I;
sig_b_tensile = subs(sig_bend, [z, I],[-0.05, 1e-5])/1e6; %in MPa
sig_Norm = Nbase/0.01/1e6; % MPa
5
sig_tensile = sig_b_tensile + sig_Norm % MPa
sig_tensile =
sig_shear = vpa(subs(RzL, [F, k, V, D, Omega], [0, ksol, 100 * 5/18, 10, 400*2*pi/
60]))*1e4/1e6 %MPa
sig_shear =
Although the max shear and max tensile stress are at different sections on the blade. We can combine the
maximum values conservatively for von mises stress prediction.
sig_vonMises = sqrt(sig_tensile^2/2 + 3*sig_shear^2)
This is a decently high tensile stress but there could be room to further push the speed and decrease the radius
of the loop.
(d) Let's use the yield strength of aluminium for reference: 414 MPa. One may increase the speed and decrease
the radius and redo the above analysis to push the stress to the limit. One can redo this analysis for different
values of along the loop and develop a stress characteristic. The solution to the rest of this problem is left to
the student.
The practical limit is of course never exceed air speed.
Problem 2: Simplified landing gear truss
The truss and the beam can be decoupled if we consider the interaction loads P and Q as shown in the FBD
below.
v is the bending deflection, u is the axial deformation at point of attachment O.
(a) We will use Castigliano's 2nd theorem to determine the displacements
clear;
syms W Mo R Qo P Q x u v L E I A real % otherwise mlx may consider these as complex
numbers
syms x real
% Defining bending moment.
M1 = -Mo + R * x; % 0 < x < L
6
M2 = -Mo + R * x + P*(x-L); % L < x < 2L
% Define axial load
N1 = -Qo; % 0 < x < L
N2 = -Qo + Q; % L < x < 2L
% Equilibrium
R = 2*W - P % Force equilibrium
R =
Mo = simplify(2*R*L + P * L) % Moment at x = L is zero
Mo =
Qo = Q - W
Qo =
So, all unknown loads are now in terms of P, Q, and W
% Redefining bending moment.
M1 = -Mo + R * x; % 0 < x < L
M2 = -Mo + R * x + P*(x-L); % L < x < 2L
% redefine axial load
N1 = -Qo; % 0 < x < L
N2 = -Qo + Q; % L < x < 2L
% Define complementary strain energy
C = expand(1/(2* E * I) * (int(M1^2, x, 0, L) + int(M2^2, x, L, 2*L)) +...
1/(2* E * A) * (int(N1^2, x, 0, L) + int(N2^2, x, L, 2*L)))
C =
u = diff(C, Q)
u =
v = diff(C, P)
v =
We don't know the interaction loads yet. We haven't used the truss structure so far.
7
{u, v} is the dispalcement of point O under the truss-beam interaction loads {Q, P}.
We can determine the axial loads developed in the bars using static equilibrium.
N1s = (P - Q)/sqrt(2);
N2s = (P + Q)/sqrt(2);
% Complementary energy for the truss structure
Ctruss = simplify(1/(2*E*A) * (int(N1s^2, x, 0, sqrt(2)*L) + int(N2s^2, x, 0,
sqrt(2)*L)))
Ctruss =
uS = -diff(Ctruss, Q)
uS =
vS = -diff(Ctruss, P)
vS =
% u = uS, and v = vS
Qsol = solve(u - uS, Q)
Qsol =
Psol = solve(v - vS, P)
Psol =
8
uSol = subs(uS, Q, Qsol) % Answer
uSol =
vSol = subs(vS, P, Psol) % Answer
vSol =
(b) Plot of stresses in the beam and bars
We shall plot the bending and axial stress in the beam, and normal stress in the bars
syms z
M1sol = simplify(subs(M1, P, Psol));
M2sol = simplify(subs(M2, P, Psol))
M2sol =
N1sol = simplify(subs(N1, Q, Qsol));
N2sol = simplify(subs(N2, Q, Qsol));
SigN1 = M1sol * z/I + N1sol/A;
SigN2 = M2sol * z/I + N2sol/A;
xvec1 = 0:0.1:0.5;
xvec2 = 0.5:0.1:1;
SigN1num = subs(SigN1,[E, I, A, W, z, L],[1, 1, 1, 1, 1, 0.5]);
SigN2num = subs(SigN2,[E, I, A, W, z, L],[1, 1, 1, 1, 1, 0.5]);
figure()
hold on;
xlabel('x/L')
ylabel('Non dimensional stress')
title('Beam normal stress')
grid on
plot(xvec1, subs(SigN1num, x, xvec1))
plot(xvec2, subs(SigN2num, x, xvec2))
9
syms z
N1sol = simplify(subs(N1s, [P,Q], [Psol, Qsol]));
N2sol = simplify(subs(N2s, [P,Q], [Psol, Qsol]));
SigN1 = N1sol/A;
SigN2 = N2sol/A;
xvec = 0:0.1:sqrt(2);
SigN1num = subs(SigN1,[E, I, A, W, L],[1, 1, 1, 1, 1]);
SigN2num = subs(SigN2,[E, I, A, W, L],[1, 1, 1, 1, 1]);
figure()
hold on
xlabel('x/l')
ylabel('Non dimensional stress')
title('Bars normal stress')
grid on
plot(xvec, subs(SigN1num, x, xvec))
plot(xvec, subs(SigN2num, x, xvec))
10
11