Robot manufacturers claim to have a given accuracy and repeatability. Although, all of these specifications can only work when a proper calibration has been done on the robot. The calibration process for industrial robots is composed of four main steps:
Modeling is basically a mathematical model that describes as closely as possible the kinematic model of the robot. For serial/industrial robots, the most common method of modeling is called the Denavit and Hartenberg (DH) approach. This method is based on using homogeneous matrices representing the transformation of the reference frames associated which the robot joints. A complete kinematic model should include kinematic errors (e.g. joint offsets and link length errors). Through modeling, it is easier to figure out where the biggest error is located and where to look for a good calibration.
For parallel robots (DELTA robots), the DH approach is rarely used; the kinematic model is defined according to the robot’s type. You should notice that in the case of non-kinematic calibration, a model of the studied non-kinematic errors (e.g. stiffness and back-lash) should also be considered.
The identification consists of determining the parameter errors for the robot. Two main approaches are available: forward calibration which consist of the identification by minimizing the residual position errors, or by minimizing the joint angle errors. The second method is called inverse calibration. This method consist of measuring and determining the error(s) in each of the joints.
After identifying the parameter errors, this data is considered by the robot controller in order to create the simulated model used by the robot which should be similar to the real model. As a result, the robot accuracy should be improved. Thus, the validation allows for the confirmation of the effectiveness of the identified values of the robot parameters.
This is still a really general way to calibrate your robot. To eliminate as much error as possible You may want to look at each step very precisely and closely apply these steps to your robot application.