Manipulability, Workspace & Dexterity Analysis — Robotics Reference

1. At a glance

A manipulator’s workspace is the set of end-effector poses it can reach; its manipulability is a local quality-of-motion score at each pose inside that set. Together they answer two complementary engineering questions:

  • Where can the arm reach? — workspace analysis. Determines the spatial envelope around the base that the tool centre point (TCP) can physically occupy. Drives cell layout, robot mount placement, conveyor positioning, fixture geometry, and “can I buy a UR5e for this task or do I need a UR16e?“.
  • How good is the motion at this pose? — manipulability analysis. Quantifies whether the arm can move the TCP equally well in all directions at the given joint configuration, how close it is to a singularity, and how much force it can exert in each direction. Drives posture selection, redundancy resolution on 7-DOF arms, trajectory replanning near singularities, and impedance / force-control gain scheduling.

Workspace + manipulability is the foundation for:

  • Cell layout — placing the workpiece inside the dexterous (any-orientation reachable) sub-volume of the workspace, plus a safety margin, before committing to a robot mount.
  • Redundant-DOF posture optimisation — on 7-DOF arms (Franka FR3, KUKA LBR iiwa, Kinova Gen3, Kassow K-series), the null-space lets the controller pick an “elbow swivel” angle that maximises a manipulability cost without changing the TCP path.
  • Singularity avoidance — Yoshikawa’s or the minimum singular value is the cost function path planners drive away from zero.
  • Force-control planning — the force ellipsoid (Asada 1983, Khatib 1987) tells the impedance-control engineer which task directions support the largest exertable force at a given pose; pick the assembly approach axis accordingly.

First ask before applying any of this:

  1. Is the analysis local (a single pose, for posture optimisation) or global (the whole workspace, for cell layout)?
  2. Do you care about translation, rotation, or both? Yoshikawa’s mixes them — units are weird ( inside the square root); pick a task-specific metric instead if rotation and translation have different priorities.
  3. Are you maximising velocity transmission (Yoshikawa) or force transmission (Asada — the inverse ellipsoid)? They are dual and the major axes swap.
  4. Is the arm redundant ()? Only then does null-space manipulability optimisation actually do anything.
  5. Have you fixed the tool transform? Manipulability depends on which point on the arm you call “the end-effector”. Long tools change the picture.

Where it sits in the design stack: above kinematics + Jacobian, below trajectory generation, path planning, impedance control, and any redundancy-resolution layer that sits between Cartesian and joint space.

2. First principles

Workspace definitions

For a serial manipulator with joints, joint values subject to limits , and forward-kinematics map , the canonical workspace sets are:

  • Reachable workspace — every position the TCP can occupy in at least one orientation.
  • Dexterous workspace — positions reachable in every orientation in . For a 6-DOF arm with a spherical wrist, this is the central core of and is typically 30–50 % of the reachable volume. For a 7-DOF redundant arm it expands further; for a 5-DOF arm it is empty (you cannot achieve every orientation with 5 DOF).
  • Constant-orientation workspace — the subset reachable at a specific orientation . Used for “pour-the-cup” or “tool-axis-vertical” applications where orientation is constrained.
  • Service sphere / service hemisphere — the marketing-spec radius centred at joint 1 (floor mount) inside which the manufacturer guarantees reach. For UR5e ; for KUKA KR 1000 Titan .
  • Workspace boundary — the set of poses where the Jacobian loses rank (elbow- and shoulder-type singularities). Approach in Cartesian-velocity mode and joint velocities blow up.

The Jacobian — recap

From kinematics-dh, the geometric Jacobian maps joint velocities to end-effector twist:

The static-force dual (via virtual work, Whitney 1969) maps end-effector wrench to joint torques:

Both ellipsoid constructions below come from these two equations.

Velocity (manipulability) ellipsoid — Yoshikawa 1985

Constrain joint velocity to the unit ball . The image in task space is the ellipsoid

Compute the SVD with , . The ellipsoid’s principal axes are the columns of scaled by the singular values . Major axis = direction of maximum TCP speed per unit joint speed; minor axis = direction of minimum.

Yoshikawa manipulability index:

Proportional to the volume of (up to a constant). Goes to zero exactly at singularities. Maximising pushes the arm into “well-balanced” configurations.

For a non-square Jacobian (, redundant arm), is undefined but is well-defined and used as the manipulability cost.

Force ellipsoid — Asada 1983 / Khatib 1987

Constrain joint torque to the unit ball . The set of wrenches the arm can apply at the TCP is:

Its principal axes are again the columns of but scaled by . The velocity and force ellipsoids are duals: where one is long, the other is short. A direction of maximum TCP velocity is a direction of minimum exertable force at the same configuration — the elbow-extended posture moves fast tangentially but cannot push radially.

This is the geometric origin of the assembly heuristic “approach a peg-in-hole task along the minor axis of the velocity ellipsoid” — that axis maximises force capacity.

Condition number and dexterity

The condition number of is

  • → all singular values equal → the ellipsoid is a sphere → the arm is isotropic at this pose (equal motion / force capability in every direction).
  • → the arm is at a singularity, the smallest singular value collapses, becomes a degenerate disc, and the arm loses one DOF in some direction.

The dexterity index (Klein & Blaho 1987) inverts this for a bounded score:

with 1 = isotropic, 0 = singular. Dexterity is scale-invariant in a useful sense — multiplying all link lengths by a constant scales uniformly and leaves unchanged. Yoshikawa’s does not have this property.

Minimum singular value as the singularity distance

is itself a useful, dimensioned singularity-distance metric. Used as the activation threshold in damped-least-squares IK (see kinematics-dh §3): when , raise the damping to keep well-conditioned.

Orientation freedom — service angle and DSI

At a TCP position , the service region is the set of orientations the wrist can achieve. The service angle is the solid angle this region subtends on the unit sphere (sr). The dexterous solid angle index (Vinogradov 1971, Lee 1997) integrates orientation freedom over the workspace:

DSI means every position is dexterous (no 6-DOF non-redundant arm achieves this); DSI is typical for production 6-DOF arms.

Redundancy and null-space

For a redundant arm (), the joint-velocity solution to admits a null-space term:

where is the Moore–Penrose pseudo-inverse and is a secondary objective. The projection filters out any component of that would disturb the TCP. To maximise manipulability, set for a small gain — this is the Yoshikawa null-space gradient method.

Weighted manipulability

When translation and rotation must be weighted differently, define a weighting and use:

Choosing and (i.e. a characteristic length m for converting angular to linear) gives a unitless manipulability score whose ellipsoid axes are commensurable. Park & Brockett 1994 derived the geometric requirement that should approximate the link length closest to the wrist for the score to track physical isotropy.

Singular-value sensitivity

A useful debugging fact: where are the left/right singular vectors. Computing at a near-singular configuration tells you which joint dominates the loss of rank — usually one joint per singularity class (joint 5 at wrist singularities, joint 3 at elbow singularities, joint 1 at shoulder singularities for a spherical-wrist arm).

Task-priority decomposition

When multiple tasks compete (TCP pose + manipulability + joint-limit avoidance + obstacle avoidance), Nakamura 1991 / Siciliano-Slotine 1991 stack them in strict priority:

with . Task 1 (TCP pose) is satisfied exactly; task 2 (manipulability gradient) is satisfied only in . Task-priority stacks become kinematically infeasible when the lower-priority tasks span more DOF than the null-space contains — for a 7-DOF arm with 6-DOF TCP task, the null-space is 1D, so only a 1-D secondary task fits without conflict.

Dynamic manipulability (Yoshikawa 1985 also)

The dynamic manipulability ellipsoid replaces with where is the joint-space mass matrix from the dynamics (dynamics-rigid-body):

measuring the end-effector acceleration achievable per unit joint torque. Far more relevant than for high-acceleration tasks (delta robots, ball-juggling, fast pick-and-place); and disagree at most poses because is heavily configuration-dependent.

3. Practical math + worked examples

Example A — 2-DOF planar arm manipulability ellipsoid

Two-link planar arm with link lengths and joint angles . The Jacobian from kinematics-dh §3:

Determinant: . With unit link lengths, .

Singularity: (arm fully extended, ) and (arm folded back on itself, also ).

Maximum manipulability: . The elbow at right-angle is the most manipulable configuration; intuition matches the math.

At : , , , .

Eigenvalues of : . Singular values .

  • — i.e. the arm moves 2.6× faster in the major-axis direction than the minor-axis at unit .
  • — moderately dexterous; isotropic 2R planar geometry is impossible (it would require , which two scalar link lengths cannot produce simultaneously with the elbow-angle constraint).

Force ellipsoid: axes inverted — the arm can push hardest along the minor velocity axis () and weakest along the major axis ().

Example B — UR5e workspace volume and dexterous core

UR5e: reach from joint 1; payload 5 kg; 6-DOF non-spherical wrist. Joint-limit ranges on all axes (typical, with hardware limits at on joint 1 via slip ring).

Reachable-workspace volume (approximation). The arm sweeps a hollow torus around joint 1. With effective inner radius (the elbow can fold back to the base) and outer radius , an upper-bound spherical-shell approximation:

But joint-2 hardware limits and self-collision with the base cut a hemisphere out and the realistic figure is closer to:

published in UR5e brochure as a torus volume.

Dexterous-workspace volume — positions where all orientations of the tool are achievable. Numerical sampling (50³ = 125 000 grid points in a m cube, IK feasibility + secondary “any orientation” check from 20 sampled rotations) gives roughly , around 23 % of . Concentrated in a sphere of radius 0.4 m centred about 0.5 m in front of the base.

Sampling procedure (the standard recipe):

  1. Generate a 3D grid in the bounding box of expected reach.
  2. For each grid point , attempt IK at . If feasible (and within joint limits): mark as reachable.
  3. For each reachable point: sample orientations on (uniform-quaternion or HEALPix on × discrete twist). If IK succeeds for all : mark as dexterous. Else: mark as partially dexterous.
  4. Integrate by counting cells × cell volume.

Practical: MoveIt 2’s reachability_calculator, OpenRAVE databases.kinematicreachability, Pinocchio + custom sweep, or Reachy’s reachability_visualizer — see §5.

Example C — Franka FR3 null-space manipulability optimisation

The 7-DOF Franka FR3 has one redundant degree of freedom relative to the 6-DOF task. At a reference configuration rad (the “ready” pose from libfranka):

Compute (via Pinocchio FK + Jacobian). Numerical values give (units depend on whether translation and rotation are scaled — keep them separate in production).

Null-space gradient ascent on manipulability. Iterate:

with step size and finite-difference gradient , .

Result after 100 iterations: rises from to — a 35 % improvement — while the TCP pose is unchanged to numerical precision (). The arm has “swivelled” its elbow approximately 25° about the shoulder-wrist line into a more isotropic configuration.

In a real controller, this becomes a continuous secondary task: at every servo tick, the null-space gradient adds a small that nudges the elbow toward the higher-manipulability pose, subject to joint-limit, obstacle, and self-collision constraints (each adding its own gradient term combined by Liégeois-style task prioritisation).

4. Design heuristics

  • Place the workpiece in + 100 mm margin. Not just in — the arm needs orientation freedom for approach + retract, plus tolerance for fixture wear and tool mis-pickup. A workpiece at the edge of but inside still works; one outside but inside silently restricts approach angles, causes hard-to-debug planning failures.
  • Payload-reach ratio 1:10 is the inviolable industrial rule. UR5e: 5 kg / 850 mm. Fanuc M-10iD: 10 kg / 1100 mm. KUKA KR 50: 50 kg / 2030 mm. A “10 kg @ 2 m” arm doesn’t exist at small-cobot prices because joint-2/3 gravity torque scales as .
  • For 6-DOF spherical-wrist arms, three singularity classes are inescapable (see kinematics-dh §2):
    • Wrist at (joint-4 and joint-6 axes align). Avoid in arc welding by tilting the workpiece 5°.
    • Elbow at the workspace boundary ( at extreme). Re-plan or shorten the target.
    • Shoulder when the wrist crosses the joint-1 axis. Forbid base-overhead paths.
  • Damped least squares (DLS) is the production singularity-handling tool. Adaptive damping with and . Trades small tracking error for bounded joint velocity at the cost of a few percent extra residual near singularities. Bare pseudo-inverse blows up; DLS does not.
  • Redundancy resolution: pick one secondary task. Joint-limit avoidance, obstacle avoidance, manipulability, tool-axis preservation — combining all of them with Liégeois-style stacking is fragile. The cleanest production pattern is: primary task = TCP pose, secondary task = single weighted combination of joint-limit centring, manipulability. Add obstacle avoidance as a hard constraint via a planner, not via null-space.
  • Non-redundant 6-DOF arms cannot do null-space optimisation. The null-space is empty. To get a “good” pose, pick a good IK seed (configuration vector: shoulder=L/R, elbow=U/D, wrist=F/NF) at the start of the trajectory.
  • Dexterity drops with payload. Joint gravity torque squeezes the available joint-torque budget for acceleration; the effective manipulability ellipsoid shrinks under load. Compute manipulability with the actual payload in the gravity model, not the unloaded model.
  • Yoshikawa has weird units when translation and rotation are mixed. on a 6-DOF arm. A common fix is to split: for the translational part only, for rotational. Pick the metric that matches the task — pure-translation pick-and-place uses ; orientation-critical screwing uses .
  • Force ellipsoid for assembly (Khatib). When designing peg-in-hole or threaded-fastener insertion, orient the approach so the expected reaction-force direction aligns with the major axis of the force ellipsoid. Equivalently, the minor axis of the velocity ellipsoid.
  • Workspace visualisation: clarify reachable vs dexterous. Many tools display only . Reachy / Pollen Robotics’ reachability_visualizer and MoveIt 2’s reachability map are explicit about which is which; ROS RViz overlays from custom sweep are usually only.
  • Mount orientation changes the useful workspace. A ceiling-mounted UR5e has a 0.85 m reach but the floor-relative workspace centroid moves to ~0.4 m above the floor — useful for tabletop assembly but not for picking from a deep tote. Declare the mount before sizing.
  • Tool changes effective workspace. A 200-mm welding torch extends the TCP and shrinks the effective — the elbow must clear additional space for the same TCP pose. Recompute the workspace map per tool, especially for long suction-cup arrays and welding torches.
  • Joint stiffness limits the workspace under load. A 5-kg payload at full reach deflects the arm structurally; the commanded TCP is in the catalog workspace, the actual TCP is 50–500 µm off. The “stiffness workspace” — where structural deflection stays below tolerance — is the metric for high-accuracy machining and assembly.
  • Calibration shrinks the gap between nominal and actual workspace. Uncalibrated, the arm reaches a position off the commanded pose; after Hayati-style 26-parameter DH calibration (see manipulator-design §4), . Treat workspace bounds as commanded, with a 1–2 mm buffer to actual.
  • Cache the workspace map at design time, not runtime. A 50³ grid × 20 orientations IK sweep takes 10–60 minutes per robot; cache the result as a 3D voxel grid + per-voxel orientation-feasibility bitfield, load at controller startup. MoveIt’s chomp_motion_planner and Reachy’s reachability_visualizer both follow this pattern.
  • The Asada force ellipsoid is the right metric for impedance-control tuning. When tuning Cartesian stiffness gains , align the stiffness ellipsoid with the force ellipsoid so the controller’s commanded effort matches the arm’s natural force capability — high stiffness in directions where the arm can push hard, low stiffness elsewhere.
  • Pre-grasp posture selection from manipulability. For pick tasks with multiple feasible IK solutions, score each by at the grasp pose and pick the highest. This is a one-shot decision before the trajectory plans, so it does not need a null-space layer; just enumerate IK solutions and rank.
  • Service-sphere marketing numbers are misleading. “850 mm reach” on the UR5e means joint 1 to TCP at full extension, which is a singular pose (elbow extended). The usable workspace stops 50–100 mm short. Spec the workpiece location 100 mm inside the catalogue reach.

5. Components & sourcing (software libraries)

LibraryLanguageWhat it does for manipulability/workspaceSource
Robotics Toolbox for Python (Peter Corke)Pythonr.manipulability(q) (Yoshikawa, Asada, inv-condition), r.workspace(...) sweep, ellipsoid plottinggithub.com/petercorke/robotics-toolbox-python
Pinocchio (INRIA Stack-of-Tasks)C++ / PythonFast Jacobian (~1 µs), SVD-based manipulability, null-space projector, custom gradient targetsgithub.com/stack-of-tasks/pinocchio
MoveIt 2C++ / PythonReachability map, IK feasibility sweep, RViz workspace visualisation; community PR reachability_calculatormoveit.picknik.ai
OpenRAVE (legacy but still used)C++ / Pythondatabases.kinematicreachability — discretised dexterous workspace as mapgithub.com/rdiankov/openrave
Drake (TRI / MIT)C++ / PythonSymbolic + numeric; analytical Jacobian + manipulability gradient via AutoDiff; MultibodyPlantdrake.mit.edu
MATLAB Robotics System ToolboxMATLABmanipulability, analyzeRobot, workspaceGoalRegion; integrates with Simulink for trajectory planningmathworks.com/products/robotics
iDynTree (IIT)C++ / PythonWhole-body kinematics + dynamics for humanoids; weighted manipulabilitygithub.com/robotology/idyntree
RBDL (Felis 2017)C++Featherstone-style RBA; building block for custom manipulability coderbdl.github.io
Reachy 2 reachability_visualizer (Pollen Robotics)PythonOut-of-the-box dexterous-workspace tool for Reachy + adaptable to other URDFsgithub.com/pollen-robotics
MoveIt ServoC++Real-time Cartesian-velocity controller with DLS singularity handling — uses as activationmoveit.picknik.ai/main/doc/concepts/servo
ikfast (OpenRAVE / MoveIt)C++ (codegen)Closed-form IK as the inner-loop for workspace sweeps; ~5 µs per solvegithub.com/ros-planning/moveit_kinematics
TRAC-IKC++Joint-limit-aware IK with sequential QP; useful for joint-limit-constrained dexterity sweepsgithub.com/aprotyas/trac_ik

Web tools and educational demos: Peter Corke’s Robotics Toolbox companion notebooks (Jupyter, free), Modern Robotics MATLAB support code (Lynch & Park 2017), several community “Robot Workspace Visualizer” web apps.

6. Reference data tables

Manipulability metrics comparison

MetricFormulaUnits (6-DOF)RangeBest for
YoshikawaVolumetric measure; null-space cost
Yoshikawa-translationPure translation tasks
Yoshikawa-rotationOrientation tasks
Condition numberdimensionlessNumerical conditioning of IK
Dexterity indexdimensionlessIsotropy comparison across arms
Min singular valuemixedDLS damping activation
Force ellipsoid volumeMax force capability
Service anglesolid angle in srOrientation freedom
DSI$\int\Omega/(4\pi V),dV$dimensionless

Workspace specifications (manufacturer-published)

RobotReach (mm) (m³, approx)Dexterous fractionNotes
UR3e5000.27~25 %Compact cobot
UR5e8501.32~23 %Mid cobot reference
UR10e13004.6~22 %Long-reach cobot
UR16e9001.5~22 %Mid-reach, high payload (16 kg)
UR20175011.0~20 %UR’s first 20-kg cobot
Franka FR38551.35~30 % (7-DOF)7-DOF redundant
KUKA LBR iiwa 7 R8008001.10~32 % (7-DOF)7-DOF redundant
KUKA LBR iiwa 14 R8208201.20~32 % (7-DOF)Higher payload (14 kg)
Kinova Gen3 (7-DOF)9021.55~30 %Research-favourite redundant
ABB IRB 1200-5/0.99011.55~25 %Industrial 6-DOF
ABB IRB 6700-200/2.60260036~20 %Heavy industrial
Fanuc M-10iD10982.8~25 %Industrial 6-DOF
Stäubli TX2-606700.62~25 %Cleanroom 6-DOF
KUKA KR 1000 Titan320270+~20 %Super-heavy 1300 kg payload

(Volumes are torus-with-self-collision approximations; dexterous fraction from published reachability maps where available, else numerical estimate.)

Singularity types by kinematic class

ClassType 1Type 2Type 3Avoidance
6R spherical wristWrist ()Elbow ( at limit)Shoulder ( on joint-1 axis)DLS + path planning
6R non-spherical (UR pattern)“Wrist” (joints 4+6 axes parallel)ElbowShoulderSame
7R redundant (Franka/iiwa)Singularity manifold (lower-dim than 6R)Null-space avoidance
SCARA (RRPR)Elbow ( or )Workspace zone
Delta (3-RUU parallel)“Type-1” at workspace boundary”Type-2” interior (rare in IRB 360)Workspace zone
Stewart / hexapod 6-UPSType-2 interior (Gough singularities)Real-time check
Cartesian 3P + wristNone on prismatic axes; wrist as aboveWrist DLS only

DLS parameters by kinematic class

ClassNotes
6R spherical wrist0.050.02Common KDL / MoveIt default
6R non-spherical (UR pattern)0.020.01Smaller because Olsen closed-form rarely needs DLS
7R redundant0.100.05More damping since the primary task is harder to fail
SCARA0.100.05Mostly trivial; DLS for the elbow singularity at workspace edge
Stewart / hexapod0.010.005Stiff, rare singularities; small damping is enough

Manipulability at home / nominal pose (Yoshikawa )

Robot at homeClassComment
UR5e6-DOF non-sphericalAt factory “home” with
UR10e6-DOF non-sphericalLarger arm, larger
Franka FR37-DOF redundantAt libfranka “ready” pose
KUKA iiwa 7 R8007-DOF redundantAt KUKA “candle” pose
ABB IRB 1200-5/0.96-DOF sphericalVendor URDF home
Fanuc M-10iD6-DOF sphericalVendor URDF home
Two-link planar arm 2-DOFAt , the optimum

(Comparable to the table in kinematics-dh §6; values approximate, vendor URDF dependent, mixing translation and rotation units.)

Workspace-sweep cost (typical, modern x86-64, MoveIt 2 reachability_calculator)

ResolutionGrid pointsIK calls (×)Wall-clockMemory
100 mm grid10–30 s1 MB
50 mm grid1–3 min10 MB
25 mm grid10–30 min100 MB
10 mm grid2–6 h2 GB

Using ikfast or vendor closed-form IK speeds this up 5–10× over generic KDL.

Stiffness ellipsoid (Cartesian)

The Cartesian stiffness at the TCP relates contact wrench to TCP displacement: . Built from joint stiffness via:

The stiffness ellipsoid principal axes follow the force ellipsoid axes when is isotropic — the arm is structurally stiffest in the direction it can push hardest. Used for impedance-control gain shaping; see impedance-control.

7. Failure modes & debugging

  • Singularity crossing during Cartesian trajectory. Joint velocities spike, drive overcurrent, fault. Fix: DLS with adaptive damping; or re-plan in joint space across the singular region; or accept the loss of TCP-path fidelity and let the controller blend across.
  • IK convergence failure at workspace boundary. Numerical IK hits iteration limit, returns last with nonzero residual. Cause: target is outside or just barely on . Fix: tolerance-relax the orientation; check against reach; move the workpiece inward.
  • Unexpected joint-limit hits in null-space optimisation. Pure manipulability gradient drives the arm toward isotropic poses, which can be near joint limits. Fix: weighted secondary task — combine manipulability gradient with joint-centring gradient (Liégeois 1977).
  • Manipulability metric “high” but the motion is useless. Yoshikawa’s doesn’t distinguish translation from rotation; a high might mean great rotational mobility at a translationally singular pose. Fix: use or split metrics, or task-specific weighted manipulability with a task-priority weight.
  • Force capacity assumption wrong. Asada force ellipsoid is in the tool frame, but the engineer often computes it in the base frame and assumes invariance. Fix: recompute the ellipsoid at each pose, in the frame of the contact direction.
  • Redundancy resolution amplifies a small problem. Iterative null-space gradient with too-large step size oscillates or drifts off the TCP path. Fix: step size , plus a corrective primary-task term every iteration (Closed-Loop Inverse Kinematics, CLIK).
  • Self-collision in the “workspace” map. Numerical sweep marks a point as reachable but the arm self-collides on the way there. Fix: include a self-collision check in the reachability calculator (MoveIt does this; raw OpenRAVE optionally; custom sweeps often skip it).
  • Mounting orientation matters. Ceiling-mounted UR5e has a different feasible workspace than floor-mounted UR5e — joint-2 gravity reverses, joint-1 collision geometry changes. Recompute per mount.
  • Tool changes effective workspace. A 200 mm welding torch shifts the TCP forward; the effective shrinks because the elbow needs more clearance for the same TCP pose. Recompute per tool.
  • Joint stiffness limits effective workspace under load. Under 5 kg payload at 850 mm reach, structural deflection adds 50–500 µm of pose error. “Reachable” might still mean “wrong by a tolerance margin.” Fix: stiffness-aware workspace metric; or compensate via Cartesian feedback.
  • Calibration error invalidates the CAD-derived workspace. Nominal-DH workspace and actual workspace can differ by 1–2 mm. Fix: measure the workspace with a laser tracker post-calibration; treat catalogue values as nominal.
  • Workspace visualisation confusion. RViz overlay shows but the marketing brochure quotes the dexterous fraction. Customer expects the arm to reach all of in any orientation and is disappointed. Fix: be explicit about which workspace you’re plotting and labelling.
  • DLS damping too small near singularity. With the damping rises only marginally; joint velocities still spike. Fix: raise to 0.05–0.1; tune on a known singular trajectory.
  • DLS damping too large. The arm tracks the trajectory with visible offset everywhere, not just near singularities. Fix: use adaptive damping with proper activation threshold instead of constant .
  • Singularity-detection misses near non-spherical-wrist arms. UR’s “wrist” singularity at is geometric, not “joints 4+6 parallel” in the strict sense. Fix: use as the universal detector, not a joint-value heuristic.
  • Null-space drifts to the joint limit. Without a centring term, repeated null-space motion accumulates secondary-task drift. Fix: include a joint-centring task with small weight even when manipulability is the primary secondary task.
  • Numerical-gradient noise overwhelms manipulability optimisation. Finite-difference with too small ( rad) gets dominated by FK numerical error; too large ( rad) blurs the optimum. Fix: pick rad, or use analytic gradient via Pinocchio’s AutoDiff / Drake’s symbolic engine.
  • SVD cost dominates the 1 kHz servo loop. Full SVD of a Jacobian is — acceptable. Full SVD of a humanoid Jacobian is — significant. Fix: use via power iteration (3–5 iterations) instead of full SVD; much faster and only computes what you actually need.
  • Forgetting payload in the manipulability gradient. Optimising on the unloaded arm picks a posture that fails the payload constraint at execution. Fix: include payload in the dynamic model and use a dynamic manipulability metric (Yoshikawa 1985 also defines this — the dynamic manipulability ellipsoid uses instead of ).
  • Confusing manipulability with maneuverability. Manipulability is a local metric at a single pose; maneuverability ( integrated over a trajectory) is what matters for whole-task performance. A trajectory through 99 high- poses and 1 singular pose still fails at the singular pose. Fix: optimise the minimum along the trajectory, not the average.

8. Case studies

KUKA LBR iiwa (and predecessor DLR LWR III) — null-space manipulability in production

The DLR LWR III (developed 2002–2007, technology-transferred to KUKA in 2007 and productised as the LBR iiwa in 2013) was the first commercial 7-DOF cobot to expose joint-torque sensing on every axis and offer on-line null-space optimisation through its KUKA Sunrise.OS interface. Albu-Schäffer et al. 2007 documented the unified passivity-based framework that combines Cartesian impedance + null-space manipulability + joint-limit avoidance into a single control law: at each servo tick (1 kHz on the iiwa) the controller computes , applies the impedance target in task space, and projects a configurable secondary objective — manipulability gradient, joint-centring, or arbitrary user-supplied — into the null-space.

The iiwa’s redundancy-resolution layer is parameterised by the elbow swivel angle , the rotation of the elbow about the shoulder–wrist line. Setting as a user-controlled task variable converts the 7-DOF IK into a one-parameter family of 6-DOF Pieper solves; this is the cleanest production pattern for parameterising a 7-DOF redundancy and is now standard across Franka, Kinova, Kassow, and Doosan H-series.

In published academic experiments (Bischoff et al. 2010, Ott et al. 2008), the LWR III’s null-space manipulability optimisation extends the effective reachable workspace by roughly 15 % over fixed-elbow operation while keeping joint-limit margins above 20°.

Franka Emika Panda / FR3 — 7-DOF redundancy as the research reference

The Franka Panda (2017) and its FR3 successor (2024) became the de-facto academic reference platform for redundant-arm manipulation between 2017 and 2024. libfranka (open-source C++) exposes the full Jacobian at 1 kHz, allowing custom null-space objectives. The community has implemented:

  • Yoshikawa null-space optimisation (Suh & Tanie 2008-style).
  • Reactive obstacle avoidance via null-space (Khatib 1986 potential fields projected into null-space).
  • Whole-body human-robot collaboration with the arm + a Franka Gripper, using manipulability as a posture-shaping cost.

The Franka Control Interface lets the user run a 7-DOF servo loop at 1 kHz with the manipulator providing the primary task (Cartesian pose) and the user supplying . Cited in 1000+ robotics papers (Google Scholar, May 2026). The Franka pattern of joint-torque sensing + open redundancy resolution is the template for the next generation of humanoid arms (Apptronik Apollo, Figure 02, Sanctuary Phoenix) where 7+ DOF per arm is standard.

Intuitive Surgical da Vinci — redundancy and dexterity for surgeon comfort

The da Vinci Xi (and the newer SP / Single-Port) is the dominant surgical robot platform: ~10 000+ systems installed globally as of 2026. Each instrument arm has 7 internal DOF (3 for the kinematic remote-centre, 4 for the wristed EndoWrist instrument) plus a base positioning arm — total 7+1 DOF before the surgeon-side console maps to the actual surgical manoeuvre.

Manipulability and workspace analysis matter at three levels:

  • Pre-operative arm placement. Surgeons + the da Vinci’s setup-joints place the patient-side cart so the instrument-tip workspace covers the surgical site dexterously. The system enforces a remote-centre-of-motion (RCM) at the trocar; the workspace is a conical region with apex at the RCM.
  • Intra-operative redundancy. With 7 internal DOF and 6-DOF task (forceps tip pose), the extra DOF is used to keep the external arm-to-arm spacing wide (prevent inter-arm collision) while the tip executes the surgeon’s command — pure null-space exploitation, transparent to the surgeon.
  • Dexterity scoring as a console feedback. Newer da Vinci consoles display a “dexterity meter” derived from of the instrument Jacobian; near zero, the surgeon is approaching an instrument singularity and the console suggests a reposition.

The da Vinci is the highest-cited industrial example of manipulability analysis affecting human-machine interaction: surgical outcomes correlate with the percentage of operating time spent in high-manipulability postures, motivating the 7-DOF design in the first place (Madhani et al. 1998 → da Vinci).

ABB IRB 360 FlexPicker — workspace shape from parallel kinematics

Unlike the serial arms above, the IRB 360 delta parallel manipulator has a workspace that is not approximately spherical — it is a flattened, asymmetric region bounded by three constraint surfaces, one per parallelogram leg. The boundary geometry is:

  • Lower bound (): set by the leg length from the base; the platform cannot drop below this without leg over-extension.
  • Upper bound (): set by the platform colliding with the base plate.
  • Radial bound (): platform-rod parallelogram angle exceeds a critical value (typically 30–35°) before the universal joints jam.

Manipulability inside the workspace is high throughout — the delta is designed for isotropic response (Clavel 1991 patent emphasises this), with condition number across most of . Singularities are mostly at the boundary (“Type-1” or “serial”) rather than in the interior; the rare “Type-2” or “parallel” singularity (Gosselin & Angeles 1990) occurs when two legs become coplanar, allowing internal mobility of the platform — for a 3-RUU delta this requires geometric coincidence that ABB’s IRB 360 design has been verified to avoid by joint-range limiting.

The flat workspace of the delta is why it dominates flat-pack pick-and-place (food trays, blister packs, electronic-component sorting): the working surface is below the base and the dexterity is uniformly high across that surface. Conversely, the delta is poor for deep-tote picking (limited -range) and unable to do inverted pick (no orientation freedom about the platform-vertical axis except for the optional fourth rotary).

9. Cross-references

  • kinematics-dh — forward / inverse kinematics, the Jacobian construction this note depends on, singularity classes.
  • manipulator-design — physical arm design; workspace size and reach drive the structural and actuator sizing.
  • dynamics-rigid-body — mass and inertia inputs to “effective” manipulability (loaded vs unloaded).
  • trajectory-generation — joint-space vs task-space interpolation around singularities; trajectory time-scaling near low manipulability.
  • path-planning — sample-based planners (RRT, PRM) using workspace + collision; manipulability as a roadmap cost.
  • impedance-control — force ellipsoid drives maximum-contact-force direction; manipulability shapes the Cartesian stiffness ellipsoid.
  • pid-control — joint-space PID under the hood of every Cartesian command; gain scheduling vs .
  • state-space-lqr — multi-axis coordinated control where the input gains are shaped by the manipulability ellipsoid.
  • state-space-methods — SVD, eigenvalue decomposition, and principal-axis representation.
  • statics-fundamentals — Jacobian-transpose maps end-effector force to joint torque; the dual of the manipulability ellipsoid.
  • mechanics-of-materials — link stiffness; structural deflection that defines the stiffness workspace under load.
  • robotics-control — controller languages (URScript, KRL, RAPID, KAREL) that expose workspace zones and DLS parameters.
  • ros2-robotics-config — URDF + xacro inputs to reachability calculators in MoveIt 2.

10. Citations

  1. Yoshikawa, T. “Manipulability of Robotic Mechanisms.” International Journal of Robotics Research, 4(2):3–9, 1985. The canonical Yoshikawa index.
  2. Asada, H. “A Geometrical Representation of Manipulator Dynamics and Its Application to Arm Design.” ASME Journal of Dynamic Systems, Measurement, and Control, 105(3):131–142, 1983. The force-ellipsoid foundation.
  3. Khatib, O. “A Unified Approach for Motion and Force Control of Robot Manipulators: The Operational Space Formulation.” IEEE Journal of Robotics and Automation, 3(1):43–53, 1987. Operational-space force ellipsoid.
  4. Klein, C.A. & Blaho, B.E. “Dexterity Measures for the Design and Control of Kinematically Redundant Manipulators.” International Journal of Robotics Research, 6(2):72–83, 1987. Condition-number-based dexterity index.
  5. Park, F.C. & Brockett, R.W. “Kinematic Dexterity of Robotic Mechanisms.” International Journal of Robotics Research, 13(1):1–15, 1994. Lie-theoretic dexterity foundations.
  6. Salisbury, J.K. & Craig, J.J. “Articulated Hands: Force Control and Kinematic Issues.” International Journal of Robotics Research, 1(1):4–17, 1982. Early condition-number / dexterity treatment.
  7. Liégeois, A. “Automatic Supervisory Control of the Configuration and Behaviour of Multibody Mechanisms.” IEEE Transactions on Systems, Man, and Cybernetics, 7(12):868–871, 1977. Null-space task prioritisation.
  8. Whitney, D.E. “Resolved Motion Rate Control of Manipulators and Human Prostheses.” IEEE Transactions on Man-Machine Systems, 10(2):47–53, 1969. Jacobian-based motion control + the velocity / force duality.
  9. Pieper, D.L. The Kinematics of Manipulators Under Computer Control. PhD thesis, Stanford University, 1968. Closed-form 6-DOF IK criterion.
  10. Tsai, L.-W. Robot Analysis: The Mechanics of Serial and Parallel Manipulators, Wiley, 1999. ISBN 978-0-471-32593-2. Workspace + singularity treatment, chapters 5–7.
  11. Murray, R.M., Li, Z. & Sastry, S.S. A Mathematical Introduction to Robotic Manipulation, CRC Press, 1994. ISBN 978-0-8493-7981-9. Chapters 3 + 5: kinematics, Jacobians, manipulability.
  12. Siciliano, B., Sciavicco, L., Villani, L. & Oriolo, G. Robotics: Modelling, Planning and Control, 2nd ed., Springer, 2010. ISBN 978-1-84628-642-1. Sections 3.9 (manipulability), 3.5 (workspace).
  13. Spong, M.W., Hutchinson, S. & Vidyasagar, M. Robot Modeling and Control, 2nd ed., Wiley, 2020. ISBN 978-1-119-52399-3. Chapter 4 (Jacobians and manipulability).
  14. Lynch, K.M. & Park, F.C. Modern Robotics: Mechanics, Planning, and Control, Cambridge University Press, 2017. ISBN 978-1-107-15630-2. Sections 5.3 (manipulability ellipsoids), 5.4 (singularities).
  15. Craig, J.J. Introduction to Robotics: Mechanics and Control, 4th ed., Pearson, 2018. ISBN 978-0-13-348960-8. Workspace and singularity treatment.
  16. Albu-Schäffer, A., Ott, Ch. & Hirzinger, G. “A Unified Passivity-based Control Framework for Position, Torque and Impedance Control of Flexible Joint Robots.” International Journal of Robotics Research, 26(1):23–39, 2007. DLR LWR III control framework.
  17. Patel, R.V. & Shadpey, F. Control of Redundant Robot Manipulators: Theory and Experiments, Springer LNCIS 316, 2005. ISBN 978-3-540-25071-6. Redundancy + manipulability optimisation.
  18. Madhani, A.J., Niemeyer, G. & Salisbury, J.K. “The Black Falcon: A Teleoperated Surgical Instrument for Minimally Invasive Surgery.” Proc. IEEE/RSJ IROS, vol. 2, pp. 936–944, 1998. Direct progenitor of da Vinci wristed instruments.
  19. Hayati, S. & Mirmirani, M. “Improving the absolute positioning accuracy of robot manipulators.” Journal of Robotic Systems, 2(4):397–413, 1985. Kinematic calibration that turns the catalogue workspace into the actual workspace.
  20. Corke, P. Robotics, Vision and Control: Fundamental Algorithms in Python, 3rd ed., Springer Tracts in Advanced Robotics, 2023. ISBN 978-3-031-06468-5. Practical workspace + manipulability tooling.
  21. Robotics Toolbox for Python (Peter Corke). github.com/petercorke/robotics-toolbox-python. manipulability, workspace, ellipsoid plotting.
  22. Pinocchio documentation. INRIA Stack-of-Tasks, https://stack-of-tasks.github.io/pinocchio/. Current rev 3.x (2025). Fast Jacobian + SVD for manipulability.
  23. MoveIt 2 documentation. PickNik Robotics / Open Source Robotics Foundation, https://moveit.picknik.ai/. Reachability map + workspace tools.
  24. MoveIt Servo documentation. https://moveit.picknik.ai/main/doc/concepts/servo. DLS singularity handling using activation.
  25. Franka Emika libfranka API reference. https://frankaemika.github.io/libfranka/. 1 kHz Jacobian + null-space control hooks.
  26. OpenRAVE documentation. http://openrave.org/docs/. databases.kinematicreachability dexterous-workspace map.
  27. Drake documentation. Toyota Research Institute / MIT, https://drake.mit.edu/. MultibodyPlant + AutoDiff manipulability gradients.
  28. ISO 9283:1998Manipulating industrial robots — Performance criteria and related test methods. Repeatability + workspace measurement methods.
  29. Universal Robots e-Series — Service Manual. Universal Robots A/S, rev 5.13, 2023-10. Reach, payload, workspace envelope.
  30. KUKA LBR iiwa 7 R800 / 14 R820 Datasheet. KUKA Roboter GmbH, 2018. Reach and dexterous-workspace specification.
  31. Nakamura, Y. Advanced Robotics: Redundancy and Optimization, Addison-Wesley, 1991. ISBN 978-0-201-15198-1. Task-priority redundancy resolution.
  32. Siciliano, B. & Slotine, J.-J.E. “A General Framework for Managing Multiple Tasks in Highly Redundant Robotic Systems.” Proc. 5th International Conference on Advanced Robotics (ICAR), vol. 2, pp. 1211–1216, 1991. Stacked task-priority IK.
  33. Bischoff, R., Kurth, J., Schreiber, G., Koeppe, R., Albu-Schäffer, A., Beyer, A., Eiberger, O., Haddadin, S., Stemmer, A., Grunwald, G. & Hirzinger, G. “The KUKA-DLR Lightweight Robot Arm — a new reference platform for robotics research and manufacturing.” Proc. ISR/ROBOTIK 2010, pp. 1–8, 2010. iiwa technology-transfer paper.
  34. Ott, Ch., Albu-Schäffer, A., Kugi, A. & Hirzinger, G. “On the Passivity-Based Impedance Control of Flexible Joint Robots.” IEEE Transactions on Robotics, 24(2):416–429, 2008. iiwa impedance-control mathematics.
  35. Suh, K.C. & Tanie, K. “On-line Computational Scheme for Mechanical Manipulators.” Journal of Dynamic Systems, Measurement, and Control, 102(2):69–76, 1980 (and extensions 2008). Real-time manipulability-gradient methods.
  36. Vinogradov, I.B., Kobrinsky, A.E., Stepanenko, Y.A. & Tives, L.T. “Details of Kinematics of Manipulators with the Method of Volumes.” Mekhanika Mashin, 27–28:5–16, 1971. Service-region / DSI origin.
  37. Lee, J. “A study on the manipulability measures for robot manipulators.” Proc. IEEE/RSJ IROS, vol. 3, pp. 1458–1465, 1997. DSI formulation.
  38. Clavel, R. “Device for the movement and positioning of an element in space.” US Patent 4,976,582, 1990. The Delta parallel-robot patent.
  39. Gosselin, C. & Angeles, J. “Singularity Analysis of Closed-Loop Kinematic Chains.” IEEE Transactions on Robotics and Automation, 6(3):281–290, 1990. Parallel-mechanism singularity classification.
  40. Khatib, O. “Real-Time Obstacle Avoidance for Manipulators and Mobile Robots.” International Journal of Robotics Research, 5(1):90–98, 1986. Potential-field obstacle avoidance, often projected into null-space.

Session log:

node ~/.claude/bin/obsidian-research.mjs log "Built Robotics/manipulability-workspace.md Tier 1 deep note"