QDD Actuator: Gear Ratio, Inertia, Bandwidth and Heating
Size a quasi direct drive robot joint: compare gear ratios, reflected inertia, torque bandwidth and voltage limits, then simulate winding and housing heating during running and jumping.
A quasi direct drive actuator combines a high-torque motor with a modest gear reduction. It can deliver the torque needed by a legged-robot joint while allowing the joint to yield at contact. Increasing the QDD gear ratio helps torque production, but rotor inertia grows with the square of that ratio. Friction, back EMF and transmission compliance also change what the joint can do.
This robot actuator calculator helps engineers and students compare a candidate motor and gear ratio for running and jumping. Enter a motor's torque constant, phase current limit, rotor inertia and electrical data. Use the peak phase-current convention stated in the input help: mixing RMS current and peak phase current changes both torque and copper heating. The default example is inspired by the scale of Katz's 2018 Mini Cheetah actuator; several mechanical and thermal parameters remain illustrative design assumptions.
Next enter the moving leg mass, supported body mass, local joint-to-foot moment arm, contact stiffness and transmission stiffness. Mechanical bandwidth comes from both modes of Wensing's compliant reduced-leg model. The frequency chart combines this mechanical path with a first-order current loop. Its resonant peaks explain why a high electrical bandwidth alone does not guarantee good contact-force tracking. Use the first mechanical mode and required bandwidth when screening a design; the upper half-power crossing can lie beyond a resonance.
The ratio charts sweep 1:1 to 20:1 in increments of 0.125. The reported lowest and highest screened ratios meet peak-current, hot motoring-voltage, mechanical-bandwidth, breakaway, directional-impact and mean-duty heating targets. They are sampled candidates, not a claim that every manufactured reducer between them is suitable. If none passes, the bounds are blank. Change the motor data to compare another winding or rotor, then recalculate.
Finally, define stance and swing plateaus, a repeated jumping block, and a cooling interval. The thermal calculation starts at ambient and follows winding and housing temperatures separately. It stops at the first winding-limit crossing or the housing reporting cutoff, showing the calculated end time and a failed thermal verdict. Peaks then cover only that finite history. It resolves every duty transition and includes copper resistance increasing with temperature. Play time moves through the already-computed thermal history. Check the selected ratio's transient peak after considering the sweep: average-duty screening does not bound the peak of a short, intense pulse.
This tool does not simulate a complete articulated robot, regenerative braking, field weakening, gearbox fatigue, backlash, cogging compensation or a discrete digital controller. The torque plateaus specify a motoring envelope; add rotor acceleration torque to the requested load when it matters. Fit the thermal network and friction to the actual assembled joint. In particular, the directional impact factor describes a one-dimensional model, and cannot predict a landing force or establish whole-robot impact robustness.
How it is calculated
The inertia and contact model follows Wensing et al. (2017), §III-A–B, DOI 10.1109/TRO.2016.2640183. The attached manuscript text has reflowed pages; its pp. 4–5 contain the reduced-leg equations. With ,
This is the directional IMF of the one-dimensional rigid-drive model. The ideal instantaneous elastic-drive value is because a finite series spring initially decouples the rotor. The rigid value is used for ratio screening; finite-duration impact loads require a contact transient.
For the compliant model, , , and . The two squared modal frequencies solve . A cancellation-resistant expression evaluates the smaller root. The mechanical bandwidth is the first mode. A chosen modal damping ratio is added to each second-order factor, and the normalized torque-to-contact-force path is multiplied by . A frequency scan brackets the first downward half-power crossing before Brent root refinement. This crossing is distinct from the mechanical design ceiling.
Output friction is . Available torque is below the peak current. Newton iteration inverts this monotone torque law. Above the current limit the requested current is reported using the constant peak torque constant; it is not clipped to make a failed duty appear deliverable. The hot motoring check uses , and (SVPWM, no field weakening).
The two-node thermal model is derived from energy balance:
Here . Thus mechanical loss agrees with the torque/power balance. Each constant-duty interval is an affine two-state ODE; an exact matrix-exponential advance resolves every stance, swing, jump and recovery boundary. Analytical stationary points and interval ends give both peak temperatures independently of plot sampling. Mean-duty equilibrium includes copper's positive thermal feedback; a missing equilibrium is shown as a gap. The continuous stall torque includes auxiliary housing heat and hot winding resistance.
At zero speed the same hot dq voltage balance reduces to . Peak stall current is limited to ; continuous stall current also respects the thermal-current limit. Both reported stall torques subtract breakaway friction and are floored at zero.
Thermal advancement limits every positive modal exponent to 0.5 before evaluating its exponential. Each finite segment is checked for a winding-limit crossing or the 200 °C housing reporting cutoff. Prefix-maximum bisection locates the first event, and the resulting finite history is resampled at 1,601 points. Reported peaks apply only up to this calculated endpoint; the design verdict and history-end time identify early termination.
Assumptions
- A single local contact direction with constant moment arm, linear contact and transmission springs, and the body/leg mass distribution of Wensing's reduced rack-and-pinion model. The normalized mechanical response is a torque-to-contact-force surrogate, not a measured joint torque servo.
- Amplitude-invariant FOC: is peak phase amplitude, , and . All duty torques and speeds are nonnegative motoring magnitudes. Rotor acceleration torque, regeneration and bus absorption are excluded.
- Saturation is an illustrative quadratic interpolation between the supplied low-current torque constant and its peak-current drop, not a digitization of a measured curve. The current loop is an identified first-order small-signal fit; PWM, delay and PI gains are not simulated.
- Katz (2018), pp. 25, 27, 38, 44, 53–54, supports the 6:1 scale, roughly 0.082 N·m/A low-current constant, 12% saturation drop, 40 A peak phase current, 21 pole pairs, about 30 µH inductance, usual 1 kHz current-loop setting, aggregate 1.23 K/W thermal resistance and 32 J/K effective thermal mass. The 0.13 Ω phase resistance is inferred from his rounded 60 W, 15.4 A and 30% resistance-rise discussion.
- The default rotor/gear split (0.000060 and 0.000140 kg·m²) is assigned to match the published 0.0023 kg·m² total at 6:1. The friction, efficiency, stiffnesses, damping, duty, 0.35/0.88 K/W thermal split and 120 J/K housing capacity are editable example assumptions. Katz's measured effective thermal mass is assigned to the winding node for illustration; the separate nodes require identification on real hardware.
- Copper's linear resistance coefficient is 0.00385/K at the 25 °C resistance reference in the example; replace it for a different winding material or resistance fit.
Where it applies
Use the results for motor and ratio screening, then identify the assembled actuator and test the proposed motion. “Screening targets met” means only that the stated model targets pass; it is not a stability, fatigue or impact-force check.
The ratio sweep uses mean-duty thermal equilibrium, not a transient peak at every ratio. Its bounds are the lowest/highest passing samples on a 1…20 grid at 0.125 intervals; inspect the full candidate set for disconnected ranges. Apply the selected-ratio pulse-resolved thermal check before choosing a reducer. Blank equilibrium values denote electrothermal runaway in the averaged constant-current model.
The thermal history uses 1,601 uniformly spaced display times over the calculated horizon, with exact advances at all intervening duty boundaries. Temperature maxima also include analytical within-interval extrema, so they do not depend on the display grid. The play indicator uses shape-preserving cubic interpolation between display times and may smooth a very short pulse; the computed peak does not. Current settling, inductive energy at transitions, spatial hot spots, temperature-dependent magnets, iron losses varying with speed, and cooling changes with airflow are not resolved. Add measured omitted heat through the housing-loss input.
Bandwidth and IMF are configuration dependent. The rigid-drive directional IMF assumes the drive remains inertially coupled during contact; with a finite series spring, the ideal instantaneous impulse sees the elastic-drive IMF instead. Neither is the full three-dimensional determinant IMF of an articulated robot. Modal damping is assumed, and torque response is linearized below current/voltage saturation. A high half-power crossing beyond a resonance does not imply flat or stable torque tracking. Backdrive friction here is an unpowered no-load Coulomb/viscous approximation and does not model wedging or load-dependent reverse efficiency.
Screening always evaluates both running and jumping block definitions; their durations control the transient history. Omit a load from both screening and the transient by setting its torques to zero.
The thermal history stops at the first winding-limit crossing, or if the housing reaches a 200 °C reporting cutoff. The latter is a numerical/model reporting boundary, not a housing rating. The history-end result gives the crossing time; peaks and temperature margin cover only that finite history. An early-stop verdict means the remainder of the requested schedule was not calculated. Playback ends at the same event. The positive-exponent step bound prevents exponential overflow before detecting it; no nonfinite values are passed to the charts or thermal drawing.
References
- Wensing, P. M. et al. (2017), Proprioceptive Actuator Design in the MIT Cheetah, IEEE T-RO 33(3), 509–522. https://doi.org/10.1109/TRO.2016.2640183 — author manuscript: https://hdl.handle.net/1721.1/119863
- Katz, B. G. (2018), A Low Cost Modular Actuator for Dynamic Robots, MIT S.M. thesis, especially pp. 25–27, 38, 42–44 and 53–55. https://hdl.handle.net/1721.1/118671
Inputs
| Input | Symbol | Unit | Default |
|---|---|---|---|
| Gear ratio Motor speed divided by joint speed. | N_g | 6 | |
| Low-current torque constant Use torque per peak phase amp, equal to i_q with amplitude-invariant FOC. | K_t | N*m/A | 0.082 |
| Peak phase current | I_pk | A | 40 |
| Torque constant drop at peak Fractional saturation drop at the peak current. | s_sat | 0.12 | |
| Rotor inertia | J_m | g*cm^2 | 600 |
| Gear inertia at joint Add the gearbox's output-equivalent rotating inertia. | J_g | g*cm^2 | 1399.9999999999998 |
| Mesh efficiency Load-dependent efficiency; no-load friction is entered separately. | eta_g | 0.95 | |
| Motor Coulomb friction | T_c | N*m | 0.012 |
| Motor viscous friction | b_m | mN*m*s/rad | 0.04 |
| Gearbox breakaway torque | T_g | N*m | 0.08 |
| Phase resistance at 25 °C Use phase-to-neutral resistance, half the line-to-line value for a star winding. | R_25 | ohm | 0.13 |
| Phase inductance | L_q | uH | 30 |
| Pole pairs | p_p | 21 | |
| DC bus voltage | V_dc | V | 24 |
| Current-loop bandwidth Measured small-signal bandwidth, or the pole-zero-cancelled PI target. | f_i | Hz | 1000 |
| Modal damping ratio | zeta_m | 0.08 | |
| Supported body mass Effective body mass participating in this one-dimensional contact. | m_b | kg | 9 |
| Moving leg mass | m_l | kg | 0.5 |
| Joint-to-foot moment arm Local foot displacement per radian of joint rotation. | r_j | m | 0.1 |
| Foot-ground stiffness | k_i | N/m | 200000 |
| Transmission torsional stiffness | k_s | N*m/rad | 10000 |
| Required torque bandwidth | f_req | Hz | 30 |
| Minimum directional IMF 0 means locked-joint impact inertia; larger values mean more passive mitigation. | xi_req | 0.8 | |
| Maximum breakaway torque | T_back | N*m | 0.5 |
| Running stance torque | T_run | N*m | 6 |
| Running swing torque | T_swing | N*m | 0.8 |
| Running joint speed Magnitude used for motoring voltage and friction loss in both running phases. | w_run | rad/s | 8 |
| Stride period | P_run | s | 0.4 |
| Stance fraction | d_run | 0.35 | |
| Running duration | t_run | s | 120 |
| Jump pulse torque | T_jump | N*m | 14 |
| Between-jump torque | T_rest | N*m | 0.5 |
| Jump joint speed Magnitude during each jump pulse; between jumps the joint is stationary. | w_jump | rad/s | 12 |
| Jump period | P_jump | s | 2 |
| Jump pulse duration | t_pulse | s | 0.15 |
| Jumping block duration | t_jump | s | 20 |
| Cooling duration | t_cool | s | 60 |
| Ambient temperature | T_a | °C | 25 |
| Winding temperature limit | T_lim | °C | 100 |
| Winding-to-housing resistance Identify from a winding and housing temperature step test. | R_wh | K/W | 0.35 |
| Housing-to-ambient resistance | R_ha | K/W | 0.88 |
| Winding heat capacity | C_w | J/K | 32 |
| Housing heat capacity | C_h | J/K | 120 |
| Resistance coefficient at 25 °C | alpha_cu | 1/K | 0.00385 |
| Other housing heat Driver and other losses deposited in the housing, including while cooling. | P_aux | W | 1 |
| Transient play time | t_view | s | 120.075 |
Results
With the default inputs above, the calc gives:
| Result | Value |
|---|---|
| Selected design | Screening targets met |
| Lowest screened ratio | 5.25 |
| Highest screened ratio | 16.5 |
| Reflected rotor and gear inertia | 0.0023 kg·m² |
| Passive breakaway torque | 0.152 N·m |
| Rigid-drive directional IMF | 0.924 |
| Mechanical bandwidth | 82.8 Hz |
| Current-loop bandwidth | 1,000 Hz |
| Cascaded first −3 dB crossing | 132 Hz |
| Bandwidth bottleneck | Mechanical compliance |
| Peak joint torque at stall | 16.3 N·m |
| Continuous joint torque at stall | 6.96 N·m |
| Required jump i_q | 33.01 A |
| Worst-block RMS phase current | 6.46 A |
| Hot motoring voltage headroom | 4.27 V |
| Calculated winding peak | 39.94 °C |
| Calculated housing peak | 34.35 °C |
| Winding temperature margin | 60.06 K |
| Thermal history end | 200 s |
Checked against sources
Each case below was calculated by this calc and agrees with the value from its source (within the tolerance where one is shown).
Wensing rigid-drive mechanical frequency
Source: Wensing et al. (2017), Fig. 4 and following discussion, DOI 10.1109/TRO.2016.2640183. Figure inputs give 79.8806 Hz by Eq. (8), versus the stated 79.7 Hz; the 0.18 Hz difference is consistent with a rounded example, so tolerance is 0.25 Hz. The equations and inputs are retained.
Inputs: Gear ratio = 1; Rotor inertia = 100,000 g·cm²; Gear inertia at joint = 0 g·cm²; Supported body mass = 32 kg; Moving leg mass = 3 kg; Foot-ground stiffness = 1,000,000 N/m; Transmission torsional stiffness = 70 N·m/rad; Running stance torque = 0 N·m; Running swing torque = 0 N·m; Jump pulse torque = 0 N·m; Between-jump torque = 0 N·m; Motor Coulomb friction = 0 N·m; Gearbox breakaway torque = 0 N·m; Motor viscous friction = 0 mN·m·s/rad; Running joint speed = 0 rad/s; Jump joint speed = 0 rad/s; Running duration = 0 s; Jumping block duration = 0 s; Cooling duration = 1 s; Other housing heat = 0 W; the others as above.
| Result | Source | This calc |
|---|---|---|
| Rigid-transmission mechanical bandwidth | 79.7 ± 0.25 Hz | 79.881 Hz |
Wensing 70 N·m/rad compliant drive
Source: Wensing et al. (2017), Fig. 4 discussion and Eq. (20), DOI 10.1109/TRO.2016.2640183. I=0.010 kg·m², mb=32 kg, ml=3 kg, r=0.1 m, ki=10^6 N/m, ks=70 N·m/rad. Published value rounded to 0.1 Hz.
Inputs: Gear ratio = 1; Rotor inertia = 100,000 g·cm²; Gear inertia at joint = 0 g·cm²; Supported body mass = 32 kg; Moving leg mass = 3 kg; Foot-ground stiffness = 1,000,000 N/m; Transmission torsional stiffness = 70 N·m/rad; Running stance torque = 0 N·m; Running swing torque = 0 N·m; Jump pulse torque = 0 N·m; Between-jump torque = 0 N·m; Motor Coulomb friction = 0 N·m; Gearbox breakaway torque = 0 N·m; Motor viscous friction = 0 mN·m·s/rad; Running joint speed = 0 rad/s; Jump joint speed = 0 rad/s; Running duration = 0 s; Jumping block duration = 0 s; Cooling duration = 1 s; Other housing heat = 0 W; the others as above.
| Result | Source | This calc |
|---|---|---|
| Mechanical bandwidth | 13.5 ± 0.06 Hz | 13.474 Hz |
Katz forced-air 50 W steady temperature
Source: Katz (2018), §2.5.3, p.54: forced-air measured winding rise 17 K at 50 W, giving 42 °C at 25 °C ambient. Synthetic motor settings generate exactly 50 W throughout both running phases. The thermal resistances sum to the reported 0.34 K/W; capacities of 1 J/K ensure steady state by 10 s. This validates total steady thermal resistance, not the unmeasured split or transient capacities.
Inputs: Gear ratio = 1; Low-current torque constant = 0.1 N·m/A; Torque constant drop at peak = 0; Mesh efficiency = 1; Motor Coulomb friction = 0 N·m; Motor viscous friction = 0 mN·m·s/rad; Gearbox breakaway torque = 0 N·m; Phase resistance at 25 °C = 0.3333 Ω; Resistance coefficient at 25 °C = 0 1/K; Running stance torque = 1 N·m; Running swing torque = 1 N·m; Jump pulse torque = 0 N·m; Between-jump torque = 0 N·m; Running joint speed = 0 rad/s; Jump joint speed = 0 rad/s; Running duration = 10 s; Jumping block duration = 0 s; Cooling duration = 0 s; Winding-to-housing resistance = 0.1 K/W; Housing-to-ambient resistance = 0.24 K/W; Winding heat capacity = 1 J/K; Housing heat capacity = 1 J/K; Other housing heat = 0 W; the others as above.
| Result | Source | This calc |
|---|---|---|
| Calculated winding peak | 42 ± 0.1 °C | 42 °C |
| Running copper heat at ambient | 50 W | 50 W |

Responses