Grasp analysis: form and force closure
Why one grasp holds and another slips. The classical theory of stable contacts — form closure, force closure, friction cones — that still defines the vocabulary every modern grasping system speaks.
A robot pinches a pen between two fingers. Will it slip when lifted? Modern deep-learning grasp planners answer the question implicitly. Classical grasp theory answers it explicitly — and the language of form closure, force closure, and friction cones still describes how every grasp planner today reasons about quality.
The setup
An object floats in space. Several robot fingers contact it. Each contact is a point or small patch where the finger touches the object. Each contact can apply a force on the object — bounded by what the finger can produce and constrained by friction.
The question: can the contacts resist any external wrench the world might apply (gravity, an unexpected push, the object's own weight when lifted)?
Form closure: geometry alone holds the object
A grasp has form closure if the contact points geometrically prevent any motion of the object — no friction needed. Even if the surface were perfectly slippery, the object can't escape.
Examples:
- A peg fully inserted in a hole — form closure (in 5 of 6 axes).
- A rod gripped by a fully-enclosing hand — form closure if every direction is blocked.
For a 3D object, the classical result (Reuleaux, 1875): form closure requires at least 7 frictionless point contacts. Most robot grasps don't have form closure — they need friction.
Force closure: friction makes up for geometry
A grasp has force closure if the contacts can resist any external wrench — using friction. The contacts can each apply forces inside their friction cones, and the sum can balance any disturbance.
This is the goal of most robot grasps. A two-fingered pinch on a pen has force closure: the friction at each contact lets the fingers resist gravity, lateral pushes, and small twists. Same pen, between two greasy frictionless fingers — slips.
The friction cone
At each contact, the force the finger applies is decomposed into:
- Normal force f_n — along the contact normal, pushing into the surface.
- Tangential (friction) force f_t — along the surface, resisting slip.
Coulomb friction: |f_t| ≤ μ · f_n. The set of admissible forces forms a cone with half-angle arctan(μ) around the normal. Any force inside that cone can be applied without slipping. Forces outside cause slip.
Typical friction coefficients:
- Steel on steel: ~0.5
- Rubber on plastic: ~0.7
- Soft silicone fingertip on metal: ~1.0–1.5
- Wet plastic on wet plastic: as low as 0.2
Robot grasping is partly a story about how to get higher μ at the contact — softer pads, textured fingertips, vacuum grippers (which sidestep friction entirely with suction).
The math, briefly
Each contact contributes a 6-dimensional wrench (force; torque) the finger can apply on the object. The set of all reachable wrenches from one contact is its friction cone. The set of all wrenches reachable by combining all contacts is the grasp wrench space, a polytope in 6D.
Force closure ⇔ the grasp wrench space contains the origin in its interior.
This is checkable computationally: solve a linear program to test whether the origin is inside the polytope. Quality metrics measure how far inside — the larger the inscribed ball around the origin, the more wrench-disturbance-tolerant the grasp.
Antipodal grasps
The simplest force-closure grasp for a two-fingered gripper: two contacts on opposite sides of the object, with normals pointing toward each other. Add friction and you have force closure. Most parallel-jaw pick-and-place pipelines (industrial and learned) reduce grasping to "find an antipodal pair."
Quality metrics
- Ferrari-Canny ε-metric — radius of the largest origin-centered ball that fits inside the grasp wrench space. Higher = more disturbance-tolerant. Industry standard for benchmarking.
- Volume metric — volume of the grasp wrench polytope. Sensitive to shape, not just worst-case.
- Task-conditioned metrics — the wrenches the grasp must resist for a specific task (lifting against gravity, opening a drawer). More relevant in production than abstract Ferrari-Canny scores.
From classical theory to deep grasping
Modern learned grasp planners (Dex-Net, GraspNet, Contact-GraspNet) don't compute force-closure metrics at runtime. They train networks on millions of simulated grasps where the metric is computed as ground truth. The network learns to predict "this grasp will succeed" without explicitly reasoning about cones and polytopes — but the labels in the training data are computed using the classical math above.
That's why the vocabulary persists. Even when you're using a neural net at deployment, the data it was trained on is shaped by Reuleaux-Ferrari-Canny.
The contact model is a lie (and that's OK)
Real contacts aren't points. They're patches with non-uniform pressure distributions. Real friction isn't Coulomb at extremes — there's stick-slip, viscoelastic effects, hysteresis. Real fingers deform.
The classical model is an approximation that works well enough for rigid-on-rigid contact in the middle of the operating envelope. When it fails (high speed, soft contact, microgrippers), you go to contact mechanics proper — Hertzian contact, finite-element simulation. Almost no robotics research goes there; almost no commercial system needs to.
Exercise
Pick up a pen with your thumb and index finger. Without changing the contact points, try to pull the pen out by twisting around its long axis. Does it slip? That's the friction cone failing — the friction can resist the tangential pull but not the rotation, because your contacts are too close together to provide enough torque. Now move your fingers further apart along the pen — much harder to twist out. That's the wrench polytope getting bigger because the moment arm grew.
Robot grasps live by the same intuition. Spread the contacts. Use rubbery fingertips. Aim through the centroid. The math just makes it precise.
Next
Grasp planning with deep learning — how Dex-Net, Contact-GraspNet, and modern systems use the classical metrics as training signal to make the inference fast.
Comments
Sign in to post a comment.