The robot parks in front of the table, and every setup the parking spot moves. The parts have not moved and the table has not moved, but the robot's idea of where the table sits has drifted, and a wrist-mounted camera taught to the old arrangement starts missing picks. You do not need to reteach parts or repeat the camera calibration for that. Bolt one permanent datum feature to the table, teach it once alongside the parts, and after each move re-touch only that feature. This guide gives the feature to use, the teach and re-touch steps, what height and tilt changes still cost, and the checks to run before the first pick.
How much robot movement can a taught table datum absorb?
A horizontal shift of up to ±12.7 mm (±1/2 in) between robot placements is absorbed by re-touching one taught table feature: no part reteaching and no hand-eye recalibration, as long as camera height over the table and table tilt stay the same.
The shift lives entirely between the robot base and the table. Nothing on the wrist changes, so the camera-to-flange (hand-eye) calibration stays valid. Jog the arm until the camera sees the datum feature at its taught pixel position and you have rebuilt the camera-to-table pose exactly; the taught part models, the snapshot position and any visual offsets then work unchanged, because parts hold their positions relative to the datum and the datum defines the frame. Only the datum has to be findable after a move - the parts do not, because the camera returns to the table, not to the parts.
Two further changes are also absorbable: in-plane yaw of the parking spot, if the datum carries two pins, and a height change, if you measure it and enter the offset. Tilt is the one change that always forces a fresh calibration.
What makes a good table datum feature for vision?
Use a hardened steel dowel pin, 8-12 mm in diameter, bolted rigidly into the table plate and sitting inside the taught snapshot view: one pin carries position, and a second pin 100 mm away carries in-plane rotation too.
- Rigid and permanent. Press-fit or through-bolt the pins into the plate. Anything clamped to the surface can creep, and a datum that moves shifts every pick by the same amount.
- Big enough to centroid. At 0.2 mm/px over the table a 10 mm pin spans 50 pixels, comfortable for a sub-pixel centroid; a 3 mm pin spans 15 pixels, and one chipped edge walks the centre.
- Matte and contrasty. Bare steel on a dark plate, or black oxide on aluminium. A shiny pin throws highlights that drag the centroid when lighting changes.
- Two pins for yaw. One round, one diamond or flat-sided, about 100 mm apart. A mismatch of 0.1 mm across that baseline is arctan(0.001) ≈ 0.06° of rotation, far inside what a pick tolerates.
- In the view, out of the traffic. 20-30 mm beyond the part drop zone, always inside the snapshot image.
How do you teach the table feature and the parts in the first setup?
Teach the datum exactly like a part: set the snapshot position so one image holds the part zone plus both pins, teach the part models in that image, then save the datum image as the reference you re-find after every move.
- Bolt the datum pins into the table plate, just outside the drop zone and inside the planned view.
- Calibrate hand-eye once. The camera-to-flange calibration is done with a board held in the gripper and survives every base move; redo it only after a camera, lens or focus change. Vary the flange orientation across the calibration poses - the eye in hand calibration pose selection rules apply here unchanged.
- Set the snapshot position so the image covers parts and pins, with margin past the drop zone.
- Teach the part models in that image, by CAD or by showing sample parts.
- Save the datum reference: the pins at their home pixel positions, as an image or a taught model. This reference is the whole trick; keep it with the cell documentation.
- Teach picks from located models, so every target is recomputed from the located part pose rather than from a raw taught robot point. That is what lets the whole frame move without touching a single taught pick.
How do you re-touch the feature after the robot is moved?
Jog the arm until the live image matches the saved datum image - same pins, same pixel positions, within ±2 pixels - then re-teach the snapshot position at that pose, and the camera-to-table frame snaps back as a unit.
- Move the arm back over the table, near the taught snapshot pose.
- Open the live view and jog in x and y - and roll about z if you taught two pins - until the pin pattern sits on its taught pixel positions within ±2 px.
- Save that pose as the snapshot position. The datum reference itself never changes.
- Run three verification picks on a taught part. At 0.2 mm/px, ±2 px of jog error is ±0.4 mm (2 × 0.2), inside most gripper clearances.
- Log the three offsets every time. Growing residuals between setups point at loose datum hardware or a changed height, not at the jog.
If your picks run from a taught grid on a pallet, there is a cheaper controller-side route: touch the datum pin with the gripper tip after the move and write the delta into a work-object offset, as in configuring a work object offset for a repositioned robot base. The camera then works entirely in table coordinates and the robot absorbs its own move.
This is the same one-reference-target logic as robot cell vision recalibration with one reference target, except the reference is bolted to the table and never has to be placed again.
Mind the tool side too: a gripper swapped between setups shifts the tool centre point, and that moves pick points in a way no table datum can absorb. The correction belongs in the tool frame, as in converting taught positions to a new tool frame.
What changes when the height or tilt changes instead?
A height change is recoverable: measure the difference and enter it as a snapshot-height offset, which restores the taught working distance and with it the image scale. A tilt change is not recoverable - only a fresh calibration at the new pose fixes it.
Wrist-camera packages expose the height fix as a snapshot-position offset - snapshot_position_offset in one common package. The number is a measurement, not a guess: if the replacement table top sits 10 mm lower, enter -10 mm along the tool z axis and the camera returns to the taught working distance. Re-run one verification pick afterwards.
Worked example: a 300 mm working distance and a replacement table top 10 mm lower, so Δh = 10 mm. Scale error = 10 / 300 = 3.3%. A part 80 mm from the view centre picks 2.7 mm off (80 × 10 / 300), enough to walk out of a ±1.5 mm gripper clearance. The trap is focus: with an 8 mm lens at f-number 4 and 3.45 µm pixels, DOF ≈ 2 × 4 × 0.00345 × (300 / 8)² ≈ 39 mm, so the 10 mm height change still looks sharp. Sharp is not scaled: measure the height, enter the offset.
Tilt defeats every offset because perspective and scale then vary across the field: taught models stop matching and no single translation fixes it. If the table rocks on an uneven floor or the arm parks with a different attitude, re-run the camera calibration at the new pose - minutes with the calibration board still in the drawer, far longer without it.
When should the camera come off the robot instead?
If the table and robot travel together as one wheeled station, mount the camera on a stand bolted to that same frame: the camera-to-table view never changes, and the robot re-establishes its position with one touch-off on the datum pin after each move.
Part locations then come out in table coordinates and never drift with the parking spot; the robot side needs one number per move. The trade-off is coverage - the fixed view must hold the whole part zone in every frame, so pixels per millimetre drop compared with a wrist camera that re-frames per part, and parts outside the view are invisible. Fixed does not mean drift-free either: thermal and mechanical creep still move a static camera, as static camera calibration accuracy: why moved parts drift off target shows.
The mount needs a column that holds the camera square to the plate, height to clear the tallest part stack, and a base that bolts through to the station frame. The LS-MNT-0040 is a slide-table stand with 700 mm height on a 400 × 450 mm base.
- Type
- Camera stands
For the sensor, global shutter keeps anything that moves on the table crisp. The MV-CU020-90GC is a 2.5 MP color camera with a global-shutter 1/1.7" sensor on GigE, C-mount.
- Sensor format
- 1/1.7"
- Lens mount
- C-mount
- Interface
- GigE
- Resolution
- Up to 3 MP
Small datum targets and fine part features are a pixel-density problem, so move up in resolution rather than closer. The MV-CS200-10UM is a 20 MP mono USB3 camera on a 1" sensor, C-mount.
- Sensor format
- 1"
- Lens mount
- C-mount
- Interface
- USB3
- Resolution
- 16-25 MP
Size pixels per millimetre for your smallest feature with the camera resolution calculator, then pick the mount from camera stands and the sensor from area scan cameras.
What do you check before the first pick after a move?
Three verification picks on a taught part tell you more than any single image check: run them immediately after the re-touch, measure the offsets, and release the cell only when all three land inside the gripper clearance.
- Datum match within ±2 px - the same ±0.4 mm bound from the re-touch; re-jog rather than accept a sloppy match.
- Working distance - measure camera-to-table height against the taught value; any difference belongs in the snapshot-height offset, not in the first pick.
- Table level - a pocket bubble level on the plate catches a tilted park before calibration has to.
- Lighting and exposure - run the taught exposure and let the arm settle: at a 10 ms exposure, 100 mm/s of residual motion smears 1.0 mm across the frame (0.010 × 100).
- Datum hardware - a pin that backed off 0.5 mm moves every pick by 0.5 mm, permanently; check tightness whenever residuals grow.
- Offsets logged per setup - a trend across setups is a diagnosis: loose pin, changed table, or a moved camera mount.
When a pick still comes out offset, isolate in this order: datum image, working distance, tool frame, calibration. The recovery sequence in vision calibration recovery after camera or robot changes follows the same order, and diagnosing an eye-in-hand pick point offset covers the offset-only case.
Done this way, a move between setups costs about five minutes: jog onto the pins, re-teach the snapshot position, three verification picks. Size the fixed-camera variant in the camera configurator, browse the accessories finder for mounts, and find more relocation-and-drift cases on the systems topic page. If a cell layout resists this trick, send it through the contact page and we will check the numbers with you.
Questions
Does the table datum need to be inside every part picture?
No. It only has to be inside the snapshot image you use for the re-touch after a move, so one picture frames both the part zone and the pins. Individual part pictures then work through the taught models exactly as before, because the camera-to-table frame has already been restored before any part is located. Keep the pins 20-30 mm clear of drop points so parts never land on them.
How repeatable is a manual jog re-touch on a pin?
With the saved datum image on screen, matching the pin pattern to ±2 px puts the frame back within about ±0.4 mm at 0.2 mm/px, and sub-pixel centroiding on a 50 px pin does better than the jog itself. The practical limit is the operator's eye, so confirm with three verification picks after every move and log the offsets; growing residuals point at hardware, not at the jog.
Can a printed fiducial replace the dowel pin?
Yes, for a position-only re-touch, provided lighting stays controlled and the print is sealed under laminate so it cannot fade or scuff. Give the mark orientation - an L or an asymmetric cross, not a circle - or add a second mark to carry rotation. Steel pins remain the default in production because they shrug off coolant, chips and wipes that ruin paper.
Does the same trick work with a fixed camera over the table?
It works with the roles reversed. A stand-mounted camera never needs re-touching, because its view of the table cannot change; the datum pin becomes the touch-off target that the gripper tip visits after each move to update the work object. One cell then has one re-touch action instead of two, which is why fixed cameras suit stations that travel as a single wheeled unit.
What if the robot parks at a slightly different angle each time?
Small yaw about the vertical is absorbed when you re-match a two-pin datum, because the pair defines direction as well as position. Unabsorbed yaw is expensive: the arm parking 1° off rotates every taught point about the datum, moving a part 500 mm away by about 8.7 mm (500 × sin 1°). Tilt of the table itself is different and always needs a fresh calibration.


