Simultaneous Calibration of the Hand-Eye, Flange-Tool and Robot-Robot Relationship in Dual-Robot Collaboration Systems

A multi-robot collaboration system can complete more complex tasks than a single robot system. Ensuring the calibration accuracy between robots in the system is a prerequisite for the effective inter-robot cooperation. This paper presents a dual-robot system for orthopedic surgeries, where the relationships between hand-eye, flange-tool, and robot-robot need to be calibrated. This calibration problem can be summarized to the solution of the matrix equation of AXB=YCZ. A combined solution is proposed to solve the unknown parameters in the equation of AXB=YCZ, which consists of the dual quaternion closed-form method and the iterative method based on Levenberg–Marquardt (LM) algorithm. The closed-form method is used to quickly obtain the initial value for the iterative method so as to increase the convergence speed and calibration accuracy of the iterative method. Simulation and experimental analyses are carried out to verify the accuracy and effectiveness of the proposed method.


Introduction
A multi-robot collaboration system is frequently used to complete tasks that are very difficult or even impossible for a single robot system. It has the advantages of high precision, more complex tasks, high reliability, etc. Therefore, it is widely used in medical [1], aerospace [2] and other fields.
Robot and navigation technologies have been successfully integrated in the robotic orthopedic surgery system, where a robot is utilized to assist or even replace the surgeon during the intraoperative bone cutting with the position feedback from an optical tracking system (OTS). Generally, the pose of the OTS can be manually adjusted by the surgeon before the surgery and stays stationary throughout the surgery. However, the measurement accuracy of the OTS is related to the relative position and orientation between the OTS and the target [3,4]. In orthopedic surgeries, OTS is used to simultaneous locate multiple targets, such as the robot, the surgical tool, and the patient's bone. It is difficult for the surgeon to manually move the OTS to the optimal pose for the best measurement accuracy for all the targets. Furthermore, the operation room is crowded, especially around the operation table. As a result, the surgeon, the staff or the medical instruments might interfere with the measurement volume of the OTS. If the OTS is fixed, occlusions are likely to occurs, leading to the cut off of the feedback from the OTS. This is fatal in robotic surgery systems.
In this paper, a dual-robot system is developed for orthopedic surgeries, where an extra robot, i.e., the navigation robot, is used to carry the OTS such that the pose of the In this paper, a dual-robot system is developed for orthopedic surgeries, where an extra robot, i.e., the navigation robot, is used to carry the OTS such that the pose of the OTS can be actively adjusted during the surgical operation. The benefits for this active navigation include: (1) for multiple targets, the optimal pose of the OTS can be calculated according to the poses of each target, and then the navigation robot can precisely adjust the OTS to the optimal pose so as to guarantee the precision of the overall system, and (2) the navigation robot can move the OTS before the occlusion occurs so as to keep all the targets in sight throughout the surgery.
As schematically shown in Figure 1, the dual-robot system consists of an active navigation module and a surgery operation module located on both sides of the operation table. The active navigation module is composed of an OTS fixed to the flange of the navigation robot. In the surgery operation module, the surgical tool and a passive tool are fixed to the flange of the operation robot. The prerequisite for the collaborative operation of the dual-robot system is that the two robots, the OTS and the surgical tool are unified under the same world coordinate system. As shown in Figure 1 (1) where A, B, and C are known, and X, Y, and Z are the parameters to be calibrated.
For different robot configurations, the calibration algorithm can be briefly divided into three categories: (1) AX=XB. It aims to solve the robot hand-eye relationship matrix X under the condition that both A and B are known. Shiu first proposed a method to solve the matrix equation in the hand-eye calibration problem [5]. Tsai proposed an analytical method to solve the problem of hand-eye calibration and gave the principle of selecting the data set [6]. Fassi analyzed the algorithm for solving the hand-eye calibration matrix formula from a geometric point of view [7]. At the same time, they studied the excessive restriction and The prerequisite for the collaborative operation of the dual-robot system is that the two robots, the OTS and the surgical tool are unified under the same world coordinate system. As shown in Figure 1, the following homogeneous transformation matrices (HTMs) are defined: A is the HTM from the base of the navigation robot {B 1 } to its flange {F 1 }, B is the HTM from the OTS {E} to the passive tool {T}, C is the HTM from the base {B 2 } to its flange {F 2 } of the operation robot, X is the HTM from {F 1 } to {E}, Y is the HTM from {B 1 } to {B 2 }, and Z is the HTM from {F 2 } to {T}. Therefore, the calibration problem of the dual-robot system can be summarized to the solution of the following equation: where A, B, and C are known, and X, Y, and Z are the parameters to be calibrated. For different robot configurations, the calibration algorithm can be briefly divided into three categories: (1) AX=XB. It aims to solve the robot hand-eye relationship matrix X under the condition that both A and B are known. Shiu first proposed a method to solve the matrix equation in the hand-eye calibration problem [5]. Tsai proposed an analytical method to solve the problem of hand-eye calibration and gave the principle of selecting the data set [6]. Fassi analyzed the algorithm for solving the hand-eye calibration matrix formula from a geometric point of view [7]. At the same time, they studied the excessive restriction and singularity in the algorithm. Other algorithms include dual quaternion method [8], Kronecker product method [9], screw theory method [10], optimization methods [11], etc.
(2) AX=YB. This focuses on how to solve the problem of X and Y simultaneously under the condition of known A and B. Zhuang first presented a linear solution that allows a simultaneous computation of the transformations from robot world to robot base and from robot tool to robot flange coordinate frames [12]. Tan used three calibration methods based on nonlinear optimization and evolutionary computation to calibrate the underactuated robotic hand with soft fingers [13]. Condurache designed the simultaneous closed-form solutions for the sensor calibration problem by using an isomorphism between the special Euclidean group SE(3) and the orthogonal dual tensors group SO(3), which are based on the properties of the orthogonal dual tensors [14]. Wu presented a new error formulation using Cayley transform, which allowed for a unified approach for AX=XB and AX=YB simultaneously [15].
(3) AXB=YCZ. This is to solve the problem of multi-robot system calibration, which is also the research topic of this paper. Jin proposed a non-contact hand-eye calibration method for dual robot vision system, which was used by both machines to improve the accuracy of coordinate reading [16]. Qiao proposed a novel method for multi-robot system calibration utilizing a calibration model based on the Product of Exponentials formula without nominal kinematic parameters. With this method, the robot nominal kinematic model reduces the requirements of kinematic parameters, which also simplifies the modeling process [17]. These above methods are in common that X, Y, and Z are obtained step-by-step, which might cause the accumulation of the errors in each step, resulting in unreliable calibration results.
In order to reduce the error of the above step-by-step calibration methods, many researchers have studied the method of simultaneous calibration. Wang first proposed a simultaneous hand-eye, flange-tool, and robot-robot calibration method to obtain the relationships of multiple robots, where a linear approximation iterative algorithm was used [18]. On the basis of Wang's method, Wu added the closed-form method based on quaternion as the initial value of the iterative method to improve its calibration accuracy [19]. Yan proposed a Degradation-Kronecker (DK) method as an optimal closed-form solution for the registration of a hybrid robot and used a purely nonlinear method to complement the DK method [20]. Ma proposed two probabilistic approaches that can solve the AXB=YCZ problem for the case where the correspondence information between the datasets was not required [21]. However, measurement errors were not explicitly modeled, thus the results were sensitive to the measurement noise. Therefore, Ma proposed a method to increase the robustness against noise, including a hybrid method that combines traditional AXB=YCZ solvers with probabilistic methodology and an iterative method for the refinement to increase the robustness in the case of noisy experimental data [22]. Fu proposed a closedform method based on dual quaternion to solve the calibration problem, which effectively improved the calibration accuracy [23]. Wang proposed a novel approach that is composed of a closed-form method based on the Kronecker product and an iterative method that converts the calculation of a nonlinear problem to an optimization problem of a strictly convex function [24].
In this paper, in order to obtain the THMs of hand-eye, flange-tool, and robot-robot, a novel approach for simultaneously calibrating the unknown parameters X, Y, Z of AXB=YCZ is proposed. The method is composed of a dual quaternion based closedform method and a Levenberg Marquardt (LM) algorithm based iterative method. Since the result of the iterative method is greatly affected by the initial value, the purpose of the closed-form method is to generate a credible initial value, which makes the iterative method converge faster and improve its calibration accuracy. The following of this paper is organized as follows. Section 2 introduces the basic knowledge of the dual quaternion, modeling and formulating the calibration problem, and then introduces the calibration method proposed in this paper. The simulation and experimental verifications are illustrated in Section 3. Ultimately, the conclusions are provided in Section 4.

Dual Quaternion
Dual quaternion is proposed on the basis of quaternion and dual geometric algebra theory, which can solve general rigid body motion (rotation and translation) problems. The dual quaternion consists of two parts: whereq is a dual quaternion; q and q are two quaternions, which are called the real part and the dual part ofq, respectively; and ε is the dual operator, which satisfies the property of ε 2 = 0 and ε = 0. The basic operations for two dual quaternions are given in Table 1.
If q = 1, the dual quaternionq is a unit dual quaternion satisfying the following constraints: The multiplication of two quaternions is defined in the following equation:

The Closed-Form Calibration Method
In 3D space, the motion of a rigid body is the rotation and translation of the coordinates around the axes. The 4 × 4 HTM T is generally used to describe the kinematics model of the rigid body: where R is the rotation matrix and t is the translation vector. Similarly, the unit dual quaternion can also represent the rotation and translation of a rigid body in the 3D space. For a given HTM, the corresponding unit dual quaternion can be expressed asq = q + ε q , and the real part and dual part can be calculated using: Accordingly, for a given unit dual quaternion, the corresponding HTM can be expressed as follows: According to the work of Daniilidis [8], HTMs and dual quaternions are equivalent, and these two forms can be converted into each other. According to the conversion relationship between the HTM and the dual quaternion shown in (5) and (6), the equation in (1) can be rewritten using the dual quaternion as: where subscripts indicate the corresponding equivalent dual quaternions for the HTMs. Therefore, the solving problem of (1) is transformed into the solving problem of (9). The closed-form method for the kinematics calibration proceeds as follows.

Determination of Z 0
In order to determine the coordinate relationship between the passive tool frame {T} and the flange of the operation robot {F 2 } (as shown in Figure 1), it is assumed that the navigation robot remains stationary. Hence, it can be regarded as a hand-eye calibration problem. The operation robot is given m sets (m ≥ 3) of motions, and Z 0 can be calculated using the hand-eye calibration method proposed by Tsai at al. [6].

Determination of X 0 and Y 0
With the calibrated Z 0 , (9) can be rewritten to be: whereq M =q CqZqB −1 . According to the multiplication rule of dual quaternion, the following equations can be obtained:q where Let the navigation robot and the operation robot move at the same time and ensure that the OTS can track the passive tool at every point when two robots stop. Given n sets (n ≥ 3) of acquired data, the following 8n × 16 matrix is constructed: When the data are noise-free, rank(Λ) ≤ 14. The singular value decomposition (SVD) of Λ can be obtained: where U denotes an 8n × 8n orthogonal matrix, Σ is an 8n × 16 singular-value matrix and its diagonal elements are the eigenvalues of Λ in descending order, and the other elements are zero. Additionally, V represents a 16 × 16 orthogonal matrix, and each of its columns is composed of the eigenvectors of Λ. The last two column vectors, v 15 and v 16 in V, correspond to the singular values that are equal to zero, which span the null space of Λ. Subsequently, Γ is a null vector of Λ and can be expressed as follows: where v 15 = [a 11 , a 12 , a 13 , a 14 ] T , v 16 = [ a 21 , a 22 , a 23 , a 24 ] T . Note thatq X =q X +q X ,q Y = q Y +q Y . According to the constraint of unit dual quaternion, we can obtain: η 1 2 a 11 T a 11 + 2η 1 η 2 a 11 T a 21 + η 2 2 a 21 T a 21 = 1 η 1 2 a 11 T a 12 + η 1 η 2 (a 11 T a 22 + a 21 T a 12 ) + η 2 2 a 21 T a 22 = 0.
By solving the above equations, X 0 and Y 0 can be obtained.
Since the closed-form method does not require iterative calculations, its computation speed is very fast. However, the closed-form method has two obvious disadvantages: (1) Z 0 and X 0 , Y 0 are calculated in a step-by-step manner. Therefore, the error of Z 0 will be accumulated in the calculation of X 0 and Y 0 .
(2) Since the closed-form method simply treats the nonlinearly constrained problem as a linear unconstrained problem, the calibration accuracy will be affected.
Therefore, the closed-form method is more suitable for the rapid calculation of the initial estimation of the iterative method to improve its accuracy and calculation efficiency.

The Iterative Calibration Method
In the iterative method, the rotational part and translational part are separately solved for the three unknown parameters in (1). By expanding the HTM, the following two equations can be derived:  [25][26][27] combines the characteristics of local convergence of Gauss-Newton method and the global search of the reduced gradient method. In this paper, LM algorithm is used to iteratively solve the rotational part in (17).
As can be seen from Figure 1, the geometric meaning of (1) is the homogeneous transformation matrix from the passive tool {T} to the base of the navigation robot {B 1 }. For a rotation matrix, it has the following properties: For n sets of dual-robot poses, the error items of (17) can be defined according to the properties of the rotation matrix: (20) where I 3 is a third-order unit matrix, and i = 1, 2, . . . , n. Hence, solving for the rotational part is equivalent to minimizing for the following objective function: Using the LM algorithm to perform iterative operations, the rotational part can be obtained. The pseudocode of the LM Algorithm 1 is as follows:

Solution of the Translational Parts
Equation (18) can be rewritten to be: Then, we have: where J S = [J 1 ; J 2 ; . . . ; J n ], P S = [P 1 ; P 2 ; . . . ; P n ]. Therefore, t can be solved to be:

Simulation Analyses
Simulations were performed to evaluate the performance of the proposed method. A simulation environment was developed in MATLAB, where two 6-DOF robots (model Puma560) were used to construct the dual-robot cooperation system. The kinematic parameters of robots were derived from the robotics toolbox in MATLAB. The true values of X, Y, and Z in the simulation were assigned as follows: For the proposed method in this paper, the following data sets were generated to complete the calibration process: (1) Obtain k (k = 30) sets of data to calculate Z 0 using the traditional hand-eye calibration method [6]. Specifically, the operation robot moves within the measurement volume of the OTS and the navigation robot is stationary, i.e., A is constant. In this case, 30 different configurations of the operation robot were randomly generated, i.e., a group of 30 different C were obtained. Subsequently, the data of B were calculated according to the traditional hand-eye calibration method.
(2) Obtain another m (m = 120) sets of data used for the remaining calibration. The data of A and C were randomly generated within the workspace of the robot under the premise that the OTS can always track the passive tool. The data of B were calculated: where R B_true = Rot (z, α true ) Rot (y, β true ) Rot (x, γ true ), and t B_true = Trans (t x_true , t y_true , t z_true ,). In real applications, measurement noise is inevitable in the position and orientation feedback system, especially for the widely used OTS. To verify the robustness of the proposed method against the measurement noise, the noise level shown in Table 2 was added to all the generated data. In addition, in order to evaluate whether the size of the training data has an impact on the calibration results, n sets of training data (n = 10, 20, . . . , 120) were used for calibration in turns. Table 2. The range of noise added into the data. In order to quantitatively describe the calibration accuracy, define: where R B_cal = Rot (z, α cal ) Rot (y, β cal ) Rot (x, γ cal ) and t B_cal = Trans (t x_cal , t y_cal , t z_cal ,). The following rotation error and translation error were adopted: In general, it has become a common practice to increase the size of the training data so as to increase the calibration accuracy. The proposed method was utilized to repeat the calibration using different amount of training data. A boxplot was utilized to evaluate the relationship between the translation and rotation errors and the size of the training data. As shown in Figure 2, it can be observed that the calibration accuracy is not very sensitive to the size of the training data. This implies that the proposed method is effective even with a small data set, and thus facilitating the real implementation.  where RB_cal = Rot (z, αcal) Rot (y, βcal) Rot (x, γcal) and tB_cal = Trans (tx_cal, ty_cal, tz_cal,). The following rotation error and translation error were adopted: In general, it has become a common practice to increase the size of the training data so as to increase the calibration accuracy. The proposed method was utilized to repeat the calibration using different amount of training data. A boxplot was utilized to evaluate the relationship between the translation and rotation errors and the size of the training data. As shown in Figure 2, it can be observed that the calibration accuracy is not very sensitive to the size of the training data. This implies that the proposed method is effective even with a small data set, and thus facilitating the real implementation.

Experimental Analyses
In order to experimentally verify the effectiveness of the proposed method, a calibration was conducted on the prototype of a dual-robot collaboration system developed for robotic orthopedic surgeries. As shown in Figure 3, the prototype consisted of a 7-DOF navigation robot (model Panda from Franka Emika), an in-house built 6-DOF operation robot, and an OTS (model Polaris Vega from NDI). The OTS was installed at the flange of the navigation robot, and a passive tool was installed at the flange of the operation robot.

Experimental Analyses
In order to experimentally verify the effectiveness of the proposed method, a calibration was conducted on the prototype of a dual-robot collaboration system developed for robotic orthopedic surgeries. As shown in Figure 3, the prototype consisted of a 7-DOF navigation robot (model Panda from Franka Emika), an in-house built 6-DOF operation robot, and an OTS (model Polaris Vega from NDI). The OTS was installed at the flange of the navigation robot, and a passive tool was installed at the flange of the operation robot. This dual-robot system was calibrated using the proposed method. Firstly, 30 measurements were acquired for calculating Z0. The operation robot moved within the measurement volume of the OTS and the navigation robot was stationary. According to the hand-eye calibration method proposed by Tsai [6], the HTM of Z0 was identified to be: This dual-robot system was calibrated using the proposed method. Firstly, 30 measurements were acquired for calculating Z 0 . The operation robot moved within the measurement volume of the OTS and the navigation robot was stationary. According to the hand-eye calibration method proposed by Tsai [6], the HTM of Z 0 was identified to be: Secondly, a total of 100 measurements were acquired for the remaining calibration. The navigation robot and operation robot moved randomly within the workspace of the robot under the premise that the OTS can always track the passive tool. In order to verify the effectiveness of the proposed calibration method for dual-robot cooperation systems, the calibration results of the proposed method were compared with Wu's method [19].
In order to compare the sensitivity to the size of the training data, only 30 measurements were used as the training data, and the calibration errors of both methods are provided in Figure 4. For this small amount of training data, Wu's method cannot converge. Large and severe oscillations can be found on the calibration errors of Wu's method. On the contrary, the proposed method converges successfully. This verifies the effectiveness and robustness of the proposed method using small amount of data. This dual-robot system was calibrated using the proposed method. Firstly, 30 measurements were acquired for calculating Z0. The operation robot moved within the measurement volume of the OTS and the navigation robot was stationary. According to the hand-eye calibration method proposed by Tsai [6], the HTM of Z0 was identified to be: Secondly, a total of 100 measurements were acquired for the remaining calibration. The navigation robot and operation robot moved randomly within the workspace of the robot under the premise that the OTS can always track the passive tool. In order to verify the effectiveness of the proposed calibration method for dual-robot cooperation systems, the calibration results of the proposed method were compared with Wu's method [19].
In order to compare the sensitivity to the size of the training data, only 30 measurements were used as the training data, and the calibration errors of both methods are provided in Figure 4. For this small amount of training data, Wu's method cannot converge. Large and severe oscillations can be found on the calibration errors of Wu's method. On the contrary, the proposed method converges successfully. This verifies the effectiveness and robustness of the proposed method using small amount of data.  If more data are included in the training data, Wu's method can converge normally, and the calibration error can be made small. For instance, if all the 100 measurements are used as the training data, the calibration accuracy of Wu's method becomes comparable with the proposed method. Figure 5 shows the corresponding translation and rotation errors. Compared with the calibration results in Figure 4, it can be observed that the calibration errors of both methods were significantly reduced. There exist several samples whose calibration errors are relatively large. This might come from the unexcepted shaking of the robots when the data are acquired in the experiment. The calibrated HTMs of the dual-robot system using the proposed method were: The above experimental results also demonstrate the effectiveness of the proposed method in the calibration of dual-robot systems. It must be noted that few training data are required for the proposed method. This is important in real implementations so as to improve the time efficiency of the calibration.

Conclusions
The accuracy of the calibration is crucial for the multi-robot collaboration system. This paper proposes an effective method to calibrate the THMs of hand-eye, flange-tool and robot-robot in a dual-robot collaboration system. The proposed method combines the The above experimental results also demonstrate the effectiveness of the proposed method in the calibration of dual-robot systems. It must be noted that few training data are required for the proposed method. This is important in real implementations so as to improve the time efficiency of the calibration.

Conclusions
The accuracy of the calibration is crucial for the multi-robot collaboration system. This paper proposes an effective method to calibrate the HTMs of hand-eye, flange-tool and robot-robot in a dual-robot collaboration system. The proposed method combines the closed-form method and the iterative method, where the result of the closed-form method is used as the initial value of the iterative method. The simulation results prove that the amount of training data will not affect the calibration effect, and the calibration with high precision can be completed with fewer data. The performance of the proposed method is further verified in the calibration of the prototype of a dual-robot collaboration system developed for orthopedic surgeries. The experimental results show that the translation and rotation errors can be made small using 30 training data, which proves the effectiveness and applicability of the method.