A ball screw axis that lost 0.1 mm of positioning accuracy at the far end. The ball screw was 1200 mm long. The coupling was a jaws-type (elastomer) between motor and screw. At the near end, accuracy was ±0.02 mm. At the far end, it was ±0.12 mm. The customer thought the ball screw was worn. It wasn’t — the coupling windup under load was the issue. This is about coupling torsional stiffness.

The windup angle

Under torque, a coupling twists. The torsional deflection (windup) angle:

θ = T / K_t

Where T is the torque (N·m) and K_t is the torsional stiffness (N·m/rad). For a jaws coupling (Ø20 shaft), K_t is about 5000 N·m/rad. At 0.5 N·m peak torque: θ = 0.5 / 5000 = 0.0001 rad = 0.006 degrees. That’s tiny. But at the ball screw end, this translates to linear error: e = θ × L_screw / (2π × p_rev) … wait, no. The angular error at the screw translates to linear error through the lead: e = θ × lead / (2π). For a 10 mm lead: e = 0.0001 × 10 / (2π) = 0.00016 mm. Still tiny.

But the coupling wasn’t the only windup. The ball screw itself twists. At 0.5 N·m torque, the screw (1200 mm long, Ø20 mm) twists by: θ = T·L / (G·J). G = 80,000 N/mm². J = π × 10⁴ / 2 = 15,700 mm⁴. θ = 500 × 1200 / (80,000 × 15,700) = 600,000 / 1.26×10⁹ = 0.00048 rad = 0.027 degrees. Linear error: e = 0.00048 × 10 / (2π) = 0.00076 mm. Still small.

So where did the 0.1 mm come from? The jaws coupling was undersized. At peak torque (2 N·m during acceleration): θ = 2 / 5000 = 0.0004 rad. But the jaws coupling has a nonlinear stiffness — at low torque, the elastomer flexes. The actual K_t at 0.5 N·m is about 1500 N·m/rad (not 5000). θ = 0.5 / 1500 = 0.00033 rad. Linear error: 0.0005 mm. Still small. The real issue: the coupling had backlash (0.5 degrees in the jaws). That translates to: e = 0.5/360 × 10 mm = 0.014 mm. Not 0.1 mm.

The actual cause: the ball screw end support was a simple bearing (not a fixed-supported design). The axial play in the bearing was 0.05 mm. Plus the coupling backlash 0.014 mm. Plus the screw windup 0.001 mm. Total: 0.065 mm. That’s close to the 0.1 mm observed. The coupling contributed 0.014 mm, not the whole story.

What I changed

1. Switched to a bellows coupling. The bellows coupling has zero backlash and K_t = 15,000 N·m/rad. The windup dropped to 0.00003 rad (0.0005 mm linear error). The coupling no longer contributed to positioning error.

2. Upgraded the screw support. The simple bearing block was replaced with a fixed-supported bearing (angular contact duplex). The axial play dropped from 0.05 to 0.005 mm. The total positioning error dropped from 0.12 to 0.02 mm. The axis now meets spec.

3. Checked the ball screw preload. The ball screw had 0% preload (clearance). Under axial load (cutting forces), the screw compresses and the ball nut has play. I specified a preloaded ball nut (C3 preload). The axial play dropped to zero under load. The far-end accuracy is now consistent.

Coupling stiffness comparison

Coupling type Backlash Torsional stiffness (N·m/rad) Use for
Jaws (elastomer) 0.1-0.5° 1,500-5,000 General, low precision
Disc (laminated) 10,000-50,000 High speed, precision
Bellows 5,000-20,000 Small servo, high precision
Rigid (one-piece) 100,000+ Perfect alignment, max stiffness

The coupling I spec for precision axes: bellows or disc (zero backlash). But the coupling isn’t always the culprit — check the bearing support and ball nut preload too. The 0.1 mm error was 0.05 mm bearing play + 0.014 mm coupling backlash + 0.036 mm uncompensated screw. Fix all three.