ROBOMATICS / Blog

Robot Path Correction Based on a 3D Scan

A conventional industrial robot repeats a taught path. That works as long as the part always sits in the same place. But what if the part shifts every time, or the robot itself moves, for example on a mobile platform? Then the path has to be recalculated based on what the robot sees.

The principle

  1. Scanning. The robot points a 3D scanner (e.g. Photoneo PhoXi or MotionCam-3D) at the object.
  2. Reference feature. A distinct geometric feature is found in the point cloud: a hole or bolt circle, an edge, a plane.
  3. Object coordinate frame. From the feature found, the system calculates where the object actually is relative to the robot.
  4. Path recalculation. Pre-planned points defined in object coordinates are transformed into robot coordinates.
  5. Checks and motion. Before moving, motion limits and the working envelope are checked, and then the robot does the job.

Example: a robot on a moving platform

On our autonomous inspection platform, a Yaskawa Motoman robot has to inspect wagon bogies. The platform follows its route to within a few centimetres; RTK alone does not give millimetres. So the robot first scans the axle box, the scan finds the bolt circle (fit error 0.43 mm), and the robot poses for the spring are calculated from it. This has been tested on real axle boxes.

Smooth motion from a PC

The recalculated path has to be sent to the robot. On the Yaskawa Motoman controller we use the HSES interface for this: a fixed 100-point job runs in the controller, while the PC appends new points as the robot is already moving. The robot starts moving about 1.35 s after the command and moves smoothly, without stops. For KUKA robots we use EthernetKRL in a similar way.

What accuracy depends on

  • Hand-eye calibration. If the camera is on the robot arm, its position relative to the flange must be known precisely. In our project, refining the calibration reduced the error (RMS) from 8.7 to 3.2 mm. More in hand-eye calibration.
  • Scanner accuracy and distance. Structured light scanners give accuracy in tenths of a millimetre at the right working distance.
  • Quality of the reference feature. Distinct, clearly visible features give a more reliable result than smooth surfaces.
  • Reflections. Shiny metal creates false points, which have to be identified and rejected; see 3D scanning of shiny surfaces.
  • Robot repeatability. In our test with the camera on the arm, the repeatability of the same pose was 1.45 mm.

Where it applies

  • Parts that are not precisely fixtured: welding, gluing, grinding, inspection.
  • Robots on mobile platforms and large objects that the robot drives up to.
  • Picking objects from a pile; see bin picking.

Safety remains the priority: motion is permitted by the safety circuit, not by the scanner or the software. If your robot needs to "find" the part before working on it, write to us and we will test it with your parts.

Our services →

Have a task?

Tell us what you want to automate

Discuss a project → +370 679 34222