About Least Squares Calibration

Calibration features in DELMIA products allow you to identify the sources of position inaccuracy and modify the simulation world to match the real world.

This correction allows a generic simulation developed in DELMIA products to be downloaded to different workcells that are nominally identical but which differ slightly in the locations of their parts and devices, their tool offsets, and their robot signatures.

The least squares mathematical fitting algorithm is designed for high accuracy convergence in the presence of measurement data noise, but assumes a reasonably close starting position (especially orientation) as the guess to be used by the method. If there is a large mismatch in the positions and orientations before fitting, the algorithm will automatically pre-calculate a good starting guess based on a 3-point method (which is a geometric approach such that the positions of the second point of each set is made coincident, the first and second point of each set is made collinear, and the third point is moved into the plane defined by the second set of points.).

Note: The 3-point pre-calculation not applied if you manually change any of the xyzwpr values, as it is expected that you will manually preposition the part to be calibrated into the correct starting position and orientation.

Least squares calibration is intended to adjust the six degrees-of-freedom (DOF) locations of a device in a DELMIA simulation based on measurements from the workcell. The device is assumed to be a non-kinematic part such as a fixture, table, or workpiece. The purpose of calibration is to locate the part in the simulation so that its parameters [X, Y, Z, Yaw, Pitch, Roll] with respect to the robot matches the real workcell. After calibration, the robot program developed in the simulation will contain the corrected robot locations that may be downloaded to the actual robot workcell.

The least squares calibration method adjusts the position of a resource based on the measurement of multiple points. The points are input as tag points in two tag groups: one tag group representing the pristine CAD data locations, and the other tag group representing the uploaded experimental robot tool locations. The calibration also requires the following information:

  • Translate X, Y, Z (Free/Fixed): specifies the directions in which the resource may be translated during adjustment.
  • Rotate X, Y, Z (Free/Fixed): specifies the directions in which the resource may be rotated during adjustment.
  • Estimated measurement noise: an estimate of the uncertainty of the positional measurements during the calibration experiment.

Unless the resource is known to be aligned with an axis or on a plane, the parameters [X, Y, Z, Yaw, Pitch, Roll] should all be set to Free during calibration. The measurement noise need only be an order of magnitude estimate, for example 0.1 mm or 1.0 mm.

Based on the selections, the resource is then moved in an attempt to get the first set of points to match up with the second set. The algorithm works by minimizing the mean square positional error between the corresponding points while maintaining the constraints of the Translate X, Y, Z and Rotate X, Y, Z selection.

Upon convergence, an analysis of the results is displayed:

  • Number of iterations: the number of iterations required by the numerical identification method.
  • Number of fitting points: the number of points used for the least squares fitting procedure.
  • Root mean square fitting error: the root mean square fitting error on the points after adjusting the resource to the best fit possible.
  • Max Uncertainties: the maximum of the uncertainties for the fit on the parameters to be identified. Large uncertainty values are an indication that the experimental observation strategy is flawed - even if the RMS fitting error is small.