Actuator Selection & Motor/Gearbox Sizing
Choosing the right motor for the job. Learn actuator types (brushed DC, BLDC/PMSM servo, stepper, AC induction, linear motors, piezo, solenoids) and when to use each, move profiles and torque requirements (acceleration, friction, gravity), reflected inertia and gear ratios, inertia matching, RMS torque and thermal limits, speed–torque curve checks, gearbox backlash and efficiency, and a sizing workflow — with Python comparing gear ratios.
An undersized motor overheats or can't follow the motion profile; an oversized one wastes money, space and energy and may even perform worse. Sizing links the mechanical load and motion profile to motor torque, speed and inertia through the transmission.
The process is systematic: define the move, compute load torques and inertia, choose a transmission ratio, check peak and RMS torque and maximum speed against the motor's curves, then verify the driver and power supply.
An analogy
Choosing a gear ratio is like choosing a bicycle gear: low gear (high ratio) makes climbing easy but limits top speed; high gear is fast but hard to start. The right gear lets the rider (motor) work in their comfortable range.
Actuator types
Match the actuator to the task:
- Stepper motors — open-loop positioning, cheap, high holding torque at low speed; lose steps if overloaded
- Brushed DC — simple, cheap, speed control with PWM; brushes wear
- BLDC / PMSM servo — high power density and efficiency, precise with encoder feedback
- AC induction + VFD — robust, cheap, pumps/fans/conveyors
- Linear motors — direct drive, very high dynamics, no backlash
- Pneumatic/hydraulic — high force density, simple end-to-end motion (fluid power)
- Piezo, voice-coil, solenoid, SMA — tiny strokes or on/off actions
Load analysis
Compute all load torques: acceleration (J·α), friction (Coulomb + viscous), gravity (m·g·r·cos θ for arms), process forces (cutting, pressing). Reflect them through the transmission: torques divide by N·η, inertias by N². Linear axes convert via screw lead or pulley radius (J = m·(lead/2π)² or m·r²).
Checks against the motor
Peak torque at each speed must lie inside the motor's intermittent torque–speed curve (with voltage margin); RMS torque must be below the continuous rating (thermal); maximum speed must be below rated speed; inertia ratio ideally below ~5–10:1 for good servo tuning (higher ratios work with stiff couplings and good tuning). Check driver peak/continuous current and supply power, including regeneration during deceleration.
Transmissions and trade-offs
Planetary gearboxes (compact, 1–3 arcmin backlash), harmonic drives (zero backlash, high ratio, robot joints), cycloidal (shock-tolerant), worm (self-locking, low efficiency), belts and screws for linear motion. Direct drive avoids backlash and wear at the cost of larger motors. Optimise over ratio, motor frame and driver with duty-cycle analysis; include temperature rise, bearing loads and life.
Formulas
- Reflected inertia:
J_refl = J_load / N² - Motor torque:
T_m = (J_m + J_L/N²)·N·α_L + T_L/(N·η) - RMS torque:
T_rms = √(Σ T_i²·t_i / Σ t_i) - Optimal ratio (pure inertia):
N* = √(J_L / J_m) - Trapezoid (1/3 each):
ω_max = 1.5·θ/t; α = 4.5·θ/t² - Stepper holding margin:
use ≤ 50% of pull-out torque at speed
Worked example: Reflected inertia
Given: J_L = 0.05 kg·m², N = 20
Find: J_refl.
- 0.05/400
Answer: 1.25 × 10⁻⁴ kg·m² (2.5× the motor)
Worked example: RMS torque
Given: 0.14 N·m for 0.17 s, 0.05 for 0.17 s, 0.1 for 0.17 s, 0 for 0.5 s dwell
Find: T_rms.
- √((0.0196 + 0.0025 + 0.01) × 0.17/1.01)
Answer: ≈ 0.074 N·m
Worked example: Screw inertia
Given: 20 kg carriage, 10 mm lead
Find: Reflected inertia.
- 20 × (0.01/2π)²
Answer: 5.07 × 10⁻⁵ kg·m²
Comparing gear ratios for a rotating arm
import math
# Motor + gearbox sizing for a rotating arm (trapezoidal move)
J_load = 0.05 # kg*m^2
T_load = 0.8 # N*m gravity/friction at the load
theta = math.pi / 2 # 90 degree move
t_move = 0.5 # s, 1/3 accel, 1/3 constant, 1/3 decel
w_max = theta / (t_move * 2 / 3) # trapezoid with equal thirds
alpha = w_max / (t_move / 3)
J_motor = 5e-5
for N in (5, 10, 20, 40):
J_ref = J_load / N**2
T_acc = (J_motor + J_ref) * alpha * N + T_load / (N * 0.9)
w_m = w_max * N * 60 / (2 * math.pi)
print(f"ratio {N:2d}: inertia ratio {J_ref/J_motor:6.1f}, peak motor torque {T_acc:.3f} N*m, motor speed {w_m:.0f} rpm")
print(f"optimal ratio for pure inertia: N* = sqrt(J_load/J_motor) = {math.sqrt(J_load/J_motor):.1f}")
# ratio 5: inertia ratio 40.0, peak motor torque 0.468 N*m, motor speed 225 rpm
# ratio 10: inertia ratio 10.0, peak motor torque 0.244 N*m, motor speed 450 rpm
# ratio 20: inertia ratio 2.5, peak motor torque 0.143 N*m, motor speed 900 rpm
# ratio 40: inertia ratio 0.6, peak motor torque 0.114 N*m, motor speed 1800 rpmHigher ratios cut the required torque and the inertia mismatch but raise motor speed. Ratio 20 gives a good inertia ratio (2.5:1) and moderate speed; ratio 40 needs slightly less torque but 1800 rpm and more gearbox cost/backlash. The theoretical optimum 31.6 minimises acceleration torque only — practical choices balance speed limits, backlash and cost.
Common mistakes
- Wrong: Sizing only for peak torque. — Right: Check RMS torque (thermal) over the duty cycle.
- Wrong: Ignoring gearbox efficiency and backlash. — Right: Include η and backlash in accuracy budgets.
- Wrong: Huge inertia mismatch without stiff coupling. — Right: Keep J ratio reasonable or use higher ratio/direct drive.
Applications
- Robot joints: Servo + harmonic drive sizing.
- Packaging machines: Indexing tables and cam replacements.
- CNC axes: Servo + ball screw with high stiffness.
- Conveyors: Induction motor + gearbox + VFD.
Key takeaways
- Compute acceleration, friction, gravity and process torques.
- Reflect through N: torque/Nη, inertia/N².
- Check peak, RMS, speed and inertia ratio.
- Pick actuator type to fit precision, cost and duty.
Going further
- Motion sizing software: Vendor tools with duty-cycle and thermal models.
- Regenerative energy: Braking resistors vs DC-bus sharing.
- Linear motor thermal design: Forced cooling and magnet temperature limits.