RCAIDE.Library.Methods.Powertrain.Converters.Motor.design_optimal_motor
design_optimal_motor#
- design_optimal_motor(motor)[source]#
Sizes a DC motor to obtain the best combination of speed constant and resistance values by sizing the motor for a design RPM value.
- Parameters:
motor (RCAIDE.Library.Components.Powertrain.Converters.DC_Motor) –
- Motor component with the following attributes:
- no_load_currentfloat
No-load current [A]
- nominal_voltagefloat
Nominal voltage [V]
- design_angular_velocityfloat
Angular velocity [radians/s]
- efficiencyfloat
Efficiency [unitless]
- design_torquefloat
Design torque [N·m]
- gearboxData
- Gearbox component
- gear_ratiofloat
Gear ratio [unitless]
- Returns:
motor –
- Motor with updated attributes:
- speed_constantfloat
Speed constant [unitless]
- resistancefloat
Resistance [ohms]
- design_currentfloat
Design current [A]
- Return type:
RCAIDE.Library.Components.Powertrain.Converters.DC_Motor
Notes
This function uses numerical optimization to find the optimal values of speed constant and resistance that satisfy the motor’s design requirements. It attempts to solve the optimization problem with hard constraints first, and if that fails, it uses slack constraints.
- The optimization process follows these steps:
Extract motor design parameters (voltage, angular velocity, efficiency, torque)
Define optimization bounds for speed constant and resistance
Set up hard constraints for efficiency and torque
Attempt optimization with hard constraints
If optimization fails, retry with slack constraints
Update the motor with the optimized parameters
The objective function minimizes the current draw for a given voltage, angular velocity, and torque requirement.
- Major Assumptions
The motor follows a DC motor model
The optimization bounds are appropriate for the motor size
If hard constraints cannot be satisfied, slack constraints are acceptable
Theory The motor model uses the following relationships:
Current: \(I = (V - \omega/Kv)/R\)
Torque: \(T = (I - I₀)/Kv\)
Efficiency: \(\eta = (1 - (I₀\cdot R)/(V - \omega/Kv))\cdot(\omega/(V\cdot Kv))\)
- where:
V is the nominal voltage
ω is the angular velocity
Kv is the speed constant
R is the resistance
I₀ is the no-load current
T is the torque
η is the efficiency