^{1}

^{1}

^{2}

^{*}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

Identification of robot kinematic errors during the calibration process often requires accurate full pose measurements (position and orientation) of robot end-effectors in Cartesian space. This paper proposes a new method of full pose measurement of robot end-effectors for calibration. This method is based on an analysis of the features of a set of target points (placed on a rotating end-effector) on a circular trajectory. The accurate measurement is validated by computational simulation results from the Puma robot. Moreover, experimental calibration and validation results for the Hyundai HA-06 robot prove the effectiveness, correctness, and reliability of the proposed method. This method can be applied to robots that have entirely revolute joints or to robots for which only the last joint is revolute.

Advanced applications such as off-line programming, robot-based measurement, and special robot-assisted surgery use highly accurate robotic manipulators. In order to satisfy the accuracy requirements of these applications, robots should undergo a calibration process, requiring practical full pose (position and orientation) measurements of robot end-effectors. The measurements are then used to identify robot kinematic parameters (unknown or approximately known). To acquire a full pose measurement of a robot end-effector (particularly the orientation one), previous researchers have used appropriate measurement devices that are expensive, relatively slow, and difficult to set up. Therefore, the aim of this work was to build a new method of full pose measurement that is accurate, easy to apply, and less time consuming.

Several authors have presented a non-contact full-pose measurement of robot end-effectors using visual systems [

Omodei

This research proposes a new method for full pose measurement of end-effectors for robot calibration. This method provides a robot's full pose based on a set of discrete points on a circular trajectory, measured by a non-contact 3D coordinate measuring device (e.g., a laser tracker). Devices that utilize laser interferometry are widely used due to their high accuracy, fast measurement, large measuring range, and ease of use [_{1} (

In Section 2, the principles of the measurement method are presented and the plane and center points of rotation are identified. Section 3 presents an evaluation of the measurement accuracy of the method via a simulation on Puma robot, while Section 4 presents experimental calibration results for an HA-06 robot with full-pose measurements obtained by the proposed method. Section 5 presents our conclusions.

The proposed measurement method needs to determine two features: the rotation axis of the last robot joint and rotation center for the acquired position, and an orientation of the robot end-effector (

In order to establish a rotation plane, the last joint of an

A form of a rotation plane equation in Cartesian space can be presented as follows [

A plane, which fits a set of measured points (_{i}_{i}_{i}

The solution for

The covariance values in

The fitting plane is obtained by minimizing the objective function in _{1}_{1}_{1}_{1} such that the cloud of _{1}_{1}_{1} (the plane ψ in _{1}_{1}_{1}_{1} is going to be constructed for a case _{1}, _{2}, _{3}, _{4}, _{5} and _{6} as in _{1}, _{3} and _{6}) among the six points are selected. A plane ψ, which contains the three points, is obtained. A normal vector of the plane determines the axis _{1}. The axis _{1} is defined by unit vector
_{1} completes the orthogonal coordinate frame _{1}_{1}_{1}_{1} by the cross product of the known vectors: _{1} = _{1} × _{1}.

Note that the frame _{1}_{1}_{1}_{1} is arbitrarily located with respect to the reference frame _{1} – _{6} are transferred to the frame _{1}_{1}_{1}_{1}. A plane fitting these points is obtained. Then, a circle that is on the identified plane and contains the points is also determined (see Subsection 2.2). The equations of the plane and the circle, which are currently expressed with respect to the frame _{1}_{1}_{1}_{1}, are going to be transferred back to the reference frame

Theoretically, the trajectory of a point on a rotating rigid body about a fixed axis is a circle. This circle is on an orthogonal plane of the fixed axis. However, in practice, due to some factors (for examples assembly tolerance between spindle and bearing, vibration, measurement noise and so on) the trajectory can be a general curve (for example, an ellipse, circle and so on). If we assume that the deviation between the curve (ellipse) trajectory and the theoretical circle trajectory is sufficiently small, the deviation is then considered as noise. Therefore, a circle trajectory model will be used to fit these points.

After the above rotation plane is obtained, a least squares algorithm is applied to identify a circle that is on the identified rotation plane and contains the set of

A standard form of a circle equation is as follows:
_{c}_{c}

The circle

The circle, which contains the set of measured points (_{i}, _{i}, _{i}),

A solution of _{xx}_{yy}_{xy}

In this step the rotation plane is identified. The center point of rotation can also then be identified after some basic manipulation from

A system consists of a robotic manipulator with

The robot configures itself such that a target on the end-effector comes to specific position _{1}.

All robot joints are kept fixed except the last one, _{2},…, _{m}

The set of points _{1},…, _{m}

On the determined plane, the arc of the circle that fits the set of points is identified (see Section 2.2), and its center

An orthogonal vector of the rotation plane _{E}_{1},
_{E}_{E}_{E}_{E}_{E}

The full pose of the end-effector (_{1}: _{1} = [_{P1}_{P1}_{P1}]^{T}

Transformation from the last link frame {_{N}_{N}_{+ 1} (refer to [

The measurements acquired by the proposed method for the robot calibration process should have an accuracy level. Therefore, it is necessary to evaluate the accuracy of measurements before applying them in the calibration process. This evaluation is performed by comparing deviation (error) between two coordinate frames {_{E}_{E}_{E}_{E'}_{E'}_{E'}_{E}_{E}_{E}_{E'}_{E'}_{E'}_{x}_{y}_{z}_{σ}_{β}_{γ}

The accuracy of measurements acquired by this method can be evaluated via simulation for a specific robot. The typical Puma manipulator (

In order to identify robot kinematic errors we must first measure the position and orientation of the robot end-effector. This study applied the proposed measurement method in an experimental calibration for a Hyundai HA-06 robot. The system consisted of a Hyundai HA-06 robot (six dof and repeatability ±0.05 mm), a 3D measuring device (Laser Tracker LTD800 with accuracy of ±5 micron/m), and a laser reflector attached to the robot end-effector (

The nominal model of the HA-06 robot was established by using the D-H convention [_{i}_{−1}, _{i}_{−1}, _{i}_{i}

The base transformation
_{0}, _{0}, _{1}) and (_{0}, _{0}, _{1}) are translation and rotation parameters.

The parameters _{0} and _{0} do not exist in the nominal robot model, however, _{0} and _{0} must be included in the calibration robot model. The tool transformation
_{6}, and translation along axis _{7}

Because the robot model _{2} is parameter of the link twist about axis _{2}.

Robot kinematic error sources can be classified into two types: link geometric errors and non-geometric errors (such as link, joint deformation, joint backlash and so on). Because the HA-06 robot is a light weight manipulator, we assume that the robot has high link and joint stiffness, so the robot pose errors are only caused by link geometric errors. The number of identifiable kinematic parameters of the HA-06 robot is _{2}_{3}_{6} and

Robot calibration aims to identify robot model parameters to describe the most correctly its kinematics, consequently the robot pose accuracy is enhanced. This section presents a formulation for the identification of the aforementioned kinematic parameters.

A mathematical formula for error identification is obtained by differentiating homogenous transformation
_{0}…Δ_{5} Δ_{0}…Δ_{5} Δ_{1}_{6} Δ_{1}_{6}]^{T}_{i}_{i}_{i}_{i}

Measurement for calibration is performed for 56 different robot configurations. For each configuration all robot joints are fixed except for the last joint, which rotates through _{1} of 56 full end-effector poses is obtained. By using all 56 full poses we can formulate an over-determined system of 6 × 56 = 336 differential equations based on

Without calibration, the position accuracy of the HA-06 robot (which is computed over 56 measured configurations) is 3.6573 [mm], and its orientation accuracy about axes

The experimental results for the HA-06 robot show that robot pose accuracy is enhanced significantly after calibration. The proposed measurement method supplied the accurate full-pose measurements for this calibration and had some properties of effectiveness, correctness and practical applicability.

In many industrial applications, the robots have to operate over their full wide workspace. Therefore, a robot after calibration should have the same level of accuracy across its workspace. The pose accuracy of the HA-06 robot after calibration was validated with a set of 56 end-effector poses named Q_{2}. The pose set Q_{2} was selected arbitrarily in whole robot workspace such that they were different from the set Q_{1}. Note that the procedures for measuring both of the pose sets Q_{1} and Q_{2} are similar.

The validation results of robot pose accuracy after calibration are illustrated in _{2} (without calibration: mean value is 3.989 [mm], maximum value is 7.7028 [mm]; with calibration: mean value is 0.1544 [mm], maximum value is 0.3403 [mm]). The absolute position accuracy with the pose set Q_{1} and the pose set Q_{2} are display on the same graph as in

This paper proposes a new method for the full pose measurement of an end-effector for robot kinematic calibration. Full pose measurements could be obtained by analyzing the features of a set of target points (designated on a robot end-effector) on an arc of a circle, such as an orthogonal vector of a rotation plane and a rotation center. These points are measured by using external point sensing devices. This method benefits from the accuracy of available point measurement devices, such as Laser Tracker. The measurement procedure is simple, fast, easy to set up, and can be automated. It also does not use any special apparatus with an arrangement of intermediate measured points; therefore, no additional manufacturing costs or pre-calibration steps are required.

The measurement accuracy of this method was gauged as sufficient based upon computational simulation results from the Puma robot. Experimental calibration for an HA-06 robot was performed to prove the practical effectiveness and accuracy of this method. The experimental results show that after calibration the HA-06 robot had enhanced position accuracy of 0.12933 [mm] (before calibration: 3.6573 [mm]), and increased orientation accuracy about axes

This work was supported by the 2011 research fund of University of Ulsan.

The authors declare no conflict of interest.

Basic principle of the measurement method.

Point cloud transferring from frame _{1}_{1}_{1}_{1}.

Robot PUMA and fixed link frames.

Experimental setup for calibration.

Schematic of robot HA-06 and attached link frames.

Robot position accuracy before calibration (pose set Q_{1}).

Robot position accuracy after calibration (pose set Q_{1}).

Robot's absolute position accuracy before and after calibration (pose set Q_{1}).

Robot orientation accuracy before calibration (pose set Q_{1}).

Robot orientation accuracy after calibration (pose set Q_{1}).

Robot position accuracy (validation, pose set Q_{2}).

Robot orientation accuracy (validation, pose set Q_{2}).

Robot's absolute position accuracy (validation, pose set Q_{2}).

Absolute position accuracy at calibration poses Q_{1} and validation poses Q_{2}.

Origin position errors between frames {

Δ |
Δ |
Δ | |
---|---|---|---|

Average value | Δ |
Δ |
Δ |

Standard deviation | _{x} |
_{y} |
_{z} |

Euler angle errors between frames {

Δ |
Δ |
Δ | |
---|---|---|---|

Average value | Δ |
Δ^{5} |
Δ |

Standard deviation | _{α} |
_{β} |
_{γ} |

D-H parameters of robot HA-06 (units: length [m], angle: [deg]; - : not exist, × : not select).

_{i}_{-1} |
_{i-}_{1} |
_{i}_{-}_{1} |
_{i}_{-1} |
_{i} |
_{i} | |
---|---|---|---|---|---|---|

1 | 0 | 0 | 0 | 0 | 0.36 | θ_{1} |

2 | 90 | 0.200 | - | - | 0 | θ_{2} |

3 | 0 | 0.560 | 0 | - | 0 (×) | θ_{3} |

4 | 90 | 0.130 | - | - | 0.620 | θ_{4} |

5 | −90 | 0.0 | - | - | 0.0 | θ_{5} |

6 | 90 | 0.0 | - | - | 0.1 | θ6 (×) |

7 | - | 0.2 | - | - | 0.1 | φ |

Absolute position and orientation accuracy of the robot over the set of 56 robot poses Q_{1}.

Absolute position accuracy [mm] | Before cal. | 3.6573 | 1.55090 | 7.0433 |

After cal. | 0.12933 | 0.06618 | 0.32229 | |

Absolute orientation accuracy about |
Before cal. | 0.33022 | 0.18441 | 0.86927 |

After cal. | 0.00864 | 0.00593 | 0.02649 | |

Absolute orientation accuracy about |
Before cal. | 0.67187 | 0.36829 | 1.4892 |

After cal. | 0.01658 | 0.01164 | 0.0470 | |

Absolute orientation accuracy about |
Before cal. | 1.4004 | 0.22133 | 1.7003 |

After cal. | 0.01286 | 0.00962 | 0.0452 |