One path to the tool

Where the hand can go

A robot is sold on its reach, which is one number and describes a sphere the arm touches at one posture. The set the tool can actually be put in is an annulus with a hole; the set it can be put in at every orientation is a quarter of that; and reordering the same three links leaves the first unchanged and destroys the second.

Assumes The chain that does not close and The workspace is not a shape you choose.

The first question anybody asks about an arm has a number for an answer, and the number is on the datasheet: reach. It is quoted the way a car’s top speed is quoted, and it means about as much.

What it names is the radius of a sphere the tool touches, at one posture, with the arm straight. What a machine actually needs to know is a set — everywhere the tool can be put — and that set has a shape, a hole in the middle, and a much smaller subset inside it where the tool can be put the way a job needs it.

Reachable, and dexterous. A 3-link planar arm with links 1.6, 1.2, 0.7. The outer region is everywhere the tool can be put: an annulus from 0.00 to 3.50. The inner region is everywhere it can be put at every tool angle — from 1.10 to 2.10, which is 26% of the area. Both are measured by counting cells on a 300 × 300 grid and both agree with the area computed from the radii to 0.09%, which is what makes the picture a measurement.
Fig. 1 A three-link planar arm with links 1.6, 1.2 and 0.7. The outer region is everywhere the tool can be placed at all. The inner one is everywhere it can be placed at every tool angle — 26.1% of the area, and the part a machine can actually be programmed against without thinking about posture. Both are measured by counting cells on a 300 × 300 grid, and both agree with the area computed from the radii to a hundredth of a per cent.

Two sets, and the smaller one is the useful one

Reachable is where the tool can be put. Dexterous is where it can be put at every orientation.

For a planar arm both are annuli and both have closed forms. The reachable one runs from the shortest the chain can fold to the sum of its links. The dexterous one is what the wrist — the joint before the last link — can reach, shrunk by the last link on both sides: a point is dexterous when every position the last link’s far end could take while pointing anywhere is still reachable by the links before it.

That is a construction rather than a formula, and it has the property this site likes: it can be checked against something computed differently. Counting the cells of a fine grid and computing π(R2r2)\pi(R^2 - r^2) from the radii are two entirely separate calculations, and on the arm above they give 38.4843 and 38.4845.

The dexterous set is the one a programmer cares about, because outside it a commanded orientation may simply not exist and the machine’s behaviour depends on which posture it happens to be in. At 26% of the reachable area, most of an arm’s advertised working volume is somewhere the tool can be put but not pointed.

The hole, and how to get it wrong

An arm whose longest link exceeds the sum of the others cannot fold to nothing, and the region it cannot reach is a disc about the base. The inner radius is

rinner=max(0, maxothers)r_{\text{inner}} = \max\bigl(0,\ \ell_{\max} - \textstyle\sum_{\text{others}} \ell\bigr)

and the obvious alternative — 123|\ell_1 - \ell_2 - \ell_3|, taking the first link as the big one — is right often enough to survive casual use and wrong in a way that a sampled area catches immediately.

Take the links 1.6, 0.4 and 0.3 and permute them. The reachable area is 14.0743 for all three orderings, which it must be: which order the links are in cannot change what the chain can fold to, because a chain of three segments reaches a point exactly when the three lengths and that distance satisfy the triangle inequality, and that condition is symmetric.

The naive inner radius is not symmetric. It gives 0.900 for one ordering, 1.500 for the second and 1.700 for the third, and the areas it predicts are 14.0743, 9.5504 and 7.5398 — the last of them 46% short of the measured value. One expression, three answers, on three arms that have the same reach.

Reachable, and dexterous. A 3-link planar arm with links 1.6, 0.4, 0.3. The outer region is everywhere the tool can be put: an annulus from 0.90 to 2.30. The inner region is everywhere it can be put at every tool angle — from 1.50 to 1.70, which is 14% of the area. Both are measured by counting cells on a 300 × 300 grid and both agree with the area computed from the radii to 0.01%, which is what makes the picture a measurement.
Fig. 2 The same arm with a hole: links 1.6, 0.4 and 0.3, whose longest link is 0.9 longer than the other two together, so the tool cannot come within 0.9 of the base. The sampled area is 14.0743 and the annulus formula gives 14.0743. Nothing in the picture says which link is which, and nothing in the area does either.

What the ordering does change

The reachable set does not care about the order of the links. The dexterous set cares enormously, and the difference is the sharpest thing this essay has to say.

With links 1.6, 0.4, 0.3 in that order, the dexterous region is 14.3% of the reachable one. With the same three lengths reordered so the long link is last — 0.3, 0.4, 1.6 — the dexterous region is zero. Not small: empty. There is not one point in the plane at which that arm can hold its tool at every angle, because swinging the last link right round sweeps a circle of radius 1.6 and the first two links together can only reach 0.7.

Same three parts, same reach, same folded radius, same everything the datasheet records — and one arrangement can be pointed anywhere somewhere and the other cannot be pointed anywhere anywhere.

Reachable, and dexterous. A 3-link planar arm with links 1.6, 0.4, 0.3. The outer region is everywhere the tool can be put: an annulus from 0.90 to 2.30. The inner region is everywhere it can be put at every tool angle — from 1.50 to 1.70, which is 14% of the area. Both are measured by counting cells on a 300 × 300 grid and both agree with the area computed from the radii to 0.01%, which is what makes the picture a measurement.
Fig. 3 The dexterous annulus of the arm with the long link first: a thin ring, 14.3% of the reachable area, running from 1.5 to 1.7. Outside it the tool can be positioned but not oriented freely, which for a machine holding a tool against a surface is the difference between a working cell and a rearranged one. The same three links with the long one last have no dexterous region at all.
Reachable, and dexterous. A 3-link planar arm with links 1.2, 1, 0.9. The outer region is everywhere the tool can be put: an annulus from 0.00 to 3.10. The inner region is everywhere it can be put at every tool angle — from 1.10 to 1.30, which is 5% of the area. Both are measured by counting cells on a 300 × 300 grid and both agree with the area computed from the radii to 0.68%, which is what makes the picture a measurement.
Fig. 4 A different set of links — 1.2, 1.0 and 0.9 — and a much fatter dexterous ring. The three lengths are close to equal, which is what makes the region where the tool can be pointed anywhere large; the arm above, whose first link is more than twice its last, has a quarter of the area. Reach is set by the sum of the links and dexterity by how evenly they are divided.

The boundary is a singularity, and two of them are not the boundary

There is a second route to the annulus radii and it does not mention radii at all.

A point is on the edge of what an arm can reach exactly when the arm, at that point, cannot move outward: the map from joint rates to tool velocity has lost a direction. So the boundary of the reachable set is the image of the arm’s singular postures, and the radii can be found by looking for rank deficiency rather than by folding links.

For a three-link planar arm the position Jacobian is two rows by three columns, and it falls to rank one exactly when all three links are collinear — which happens at four postures, one for each way of folding a link back on the one before. For links 1.6, 0.4 and 0.3 those four postures put the tool at radii

2.3,1.7,1.5,0.92.3,\qquad 1.7,\qquad 1.5,\qquad 0.9

and the first and last are the annulus. The middle two are not on the boundary of anything. They are radii at which one particular posture is singular while other postures reaching the same point are perfectly well conditioned — the arm folded back on itself, standing at a place it can also reach comfortably some other way.

That distinction is the whole difference between a singularity and a boundary, and it is easy to lose. A singularity is a property of a configuration; a boundary is a property of a set of positions. Every boundary point is the image of a singular configuration, and not every singular configuration lands on a boundary. The arm that can reach a point two ways, one of them singular, is the first sight of the redundancy that gets an essay of its own six rungs up — and this arm is redundant, three joints for a two-coordinate task, which is exactly why it has singular postures with ordinary neighbours.

In space, with no closed form

The six-joint arm has no annulus and no formula, and pretending otherwise would be exactly the sort of quoted number the applied field spent a phase separating from measured ones.

What can be said is a bound and a measurement. The bound is the triangle inequality: the tool cannot be further from the base than the base-to-shoulder distance plus each link in turn. For this arm that is 2.6023 m. Sampling 1,331 postures of the first three joints, the furthest the tool gets is 2.5782 — 99.08% of the bound, which is the arm standing straight up with its offsets working out very nearly in line.

The bound was wrong on the first attempt and the sample caught it. Written as the sum of the link lengths alone it came to 2.5759, and the sample reached 2.5782 — a hundred and nine per cent of an upper bound, which is an impossible number and would have been printed in a caption as a fact. What was missing is the shoulder offset: the arm’s plane sits 0.18 m to one side of the base axis, so the first segment is 0.182+0.62\sqrt{0.18^2 + 0.6^2} rather than 0.6. A bound that a measurement exceeds is not a bound, and this is the cheapest possible way to find that out.

Where a six-joint arm's postures actually land. 1331 postures of the six-joint arm's first three joints, sorted by how far from the base they put the tool. The obvious bound is the sum of the link lengths, 2.602 m, and the sample gets to 2.578 — 99.1% of it, which is the arm being straight. What the distribution shows is that a joint space sampled evenly does not produce a workspace sampled evenly: the tool spends most of its configurations at a middling radius and almost none at the extremes, because reaching the boundary needs one particular posture and reaching the middle needs any of many.
Fig. 5 Where those 1,331 postures put the tool, by distance from the base. The distribution is the useful part: a joint space sampled evenly does not give a workspace sampled evenly. Reaching the boundary takes one particular posture and reaching the middle takes any of many, so the tool spends almost none of its configurations at the extremes — which is also why a machine’s accuracy is usually specified over an inner region rather than over the whole envelope.

The hole is where the arm is, not where it is not

There is a second hole in a spatial arm’s workspace and it is not the folded one. This arm has a shoulder offset: its swinging plane is set 0.18 m to one side of the base axis, and that means the wrist centre can never get closer to that axis than 0.18 m, whatever the joints do.

So the workspace has a cylindrical hole up the middle, of radius exactly the offset, running the whole height of the machine. It is a small hole and it is directly above the base — the one place an arm is most likely to be asked to reach, because that is where the pedestal is and where a fixture gets bolted.

That hole’s surface is also where the shoulder singularity lives, which is not a coincidence: the two ways of facing a target merge exactly where the target is as near the axis as the arm can get. A designer removes the hole by removing the offset, and gets in exchange a singularity that is reachable in the middle of the workspace rather than on the edge of a region the arm was never going to use. Neither is free.

Joint limits, and the end of the closed forms

Everything above assumes every joint turns all the way round, and no arm does.

Put limits on and both annuli stop being annuli. The reachable set becomes a region with a shape that depends on all the limits at once, and there is no closed form worth writing — which is why the workspace figure refuses to draw the comparison when the arm is limited rather than quietly dropping the check. A measurement that has nothing to be checked against should say so.

Limits also break the symmetry that made link order irrelevant. Two arms with the same links in different orders have the same unlimited reach; give them the same limits and they do not, because the limits act on different joints. Most of what makes a real machine’s workspace an awkward shape is limits rather than lengths.

And limits are what make the configuration space a square rather than a torus, which turns out to decide whether an obstacle can trap the arm at all. That is fourteen essays’ worth of consequence from a pair of hard stops, and it is the last essay in this field for that reason.

2 postures, one tool pose. The tool is at one place, held one way. Both sets of joint values that put it there are drawn. 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. 6 Why the annulus has two layers. Inside the reachable region every point has two postures; the boundary is where they have merged into one; outside there are none. The dexterous region is the stronger condition — every point of it has two postures for every tool angle, which is what lets a program ask for an orientation without knowing where the arm happens to be.

Three sets called the workspace

It is worth separating the sets, because “workspace” is used for at least three of them and an argument about robot reach is usually two people meaning different ones.

  • The reachable set, in three dimensions: every position the tool point can occupy. This is what the annuli above are, and it is what a factory layout is drawn against.
  • The dexterous set, also in three dimensions: every position at which the tool can be held in any orientation. Always smaller, sometimes empty, and the one a process engineer needs.
  • The set of reachable poses, in six dimensions: position and orientation together. This is the honest object and nobody draws it, because six-dimensional sets do not go on paper. Its volume is not comparable with the other two — it has units of length cubed times angle cubed — and quoting a single “workspace volume” for an arm quietly picks one of the three.

The middle one has a further wrinkle that the planar case hides. In the plane, “any orientation” is one angle turning through 360°, and the construction — take the circle the last link’s end sweeps and ask whether it is entirely reachable — is exact. In space “any orientation” is a three-parameter set, and whether a point is dexterous is a question about all of it. For a decoupled six-joint arm it collapses back to something manageable, because the wrist can supply every orientation on its own as long as the wrist centre is reachable, which is the same trick that makes the inverse problem solvable and is the next essay’s subject. For an arm without that geometry there is no collapse and the answer is a sampled one.

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. 7 The three postures at which the six-joint arm loses a direction of motion, with the elbow one marked. It is the boundary case: the arm is straight, the tool is as far out as it goes, and what cannot be done is moving further — which is a disability with nothing on the other side of it. The other two are inside the working volume and are the subject of three essays further on.

What kind of number “reach” is

The applied field ended by sorting catalogue numbers into five kinds, and reach belongs in that ledger.

It is exact as a bound: the arm really does touch that sphere, and the figure above measures how nearly. It is a bound rather than an operating point, which puts it in better company than most of the numbers that field examined — a chain drive’s ratio is a mean and a rocker’s is quoted at one position, but a reach is genuinely the largest value of a quantity.

What makes it misleading is not the number but the set it suggests. A reader hears “1.6 metres” and pictures a sphere of working volume; what the arm has is a sphere with a hole in the middle, a cylindrical hole up the axis, a much smaller region where orientation is free, and limits chopping pieces off all of it. Every one of those is measurable and none of them is on the datasheet.

That is a familiar shape by now. The number is not wrong. It is answering a question about a maximum, and it is being read as an answer to a question about a set.

What a grid can and cannot see

Both areas here are measured by counting cells, and a count of cells is a measurement with a resolution. It is worth saying what that resolution buys and where it would fail, because a sampled set is the one figure on this site that could be quietly wrong at any grid size and still look right.

At 300 × 300 over a square 7.35 across, a cell is 24.5 mm. The hole of radius 0.9 is 73 cells wide; the dexterous ring of the second arm is 0.2 wide, or eight cells. Both are resolved comfortably, and the agreement with the closed form to a hundredth of a per cent says so — a boundary misplaced by half a cell everywhere would show up as an area error of about one part in three hundred, which is a hundred times what is actually seen.

What a grid at this spacing would miss is a feature thinner than a cell: a dexterous region that had narrowed to a line, or a void the width of a millimetre. Both are real possibilities for an arm with joint limits, where regions do pinch off. That is the case the closed form is dropped in, and it is the case where a figure would be reporting the grid rather than the arm — which is why the check is written to require a closed form to compare against and to refuse rather than to quietly skip when there is none.

planar 3R at a postureplanar 3R, drawn from 3 joint values through a product of 3 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.0000 and the largest is 4.326, so the arm is approaching a configuration where a direction of motion is lost. Drag θ2.θ1θ2θ3toolσ_min 0.0000 · condition Infinitythe pose is a product of exponentials, not a solve
Fig. 8 The posture where the reach is achieved: every link in line, the tool at 3.5 from the base, and the arm at a singularity — σ_min is zero to eight decimal places, because from here the tool cannot be moved outward by any combination of joint rates. A datasheet’s reach figure is measured at this configuration, which is the one configuration where the arm has lost a direction of motion. Drag the middle joint and watch it leave.
What each machine is sold with. Every mechanism in this field arrives with a number. The middle column is that number; the right-hand column is what the mechanism was measured to have, by the library named under the row. The coloured bar and the word under each machine are the verdict: exact means the mechanism has the number at every position, mean that it is the average of something that varies within every cycle, bounded that it is false by a stated and negligible amount, point that it is the value at one position, and quoted that the mechanism has no such quantity at all. The lit row is the one this essay is about. Of the 14 rows, 6 are quoted and 3 are exact.
Fig. 9 The ledger the applied field built, where every machine’s catalogue number is sorted into one of five verdicts. Reach belongs in it as a bound — a genuine largest value of a real quantity, which puts it in better company than most of that table. What makes it misleading is not the number but the set a reader pictures behind it.

The link ordering leaving reach unchanged and destroying dexterity is measured above at 14.3 per cent for one arrangement, and the arithmetic behind it is short enough to do — and it produces a design rule rather than an observation.

For a planar three-link arm, the tool is at the target and the wrist centre is at distance 3\ell_3 from it, in whatever direction the required orientation dictates. To reach the target at every orientation, the first two links must be able to reach every point of the circle of radius 3\ell_3 about it. So the dexterous annulus is the reachable annulus of the first two links, shrunk by 3\ell_3 on the outside and grown by 3\ell_3 on the inside:

outer =1+23= \ell_1 + \ell_2 - \ell_3, inner =12+3= |\ell_1 - \ell_2| + \ell_3.

Both expressions are symmetric in 1\ell_1 and 2\ell_2 and depend on 3\ell_3 twice. So swapping the first two links changes nothing, and the whole of the ordering effect is in which link is last.

Check it against the essay’s number. With 1.6, 0.4, 0.3 the outer is 2.00.3=1.72.0 - 0.3 = 1.7 and the inner is 1.2+0.3=1.51.2 + 0.3 = 1.5; the reachable pair is 2.3 and 0.9; and the ratio of the two annular areas is (1.721.52)/(2.320.92)=0.64/4.48(1.7^2 - 1.5^2)/(2.3^2 - 0.9^2) = 0.64/4.48, which is 14.3 per cent exactly.

Now put the long link last: 0.4, 0.3, 1.6 gives an outer radius of 0.71.60.7 - 1.6, which is negative. The dexterous set is empty — the arm can reach the same annulus and cannot hold a required orientation anywhere in it. Same three links, same reach, and a machine that cannot do the job at all.

Which gives the rule in one line. The last link should be as short as the design allows, because it is subtracted from the outer dexterous radius and added to the inner one, and it is the only length whose position in the chain matters. That is a decision a datasheet’s reach figure is completely blind to, and it is the difference between fourteen per cent of a workspace and none of it.

What the next question is

Everything here is about where. Nothing yet is about how many ways, and that is the question the rest of this field turns on: a point inside the reachable set has at least one posture that gets there, a point inside the dexterous set has one for every orientation, and the number of postures for a given pose is neither one nor two but eight.

Finding them is a construction rather than a search, and the construction needs a piece of geometry the arms in this essay have not been asked about yet: three joint axes that meet at a point.

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 11 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.

AnnulusDexterous workspaceForward kinematicsJoint limitsOpen chainReachReachable workspaceRedundancySerial manipulatorWorkspace