Humanoid Reaction Wheel and CMG Balance Sizing

Size a humanoid reaction wheel or scissored CMG pair for push and post-slip recovery. Compare angular momentum, rotor size, speed, torque and gimbal saturation with nonlinear recovery dynamics.

#actuator saturation #control moment gyroscope #gyroscopic coupling #humanoid balance #reaction wheel

A reaction wheel balance robot can reject a short push by transferring angular momentum from its body into a spinning rotor. A control moment gyroscope redirects an already spinning rotor instead. Both strategies have a finite momentum envelope: a powerful actuator can still run out of wheel speed or gimbal travel before the robot recovers.

This calculator supports early humanoid actuator design and laboratory balance studies. It connects the disturbance, the robot's centroidal inertia and the desired recovery time to rotor inertia, wheel speed, motor torque and CMG gimbal requirements. The default case represents a 60 kg robot recovering with a pair of counter-rotating, oppositely gimballed rotors.

Start with the complete supported mass, the distance from the stationary support to the center of mass, and the body inertia about the balance axis. Include rotor and housing mass in the supported mass. Exclude freely spinning rotor axial inertia from the body inertia: the model tracks that momentum separately. Use either a horizontal push impulse and its application distance, or the tangential CoM speed remaining after a slip has ended and a stationary contact has been restored. This is not a simulation of a foot sliding across the floor.

Choose the target recovery time and enter rotor dimensions or a known axial inertia from CAD or measurement. An annulus with zero bore ratio is a solid disk. For reaction wheel sizing, enter the initial speed, available motor torque and shaft power. For control moment gyroscope sizing, enter regulated spin speed, initial gimbal angle, stroke, rate, gimbal inertia, servo response and drive torque. The pair cancels the unwanted orthogonal gyroscopic torque.

The tool constructs a smooth lean trajectory ending upright and at rest, then integrates the required angular momentum exchange. A separate nonlinear simulation applies actuator limits and follows that trajectory with feedback. Play the recovery to see body lean and CMG precession. The momentum chart reveals saturation, while the recovery-time sweep shows why a slower response does not always require a smaller wheel: gravity has longer to add angular momentum.

The minimum diameter uses the entered rotor mass and bore ratio; it is an inertia-equivalent dimension, not a structural rotor design. Motor power shown for the equivalent reaction wheel is mechanical shaft power, including regenerative operation. Gimbal drive torque includes assembled rotor-plus-frame inertia and reciprocal gyroscopic loading. Enter the inertia of the complete gimballed unit; it must include the rotor's transverse inertia, which is at least half its axial inertia. If the torque-limited motor cannot restrain passive precession below the entered rate, the simulation ends and reports that limit. The selected actuator verdict checks its planned limits; the recovery verdict checks the simulated final attitude, body rate and contact feasibility.

This fixed-contact planar model does not cover stepping, active ankle torque, changing limb inertia, three-dimensional gait, rotor stress, containment, bearing life, thermal duty or electrical supply sizing. A successful recovery leaves momentum to unload through external contact torque or a later step. It does not establish readiness for repeated disturbances.

How it is calculated

The centroidal-inertia description follows Lee and Goswami (2007), especially the planar RMP in section III.B, attached PDF page 4. Here its leg length and body inertia are fixed, and lean θ is measured from upright. A separate physical rotor exchanges momentum with the body; this is not the paper's full variable-inertia humanoid mapping.

For a horizontal short impulse J at distance ℓp along the body, the support angular impulse is Jℓp cosθ₀. The body rate immediately afterward is ω₀ = Jℓp cosθ₀ / Iₚ, with Iₚ = Ibody + Mℓ². Alternatively ω₀ = vslip/ℓ for the tangential post-slip speed. The body's initial centroidal momentum is Ibody ω₀; support angular impulse and centroidal momentum are different quantities.

A quintic θd(t) matches initial angle and rate, starts with zero angular acceleration, and ends at θ = θ̇ = θ̈ = 0 at the chosen recovery time. The nonlinear inverse torque is u = Mgℓ sinθd − Iₚ θ̈d. Trapezoidal integration gives ΔH(t) = ∫u dt on 801 time points, including gravity throughout recovery.

An annular rotor has Iw = mw Ro²(1 + bore²)/2. A reaction wheel stores H = Iw ωabsolute; its bearing speed is H/Iw − θ̇. Both signed speed limits, motor torque and symmetric motoring/regeneration shaft-power limits are checked. Initial wheel speed is specified before the impulse, while the body is stationary.

For the scissored CMG pair, each rotor has h = Iw Ω and the useful momentum is H = 2h sinδ. Therefore body reaction torque is −2h cosδ δ̇: the finite-angle projection is retained. This is the momentum-vector precession relation treated by Wie (2008), with the paired arrangement verified by Park and Cho (2018), equations (3)–(5). With the same sign convention, reciprocal per-gimbal drive torque is Q = Ig δ̈ − h θ̇ cosδ, consistent with Xu et al. (2022), equation (3). At zero drive, δ̈ = h θ̇ cosδ / Ig: the resulting gyroscopic power gained by the gimbals equals the power lost by the body.

Minimum inertia enforces both signed wheel speed boundaries, or both CMG stroke boundaries and the instantaneous gimbal-rate boundary. The latter is solved analytically as a quadratic inequality in 2IwΩ, retaining the initial gimbal angle. The CMG drive-torque check remains separate because increasing inertia also increases gyroscopic drive load. The diameter maps that inertia onto the entered mass and bore ratio.

The achieved motion solves Iₚ θ̈ = Mgℓ sinθ − u and Ḣ = u using adaptive Dormand–Prince integration (ode45, relative tolerance 10⁻⁶), with feedforward and critically damped tracking at natural frequency 6/T. CMG rate servo dynamics, assembled rotor-plus-gimbal inertia and drive torque saturation are included. The requested gimbal rate is limited using the rated speed and directional braking distance. Actual acceleration always follows δ̈ = (Q + h θ̇ cosδ)/Ig with |Q| ≤ Qmax. If the drive cannot restrain the actual rate, the simulation ends at the rated operating boundary and reports the loss of rate control. Ground reactions follow the exact circular CoM acceleration. The simulation continues to 1.5T or stops at 45° lean, loss of normal contact, CMG stroke exhaustion or an uncontrollable gimbal rate. Initial normal force is checked before a recovery can start. Delivered torque and gimbal acceleration are evaluated directly from the dynamics, rather than differentiating sampled momentum. The plotted duration sweep solves 81 independent recovery plans.

Assumptions

One balance plane, one stationary point support, rigid constant-length body and constant body centroidal inertia. The wheel or symmetric CMG pair is centered at the CoM. No active ankle moment or stepping is credited. The short disturbance acts before the recovery clock starts, with no impulsive motor torque. Slip mode begins after contact has stopped sliding. Positive disturbance and lean share a sign.

CMG rotors are axially symmetric. Spin is regulated and opposite in the two units; gimbals mirror each other. The gimbal-inertia input is the complete rotor-plus-frame inertia about the gimbal axis. It must be at least Iw/2; rotor thickness and frame inertia add to that minimum. Rotor transverse and housing inertia are included in the user-supplied body inertia and treated as constant. The standard high-spin CMG approximation omits nutation, flexibility, spin regulation errors and rotor transverse-inertia variation with gimbal angle. Motor torque and mechanical power limits are symmetric. The feedback controller and recovery trajectory are derived for this tool, not claimed as Lee–Goswami's inertia-shaping controller.

Where it applies

A planned actuator limit pass applies only to this trajectory. The separate recovery verdict requires final lean within 0.5°, body rate within 1°/s, positive normal contact, sufficient entered friction and completion within the gimbal rate and stroke envelope. If the friction check fails, the fixed-contact trajectory is infeasible; sliding is not integrated. Gimbal drive demand is an ideal inverse-trajectory value; the actual servo starts at zero rate and its startup transient is included in the forward simulation.

The minimum rotor inertia covers speed/stroke and gimbal rate only. Check torque, shaft power and gimbal drive demand as well. Enlarging a rotor changes complete robot mass and body inertia: update those inputs and repeat. Equivalent reaction-wheel power and CMG drive outputs permit comparison; the two verdicts apply to the selected actuator. Clipped inverse CMG angles stop at 90° when momentum is impossible; the stroke utilization still identifies the infeasible requirement.

Recovery is one event followed by a short upright hold. Residual momentum must be removed through an external torque, ankle strategy or stepping; a wheel or CMG cannot remove net system momentum by itself. Rotor stress, containment, fatigue, balancing, bearings, electronics, energy conversion and repeated-event heating require separate design.

The adaptive ODE solver uses relative tolerance 10⁻⁶ and reports 1201 samples over 1.5T. An internal physical clock stops at the first contact, lean, CMG stroke or uncontrollable-rate boundary; solver interpolation can overshoot a boundary slightly within tolerance. The rate controller limits its command and its motor torque, while passive precession remains in the acceleration equation. Reaching a gimbal boundary ends the rated recovery trajectory; stop impacts and operation beyond the rated rate are not calculated. The wheel speed controller uses a look-ahead of at most 1.5 ms. The inverse plan has 801 points, and the 81-point duration sweep uses 401 integration points per plan. PCHIP interpolates the cached trajectory for animation only. The view is a normalized schematic; dimension labels carry physical size.

References

  • Lee, S.-H. and Goswami, A. (2007). Reaction Mass Pendulum (RMP): An explicit model for centroidal angular momentum of humanoid robots. ICRA, pp. 4667–4672. DOI: https://doi.org/10.1109/ROBOT.2007.364198 ; author manuscript https://www.ambarish.com/paper/Lee_Goswami_ICRA2007.pdf
  • Wie, B. (2008). Space Vehicle Dynamics and Control, second edition, AIAA. CMG momentum-vector precession and saturation background. DOI: https://doi.org/10.2514/4.860119 (bibliographic reference; full text not accessed).
  • Park, J.-H. and Cho, B.-K. (2018). Development of a self-balancing robot with a control moment gyroscope. International Journal of Advanced Robotic Systems. DOI: https://doi.org/10.1177/1729881418770865 ; open article https://journals.sagepub.com/doi/full/10.1177/1729881418770865
  • Astro- und Feinwerktechnik Adlershof (2023). ASTROFEIN Reaction Wheel Family, April 2023, p. 1. https://www.astrofein.com/wp-content/uploads/2023/04/ASTROFEIN-Reaction-Wheel-Family_20230425.pdf
  • Xu, H. et al. (2022). Disturbance rejection for biped robots during walking and running using control moment gyroscopes. IET Cyber-Systems and Robotics 4(4), 268–282, especially equations (3) and (8). https://doi.org/10.1049/csy2.12070 ; open article https://ietresearch.onlinelibrary.wiley.com/doi/full/10.1049/csy2.12070

Inputs

InputSymbolUnitDefault
Momentum actuatordeviceScissored CMG pair
Total supported mass
Include the complete actuator and its housing.
M_robotkg60
Support-to-CoM distanceL_comm0.9
Body centroidal inertia
Use CAD inertia about the balance axis, excluding free rotor axial spin inertia.
I_bodykg*m^27
Initial lean
Positive lean and disturbance act in the same forward direction.
lean_0deg2
Disturbance inputdisturbanceHorizontal push impulse
Push impulse
Force integrated over the short push.
J_pushN*s8
Support-to-push distance
Distance along the body to the horizontal push.
L_pushm0.9
Post-slip tangential CoM speed
Velocity after a stationary support contact is re-established.
v_slipm/s0.15
Target recovery timeT_recs0.8
Available friction coefficientmu_contact0.6
Rotor inertia inputinertia_modeAnnular rotor dimensions
Mass per rotorm_rotorkg4
Outer rotor radiusR_rotorm0.18
Inner / outer radius
Used for annular inertia and the equivalent minimum rotor diameter.
bore_ratio0.35
Axial inertia per rotorI_knownkg*m^20.072738
Rotor speed limit
Reaction wheel: relative to body; CMG: regulated spin speed.
n_limitrpm6000
Wheel speed before pushn_startrpm0
Motor torque limit
Use torque available at the rotor after gearing.
T_motorN*m60
Shaft power limit
The same limit is applied to motoring and regenerative braking.
P_motorW8000
CMG spin speedn_spinrpm5000
Initial gimbal angle
The second gimbal mirrors the first.
delta_0deg0
Gimbal angle limitdelta_limitdeg70
Gimbal rate limitrate_limitrad/s3
Rotor-plus-gimbal inertia
Total inertia of one rotor and its frame about the gimbal axis.
I_gimbalkg*m^20.05
Drive torque per gimbalQ_gimbalN*m20
Gimbal rate response time
First-order rate command tracking before drive torque saturation.
t_servos0.02
Recovery timet_plays0.18

Results

With the default inputs above, the calc gives:

ResultValue
Actuator sizingPlanned actuator limits met
Simulated recoveryUpright hold reached
Peak required balance torque79.429 N·m
Peak added actuator momentum25.726 N·m·s
Installed inertia per rotor0.0727 kg·m²
Minimum inertia: speed, stroke and rate0.0281 kg·m²
Equivalent minimum rotor diameter0.224 m
Required operating rotor speed5,000 1/min
Peak total rotor kinetic energy19,942 J
Signed added momentum to unload18.972 N·m·s
Final body lean0.005 deg
Peak body lean2.972 deg
Required friction coefficient0.097
Equivalent RW shaft power17,084 W
Required CMG gimbal rate1.054 rad/s
Required drive torque per gimbal4.931 N·m
Required CMG gimbal angle19.74 deg

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).

Astrofein RW100 published momentum

Source: Astrofein Reaction Wheel Family, April 2023, p. 1: RW100 inertia 6.52×10⁻⁴ kg·m², momentum 0.4 N·m·s at 6000 rpm. Manufacturer rounding allowed; checks momentum storage, not complete robot recovery.

Inputs: Momentum actuator = Reaction wheel; Rotor inertia input = Known rotor inertia; Axial inertia per rotor = 6.52 × 10⁻⁴ kg·m²; Push impulse = 0 N·s; Initial lean = 0 deg; the others as above.

ResultSourceThis calc
Wheel momentum headroom0.4 ± 0.015 N·m·s0.4097 N·m·s

Astrofein RW150 published momentum

Source: Astrofein Reaction Wheel Family, April 2023, p. 1: RW150 inertia 1.592×10⁻³ kg·m², momentum 1.0 N·m·s at 6000 rpm. Independent manufacturer specification with rounding.

Inputs: Momentum actuator = Reaction wheel; Rotor inertia input = Known rotor inertia; Axial inertia per rotor = 0.001592 kg·m²; Push impulse = 0 N·s; Initial lean = 0 deg; the others as above.

ResultSourceThis calc
Wheel momentum headroom1 ± 0.002 N·m·s1 N·m·s

Park–Cho CMG torque measurement

Source: Park and Cho (2018), Experiment for the CMG module, DOI 10.1177/1729881418770865: two rotors, each 5.71×10⁻³ kg·m² at 3000 rpm, gimbal rate 4.7 rad/s, measured 15.1 N·m. The listed parameters give 16.86 N·m, whereas the paper states 14.8 N·m calculated; that arithmetic is inconsistent. A 1.9 N·m absolute comparison tolerance covers the measurement difference, rather than adjusting inertia to fit it. https://journals.sagepub.com/doi/full/10.1177/1729881418770865

Inputs: Rotor inertia input = Known rotor inertia; Axial inertia per rotor = 0.00571 kg·m²; CMG spin speed = 3,000 rpm; Gimbal rate limit = 4.7 rad/s; Initial lean = 0 deg; Push impulse = 0 N·s; the others as above.

ResultSourceThis calc
CMG torque at initial gimbal angle15.1 ± 1.9 N·m16.862 N·m

Related Resources

Responses

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

L ading...