The distance between two poses
Assumes A straight line at constant speed and Every motion is a screw.
Two poses. Move the tool from one to the other by the shortest route.
The instruction sounds complete and it is not, and the incompleteness is not a matter of precision. There is no shortest route, because there is no distance — and the reason is arithmetic rather than philosophical: a pose is a rotation and a translation, and comparing two of them means adding a radian to a metre.
Three definitions of shortest
Position first. Interpolate the tool’s position along the straight line between its endpoints, and carry the orientation along its own shortest arc, independently. This is what most controllers do when told to move linearly, and the tool path is a straight line of 1.223 m by construction.
One screw. Chasles’s theorem says that any rigid displacement — however the pose changed — can be achieved by a single rotation about a single axis combined with a translation along that same axis. One screw, one axis, one parameter. Interpolate along it and the tool travels 1.443 m, eighteen per cent further, on a helix about an axis of pitch −0.096 m per radian.
Joint space. Run every joint linearly. The tool travels 1.550 m, twenty-seven per cent further than the line.
None of the three is an approximation of another. The first is shortest in position and says nothing about orientation. The second is the unique motion with no coordinate system in it at all — it is defined by the two poses alone, and any two observers will construct the same helix. The third is shortest in the arm’s own coordinates and is the only one guaranteed to be reachable at every step.
Why there is no answer
The set of rigid poses is a group, and the question “how far apart are two of its elements” has an answer whenever the group carries a metric that respects its own structure. For rotations alone it does: the angle of the relative rotation is a distance, and it does not care which frame it is measured in or which order the composition runs. Rotations have a bi-invariant metric and it is essentially unique.
Rigid poses do not. It is a theorem rather than an inconvenience: SE(3) admits no bi-invariant Riemannian metric. Any distance defined on poses fails to be invariant either under changing where the world’s origin is or under changing where the body’s own reference point is — and usually under both.
The practical face of that is the units. Write a pose distance as
and is a length that somebody has to choose. It is the size of a rotation counted as “worth” a metre of translation. Nothing in the geometry supplies it.
The choice changes the answer, at 74.5 millimetres
That would be a footnote if the choice never mattered. It matters, and here is the measurement.
Start the arm at a posture. Consider two nearby poses: one reached by rolling the last wrist joint by 1.2 rad, which turns the tool through 69° and — because the last axis passes through the tool point — moves it not at all; and one reached by swinging the base by 0.15 rad, which turns the tool by 8.6° and carries it 88.7 mm.
Which is nearer to where the arm started?
| length scale L | 37 mm | 75 mm | 298 mm |
|---|---|---|---|
| nearer pose | the wrist roll | the base swing | the base swing |
They trade places at mm. Below that scale a rotation is cheap and the wrist roll is the smaller change; above it a rotation is expensive and the base swing is. And 74.5 mm is not an exotic number — it is about the width of a gripper, comfortably inside the range of lengths a person specifying a robot cell would think of as natural.
So two controllers, one written with a length scale of a centimetre and one with a length scale of a metre, will disagree about which of two poses is nearer for ordinary motions of an ordinary machine. Neither is wrong.
Where the site has been quietly choosing
This essay’s own machinery makes that choice, and it is worth pointing at rather than leaving buried.
poseError here takes the norm of the twist between two poses — three components in radians and three in metres, summed in quadrature — which is exactly the formula above with metre, chosen by not thinking about it. That is defensible in the one place it is used and nowhere else: it is a convergence test inside the inverse solver, where both halves are on their way to and no comparison between them is being made. A number that is going to zero does not need its units decided.
Where it would not be defensible is anywhere the value itself is read: “the nearest of the eight postures”, “the pose error of this calibration”, “how close the arm got”. Every one of those is a comparison, and every one needs its length scale stated. The calibration essay hits the same wall from a different side and solves it differently — by normalising each column of a matrix, so that the rank decision is about independence rather than about units.
There is a third solution and it is the one this field prefers where it can: do not form a scalar at all. The singularity essay reports a rank and a reciprocal screw rather than a condition number, because both survive a change of units. A screw is a line with a pitch on it, and a line does not care what it is measured in.
How the crossover was measured
The two candidate poses were not picked to make a point; they were picked because they are the two cheapest motions this arm has, and their asymmetry falls out of the geometry rather than being arranged.
Rolling the last wrist joint turns the tool and does not move it at all, because that axis passes through the tool point — the same fact the error budget reports as a lever arm of exactly zero. So candidate one is a pure rotation: 1.2 rad of turn, 0.0 mm of travel.
Swinging the base turns the tool very little and carries it some way, because the tool is 0.94 m out from the base axis. Candidate two is mostly a translation: 0.15 rad of turn, 88.7 mm of travel.
Set the two distances equal and solve for the length scale:
which is 74.5 mm here. There is nothing delicate about the calculation; what makes it worth doing is that the answer lands in the middle of the range of lengths a person would pick, rather than at or where the ambiguity would be harmless.
And the check on it insists on exactly that. The assertion behind this measurement fails if the crossover is smaller than 5 mm or larger than half a metre, because outside that band the finding would be an observation about arithmetic rather than about machines — and it fails if the two candidates do not swap places, which would mean the crossover was a division rather than an event.
What the screw motion is for
Given all that, the screw interpolation deserves defending, because it is the only one of the three that is coordinate-free.
The other two both depend on choices. Interpolating position and orientation separately depends on which point of the body is called the tool: pick a different point and the straight line is a different straight line, and the tool point’s path stops being straight. Joint-space interpolation depends on the arm — the same two poses reached by a different machine give a different path.
The screw path depends on nothing but the two poses. Its axis, pitch and angle are properties of the displacement, computed here by taking the logarithm of the relative transform. That is the same object the screw field has been drawing since the spatial phase, and the same helix, and this is Chasles’s theorem being used as a motion rather than as a description.
What it is not is shortest in any of the obvious senses, and it has one property that is worth measuring rather than asserting: the path length depends on which point of the body is measured.
Under one screw motion, different points of the same rigid hand travel different distances. Measured on this move:
| point of the hand | distance travelled |
|---|---|
| on the screw axis | 0.190 m |
| the tool point | 1.443 m |
| 100 mm to one side | 1.518 m |
| 300 mm to one side | 1.723 m |
The point on the axis travels 0.190 m, which is exactly the pitch times the angle — it advances along the axis and does not go round at all. Everything else sweeps a helix, and the further from the axis it is, the wider. A factor of nine between the least and the most, for one motion of one body.
So “how far did it move” is not a question about a body. It is a question about a body and a chosen point, and the choice is the same kind of choice as the length scale: unavoidable, consequential and rarely stated. This is the third time in one essay that a quantity turns out to need a parameter nobody supplied, and it is the same parameter twice — where the tool is — appearing once in the metric and once in the measurement.
What a machine does
In service the question is settled by the job, and it is worth naming the usual settlements because each is a length scale in disguise.
Weld a seam: the position matters to a tenth of a millimetre and the orientation to a few degrees, so is implicitly small — a degree of tilt is worth much less than a millimetre of drift.
Point a camera or a spray head: the orientation is the whole task and the standoff distance is loose. is large.
Move between two waypoints in free space: nothing matters but not colliding and not taking too long, which is why this move is done in joint space, where there is no metric problem at all — six angles, one unit, an unambiguous distance.
That last one is worth noticing. Joint space has a natural metric and task space does not. All six joint coordinates are angles on the same kind of quantity, so the sum of their squares is a distance in a way that a pose difference is not. It is one more entry in the list of things the arm’s own coordinates make easy and the task’s coordinates make hard — the same list that has straight lines on it, and singularities, and the eight postures.
What the three paths share
For all the disagreement, the three interpolations agree about two things exactly, and both are worth stating because they bound how bad the situation is.
They have the same endpoints. Every one of them starts at the first pose and finishes at the second, exactly, and a check at either end cannot tell them apart. That is why a program tested by driving to its waypoints and measuring there will pass whichever interpolation the controller happens to implement, and why the difference only shows up when something is in the way in the middle.
They agree when the rotation is zero. If the two poses differ by a pure translation, all three collapse onto the same straight line: the screw motion degenerates to a translation along its own direction, the split interpolation is that line by construction, and joint-space interpolation is the only one that can still wander. That is a real case — a machine moving a part sideways without turning it — and it is also the reason the test poses for this measurement had to be chosen with a large rotation between them. A pair with 5° of relative rotation would have shown three paths agreeing to a millimetre and proved nothing.
The pair used here differ by 113.5° and 1.223 m, which is an ordinary pick-and-place move rather than an extreme one. The disagreement at that scale is 327 mm between the shortest and the longest tool path — enough to matter, from a pair of poses nobody would call unusual.
The length scale the job supplies
There is no canonical length to measure a radian in, and that is a fact about rigid poses. It does not follow that every choice is as good as every other for a particular machine doing a particular job, and there is a principled one available that is worth naming.
Take the task’s two tolerances: how far the tool may be out of position, and how far it may be out of orientation. A weld seam might allow 0.1 mm and 3°; a camera might allow 10 mm and 0.2°. Divide the first by the second, in consistent units, and the result is a length — the length at which a radian of orientation error costs the same as a millimetre of position error, for that job.
Use that as and the metric stops being arbitrary. A pose distance computed with it is measured in fractions of the tolerance budget, so a distance of one means the pose is at the edge of what the job accepts, and comparing two poses compares how much of the budget each spends. That is a quantity with a meaning rather than a number in mixed units.
It also explains why the two example tasks pull the choice so far apart. The welder’s ratio is 0.1 mm per 0.052 rad, about 2 mm; the camera’s is 10 mm per 0.0035 rad, nearly 3 metres. Those are three orders of magnitude apart, and 74.5 mm — the crossover this essay measures — sits between them. So the two jobs really do disagree about which of the two poses is nearer, and neither is wrong.
Which gives the practical instruction, and it is one line. Carry the length scale as a stated parameter and set it from the job’s tolerances, rather than leaving it implicit in whatever the code happened to do. A controller with in its configuration file can be pointed at a different task; one with buried in a norm has an opinion about welding it cannot be argued out of.
And there is a cheap check that says whether any of this mattered on a given problem. Vary over a couple of orders of magnitude and see whether any decision changes. If the same posture is chosen, the same path is preferred and the same pose is nearest throughout, the choice was harmless and can be left alone. If something flips, the flip is at some crossover and the crossover is where the arbitrary choice became a decision — which is exactly the place a stated tolerance ratio has to be produced.
The pattern this belongs to
This site has a category for numbers that are quoted as though they were properties and turn out to depend on a choice, and it has been growing since the foundation.
A velocity ratio quoted as a number is a claim it does not vary through the cycle, and for most mechanisms that is false. A chain drive’s ratio is a mean of something fluctuating by four per cent. A rocker arm’s ratio is quoted at one position of a swing that varies from 1.588 to 1.605. A roll centre is a construction that moves 131 mm over the suspension’s travel.
The pose distance is a different member of the same family, and in one way the worst of them. Those numbers all exist and are being quoted at one point of a range. This one does not exist until a parameter is supplied, and the parameter is almost never supplied, and it is almost never noticed that it was needed.
The applied field sorted catalogue numbers into five verdicts and found that the only ones that came out exact were counts — a mobility, a rank, a ratio of tooth counts — because an integer cannot vary with position, cannot be a mean, and has no operating point to be quoted at. This field has now added its own entries to both halves of that ledger. Its exact quantities are counts too: the eight postures, the rank of a Jacobian, the number of components of a configuration space. Its inexact ones are lengths and angles compared with each other, and the reason is the same one every time — a comparison needs a common unit, and rotation and translation do not have one.
That is not a limitation of this site’s arithmetic. It is a fact about rigid motion, it has been known since the nineteenth century, and it is why a screw is the object this subject keeps coming back to: a screw does not need the two halves to be commensurable, because it holds them as a line, a pitch and an angle rather than as six numbers to be summed.
About the same objects
Not linked from either essay — found by the objects both name.
- Four numbers or a screw conditioning · screw · serial manipulator · twist
- Two routes to a Jacobian screw · serial manipulator · twist
- A joint is a surface that slides on itself screw · twist
- Bennett, and the condition that moves it screw · twist
- Six legs and a square root conditioning · screw
- The chain that does not close screw · serial manipulator
What links here
Essays that link to this one from their own argument.
- A straight line at constant speed One path to the tool
- The freedom that does nothing One path to the tool
The objects this essay names
Each one links to every other essay that touches it.
Chasles's theoremConditioningInterpolationMetricPoseScrewSerial manipulatorTrajectoryTwist