Abstract

To improve the positioning accuracy of collaborative robots, a novel modeling and calibration method for collaborative robots is proposed based on position information and modified local product of exponentials (LPoE). The kinematic error model is derived from the kinematic model through differential transformation. To solve the problem of the high redundancy and complexity of the error model that is difficult to identify, the errors of the kinematic parameters are all transferred to the initial position and posture matrix of the local coordinate system, which simplifies the error model and improves the speed and accuracy of the identification calculation. However, the simplified error model still requires posture data which are very difficult to acquire in practice. For this reason, the position error is separated from the kinematic model, and an error model based on position data is established. Then, a kinematic calibration method of the collaborative robot based on position data is proposed, which simplifies the measurement process and improves the efficiency of calibration. The effectiveness of the method is verified by simulations and experiments on a six degree-of-freedom collaborative robot.

1. Introduction

With the development of robots and the change of manufacturing mode, the working field of robots is expanding to realize natural interaction with humans, e.g., collaborative robots begin to be applied in unstructured environments to cooperate with humans. The collaborative robot is a new type of industrial robots, which can directly interact with people in the designated cooperative area [1]. Compared with traditional industrial robots, collaborative robots have the advantages of high security, universality, sensitivity, easy to use, and man-machine cooperation, which can be applied in the field of industrial production, family services, and rehabilitation medicine [24]. Generally, the actual kinematic parameters of the robot are inconsistent with the nominal parameters in its controller for the error of manufacturing and assembly and the stress deformation of joints and linkages, which results in control errors and reduces the positioning accuracy of the robot. Moreover, the collaborative robot is an open-chain mechanism with low stiffness and error accumulation and amplification. Therefore, the accuracy of the collaborative robot is much lower than that of traditional orthogonal instruments, and it cannot be applied to cases with high accuracy requirements, such as measuring, precision assembly, turning, and milling [5, 6].

Kinematic calibration is one of the main methods to improve the absolute positioning accuracy of robots, which is the process of identifying the actual kinematic parameters of the robots by using advanced measurement means and model-based parameter identification method, and compensating them to the controller of robots or compensating to improve positioning accuracy [7]. Kinematic calibration has been a research hotspot in the field of robots [810], which consists of four steps:kinematic modeling, pose measuring, parameter identification, and compensation [11]. Most kinematic models in the controller of robots are based on Denavit-Hartenberg (D-H) method [12]. However, when two adjacent axes of the robot are parallel, the Jacobian matrix of the D-H model will be singular [13]; that is, the kinematic solution has abrupt changes and discontinuities, which results in coupling problem between some of the kinematic parameters [14]. To solve the singularity, Park et al. [15] proposed a kinematic modeling method, i.e., PoE, which only needs to build the base and tool coordinate systems on the 0th linkage and the end. Nevertheless, the PoE error model contains a finite integral term, which is not an explicit form and is inconvenient to use leading to the identifiability of its kinematic parameters cannot be determined [16]. He et al. [17] modified the PoE model by deriving the differential solution formula of exponential mapping on joint twists and variables and established an error model based on PoE model with explicit expression, which is the main PoE method used in kinematic calibration at present. Jiang et al. [18] used the PoE model to analyze the position space relationship of joints’ axis under different geometric errors and proposed a calibration model including joint errors. Wang et al. [19] proposed a self-kinematic system for an on-orbit space manipulator based on PoE formula, which can measure the position and posture of the manipulator without using external measurement devices.

In the kinematic parameter identification of robots, the D-H model only needs the end position data of robots, while the traditional PoE model also needs to obtain the position and posture data of robots. It is difficult to obtain posture data in practice. The operation is cumbersome, time-consuming, and difficult to ensure its accuracy [20]. Therefore, the traditional PoE model is difficult to be applied in the actual kinematic calibration of robots.

There are parameters in the traditional PoE-based error model which is very difficult to be identified. In this paper, to simplify the error model and improve the redundancy, the error model is simplified by transferring all the errors of the kinematic parameters to the initial position and posture matrix, to avoid the use of posture data which is difficult to obtain. The position error is separated from the kinematic model, and an error model based on position data is established. Then, a kinematic calibration method of collaborative robot based on position data is proposed, which simplifies the measurement process and improves the efficiency of calibration.

2. Kinematic Modeling based on LPoE for the Collaborative Robot

In this section, the transformation of the local coordinate system of the adjacent linkages is derived, based on which the LPoE kinematic model of a typical six degree-of-freedom collaborative robot is established.

2.1. Description of the Coordinate System of Adjacent Linkages

Figure 1 shows a typical six degree-of-freedom collaborative robot. Unlike general industrial robots, the axes of the second, third, and fourth joints of the collaborative robot are parallel to each other.

Like the D-H model, the LPoE model uses a local coordinate system to describe the motion relationship of adjacent links [21]. As shown in Figure 2, the relationship between the adjacent linkages and can be written as (1). where is the initial transformation matrix between coordinate systems of and , denotes the twist of joint , denotes the rotation angle of joint , and is a matrix: where .

Furthermore, can be written in the coordinate system : where and are the crossproduct matrixes of . can be written as

To be consistent with existing robot position and posture description methods, can be written as the form of position and posture matrix: where and denote the initial posture and position , respectively.

2.2. Kinematic Modeling for the Robot

Based on the coordinate systems of adjacent joints, the kinematic model of the six degree-of-freedom collaborative robot can be derived as follows:

is used to denote the transformation from the flange to the tool of the robot. Then, the position and posture matrix of the tool will be

Following the method of LPoE, the coordinate systems of the robot were established as shown in Figure 3. The nominal value of the twists is . The nominal kinematic parameters can be determined according to the structural size of the robot, as shown in Table 1.

3. The Error Modeling Based on LPoE for the Collaborative Robot

In this section, the error modeling of the collaborative robot based on LPoE is proposed and simplified. Then, the pose-based and position-based error models are derived, respectively. The identification method and flow chart based on the least square method are presented.

3.1. Error Modeling and Simplifying

The kinematic model, i.e., (7) can be written as the function of , , and : where , , and .

By linearization of (8), the error model can be derived: where δTT-1 denotes the error of position and posture of the tool in the base coordinate system, which can be calculated by subtracting the measuring position and posture from the nominal ones. Kinematic parameters can be obtained by identification with the measuring data and the error model. The objective function of the identification model is generally set as the least square solution, i.e.,

There are 13 parameters to be identified in each joint in (10), and there are 6 joints in the collaborative robot. So, many parameters make the parameter identification model highly redundant and complicated. It is very difficult to directly identify the parameters.

To solve the problem of high redundancy and complexity of the error model based on LPoE, the simplified error model will be presented. As shown in Figure 4, the nominal coordinate system of joint and the actual coordinate system are not coincident for the error of kinematic parameters, i.e., the nominals , and are not equal to the actual , , and . For the local coordinate system of LPoE can be assigned arbitrarily, the following two assumptions are proposed [21]: (1) the kinematic error only exists in the initial position and posture of the local coordinate system , and (2) the nominal values of and remain unchanged in the whole parameter identification calculation process.

Based on these assumptions, a new local coordinate system is set at each joint as the intermedia coordinate system in the following identification, as shown in Figure 4. Then, and will remain unchanged as and in the identification. Therefore, (9) and (10) can be simplified as

3.2. Error Modeling Based on Position and Posture

According to Chasles theorem [22], for a given homogeneous transformation matrix , there is at least one coordinate twist such that =T. Then, one can obtain (12) according to (1). where . Then, (7) can be rewritten as

Let denote the error of . Then, one can obtain and . By linearization of (13), one can get

Right multiplying both sides of (14), one can get (15) in the form of adjoint transformation. where denotes the total error of kinematic parameters of the robot relative to the base coordinate system. Ad is the adjoint transformation defined as where is a homogeneous transformation matrix, is the orthogonal matrix in , and is the antisymmetric matrix of P. According to the matrix logarithm calculation formula defined in SE (3), can be written as where denotes the actual position and posture. Components of SE(3) can be expressed by and . Then, (15) can be rewritten as where denotes the transformation from coordinate system 0th to 7th. The initial position and posture transformation of linkage relatively to is

(18) can be written in the form of linear equations: where

and can be obtained from the nominal model. can be obtained by measuring, usually a laser tracker. denotes the error of the kinematic parameters to be identified. To improve the accuracy and robustness of the identification, it is usually necessary to measure the position and posture of the tool under different configurations of the robot. If times of measuring are required, at the -th time, the position and posture error and the corresponding adjoint mapping matrix can be obtained. After finishing acquiring measuring data, and are substituted into (22). where

Since the model consists of linear equations and variables, when , the linear least squares algorithm can be used for parameter identification, and the least squares solution of is where is the pseudoinverse of .

can be initialized with the nominal value, i.e., . x can be calculated by acquired data and (24). Then, can be updated by (19) till the objective function approaches 0 or T(0) converges to a stable value. Then, the stable is set as the initial position and posture, i.e., . (7) can be written as (25) after the nominal position and posture matrix is substituted with the above identified one.

3.3. Error Modeling Based on Position

In practice, the posture of the robot is very difficult to obtain, which is time consuming and complicated. One error modeling method based on position is presented in this paper.

Right multiplying both sides of (13), one can get where denotes the position of the tool, . Then, the position error model can be obtained by differentiating (26):

According to the assumptions above, i.e., the kinematic error only exists in the initial position and posture of the local coordinate system , (27) can be written as

By substituting (18) into (28), one can get

(29) can be simplified as where , denotes the nominal position, denotes the actual position, , and .

The position of the tool can be measured times at different configurations. Then, with these measured data, the kinematic parameter identification equations can be obtained as shown in (31).

One can solve (31) by the iterative least square method with the termination condition of the iteration as , as shown in Figure 5. And the least square solution is

4. Simulations

In the simulation, the twists are set as Figure 3, and the kinematic parameters are set as Table 1. To simulate the measuring error and test the stability of the error model, Gaussian noise with an expectation of 0 and a variance of 0.2 is applied to the data of positions calculated by the kinematic model of the robot. The settings when calculated the data of positions are the following: (1) the errors of kinematic parameters are δpi, δqi, and δsi, and (2) the actual initial position and posture is set as follows:

The actual position is calculated by

All the joints of the robot are one freedom; so, the setting error should meet: , , and , as shown in Table 2.

100 groups of joint angle data are randomly generated, which are substituted to (34) to obtain the actual position data. The position data are divided into two groups: identification group and verification group. With the identification group of position data, the process of iterative convergence is shown in Figure 6 which shows that after 1st iteration, the objective function is reduced greatly; after 10 iterations, the maximum error is reduced from 29.597 mm to 0.146 mm, and the average error is reduced from 6.831 mm to 0.037 mm. The identified parameters are substituted to the kinematic model of the robot to calculate the position error in the three directions of the coordinate system with the verification group of data, and the results are shown in Figure 7 which shows that the maximum error in , , and directions is reduced from 19.797 mm to 0.094 mm, 26.548 mm to 0.092 mm, and 14.626 mm to 0.095 mm, respectively.

5. Experiments

To further verify the calibration method based on position information and LPoE model proposed in this paper, a calibration experiment was carried out on a six degree-of-freedom collaborative robot, the repeated positioning accuracy of which is 0.03 mm. The measuring instrument is RADIAN Pro R20 of API, and the measuring radium and accuracy are 20 m and , respectively. The measuring software is Spatial Analyzer (SA) of New River Kinematics. The experimental system is shown in Figure 8.

100 groups of joint angles are generated in the measurable space of the laser tracker, 70 groups of which are identification sets and the other 30 groups are verification sets. According to Figure 5, the kinematic parameters are identified, and the verification results are shown in Figure 9. The results show that after calibration, the maximum error in , , and directions is reduced from 3.171 mm to 0.393 mm, 3.258 mm to 0.678 mm, and 3.297 mm to 0.560 mm, respectively. Therefore, the accuracy of the collaborative robot is increased greatly by the proposed calibration method based on position data and improved LPoE.

6. Conclusions

The kinematic model of the collaborative robot based on the LPoE model was established, and the corresponding error model and calibration method were derived. The calibration method was verified by simulation, which proved the validity of the error model and the calibration method. A six degree-of-freedom collaborative robot was used as the experimental objective, and the API RADIAN Pro R20 laser tracker was used as the measurement equipment to perform kinematic parameter calibration experiments which show that the positioning errors of the six degree-of-freedom collaborative robot decrease from 3.171 mm, 3.258 mm, and 3.297 mm to 0.393 mm, 0.678 mm, and 0.560 mm in the directions of , , and , respectively, after kinematic parameter calibration. Therefore, the proposed calibration method is effective.

However, the residuals are still about 0.6 mm after calibration. The main reason is that kinematic calibration cannot eliminate the influence of nongeometric errors such as the elastic deformation of the joint. In the future, relevant research work will be carried out on nongeometric errors to further improve the positioning accuracy of the robot.

Data Availability

Data were curated by the authors and are available upon request.

Conflicts of Interest

The authors declare that there is no conflict of interest regarding the publication of this paper.

Acknowledgments

This work was supported by the National Natural Science Foundation of China (Grant No. 51865020).