The freedom that does nothing
Assumes Where the arm loses a direction and Eight ways to hold the same tool.
Six joints and six task coordinates is the balanced case: a general pose has eight postures, finitely many, and a machine picks one. Add a seventh joint and the count stops being a count.
The arm changes shape and the tool does not move. That is what redundancy is, and it is a much stranger property than “an extra joint” suggests.
The null space
The Jacobian maps seven joint rates to six task velocities. A map from a bigger space to a smaller one has a kernel: joint rates that produce no tool motion at all. For a seven-joint arm at an ordinary posture the kernel is one-dimensional, and moving along it is the self-motion above.
Finding it is a rank calculation, and the site does it the way it does every subspace question — from the eigenvectors of rather than by elimination — for the reason the screw field established: row reduction answers how many and destroys which, and here which is the entire subject.
The dimension is , which for this arm is almost everywhere and 2 at a singularity, where the rank drops as well. That is worth noticing: a redundant arm at a singularity has a bigger null space, not a smaller one. The extra freedom does not rescue it — the tool still cannot move in the lost direction — it merely adds another way for the arm to shuffle about while failing to.
Walking it, and the correction step that matters
A null-space direction is tangent to the set of postures that hold the tool still; it is not on it. A walk along the tangent leaves the set at second order, and the leaving accumulates.
So each step of the walk is followed by one inverse solve back onto the task. Without that correction the tool wanders by about m over a sweep; with it, by . The difference is eight orders of magnitude and it is entirely down to a step that costs one Newton iteration.
This matters for what the figure is allowed to claim. “The tool does not move” is a statement about a computed path, and a path computed by tangent steps alone would drift visibly at drawing scale while every individual step looked correct. The drift is printed in the figure’s own note for the same reason every residual on this site is printed: it is the evidence, and a caption that says exactly is a caption nobody can check.
What the walk cannot report
The null-space walk finds a curve through the posture it started from. It does not find the solution set, and the difference is worth stating because it is the same limitation a multi-start search has when counting the eight.
A redundant arm’s solution set for one pose can have more than one component. The seven-joint arm’s shoulder and elbow can be folded the other way — the same distinction as elbow up and elbow down on a six-joint arm — and the resulting posture also holds the tool where it is, and no null-space walk from one will ever reach the other. Walking a curve reports on that curve and on no other.
So the honest description of a redundant arm’s inverse solution is: finitely many curves, not one, and the count of curves is the same discrete branch count the six-joint arm had. Redundancy adds a dimension to each branch; it does not merge them. That is a statement about connected components, which is what the last essay in this field is about, and it is the reason the two essays end up talking about the same object.
screw field. Redundant constraints and redundant freedoms are opposite conditions sharing a word — one is a rank deficiency in a mechanism’s constraint system and the other in its transpose — and the table that measures the first is the machinery that measures the second.Two routes to the same circle
The walk knows nothing about circles. It takes a Jacobian, finds a null direction, steps, corrects, and repeats.
There is a second description, and it is a construction rather than a computation. For a seven-joint arm with a spherical shoulder and a spherical wrist, holding the tool fixes the wrist centre; the shoulder is fixed by the base; and the elbow is at a fixed distance from each. Two spheres, intersecting in a circle. Its plane is perpendicular to the shoulder-to-wrist line, its centre is on that line at a position the cosine rule gives, and its radius follows from the two link lengths and the distance between the ends. No Jacobian, no iteration, no arm.
The walk’s elbow track and that circle agree to m — a tenth of a picometre, on a circle of radius 0.192 m.
That is the two-routes discipline at its most useful. The construction says the self-motion is a circle and nothing else; the walk says the null space generates some curve. Agreement establishes both — that the closed form describes the actual motion, and that the numerical machinery is not drifting somewhere plausible.
The swivel angle
The circle has a name in robotics and it deserves it: the elbow swivel, or arm angle. The one parameter of the null-space motion is where the elbow sits on that circle, and it is the number a seven-joint arm’s controller carries in addition to the six task coordinates.
It is the reason a person can hold a cup in one place and move their elbow — the human arm is a seven-joint shoulder-elbow-wrist chain and the swivel is exactly the freedom being used. It is also the reason collaborative arms are built with seven joints: the swivel is what lets the machine keep a tool pose while getting its own elbow out of the way of a person, a fixture or a wall.
The pinned arm is a mechanism this site already knows
Here is the tie that makes this essay part of the site rather than an appendix to it.
Pin the tool to the ground. The open chain becomes a closed loop of seven revolute joints and seven links, and Kutzbach’s criterion — which the constraint field has been running since the expansion — counts .
Mobility one. A single-degree-of-freedom spatial mechanism, of exactly the kind this site has been solving for six phases, and its one degree of freedom is the swivel. The measurement agrees: seven joints minus a screw-system rank of six is one.
So a redundant arm’s self-motion is not a special robotics concept. It is a mechanism, it has a mobility, and the mobility can be counted by a formula from 1917 and measured by a rank. The essay one rung up takes that further and finds the place where the formula is wrong about it.
What the freedom is spent on
A one-parameter family of postures is only useful if something chooses among them, and the choices are all of the same shape: move along the null space to improve something the task does not constrain.
Joint limits. Swivel the elbow until every joint is as far from its stops as possible. This is the commonest use and it is why a seven-joint arm can work in postures a six-joint one cannot — at 11% of poses a six-joint arm has no usable posture at all, and a seventh joint turns that discrete failure into a search along a curve.
Obstacles. Swivel the elbow away from whatever it would otherwise hit, with the tool unmoved. The tool’s task is untouched and the arm’s shape is negotiable, which is exactly what a person does reaching into a cupboard.
Conditioning. Swivel toward the posture where the smallest singular value is largest, keeping the arm as far from a singularity as the task allows. This does not remove singularities — the lost direction is lost whatever the elbow does — but it can keep the arm away from the ones the task does not force it into.
All three are optimisations along a curve, and all three are outside this site: they involve choosing an objective, and an objective is a design decision rather than a geometry. What is inside is the curve, its dimension, and the measurement that the tool does not move along it.
Minimum norm is a choice too
“Take the smallest joint motion that gets there” sounds like the neutral option and it is not, for the same reason the pose distance needed a length scale: smallest is measured in something.
The pseudo-inverse minimises the sum of the squared joint rates. That treats every joint as equivalent — a radian at the base counts the same as a radian at the wrist — and the two are not equivalent in any physical sense. The base carries the whole arm and turns slowly; the wrist carries a tool and turns quickly; a radian at the base moves the tool 0.94 m and a radian at the last wrist joint moves it nothing at all.
Weight the joints differently — by their speed limits, by their inertias, by their lever arms — and the “minimum norm” step changes, and so does where the arm ends up on the self-motion curve. Every one of those weightings is defensible and none of them is the geometry’s own.
Joint space at least has a natural metric in a way task space does not: all seven coordinates are angles, so summing their squares is dimensionally consistent, which is more than can be said for adding a radian to a metre. But dimensional consistency is not the same as being the right thing to minimise, and the drift measured below is a drift under one particular choice.
Where redundancy is not
The word gets used loosely and two neighbouring things are not this.
A redundant constraint is the opposite phenomenon and this site has a whole field about it. An overconstrained mechanism has more constraints than it needs and moves anyway because they are not independent; a redundant arm has more freedoms than the task needs. The two words share a root and describe opposite conditions — one has a rank deficiency in its constraint system, the other a rank deficiency in the transpose.
A task with fewer than six coordinates makes an ordinary arm redundant without adding a joint. Drilling a hole needs five coordinates, not six — the drill’s rotation about its own axis is nobody’s business — so a six-joint arm doing that job has a one-dimensional null space and a self-motion, exactly like the seven-joint arm above. The redundancy is a property of the arm and the task together, and this is where most of the redundancy in the world actually comes from. It is why the Jacobian essay makes the task state its rows: the same matrix, different rows, different null space.
The tool comes back and the arm does not
Here is the property that turns redundancy from a convenience into a design problem, and it is easy to state and easy to measure.
Take the tool round a closed loop — a small circle, 50 mm across, back to exactly where it started — resolving the redundancy the way nearly every machine does: at each step, ask for the next pose and take the smallest joint motion that gets there. That is the pseudo-inverse solution, and this site’s damped least squares returns it.
After a complete circuit the tool is back to within m. The joints are 0.30° away from where they began.
Not one joint: the whole posture, drifted along the self-motion curve. The arm has come back to the same pose in a different shape.
The obvious suspicion is accumulated numerical error, and the test for that is refinement. Round the same circle in 90, 180 and 360 steps the drift comes out at 0.305°, 0.299° and 0.296° — it converges rather than shrinking. An error that accumulates halves when the steps double; this settles on a value, which means it is a property of the path.
It is a holonomy, in the same sense that a Foucault pendulum’s plane precesses and a falling cat rights itself: a closed loop downstairs lifts to an open path upstairs. Downstairs is the space of tool poses; upstairs is the self-motion curve; and how far round the curve the arm has travelled depends on the area the tool enclosed, not on its endpoints.
The consequence for a machine is concrete. A redundant arm running the same programme repeatedly will not run it in the same posture each time — it drifts, cycle after cycle, until a joint reaches a limit and the programme fails on the two hundredth part rather than the first. Fixing it means adding something to the resolution that pulls the posture back toward a preferred one, which trades exact minimum-norm motion for repeatability. That trade is standard, it has a literature under “cyclic” and “non-cyclic” resolution, and the reason it is needed is the measurement above.
What it costs
Seven joints is not free, and the costs are the reason six is still the common number.
The inverse problem stops being a construction. With eight discrete answers a controller can compute all of them and choose. With a curve it has to choose and parameterise, and the standard approach — the pseudo-inverse with a null-space projection — is an iteration whose behaviour near singularities is its own subject.
Repeatability stops being automatic, and this one is worth a measurement rather than a mention — see below.
One more of everything. A joint, a motor, a gearbox, a set of bearings, a length of cable, a lever arm in the error budget and four more parameters in the calibration — whose identifiable count, 4R + 2P + 6, goes from 30 to 34.
What it buys is the ability to hold a pose and still have something left to negotiate with, and for a machine working next to people or inside a fixture that is worth all of it.
The shape of the answer changed
It is worth ending on what actually happened to the problem, because it is not that an answer got bigger.
For six joints the inverse problem’s answer is a list: eight postures, each nameable, each testable against joint limits, each either usable or not. Everything a controller does with it is a choice among finitely many things.
For seven the answer is a set with a topology. It has a dimension, it has connected components, it has a boundary where the joint limits cut it, and it can be empty — and none of those questions has a yes-or-no answer of the kind a list gives. Asking “can this arm hold that pose” stops being a lookup and becomes a question about whether a curve intersects a box.
That is the same shift the configuration space essay makes about the whole site at once, four rungs up. The eight postures were always points of a set; the redundant arm is the first mechanism in this field where the set is large enough that the pretence cannot be kept up.
There is a way of naming the self-motion that connects it to another field of this collection, and the connection is exact rather than an analogy. Take the tool round a closed loop in task space — out and back, returning to the pose it started at — and the arm does not in general return to the joint configuration it started at. The tool comes home and the elbow does not. That is a holonomy: a closed path downstairs producing a displacement upstairs, which is the same structure as a ball rolled round a square and as the four-leg wiggle. The three cases have different names in different literatures and one shape. The practical consequence is the one those essays also reach: a redundant arm’s joint configuration is not a function of its tool pose, so the arm has memory, and a controller that assumes otherwise will be surprised by where the elbow has got to after a long job. It has to be tracked, exactly as a winch’s fill has to be counted rather than read off a shaft — and for the same reason, that the state is larger than the thing being measured.
What this makes readable
Essays that name this one as a prerequisite.
- The space of configurations One path to the tool
About the same objects
Not linked from either essay — found by the objects both name.
- Counting and measuring mobility jacobian · mobility · rank · redundancy
- The mechanism Grübler says cannot move jacobian · mobility · rank · redundancy
- A constraint that has been said already mobility · null space · rank
- A ratio is a null space mobility · null space · rank
- A straight line at constant speed inverse kinematics · jacobian · serial manipulator
- It moves to first order and not at all mobility · null space · rank
What links here
The 8 of 12 essays linking to this one that name the most of the same objects.
- The chain that does not close One path to the tool
- Pin the tool and it is a loop One path to the tool
- Where the hand can go One path to the tool
- The arm that hits itself One path to the tool
- The space of configurations One path to the tool
- Where an error at the shoulder ends up One path to the tool
- An arm is a tree One path to the tool
- Legs intersect What a joint is
The objects this essay names
Each one links to every other essay that touches it.
Inverse kinematicsJacobianJoint limitsMobilityNull spaceRankRedundancySelf-motionSerial manipulatorSwivel angle