A grip that stays in place.

A frozen comparison of four hold controllers on eight new simulated scenes. Holding the object and keeping the tool in place are measured together.

32 scheduled attempts. Every failure stays in the denominator. Authored controls using simulator state; no model training or hardware qualification.

Five-second outcomes

ControllerAdmittedNative gripNative stationary gripActive stationary grip
measured joint4/80/80/80/8
issued joint4/84/80/80/8
cartesian4/84/80/80/8
incremental4/81/81/80/8

The primary endpoint requires continuous grip plus TCP motion within 4 mm and 0.05 rad. “Active stationary grip” additionally requires the controller to remain qualified. A post-refusal fallback can retain an object; that does not establish successful active regulation.

Every attempt

measured joint · all eight attempts
SceneValidGripStationary gripActive stationary gripTCP excursionReason
m0475-f78-p0yesnonono1.037 mmnative_predicate_lost
m0475-f78-p1yesnonono1.724 mmnative_predicate_lost
m0475-f52-p0yesnononounavailableno_admission
m0475-f52-p1yesnononounavailableno_admission
m0525-f78-p0yesnonono2.100 mmnative_predicate_lost
m0525-f78-p1yesnonono2.216 mmnative_predicate_lost
m0525-f52-p0yesnononounavailableno_admission
m0525-f52-p1yesnononounavailableno_admission
issued joint · all eight attempts
SceneValidGripStationary gripActive stationary gripTCP excursionReason
m0475-f78-p0yesyesnono4.797 mmtcp_stationarity_lost
m0475-f78-p1yesyesnono4.765 mmtcp_stationarity_lost
m0475-f52-p0yesnononounavailableno_admission
m0475-f52-p1yesnononounavailableno_admission
m0525-f78-p0yesyesnono4.704 mmtcp_stationarity_lost
m0525-f78-p1yesyesnono4.673 mmtcp_stationarity_lost
m0525-f52-p0yesnononounavailableno_admission
m0525-f52-p1yesnononounavailableno_admission
cartesian · all eight attempts
SceneValidGripStationary gripActive stationary gripTCP excursionReason
m0475-f78-p0yesyesnono4.207 mmtcp_stationarity_lost
m0475-f78-p1yesyesnono4.208 mmtcp_stationarity_lost
m0475-f52-p0yesnononounavailableno_admission
m0475-f52-p1yesnononounavailableno_admission
m0525-f78-p0yesyesnono4.260 mmtcp_stationarity_lost
m0525-f78-p1yesyesnono4.242 mmtcp_stationarity_lost
m0525-f52-p0yesnononounavailableno_admission
m0525-f52-p1yesnononounavailableno_admission
incremental · all eight attempts
SceneValidGripStationary gripActive stationary gripTCP excursionReason
m0475-f78-p0yesyesyesno1.580 mmsuccess
m0475-f78-p1yesnonono1.582 mmnative_predicate_lost
m0475-f52-p0yesnononounavailableno_admission
m0475-f52-p1yesnononounavailableno_admission
m0525-f78-p0yesnonono1.634 mmnative_predicate_lost
m0525-f78-p1yesnonono1.638 mmnative_predicate_lost
m0525-f52-p0yesnononounavailableno_admission
m0525-f52-p1yesnononounavailableno_admission

What changed

The new incremental candidate accumulates the current pose-error step around the target issued before admission. It retains the jaw request, limits each correction update to 0.002 rad and refuses a proposed total above 0.03 rad. Candidate measurements outside the native joint margin are refused before solving. The three previous controllers remain unchanged.

These are nearby deterministic development cells, not independent random trials or a real-world reliability estimate. The study does not test transport, placement, videos, cameras or cross-arm transfer. Timing in the JSON is shared-host offline computation, not sensor latency.