6.21. Frame selection#
Written by Marc Budinger (INSA Toulouse), Scott Delbecq (ISAE-SUPAERO) and Félix Pollet (ISAE-SUPAERO), Toulouse, France.
6.21.1. Design graph#
The following diagram represents the design graph of the frame selection.
Fig. 6.26 Airframe design graph#
The design graphs for the overall drone system can be found in here.
6.21.1.1. Sizing code#
import numpy as np
# Specifications
N_arm = 4.0 # [-] Number of arms
N_pro_arm = 1.0 # [-] Number of propellers per arm (1 or 2)
# Reference parameters for scaling laws
sigma_max = (
280e6 / 4.0
) # [Pa] Composite max stress (2 reduction for dynamic, 2 reduction for stress concentration)
rho_s = 1700.0 # [kg/m3] Volumic mass of aluminum
# Assumptions
D_pro = 0.3 # [m] Propeller diameter
F_pro_to = 1.0 # [N] Thrust for one propeller during take off
# Design variables
k_D = 0.99 # [-] aspect ratio D_in/D_out for the beam of the frame
# Equations
# Arms selection with propellers size
alpha_sep = 2 * np.pi / N_arm # [rad] interior angle separation between propellers
L_arm = D_pro / (2.0 * np.sin(alpha_sep / 2.0)) # [m] length of the arm
# Tube diameter & thickness selection with take-off scenario
D_out_arm = (F_pro_to * N_pro_arm * L_arm * 32 / (np.pi * sigma_max * (1 - k_D**4))) ** (
1 / 3
) # [m] outer diameter of the arm (hollow cylinder)
D_in_arm = k_D * D_out_arm # [m] inner diameter of the arm (hollow cylinder)
# Estimation models
M_arms = (
np.pi / 4 * (D_out_arm**2 - (k_D * D_out_arm) ** 2) * L_arm * rho_s * N_arm
) # [kg] mass of the arms
M_body = 1.5 * M_arms # [kg] mass of the body (40% of total mass is the arms)
M_frame = M_body + M_arms # [kg] total mass of the frame
%whos
Variable Type Data/Info
--------------------------------
D_in_arm float64 0.009126226336644873
D_out_arm float64 0.009218410441055428
D_pro float 0.3
F_pro_to float 1.0
L_arm float64 0.21213203435596426
M_arms float64 0.0019158884043039236
M_body float64 0.0028738326064558853
M_frame float64 0.004789721010759809
N_arm float 4.0
N_pro_arm float 1.0
alpha_sep float 1.5707963267948966
k_D float 0.99
np module <module 'numpy' from '/op<...>kages/numpy/__init__.py'>
rho_s float 1700.0
sigma_max float 70000000.0