A servo axis that oscillated at 10 RPM. The motor was 400W, the load was a 200 kg rotating table. The tuning was correct (auto-tune). At high speed (1000 RPM), it was smooth. At low speed (10 RPM), it hunted — the load moved back and forth 0.5 degrees. The customer thought the encoder was bad. It wasn’t. The inertia ratio was wrong. This is about servo motor inertia matching.
The inertia ratio
The load inertia reflected to the motor shaft vs the motor rotor inertia:
J_ratio = J_load / J_motor
For a 400W servo motor, the rotor inertia is about 0.3 kg·cm². The rotating table (200 kg, radius 300 mm): J_table = 0.5 × 200 × 0.3² = 9 kg·m² = 90,000 kg·cm². Through a 100:1 gearbox: J_reflected = 90,000 / 100² = 9 kg·cm². J_ratio = 9 / 0.3 = 30. That’s way too high.
The rule of thumb: J_ratio should be under 10 for general automation. Under 5 for precision. Under 3 for high-speed positioning. At 30:1, the motor’s tuning can’t compensate for the sluggish load. The servo loop gain is limited by the inertia mismatch. The axis oscillates at low speed.
What I changed
1. Increased gearbox ratio. I changed from 100:1 to 160:1. J_reflected = 90,000 / 160² = 3.5 kg·cm². J_ratio = 3.5 / 0.3 = 12. Still high but better. The axis ran smoother at low speed.
2. Upsized the motor. I changed to a 750W motor with 0.8 kg·cm² rotor inertia. J_ratio = 3.5 / 0.8 = 4.4. That’s in the acceptable range. The low-speed oscillation disappeared. The motor was only 30% more expensive — worth it for a precision axis.
3. Tuned the loop gain. With J_ratio corrected, I lowered the velocity loop gain from 200 to 80 Hz. The auto-tune had set it too high (compensating for the inertia mismatch). With the correct inertia, the lower gain is stable. The axis runs smooth at 10 RPM.
The direct-drive vs geared tradeoff
A direct-drive motor (no gearbox) has zero backlash but low torque. The inertia ratio is 1:1 (motor directly coupled to load). But the motor must be sized for the full load torque. For a 200 kg table needing 50 N·m peak torque, a direct-drive motor costs $3000. A geared solution costs $500. For high-accuracy applications, direct-drive is worth it. For general automation, geared with correct inertia ratio is fine.
The acceleration limit
Even with correct inertia ratio, the axis accelerates at:
α = T_motor / J_total
For the 750W motor (T_peak = 2.4 N·m) with J_total = 3.5 + 0.8 = 4.3 kg·cm² = 0.00043 kg·m²: α = 2.4 / 0.00043 = 5581 rad/s². At the load shaft (160:1 ratio): α_load = 5581 / 160 = 35 rad/s². That’s 334 RPM per second. For a 0-100 RPM move, it takes 0.3 seconds. That’s fast enough for most automation.
The ratio I enforce: J_load/J_motor under 10 for general, under 5 for precision. The oscillating axis wasn’t bad tuning — it was a 30:1 inertia mismatch. Upsize the motor or increase the gearbox ratio. The auto-tune can’t fix a mechanical mismatch.