Free space comes in pieces
Assumes A gap with corners in it.
Every field on this site that sweeps a mechanism reports a working arc: the range of the driving angle over which the thing assembles, walked outwards from a solved configuration until the solve stops converging. An arc has two ends and both are the same kind of place — a configuration the mechanism cannot reach, where two solutions of the closure equations have come together and the Jacobian has lost rank.
Give the links bodies and a second kind of end appears, and the set stops being an arc.
The set
Free space here is the set of driving angles at which the machine both assembles and clears: every constraint satisfied, and every tested pair of parts at a positive gap. It is computed by sweeping and reading the sign of the gap, and it comes back as a union of arcs rather than as one.
For the four-bar with a single stud in its way, it is one arc covering 95% of the turn — a bite taken out, and the crank can still reach every remaining angle by going round the other way.
For the same four-bar with two studs, at 1.7 and 4.4 radians on a circle of radius 1.25 from the crank centre, it is two arcs covering 74%. And two arcs is a different kind of object from one.
Reachable, and not attainable
Take an angle in the first arc and an angle in the second. Both configurations exist. Both are solutions of the same constraint equations, on the same assembly branch, with the same mobility, the same rank, the same everything the solver computes. Neither is near a singularity. A designer looking at the two drawings would see two perfectly ordinary positions of one machine.
The crank cannot be driven from one to the other. To get there it would have to pass a stud, and at every angle in between some part of the machine is inside that stud.
So there is now a distinction on this site between a configuration a mechanism has and a configuration it can get to, and the distinction is invisible to every instrument in the first twenty-three fields. The angle is a real number, the joint positions are what they are, the residual is 10⁻¹⁴, and none of that carries the information.
Two kinds of boundary, and only one of them is negotiable
The ends of a working arc and the ends of a free arc look the same on a plot and are opposite in every way that matters.
A singularity is where two solutions of the closure equations coincide. It is a property of the lengths and the joints alone. Nothing about the material enters it, and no change to the bodies moves it — thin every link to a hair and every dead centre is exactly where it was. It cannot be designed away without changing the mechanism, and passing through one is not a matter of pushing harder: there is no configuration on the far side to pass to on that branch.
A collision boundary is where a gap changes sign. It is a property of the shapes and the obstacles. Move a stud a millimetre and it moves; make it smaller and it shrinks; take it away and it vanishes. It is entirely negotiable, and every one of the negotiations is a design change that leaves the mechanism’s kinematics untouched.
Both are drawn as an end of an interval. One is a fact about the equations and the other is a fact about the furniture.
Not the same as a branch
This site has met disconnection before and it is worth separating carefully, because the language is nearly identical.
The algebra field establishes that the solution set of a mechanism’s constraint equations falls into connected components, and that the assembly a sweep follows is one of them. Two configurations on different branches are both solutions, both perfectly valid, and cannot be driven between — the mechanism has to be taken apart and put back together.
That is the same sentence as the one above, about a different set, and the difference is where the disconnection lives.
A branch is a component of the solution set of the closure equations. It is decided by the lengths. The obstruction between two branches is a singularity, which is a place the equations have no path through.
A free arc is a component of a subset of one branch: the part of it that is also collision-free. It is decided by the shapes. The obstruction between two free arcs is a stud, which is a place the equations are perfectly happy and the material is not.
So free space is strictly finer than the branch structure. Every free arc is inside a branch; a branch can hold several. And the two kinds of obstruction respond to completely different interventions, which is the practical content of the distinction.
Why one stud is not enough
There is a small combinatorial point that decides how the demonstration had to be built, and it is the sort of thing that is obvious once stated and easy to get wrong.
The driving angle of a fully rotating crank lives on a circle, not on an interval. Remove one arc from a circle and what is left is still one arc: a bite out of a ring leaves a ring with a gap, which is connected. It takes two removals to disconnect a circle.
That is why the machine built for this essay has two studs, and why the single-stud machine — which is the one the sampling essay uses — reports one component and not two. The code has to know it too: a sweep from 0 to 2π produces a free set that runs off one end and back in at the other, and counting that as two arcs would report the single-stud machine as disconnected, which is exactly the phenomenon this essay is about and exactly what that machine does not have.
On a mechanism that rocks rather than turns, the drive is an interval and one obstacle is enough.
The machine, and why it is a contrivance
The two-stud four-bar is not a machine anybody would build, and it is worth saying so and saying why it is still the right demonstration.
Two studs bolted to a frame in the path of a crank are an absurd design: a designer meeting the first one would move it. What they are is the smallest arrangement in which the phenomenon occurs, and the phenomenon is what the essay is about. Everything else in the catalogue either clears entirely or is blocked over a single stretch, and neither shows a disconnection.
Real disconnected free spaces are not exotic once the mechanism is bigger than a four-bar. A machine with several links inside a housing, an arm in a room with two columns, a mechanism whose links can pass each other on one side and not the other — all of them have free spaces in pieces, and all of them are harder to draw and harder to check than the contrivance here.
The contrivance’s virtue is that every number in it can be read off the picture. Two studs, two arcs, four boundaries, each one a named part against a named stud, and 74% of a turn.
What the measure says
Beyond the count, the free set has a size: 74% of the turn for the two-stud machine, 95% for the one-stud. That is a different quantity from the count and it says something different.
The measure is what a designer trades against: a machine that is free over three quarters of its input range may be perfectly usable if the range it needs is inside one arc. The count is what says whether that is a choice at all — one arc and every configuration is available from every other; two arcs and the machine has to be assembled in the one it is going to work in.
Both are reported, and the interesting cases are where they disagree in character: a machine free over 95% of its turn in two arcs is much more constrained than one free over 60% in one.
Which arc a machine is assembled in
The count has a consequence that the measure does not, and it is the one a person building the thing has to act on.
If free space is one arc, a machine can be assembled at any clear configuration and driven to any other. If it is two, the assembly configuration decides which half of the motion is available, permanently, until it is taken apart. That is not a subtle operational point: it is the difference between a machine that has one behaviour and a machine that has two, selected at build time by something nobody wrote down.
This site has met that shape before as well, in the defect tests that the synthesis field applies to a linkage synthesised through prescribed positions. A branch defect is a linkage that reaches all the required poses on different branches — correct at every pose and undrivable between them. The reading here is the same failure produced by material rather than by lengths: a machine that reaches all its required positions, in two free arcs, and cannot be driven between them.
Which suggests a test the synthesis field does not have and could: after checking a candidate for branch, circuit and order defects, check whether its free space is connected over the required range. Nothing in this field runs that test, and it is the natural next question rather than a gap in what is here.
What it is not
It is not the free configuration space of a robot. That object is the set of all configurations of a system with several degrees of freedom in which nothing collides, and it lives in a space of dimension equal to the freedom count. Here the mechanism has one freedom, the drive is one parameter, and free space is a subset of a circle. The arm essay has the two-dimensional version, where the obstruction is the arm’s self-collision — its own first and third links inside each other over a fifth of its joint space —, and the difference between a subset of a circle and a subset of a torus is most of what makes the second one a subject.
It is not a workspace. A workspace is where the output can be put. Free space is which inputs are available, and the image of one under the other is a third set again.
And it is not a statement about whether the machine can be assembled. Assembly is a question about the equations having a real solution, which the synthesis field answers, and it is independent of this: a configuration can be assemblable and blocked, or unreachable and clear.
What the arcs are bounded by, in detail
Each end of each arc is a configuration at which some particular pair — a named part and a named obstacle — has its gap exactly zero. The pair is recorded, because it is what a designer would change.
On the two-stud machine all four ends are the crank against one stud or the other, which is the simple case. On the slider crank the free set has two arcs and the bounding pair is the connecting rod against the lower guide rail — a different part from the one a reader would guess, since the block is the thing in the guide and the rod is the thing that fouls it.
That is the same principle as the witness pair and it matters more here, because an arc boundary is a hard limit rather than a margin: knowing which contact ends the arc is knowing which single change would extend it.
What happens to free space as the links get fatter
There is a one-parameter family here worth following, because it connects this essay to the width search and shows the components appearing.
Start with hairline links. Every gap is positive, free space is the whole turn, one arc, measure 1. Thicken them and at some width the crank first touches a stud: a single angle becomes blocked, and free space is still one arc but with a puncture. Thicken further and the puncture widens into an interval; the set is still one arc, since a circle less one interval is connected. Thicken past the second stud’s threshold and a second interval opens, and the count goes from one to two.
So the component count is a step function of the width, and its steps are exactly the widths at which each obstacle first becomes reachable. Those are bisectable, one per obstacle, by the same monotonicity the width search uses: gaps only shrink as bodies grow, so once an interval is blocked it stays blocked.
That gives a compact description of a machine’s whole life as it is made heavier: a list of widths at which components appear, and between them the measure falling smoothly. None of it is computed here for more than the one machine, and all of it follows from what is.
Free space is a sign, read as a set
The whole of this essay is one function read a new way.
Two essays back the gap over a drive was a function to be minimised, and the answer was one number: the worst instant. Here the same function is read for its sign at every angle, and the answer is a set with a topology — a count of components, a measure, and a list of what bounds each end.
That is a general move worth naming. A quantity with a sign carries a partition of the domain as well as a value, and the partition is often the more useful half. The minimum says whether the machine runs; the partition says which parts of its motion it runs in, and whether they are joined up.
A set with a topology is a new kind of answer here
It is worth noticing what sort of object has been produced, because it is not the sort of object the first twenty-three fields produce.
Almost everything on this site is a number or a configuration: a rank, a ratio, an angle, a set of joint positions. A few fields produce a curve: a coupler curve, a centrode, a profile. The topology field produces a count of graphs, and the algebra field produces a count of components — which is the nearest relative of what is here.
Free space is a subset of the drive with a topology, and the questions asked of it are topological: how many components, what is the measure of each, what bounds them. That is a genuinely different kind of statement about a mechanism, and it is the second one in this field after the layer assignment, which is a colouring rather than a quantity.
Both arrived for the same reason. Give a mechanism material and the questions stop being about the motion and start being about what the motion is compatible with, and compatibility is a relation, which brings sets and graphs with it.
What it costs, and what could hide
The sampling question of the certificate essay applies here in a sharper form, and it is worth stating what could go wrong.
A sampled sweep can miss a narrow blocked interval and report one arc where there are two — which is the failure that matters, because it says a machine can be driven somewhere it cannot. It can also miss a narrow free interval inside a blocked stretch, and report two arcs where there are three; that error is conservative and less alarming.
The certificate bounds the first: if the crossing height between adjacent samples is positive everywhere in a stretch, no blocked interval hides inside it. So a free arc that has been certified is genuinely an arc, and a boundary that has been located to a sample can be refined by bisection on the sign, which is cheap and exact to whatever tolerance is wanted.
That is the two-route habit applied to a set rather than to a number: the samples say where the boundaries are, and the bound says there are no others.
About the same objects
Not linked from either essay — found by the objects both name.
- One piece, and still not reachable assembly branch · configuration space · connected component · free space
- The regions overlap and the parts never meet configuration space · interference · self-collision · signed clearance
- Where the boundary moved free space · interference · link body · signed clearance
- A clearance inside a tolerance box interference · link body · signed clearance
- A link may be bent interference · link body · signed clearance
- A link that takes up room interference · link body · signed clearance
What links here
Essays that link to this one from their own argument.
- The arm that hits itself One path to the tool
- Six things a body is not Drawn wrongly
- A gap is a number Links with a width
- The block in the guide has a length What a joint is
- A body is all size Links with a width
- A defect that is not kinematic The problem backwards
The objects this essay names
Each one links to every other essay that touches it.
Assembly branchConfiguration spaceConnected componentFree spaceInterferenceLink bodySelf-collisionSigned clearanceWorking arc