labcd · 2026-10-02 · 11 min

Why Nominal Phase Margin Fails to Stop Actuator Rattle

Tuning loops solely to gain and phase margins leaves dangerous sensitivity peaks. Here is how high peak sensitivity drives motor chatter and how to audit it.

Oscilloscope displaying frequency response and sensitivity curves next to an instrumented robotic actuator test bench

Public exhibitions and live field trials continue to produce a familiar, embarrassing spectacle for robotics teams: an articulated robot begins buzzing, heating its motor drives, and vibrating violently until an emergency stop is triggered. When a humanoid or multi-axis arm runs wild on a showroom floor or during a lab demonstration, the initial autopsy almost always targets mechanical backlash, poor PCB grounding, or remote communication lag. Yet when engineers inspect the firmware, they often find the servo loops were signed off with textbook stability credentials: a 50-degree phase margin and an 8 dB gain margin.

Those classical single-input single-output metrics look impeccable on a standard Bode plot. On the physical plant, however, the actuator draws excessive idle current, runs hot, and chatters at high frequencies. The loop is technically stable in the classical sense, but it is fragile. The root cause is a high sensitivity peak ($M_s$), a blind spot in conventional frequency-domain workflows that amplifies benign encoder quantization, pulse-width modulation (PWM) ripple, and high-frequency sensor noise directly into the motor bridge.

For control engineers, roboticists, and university lab directors, understanding why nominal phase margin fails to prevent actuator rattle is the difference between a prototype that survives real-world disturbances and one that shakes its own gearboxes apart.

The Blind Spot in Classical Margins

Classical gain margin ($G_m$) and phase margin ($P_m$) measure stability along two isolated axes on the complex plane. Gain margin tells you how much the loop gain can scale before the open-loop transfer function $L(j\omega)$ crosses the negative real axis at $-180^\circ$ with unity magnitude. Phase margin tells you how much pure phase lag the system can tolerate at the gain crossover frequency $\omega_c$, where $|L(j\omega)| = 1$.

Both metrics measure clearance to the critical point $(-1, 0)$ in the complex plane, but they only measure it along orthogonal slices. Gain margin tests clearance along the negative real axis. Phase margin tests clearance along the unit circle. Neither metric guarantees that the Nyquist contour of $L(j\omega)$ stays far away from $(-1, 0)$ at intermediate frequencies between the phase crossover and gain crossover.

                  Imaginary Axis
                        ^
                        |        * (Nyquist Curve L(j w))
                        |       / 
                        |      /  <-- Sweeps dangerously close to (-1,0)
                        |     /       without crossing unit circle or axis!
      Critical Point    |    /
          (-1, 0)       |   /
      -------x----------+--/-------------> Real Axis
             |          | /
             |<--Gm---->|/  
             |          |
             v          |

If the Nyquist trajectory curves inward and skims close to $(-1, 0)$ without crossing the unit circle or the real axis, the system records acceptable classical margins while operating with dangerous sensitivity. The mathematical metric that captures this true minimum distance to instability is the sensitivity function, defined as:

$$S(s) = \frac{1}{1 + L(s)}$$

The peak magnitude of this transfer function across all frequencies is denoted as $M_s$:

$$M_s = \max_{\omega} |S(j\omega)| = \max_{\omega} \left| \frac{1}{1 + L(j\omega)} \right| = \frac{1}{\min_{\omega} |1 + L(j\omega)|}$$

Geometrically, $|1 + L(j\omega)|$ represents the Euclidean distance from the open-loop frequency response $L(j\omega)$ to the critical point $(-1, 0)$. Therefore, the maximum sensitivity $M_s$ is the inverse of the shortest distance from the Nyquist plot to $(-1, 0)$.

When a design achieves a nominal phase margin of $45^\circ$ but exhibits an $M_s$ of $3.5$ (approximately $11\text{ dB}$), the Nyquist curve passes within $0.28$ units of total instability. At that frequency, any disturbance or noise entering the loop is magnified by a factor of 3.5 instead of being rejected.

How High Peak Sensitivity Causes Actuator Rattle

In robotic actuators and precision motion stages, high sensitivity peaks manifest as physical vibration, acoustic buzz, and thermal runaway in drive electronics. To understand the mechanism, consider the closed-loop transfer functions governing a standard feedback loop with reference $r$, output $y$, output disturbance $d$, and measurement noise $n$:

$$y(s) = T(s)(r(s) - n(s)) + S(s)d(s)$$

$$u(s) = C(s)S(s)(r(s) - n(s) - d(s))$$

Here, $T(s) = \frac{L(s)}{1 + L(s)}$ is the complementary sensitivity function, $S(s) = \frac{1}{1 + L(s)}$ is the sensitivity function, and $C(s)S(s)$ is the control sensitivity function governing actuator effort $u(s)$.

When a control loop has a large $M_s$ peak, three destructive dynamics occur simultaneously:

1. Noise Amplification at the Sensitivity Peak Frequency

Measurement noise $n$ (originating from magnetic encoder interpolation errors, optical disc runout, or current sensor ADC quantization) contains broad spectral energy. While low frequencies are tracked and high frequencies are attenuated by mechanical inertia, noise frequencies located near the peak sensitivity frequency $\omega_{ms}$ are multiplied by $M_s$.

If $M_s = 4.0$ ($12\text{ dB}$) at $180\text{ Hz}$, encoder quantization steps of $0.01^\circ$ produce synthetic velocity error spikes that the controller scales by a factor of four. The controller vigorously commands torque to correct an error that does not exist physically.

2. High-Frequency Switching in Driver Inverters

Because the derivative or proportional action in $C(s)$ reacts to the amplified noise, the control effort $u(t)$ contains continuous high-amplitude ripple. In field-oriented control (FOC) drives, this injects high-frequency current demands into the $i_q$ (quadrature) current loop.

The motor does not rotate substantially because mechanical rotor inertia acts as a low-pass filter. However, the electrical energy is dissipated directly in the stator winding resistance ($I^2 R$ heating) and switching MOSFETs/IGBTs. Engineers often observe motors reaching $80^\circ\text{C}$ while standing completely still in a holding position.

3. Gearbox Backlash and Bearing Micro-Impacts

The fluctuating torque output $u(t)$ rattles the rotor against planetary gearbox teeth or harmonic drive flexsplines. This mechanical chatter accelerates backlash degradation, damages strain wave gear teeth, and can excite structural resonance in downstream linkages.

Closed-Loop Parameter Conservative Target Aggressive Limit High-Risk Value
Nominal Phase Margin ($P_m$) $\ge 60^\circ$ $45^\circ$ $< 35^\circ$
Nominal Gain Margin ($G_m$) $\ge 8\text{ dB}$ $6\text{ dB}$ $< 3\text{ dB}$
Peak Sensitivity ($M_s$) $1.2\text{ to }1.6$ ($1.6\text{ to }4.1\text{ dB}$) $2.0$ ($6.0\text{ dB}$) $> 3.0$ ($> 9.5\text{ dB}$)
Peak Complementary Sensitivity ($M_t$) $1.0\text{ to }1.25$ ($0\text{ to }1.9\text{ dB}$) $1.5$ ($3.5\text{ dB}$) $> 2.0$ ($> 6.0\text{ dB}$)
Torque Control Effort RMS at Rest $< 0.5%\text{ rated}$ $1.5%\text{ rated}$ $> 5.0%\text{ rated}$

Illustrative Benchmark: The Fragility of Margin-Only Tuning

To see how a high $M_s$ hides behind good phase and gain margins, consider an instrumented robotic joint test bench consisting of a frameless brushless motor driving an elastic load through a 50:1 strain wave gear. This setup represents a standard composite dynamic model for lightweight collaborative robot joints.

+-----------------------------------------------------------------------------------+
| COMPOSITE BENCHMARK SETUP: ROBOTIC JOINT WITH FLEXIBLE COUPLING                   |
| Plant: G(s) = 450 / (s (s + 12) (s^2 + 8s + 900))                                 |
| Sample Rate: 4 kHz | Encoder Resolution: 18-bit BiSS-C | Driver: 48V FOC Inverter |
+-----------------------------------------------------------------------------------+
| Metric                              | Controller A (Margin-Tuned) | Controller B (Robust-Tuned) |
| :---------------------------------- | :-------------------------- | :-------------------------- |
| Proportional Gain ($K_p$)           | 18.5                        | 11.2                        |
| Derivative Time ($T_d$)             | 0.045 s                     | 0.038 s                     |
| 2nd-Order Low-Pass Filter $\omega_f$| None                        | 220 rad/s (Q = 0.707)       |
| Phase Margin ($P_m$)                | 48.2 deg (at 18.4 rad/s)    | 52.1 deg (at 14.1 rad/s)    |
| Gain Margin ($G_m$)                 | 7.8 dB (at 36.2 rad/s)      | 9.4 dB (at 42.0 rad/s)      |
| Peak Sensitivity ($M_s$)            | 3.82 (11.6 dB at 24.5 rad/s)| 1.48 (3.4 dB at 11.8 rad/s) |
| Peak Complementary Sens. ($M_t$)    | 2.95 (9.4 dB)               | 1.18 (1.4 dB)               |
| Idle Motor Housing Temp (30 min)    | 74.2 deg C                  | 38.6 deg C                  |
| Torque Command RMS Noise (at rest)  | 0.42 Nm                     | 0.03 Nm                     |
| Audible Acoustic Rattle (>60 dB)    | Yes (high-pitch buzz)       | No (silent holding)         |
+-----------------------------------------------------------------------------------+

Note: The table above illustrates a composite benchmark derived from linear flexure models and experimental motion drive parameters.

Controller A achieved textbook margins: a $48.2^\circ$ phase margin and a $7.8\text{ dB}$ gain margin. Yet on the bench, Controller A suffered an $M_s$ of $3.82$ ($11.6\text{ dB}$) at $24.5\text{ rad/s}$ ($3.9\text{ Hz}$). Measurement noise from the 18-bit encoder stimulated this resonant envelope, generating $0.42\text{ Nm}$ RMS of parasitic torque chatter. The motor housing climbed to $74.2^\circ\text{C}$ in thirty minutes while merely holding position.

Controller B reduced the loop gain slightly and introduced a second-order Butterworth roll-off filter on the derivative channel. While the phase margin improved by only $3.9^\circ$, the peak sensitivity $M_s$ plummeted from $3.82$ down to $1.48$. As a result, the parasitic torque chatter dropped by more than an order of magnitude, and the motor ran cool at $38.6^\circ\text{C}$.

Calculating the Maximum Sensitivity Vector

Evaluating maximum sensitivity should be mandatory in any automated tuning script or hardware-in-the-loop validation pipeline. Calculating $M_s$ directly from an identified transfer function or frequency response data is straightforward.

Given an open-loop plant model $G(s)$ and a controller $C(s)$, the open-loop transfer function is $L(s) = C(s)G(s)$.

Step 1: Frequency Grid Construction

Construct a logarithmically spaced frequency vector $\omega$ spanning at least two decades below the lowest plant pole to two decades above the controller sampling frequency (or Nyquist frequency $\omega_{Nyq} = \pi / T_s$):

$$\omega = [\omega_{min}, \dots, \omega_{max}]$$

Step 2: Complex Vector Evaluation

Evaluate the complex frequency response array $L(j\omega) = C(j\omega)G(j\omega)$ across all frequencies. From this, compute the sensitivity vector:

$$S(j\omega) = \frac{1}{1 + L(j\omega)}$$

Step 3: Peak Extraction

Extract the scalar peak sensitivity and its corresponding frequency:

$$M_s = \max_{\omega} |S(j\omega)|$$

$$\omega_{ms} = \arg\max_{\omega} |S(j\omega)|$$

If experimental frequency response data (FRD) from a chirp or multisine sine sweep is available, compute $S(j\omega)$ directly from measured input-output arrays without fitting a parametric transfer function. This captures unmodeled flexible resonances and structural modes that analytical models often omit.

Step 4: Margin Relationship Verification

Check how $M_s$ bounds the classical margins. Mathematical stability proofs show that the lower bounds for gain margin and phase margin are strictly governed by $M_s$:

$$G_m \ge \frac{M_s}{M_s - 1}$$

$$P_m \ge 2 \arcsin\left( \frac{1}{2 M_s} \right)$$

If an engineering requirement specifies $M_s \le 1.6$, the system is guaranteed to possess a gain margin of at least $G_m \ge 1.6 / 0.6 = 2.67$ ($8.5\text{ dB}$) and a phase margin of at least $P_m \ge 2 \arcsin(1/3.2) = 36.4^\circ$. Setting a hard constraint on $M_s$ simultaneously enforces a circle of exclusion around $(-1,0)$, preventing both gain and phase degradation.

Step-by-Step Remediation: How to Tame High Sensitivity Peaks

When an identified loop yields an $M_s > 2.0$ ($6\text{ dB}$), engineers should apply a systematic remediation sequence rather than guessing controller gains on live hardware.

+-----------------------------------------------------------------------------+
|                   SENSITIVITY PEAK REMEDIATION WORKFLOW                     |
+-----------------------------------------------------------------------------+
| 1. IDENTIFY PLANT FREQUENCY RESPONSE                                        |
|    Execute swept-sine / chirp to obtain true G(jw) with flexible modes.     |
+-----------------------------------------------------------------------------+
                                      |
                                      v
+-----------------------------------------------------------------------------+
| 2. COMPUTE SENSITIVITY AND COMPLEMENTARY SENSITIVITY                        |
|    Evaluate S(jw) = 1 / (1 + C(jw)G(jw)) across spectrum.                   |
|    Is Ms > 1.6 (4.1 dB)?                                                    |
+-----------------------------------------------------------------------------+
                   |                                      |
                  YES                                     NO
                   |                                      |
                   v                                      v
+--------------------------------------+   +----------------------------------+
| 3. LOCATE FREQUENCY REGIME           |   | SIGN-OFF CONTROLLER FOR HARDWARE |
|    - At crossover? (Phase deficit)   |   | Pass: Robust against noise & lag.|
|    - At high freq? (Resonance/delay) |   +----------------------------------+
+--------------------------------------+ 
                   |
                   +--------------------------------------+
                   |                                      |
                   v                                      v
+--------------------------------------+   +----------------------------------+
| STRATEGY A: INSERT ROLL-OFF FILTER   |   | STRATEGY B: REDUCE INTEGRAL GAIN |
| Add 2nd-order Butterworth or biquad  |   | Move crossover frequency left,   |
| notch filter at resonance w_res.     |   | restoring phase at loop centroid.|
+--------------------------------------+   +----------------------------------+

1. Insert Multi-Order Low-Pass Roll-Off on Derivative Action

Pure PID controllers or controllers with high-frequency D-gain boost noise at high frequencies. Always implement derivative action with a second-order filter:

$$D(s) = \frac{K_d s}{\frac{s^2}{\omega_f^2} + \frac{\sqrt{2} s}{\omega_f} + 1}$$

Set the filter cut-off frequency $\omega_f$ between three and five times the closed-loop bandwidth. This ensures phase lead is delivered at the gain crossover frequency while cutting loop gain above crossover, keeping the Nyquist curve from swinging near $(-1, 0)$ at high frequencies.

2. Implement Notch Filters on Structural Antiresonances

If the high sensitivity peak is driven by a flexible mechanical resonance (common in joint gearboxes and belt-driven linear slides), do not detune the entire proportional-integral loop. Insert a digital notch filter $N(s)$ centered at the resonance frequency $\omega_z$:

$$N(s) = \frac{s^2 + 2 \zeta_z \omega_z s + \omega_z^2}{s^2 + 2 \zeta_p \omega_z s + \omega_z^2}$$

By placing the notch zero directly on the mechanical pole, the loop gain collapses at $\omega_z$, pulling the Nyquist trajectory inward toward the origin and eliminating the sensitivity spike.

3. Shift Crossover Frequency Away from Plant Phase Dips

When the phase margin looks acceptable ($50^\circ$) but phase drops rapidly immediately after crossover due to digital transport delay ($e^{-s T_d}$), the loop is fragile. Calculate the delay margin:

$$\tau_m = \frac{P_m}{\omega_c}$$

If the delay margin is smaller than two discrete sample intervals ($2 T_s$), reduce proportional gain $K_p$ to push the gain crossover frequency $\omega_c$ lower into a region of greater phase reserve.

4. Co-Tune Integral and Proportional Gains via Circle Envelopes

When tuning PID controllers, avoid heuristic Ziegler-Nichols or trial-and-error manual adjustments. Formulate the tuning task as an optimization problem with a hard constraint on maximum sensitivity:

$$\min_{K_p, K_i, K_d} J(e, u) \quad \text{subject to} \quad |S(j\omega)|_\infty \le 1.6$$

This single constraint guarantees that both the gain margin and phase margin remain robust, while eliminating the high-frequency sensitivity amplification that causes motor buzz.

What This Means for LabCD

Designing high-performance motion controllers for unstable, flexible, or highly dynamic systems requires mathematical receipts before firmware deployment. LabCD provides automated system identification, plant modeling, and robust controller synthesis tools that directly compute and constrain sensitivity peaks ($M_s$), complementary sensitivity ($M_t$), and vector stability margins.

Instead of relying on nominal Bode margins that obscure actuator rattle, LabCD allows mechatronics teams and researchers to validate disturbance rejection envelopes, synthesize digital roll-off filters, and verify closed-loop robust stability against identified plant uncertainties before running code on physical hardware.

Direct Answer: Why Nominal Phase Margin Fails

Nominal phase margin fails to prevent actuator rattle because it only measures stability at the single frequency where open-loop gain is unity ($0\text{ dB}$). It does not measure how close the system's frequency response comes to total instability at other frequencies.

When a controller has poor phase damping across a broader band, the closed-loop sensitivity function develops a tall peak ($M_s > 6\text{ dB}$). This peak multiplies benign sensor noise and encoder quantization into massive, high-frequency torque oscillations, causing severe motor heating and mechanical vibration while classical phase margin appears perfectly stable.

Sources

[1] https://epublications.marquette.edu/cgi/viewcontent.cgi?article=1224&context=mechengin_fac
[2] https://www.ti.com/lit/pdf/slva381
[3] https://help.aerotech.com/automation1/Content/Glossary-Topics/Glossary-Sensitivity-Peak.htm
[4] https://ocw.mit.edu/courses/2-004-systems-modeling-and-control-ii-fall-2007/8c15f4312a7b9030915dfd84710aa644_lecture32.pdf
[5] https://www.mathworks.com/help/control/ref/dynamicsystem.margin.html

More LabCD Insight

Control TheoryRoboticsPID TuningSystem Identification