Propeller selection#

Written by Marc Budinger (INSA Toulouse), Scott Delbecq (ISAE-SUPAERO) and Félix Pollet (ISAE-SUPAERO), Toulouse, France.

Design graph#

The following diagram represents the design graph of the propeller’s selection. The max thrust is assumed to be known here.

../../_images/DesignGraphs_propeller.svg

Fig. 17 Propeller design graph#

The design graphs for the overall drone system can be found in here.

Sizing code#

import numpy as np

# Specifications
rho_air = 1.18  # [kg/m^3] Air density
ND_max = 105000.0 / 60.0 * 0.0254  # [Hz.m] Max speed limit (N.D max) for APC MR propellers

# Reference parameters for scaling laws
D_pro_ref = 11.0 * 0.0254  # [m] Reference propeller diameter
M_pro_ref = 0.53 * 0.0283  # [kg] Reference propeller mass

# Assumptions
F_pro_to = 15.0  # [N] Thrust for 1 propeller during Take Off
F_pro_hov = 5.0  # [N] Thrust for 1 propeller during hover

# Design variables
beta_pro = 0.33  # pitch/diameter ratio of the propeller
k_ND = 1.2  # slow down propeller coef : ND = NDmax / k_ND
# Equations

# Estimation models for propeller aerodynamics
C_t = 4.27e-02 + 1.44e-01 * beta_pro  # Thrust coef with T=C_T.rho.n^2.D^4
C_p = -1.48e-03 + 9.72e-02 * beta_pro  # Power coef with P=C_p.rho.n^3.D^5

# Propeller selection with take-off scenario
D_pro = (F_pro_to / (C_t * rho_air * (ND_max / k_ND) ** 2.0)) ** 0.5  # [m] Propeller diameter
n_pro_to = ND_max / k_ND / D_pro  # [Hz] Propeller speed
Omega_pro_to = n_pro_to * 2 * np.pi  # [rad/s] Propeller speed

# Estimation model for mass
M_pro = M_pro_ref * (D_pro / D_pro_ref) ** 2.0  # [kg] Propeller mass

# Performance in various operating conditions
# Take-off
P_pro_to = C_p * rho_air * n_pro_to**3.0 * D_pro**5.0  # [W] Power per propeller
T_pro_to = P_pro_to / Omega_pro_to  # [N*m] Propeller torque
# Hover
n_pro_hov = np.sqrt(F_pro_hov / (C_t * rho_air * D_pro**4.0))  # [Hz] hover speed
Omega_pro_hov = n_pro_hov * 2.0 * np.pi  # [rad/s] Propeller speed
P_pro_hov = C_p * rho_air * n_pro_hov**3.0 * D_pro**5.0  # [W] Power per propeller
T_pro_hov = P_pro_hov / Omega_pro_hov  # [N*m] Propeller torque
%whos
Variable        Type       Data/Info
------------------------------------
C_p             float      0.030596
C_t             float      0.09022
D_pro           float      0.3204517851291232
D_pro_ref       float      0.2794
F_pro_hov       float      5.0
F_pro_to        float      15.0
M_pro           float      0.019730354665561008
M_pro_ref       float      0.014999
ND_max          float      44.449999999999996
Omega_pro_hov   float64    419.3214365967957
Omega_pro_to    float      726.2860328884217
P_pro_hov       float64    36.262832648239105
P_pro_to        float      188.42720571935266
T_pro_hov       float64    0.08647979684164854
T_pro_to        float      0.2594393905249455
beta_pro        float      0.33
k_ND            float      1.2
n_pro_hov       float64    66.73707937877482
n_pro_to        float      115.59201223279518
np              module     <module 'numpy' from '/op<...>kages/numpy/__init__.py'>
rho_air         float      1.18