3.5.49Guidance, Navigation & Control (GNC)

Control moment gyroscopes (CMG) — high torque, singularity

2,261 words10 min readdifficulty · medium1 backlinks

WHY do we need CMGs at all?

Spacecraft need to reorient (slew) fast — imaging satellites, the ISS, telescopes. Two ways to make internal torque without expelling fuel:

  • Reaction wheel: change wheel speed \Rightarrow torque =Iω˙=I\dot\omega. To get big torque you need big angular acceleration, which costs a lot of motor power and saturates quickly.
  • CMG: keep wheel speed fixed, rotate its axis \Rightarrow torque =Ω×h=\Omega \times h, where hh is already large. Small gimbal rate Ω\Omega, huge torque. This is torque amplification.

HOW a single CMG makes torque — derive it

First principles. Newton–Euler for rotation says torque = rate of change of angular momentum: τ=dhdt.\vec\tau = \frac{d\vec h}{dt}.

Since h=hh=|\vec h| is constant, only s^\hat s rotates. If the gimbal rotates s^\hat s about the gimbal axis g^\hat g at rate Ω=δ˙\Omega = \dot\delta (gimbal angle δ\delta), then a rotating unit vector obeys ds^dt=Ω×s^,Ω=δ˙g^.\frac{d\hat s}{dt} = \vec\Omega \times \hat s,\qquad \vec\Omega = \dot\delta\,\hat g.

Why this step? A vector of fixed length that is being rotated by an angular velocity Ω\vec\Omega always changes as Ω×(vector)\vec\Omega\times(\text{vector}) — that's the definition of rotation. Multiply through by hh:


Multiple CMGs: the Jacobian and total momentum

One CMG only torques in a plane. To control all 3 axes you use a cluster (typically 4, in a pyramid). Let each CMG ii have gimbal angle δi\delta_i; the total stored momentum is H(δ)=ihi(δi).\vec H(\vec\delta)=\sum_i \vec h_i(\delta_i).

The output torque on the body is τ=H˙=ihiδiδ˙i=A(δ)δ˙,\vec\tau = -\dot{\vec H} = -\sum_i \frac{\partial \vec h_i}{\partial \delta_i}\dot\delta_i = -A(\vec\delta)\,\dot{\vec\delta}, where the Jacobian A(δ)=[h1δ1    hnδn]R3×n.A(\vec\delta) = \left[\frac{\partial \vec h_1}{\partial\delta_1}\ \Big|\ \cdots\ \Big|\ \frac{\partial \vec h_n}{\partial\delta_n}\right]\in\mathbb R^{3\times n}.

Why a Jacobian? It's just the chain rule: each column tells you which direction that CMG can push right now, given its current gimbal angle. To produce a commanded torque τcmd\vec\tau_{cmd} you solve for gimbal rates: δ˙=A+τcmd,A+=AT(AAT)1 (pseudo-inverse).\dot{\vec\delta} = -A^{+}\,\vec\tau_{cmd},\qquad A^{+}=A^{T}(AA^{T})^{-1}\ \text{(pseudo-inverse).}


WHAT is a singularity?

A useful singularity measure: m=det(AAT) singular 0.m = \sqrt{\det(A A^{T})}\ \xrightarrow{\text{singular}}\ 0.

Escapable vs. trapped

  • Hyperbolic (escapable): nearby gimbal motions exist that reduce momentum away from the wall — steer around it.
  • Elliptic / internal (trapped): every escape requires momentarily building momentum toward u^\hat u; standard steering gets stuck. Handled with null-motion and singularity-robust (SR) inverse: δ˙=AT(AAT+λI)1τcmd+(IA+A)d.\dot{\vec\delta} = -A^{T}(AA^{T}+\lambda I)^{-1}\vec\tau_{cmd} + (I-A^{+}A)\,\vec d.
Figure — Control moment gyroscopes (CMG) — high torque, singularity

Worked examples


Active recall

Recall Cover the answers first — predict, then verify (Forecast-then-Verify)
  • What quantity is held constant in a CMG, and what is varied? ⇒ spin rate constant; gimbal angle varied.
  • Give the torque formula and its direction. ⇒ τ=Ω×h\vec\tau=\vec\Omega\times\vec h, perpendicular to both g^\hat g and h\vec h.
  • Define a singularity in one line. ⇒ Jacobian AA loses rank; a direction u^\hat u exists with no achievable torque.
  • Name two escape strategies. ⇒ SR-inverse (λI\lambda I) and null motion (IA+A)d(I-A^{+}A)\vec d.
Recall Feynman: explain to a 12-year-old

Imagine spinning a bicycle wheel and holding it by its axle. It fights you when you try to turn the axle — and when you do turn it, you feel it push sideways in a weird direction. A CMG uses that weird sideways push to steer a spacecraft. It's efficient because the wheel is already spinning hard, so a gentle tilt gives a big push. But if you have four such wheels and they all end up able to push only left–right, then "up" becomes impossible — that stuck situation is the "singularity," and clever software wiggles the wheels around to avoid it.


Connections


CMG core idea: what's constant, what's actuated?
Wheel spin rate is constant; the gimbal angle (spin-axis orientation) is actuated.
CMG output torque formula
τ=Ω×h=δ˙g^×h\vec\tau = \vec\Omega\times\vec h = \dot\delta\,\hat g\times\vec h, magnitude hδ˙sinθh\dot\delta\sin\theta.
Direction of CMG output torque
Perpendicular to both the gimbal axis g^\hat g and the wheel momentum h\vec h.
Why CMG gives "high torque" vs a reaction wheel
It redirects an already-large stored momentum hh with a small gimbal rate, so torque =hδ˙=h\dot\delta amplifies a small input; reaction wheels need large ω˙\dot\omega.
Definition of a CMG singularity
Gimbal configuration where the Jacobian AA loses rank; a direction u^\hat u exists with u^TA=0\hat u^T A=0 so no torque is achievable there.
Singularity measure
m=det(AAT)m=\sqrt{\det(AA^{T})}; it goes to 0 at a singularity.
Why gimbal rates blow up near singularity
A+A^{+} inverts AATAA^{T}; a near-zero eigenvalue makes the inverse huge, demanding infinite gimbal rate.
Two singularity-avoidance methods
Singularity-robust (damped) inverse AT(AAT+λI)1A^T(AA^T+\lambda I)^{-1} and null motion (IA+A)d(I-A^{+}A)\vec d.
What is null motion?
Gimbal motion in the null space of AA that reconfigures the cluster while producing zero net output torque.
Escapable vs trapped singularity
Hyperbolic = escapable via nearby gimbal motion; elliptic/internal = trapped, needs SR-inverse/null motion.

Concept Map

option A

option B

torque = I omega-dot

constant spin rate

gimbal tilts axis

h fixed, only s rotates

multiply by h

small Omega, large h

tau perp to g and h

wheels align

Need fast slew without fuel

Reaction wheel

Control moment gyroscope

Limited by motor spin-up, saturates

Stored momentum h

Gimbal rate Omega

Newton-Euler tau = dh/dt

ds/dt = Omega x s

tau = Omega x h

Torque amplification

Output in plane perp to gimbal axis

Singularity, dead direction

Hinglish (regional understanding)

Intuition Hinglish mein samjho

Dekho, CMG ka funda simple hai: ek flywheel constant speed pe ghoom raha hai, uska angular momentum h\vec h bahut bada hai. Hum wheel ki speed nahi badalte — bas uske spin axis ko thoda tilt karte hain (gimbal). Jab aap ek badi momentum vector ko ghumate ho to τ=Ω×h\vec\tau=\vec\Omega\times\vec h ke according ek bada torque milta hai, wo bhi choti si gimbal rate se. Isi liye CMG "high torque" deta hai — reaction wheel ki tarah pura wheel spin-up nahi karna padta, sirf tilt karna hai. Yeh lever jaisa amplification hai.

Ek important baat: torque hamesha gimbal axis aur h\vec h dono ke perpendicular nikalta hai. Log yahan galti karte hain — sochte hain motor jis axis pe twist karta hai, torque bhi wahin milega. Lekin cross product ki wajah se output 90 degree side me chala jaata hai. Yeh gyroscopic precession hai, aur yahi CMG ka jaadu bhi hai aur problem bhi.

Ab singularity: teen axes control karne ke liye 4 CMG ka cluster (pyramid) lagate hain. Har CMG sirf apne plane me push kar sakta hai. Jab saare CMG aise arrange ho jayein ki sabka push ek hi plane me aa jaaye, to ek direction u^\hat u aisi ho jaati hai jahan koi bhi combination torque nahi de sakta — yeh singularity hai. Maths me matrix AA ka rank gir jaata hai, aur pseudo-inverse me chota eigenvalue hone se gimbal rate infinity tak chala jaata hai (motor saturate ho jaata hai).

Isse bachne ke do trick: singularity-robust inverse (λI\lambda I add karke rate ko finite rakhna, thodi accuracy sacrifice karke), aur null motion — matlab gimbals ko aise hilaana ki net torque zero rahe par cluster acchi position me aa jaaye. Yeh sab isliye important hai kyunki satellites, telescopes aur ISS bina fuel jalaye fast slew karne ke liye CMG use karte hain.

Go deeper — visual, from zero

Test yourself — Guidance, Navigation & Control (GNC)

Connections