Abstract
In order to improve the positioning accuracy of robots in the workspace, the maximum cube of robots is solved according to ISO 9283:1998 standard. In addition, in order to efficiently test and identify the kinematic parameters of robots, a mapping from robot's distance error onto kinematic parameter errors is presented based on Hayati's modified D-H model. Then, by analyzing the condition number of distance error matrix, it is concluded that parameter d i can be deleted when parameter β i is added in the joint of the modified model. Furthermore, by analyzing the relationship among the parameters of the distance error model, it is found that the deletion of some unidentified kinematic parameters may not result in the accuracy decrease of kinematic error model. Finally, some compensation experiments of the proposed model without unidentified kinematic parameters are carried out by using a laser tracker system. The results show that the proposed method effectively reduces the distance error and greatly improves the positioning accuracy of robots.
1. Introduction
The absolute accuracy of robot is always lower than its repeatability accuracy because the actual kinematics parameters are not identical to the nominal kinematics parameters. It must compensate the kinematic parameters error. In accordance with Roth et al. [1], the main sources of robot positioning errors can be divided into two main groups: geometrical kinematic parameter errors (link lengths, assembling errors, etc.) and nongeometrical ones (compliant errors, measurement errors, environment factors, control errors, friction, backlash, wear, etc.). The main source of the robot inaccuracy is the geometrical kinematic parameter errors because the external forces/torques applied to the end-effector are relatively small. There are open-loop methods and closed-loop methods on robot calibration [2]. By attaching the end-effector to the ground and forming a closed kinematic chain, closed-loop methods calibration used joint angle sensing only, without any external measuring equipment. At present, the most popular calibration methods are the so-called open-loop methods that enable any kind of measurement devices to obtain the pose of the end-effector.
Hollerbach and Wampler [2] proposed a kinematic differential error model mapping the robot error and the kinematic parameters. When a joint is nearly parallel to its neighboring joint, a small error may result in a large error of the robot end-effector. As the small error cannot be modeled by the D-H model, Hayati Samad [3] put forward a modified D-H model which introduced the β i parameter between two y axes. Stone et al. [4] established the S model. The model includes 6 parameters for each joint and helps to obtain the actual robot kinematic parameters through identifying the axis errors. Zhuang and Roth [5] utilized a camera model to calibrate robot via a modified CPC model. Although the methods of Stone et al. and Zhuang et al. both help to obtain satisfactory results, they use a new kinematic model instead of the D-H kinematic model, which is generally employed. Röning and Korzun [6] calibrated D-H kinematic parameters by using the distance error. Gong et al. [7] proposed a self-calibration method using distance error. Ha [8] calibrates Hayati modified D-H kinematic model which has five parameters in each joint using the distance (relative position) error. All these abovementioned methods achieved satisfactory experimental results. Moreover, in order to accurately calibrate robots, many optimization methods were proposed, such as the particle swarm optimization method proposed by Alıcı et al. [9] and the genetic programming method presented by Dolinsky et al. [10]. These optimization methods are effective in improving robot accuracy. However, more experimental data are needed during the application of the optimization methods, which may result in great computation complexity. Because some kinematic parameter errors cannot be identified, Meggiolaro and Dubowsky [11] proposed identifiable robot error parameters and presented a method to eliminate the redundant parameters in the process of robot calibration.
In the existing calibration methods, the robot workspace where the robot operates is not sufficiently considered. Many methods have been proposed to optimize the pose selection during robot calibration [12–14], but they all use the calibration methods considering the large space that a robot can attach. However, in this space, there are many positions at which the robot is never used or is seldom utilized. Furthermore, all the methods use the least square method (LSM) to calibrate the error parameters. To weigh the error parameters, the LSM will distribute the weight affecting the error of measurement points including the points that are seldom utilized. These points are not necessary because they reduce the weights of useful space points.
To address these problems the remainder of this paper is organized as follows. Firstly, the maximum cube in the workspace of robots is solved according to ISO 9283:1998 standard (Figure 5). Secondly, a mapping from robot's distance error onto kinematic parameter errors is presented based on Hayati's modified D-H model. It should be mentioned here that these error sources may be either independent or correlated, but, in practice, they are usually treated sequentially, assuming that they are statistically independent [15]. Thirdly, this paper analyzes the D-H parameters and it deletes unidentifiable ones. Finally, the robot kinematic model is compensated by using the identified kinematic parameter errors, thus successfully improving the robot accuracy.
2. Robot Distance Error Testing
2.1. Coordinate Transformation of Robot Coordinate and Laser Tracker System
Figure 1 is the schematic drawing of a robot and the corresponding measurement instrument Leica laser tracker system (LTS). For the robot, the base frame is {0}, the robot end-effector frame is {e}, and the measurement frame is {M}. As shown in Figure 1, a1, a2, and a3 are D-H parameters and are used to solve the maximum cube in the later part of this paper.

Schematic drawing of robot and LTS.
Here, we use homogeneous coordinates to describe the robot kinematic model and a 4 × 4 matrix to describe the robot pose. The first 3 rows of the fourth column in this matrix describe the robot position. The orientation and position of frame {e} to the frame
The robot end-effector position is
The homogeneous coordinate matrix of the robot endpoint, namely,
The robot endpoint position is
According to ISO 9283:1998 standard, the accuracy measurement of a robot is to test the robot's end distance, so that
2.2. Maximum Cube of Robot Workspace
Here, we use the “Manipulating industrial robots: Performance criteria and related test methods” in ISO 9283:1998 to measure the robot distance accuracy. The maximum cube with side lengths of 250, 400, 630, and 1000 mm should be used. The centre of the selected cube is shown in Figure 2.

Testing cubic of location in accordance to standard.
To obtain the maximum cube, we should
calculate a maximum cube in the workspace;
place the centre of the selected cube in the centre of a cube with the maximum allowable cube;
acquire 5 testing points: P1, P2, P3, P4, and P5 in the standard cube.
For experimental robot, the range of each joint rotation is shown in Table 1.
Range of robot rotation (deg).
The maximum rotation angle of joint 2 is max(θ2) = 80°.
The robot link parameters are shown in Table 2.
Link parameters (mm).
When the robot endpoint and link 2 are both in the same line, the robot can achieve its maximum radius from which the outer boundary can be obtained. According to the relation of space geometric rotation, the robot rotates along joints θ1 and θ2 to reach the point (p nx ,p ny ,p nz ) on the outer boundary surface (see Figure 3), and

The outer boundary surface.
In addition, point (p nx ,p ny ,p nz ) on the inner boundary surface (see Figure 4) must satisfy
By solving formula ((6)), there comes
Then, we establish the objective function as the longest side of s.

The inner boundary surface.

The maximum workspace of robot.
Constraints are as follows:
outer curve constraints: C4 should be on the outer boundary surface or below the inner surface;
inner curve constraints: F should be on the inner boundary surface or on the inner surface;
Let C4(a + s,s/2,c + s) and F(a,0,c) in the constrains (1)~(3). The optimal value of the objective function is 678.4706, and variable values s, a, and c are solved to get 679.4706, 433.4938, and 0, respectively.
Consequently, the maximum cube in workspace is 680 mm per side, and the centre of the selected cube is the centre of the maximum cube, that is, (a + s/2,0,c + s/2). Thus, the centre point is (773, 0, 340) and the cube is shown in Figure 6.

The maximum cube in workspace.
2.3. Experiments of Testing Robot Distance Error by LTS
The experiments were carried out on the robot GSK08 made by Guangzhou CNC Equipment Company, China. LTS Leica AT901 with a precision of ±10 μm + 5 μm/m was used as the measurement apparatus. It consists of a laser tracker, an AT controller, a reflector, and a processor equipped with software package PolyWorks v11. The measured target is a reflector assembled to the end-effector by a fixture specially designed for robot measurement. When a laser line is emitted by the tracker and is reflected by the reflector, the position in 3-dimension of the reflector is calculated by the tracking system. As the orientation measurement algorithm is the same as the position one, only the position measurement was performed in this experiment (see Figure 7).

Measurement of robot distance error by laser tracker system.
3. Kinematic Parameter Errors Model for Distance Error
3.1. Robot Kinematic Model
The Denavit-Hartenberg (D-H) homogeneous transformation matrix is widely applied to the robot kinematic analysis, as shown in the following formula:
If zi − 1 and zi − 1 are nearly parallel, a modified Hayati D-H homogeneous transformation matrix is used; that is,
3.2. Robot Joint Kinematic Error Parameters Model
Setting
Instead of the orientation matrix
Let the robot endpoint position be p = g(k), and k is robot full kinematic parameter: k = [θ1 a1 d1 α1 β1 ⋯ θ i a i d i α i β i ⋯ θ n a n d n α n β n ].
For each joint, the mapping from the matrix
where A
i
a
is actual matrix of
The differential of matrix
The partial derivatives of matrix
When the neighbor joints are nearly parallel, d
i
= 0, and the partial derivative of matrix
Each kinematic parameter error of robot joint is mapped onto the joint differential error e i as formula ((18)):
where k
i
is a certain joint kinematic parameter. When joint i is parallel to joint i + 1,
The actual endpoint error is obtained by the measurement apparatus. However, a certain joint error e
i
is relative to the base frame. It needs to transform error e
i
from the base frame to the endpoint frame. Hence, matrix
Here, the robot orientation error is not discussed due to the space limit.
δ
For a certain point j in the workspace, its position error is
3.3. Robot Distance Error Model
The robot positions of two arbitrary points j and j + 1 are, respectively, p j and pj + 1.
If we move the robot in the base frame, the laser tracker can track two points j and j + 1 in the measurement frame. The positions of these two points are described by
The commander distance of these two points is
And the actual distance between these two points is
The relationship between the robot commander distance and the actual distance is shown in Figure 8.

Relationship between commander distance and actual distance.
From formula ((18)), one can obtain δp
j
as a certain point error: δp
j
=
δp j is the error of point j between the commander distance and the measured one, and
δpj + 1 is the error of point j + 1 between the commander distance and the measured one, and
Dj,j + 1 a is the actual distance between points j and j + 1; that is,
The square of Euclidian actual distance is
Supposing that
there is
By using the least square method (LSM), it obtains
m is the number of measurement:
Thus, the estimated value ○ can be obtained.
4. Kinematic Parameter Errors Identification
4.1. Modified D-H Parameters Numerical Analysis
The condition number of a full-rank matrix
Supposing that
According to the inequality ‖
cond(
Cond2(
Large condition number may result in a system with high sensitivity, which means that even small changes of
4.2. Unidentified Kinematic Parameter Errors of Distance Error
The robot endpoint deviation relative to the base frame is
The matrix
According to the Meggiolaro method,
where ∂
Therefore,
It can be obtained that
As measuring instruments need no identification, we can obtain the identifiable parameters listed in Table 3.
Identifiable parameters for distance error.
4.3. Directly Solve the Transformation between the Robot Endpoint and the LTS Reflector
As the installation errors of LTS reflector are not the robot error, a method for error separation should be employed.
As shown in Figure 9, if only joint 6 rotates and other joints are locked, a circle can be obtained. The LTS can capture a rotation axis and the center of this circle (Figure 10). Here, we suppose this axis to be z axis of the robot endpoint frame. Then, rotating joint 5 only and locking other joints, the LTS can capture the y axis of the robot endpoint coordinates. Moreover, the x axis can be obtained based on the right hand rule. Thus, the reflector coordinate values in the endpoint frame can be successfully obtained.

Installation errors of LTS reflector.

Measuring flange frame by single axis rotation.
5. Experiments of Kinematic Parameter Errors Identification
According to formula
If the identified kinematic parameter errors of the robot are obtained, the robot kinematic parameters can be compensated and the statistical indexes after compensation can be obtained for fitting points, as listed in Tables 4 and 5.
Kinematic parameters after compensation.
Statistical index after compensation for fitting points.
Figure 11 shows the error comparison of fitting points, from which it is found that the robot distance accuracy improves by 98.32% and the standard deviation decreases by 97.54% for fitting points.

Error comparison of fitting points.
Some other points are selected to test the effectiveness of the compensation, and the results are shown in Figure 12.

Error comparison of testing points.
Table 6 lists the statistical indexes after the compensation for testing points, from which it is found that the robot distance accuracy improves by 88.06% and the standard deviation decreases by 73.92% for testing points. This absolute mean is the actual accuracy for robot.
Statistical index after compensation for testing points (mm).
6. Conclusion
In the test of robot's distance error, the distribution of points in the whole space may reduce the accuracy of the robot in the workspace. In order to solve this problem, the maximum cube of robots is solved according to ISO 9283:1998 standard. In addition, a mapping from robot's distance error onto kinematic parameter errors is presented based on Hayati's modified D-H model. Then, by analyzing the condition number of distance error matrix, it is concluded that parameter d i can be deleted when parameter β i is added in the joint of the modified model. Furthermore, by analyzing the distance error matrix, a new kinematic parameter model deleting unidentified kinematic parameters is established. Finally, some compensation experiments are carried out by using a laser tracker system. The results show that the proposed method is effective and that it helps to reduce the robot endpoint error by 73.9%. The next work is to deal with robot's attitude error and the corresponding compensation method.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Footnotes
Acknowledgments
This work was partly supported by the Guangdong Province Strategy Emerging Industry Program (2011A091101001, 2012B090600028, and 2012B010900076), the Science and Technology Planning Project of Guangzhou City (2014Y2-00014), and the Administration of Quality and Technology Supervision of Guangdong Province Technology Program (2012CZ01).
