An Analysis of Joint Assembly Geometric Errors Affecting End-Effector for Six-Axis Robots

: This paper presents an analysis of the geometric errors of joint assembly that affect the end-effector for a si x -axis industrial robot. The errors were composed of 30 parameters that come from the Geometric Dimensioning and Tolerancing (GD&T) design, which is not the normal way to describe them. Three types of manufacturing tolerancing—perpendicularity, parallelism and position—were introduced and investigated. These errors were measured by the laser tracker. The measurement data were calculated with an analysis of the circle fitting method. The kinematic model and error model based on a combination of translations methods were used. The experiment was carried out in order to calculate the tolerancing of geometric error. Then, the positions of the end-effector in the actual measurement from laser tracker and exact performance were compared. The discrepancy was compensated by offline programming. As a result, the position errors were reduced by 90%.


Introduction
Industrial robots are widely used in manufacturing and in processes such as welding, milling, grinding and drilling. The demand for industrial robots with better repeatability and accuracy has been growing. The accuracy of the robot is not important, as long as the robot end-effector poses are manually taught. However, in offline programming, accuracy becomes important, since positions are defined in a virtual space with respect to a coordinated system. Thus, the accuracy of the robot is becoming a more important measurement to indicate the accuracy and precision of an industrial robot. The actual position coordinate of a robot's tool center point deviates from the nominal value due to the inherent geometric errors. The inaccuracies can be caused by many sources. They include deformation, thermal, controller and structure. Much research into robot positioning accuracy has been carried out. The geometric or kinematic errors may affect the positioning accuracy of a robot. The imperfect geometric, alignments and dimensions of machine components are sources. In the current study, the focus is on structural errors [1][2][3][4][5].
Many researches have been conducted in kinematic error analysis, error model derivation and calibration of robotics and machine tools [7][8][9][10][11]. A lot of research has studied the positioning error, and claimed that the geometric error is the most important factor with respect to the positioning error of the robotics [12][13][14]. Yuanfan et al. [14] have studied an error compensation method with error similarity analysis to improve the absolute positional accuracy of industrial robots. The ordinary kriging method is used to calculate positional errors. Shaowai et al. [15] presents an integrated geometric error modeling, identification and compensation method for machine tools. The geometric error parameter is based on a laser interferometer and ball bar. Nguyen et al. [16] have proposed a method of full pose measurement of the robot end-effector for calibration. The method is based on an analysis of the features of a set of target points on a circle trajectory. Zhu et al. [4] have proposed a positioning error compensation on two-dimensional manifold that reduces the dimensionality of the workspace. OH [11] presents the data measured during the circle contouring movement of the robot end-effector to analyze the robot's orientation error. The geometric error calibration and compensation have been widely studied to improve the robot accuracy. Geometric Dimensioning and Tolerancing (GD&T) is another factor of geometric errors. The nominal geometrics of a robot as determined in the design drawing can rely on the development of the nominal kinematic function. It is often used in the central controller for robots of the same model without taking the variation in the assembled robots into account [18]. The variation owes much to the tolerances allowed in the manufacturing of the robot components. For the nominal to fit better in all the robots of the same model, the tolerances specified in the design drawing have to be tightened. This is a potentially expensive approach to improving positioning accuracy. The development of kinematic models is important in evaluating the performance of a robot system and in improving its positioning accuracy. An error model is also important during the robotic calibration. The correct identification of the kinematic error model can serve to increase the effectiveness of robot positioning accuracy. Error models have been developed based on homogeneous matrices and Jacobian matrices [19].
There are many measurement tools that are used in machine tools and robot calibration, such as laser interferometer, laser ball bar, ball-column, laser tracker, optical CMM and visual system [20][21][22][23]. An et al. [20] use a laser tracker calibration and compensation of machine tool volumetric error. Cao et al. [21] have studied a method to reduce and compensate the position error of robot using machine vision combined with a neural network. Albert et al. [22] present a technique used to find the 29 error parameters of an ABB IRB 1600 robot that best fit the measures acquired with a laser tracker. Error compensation, which uses a specific mathematical way to model the error in the industry machining process, such as positioning, thermal field, force, etc. [4], is a promising method to improve the machining precision.
This study proposes measurement tolerances, which are a factor of the joint assembly geometric errors, which affect end-effector for six-axis robots. The method in this study is designed to measure the pose and path error combination of the robot that is composed by measuring with 7-line directions, which provide a more precise analysis of the Geometric Dimensioning and Tolerancing effect than the conventional kinematic calibration of industrial robots due to the conventional kinematic calibration, which can measure the position error. Normally, the conventional kinematic errors are measured and evaluated the position errors that combine all the factors of the end-effector, while the proposed methods analyze the geometric errors of each joint, and can be separate joint errors compensated by both off-line programming and mechanical adjustment methods. The following sections of this paper are organized as follows: Section 2 discusses a kinematic model and geometric error model based on a combination of translations methods. This model is implemented in a KUKA KR5 six-axis robot. The total amount of geometric errors is measured in the first experiment by a laser tracker. The second experiment measures and compares the robot end-effector position between the normal kinematic model and the proposed kinematic model. The third experiment is carried out in order to validate the performance of geometric errors induced by error compensation. Geometric errors are compensated in offline programming in the test. The Laser tracker measures the uncompensated and compensated results of seven direction position errors. The experiment is described in detail in Section 3. The results of the experimental verification are shown in Section 4, and finally the conclusions are drawn in Section 5.

Robot Kinematic Model
There are several methods to describe robot kinematics. The most widely used presentation is the DH parameter [13,18,23,24]. However, this study selected a combination of translation methods for transformation kinematics that modify the DH method [24]. The DH method was used to represent a simple robot model, but this paper analyzes the positioning error at the end-effector caused by the GD&T of each robot's joints, which have to be added to the transformation of errors in each joint into robot kinematics. Therefore, the transformation kinematic with errors cannot use the DH method directly. The combination of translations consists of translations and rotations about a current frame axis. Any transformation can be resolved into a set of translations and rotations in order to accomplish what is needed. This order is very important, and if the order of two successive transformations is changed, the result may be different. All transformation changes are the location of the current frame relative to the new reference frame. The new location of the frame relative to the fixed reference frame can be defined by the translations ( , , ) where i P is the rotation frame relative to the reference frame. A homogeneous transformation matrix, which refers to the transformation of the ith link relative to (i + 1)th link frame as matrix. For a 6-axis robot, a seven reference frame i P (i ranging from 0 to 6) are defined, and the forward kinematic model is defined as This method can be applied to any robot model; a robot KUKA KR5 ( Figure 1) has been considered in this implementation. A nominal dimension of the robot is shown in Table 1.

Geometric Error Model
The accuracy of the machine tool and robot is affected by many possible error sources. The types of error can be distinguished into static errors and random errors. Static errors are those whose numerical value and sign are constant for each robot, such as geometric errors. Random errors are those whose numerical value or sign change unpredictably. At each robot, the exact magnitude and direction of random errors cannot be uniquely determined, such as the backlash of a motor gearbox [18].
The geometric errors are static errors. There are many sources of geometric errors that may affect the accuracy of end-effect positioning. Kinematic errors are errors due to imperfect geometric, alignment and dimensions of machine components. Geometric Dimensioning and Tolerancing (GD&T) is another factor of error. Tolerancing is considered an error. In this study, these errors include perpendicularity, parallelism and position. Rotation transformation is the result of perpendicularity and parallelism. Translation Transformation is the result of the position.
The Geometric Transformation of tolerancing changes the geometric properties of a robot. As a result, the frames defined at the robot joints are displaced from a nominal location. In Figure 2, frame n i P is shown in a nominal location and frame r i P is reallocated due to error.
When the geometric errors are considered in the 6-axis robot model, a homogeneous transformation matrix with error is defined in Equation (6), and the forward kinematic model with error is the same as in Equation (3) / 1 1 2 2 3 3 4 4 5 5 6 6 7 we

Tolerancing Analysis
It is well-known that manufacturing errors and tolerancing are inevitable because of certain practical considerations such as the precision of machine tools and the assembly process [16]. This section discusses the influence of design tolerancing on the robot kinematic error. Three types of manufacturing tolerancing-perpendicularity, parallelism and position-were introduced and investigated. Tolerancing analysis, defined as the maximum kinematic error with respect to individual tolerancing parameters, was applied to assess their effect on the end-effector.
Perpendicularity and parallelism can mean two very different things depending on which reference feature is called out as the surface and axis. An axis,  , is a tolerance that controls how perpendicular or parallel a specific axis needs to be to a datum. An axis was controlled by a cylinder around a theoretical perfectly parallel axis. Tolerancing in Figure 3a can be defined as where  is a function of e  and e  .
l is hold depth.
e  and e  in Equation (8) (9) where arctan( , ) ij   that i and j are the direction of tolerancing that is shown in Figure 3b

Experimental Setup
The installation which is shown in Figure 4 was used for measuring the geometric errors in each joint of a KUKA KR5 robot with a Faro laser tracker ION model in interferometer mode. According to the product specifications of this laser tracker, it has an angular accuracy around 10 m + 2.5 m/m, distance measurement accuracy in interferometer mode of 8m + 0.4 m/m and resolution 0.16 m. The repeatability of the robot is ±0.04 mm. Unfortunately, no information shows the positional accuracy of this robot. The position measurement was performed with a spherically mounted reflector (SMR), diameter 1.5-in installed at each joint of the robot. A jig fixture at end-effector dimensions is 136 × 100 × 12 mm. It is made of SS400. All measurements ware performed at a temperature varying between 32 and 35 °C . The location of the base frame of a robot must be in alignment with respect to the system coordinate frame of measurement software (CAM2 SmartInspect) with the laser tracker. The location of the base frame of the laser tracker was constructed by the coordinate system in software with "plane-line-point" mode. A plane is the base frame which uses the table that places the robot as the plane of the coordinate system. A line is the direction of the base frame which uses the two screw positions that fasten the robot on base for a constructed line as the Y axis. A point is the origin point of the base frame which uses the center of the cylinder of A1 axis so that it can directly measure errors. In the first test, in the axis-by-axis measurements, each joint was rotated separately. For each robot axis, a circle was fitted. From this circle, the robot axis was extracted. The position of SMR was measured when each joint was displaced by equal increment within an interval, as defined in Table 2. The errors were calculated with respect to the circle center at the joint axis. The second test was to measure and compare the robot end-effector position between the normal kinematic model Equation (3) and the proposed kinematic model Equation (7), which was installed with a jig-fixture. This study was based on the 12-line method [14] to identify error parameters. The position errors were measured in seven directions of robot space as x-axis, y-axis, z-axis, xy-diagonal, yz-diagonal, xz-diagonal and xyz-diagonal, as shown in Figure 5. There are 11 poses in each direction. Therefore, there is a total of 77 poses in this experiment, and the volumetric error workspace is 600 800 400 x y z      mm 3 . Both tests were repeated 30 times for each pose. The third test was to verify geometric error compensation, which was compensated by offline programming. The measurement method was the same as in the second test. The modified forward kinematic model is defined as

Experimental Data Analysis
This section presents the analysis measurement data from the first test. Figure 6 shows the data of the points captured in each joint in 3D space, which can be represented as a circle, as shown in Figure 7. The normal direction of the circle was fitted in the measuring software as A1 axis as the zaxis and A2 to A6 axis as the x-axis of the robot base frame. The circle fitting method can be separated into four steps: 1. Using Singular Value Decomposition (SVD) to find the best fitting plane to the set of the mean centered point [26,27];  A plane can be found that fits as closely as possible to a set of 3D points, and the closeness is measured by software between the plane and the points. The normal vector n for the fitting plane can be defined from SVD as T A U V  (11) where , UV are unitary matrices and  is a diagonal matrix containing singular values The SVD can be written as where T b V n  . Thus, the expression is obviously minimized by choosing  is the lowest singular value. Finally, n is found by solving T V n b  , which is trivial since V is an unitary matrix, so The expression 2 An is minimized if, and only if, the normal vector n is chosen as the 3rd column of matrix V ; 2. Using the Rodrigues rotation to project the mean center point onto the fitting plane in new 2D coordinates [28].
The Rodrigues rotation formula projects 3D points on the fitting plane, P, to new 2D X-Y coordinates in the coordinate system plane. The Rodrigues rotation formula can be written as where the angle  is measured from the original 3D normal vector to the new 2D normal vector and vector k is axis of the rotation vector as a cross product between the 3D normal vector and the new 2D normal vector. Thus, An approximate solution can be found by method of the least mean squares, which minimizes the square sum of residuals  (17)) and normal vector (ˆn n and ˆr n , as in Equation (15)), respectively. The

Geometric Error Calculated
Two angular errors ( e  , e  ) and three positional errors ( x e , y e , z e ) of each joint ware measured by the laser tracker that was presented in Section 3. A summary of all 30 errors is demonstrated in Table 3. Table 3. Geometric error of each joint.

A Comparison of Kinematic Model Calculation and Real Measurement
A total of 30 geometric errors were calculated for the kinematic model with errors. An error kinematic model was calculated using the method in Section 2. Figure 8 shows a position error comparison between the kinematic model with the error calculation and real measurement from the laser tracker in the second test. The comparison results have the maximum difference of x-axis direction by ±0.56 mm, y-axis direction by ±0.58 mm, z-axis direction by ±0.52 mm, xy-diagonal direction by ±0.66 mm, xz-diagonal direction by ±0.84 mm, yz-diagonal direction by ±0.65 mm and xyz-diagonal direction by ±0.61 mm.

Tolerancing of Geometric Errors
This section shows the tolerancing of geometric errors following Section 2.3. The error angle of the normal axis,  can be defined as 22 ee    (19) From Section 4.1, tolerancing from Equation (8) can be calculated for each joint of the robot, as in Table 4.

Kinematic Error Compensation
In order to verify the feasibility of the positional error model and error compensation method in this study, the geometric error that was calculated in Section 4.1 was compensated in Equation (11). The geometric error was compensated by offline programming. The results of the position errors were performed, compensated and uncompensated, as shown in Figures 9-11. The results show the absolute positional errors that were calculated using the following equation   where x e , y e and z e are the position errors on the x, y and z axis, respectively. According to the experiment results, the positional error was maximally reduced on each direction as follows: x-axis direction by 90%, y-axis direction by 88%, z-axis direction by 81%, xy-diagonal direction by 80%, xzdiagonal direction by 71%, yz-diagonal direction by 74% and xyz-diagonal direction by 85%.

Conclusions
In this study, an analysis of a joint geometric error affecting a robot end-effector was presented. Geometric Dimensioning and Tolerancing (GD&T) was applied to explain the geometric errors. The transformation kinematic and geometric errors were developed by the combination of translation methods.
This method was used in the error analysis of a six-axis robot. The tolerances of each joint and the error compensation method were proposed and verified with experiments. The first experiment found a total of geometric errors and tolerancing of geometric errors. The second experiment results showed a position error comparison between the kinematic model with error calculation and real measurement from the laser tracker. The comparison position errors revealed that the maximum difference of all directions was ±0.84 mm. Likewise, the third experiment results showed before and after compensation errors. All direction compensations were found with a maximum positional error of ±3.98 mm. However, a compensation error method in this study reduced the maximum position error by 90%. Therefore, the proposed method can effectively improve the joint geometric error and compensated error in a six-axis robot.

Conflicts of Interest:
The authors declare no conflict of interest.