Precision Is a Production Problem
A 0.04 mm repeatability spec does not mean your robot puts parts within 0.04 mm. Here is where the rest of the error comes from, and who decides how much is enough.
Imagine a quote for a new welding cell. The robot datasheet says 0.04 mm repeatability. The part drawing says ±0.5 mm on the seam position. "We have twelve times the margin we need," says the process engineer.
Three months after go-live, the cell is scrapping about one part in forty. The robot is performing exactly to its datasheet. Nearly everything else is not.
Precision in production is not a property of the robot. It is a property of the whole chain from the part's datum features to the tool tip, at the temperature the cell happens to be at this afternoon.
Accuracy and repeatability are different numbers
ISO 9283:1998, Manipulating industrial robots: Performance criteria and related test methods, is the standard that datasheets quote. It defines a family of characteristics. The two that matter most:
- Pose repeatability (RP) is how tightly the robot clusters when sent to the same commanded pose many times from the same direction. It is usually reported as the radius of a sphere around the cluster's barycentre: the mean distance from the barycentre plus three standard deviations.
- Pose accuracy (AP) is how far the centre of that cluster sits from where you commanded it to go.
Repeatability is the number almost every manufacturer publishes. Accuracy is the number that matters when you program offline from CAD, swap a robot, or move a point by typing coordinates.
Here is what the published numbers look like for a large arm. ABB's brochure for the IRB 6700 lists position repeatability RP of 0.04 mm for the 235 kg / 2.65 m variant and 0.06 mm for the 205 kg / 2.80 m variant, with path repeatability RT of 0.08 to 0.14 mm across the family.
Now the accuracy side. ABB's own literature for its Absolute Accuracy option says the difference between a virtual robot and a real one can typically be 8 to 15 mm, from mechanical tolerances and structural deflection. With the option's per-robot compensation, ABB targets approximately 0.5 mm across the working range; its published production data for the IRB 6640 family shows 0.50 mm average, 97% of points within 1 mm, and a 1.2 mm maximum.
So on a well-calibrated large robot you have roughly 0.05 mm of repeatability and 0.5 mm of accuracy. A full order of magnitude separates them. If your cell relies on taught points, you live in the first world. If it relies on CAD coordinates, you live in the second.
Datasheets are measured under kind conditions
Ilian Bonev's group at ÉTS Montréal measured repeatability independently on two small arms in 2014. A FANUC LR Mate 200iC averaged 0.020 mm, matching its spec. An ABB IRB 120 averaged 0.013 mm against a 0.010 mm spec, with some end-effector orientations worse than the mean. Their method was not a formal ISO 9283 test, and they were explicit about that.
The lesson is not that datasheets lie. It is that a single number hides a distribution, and your production poses are not the test poses.
Thermal drift: the afternoon problem
Steel expands by about 12 µm per metre per °C; aluminium by about 23 µm. An arm with 2.65 m of reach that warms by 10 °C over a shift can grow by roughly 2.65 × 12 × 10 = 318 µm, about 0.3 mm. That is almost eight times the repeatability spec, and it comes from nothing more than motors warming up and the sun hitting the building.
Le Reun et al. (Robotica, 2022) put numbers on this for an ABB IRB 4600 used for robotised X-ray CT, a robot that already had the Absolute Accuracy option installed. A laser tracker followed a 6.5-hour linear trajectory and exposed both thermal drift and backlash. Geometric calibration at a stable thermal state cut mean forward error from 1.39 mm to 0.06 mm. Adding a thermal model cut the maximum positioning scatter from 0.15 mm to 0.05 mm, close to the robot's repeatability. Backlash compensation brought bidirectional error from 1.53 mm to 0.07 mm.
The practical takeaways are old-fashioned:
- Run a warm-up cycle before precision work, and measure how long your robot actually takes to stabilise.
- Teach and verify points at production temperature, not on a cold Monday morning.
- Approach critical points from a consistent direction so backlash stays on one side.
- Log cell temperature alongside quality data. When scrap correlates with the clock, suspect heat.
Tolerance stack-up: where the margin goes
Back to the welding cell. The seam position error at the torch is the sum of several contributions. A simplified budget:
| Contributor | Tolerance (mm) |
|---|---|
| Part feature location vs datum | ±0.10 |
| Fixture locating pins and clamps | ±0.05 |
| Gripper or tool mounting | ±0.05 |
| Robot repeatability (RP) | ±0.04 |
| Thermal drift over a shift | ±0.15 |
| Worst-case sum | ±0.39 |
| Root-sum-square | ±0.20 |
On paper, still inside ±0.5 mm. But this table assumed taught points. The cell had been programmed offline from CAD without per-robot calibration, so the accuracy term was millimetres, not hundredths. Worse, the fixture had been built to the nominal part, not to the supplier's actual part, which ran 0.3 mm long on one datum.
Root-sum-square assumes independent, centred, normally distributed errors. Thermal drift is not independent of time. A supplier's systematic offset is not centred. A production engineer's job is knowing which terms can be added in quadrature and which have to be added straight.
Fixturing does more than the robot
The cheapest precision in most cells comes from the fixture, not the arm. A good fixture locates the part on its functional datums using the 3-2-1 principle, clamps without distorting it, and does so the same way every time an operator loads it.
Three questions worth asking about every fixture:
- Does it locate on the same datums the drawing uses? If not, the drawing's tolerances do not transfer.
- What happens when a chip, weld spatter or a burr lands on a locator? Is there a way to see it?
- Who checks it, how often, and against what?
A fixture that has been bumped by a forklift will happily hold parts 0.5 mm off for weeks while every robot program runs perfectly.
Vision-guided correction, and its own error budget
Vision guidance lets the robot measure the actual part and shift its path, which can absorb part and fixture variation. It is now routine for picking, seam finding and screw driving.
It does not remove the stack-up. It replaces some terms with new ones: camera calibration, hand-eye calibration, lighting sensitivity, feature detection repeatability on real (dirty, reflective) parts. A vision system that measures to 0.05 mm on a clean test coupon may manage 0.2 mm on a part with mill scale. And a vision correction can make a cell look healthy while hiding a drifting fixture that someone should have fixed.
"Good enough" is an engineering decision
Every number above can be improved. Laser-tracker calibration, thermal compensation, tighter fixtures, better cameras. Each one costs money, cycle time or maintenance effort.
Deciding where to stop needs things no datasheet holds: what the downstream process tolerates, which defects reach the customer, how often the cell will be re-taught, how skilled the night shift is, and what a stopped line costs per minute. An AI system can optimise a calibration routine or flag a drifting process from SPC data, and it should. The decision that ±0.2 mm is acceptable for this seam on this product, and that the money is better spent on the fixture than on the robot, belongs to an engineer who understands the part and signs off on the cell.
The welding cell, by the way, was fixed without touching the robot. We re-cut the locators to the supplier's real parts, added a 15-minute warm-up program, and re-taught six points at operating temperature. Scrap dropped below one in five hundred.
Sources
- ISO 9283:1998 Manipulating industrial robots: Performance criteria and related test methods — the standard defining pose accuracy, pose repeatability and related test methods.
- ABB IRB 6700 brochure (ROB0252EN_A, 2013) — RP 0.04 to 0.06 mm and RT 0.08 to 0.14 mm across IRB 6700 variants.
- ABB Absolute Accuracy option brochure (PR10072EN_R5) — virtual vs real robot typically 8 to 15 mm; approx 0.5 mm with compensation; IRB 6640 production data.
- Measuring position repeatability of industrial robots (I. Bonev, ÉTS CoRo blog, 2014) — independent repeatability measurements on FANUC LR Mate 200iC and ABB IRB 120.
- Thermal drift and backlash issues for industrial robots positioning performance (Le Reun et al., Robotica, 2022) — laser-tracker study on an ABB IRB 4600; calibration and thermal compensation results.
- Linear Thermal Expansion Coefficients of Materials (Engineering ToolBox) — about 12 µm/m·°C for steel and 23 µm/m·°C for aluminium.