One path to the tool

Where an error at the shoulder ends up

The same angular error at every joint of an arm, and the tool is out by 0.156 mm because of the shoulder, 0.017 mm because of the wrist roll and exactly nothing because of the last joint. The numbers are not properties of the joints. Each one is the distance from the tool to that joint's axis, measurable off the drawing with a ruler.

Assumes Two routes to a sensitivity and Worst case and the square root.

Give every joint of an arm the same error — a hundred microradians, about a fiftieth of a degree, which is a good encoder on a well-made machine — and ask what the tool does about it.

What a microradian at each joint is worth. The same error at every joint of elbow arm, and what each one does to the tool. The numbers are not a property of the joints — every one of them is the distance from the tool to that joint's axis, computed two ways that share no arithmetic and agreeing to 6.3e-10. The joint that matters most is θ₂ shoulder, at 0.1557 mm against 0.0000 for the least — a spread of 9.0 times, decided entirely by how far each axis is from the tool. One joint is worth exactly nothing: its axis passes through the tool point, so turning it changes where the tool is pointing and not where it is.
Fig. 1 Six identical errors and six different consequences, spanning a factor of ninety before the last one, which is exactly zero. The right-hand column is the whole explanation: each contribution is the distance from the tool to that joint’s axis, and the bars are the levers.

The contribution is a lever arm

A revolute joint’s column in the Jacobian is ω×r\boldsymbol\omega \times \mathbf r, where ω\boldsymbol\omega is the axis direction and r\mathbf r runs from a point on the axis to the tool. The magnitude of a cross product is the length of one vector times the perpendicular component of the other, so the column’s size is the perpendicular distance from the tool to the axis line — nothing else.

That is a length, and it can be drawn.

Every joint's lever arm. The thin lines run from the tool to each joint's axis, meeting it square. Their lengths are what a radian of error at each joint costs the tool in metres — not a rule of thumb but the Jacobian column, which is ω × r and therefore that perpendicular exactly. The shortest of them belongs to the joint nearest the work and the longest to the joint furthest from it, which is why an arm's accuracy is decided at the shoulder and its resolution at the wrist.
Fig. 2 The six lever arms, each running from the tool to a joint axis and meeting it square. Their lengths are the numbers in the bar chart above, in metres per radian. The joint furthest from the tool has the longest lever and the largest error contribution; the last joint’s axis passes through the tool and its lever is zero.

So an arm’s error budget has a picture, and the picture explains its shape. The joints get less important as they get nearer the work. A machine’s accuracy is decided at its shoulder and its resolution at its wrist, and the two are different quantities with different owners.

Three routes, and only two of them test anything

The claim is checked three ways and it is worth being precise about what each check establishes, because two of them are the same check wearing different clothes.

The Jacobian column, computed from transported screws. A re-solve: nudge one joint by 10610^{-6} rad, run the whole forward map again, and measure how far the tool moved. These two agree to 10510^{-5} relative, which is the finite difference’s noise floor, and they are both computations of the same derivative — if the arm’s model were wrong they would agree beautifully about the wrong arm.

The perpendicular distance. Take the tool’s position, take the joint’s axis as a line, drop a perpendicular, measure it. This route computes no derivative at all; it is a piece of geometry about two objects in the drawing. It agrees with the other two to 101210^{-12}.

The third is the one that tests the model, because it would part company with the others the moment a joint’s axis were entered in the wrong direction. This site’s habit is to say “two routes to the same number” and the distinction inside that phrase is worth marking: two computations of one quantity test the arithmetic; a computation and a measurement by a different definition test the object.

Two routes to the same derivative. How much the output angle moves when the coupler length moves, through one turn, computed twice. One route rebuilds the mechanism at b ± 10⁻⁶ and solves both from scratch; the other differentiates the constraint equations and solves one linear system against the analytic Jacobian. They lie on top of each other — the strip beneath plots the difference on a four-decade log scale, and its largest value anywhere in the turn is 2.9e-10 against a sensitivity of order 0.41. That is the only independent check there is of the Jacobian itself, whose coupler rows carried four wrong signs from the foundation phase to 2026-08-12 without ever drawing anything wrong.
Fig. 3 The pair of routes this site checks every sensitivity with, on the mechanism the tolerance field opened on. One differentiates the closure equations; the other re-solves the linkage with a dimension nudged. An arm’s version is the Jacobian column and the re-run forward map, and it has one advantage: with no closure equation there is no change point for the two routes to part at.

Worst case and what actually happens

Six contributions, added two ways, and this is the tolerance field’s oldest argument arriving at a robot.

Worst case assumes every error takes its largest value and every one of them pushes the tool the same way. On this arm at this posture that is 0.360 mm.

Root sum square assumes the errors are independent and unrelated in sign, which for six encoders on six different motors is what they are. That gives 0.199 mm.

Worst case, and what actually happens. Every joint of elbow arm carrying an error of 100 microradians — about a fiftieth of a degree, which is a good encoder. Added the wrong way at once the tool is out by 0.360 mm; added as a root sum square, which is what independent errors do, it is 0.199 mm. The ratio is 1.81, and specifying to the first when the second is what the machine shows is how a tolerance gets written twice as tight as it needs to be. The single largest contribution is θ₂ shoulder, at 0.156 mm, and it is largest because it is furthest from the tool.
Fig. 4 The two totals with the largest single contributor for scale. The ratio is 1.81 — specify to the worst case when the root sum square is what the machine shows and the tolerance is written 81% tighter than it needs to be, which on a robot means buying encoders that cost several times as much for accuracy nobody will ever see.

The ratio is not a constant of nature; it depends on how many contributions there are and how evenly they are matched. For nn equal contributions it is n\sqrt{n}, which for six would be 2.449. Here it is 1.81, lower because the contributions are far from equal — the shoulder is worth more than the three wrist joints put together, and one term dominating pulls the ratio toward 1.

That is the same relationship the seven-length stack-up measured on a linkage, and it transfers because it is arithmetic rather than mechanism.

The budget moves as the arm moves

The lever arms are distances between the tool and six lines, and the arm folding changes all of them. So there is no such thing as an arm’s error budget; there is a budget at a posture.

Measured over three hundred postures: the root-sum-square total runs from 0.191 mm to 0.250 mm, a spread of 1.31, and the worst-case-to-RSS ratio runs from 1.565 to 1.854.

Two things are worth taking from that. The spread is real but modest — a factor of 1.3, not 10 — because the dominant lever is the shoulder’s and the shoulder is always roughly an arm’s length from the tool however the arm is folded. And the shoulder is the dominant contributor at every single one of the three hundred postures, without exception. The ranking is not posture-dependent even though the values are.

That is a designer’s licence to think about the shoulder first, and it is worth having as a measurement rather than as an intuition, because the intuition that the wrist matters most — it is nearest the work, after all — is common and exactly backwards.

Which pin's play costs the most. Each pin's clearance taken one at a time, at 0.01 on links of 1 to 4, with the direction swept rather than assumed. The ranking runs A 32%, B 25%, O₂ 22%, O₄ 21% — a spread of 1.52 against the 3.43 the four lengths spread over. Clearances are more evenly weighted than length tolerances because each pin joins two links and so enters two of the four sensitivities, which is why the best bearing buys less than the best-held length does — and why it still goes somewhere the load path does not suggest.
Fig. 5 The same question on a linkage, and asked about its joints rather than its lengths: given a required output accuracy, how much clearance may each pin have? The answer there and here has the same shape — allocate inversely to the sensitivity — and the arm’s sensitivities are the six perpendicular distances above, which is why its allocation table can be read off a drawing.

Allocating a budget backwards

The measurement above runs forwards: given the errors, find the tool’s. The question a designer has is the reverse — given a tool accuracy, how accurate does each joint have to be — and the levers answer it directly.

Divide a target equally, so that each contributing joint takes the same share of the root-sum-square total. For a target of 0.100 mm across five contributing joints, each may contribute 0.100/5=0.04470.100/\sqrt{5} = 0.0447 mm, and the angle that produces is that share divided by the lever:

joint lever angle allowed
base 0.635 m 70.5 µrad (14.5″)
shoulder 1.557 m 28.7 µrad (5.9″)
elbow 1.018 m 43.9 µrad (9.1″)
wrist roll 0.172 m 259.5 µrad (53.5″)
wrist pitch 0.220 m 203.3 µrad (41.9″)
tool roll 0 anything

The spread is a factor of nine, and it goes the way the levers do. The shoulder needs to be nine times better than the fourth joint to make the same contribution, and the last joint needs no positional accuracy whatever.

Put encoders beside that. A 17-bit absolute encoder resolves 47.9 µrad, a 19-bit one 12.0 µrad, and a 21-bit one 3.0 µrad. So a 0.1 mm arm of this size wants 19 bits at the shoulder and elbow and can get away with 17 at the wrist — which is exactly how such machines are specified, and it is pleasant to see the specification fall out of six perpendicular distances rather than out of a catalogue.

Equal shares are not the only allocation, of course. A joint that is cheap to make accurate should be made more accurate than its share and one that is expensive less, which turns this into a cost optimisation the geometry cannot do. What the geometry supplies is the exchange rate: how many microradians at each joint buy one micron at the tool, and that is the table above.

What this is not: repeatability

A robot’s datasheet quotes repeatability, usually a small number like ±0.05 mm, and it is not what this essay measures.

Repeatability is how close the tool comes to the same place when commanded to the same joint values twice. It is dominated by backlash, thermal drift, and the fineness of the encoders — and it is small because none of those changes much between one visit and the next.

Accuracy is how close the tool comes to where it was told to go in space, which requires the model to be right: the link lengths, the axis directions, the joint offsets. It is typically ten to fifty times worse than the repeatability on an uncalibrated machine, and the gap is not a manufacturing failure. It is the difference between a machine that returns to a taught point and one that can be given a coordinate.

This essay’s budget is an accuracy budget. What it prices is the model’s errors — a joint whose true angle differs from what the controller believes — propagated to the tool. The calibration essay is the other half: which of those model errors can be found by measurement, and which cannot be found at all.

Angles and lengths do not add

There is one arithmetic trap in a serial arm’s budget that a linkage’s does not have, and it is the same units problem this field keeps meeting.

A joint angle error contributes a lever arm times an angle: metres per radian, times radians, gives metres. A link length error contributes one to one: a millimetre of extra forearm puts the tool a millimetre further out, whatever the posture.

Those are different kinds of quantity and they cannot be compared until both are converted to tool millimetres. The conversion is exactly the lever arm, and the consequence is that a joint’s angular tolerance and a link’s length tolerance are only comparable at a posture. On this arm a 100 µrad shoulder error is worth 0.156 mm, so it is equivalent to a 0.156 mm error in a link — which is a slack machining tolerance and a tight encoder, and that comparison is the one a designer actually needs.

The four-lengths essay made the linkage version of this point: a mechanism’s sensitivity to its own dimensions is not uniform, and the ranking is a design output rather than an assumption. An arm’s version is more legible because the sensitivities are distances that can be pointed at.

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 θ₂ shoulder.θ₁ baseθ₂ shoulderθ₃ elbowθ₄ roll θ₅ θ₆toolσ_min 0.3674 · condition 6.6the pose is a product of exponentials, not a solve
Fig. 6 The posture the budget is computed at, with the axes drawn. Every lever arm in the table is the distance from the tool to one of these lines, so the ranking can be read off the picture before anything is computed: the shoulder’s line is furthest from the tool and the last joint’s passes through it.

The joint that does not matter

The zero in the table is worth its own paragraph, because it is a design consequence rather than a curiosity.

The last joint’s axis passes through the tool point. Its lever is zero, so an error in its angle moves the tool not at all — it changes only what the tool is pointing at. That is not an approximation; it is exact, and it holds at every posture, because the tool is defined as a point on that axis.

Two things follow. The cheapest encoder on the machine can go on the last joint, as far as positional accuracy is concerned. And a tool whose tip is off that axis — a bent nozzle, an offset gripper finger, a drill in a chuck that is not quite centred — breaks the property immediately: the lever becomes the offset, and the last joint starts contributing like any other. Fitting an offset tool to a robot converts a joint that did not matter into one that does, which is a real effect and rarely noticed at the time.

What a microradian at each joint is worth. The same error at every joint of S-R-S arm, and what each one does to the tool. The numbers are not a property of the joints — every one of them is the distance from the tool to that joint's axis, computed two ways that share no arithmetic and agreeing to 1.8e-10. The joint that matters most is θ₁, at 0.0762 mm against 0.0000 for the least — a spread of 10.7 times, decided entirely by how far each axis is from the tool. One joint is worth exactly nothing: its axis passes through the tool point, so turning it changes where the tool is pointing and not where it is.
Fig. 7 The same budget on the seven-joint arm, where the extra joint brings an extra lever. Redundancy costs one more contribution to the error and buys the freedom to choose among postures — which, since the budget varies with posture, is also a freedom to pick a shape in which the tool is more accurately placed. That optimisation is somebody’s design objective and is outside this site; the geometry it would run on is the figure above.

The same two routes, on a different mechanism

It is worth being explicit that this essay’s method is not new to the site. The tolerance field opened by computing a linkage’s sensitivity to its own dimensions two ways — differentiating the closure equations, and re-solving the mechanism with a dimension nudged — and asserting that they agree.

The pair here is the same pair. The Jacobian column is the derivative; the re-solve is the mechanism rebuilt with a joint moved. What changes is which mechanism, and one thing that does not change is worth noticing: on a loop the two routes part at a change point, where the closure equation’s linearisation stops being valid, and the tolerance field measured exactly that. On an arm they part nowhere, because there is no closure equation to linearise — the forward map is smooth everywhere and its derivative is exact everywhere.

That is the open chain’s one unambiguous advantage over a loop, and it is the same advantage as never being refused: with nothing to solve, there is nothing whose solution can misbehave. The difficulty is all in the inverse direction, and the inverse direction is where an arm’s sensitivities do become awkward — near a singularity, the joint angles needed to correct a tool error grow as one over the distance, which is this essay’s table read backwards through a matrix that is losing rank.

The base and the tool are lever arms too

Six joints is not the whole model. Where the arm is bolted down and where the tool sits on the flange are twelve more parameters, and they propagate differently from the joints in a way worth stating.

A base error is a rigid displacement of the whole machine: a millimetre of base offset puts the tool a millimetre out, one for one, at every posture. A base tilt is a lever again — the lever being the distance from the base to the tool, which is the longest lever in the machine, up to 2.58 m here. A tenth of a degree of tilt on the mounting plate is 4.5 mm at full reach, which is why robots are shimmed and why the shimming is checked.

A tool error is the same story from the other end and with a short lever: a tool-length error is one for one, a tool angle error is multiplied by the tool’s own length, which is 0.22 m here and rather less than the arm.

Both sets are what a calibration is trying to find, and both are in the identification model the next essay counts. Its result — that only 4R + 2P + 6 of the parameters are findable — is the statement that some of these twelve cannot be told apart from the joints’ own errors by any measurement, which is a fact about lever arms being shared.

The boundary, as ever

Everything here is geometry: an angle in, a length out, no force anywhere. What is left out is not small.

Deflection under load. A real arm sags under its own weight and under whatever it is holding, by an amount that depends on the posture and can dwarf the encoder errors above. That is statics and it is outside this site.

Backlash and clearance. The practice field built the machinery for these on linkages and it applies here directly: a gear train with backlash gives a joint a band of angles rather than an angle, and the band propagates through exactly the lever arms above. This is a genuine gap in this field rather than a boundary — the tools exist, the arm has not been run through them.

Thermal growth. A metre of aluminium grows a quarter of a millimetre over 10 °C, which is larger than every contribution in the table. It is why a calibrated machine is calibrated warm, and why accuracy specifications carry a temperature.

Each of those is a length or an angle in the end, and each ends up at the tool through the same six levers.

What the ladder has been climbing

This essay sits on the tolerance anchor, which is the longest ladder on this site, and it is worth saying what the arm adds to it.

That ladder began with the observation that a length is a range and worked upward through sensitivities computed two ways, the fact that four lengths do not matter equally, worst case against root sum square, where a stack-up stops working, a seven-length hundred-corner enumeration, and tolerancing the holes rather than the lengths.

Every rung of it has been about a mechanism whose sensitivities had to be computed to be known — a four-bar’s dependence on its coupler length is not something anybody can see by looking at it. The arm’s are different in exactly one respect: they are visible. The lever arms are lines in the drawing, their lengths are the sensitivities, and a designer can rank the joints by eye before computing anything.

That makes this a good rung to end a ladder on, and it makes one general point that the linkage essays could not. A sensitivity is not an abstract derivative; it is a geometric quantity that some mechanisms display and others hide. A four-bar hides its; a serial arm wears its on the outside. Which of those a machine is decides how much of its error budget can be reasoned about and how much has to be measured.

The last joint contributing exactly nothing is worth ending on, because it is the sharpest instance of the essay’s own point and it generalises. The tool’s roll axis passes through the tool, so its distance from the tool is zero, so its lever arm is zero, so its angular error moves the tool point not at all. That is not a property of the joint’s accuracy — it is a property of the tool being on the axis, and it would be true of the worst-made joint in the arm. Which says exactly where accuracy is worth buying and where it is not: an error’s contribution is a distance, so accuracy should be bought in proportion to how far a joint is from the thing being positioned. A shoulder bearing carries the whole arm’s length as a lever and deserves the money; a wrist roll carries the tool’s own offset; the last joint carries nothing. That is a budget allocation with a formula behind it rather than a rule of thumb, and it inverts the intuition that the joint nearest the work should be the best one.

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

Essays that link to this one from their own argument.

The objects this essay names

Each one links to every other essay that touches it.

Error propagationJacobianLever armRepeatabilityRoot-sum-squareSensitivitySerial manipulatorStack-upToleranceWorst case