One path to the tool

The wrist is three joints and one point

Three axes meeting at a point is what makes a six-joint arm's inverse problem solvable in closed form, and it is why every industrial arm is built that way. Move one of those axes by ten millimetres and the construction goes on returning eight confident answers, every one of them out by three and a half.

Assumes Eight ways to hold the same tool and When the link lengths are angles.

The last three joints of an industrial arm meet at a point. Not nearly: exactly, to whatever the machining allows, and the design goes to some trouble to make it so — the motors are pushed back down the forearm and the drive is taken forward through concentric shafts, which is more expensive than putting each motor at its own joint.

The reason is not mechanical. It is that three axes through one point make the inverse problem solvable in closed form, and a controller solving it a thousand times a second cannot afford anything else.

elbow arm at a postureelbow arm, drawn from 6 joint values through a product of 6 exponentials — no equation is solved anywhere in this picture, because an open chain has none to solve. The thin lines are the joint axes at this configuration, which are also the columns of the arm's Jacobian: the tool's velocity is a sum of turns about exactly those lines. Here the smallest singular value of that Jacobian is 0.3674 and the largest is 2.407, so the arm is comfortably away from a configuration where a direction of motion is lost. Drag θ₅ pitch.θ₁ baseθ₂ shoulderθ₃ elbowθ₄ roll θ₅ θ₆toolσ_min 0.3674 · condition 6.6the pose is a product of exponentials, not a solve
Fig. 1 Three axes through one point, drawn as the lines they are. Turn the fourth, fifth or sixth joint and the wrist centre does not move — every one of those rotations is about an axis through it. The labels stack because the three joints are at one place, which is the entire property this essay is about.

The property, measured

The claim is that the last three joints do not move the wrist centre. It is one line to check, and the site’s own gate checks it: drive joints four, five and six through twenty-four combinations spanning their ranges, and watch the point.

It moves by 6.0×10166.0 \times 10^{-16} metres. That is the floating-point noise of a product of six transforms, and it is what “the axes meet” means operationally.

Everything in the previous essay rests on that number. The construction’s first step is to find the wrist centre by backing off from the target along the tool axis, and its second is to solve three joints for that point as though the last three did not exist. Both steps are licensed by this measurement and by nothing else.

Pieper’s condition

The general statement is Pieper’s condition, from 1968: a six-joint arm has a closed-form inverse solution if three consecutive axes intersect at a point, or if three consecutive axes are parallel.

Both cases work for the same reason. The three special joints contribute a motion that leaves something invariant — a point, for the intersecting case; a direction, for the parallel one — and that invariant is enough to split six coupled equations into two sets of three. Without it, the six equations stay coupled and the problem is a piece of elimination theory that was open until the late 1980s and has sixteen solutions.

It is worth pausing on what kind of statement that is. A geometric coincidence in a machine is being arranged deliberately, so that an equation will decouple. The arm is not better at reaching things for having a spherical wrist. It is better at being told where to reach, which is a property of the arm and its controller together rather than of the arm.

This site has collected several designs of that shape. A Watt linkage’s tracer is placed where it is because the error’s fifth-order term vanishes there. A gear’s involute flank is the curve it is because that is the one that keeps a ratio constant. A Bennett linkage’s link lengths satisfy a relation because otherwise it does not move at all. The spherical wrist joins them: a shape chosen for what it makes computable.

A spherical four-bar: 80°, 60°, 95°, 70°Four revolute axes, all through one point, so the linkage lives on a sphere. Its link "lengths" are the angles between consecutive axes — 80°, 60°, 95°, 70° — and the arcs drawn between the axis directions measure 60.00°, 95.00°, 70.00°, 80.00°. The whole planar four-bar theory carries over with sines where lengths were, including Grashof's condition: sorted, the arcs give s + l = 155° against p + q = 150°, so the shortest arc does not turn all the way round — and swept, the input reaches 33 of 36 positions over a driveable range of 327°. This is the mechanism a universal joint is a special case of, with two of the four arcs at 90°.arcs 60°, 95°, 70°, 80°every axis through the centre
Fig. 2 The class the wrist belongs to: a spherical mechanism, whose every point stays on a sphere about one centre. This site met it in the spatial field as a four-bar whose link lengths are angles. A three-joint wrist is the open version of the same object, and the fact that three independent axes through a point span the whole rotation group is why it can hold any orientation at all.

The wrist is a spherical mechanism

Three revolute axes through a point is not a new object on this site. Every point of the moving body stays on a sphere about that point, and the mechanism is a spherical one — the same class as the universal joint and the spherical four-bar whose link lengths are angles.

That connection pays off immediately, because it says what the wrist can do without any calculation. A spherical mechanism’s configuration is a rotation; three independent axes through the point span the whole rotation group; therefore a spherical wrist with three non-coplanar axes can produce every orientation. Not most, not a large subset: all of them.

It also says where the trouble is. A spherical three-joint chain is a set of Euler angles by another name, and reading three angles off a rotation is the classical problem with the classical degeneracy: when the middle angle is zero, the first and third axes have become the same line and only their sum is determined. The wrist has lost a freedom.

Three singularities, and where each one is. The elbow singularity is at the edge of the workspace, where the arm is straight and cannot reach further — nothing is lost that could have been used. The shoulder singularity is where the two ways of facing the target merge, on a cylinder of radius 0.18 m about the base axis which is also the boundary of a hole the arm cannot reach into at all. The wrist singularity is the one that stops real machines: axes four and six in line, one rotation gone, in the middle of an ordinary working volume with nothing about the tool's position to suggest it. The rank falls by exactly one in all three — and what is lost differs. The elbow and the shoulder are constrained by a pure force, along the arm and across it; the wrist is constrained by a screw of pitch −0.629, which is a force and a couple together. Those are reciprocal screws rather than singular vectors, because a singular vector's direction depends on whether the arm was written in metres or millimetres and a screw does not.
Fig. 3 And there it is in the table, with the arm’s other two singularities beside it. The wrist singularity is the one that stops real machines, because unlike the elbow it is nowhere near the edge of the workspace: the arm is standing in the middle of an ordinary working volume, pointing its tool along its own forearm, which is a perfectly reasonable thing to have been asked to do.

The important thing about that row is what it is not. It is not gimbal lock. Gimbal lock is a rank drop in the map from three chosen numbers to an angular velocity, and it goes away if different numbers are chosen. This is a rank drop in the arm’s Jacobian: two of the six columns have become the same line, and no change of description puts them back. Two routes to a Jacobian separates the two by exhibiting a posture where the coordinates are singular and the arm is not.

Reading three angles off a rotation

The wrist half of the construction is a z-y-z Euler decomposition, and it is worth writing out because its two branches are two of the eight and its degeneracy is the singularity.

Whatever the first three joints did, the wrist has to supply the rest: a rotation RR, expressed in the frame the forearm has arrived at. With axes zz, yy, zz the three angles come out as

β=atan2 ⁣(±r132+r232, r33),α=atan2(±r23,±r13),γ=atan2(±r32,r31)\beta = \operatorname{atan2}\!\left(\pm\sqrt{r_{13}^2 + r_{23}^2},\ r_{33}\right), \qquad \alpha = \operatorname{atan2}(\pm r_{23}, \pm r_{13}), \qquad \gamma = \operatorname{atan2}(\pm r_{32}, \mp r_{31})

with one sign choice running through all three. Take it positive and the wrist folds one way; take it negative and β\beta changes sign while α\alpha and γ\gamma each shift by π\pi, which is the wrist flipped over with the tool pointing exactly where it was.

When β=0\beta = 0 the square root vanishes and neither α\alpha nor γ\gamma is determined — only their sum is, because the first and third axes have become the same line. There is no right answer to return there, and what this site’s code does is a convention: it puts the whole sum into the first angle and zero into the third. That is a choice, it is stated in the function, and it is the honest way to handle a degeneracy — the alternative, quietly returning whatever the arctangents produce from a matrix full of zeros, is how a controller ends up commanding a joint to swing 180° because a rounding error picked a branch.

The singularity is everywhere and nowhere

An obvious defence against the wrist singularity would be to stay away from wherever it is. It does not work, and the reason is one this field keeps arriving at: a singularity is a set of configurations, not a set of places.

Sample the wrist-singular set — the fifth joint at zero, every other joint anywhere within its limits — and ask where the tool ends up. Over 1,680 such postures the tool lands at radii from 0.495 to 2.580 m, against a workspace that reaches 2.578. The singular configurations cover essentially the entire working volume.

So there is no region of space to avoid. At almost every point the arm can reach, there are postures that are singular and postures that are not, and which of the two the arm is in depends on how it got there. That is exactly the distinction the workspace essay drew between a singular configuration and a boundary, and it is why avoiding singularities is a question about paths rather than about geometry — which is the next essay but one.

A universal joint at 40° input, shafts 25° apartTwo shafts meeting at 25°, joined by a cross whose two pins are at right angles to each other and each at right angles to the shaft it carries. That is the whole geometry, and everything else follows from it. This is a four-joint spatial loop with all four axes through one point: Kutzbach counts −2 and the screw system has rank 3, so it has one degree of freedom and turns. At this instant the output shaft is at 42.79° while the input is at 40°, and the output is turning 1.0124 times as fast — which is not 1, and never is except at the four points of each turn where the curves cross.inputoutputresidual 1.3e-16positioned by solving, not by drawing
Fig. 4 The two-joint case, and the reason a wrist has three. A universal joint’s two axes meet at a point and it can transmit rotation through an angle — but the output does not turn at the input’s speed, because two axes cannot span three-dimensional rotation. Adding the third is what turns a coupling into a wrist.

What happens when the axes miss

Now the measurement this essay exists for.

Real wrists do not always intersect. A hollow wrist, which several manufacturers build so that cables and hoses can run through the arm rather than flapping outside it, has axes that miss each other by a few millimetres. So does any wrist with a bearing arrangement that will not fit through a point. The datasheets describe these as compact, not as defective, and they are correct.

Take the arm above, move its fifth axis sideways by 10 mm, and run the same construction.

It returns eight postures. They are labelled front and back, elbow up and elbow down, wrist and wrist flipped, exactly as before. Each of them is a set of six joint values that looks entirely ordinary. And every one of them puts the tool somewhere other than where it was asked: the best is 3.6 mm out, the worst 7.7 mm, on a 10 mm offset.

Nothing inside the construction can notice. Every step of it is arithmetic about a wrist centre, and on this arm the wrist centre is not a fixed point of the last three joints — driving them moves it by 6.9 mm. The construction is answering a question about an arm that does not exist, and it has no way to find that out.

What finds it out is the round trip: run each answer forward through the product of exponentials and compare with the pose asked for. That check is why every inverse solution in this field is run forward before it is drawn, and this is the case it exists for.

8 postures, one tool pose. The tool is at one place, held one way. Eight different sets of joint values put it there, and this is all of them at once: two ways for the base joint to face the target, two for the elbow, and two for the wrist — two by two by two. Every posture here came out of a closed form and was checked by running the arm forward again; the worst disagreement is below 10⁻¹⁴ of a metre. Which of them a machine can actually use is a separate question, and it is answered by the joint limits rather than by the geometry.
Fig. 5 The eight, on the arm whose wrist does meet. Every one of these was checked forward and lands within 1.8 × 10⁻¹⁵ of the target. On the arm whose wrist misses by ten millimetres the same picture is drawn, the same eight branches are labelled, and the tool is somewhere else in all eight — which is why the figure asserts the round trip rather than the count.

The miss scales with the offset almost exactly linearly — 0.74 mm at a 2 mm offset, 3.6 at 10, 16 at 50 — which is a useful thing to know and a dangerous thing to rely on. It says a nearly-intersecting wrist gives a nearly-right answer, which is true; it does not say that the answer is good enough, because 3.6 mm is enormous for an arm whose repeatability is quoted in hundredths of a millimetre.

What machines with offset wrists actually do

They do not use this construction. There are three ways out and all three are in service.

Iterate. Damped least squares from the previous posture, which converges in a few steps because the previous posture is close, and which is what the search route does. The cost is determinism: the answer depends on where the iteration started, and near a singularity it can jump branch without saying so.

Iterate from the closed form. Use the decoupled construction as a seed — it is 3.6 mm out, which is an excellent starting guess — and take two Newton steps. This is the common answer, and it keeps the branch labelling: the eight seeds converge to eight solutions that inherit their names.

Solve the general case. The sixteen-solution elimination exists and can be implemented. It is expensive and it is done, in offline planners rather than in servo loops.

The third is worth a note on this site’s boundaries. Its algebra field has homotopy continuation and root counting, and a general 6R inverse problem is exactly the kind of polynomial system that machinery is for. It has not been done here, and saying “the machinery exists” is not the same as having done it — which is the same distinction that field made about Bézout numbers.

The ellipsoid collapsing. The smallest singular value of the Jacobian, along a path that carries elbow arm through a singular configuration. It reaches 8.82e-9 at 50% of the way along — which is not a small number, it is a zero being approached, and the joint rates a controller needs to hold a task-space speed are its reciprocal. Nothing about the tool's position on this path is remarkable at that point; the singularity is a property of the configuration, not of the place.
Fig. 6 What the wrist singularity does to the arm’s ability to move, along a path that goes through it. The fifth joint passes through zero and the smallest singular value goes to a zero with it. Nothing about the tool’s position on that path is remarkable, which is the property that makes this singularity the one that matters in service.

Three parallel axes, for the same reason

Pieper’s other case deserves its own sentence, because it is what the machines in the other half of the market are built on.

A palletiser, a SCARA and most excavators have three consecutive parallel axes, and their inverse problems are also closed-form. The invariant there is a direction rather than a point: three parallel revolutes cannot change the direction of anything perpendicular to them, so the orientation about that axis is a sum of three angles and the position is a planar two-link problem. It is the planar arm’s solution wearing a different hat.

And the two cases have opposite relationships to the parameterisation essay’s finding. Intersecting axes are fine for a DH table and awkward to build; parallel axes are easy to build and are exactly where the DH table has no answer. A designer picking Pieper’s parallel case for its stiffness gets, for free, a description of the arm whose parameters jump by order one when an axis is tilted by a millionth of a radian.

SCARA at a postureSCARA, drawn from 4 joint values through a product of 4 exponentials — no equation is solved anywhere in this picture, because an open chain has none to solve. The thin lines are the joint axes at this configuration, which are also the columns of the arm's Jacobian: the tool's velocity is a sum of turns about exactly those lines. Here the smallest singular value of that Jacobian is 0.1024 and the largest is 1.809, so the arm is comfortably away from a configuration where a direction of motion is lost. Drag θ₁.θ₁θ₂d₃θ₄toolσ_min 0.1024 · condition 17.7the pose is a product of exponentials, not a solve
Fig. 7 Pieper’s second case, standing up: a SCARA’s first two axes and its slide are all parallel, and the fourth joint is parallel too. Four parallel axes, a closed-form inverse solution in two lines, and a DH table with no defined offsets anywhere in it.

The wrist that is not there

One design avoids all of it by having no wrist at all: a three-joint arm carrying a tool that does not need orienting — a drill on a Cartesian gantry, a pick-and-place head, a sucker. Three joints, three coordinates, one closed-form solution and no wrist singularity anywhere in the workspace, because the machine cannot be asked for an orientation it might lose.

That is not a compromise, it is a specification. A large fraction of the arms in the world are of this kind, and they are cheaper, faster and more accurate than a six-joint arm for the jobs they can do. What they cannot do is present a tool at an angle, and the moment a job requires that — welding a fillet, laying a bead round a corner, deburring an edge — the three extra joints arrive and so does everything in this field.

What the concentric shafts cost

The mechanical price of putting three axes through one point is worth stating, because it is not small and it explains why some arms decline to pay it.

The three wrist motors cannot sit at the wrist. There is no room — three motors and three gearboxes will not fit inside a sphere the size of a fist, and if they did, their mass at the end of the forearm would be the dominant load on the shoulder. So they sit at the back of the forearm and drive the wrist through concentric shafts or through a bevel train running the length of it.

That has three consequences, all kinematic and all measurable elsewhere on this site:

  • Coupling between the wrist joints. With a shared shaft train, turning one wrist joint turns another unless the transmission compensates. Some arms compensate mechanically, some in software, and the ones that compensate in software have a wrist whose joint angles are not the numbers the motors read. That is a gear-train ratio problem sitting inside a kinematics problem.
  • Backlash where it is worst. Three trains in series, each with a mesh, at the end of the longest lever in the machine. The backlash essay counts what a mesh has to give away; here it is given away at the joint whose errors are amplified least, which is the one saving grace.
  • A longer forearm. The motors have to go somewhere, and where they go makes the link they are in longer — which moves the wrist further from the shoulder, which is exactly the lever arm the error budget says the shoulder’s error is multiplied by.

None of that changes what this essay’s construction does. All of it changes whether the arm the construction describes is the arm on the floor, and that is the subject of the two essays about calibration and error.

elbow arm at a postureelbow arm, drawn from 6 joint values through a product of 6 exponentials — no equation is solved anywhere in this picture, because an open chain has none to solve. The thin lines are the joint axes at this configuration, which are also the columns of the arm's Jacobian: the tool's velocity is a sum of turns about exactly those lines. Here the smallest singular value of that Jacobian is 0.3674 and the largest is 2.407, so the arm is comfortably away from a configuration where a direction of motion is lost. Drag θ₆ roll.θ₁ baseθ₂ shoulderθ₃ elbowθ₄ roll θ₅ θ₆toolσ_min 0.3674 · condition 6.6the pose is a product of exponentials, not a solve
Fig. 8 The last joint driven on its own. The two short ticks are the tool’s own axes; they turn, and the tool point does not move at all, because that axis passes through it. The figure had to be given those ticks to be drawn at all — without them the thirteen drag frames were identical and the registry refused them, which is the same fact the error budget reports as a lever arm of zero and the same fact that lets the construction split the problem in two.

What the decoupling buys, restated

Three axes through a point costs concentric shafts, a longer forearm, and a singularity in the middle of the working volume that will never go away.

It buys a construction: eight exact postures from a target pose, in a few dozen operations, each labelled by which way the arm is folded. Every industrial arm on the planet has made that trade, and the trade was made against an equation rather than against a load. It is the clearest case this site has of a mechanism shaped by what somebody needed to be able to compute.

The linearity of the miss with the offset is what makes the second remedy work, and it is worth saying why. A seed whose error is bounded and known in advance is a much better seed than one that is merely usually good: at a 10 mm offset the construction lands 3.6 mm out, and 3.6 mm is a distance a damped least-squares iteration crosses in two or three steps from a starting point with no singularity between it and the answer. So the iteration count is bounded by the offset rather than by the pose, and a controller can guarantee a solve time — which is the property a real-time system actually needs and which an unseeded iteration cannot promise. That is the practical value of measuring the error’s scaling rather than merely noting that the construction is wrong: an error of unknown size is a reason to abandon a method, and an error known to be linear in a manufacturing dimension is a reason to keep it and budget for it.

What this makes readable

Essays that name this one as a prerequisite.

About the same objects

Not linked from either essay — found by the objects both name.

What links here

The 8 of 10 essays linking to this one that name the most of the same objects.

The objects this essay names

Each one links to every other essay that touches it.

Closed formEuler anglesInverse kinematicsPieper conditionRankSerial manipulatorSingularitySpherical four-barSpherical wristWrist singularity