Skip to main content
Erschienen in: Chinese Journal of Mechanical Engineering 1/2023

Open Access 01.12.2023 | Original Article

A Comparative Study on Kinematic Calibration for a 3-DOF Parallel Manipulator Using the Complete-Minimal, Inverse-Kinematic and Geometric-Constraint Error Models

verfasst von: Haiyu Wu, Lingyu Kong, Qinchuan Li, Hao Wang, Genliang Chen

Erschienen in: Chinese Journal of Mechanical Engineering | Ausgabe 1/2023

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Kinematic calibration is a reliable way to improve the accuracy of parallel manipulators, while the error model dramatically affects the accuracy, reliability, and stability of identification results. In this paper, a comparison study on kinematic calibration for a 3-DOF parallel manipulator with three error models is presented to investigate the relative merits of different error modeling methods. The study takes into consideration the inverse-kinematic error model, which ignores all passive joint errors, the geometric-constraint error model, which is derived by special geometric constraints of the studied RPR-equivalent parallel manipulator, and the complete-minimal error model, which meets the complete, minimal, and continuous criteria. This comparison focuses on aspects such as modeling complexity, identification accuracy, the impact of noise uncertainty, and parameter identifiability. To facilitate a more intuitive comparison, simulations are conducted to draw conclusions in certain aspects, including accuracy, the influence of the S joint, identification with noises, and sensitivity indices. The simulations indicate that the complete-minimal error model exhibits the lowest residual values, and all error models demonstrate stability considering noises. Hereafter, an experiment is conducted on a prototype using a laser tracker, providing further insights into the differences among the three error models. The results show that the residual errors of this machine tool are significantly improved according to the identified parameters, and the complete-minimal error model can approach the measurements by nearly 90% compared to the inverse-kinematic error model. The findings pertaining to the model process, complexity, and limitations are also instructive for other parallel manipulators.

1 Introduction

During the past decades, many kinds of parallel mechanisms have been designed and widely applied in various industries, such as medical devices [1], pick-and-place devices [2], and machine tools [3, 4]. These mechanisms are favored for their high structural stiffness, dynamic performance, and favorable load-weight ratios [5]. Among them, the limited degree-of-freedom ones have garnered increasing attention, such as Tricept, Tri-Variant [6], and Z3-sprint mechanisms [7, 8] for the advantage of high flexibility, which reduces the need for multiple setups when machining complex workpieces and meanwhile increases the productivity [9]. However, the position accuracy is greatly restricted for the in-depth application with high-speed and heavy-duty conditions considering the existence of manufacturing and assembling tolerances. Therefore, kinematic calibration plays a crucial role in improving accuracy performance.
Generally, the calibration procedure for parallel mechanisms can be divided into four steps: error modeling, configuration measuring, parameter identifying, and error compensating [10]. Therein, the method of establishing the error model is fundamental to kinematic calibration. Unlike the serial mechanisms, deriving the error model from the forward kinematic formula in the parallel mechanisms is not straightforward due to the existence of passive joints. Considering the structural characteristics of the parallel mechanisms, there are typically two approaches to establish the error model. The first method is based on the closed-loop vector of the mechanism and utilizes inverse kinematics to establish the mapping relationship between the parameter errors and the end-effector’s position. It is fully differentiated to contain related geometric parameters and is called the inverse-kinematic error model in this paper. It has been widely applied in the kinematic calibration of parallel mechanisms, with numerous applications based on this method [1113]. One of the most well-known methods is the implicit loop method proposed by Refs. [14, 15]. This method derives a closed-loop equation specific to the parallel mechanism, representing the relationship between the reference coordinate system and the end pose, and then the error model can be obtained through total differentiation. Additionally, for a parallel mechanism with a specific condition, the structural characters can also be used to construct the error model. For example, when identifying the geometric parameters of the 6-UPS mechanism, the rod length can be used to establish the mapping model between kinematic parameter errors and the end-effector’s positioning error in view of its constant rod length between U and S pairs [16, 17]. This method is also suitable for some limited degree-of-freedom (DOF) mechanisms [1820]. However, for many limited-DOF parallel mechanisms, the invariant constraint of the link’s length imposes limitations on identifying all geometric parameters, requiring consideration of additional constraints. Verner et al. [13], and Huang et al. [21] employed the geometric constraint that the axes of P and R joints are perpendicular to identify the parameters of a 3-PRS mechanism.
Meanwhile, the second error modeling method consists of two distinct steps: (1) Deriving the individual error model based on the forward kinematic of each serial chain; (2) synthesizing the serial chains’ error model together through the closed-loop characteristics of parallel mechanism [2230]. Consequently, the error modeling method used for the serial mechanisms can be extended to the parallel mechanisms in the first step, generally including the method based on the homogeneous transformation matrix [24], the D-H and its improvement method [22, 25, 26, 31], screw method [27] and the product of exponential (POE) method [28], etc. However, unlike the serial mechanisms, parallel mechanisms exhibit additional motion errors caused by passive joints, which result from geometric deviations in each serial chain. Fortunately, the passive joints’ motion errors are intermediate variables and can be completely expressed as a function of the kinematic parameter error. Considering the vacancy of feedback sensors in passive joints, it is necessary to eliminate the compatibility motion error in the error model. Recently, three tricks have been employed to address the compatibility motion of passive joints. The first approach involves using numerical algorithms [25, 26] to calculate the compatibility movement value based on inverse kinematics according to the active joint values and kinematic parameters. However, the numerical method is highly reliant on the selection of initial value, which is prone to make mistakes. The second approach utilizes the closed-loop characteristics of the mechanism [28] to establish the functional relationship between the kinematic error parameters and the passive joints’ motion error. This method generally requires the inverse operation of the matrix, which causes difficulties in analyzing the error model’s identifiability and error propagation characteristics. The last approach employs project operation to transfer the error of the serial chain into the orthogonal space of the passive joint vector space [27], effectively eliminating the compatibility term associated with passive joints in the model. By combining all limb error models, the complete error model can be obtained, which is expressed simply and holds clear physical meaning. However, there are no excellent analytical methods for obtaining the orthogonal vector of the passive joint vector space, and it is often obtained by numerical method, such as the singular value decomposition (SVD), QR decomposition, and Gram-Schmidt method. In our previous works [32, 33], an error modeling method based on the POE formula was presented for the parallel mechanism. This method is extended to the third trick to eliminate the errors of passive joints in the whole error model. The main improvement of the method lies in the two-level analytical algorithm to eliminate the redundant parameters in the complete error model. After that, an error model with characters of completeness and minimality is obtained, which can be suitable for the calibration of limited DOF parallel mechanisms. Therefore, it is referred to as the complete-minimal error model in this paper.
While the inverse-kinematic error model can be easily obtained from the closed-loop equation and provides an analytical expression, it generally does not meet the requirements of completeness. As discussed by Mooring et al. [10] and Schröer et al. [34], a complete error model should have sufficient coefficients to represent any variations of the actual robot structure compared to the nominal design. Obviously, this model should increase the accuracy of the end-effector. However, there is limited research available that demonstrates and highlights the detailed differences between these two error models. The modeling complexity, modeling limitation, and calibration accuracy should be comprehensively compared. In this paper, a 3-DOF parallel mechanism is selected because it provides a typical case of a high accuracy requirement with complicated geometric constraints, which can better present the difference between several error methods. Kinematic calibration is conducted to improve the absolute positioning accuracy and evaluate the advantages and disadvantages of all error models. A comprehensive derivation process of three error modeling methods is presented to improve the accuracy. As mentioned above, the inverse error model is deduced from the closed-vector formula based on certain geometric assumptions, especially for those limited-DOF parallel mechanisms. In the case of this 3-DOF parallel manipulator, the primary assumption involves idealized joints such as spherical or rotational joints and the third limb’s geometric relationship with the other limbs. Through a simplified proof based on screw theory, the manipulator still fulfills the motion characteristic of 1T2R. The analytical processes for each limb does not differ significantly. Each limb consists of four passive joints and one actuated joint. The moving platform’s final posture information is acquired from a numerical algorithm with the compatibility movement of passive joints. However, the complete-minimal error model does not rely on specific structural features of the studied parallel manipulator. It is deduced comprehensively by differentiating the forward kinematics of the limbs based on the POE formula and integrated by eliminating the influence of the passive joint’s compatibility motion. To validate the effectiveness of the models and compare the calibration results, an experiment for calibration is conducted. Subsequently, a more accurate model for this parallel manipulator is obtained from the evaluation experiments after calibration.
This paper is organized as follows. In Section 2, the studied 3-DOF parallel manipulator is proposed, and the kinematics of the parallel mechanism is analyzed, respectively. In Section 3, the error models of the studied mechanism are established by using the methods mentioned above. In Section 4, some extended error models are proposed to further comparison, and the comparison in the accuracy, the influence of the S joint, the influence of noises, and sensitivity are also presented. The calibration experiment is conducted, and the positioning accuracy is evaluated in Section 5. Finally, some conclusions are drawn in Section 6.

2 Architecture and Kinematics of the Studied Parallel Manipulator

2.1 Architecture Description

As shown in Figure 1, the studied parallel manipulator is the main part of a five-axis hybrid machine tool [35], which contains a serial mechanism with two consecutively connected revolute joints fixed at the moving platform. This paper primarily focuses on the accuracy improvement of the parallel manipulator, and therefore, the serial revolute joints remain fixed throughout the study. The parallel mechanism is an overconstrained one and consisted of two UPR limbs and one RPU limb, which offers one translation and two rotation DOFs at the end. However, the calibration of overconstrained parallel mechanism becomes difficult without considering the effect of elastic deformations. In order to prioritize the kinematic level calibration, a strategy is employed to overcome the challenges associated with link deformation. This involves transferring the original mechanism to a non-overconstrained one. By making this transformation, the complexity of dealing with link deformation is significantly reduced, allowing for a more streamlined and effective calibration process focused on the kinematic aspects of the mechanism. In this case, it poses the same motion characters and geometric constraints as a 2-SPR/RPS parallel manipulator, which is non-constraint. Consequently, the mechanism of 2UPR/RPU is transferred to a 2SPR/RPS for simplicity. The additional passive revolution joints can be set along the P joints with only small displacements.
Hence, the machine tool studied in this paper would be denoted by 2SPR/RPS, in which the S joints and R joints are passive ones. Two of its limbs are with the structure of SPR, and the other is an RPS one. Here, P, R, and S stand for prismatic, revolute, and spherical joints, respectively. Moreover, the underlined P means the corresponding prismatic joints are actively actuated. It is important to clarify that the spherical joint contains a U joint and a revolution joint along the P direction, just like the blue description in Figure 2. An extra rotation joint is set to the P joints for each limb compare to the original mechanism.
As the simplified diagram in Figure 2, the two SPR limbs in the studied parallel mechanism form a rolling planar six-bar linkage (closed-loop A1B1B2A2) which can wholly rotate around the vertical axis from the R joint. The RPS limb is assembled within a plane perpendicular to the aforementioned one. The SPR limbs are labeled as limb 1 and limb 2, while the RPS one is regarded as limb 3. Accordingly, the centers of the joints on the fixed platform are labeled as Ai (i = 1, 2, 3), and those on the moving platform are labeled as Bi. Then, a spatial coordinate frame, denoted by {S}, is attached to the fixed platform, with its origin located at the midpoint of A1A2.
The moving platform is connected to the fixed base by three limbs, in which each of the first two limbs is composed of a spherical joint, a prismatic joint, and a revolute joint in succession, and the third limb is constituted by a revolute joint, a prismatic joint and a spherical joint from the base to the moving platform. To describe the relative pose between the moving platform and the fixed base, two reference frames, denoted by {S} and {M}, are placed at the base plane and the moving platform, respectively. The equivalent plane linkage composed of two SPR limbs at the nominal initial state of the mechanism is symmetrical. As illustrated in Figure 2, Ai (i = 1, 2, 3) denotes the centers of U joints of limbs 1 and 2, and R joint of limb 3. The origin point of {S} is defined at the middle of A1A2. The y-axis passes through A2 and, the z-axis is perpendicular to the plane A1A2A3 and the x-axis satisfies the right-hand rule. Besides, ΔA1A2A3 is an isosceles right triangle in which A2A3 is the hypotenuse. Similarly, the centers of the R joints of the first two limbs and the S joint of the third limb are denoted by Bi. The origin point of {M} is defined at the middle of B1B2, yʹ-axis passes through B2, the zʹ-axis is perpendicular to the plane B1B2B3 and the xʹ-axis satisfies the right-hand rule. Points B1, B2 and B3 also form an isosceles right triangle and B2B3 is the hypotenuse. Thus, the positions of Ai with respect to {S} and Bi relative to {M} can be represented as:
$$\begin{gathered} {\varvec{\rho}}_{{A_{1} }} = \left[ {0, - \rho_{A} ,0} \right]^{{\text{T}}} {,\;\space }{\varvec{\rho}}_{{A_{2} }} = \left[ {0,\rho_{A} ,0} \right]^{{\text{T}}} ,\space{\varvec{\rho}}_{{A_{3} }} = \left[ {\rho_{A} ,0,0} \right]^{{\text{T}}} , \hfill \\ {\varvec{\rho}}_{{B_{1} }} = \left[ {0, - \rho_{B} ,0} \right]^{{\text{T}}} ,\space{\varvec{\rho}}_{{B_{2} }} = \left[ {0,\rho_{B} ,0} \right]^{{\text{T}}} ,\space{\varvec{\rho}}_{{B_{3} }} = \left[ {\rho_{B} ,0,0} \right]^{{\text{T}}} , \hfill \\ \end{gathered}$$
(1)
where ρA and ρB denote the distance from the origin of {S} to Ai, and the origin of {M} to Bi, respectively.
It should be noted that based on the mobility criterion \(M = 6(n - g - 1) + \sum {f_{j} }\), M denotes the degrees of freedom (DOF) of the mechanism, n and g denote the numbers of joints and links, and fj represents the number of DOF of the jth joint, the DOF of the parallel mechanism is 3. By analyzing the screw system of the mechanism, the manipulator is a limited-DOF parallel mechanism with one translation degree along the z-axis and two rotation degrees about the x and y axes, which is also treated as a special one of 1T2R parallel manipulator. For more detailed information about the parallel mechanism, please refer to Ref. [35].

2.2 Normal Inverse Kinematics of the Parallel Manipulator

As indicated above, the parallel manipulator has one translational and two rotational DOFs. Therefore, the distance pz between {S} and {M} along with the z-axis and rotation angles α and β about the x and y axes can be selected as generalized coordinates. Besides, since the moving platform cannot rotate about the z-axis and translate along the y-axis, the parasitic motion will only occur about the movement along the x-axis, and this can be easily obtained that px = pztanβ [36]. Thus, the pose of {M} with respect to {S} can be written as:
$${\varvec{T}}_{m} = \left[ {\begin{array}{*{20}l} {{\varvec{R}}_{m} } & {{\varvec{t}}_{m} } \\ {\varvec{0}} & 1 \\ \end{array} } \right] = \left[ {\begin{array}{*{20}l} {C_{\beta } } & {S_{\alpha } S_{\beta } } & {C_{\alpha } S_{\beta } } & {z\tan \beta } \\ 0 & {C_{\alpha } } & { - S_{\alpha } } & 0 \\ { - S_{\beta } } & {S_{\alpha } C_{\beta } } & {C_{\alpha } C_{\beta } } & z \\ 0 & 0 & 0 & 1 \\ \end{array} } \right],$$
(2)
where Tm is the transformation matrix of coordinate frame {M} with respect to {S}. Rm and tm represent the relative rotation matrix and position vector. Sα, Cα, Sβ and Cβ are the abbreviations of sin(α), cos(α), sin(β) and cos(β), respectively.
Based on Eq. (2), the position of Bi with respect to {S} can be derived and the link lengths can then be obtained as
$$l_{i} = \left\| {{\varvec{r}}_{{B_{i} }} - {\varvec{r}}_{{A_{i} }} } \right\| = \sqrt {\left( {{\varvec{R}}_{m} {\varvec{\rho}}_{{B_{i} }} + {\varvec{t}}_{m} - {\varvec{\rho}}_{{A_{i} }} } \right)^{{\text{T}}} \left( {{\varvec{R}}_{m} {\varvec{\rho}}_{{B_{i} }} + {\varvec{t}}_{m} - {\varvec{\rho}}_{{A_{i} }} } \right)} ,$$
(3)
where \({\varvec{r}}_{{B_{i} }} = {\varvec{R}}_{m} {\varvec{\rho}}_{{B_{i} }} + {\varvec{t}}_{m}\) and \({\varvec{r}}_{{A_{i} }} = {\varvec{\rho}}_{{A_{i} }}\) denote the position of Bi and Ai with respect to {S}. According to Eq. (3), the input of each P joint can be obtained as
$$q_{i} = l_{i} - q_{i,0} , \quad i = 1, \, 2, \, 3,$$
(4)
where qi,0 represents the initial link length of limb i.
However, Eq. (3) only determines the values of active joints. As mentioned above, the SPR limbs and RPS limbs are regarded as RRRPR and RPRRR chains, respectively, for kinematic and error modeling analysis. Therefore, it is necessary to obtain the displacements of the joints. The initial axis direction of all joints are shown in Figure 3, where zi,4 (i = 1, 2), z3,2 denote the direction of the P joint and the rest represent the R joint. Consequently, the solutions for the displacements of all the joints are given as follows (refer to Figure 4).
$$\left\{ {\begin{array}{*{20}l} {\theta_{i,1} = - \beta ,} \hfill \\ {\theta_{i,2} = ( - 1)^{i - 1} \left( {\arccos \left( {{\varvec{e}}_{2}^{{\text{T}}} {\varvec{l}}_{i} } \right) - \arccos \left( {{\varvec{v}}_{2}^{{\text{T}}} {\varvec{l}}_{i,0} } \right)} \right),} \hfill \\ {\theta_{i,3} = 0,} \hfill \\ {\theta_{i,4} = l_{i} - q_{i,0} ,} \hfill \\ {\theta_{i,5} = \arccos \left( {{\varvec{e}}_{2}^{{\text{T}}} {\varvec{b}}_{i} } \right),} \hfill \\ \end{array} \quad i = 1,2} \right.$$
(5)
$$\left\{ {\begin{array}{*{20}l} {\theta_{3,1} = \left( {\arccos \left( {{\varvec{e}}_{2}^{{\text{T}}} {\varvec{l}}_{3} } \right) - \arccos \left( {{\varvec{e}}_{2}^{{\text{T}}} {\varvec{l}}_{3,0} } \right)} \right),} \hfill \\ {\theta_{3,2} = l_{3} - q_{3,0} ,} \hfill \\ {\theta_{3,3} = 0,} \hfill \\ {\theta_{3,4} = \arccos \left( {{\varvec{e}}_{1}^{{\text{T}}} {\varvec{l}}_{3} } \right),} \hfill \\ {\theta_{3,5} = - \alpha ,} \hfill \\ \end{array} } \right.$$
(6)
where e1=[1, 0, 0]T and e2=[1, 0, 0]T. li and li,0 denote the direction of li and the initial direction of corresponding P joint in each limb respectively.

3 Different Error Modeling Methods of the Studied Parallel Manipulator

Since the error of the parallel manipulator in this machine tool is the main error source, its kinematic parameters should be identified independently.

3.1 Error Modeling by Inverse Kinematics

As mentioned above, geometric constraints are an important part of error modeling. In this studied 3-DOF parallel manipulator, the following assumptions, shown in Figure 5, are made to achieve the closed-loop solution to the manipulator’s inverse kinematics.
1)
The relationships between the three limbs’ R joint and its P joint are perpendicular, respectively. Additionally, all R joints are assumed to be parallel, ensuring that the plane formed by the six-bar linkage (closed-loop A1B1B2A2) remains the same as the nominal ones.
 
2)
The vertical plane (passing through A3) to the R joint of limb 3 is also perpendicular to the plane with limb 2 and limb 3.
 
Based on the above assumptions, the actual motion of the parallel manipulator can still be 1T2R character. Meanwhile, the motions of the moving platform can be determined based on the geometric constraints mentioned earlier. In order to meet the strictly geometric conditions and put the position and orientation error of fixed frame {S} and platform frame {M} into the model, the closed-form solution of three limbs’ inverse kinematics can be obtained as:
$$\left\{ {\begin{array}{*{20}l} {l_{i} {\varvec{l}}_{i} = {\varvec{R}}_{m} {\varvec{r}}_{{B_{i} }} + {\varvec{t}}_{m} - {\varvec{r}}_{{A_{i} }} , \quad i = 1, \, 2, \, 3,} \hfill \\ {\left( {{\varvec{R}}_{m} {\varvec{n}}_{i} } \right)^{{\text{T}}} {\varvec{l}}_{i} = 0, \quad i = 1, \, 2,{\kern 1pt} } \hfill \\ {{\varvec{n}}_{i}^{{\text{T}}} {\varvec{l}}_{i} = 0, \quad i = 3,} \hfill \\ \end{array} } \right.$$
(7)
where n1 and n2 denote the directions of the R joints in limb 1 and 2, respectively, which are expressed in desired platform frame {M′} (considered as the actual position error respect to frame {M}). n3 represents the direction of the R joint in limb 3 with respect to frame {S}. \({\varvec{n}}_{1} = {\varvec{n}}_{2} = {\varvec{e}}_{1}^{{\text{T}}}\), \({\varvec{n}}_{3} = {\varvec{e}}_{2}^{{\text{T}}}\). li (i = 1, 2, 3) denotes the length of the corresponding prismatic link and li represents its direction. Rm and tm are the same in Eq. (2). \({\varvec{r}}_{{B_{i} }} = {\varvec{R}}_{p} {\varvec{\rho}}_{{B_{i} }} + {\varvec{t}}_{p}\) and \({\varvec{r}}_{{A_{i} }} = {\varvec{R}}_{b} {\varvec{\rho}}_{{A_{i} }} + {\varvec{t}}_{b}\) represent the points Bi and Ai with respect to fixed frame {S} respectively. Rp, tp, Rb and tb represent the rotation error matrix and position error vector in {M} and {S} respectively. In kinematic calibrations, the poses of the moving platforms can be directly measured by external measuring devices and the tool frame is constructed by three SMR points, and the measuring errors are inevitable. Therefore, the deviation in the moving platform should be taken into account and the pose parameters Rm, tm, Rp, tp, Rb and tb can be considered comprehensively.
In the inverse kinematics Eq. (7), the 2nd and 3rd equations come from the limbs’ geometric constraints (1) that the R joint is vertical to P joint. By differentiation of Eq. (7), the corresponding error models can be derived as:
$$\left\{ {\begin{array}{*{20}l} {{\updelta }l_{i} {\varvec{l}}_{i} + l_{i} {\updelta }{\varvec{l}}_{i} = {\updelta }{\varvec{R}}_{m} {\varvec{r}}_{{B_{i} }} + {\varvec{R}}_{m} {\updelta }{\varvec{r}}_{{B_{i} }} + {\updelta }{\varvec{t}}_{m} - {\updelta }{\varvec{r}}_{{A_{i} }} , \quad i = 1, \, 2, \, 3,} \hfill \\ {{\varvec{l}}_{i}^{\text{T}} {\updelta }\left( {{\varvec{R}}_{m} {\varvec{n}}_{i} } \right) + \left( {{\varvec{R}}_{m} {\varvec{n}}_{i} } \right)^{\text{T}} {\updelta }{\varvec{l}}_{i} = 0, \quad i = 1, \, 2,} \hfill \\ {{\varvec{l}}_{i}^{\text{T}} {\updelta }{\varvec{n}}_{i} + {\varvec{n}}_{i}^{\text{T}} {\updelta }{\varvec{l}}_{i} = 0, \quad i = 3,} \hfill \\ \end{array} } \right.$$
(8)
where \(\updelta {\varvec{r}}_{{B_{i} }} =\updelta {\varvec{R}}_{p} {\varvec{\rho}}_{{B_{i} }} { + }{\varvec{R}}_{p}\updelta {\varvec{\rho}}_{{B_{i} }} { + }\updelta {\varvec{t}}_{p}\), \(\updelta {\varvec{r}}_{{A_{i} }} =\updelta {\varvec{R}}_{b} {\varvec{\rho}}_{{A_{i} }} { + }{\varvec{R}}_{p}\updelta {\varvec{\rho}}_{{A_{i} }} { + }\updelta {\varvec{t}}_{b}\), and δni = 0 (i = 1, 2, 3).
Both sides of the first equation in Eq. (8) can be multiplied by \({\varvec{l}}_{i}^{{\text{T}}}\). So Eq. (8) can be transferred as:
$$\left\{ {\begin{array}{*{20}l} {{\updelta }l_{i} = {\varvec{l}}_{i}^{{\text{T}}} {\updelta }{\varvec{R}}_{m} {\varvec{r}}_{{B_{i} }} + {\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{m} {\updelta }{\varvec{r}}_{{B_{i} }} + {\varvec{l}}_{i}^{{\text{T}}} {\updelta }{\varvec{t}}_{m} - {\varvec{l}}_{i}^{{\text{T}}} {\updelta }{\varvec{r}}_{{A_{i} }} , \quad i = 1, \, 2, \, 3,} \hfill \\ {{\varvec{l}}_{i}^{{\text{T}}} {\updelta }{\varvec{R}}_{m} {\varvec{n}}_{i} + \left( {{\varvec{R}}_{m} {\varvec{n}}_{i} } \right)^{{\text{T}}} {\updelta }{\varvec{l}}_{i} = 0, \quad i = 1, \, 2,} \hfill \\ {{\varvec{n}}_{i}^{{\text{T}}} {\updelta }{\varvec{l}}_{i} = 0,\;\;\;{\kern 1pt} i = 3.} \hfill \\ \end{array} } \right.$$
(9)
In this paper, the deviation of Rm and tm can be represented by six parameters {δα, δβ, δγ, δpx, δpy, δpz}, where the rotation matrix is characterized by Z-Y-X Euler angle. At the same time, the rotation and position deviation of the base frame and platform frame, represented by Rb, tb and Rp, tp, respectively, contain twelve parameters {δαb, δβb, δγb, δxb, δyb, δzb, δαp, δβp, δγp, δxp, δyp, δzp}.
Consequently, Eq. (9) can be written as:
$${\varvec{J}}_{q,i} {\updelta }{\varvec{q}} = {\varvec{J}}_{d,i} {\updelta }{\varvec{d}} + {\varvec{J}}_{p,i} {\updelta }{\varvec{p}}_{i} ,$$
(10)
where q = [px, py, pz, α, β, γ]T denotes the pose variable of the moving platform. \({\varvec{p}}_{i} = [{\varvec{\rho}}_{{A_{i} }} ,{\varvec{\rho}}_{{B_{i} }} ,l_{i} ]^{{\text{T}}} \in {\mathbb{R}}^{3 \times 1}\) is the vector of kinematic parameters to be identified in each limb. d = [xb, yb zb, αb, βb, γb, xp, yp, zp, αp, βp, γp]T is the pose variable of frame deviations.
As a consequence, there are about 21 variables that need to be identified in this error model. The coefficient matrices \({\varvec{J}}_{q,i} \in {\mathbb{R}}^{2 \times 6} ,{\varvec{J}}_{d} \in {\mathbb{R}}^{2 \times 12} \;{\text{and}}\;{\varvec{J}}_{p,i} \in {\mathbb{R}}^{2 \times 3}\) are given by:
$$\left\{ \begin{aligned} & {\varvec{J}}_{q,i} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{i}^{{\text{T}}} } & \quad { - {\varvec{l}}_{i}^{{\text{T}}} \left( {{\varvec{R}}_{m} {\varvec{r}}_{{B_{i} }} } \right)^{ \wedge } {\varvec{J}}_{w} } \\ {{\varvec{s}}_{i} } & \quad { - {\varvec{s}}_{i} \left( {{\varvec{R}}_{m} {\varvec{r}}_{{B_{i} }} } \right)^{ \wedge } {\varvec{J}}_{w} - {\varvec{l}}_{i}^{\text{T}} \left( {{\varvec{R}}_{m} {\varvec{n}}_{i} } \right)^{ \wedge } {\varvec{J}}_{w} } \\ \end{array} } \right], \quad i = 1, \, 2, \\ & {\varvec{J}}_{q,i} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{i}^{{\text{T}}} } & \quad { - {\varvec{l}}_{i}^{{\text{T}}} \left( {{\varvec{R}}_{m} {\varvec{r}}_{{B_{i} }} } \right)^{ \wedge } {\varvec{J}}_{w} } \\ {{\varvec{h}}_{i} } & \quad { - {\varvec{h}}_{i} \left( {{\varvec{R}}_{m} {\varvec{r}}_{{B_{i} }} } \right)^{ \wedge } {\varvec{J}}_{w} } \\ \end{array} } \right], \quad i = 3, \\ \end{aligned} \right.$$
(11)
$$\left\{ \begin{gathered} {\varvec{J}}_{d,i} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{i}^{{\text{T}}} } & \quad { - {\varvec{l}}_{i}^{{\text{T}}} {\varvec{f}}_{A,i} } & \quad {{\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{m} } & \quad { - {\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{m} {\varvec{f}}_{B,i} } \\ {{\varvec{s}}_{i} } & \quad { - {\varvec{s}}_{i} {\varvec{f}}_{A,i} } & \quad {{\varvec{s}}_{i} {\varvec{R}}_{m} } & \quad {{\varvec{s}}_{i} {\varvec{R}}_{m} {\varvec{f}}_{B,i} } \\ \end{array} } \right], \quad i = 1, \, 2, \hfill \\ {\varvec{J}}_{d,3} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{3}^{{\text{T}}} } & \quad { - {\varvec{l}}_{3}^{{\text{T}}} {\varvec{f}}_{A,i} } & \quad {{\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{m} } & \quad { - {\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{m} {\varvec{f}}_{B,i} } \\ {{\varvec{h}}_{i} } & \quad { - {\varvec{h}}_{i} {\varvec{f}}_{A,i} } & \quad { - {\varvec{h}}_{i} {\varvec{R}}_{m} } & \quad {{\varvec{h}}_{i} {\varvec{R}}_{m} {\varvec{f}}_{B,i} } \\ \end{array} } \right], \quad i = 3, \hfill \\ \end{gathered} \right.$$
(12)
$$\left\{ \begin{aligned} & {\varvec{J}}_{p,i} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad 1 \\ {{\varvec{s}}_{i} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{s}}_{i} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad {{\varvec{s}}_{i} {\varvec{l}}_{i} } \\ \end{array} } \right], \quad i = 1, \, 2, \\ & {\varvec{J}}_{p,i} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{l}}_{i}^{{\text{T}}} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad 1 \\ {{\varvec{h}}_{i} {\varvec{R}}_{m} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{h}}_{i} {\varvec{R}}_{m} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad {{\varvec{h}}_{i} {\varvec{R}}_{m} {\varvec{l}}_{i} } \\ \end{array} } \right], \quad i = 3, \\ \end{aligned} \right.$$
(13)
where v1 = [0, −1, 0]T, v2 = [0, −1, 0]T and v3 = [0, −1, 0]T. \({\varvec{s}}_{i} = {\left( {{{\varvec{R}}}_{\rm{m}} {\varvec{n}}_{i} } \right)^{{\text{T}}} } \big/ {l_{i} }\), \({\varvec{h}}_{i} = {{{\varvec{n}}_{i}^{\text{T}} } \mathord{\left/ {\vphantom {{{\varvec{n}}_{i}^{\text{T}} } {l_{i} }}} \right. \kern-0pt} {l_{i} }}\), \({\varvec{f}}_{A,i} = ({\varvec{R}}_{b} {\varvec{\rho}}_{{A_{i} }} )^{ \wedge } {\varvec{J}}_{wb}\) and \({\varvec{f}}_{B,i} = ({\varvec{R}}_{b} {\varvec{\rho}}_{{B_{i} }} )^{ \wedge } {\varvec{J}}_{wb}\) (i = 1, 2, 3).
Considering the different equivalent rotation matrices for various representations of orientation, the angular velocity should be transferred precisely. In this paper, Z-Y-X Euler angles (α, β, γ) are adopted as representation. In the above equation, Jw, Jwb and Jwq are the coefficient matrices defined as:
$$\left\{ \begin{gathered}\updelta {\varvec{w}} = \left[ {\begin{array}{*{20}l} 1 & \quad 0 & \quad { - S_{\beta } } \\ 0 & \quad {C_{\alpha } } & \quad {S_{\alpha } C_{\beta } } \\ 0 & \quad { - S_{\alpha } } & \quad {C_{\alpha } C_{\beta } } \\ \end{array} } \right]\left[ {\begin{array}{*{20}l} {\updelta \alpha } \hfill \\ {\updelta \beta } \hfill \\ {\updelta \gamma } \hfill \\ \end{array} } \right] = {\varvec{J}}_{w} \left[ {\begin{array}{*{20}l} {\updelta \alpha } \\ {\updelta \beta } \\ {\updelta \gamma } \\ \end{array} } \right], \hfill \\\updelta {\varvec{w}}_{b} = \left[ {\begin{array}{*{20}l} 1 & \quad 0 & \quad { - S_{{\beta_{b} }} } \\ 0 & \quad {C_{{\alpha_{b} }} } & \quad {S_{{\alpha_{b} }} C_{{\beta_{b} }} } \\ 0 & \quad { - S_{{\alpha_{b} }} } & \quad {C_{{\alpha_{b} }} C_{{\beta_{b} }} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}l} {\updelta \alpha_{b} } \\ {\updelta \beta_{b} } \\ {\updelta \gamma_{b} } \\ \end{array} } \right] = {\varvec{J}}_{wb} \left[ {\begin{array}{*{20}l} {\updelta \alpha_{b} } \\ {\updelta \beta_{b} } \\ {\updelta \gamma_{b} } \\ \end{array} } \right], \hfill \\\updelta {\varvec{w}}_{p} = \left[ {\begin{array}{*{20}l} 1 & \quad 0 & \quad { - S_{{\beta_{p} }} } \\ 0 & \quad {C_{{\alpha_{p} }} } & \quad {S_{{\alpha_{p} }} C_{{\beta_{p} }} } \\ 0 & \quad { - S_{{\alpha_{p} }} } & \quad {C_{{\alpha_{p} }} C_{{\beta_{p} }} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}l} {\updelta \alpha_{p} } \\ {\updelta \beta_{p} } \\ {\updelta \gamma_{p} } \\ \end{array} } \right] = {\varvec{J}}_{wp} \left[ {\begin{array}{*{20}l} {\updelta \alpha_{p} } \\ {\updelta \beta_{p} } \\ {\updelta \gamma_{p} } \\ \end{array} } \right]. \hfill \\ \end{gathered} \right.$$
(14)
As a result, the overall error model of the parallel mechanism based on inverse kinematics can be obtained and written as:
$${\updelta }{\varvec{q}} = {\varvec{J}}_{q}^{ - 1} {\varvec{J}}_{p} {\updelta }{\varvec{p}},$$
(15)
where \({\varvec{J}}_{q} = \left[ {\begin{array}{*{20}l} {{\varvec{J}}_{q,1} } \hfill \\ {{\varvec{J}}_{q,2} } \hfill \\ {{\varvec{J}}_{q,3} } \hfill \\ \end{array} } \right] \in {\mathbb{R}}^{6 \times 6}\), \({\updelta }{\varvec{p}} = \left[ {\begin{array}{*{20}l} {{\updelta }{\varvec{d}}} \\ {{\updelta }{\varvec{p}}_{1} } \\ {{\updelta }{\varvec{p}}_{2} } \\ {{\updelta }{\varvec{p}}_{3} } \\ \end{array} } \right] \in {\mathbb{R}}^{6 \times 6}\) and \({\varvec{J}}_{p} = \left[ {\begin{array}{*{20}l} {{\varvec{J}}_{d,1} } & \quad {{\varvec{J}}_{p,1} } & \quad {\varvec{0}} & \quad {\varvec{0}} \\ {{\varvec{J}}_{d,2} } & \quad {\varvec{0}} & \quad {{\varvec{J}}_{p,2} } & \quad {\varvec{0}} \\ {{\varvec{J}}_{d,3} } & \quad {\varvec{0}} & \quad {\varvec{0}} & \quad {{\varvec{J}}_{p,3} } \\ \end{array} } \right] \in {\mathbb{R}}^{6 \times 21}\).
Eq. (15) established the relationship between the links’ kinematic errors and the pose of the moving platform. It is evident that each limb comprises 3 individual parameters, resulting in a total of 21 kinematic parameters that need to be identified for this parallel manipulator.

3.2 Error Modeling by Geometric Constraints

Just shown above, the inverse-kinematic error model is primarily based on the assumptions of ideal motion character and disregards the influence of passive joints. The modeling method is established by the closed-loop equation, which contains the relationship of the end’s deviation and parameters’ errors. However, most limited-DOF parallel mechanisms employ specific geometric structures to achieve its constrained motion, such as symmetry, coplanarity, and collinearity. Utilizing these special geometric features can simplify the error modeling process.
In this studied manipulator, maintaining the 1T2R motion character strictly relies on the vertical relationship between the P joint and R joint in each limb, as depicted in the first limb of Figure 6. Therefore, different from the inverse-kinematic error model, this constraint is utilized to model the error relationship through a newly defined dimensionless parameter. Since each limb of the parallel mechanism contains the part that the R joint is connected to the P joint, the angle between the axis of the P and R joints is invariable, and the projection between these two axes can be defined as ci (i = 1, 2, 3). Just shown in Eq. (7), the projections are zero according to the assumptions. However, in this part, the parameters ci are set to non-zero and should be identified in the error model. It is important to note that the S joints are still assumed to be ideal, similar to the inverse-kinematic error model.
Then, a kind of constraint equation for the limbs can be written as:
$$\left\{ {\begin{array}{*{20}l} {y_{i,1} = {\varvec{R}}_{m} {\varvec{n}}_{i}^{{\text{T}}} {\varvec{l}}_{i} - c_{i} , \quad i = 1, \, 2,} \hfill \\ {y_{3,1} = {\varvec{n}}_{3}^{{\text{T}}} {\varvec{l}}_{3} - c_{3} ,} \hfill \\ \end{array} } \right.$$
(16)
where n1 and n2 denote the directions of the R joints in limb 1 and 2 expressed in {M}, respectively. n3 represents the direction of the R joint in limb 3 with respect to {S}. \(l_{i} = \left\| {{\varvec{R}}_{m} {\varvec{\rho}}_{i} + {\varvec{t}}_{m} - {\varvec{r}}_{i} } \right\|,(i = 1,2,3)\) represents its direction.
It should be noted that if there are no kinematic errors, Eq. (16) should equally be 0. However, due to the existence of the manufacture and assembly errors, the calculated yi will not vanish according to the measured pose of the moving platform. In kinematic calibrations, the poses of the moving platforms can be directly measured by external measuring devices, and the measuring errors are usually much lower than the geometric errors. Therefore, the measurement noises are usually not taken into account and the pose parameters Rm and tm can be considered precisely. The calibration problem can be transformed into finding the optimal values of the involved kinematic parameters to minimize yi for all measured configurations, which can be solved by the Newton iteration method.
The gradient of Eq. (16) can be obtained as:
$$\left\{ {\begin{array}{*{20}l} {\updelta y_{i,1,j} = {\varvec{l}}_{i,j}^{{\text{T}}} {\varvec{R}}_{m,j}\updelta {\varvec{n}}_{i} + \frac{{{\varvec{Q}}_{i} }}{{l_{i,j} }}\left( {{\varvec{R}}_{m,j}\updelta {\varvec{\rho}}_{i} -\updelta {\varvec{r}}_{i} } \right) -\updelta c_{i} ,i = 1,2} \hfill \\ {\updelta y_{3,1,j} = {\varvec{l}}_{3,j}^{{\text{T}}}\updelta {\varvec{n}}_{3} + \frac{{{\varvec{Q}}_{3} }}{{l_{3,j} }}\left( {{\varvec{R}}_{m,j}\updelta {\varvec{\rho}}_{3} -\updelta {\varvec{r}}_{3} } \right) -\updelta c_{3} ,} \hfill \\ \end{array} } \right.$$
(17)
where δyi,1,j = − yi,1,j and the parameters containing the subscript j denote the values of the corresponding parameters in Eq. (7) at the jth measured configuration. \({\varvec{Q}}_{i} = ({\varvec{R}}_{m,j} {\varvec{n}}_{i} )^{\text{T}} ({\varvec{I}}_{3} - {\varvec{l}}_{i,j} {\varvec{l}}_{i,j}^{\text{T}} )\)(i = 1, 2), \({\varvec{Q}}_{3} = {\varvec{n}}_{3}^{{\text{T}}} \left( {{\varvec{I}}_{3} - {\varvec{l}}_{i,j} {\varvec{l}}_{i,j}^{{\text{T}}} } \right).\)
Since ni can also be defined as ni = Rot(y, βi)Rot(z, γi)e1 for i = 1, 2 and n3 = Rot(y, α3)Rot(z, γ3)e2, their deviations about the errors of rotation angles can be written as:
$$\left\{ \begin{gathered}\updelta {\varvec{n}}_{i} = \left[ {\begin{array}{*{20}l} { - S_{{\beta_{i} }} C_{{\gamma_{i} }} } & \quad { - C_{{\beta_{i} }} S_{{\gamma_{i} }} } \\ 0 & \quad {C_{{\gamma_{i} }} } \\ { - C_{{\beta_{i} }} C_{{\gamma_{i} }} } & \quad {S_{{\beta_{i} }} S_{{\gamma_{i} }} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}l} {\updelta \alpha_{i} } \\ {\updelta \beta_{i} } \\ \end{array} } \right] = {\varvec{J}}_{{n_{i} }}\updelta {\varvec{\upsilon}}_{i} ,\;\;\;{\kern 1pt} i = 1, \, 2 \hfill \\\updelta {\varvec{n}}_{3} = \left[ {\begin{array}{*{20}l} 0 & \quad { - C_{{\gamma_{3} }} } \\ { - S_{{\alpha_{3} }} C_{{\gamma_{3} }} } & \quad { - C_{{\alpha_{i} }} S_{{\gamma_{3} }} } \\ {C_{{\alpha_{3} }} C_{{\gamma_{3} }} } & \quad { - S_{{\alpha_{3} }} S_{{\gamma_{3} }} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}l} {\updelta \alpha_{3} } \\ {\updelta \gamma_{3} } \\ \end{array} } \right] = {\varvec{J}}_{{n_{3} }}\updelta {\varvec{\upsilon}}_{3} . \hfill \\ \end{gathered} \right.$$
(18)
Substituting Eq. (18) into Eq. (8) and transferred the results in matrix forms, the error models derived from Eq. (7) can be obtained as:
$$\left\{ {\begin{array}{*{20}l} \begin{gathered}\updelta y_{i,1,j} = {\varvec{J}}_{1,i,j} \delta {\varvec{p}}_{i} \hfill \\ = \left[ { - \frac{1}{{l_{i,j} }}{\varvec{u}}_{i} ,0,\frac{1}{{l_{i,j} }}{\varvec{u}}_{i} {\varvec{R}}_{m,j} ,l_{i,j}^{\text{T}} {\varvec{R}}_{m,j} {\varvec{J}}_{{n_{i} }} , - 1} \right]\updelta {\varvec{p}}_{i} , \quad i = 1, \, 2, \hfill \\ \end{gathered} \hfill \\ \begin{gathered}\updelta y_{i,3,j} = {\varvec{J}}_{1,3,j} \delta {\varvec{p}}_{3} \hfill \\ = \left[ { - \frac{1}{{l_{3,j} }}{\varvec{u}}_{3} ,l_{3,j}^{\text{T}} {\varvec{J}}_{{n_{3} }} , - 1,0,\frac{1}{{l_{3,j} }}{\varvec{u}}_{3} {\varvec{R}}_{m,j} } \right]\updelta {\varvec{p}}_{3} , \hfill \\ \end{gathered} \hfill \\ \end{array} } \right.$$
(19)
where \({\varvec{u}}_{i} = ({\varvec{R}}_{m,j} {\varvec{n}}_{i} )^{{\text{T}}} ({\varvec{I}}_{3} - l_{i,j} l_{i,j}^{{\text{T}}} )\)\({\varvec{u}}_{3} = {\varvec{n}}_{3}^{{\text{T}}} ({\varvec{I}}_{3} - l_{3,j} l_{3}^{{\text{T}}} )\).
δpi = [δri, δli, δρi, δυi, δci]T (i = 1, 2) and δp3 = [δr3, δρ3, δυ3, δc3]T represent the errors of kinematic parameters in the limbs. li (i = 1, 2, 3) denotes the length of the corresponding link at zero position. It can be observed that each limb contains 10 parameters and totally 30 kinematic parameters should be identified for this parallel mechanism.
Additionally, since the calculated link length should equal the sum of the input and li, another constraint equation can be written as:
$$y_{2,i,j} { = }l_{i,j} - (l_{i} + q_{i,j} ),\quad i = 1, \, 2, \, 3,$$
(20)
where qi,j denotes the input of the P joint at the jth configuration.
Similarly, the gradient equation can be derived as:
$$\updelta y_{2,i,j} = {\varvec{l}}_{i,j}^{{\text{T}}} ({\varvec{R}}_{m}\updelta {\varvec{\rho}}_{i} -\updelta {\varvec{r}}_{{\varvec{i}}} ) -\updelta l_{i} ,\quad i = 1, \, 2, \, 3.$$
(21)
Writing Eq. (21) in matrix forms, the error models derived from Eq. (20) can be obtained as:
$$\left\{ {\begin{array}{*{20}l} {\updelta y_{2,i,j} = \left[ { - {\varvec{l}}_{i,j}^{{\text{T}}} , - 1,{\varvec{l}}_{i,j}^{{\text{T}}} {\varvec{R}}_{m,j} ,{\varvec{0}},0} \right]\updelta {\varvec{p}}_{i} = {\varvec{J}}_{2,i,j}\updelta {\varvec{p}}_{i} ,\quad {\kern 1pt} i = 1, \, 2,} \hfill \\ {\updelta y_{2,3,j} = \left[ { - {\varvec{l}}_{3,j}^{{\text{T}}} ,{\varvec{0}},0, - 1,{\varvec{l}}_{3,j}^{{\text{T}}} {\varvec{R}}_{m,j} } \right]\updelta {\varvec{p}}_{3} = {\varvec{J}}_{3,i,j}\updelta {\varvec{p}}_{3} .} \hfill \\ \end{array} } \right.$$
(22)
It should be noted that in this paper, the italicized 0 in all formulas represents the zero vector of the corresponding dimension, while the number 0 is the scalar.
Thus, by combining Eq. (19) and Eq. (22), the overall error model of the parallel mechanism based on special geometric constraints can be obtained and written as:
$$\updelta {\varvec{y}}_{j} = \left[ {\begin{array}{*{20}l} {\updelta y_{1,1,j} } \hfill \\ {\updelta y_{2,1,j} } \hfill \\ {\updelta y_{1,2,j} } \hfill \\ {\updelta y_{2,2,j} } \hfill \\ {\updelta y_{1,3,j} } \hfill \\ {\updelta y_{2,3,j} } \hfill \\ \end{array} } \right] = \left[ {\begin{array}{*{20}l} {{\varvec{J}}_{1,1,j} } & \quad {\varvec{0}} & \quad {\varvec{0}} \\ {{\varvec{J}}_{2,1,j} } & \quad {\varvec{0}} & \quad {\varvec{0}} \\ {\varvec{0}} & \quad {{\varvec{J}}_{1,2,j} } & \quad {\varvec{0}} \\ {\varvec{0}} & \quad {{\varvec{J}}_{2,2,j} } & \quad {\varvec{0}} \\ {\varvec{0}} & \quad {\varvec{0}} & \quad {{\varvec{J}}_{1,3,j} } \\ {\varvec{0}} & \quad {\varvec{0}} & \quad {{\varvec{J}}_{2,3,j} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}l} {\updelta {\varvec{p}}_{1} } \\ {\updelta {\varvec{p}}_{2} } \\ {\updelta {\varvec{p}}_{3} } \\ \end{array} } \right] = {\varvec{J}}_{p,j}\updelta {\varvec{p}}_{p} .$$
(23)

3.3 Error Modeling by the POE Formula Considering Whole Parameters

As previously mentioned, the number of kinematic parameters in the error model based on inverse kinematic is inevitable incompleteness for its particular assumptions of geometric constraint. Therefore, in order to include all kinematic parameters, it is necessary to develop a precise error model that discards those assumptions and violates the synthesized geometric constraints. In our previous work [32, 3739], a general error modeling approach that satisfies the requirements of completeness, continuity, and minimality has been proposed for parallel manipulators on the local POE formula. This method can also be applied to this studied machine tool.
The core idea of this method is to establish the limb’s error model through the complete forward kinematic equation and integrate all limbs together as a whole. Specifically, those motion errors of passive joints should be eliminated based on reciprocal screw theory. The detailed error modeling process of the studied 3-DOF parallel manipulator is outlined below.
In this section, each limb is considered as a general serial kinematic chain consisting of four revolute joints and one prismatic joint. The forward kinematics of each limb, as illustrated in Figure 7, can be represented as:
$${\varvec{g}}_{i,st} \left( {{\varvec{\theta}}_{i} } \right) = {\varvec{g}}_{i,0} \exp \left( {\widehat{{\varvec{\zeta}}}_{i,1} \theta_{i,1} } \right) \cdots {\varvec{g}}_{i,4} \exp \left( {\widehat{{\varvec{\zeta}}}_{i,5} \theta_{i,5} } \right){\varvec{g}}_{i,5} ,$$
(24)
where gi,j ∈ SE(3), j = 0, …, 5 denotes the initial relative pose of the moving rigid part and i denotes the number of limb. θi represents the vector of the limb’s all joint variables as defined in Figure 7. Besides, ζ denotes the local screw of corresponding joint. In general, ζ3 denotes the axis of rotation joint and ζ6 represents the prismatic one. The concrete expressions are as follows:
$${\varvec{\zeta}}_{3} = \left[ {0,0,1,0,0,0} \right]^{{\text{T}}} ,{\varvec{\zeta}}_{6} = \left[ {0,0,0,0,0,1} \right]^{{\text{T}}} .$$
(25)
By differentiating the forward kinematics Eq. (24), the pose error of moving platform frame {M} can be obtained as:
$$\begin{aligned} {\updelta }{\varvec{y}}_{i} & = \left( {{\updelta }{\varvec{g}}_{i,st} {\varvec{g}}_{i,st}^{ - 1} } \right)^{ \vee } \hfill \\ & = \sum\limits_{j = 0}^{5} {\text{Ad}} \left( {{\varvec{g}}_{i,0} \exp \left( {\hat{\varvec{\zeta }}_{i,1} \theta_{i,1} } \right) \cdots {\varvec{g}}_{i,j - i} \exp \left( {\hat{\varvec{\zeta }}_{i,j} \theta_{i,j} } \right)} \right){\varvec{A}}_{i,j} {\updelta }{\varvec{p}}_{i,j} \hfill \\ & \quad + \sum\limits_{j = 1}^{5} {\text{Ad}} \left( {{\varvec{g}}_{i,0} \exp \left( {\hat{\varvec{\zeta }}_{i,1} \theta_{i,1} } \right) \cdots {\varvec{g}}_{i,j - 1} } \right){\varvec{\zeta}}_{i,j} {\updelta }\theta_{i,j} , \hfill \\ \end{aligned}$$
(26)
where yi ∈ \({\mathbb{R}}\)6×1 denotes the twist error of the manipulator’s end-effector in the ith limb. \({(}\delta {\varvec{g}}_{i,j} {\varvec{g}}_{i,j}^{ - 1} {)}^{ \vee } { = }{\varvec{A}}_{i,j} {\updelta }{\varvec{p}}_{i,j}\) is the geometric error of the links, expressed in twist form, whose 6 × 6 coefficient matrix Ai,j is given by:
\(\begin{gathered} {\varvec{A}}_{i,j} = {\varvec{I}}_{6} + \frac{{4 - \varphi_{i,j} S_{{\varphi_{i,j} }} - 4C_{{\varphi_{i,j} }} }}{{2\varphi_{i,j}^{2} }}{\varvec{Z}}_{i,j} + \frac{{4\varphi_{i,j} - 5S_{{\varphi_{i,j} + \varphi_{i,j} }} C_{{\varphi_{i,j} }} }}{{2\varphi_{i,j}^{3} }}{\varvec{Z}}_{i,j}^{2} \hfill \\ + \frac{{2 - \varphi_{i,j} S_{{\varphi_{i,j} }} - 2C_{{\varphi_{i,j} }} }}{{2\varphi_{i,j}^{4} }}{\varvec{Z}}_{i,j}^{3} + \frac{{2\varphi_{i,j} - 3S_{{\varphi_{i,j} }} + \varphi_{i,j} C_{{\varphi_{i,j} }} }}{{2\varphi_{i,j}^{5} }}{\varvec{Z}}_{i,j}^{4} , \hfill \\ \end{gathered}\) where \({\varvec{Z}}_{i,j} = {\text{ad}}(\hat{\varvec{p}}_{i,j} ) \in {\mathbb{R}}^{6 \times 6}\) denotes the adjoint representation of \(\hat{\varvec{p}}_{i,j} \in se(3)\) and \(\varphi_{i,j}\) is its magnitude. The operators \({\text{Ad}}( \cdot )\) and \({\text{ad}}( \cdot )\) represent the adjoint transformation of the element in Lie groups and Lie algebras, respectively (for more details, see Ref. [37]).
Then, the limb’s kinematic error model can be rewritten in a compact form just like serial robots as:
$$\updelta {\varvec{y}}_{i} ={\varvec{\varGamma}}_{i}{\varvec{\varLambda}}_{i} {\varvec{A}}_{i}\updelta {\varvec{p}}_{i} +{\varvec{\varPsi}}_{i}{\varvec{\varXi}}_{i}\updelta {\varvec{\theta}}_{i} = {\varvec{J}}_{{p_{i} }}\updelta {\varvec{p}}_{i} + {\varvec{J}}_{{q_{i} }}\updelta {\varvec{\theta}}_{i} ,$$
(27)
where \(\updelta {\varvec{p}}_{i} = [\updelta {\varvec{p}}_{i,0}^{\rm T} ,\updelta {\varvec{p}}_{i,1}^{\rm T} , \ldots ,\updelta {\varvec{p}}_{i,5}^{\rm T} ]^{\rm T} \in {\mathbb{R}}^{36 \times 1}\) is the error vector of each component. \({\updelta }{\varvec{\theta}}_{i} = [\updelta \theta_{i,1} , \ldots ,\updelta \theta_{i,5} ]^{{\text{T}}} \in {\mathbb{R}}^{5 \times 1}\) is the error vector of the joint motion. \({\varvec{J}}_{{p_{i} }} ={\varvec{\varGamma}}_{i}{\varvec{\varLambda}}_{i} {\varvec{A}}_{i} \in {\mathbb{R}}^{6 \times 36}\) and \({\varvec{J}}_{{\theta_{i} }} ={\varvec{\varPsi}}_{i}{\varvec{\varXi}}_{i} \in {\mathbb{R}}^{6 \times 5}\) are the corresponding error transformation matrices. The relevant coefficient matrices are given by:
$${\varvec{\varGamma}}_{i} = \left[ {{\varvec{I}}_{6} ,{\text{Ad}}_{{\exp \left( {\widehat{{\varvec{\xi}}}_{i,1} \theta_{i,1} } \right)}} , \ldots ,{\text{Ad}}_{{\exp \left( {\widehat{{\varvec{\xi}}}_{i,1} \theta_{i,1} } \right) \cdots \exp \left( {\hat{\varvec{\xi }}_{i,5} \theta_{i,5} } \right)}} } \right] \in {\mathbb{R}}^{6 \times 36} ,$$
$${\varvec{\varLambda}}_{i} = {\text{ Blockdiag }}\left( {{\varvec{I}}_{6} ,{\text{Ad}}_{{{\varvec{g}}_{i,0} }} , \ldots ,{\text{Ad}}_{{{\varvec{g}}_{i,0} \cdots {\varvec{g}}_{i,4} }} } \right) \in {\mathbb{R}}^{36 \times 36} ,$$
$${\varvec{A}}_{i} = {\text{ Blockdiag }}\left( {{\varvec{A}}_{i,0} ,{\varvec{A}}_{i,1} , \ldots ,{\varvec{A}}_{i,5} } \right) \in {\mathbb{R}}^{36 \times 36} ,$$
$${\varvec{\varPsi}}_{i} = \left[ {{\varvec{I}}_{6} ,{\text{Ad}}_{{\exp \left( {\widehat{{\varvec{\xi}}}_{i,1} \theta_{i,1} } \right)}} , \ldots ,{\text{Ad}}_{{\exp \left( {\widehat{{\varvec{\xi}}}_{i,1} \theta_{i,1} } \right) \cdots \exp \left( {\hat{\varvec{\xi }}_{i,4} \theta_{i,4} } \right)}} } \right] \in {\mathbb{R}}^{6 \times 30} ,$$
$${{\varvec{\varXi}}}_{i} = {\text{ Blockdiag }}\left( {{\varvec{\xi}}_{i,1} ,{\varvec{\xi}}_{i,2} , \cdots ,{\varvec{\xi}}_{i,5} } \right) \in {\mathbb{R}}^{30 \times 5} ,$$
\({\varvec{\xi}}_{i,j} = {\text{Ad}}({\varvec{g}}_{i,0} \ldots {\varvec{g}}_{i,j - 1} ){\varvec{\zeta}}_{3/6} ,j = 1, \ldots ,5\) denotes the specific position of relative axis at each configuration. The 4th joint in limb 1 or limb 2 and 2nd joint in limb 3 is prismatic, in other words, the right side of the equation is ζ3.
From Eq. (27), it is apparent that, in the limbs, the pose error of the parallel manipulator’s end-effector comes from two aspects: (1) The kinematic errors pi of the limb’s constituting links due to manufacturing and assembling tolerances; (2) The joint variable errors δθi caused by the actuators’ input repeatability and the passive joints’ idle motions. Usually, owing to the precisely controlled by the encoder of actuated joint motions, the relevant motion error can be reasonably ignored. As a result, joint variables δθ1,4, δθ2,4 and δθ3,2 are equal to 0. Moreover, the error models of the parallel manipulator’s limbs are slightly different from those of their serial counterparts due to the existence of the passive joints. Since the displacements of the parallel manipulator’s passive joints are determined by the active ones, their motion errors do not keep constant but vary at different configurations. In other words, these error components could be regarded as intermediate variables that need to be eliminated in advance before establishing the system error model for the whole parallel manipulator.
The reciprocal screw can be used to eliminate the limb’s passive joints. In this paper, each limb has four passive moving joints, therefore, two reciprocal twists exist. The reciprocal relation for all twists can be assembled in a matrix form as:
$${\varvec{J}}_{r,i} \varvec{\varOmega \varPsi }_{r,i}{\varvec{\varXi}}_{r,i} \equiv {\varvec{0}},$$
(28)
where Ω is the inverse operator as
\({\varvec{\varOmega}}= \left[ {\begin{array}{*{20}l} {\varvec{0}} & {{\varvec{I}}_{3} } \\ {{\varvec{I}}_{3} } & {\varvec{0}} \\ \end{array} } \right] \Rightarrow{\varvec{\varOmega}}^{ - 1} ={\varvec{\varOmega}}\). The other coefficients are given by \({\varvec{J}}_{r,i} = \left[ {\overline{{\varvec{\xi}}}_{i,1} ,\overline{{\varvec{\xi}}}_{i,2} } \right]^{{\text{T}}} \in {\mathbb{R}}^{2 \times 6} ,\)
$${\varvec{\varPsi}}_{r,i} = \left[ {{\varvec{I}}_{6} , \ldots ,{\text{Ad}}_{{\exp \left( {\hat{\varvec{\xi }}_{i,1} \theta_{i,1} } \right)\exp \left( {\widehat{{\varvec{\xi}}}_{i,2} \theta_{i,2} } \right)\exp \left( {\widehat{{\varvec{\xi}}}_{i,3} \theta_{i,3} } \right)}} } \right] \in {\mathbb{R}}^{6 \times 24} , \quad i = 1, \, 2,$$
$${\varvec{\varPsi}}_{r,3} = \left[ {{\varvec{I}}_{6} , \ldots ,{\text{Ad}}_{{\exp \left( {\widehat{{\varvec{\xi}}}_{i,1} \theta_{i,1} } \right)\exp \left( {\widehat{{\varvec{\xi}}}_{i,3} \theta_{i,3} } \right)\exp \left( {\widehat{{\varvec{\xi}}}_{i,3} \theta_{i,4} } \right)}} } \right] \in {\mathbb{R}}^{6 \times 24} ,$$
$${\varvec{\varXi}}_{r,i} = {\text{ Blockdiag }}\left( {{\varvec{\xi}}_{i,1} ,{\varvec{\xi}}_{i,2} ,{\varvec{\xi}}_{i,3} ,{\varvec{\xi}}_{i,4} } \right) \in {\mathbb{R}}^{24 \times 4} , \quad i = 1, \, 2,$$
$${\varvec{\varXi}}_{r,3} = {\text{ Blockdiag }}\left( {{\varvec{\xi}}_{3,1} ,{\varvec{\xi}}_{3,3} ,{\varvec{\xi}}_{3,4} ,{\varvec{\xi}}_{3,5} } \right) \in {\mathbb{R}}^{24 \times 4} .$$
It should be noted that the matrix Jr limits the application scope of the method in non-overconstrained parallel mechanisms. Substitution Eq. (28) into Eq. (27), the whole error model of parallel manipulator with all limbs are:
$$\updelta {\varvec{y}} = \varvec{\varOmega J}_{r}^{ - 1} {\varvec{J}}_{r,p}\updelta {\varvec{p}} = {\varvec{J}}_{p}\updelta {\varvec{p}},$$
(29)
where δy = δy1 = δy2 = δy3 since the manipulator’s end-effector is shared by all limbs. \(\updelta {\varvec{p}} = [\updelta {\varvec{p}}_{1}^{{\text{T}}} ,\updelta {\varvec{p}}_{2}^{{\text{T}}} ,\updelta {\varvec{p}}_{3}^{{\text{T}}} ]^{{\text{T}}} \in {\mathbb{R}}^{108 \times 1}\) represents the system error vector of the whole parallel manipulator. The coefficient matrices can be given by:
$${\varvec{J}}_{r} = \left[ {{\varvec{J}}_{r,1}^{{\text{T}}} ,{\varvec{J}}_{r,2}^{{\text{T}}} ,{\varvec{J}}_{r,3}^{{\text{T}}} } \right]^{{\text{T}}} \in {\mathbb{R}}^{6 \times 6} ,$$
$${\varvec{J}}_{r,p} = {\text{ Blockdiag }}\left( {{\varvec{J}}_{r,1}^{{\text{T}}} \varvec{\varOmega J}_{{p_{1} }} ,{\varvec{J}}_{r,2}^{{\text{T}}} \varvec{\varOmega J}_{{p_{2} }} ,{\varvec{J}}_{r,3}^{{\text{T}}} \varvec{\varOmega J}_{{p_{3} }} } \right) \in {\mathbb{R}}^{6 \times 108} .$$
As presented above, all kinematic parameters are considered in the error model as shown in Eq. (29). Consequently, it can satisfy the complete requirements. However, not all of the parameters can be identified independently. The redundant error parameters should be further eliminated.
In our previous works [32, 37], an analytical approach was proposed to identify and eliminate redundant components in order to achieve error models that satisfy the requirements of continuity, completeness and minimality for the kinematic-parameter identification. The core principle is constructing row space and null space of identification matrix Jp,i, taking simultaneously the variety configurations into account.
Due to the complexity in dealing with unmeasurable motion variables of passive joints, the elimination of redundant parameters is conducted in two stages. Firstly, the kinematics errors in each limb should be eliminated as a serial robot.
In the first item of Eq. (27), Λi and Ai are nonsingular. Consequently, the linear correlation of columns in Γi can determine the redundant parameters.
Then, the null space of Γi can be constructed in a matrix form as:
$${\varvec{\varGamma}}_{i} \overline{\varvec{U}}_{i} \equiv {\varvec{0}} \Rightarrow \overline{\varvec{U}}_{i} = \left[ {\begin{array}{*{20}l} { - \overline{\varvec{U}}_{i,1} } & \quad {\varvec{0}} & \quad \cdots & \quad {\varvec{0}} \\ {\overline{\varvec{U}}_{i,1} } & \quad { - \overline{\varvec{U}}_{i,2} } & \quad \ddots & \quad \vdots \\ {\varvec{0}} & \quad {\overline{\varvec{U}}_{i,2} } & \quad \ddots & \quad {\varvec{0}} \\ \vdots & \quad \ddots & \quad \ddots & \quad { - \overline{\varvec{U}}_{i,5} } \\ {\varvec{0}} & \quad \cdots & \quad {\varvec{0}} & \quad {\overline{\varvec{U}}_{i,5} } \\ \end{array} } \right],$$
(30)
According to the joint types in SPR and RPS, the relevant zero space matrix of \(\overline{\varvec{U}}_{i,j}\) are given as:
$$\left\{ {\begin{array}{*{20}l} {\overline{\varvec{U}}_{i,j} = \left[ {\begin{array}{*{20}l} {{\varvec{\omega}}_{i,j} } & {\varvec{0}} \\ {{\varvec{v}}_{i,j} } & {{\varvec{\omega}}_{i,j} } \\ \end{array} } \right]_{6 \times 2} ,{\text{ revolute joints,}}} \hfill \\ {\overline{\varvec{U}}_{i,j} = \left[ {\begin{array}{*{20}l} {{\varvec{\omega}}_{i,j} } & {\varvec{0}} \\ {\varvec{0}} & {{\varvec{I}}_{3} } \\ \end{array} } \right]_{6 \times 4} ,{\text{ prismatic joints}}{.}} \hfill \\ \end{array} } \right.$$
(31)
Consequently, Eq. (27) can be operated by an orthogonal partitioning matrix \({\varvec{N}}_{i} = [{\varvec{U}}_{i}^{ \bot } ,{\varvec{U}}_{i} ]\) as:
$$\begin{aligned}\updelta {\varvec{y}}_{i} & ={\varvec{\varGamma}}_{i} {\varvec{N}}_{i} {\varvec{N}}_{i}^{{\text{T}}}{\varvec{\varLambda}}_{i} {\varvec{A}}_{i}\updelta {\varvec{p}}_{i} +{\varvec{\varPsi}}_{i}{\varvec{\varXi}}_{i}\updelta {\varvec{\theta}}_{i} \hfill \\ & ={\varvec{\varGamma}}_{i} {\varvec{U}}_{i} {\varvec{U}}_{i}^{{\text{T}}}{\varvec{\varLambda}}_{i} {\varvec{A}}_{i}\updelta {\varvec{p}}_{i} +{\varvec{\varPsi}}_{i}{\varvec{\varXi}}_{i}\updelta {\varvec{\theta}}_{i} . \hfill \\ \end{aligned}$$
(32)
The projection operation Jr,iΩ can be applied to Eq. (32). As a result, it changes the linear correlation of column vectors in ΓiUi. Another separating algorithm should be exerted. Based on the reciprocal relation of Eq. (28), the null space of the reduced identification matrix Jr,iΩΓiUi can be obtained as:
$${\varvec{J}}_{r,i} \varvec{\varOmega \varGamma }_{i} {\varvec{U}}_{i} {\varvec{U}}_{i}^{{\text{T}}} \overline{\varvec{\varXi }}_{i} = {\varvec{J}}_{r,i} \varvec{\varOmega \varGamma }_{i} \overline{\varvec{\varXi }}_{i} = {\varvec{J}}_{r,i} \varvec{\varOmega \varPsi }_{r,i}{\varvec{\varXi}}_{i} \equiv {\varvec{0}},$$
(33)
where \(\overline{\varvec{\varXi }}_{i} = [\overline{\varvec{\varXi }}_{i,r}^{{\text{T}}} ,{\varvec{0}}^{{\text{T}}} ]^{{\text{T}}} \in {\mathbb{R}}^{36 \times 4}\), such that \({\varvec{\varGamma}}_{i} \overline{\varvec{\varXi }}_{i} ={\varvec{\varPsi}}_{i,r}{\varvec{\varXi}}_{i,r}\), since Ψi,r only consists of the first mi blocks of Γi as defined in Eq. (28).
Then, the second stage of separate operation to eliminate the redundant parameters in the reduced error model as:
$$\begin{gathered} {\varvec{J}}_{r,i}{\varvec{\varOmega}}\updelta {\varvec{y}}_{i} = {\varvec{J}}_{r,i} \varvec{\varOmega \varGamma }_{i} {\varvec{U}}_{i} {\varvec{M}}_{i} {\varvec{M}}_{i}^{{\text{T}}} {\varvec{U}}_{i}^{{\text{T}}}{\varvec{\varLambda}}_{i} {\varvec{A}}_{i}\updelta {\varvec{p}}_{i} \hfill \\ = \underline{{{\varvec{J}}_{r,i} \varvec{\varOmega \varGamma }_{i} {\varvec{U}}_{i} {\varvec{V}}_{i} }} \underline{\underline{{{\varvec{V}}_{i}^{{\text{T}}} {\varvec{U}}_{i}^{{\text{T}}}{\varvec{\varLambda}}_{i} {\varvec{A}}_{i}\updelta {\varvec{p}}_{i} }}} = {\varvec{J}}_{{\overline{p}_{i} }}\updelta \overline{\varvec{p}}_{i} , \hfill \\ \end{gathered}$$
(34)
where \({\varvec{M}}_{i} = [{\varvec{V}}_{i}^{ \bot } ,{\varvec{V}}_{i} ]\)\({\varvec{V}}_{i}^{ \bot } \in {\mathbb{R}}^{24 \times 4}\) and \({\varvec{V}}_{i} \in {\mathbb{R}}^{24 \times 20}\) are column equivalent and orthogonal complement to \({\varvec{U}}_{i}^{\text T} \overline{\varvec{\varXi }}_{i}\), respectively. Simultaneously, \({\updelta }\overline{\varvec{p}}_{i} = {\varvec{V}}_{i}^{\text T} {\varvec{U}}_{i}^{\text T}{\varvec{\varLambda}}_{i} {\varvec{A}}_{i} {\updelta }{\varvec{p}}_{i}\) ∈ \({\mathbb{R}}\)20×1 and \({\varvec{J}}_{{\overline{p}_{i} }} = {\varvec{J}}_{r,i} \varvec{\varOmega \varGamma }_{i} {\varvec{U}}_{i} {\varvec{V}}_{i}\) ∈ \({\mathbb{R}}^{20\times {1}}\).
Finally, a whole error model which meets the complete and minimal requirements can be given as:
$$\updelta \overline{\varvec{y}} = \varvec{\varOmega J}_{r}^{ - 1} {\varvec{J}}_{{\overline{p}}}\updelta \varvec{\overline{p} = \overline{J}}_{p}\updelta \overline{\varvec{p}},$$
(35)
where \(\updelta \overline{\varvec{p}} = [\updelta \overline{\varvec{p}}_{1}^{{\text{T}}} ,\updelta \overline{\varvec{p}}_{2}^{{\text{T}}} ,\updelta \overline{\varvec{p}}_{3}^{{\text{T}}} ]^{{\text{T}}} \in {\mathbb{R}}^{60 \times 1}\). \(\overline{\varvec{J}}_{{\varvec{p}}} = \varvec{\varOmega J}_{r}^{ - 1} {\varvec{J}}_{{\overline{p}}}\) and \({\varvec{J}}_{{\overline{p}}} = {\text{Blockdiag}}({\varvec{J}}_{{\overline{p}_{1} }} ,{\varvec{J}}_{{\overline{p}_{2} }} ,{\varvec{J}}_{{\overline{p}_{3} }} ) \in {\mathbb{R}}^{6 \times 60}\). Eq. (35) illustrates that the studied parallel manipulator’s independent error parameters are 60, though the total number of the kinematic parameter is 108. As consequently, this model is called the complete-minimal error model in this paper.

4 Comprehensive Comparison with Different Error Models in Simulation

In this section, comprehensive comparisons with those three error models are conducted by simulations. The comparisons are specifically including the accuracy, the influence of S joint, identification with noises, and sensitivity indices. Additionally, some extended error models based on the inverse-kinematic error model and complete-minimal error model are also proposed for better illustration. The details are presented below.

4.1 Extended Error Models for Further Comparison

4.1.1 Inverse-Kinematic Error Model with 9 Parameters

In Section 3.1, the error model contains deviations of base frame and platform frame. In order to present a better comparison for the influence of those errors in identification accuracy, an extra error model with nine parameters is obtained based on the deduction process in the error model.
The parameters to be identified are p = [ρA1, ρB1, l1, ρA2, ρB2, l2, ρA3, ρB3, l3]T ∈ \({\mathbb{R}}\)9×1. The final error model is obtained after ignoring the δd in Eq. (15).
$$\left[ {\begin{array}{*{20}l} {{\varvec{J}}_{q,1} } \\ {{\varvec{J}}_{q,2} } \\ {{\varvec{J}}_{q,3} } \\ \end{array} } \right]\updelta {\varvec{q}} = \left[ {\begin{array}{*{20}l} {{\varvec{J}}_{p,1} } & {\varvec{0}} & {\varvec{0}} \\ {\varvec{0}} & {{\varvec{J}}_{p,2} } & {\varvec{0}} \\ {\varvec{0}} & {\varvec{0}} & {{\varvec{J}}_{p,3} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}l} {\updelta {\varvec{p}}_{1} } \\ {\updelta {\varvec{p}}_{2} } \\ {\updelta {\varvec{p}}_{3} } \\ \end{array} } \right] \Rightarrow\updelta {\varvec{q}} = {\varvec{J}}_{q}^{ - 1} {\varvec{J}}_{p}\updelta {\varvec{p}},$$
(36)
where Jq is the same as Eq. (15), \(\updelta {\varvec{p}} = [\updelta {\varvec{p}}_{1}^{{\text{T}}} ,\updelta {\varvec{p}}_{2}^{{\text{T}}} ,\updelta {\varvec{p}}_{3}^{{\text{T}}} ]^{{\text{T}}}\) ∈ \({\mathbb{R}}\)9×1 and \({\varvec{J}}_{p} = {\text{Blockdiag}}({\varvec{J}}_{p,1} ,{\varvec{J}}_{p,2} ,{\varvec{J}}_{p,3} ) \in {\mathbb{R}}^{6 \times 9}\).

4.1.2 Inverse-Kinematic Error Model with 27 Parameters

In Section 3.1, the error model contains the assumption that the S joints are ideal. In order to investigate the influence of those errors in identification accuracy, an error model with 27 parameters is obtained based on the addition process in the error model in Section 3.1. For each limb, two additional position errors are considered into S joint.
The parameters in each limb to be identified in this error model are pi = [ρAi, ρBi, ρSi, li]T ∈ \({\mathbb{R}}\)5×1. Compared with original error model in Section 3.1, the only differences are the matrix of Jp,i:
$$\left\{ \begin{gathered} {\varvec{J}}_{p,i} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{i} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{l}}_{i} {\varvec{R}}_{b} {\varvec{R}}_{u} {\varvec{v}}_{i} } & \quad { - {\varvec{l}}_{i} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad 1 \\ {{\varvec{s}}_{i} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{s}}_{i} {\varvec{R}}_{b} {\varvec{R}}_{u} {\varvec{v}}_{i} } & \quad { - {\varvec{s}}_{i} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad {{\varvec{s}}_{i} {\varvec{l}}_{i} } \\ \end{array} } \right],\quad i = 1, \, 2, \hfill \\ {\varvec{J}}_{p,i} = \left[ {\begin{array}{*{20}l} {{\varvec{l}}_{i} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{l}}_{i} {\varvec{R}}_{b} {\varvec{R}}_{u} {\varvec{v}}_{i} } & \quad { - {\varvec{l}}_{i} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad 1 \\ {{\varvec{h}}_{i} {\varvec{R}}_{b} {\varvec{v}}_{i} } & \quad { - {\varvec{h}}_{i} {\varvec{R}}_{b} {\varvec{R}}_{u} {\mathbf{v}}_{i} } & \quad { - {\varvec{h}}_{i} {\varvec{R}}_{m} {\varvec{R}}_{p} {\varvec{v}}_{i} } & \quad {{\varvec{h}}_{i} {\varvec{l}}_{i} } \\ \end{array} } \right],\quad i = 3, \hfill \\ \end{gathered} \right.$$
(37)
where \({\varvec{R}}_{u} = \exp \left( {\hat{\varvec{e}}_{2} \theta } \right)\) and θ=θ1,1 which can be found in Figure 4. si and hi are the same as in Eq. (13).

4.1.3 POE-Based Error Model with Perfect S Joints

Similarly, the influence of S joints is also taken into consideration in the complete-minimal error model. Usually, the S joint consists of three revolute joints and four links. The kinematic equation is
$${\varvec{g}} = \exp (\hat{\varvec{p}}_{1} )\exp (\widehat{{\varvec{\xi}}}_{1} q_{1} ) \cdots \exp (\widehat{{\varvec{\xi}}}_{3} q_{3} )\exp (\hat{\varvec{p}}_{4} ).$$
(38)
By full differential of the above formula, the error twist of the end pose can be obtained as:
$$\updelta {\varvec{e}} = \varvec{\varGamma D}_{{\varvec{\xi}}}{\varvec{\varDelta}}_{3} \varvec{\varLambda A}_{p}\updelta {\varvec{p}} + \varvec{\varPsi \varvec{\varXi}}\updelta {\varvec{q}},$$
(39)
where \({\varvec{\varGamma}}= \left[ {{\varvec{I}}_{6} ,{\text{Ad}}_{{\exp (\widehat{{\varvec{\xi}}}_{1} q_{1} )}} , \ldots ,{\text{Ad}}_{{\exp (\widehat{{\varvec{\xi}}}_{3} q_{3} )}} } \right] \in {\mathbb{R}}^{6 \times 24} ,\)
$${\varvec{D}}_{\xi } = {\text{Blockdiag }}\left( {{\varvec{I}}_{6} - {\text{Ad}}_{{\exp (\widehat{{\varvec{\xi}}}_{1} q_{1} )}} , \ldots ,{\varvec{I}}_{6} - {\text{Ad}}_{{\exp (\widehat{{\varvec{\xi}}}_{3} q_{3} )}} ,{\varvec{I}}_{6} } \right) \in {\mathbb{R}}^{24 \times 24} ,{\varvec{\varDelta}}_{3} = \left[ {\begin{array}{*{20}l} {{\varvec{I}}_{6} } & {\varvec{0}} & {\varvec{0}} & {\varvec{0}} \\ {{\varvec{I}}_{6} } & {{\varvec{I}}_{6} } & {\varvec{0}} & {\varvec{0}} \\ {{\varvec{I}}_{6} } & {{\varvec{I}}_{6} } & {{\varvec{I}}_{6} } & {\varvec{0}} \\ {{\varvec{I}}_{6} } & {{\varvec{I}}_{6} } & {{\varvec{I}}_{6} } & {{\varvec{I}}_{6} } \\ \end{array} } \right] \in {\mathbb{R}}^{24 \times 24} ,$$
$${\varvec{\varLambda}}= {\text{Blockdiag }}\left( {{\varvec{I}}_{6} ,{\text{Ad}}_{{\exp (\hat{p}_{1} )}} , \ldots ,{\text{Ad}}_{{\exp (\hat{p}_{1} ) \cdots \exp (\hat{p}_{3} )}} } \right) \in {\mathbb{R}}^{24 \times 24} ,$$
$${\varvec{A}}_{p} = {\text{Blockdiag }}\left( {{\varvec{A}}_{{p_{1} }} , \ldots ,{\varvec{A}}_{{p_{4} }} } \right) \in {\mathbb{R}}^{24 \times 24} ,$$
$${\updelta }{\varvec{p}} = [{\updelta }{\varvec{p}}_{1}^{{\text{T}}} , \ldots ,{\updelta }{\varvec{p}}_{4}^{{\text{T}}} ]^{{\text{T}}} \in {\mathbb{R}}^{24 \times 1} ,$$
$${\varvec{\varPsi}}= \left[ {{\varvec{I}}_{6} ,{\text{Ad}}_{{\exp (\hat{\varvec{\xi }}_{1} q_{1} )}} ,{\text{Ad}}_{{\exp (\hat{\varvec{\xi }}_{2} q_{2} )}} } \right] \in {\mathbb{R}}^{6 \times 18} ,$$
$${\varvec{\varXi}}= {\text{Blockdiag }}\left( {{\varvec{\xi}}_{1} ,{\varvec{\xi}}_{2} ,{\varvec{\xi}}_{3} } \right) \in {\mathbb{R}}^{18 \times 3} ,$$
$$\updelta {\varvec{q}} = \left[ {\updelta q_{1} ,\updelta q_{2} ,\updelta q_{3} } \right]^{{\text{T}}} \in {\mathbb{R}}^{3 \times 1} .$$
Without considering the error in S joint, the parts of δp2 and δp3 are set to zero. Therefore, Eq. (39) can be transferred as:
$$\begin{gathered}\updelta {\varvec{e}} = \varvec{\varGamma D}_{{{\varvec{\xi}},S}}{\varvec{\varDelta}}_{1}{\varvec{\varLambda}}_{S} {\varvec{A}}_{p,S}\updelta {\varvec{p}}_{S} + \varvec{\varPsi \varvec{\varXi} }\updelta {\varvec{q}} \\ = \varvec{\varGamma D}_{{{\varvec{\xi}}{,}S}}\updelta {\varvec{\rho}}_{S} + \varvec{\varPsi \varvec{\varXi} }\updelta {\varvec{q}}{,} \\ \end{gathered}$$
(40)
where \({\varvec{D}}_{\xi ,S} = \left[ {\begin{array}{*{20}l} {{\varvec{I}}_{6} - {\text{Ad}}_{{\exp (\widehat{{\varvec{\xi}}}_{1} q_{1} )}} } & {\varvec{0}} \\ {{\varvec{I}}_{6} - {\text{Ad}}_{{\exp (\widehat{{\varvec{\xi}}}_{2} q_{2} )}} } & {\varvec{0}} \\ {{\varvec{I}}_{6} - {\text{Ad}}_{{\exp (\widehat{{\varvec{\xi}}}_{3} q_{3} )}} } & {\varvec{0}} \\ {\varvec{0}} & {{\varvec{I}}_{6} } \\ \end{array} } \right] \in {\mathbb{R}}^{24 \times 12} ,\)
$${\varvec{\varDelta}}_{1} = \left[ {\begin{array}{*{20}l} {{\varvec{I}}_{6} } & {\varvec{0}} \\ {{\varvec{I}}_{6} } & {{\varvec{I}}_{6} } \\ \end{array} } \right] \in {\mathbb{R}}^{12 \times 12} ,$$
$${\varvec{\varLambda}}_{S} = {\text{Blockdiag }}\left( {{\varvec{I}}_{6} ,{\text{Ad}}_{{\exp (\hat{p}_{1} ) \cdots \exp (\hat{p}_{3} )}} } \right) \in {\mathbb{R}}^{24 \times 12} ,$$
$${\varvec{A}}_{p,S} = {\text{Blockdiag }}\left( {{\varvec{A}}_{{p_{1} }} ,{\varvec{A}}_{{p_{4} }} } \right) \in {\mathbb{R}}^{24 \times 12} ,$$
$${\updelta }{\varvec{\rho}}_{S} = [{\updelta }{\varvec{p}}_{1}^{{\text{T}}} ,{\updelta }{\varvec{p}}_{4}^{{\text{T}}} ]^{{\text{T}}} \in {\mathbb{R}}^{12 \times 1} .$$
In Eq. (40), δρS represents the cumulative error and can be transferred by link error:
$$\updelta {\varvec{\rho}}_{S} ={\varvec{\varDelta}}_{1}{\varvec{\varLambda}}_{S} {\varvec{A}}_{P,S}\updelta {\varvec{p}}_{S} = \left[ {\begin{array}{*{20}l} {{\varvec{A}}_{{p_{1} }}\updelta {\varvec{p}}_{1} } \\ {{\varvec{A}}_{{p_{1} }}\updelta {\varvec{p}}_{1} + {\varvec{A}}_{{p_{4} }}\updelta {\varvec{p}}_{4} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}l} {\updelta {\varvec{\rho}}_{1} } \hfill \\ {\updelta {\varvec{\rho}}_{2} } \hfill \\ \end{array} } \right] \in {\mathbb{R}}^{12 \times 1} .$$
(41)
When the projection operation is used to eliminate the influence of the motion error of the unmeasurable joint, the corresponding parameter identification matrix has also been changed while ignoring the S joint’s manufacturing error. Consequently, the null space matrix of the corresponding identification matrix will be also changed accordingly. Projecting the constraint rotation matrix onto the end’s error in Eq. (40), the identity can be obtained as:
$$\begin{gathered} \overline{\varvec{\varXi }}_{um}^{\text{T}} \varvec{\varOmega \varPsi \varXi } \equiv {\varvec{0}} \hfill \\ \Rightarrow \overline{\varvec{\varXi }}_{um}^{\text{T}} \varvec{\varOmega \varGamma D}_{\xi ,S}{\varvec{\varDelta}}_{1} \left[ {\begin{array}{*{20}l} {{\varvec{\xi}}_{1} } \quad & {{\text{Ad}}\left( {e^{{\widehat{{\varvec{\xi}}}_{1} \theta_{1} }} } \right){\varvec{\xi}}_{2} } & \quad {\varvec{0}} \\ {\varvec{0}} & \quad {\varvec{0}} & \quad {{\varvec{\xi}}_{3} } \\ \end{array} } \right] \equiv {\varvec{0}}{.} \hfill \\ \end{gathered}$$
(42)
Finally, the elimination matrix is
$$\overline{\varvec{V}}_{S} ={\varvec{\varDelta}}_{1} \left[ {\begin{array}{*{20}l} {{\varvec{\xi}}_{1} } & \quad {{\text{Ad}} \left( {e^{{\widehat{{{\varvec{\xi}}}}_{1} \theta_{1} }} } \right){\varvec{\xi}}_{2} } & \quad {\varvec{0}} \\ {\varvec{0}} & \quad {\varvec{0}} & \quad {{\varvec{\xi}}_{3} } \\ \end{array} } \right] ={\varvec{\varDelta}}_{1} \overline{\varvec{\varXi }}_{S} .$$
(43)

4.2 Identification Methods for the Three Error Models

As indicated above, the identification process for kinematic parameters based on the inverse-kinematic error model should be performed initially, as shown in Figure 8. Similar to the traditional identification process about obtaining the actual values of the kinematics parameters, the least square method is used in the calculation [37]. Meanwhile, all the extended error models are derived from the original one in Section 3.1 share the same identification method.
$$\updelta {\varvec{p}} = \left( {\varvec{J^{'}}_{p}^{{\text{T}}} \varvec{J^{'}}_{p} } \right)^{ - 1} \varvec{J^{'}}_{p}^{{\text{T}}}\updelta {\varvec{e}}_{st} .$$
(44)
Secondly, the identification process based on the geometric-constraint error model is shown in Figure 9. The identification algorithm is also used by the least square method above. The detailed equation is
$$\updelta {\varvec{p}} = \left( {\varvec{J^{'}}_{p}^{\text T} \varvec{J^{'}}_{p} } \right)^{ - 1} \varvec{J^{'}}_{p}^{{\text{T}}}\updelta {\varvec{y}}.$$
(45)
Thirdly, the identification process of kinematic parameters based on the complete-minimal error model is illustrated in Figure 10. The actual poses of the parallel manipulator’s end-effector are given by external measurement, and the pose deviations from the end of measurement to the end of calculation define as:
$$\updelta \overline{\varvec{y}}_{k} = \left( {\log \left( {\overline{\varvec{g}}_{st,k} {\varvec{g}}_{st,k}^{ - 1} } \right)} \right)^{ \vee } .$$
(46)
Then, combine all deviations together as:
$$\updelta \tilde{\varvec{Y}} = \left[ {\begin{array}{*{20}l} {\updelta \overline{\varvec{y}}_{1} } \\ \vdots \\ {\updelta \overline{\varvec{y}}_{m} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}l} {\overline{\varvec{J}}_{{{\varvec{p}},1}} } \\ \vdots \\ {\overline{\varvec{J}}_{{{\varvec{p}},m}} } \\ \end{array} } \right]\updelta \overline{\varvec{p}} = \varvec{\tilde{\overline{J}}}_{p}\updelta \overline{\varvec{p}}.$$
(47)
In the reduced error model, the redundant components have been eliminated, so the dimension of the independent error vector \(\updelta \overline{\varvec{p}}\) is less than the number of the parallel manipulator’s kinematic parameters. Therefore, an extra update criteria for the manipulator’s kinematic parameters is introduced by letting the redundant errors always be zero. Then, we have:
$$\updelta \overline{\varvec{p}}_{i} = {\varvec{V}}_{i}^{\text T} {\varvec{U}}_{i}^{\text T}{\varvec{\varLambda}}_{i}\updelta {\varvec{p}}_{i} \Rightarrow\updelta {\varvec{p}}_{i} = {\varvec{U}}_{i}^{ - 1}{\varvec{\varLambda}}_{i}^{ - 1} {\varvec{N}}_{i} {\varvec{M}}_{i} \left[ {\begin{array}{*{20}l} {\updelta \overline{\varvec{p}}_{i} } \\ {\varvec{0}} \\ \end{array} } \right],$$
(48)
where \(\updelta \overline{\varvec{p}}_{i}\) is the independent error component in the limb i, which can be extracted from the system one δpi as in Eq. (34). Mi and Ni are the orthogonal partitioning matrices which are updated according to the current kinematic parameters.
To keep the calculation more stable, the total least squares (TLS) method is used to identify the kinematics parameters. The iterative formulation is given as:
$${\varvec{p}}^{k + 1} = {\varvec{p}}^{k} + {\updelta }{\varvec{p}}^{k} ,$$
(49)
where pk represents the estimation of the kinematic parameter at the iteration k and δpk is the corresponding kinematic error vector according to Eq. (48).

4.3 Comparisons for All Error Models in Simulation

4.3.1 Accuracy

In this part, a comprehensive comparison of accuracy after identification is conducted. Firstly, in order to obtain measurement data, simulations are performed using the forward kinematic method with random deviations of whole geometric parameters. The deviations are random normal distribution within [− 0.005, 0.005] m, rad. Secondly, the measurements are exerted for all error models proposed above to perform identification. Lastly, the residual position errors and orientation errors are calculated for comparison. The results are presented in Figure 11. Meanwhile, the mean residual errors are listed in Table 1. In this table, the Inv-9 represents the inverse-kinematic error model with nine parameters, so as the Inv-21 and Inv-27. The G-C represents the geometric-constraint error model. The perfect S model represents the POE-based error model with the perfect S joint. The C-M represents the complete-minimal error model.
Table 1
Mean position and orientation errors with different error models after calibration
 
Position (m)
Orientation (rad)
Before
0.0127
0.0333
Inv-9
0.0121
0.0287
Inv-21
0.0029
0.0014
Inv-27
0.0029
0.0014
G-C
0.0027
0.0047
Perfect S
1.010 × 10−5
2.853 × 10−5
C-M
2.012 × 10−7
9.048 × 10−8
As observed in Figure 11, both the C-M and the perfect S model exhibit superior position and orientation accuracy compared to other error models. However, when comparing the mean errors between those two error models, it becomes apparent that the C-M model is closer to the true values and has a significant advantage over the perfect S model with a two-order magnitude difference. Furthermore, the inverse-kinematic error models considering deviation of base frame and platform frame have the same accuracy so as the G-C model. However, the G-C model offers a more stable residual deviation. The improvement of accuracy before and after identification based on the Inv-9 model is relatively small, highlighting the significance of considering the deviation of the base frame. Generally, the error model with more geometric parameters can greatly improve the accuracy relative to the inverse-kinematic error models.

4.3.2 Influence of S Joint

In this part, the influence of the S joint in the error model is verified through two simulations. The first simulation involves comparing the C-M model and the perfect S model, while the second simulation compares the Inv-7, Inv-21, and Inv-27 models. Additionally, to further evaluate the models, a set of measurements with random noises is also automatically generated for comparison. The noises follow a random normal distribution within [− 0.0002, 0.0002] m, rad. The results are presented in Figures 12 and 13.
In Figure 12, the perfect S assumption in the complete-minimal error model introduces errors of approximately 1.5 × 10−4 m. Similarly, this characteristic is also evident in Figure 13. However, the residual error caused by the perfect S assumption would be at a small level relative to the measurement noise. Compare with the two images in Figure 13, the small noises in measurement can be easily disregarded, especially considering the larger residual errors.

4.3.3 Influence of Noise Uncertainty

To further investigate the impact of noise uncertainty and compare the stability of the different error models, two additional sets of random noises are applied to the measurement data for identification. The first set follows a random normal distribution within [− 0.002, 0.002] m, rad, while the second set follows a distribution with [− 0.02, 0.02] m, rad. The results are presented in Figures 14 and 15. Meanwhile, all the mean residual errors of different error models are summarized in Table 2.
Table 2
Position accuracy before and after kinematic calibration
 
Without noise
With random noise between [−0.0002, 0.0002]
 
Position (m)
Orientation (rad)
Position (m)
Orientation (rad)
Before
0.0127
0.0333
0.0128
0.0333
Inv-9
0.0121
0.0287
0.0122
0.0285
Inv-21
0.0029
0.0014
0.0029
0.0014
Inv-27
0.0029
0.0014
0.0029
0.0014
G-C
0.0027
0.0047
0.0027
0.0047
Perfect S
1.010×10−5
2.853×10−5
9.700×10−5
1.033×10−4
C-M
2.012×10−7
9.048×10−8
9.740×10−5
1.059×10−4
 
With random noise between [−0.02, 0.02]
With random noise between [−0.2, 0.2]
Position (m)
Orientation (rad)
Position (m)
Orientation (rad)
Before
0.0135
0.0330
0.0273
0.0363
Inv-9
0.0129
0.0129
0.0249
0.0270
Inv-21
0.0029
0.0029
0.0098
0.0017
Inv-27
0.0029
0.0029
0.0098
0.0017
G-C
0.0027
0.0027
0.0192
0.0042
Perfect S
9.962×10−4
9.458×10−4
0.0098
0.0098
C-M
9.459×10−4
9.495×10−4
0.0098
0.0095
Based on the analysis of Figures 13 and 14, it can be concluded that the inverse-kinematic error models exhibit stable performance in identifying the geometric error model. The simulations with different noise levels get a unanimous conclusion that the parameters error in the S joint wouldn’t affect the accuracy very much. This conclusion is also reinforced by the observations made in Figures 12 and 15. In addition to accuracy, it is noteworthy that all the error models demonstrate good stability during the identification. This indicates that the models are robust and capable of maintaining consistent performance even in the presence of noise or uncertainties.

4.3.4 Sensitivity Analysis

In order to illustrate the reason for accuracy improvement, the sensitivity analysis is proposed to present the in-depth relationship between the parameter deviation with end-effector’s error. Sensitivity indices in Refs. [40, 41] are utilized for comparison.
Firstly, the relationship between the parameter deviations and the end's deviation is
$$\updelta {\varvec{e}}_{E}^{k} = {\varvec{J}}_{E}^{k}\updelta {\varvec{p}}, \, {\varvec{J}}_{E}^{k} = \left[ {\begin{array}{*{20}l} {{\varvec{J}}_{\Phi }^{k} } \\ {{\varvec{J}}_{P}^{k} } \\ \end{array} } \right],$$
(50)
where \(\updelta {\varvec{e}}_{E}^{k}\) and \(\updelta {\varvec{p}}\) represent the end's deviation the parameter deviations, respectively. \({\varvec{J}}_{E}^{k}\) is the Jacobian matrix. \({\varvec{J}}_{\Phi }^{k}\) and \({\varvec{J}}_{P}^{k}\) are the orientation part and position part, whose specific expressions can be found in Ref. [40].
It contains the position part and the orientation part in the Jacobian matrix. The sensitivity analysis presents the proportion of the influence of a specific geometric parameter to the end in the workspace. It is a statistical index. Consequently, the single value and the total value of parameters are
$$\left\{ \begin{gathered} \mu _{{P_{j} }}^{k} = \sqrt {J{_{{P_{{j,x}} }}^{k}} ^{2} + J{_{{P_{{j,y}} }}^{k}} ^{2} + J{_{{P_{{j,z}} }}^{k}} ^{2} } , \hfill \\ \mu _{{\Phi _{j} }}^{k} = \sqrt {J{_{{\Phi _{{j,x}} }}^{k}} ^{2} + J{_{{\Phi _{{j,y}} }}^{k}} ^{2} + J{_{{\Phi _{{j,z}} }}^{k}} ^{2} } , \hfill \\ \end{gathered} \right.$$
(51)
$$\mu_{{P_{j} }} = \left( {\sum\limits_{k = 1}^{n} {\mu_{{P_{j} }}^{k} } } \right)/n,\;\;\;{\kern 1pt} \mu_{{\Phi_{j} }} = \left( {\sum\limits_{k = 1}^{n} {\mu_{{\Phi_{j} }}^{k} } } \right)/n.$$
(52)
Compared to the other two error models, the sensitivity indices for the G-C error model are disregarded for the unintuitiveness of some virtual parameters.
Based on Eqs. (51) and (52), the results are presented in Figures 16, 17, 18, 19. It is important to note that the sensitivity index is defined in a workspace of cubic input space.
From the analysis of Figures 16 and 17, the maximum sensitivity index for the end-effector’s position error to the kinematic parameter is 1.65, and the transformation deviations of gi,5, (i = 1, 2, 3) have the greatest impact, as well as the orientation error. This is due to the fact that errors in the position and orientation of the joint frames in the moving platform directly affect the whole mechanism. On the other hand, the rest kinematic parameter has a relatively even impact on the accuracy of the end. It is worth noting that the inverse error model ignores many parameters in coordinate transformation, while the complete-minimal error model, which includes complete kinematic parameters, can greatly improve accuracy. Meanwhile, Figure 16 reveals that the parameters in the S joint have little influence on the end, whereas deviations in the platform have a substantial impact.
Meanwhile, according to Figures 18 and 19, the orientation errors of base frame and platform frame have no efforts on the position accuracy of the end-effector. Correspondingly, the position errors of the platform have no efforts on the orientation accuracy of the end-effector. Therefore, the deviations of three lengths of the actuator play the most important role in both position and orientation accuracy. The position of R joint in limb 3 has the relative large influence either.

4.3.5 Remarks

Based on the foregoing simulations, the following remarks are provided:
1)
In general, the best accuracy is achieved when using an error model with complete parameters. The improvement in accuracy is significant, with at least a twofold increase compared to the traditional inverse-kinematic error model.
 
2)
The stability of identification for all error models remains good even when subjected to different levels of measurement noises, even when the error magnitude reaches tens of millimeters.
 
3)
The influence of the S joint should be considered from two perspectives. When high accuracy requirements are essential, the S joint should not be disregarded, as its error can lead to a significant decrease in end accuracy compared to the error model with complete parameters. However, for those application scenarios with slightly lower accuracy requirements, the ideal S joint may be a better choice for its easily modeling process. Furthermore, the presence of measurement noise reduces the impact of the S joint’s error.
 
4)
The error model with more parameters exhibits a more balanced sensitivity to end’s error. This characteristic accounts for the limited influence of S joint in the error model. The impact of ignored parameters can be effectively mitigated by the inclusion of other parameters, resulting in an averaging effect.
 
5)
In terms of the number of modeling equations, matrices and variables involved, the geometric-constraint error model is relatively simpler. However, the application of the geometric error model should be evaluated on a case-by-case basis, particularly for mechanisms with special geometric characters. Conversely, the complete-minimal error model is the most complex one. Therefore, it can be serve as a general method that can be an easily extended to other parallel mechanism.
 

5 Calibration Experiment

In this section, a calibration experiment is conducted to validate the effectiveness of the proposed calibration method and evaluate the positioning accuracy of the studied parallel manipulator, shown as the prototype in Figure 20. Kinematic calibrations using the inverse-kinematic error model, the geometric-constraint error model, and the complete-minimal error model are exerted successively. A comprehensive comparison of the calibration results obtained through those three methods is then conducted.

5.1 Experiment Conditions and Measurement Method

The experiment setup is depicted in Figure 20. A laser tracker (Leica AT901-LR) and a six-dimensional measuring accessory (T-Mac) are used to measure the pose of {T}. The corresponding parameters of measurement uncertainty is ± 10 μm + 5 μm/m in three-dimensional space with 2.5 m × 5 m × 10 m volume. In Figure 20, four points denoted by Pi (i = 1−4) at the corners of the first joint are measured by the spherically mounted retroreflectors (SMR) to establish frame {S}. T-Mac is connected to the end of the spindle with its z axis coinciding with the spindle axis to ensure the spindle axis’s direction can be accurately measured. Besides, {LT} is the measuring-coordinate system of the laser tracker, and all data are measured with respect to this frame during the experiment.
In this paper, the parallel part is adopted to explore the merits of different error models. Therefore, the serial part should be locked to avoid influencing the movement of the parallel mechanism. Since the pose of the moving platform cannot be measured directly, a virtual frame {M} is established to ensure that the identified parameters are not too far from their nominal values. In this paper, {M} is established by a constant transformation from {T}, and the transformation parameter is determined based on the nominal values of the machine tool when all the actuators are at their zero positions. Because of the same number of independent parameters, the calibration results would not be affected by the transformation compared to the error model in Section 3. To obtain sufficient data for parameter identification, a total of 100 randomly selected configurations within the workspace of the parallel mechanism are measured. Among these configurations, 70 of them are used for identification, while the remaining configurations are reserved for evaluation.

5.2 Identification of the Parameters and Evaluation of the Results

In Section 4.2, the identification process is conducted using the three error models proposed in this paper. The process of the iterative computation for the parallel manipulator is illustrated in Figures 8, 9, 10 for each method. The different results of mean residual position and orientation errors are presented in Figure 21 based on the inverse-kinematic error model and the complete-minimal error model.
From the results, it can be observed that both the residual position and orientation errors converge to stable values after about eight iterations. The complete-minimal error model presents better performance in descent velocity. The residual position and orientation errors have been reduced to about 0.0581 mm and 8.88 × 10−5 rad, respectively. In contrast, the corresponding errors are approximately 0.336 mm and 3.314 × 10−4 rad based on the inverse kinematic error model. These results indicate that the complete-minimal error model provides better identification accuracy. In order to explore the in-depth reason, the kinematic parameters based on those two methods are discussed below.
The G-C error model has different optimization objective and can be analyzed separately in terms of the iteration process. The ordinate in Figure 22 represents the defined dimensionless parameter of each limb. The three limbs can be identified individually. There are about six steps to reach the stable values, which have the same convergence speed as the C-M error model. After identification using the experimental measurements, the geometric parameters of the G-C model are presented in Table 3.
Table 3
Identified kinematic parameters based on G-C
Limb
Values
ri (m)
li (m)
ρi (m)
Υi (rad)
ci
#1
Nominal
\(\left[ {\begin{array}{*{20}l} {0.0000} \\ { - 0.4000} \\ {0.0000} \\ \end{array} } \right]\)
0.7900
\(\left[ {\begin{array}{*{20}l} {0.0000} \\ { - 0.2500} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}l} {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
0.0000
Identified
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 0.4001} \\ {0.0000} \\ \end{array} } \right]\)
0.7917
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 0.2502} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 0.0067} \\ { - 0.0033} \\ \end{array} } \right]\)
0.0041
#2
Nominal
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 0.4000} \\ {0.0000} \\ \end{array} } \right]\)
0.7900
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.2500} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
0.0000
Identified
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 0.4000} \\ {0.0000} \\ \end{array} } \right]\)
0.7859
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.2502} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 0.0018} \\ {0.0002} \\ \end{array} } \right]\)
0.0016
#3
Nominal
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 0.4000} \\ {0.0000} \\ \end{array} } \right]\)
0.7200
\(\left[ {\begin{array}{*{20}c} {0.2500} \\ {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
0.0000
Identified
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 0.4000} \\ {0.0000} \\ \end{array} } \right]\)
0.7171
\(\left[ {\begin{array}{*{20}c} {0.2536} \\ { - 0.0004} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 0.0054} \\ {0.0035} \\ \end{array} } \right]\)
−0.0024
The nominal and identified parameters are both listed in Table 4 based on the inverse-kinematic error model. Those kinematic parameters mainly contain the position deviation of S or R joints, the initial length deviation of P joints, and coordination system deviations between the fixed one and the moving one. The magnitude of position error obtained from measurements is about 10 mm, and the maximum length error reaches 5.8 mm in limb 1. Considering the measurement method for the moving platform, the relatively large errors presented by tp seem to be reasonable. Consequently, the initial mean position error is 12.6 mm.
Table 4
Identified kinematic parameters based on Inv-21
Values
αb, βb, γb (rad)
tb (m)
αp, βp, γp (rad)
υi (rad)
Nominal
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {0.0000} \\ {0.0000} \\ \end{array} } \right]\)
Identified
\(\left[ {\begin{array}{*{20}c} { - 0.0012} \\ {0.0092} \\ { - 0.0296} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 0.0003} \\ {0.0007} \\ { - 0.0009} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0005} \\ { - 0.1375} \\ { - 0.1410} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 0.0109} \\ {0.0091} \\ {0.0070} \\ \end{array} } \right]\)
Limb
Values
ρAi (m)
ρBi (m)
li (m)
#1
Nominal
0.4000
0.2500
0.7920
Identified
0.3981
0.2505
0.7868
#2
Nominal
0.4000
0.2500
0.7860
Identified
0.4013
0.2505
0.7877
#3
Nominal
0.4000
0.2500
0.7090
Identified
0.4010
0.2505
0.7122
Furthermore, the total kinematic parameters identified based on the complete-minimal error model are presented in Table 5, where the corresponding nominal parameters are also listed for comparison. After comparing the identified values with nominal values, small orientation and position deviations exist in S joints for all limbs, which is different from the method based on the inverse-kinematic error model. Additionally, the redundant parameters must be eliminated to settle the rank-deficient problem in the identification matrix for identification stability. Otherwise, the error model with 108 parameters cannot be identified successively.
Table 5
Identified kinematic parameters based on the C-M model
 
Limb 1
Limb 2
Limb 3
Nominal
Identified
Nominal
Identified
Nominal
Identified
pi,0
\(\left[ {\begin{array}{*{20}c} {1.5708} \\ 0 \\ 0 \\ 0 \\ { - 0.3142} \\ {0.3142} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5480} \\ {0.0109} \\ {0.0089} \\ { - 0.0140} \\ { - 0.3179} \\ {0.3093} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5708} \\ 0 \\ 0 \\ 0 \\ { - 0.3142} \\ {0.3142} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.5707} \\ {0.0024} \\ { - 0.0038} \\ {0.0101} \\ {0.3139} \\ {0.3139} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.2092} \\ {1.2092} \\ {1.2092} \\ { - 0.1841} \\ {0.1841} \\ { - 0.1182} \\ \end{array} } \right]\)
pi,1
\(\left[ {\begin{array}{*{20}c} 0 \\ { - 1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 1.5830} \\ {0.0000} \\ {0.0026} \\ {0.0011} \\ { - 0.0037} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} 0 \\ {1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ {1.5671} \\ {0.0000} \\ { - 0.0041} \\ { - 0.0024} \\ { - 0.0046} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5714} \\ {0.0000} \\ {0.0000} \\ {0.0024} \\ {0.0058} \\ {0.0000} \\ \end{array} } \right]\)
pi,2
\(\left[ {\begin{array}{*{20}c} { - 1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.5774} \\ { - 0.0002} \\ {0.0001} \\ {0.0648} \\ {0.0031} \\ { - 0.0033} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5701} \\ {0.0000} \\ {0.0000} \\ {0.0095} \\ { - 0.0036} \\ { - 0.0051} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0029} \\ { - 0.0004} \\ {0.0000} \\ {0.0024} \\ {0.0045} \\ { - 0.0046} \\ \end{array} } \right]\)
pi,3
\(\left[ {\begin{array}{*{20}c} 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0424} \\ { - 0.0006} \\ {0.0000} \\ { - 0.0354} \\ {0.0004} \\ { - 0.0002} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0432} \\ { - 0.0001} \\ {0.0000} \\ { - 0.0075} \\ {0.0091} \\ { - 0.0011} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.5708} \\ {0.0000} \\ {0.0000} \\ { - 0.0095} \\ { - 0.0042} \\ { - 0.0101} \\ \end{array} } \right]\)
pi,4
\(\left[ {\begin{array}{*{20}c} {1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.5742} \\ {0.0000} \\ {0.0000} \\ { - 0.0354} \\ { - 0.0002} \\ { - 0.0004} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.5678} \\ {0.0000} \\ {0.0000} \\ {0.0075} \\ { - 0.0065} \\ {0.0050} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} 0 \\ { - 1.5708} \\ 0 \\ 0 \\ 0 \\ 0 \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {0.0000} \\ { - 1.5685} \\ {0.0000} \\ { - 0.0088} \\ { - 0.0182} \\ { - 0.0055} \\ \end{array} } \right]\)
pi,5
\(\left[ {\begin{array}{*{20}c} { - 1.2092} \\ {1.2092} \\ {1.2092} \\ { - 0.1841} \\ {0.1841} \\ { - 0.1182} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} { - 1.3147} \\ {1.3141} \\ {1.1665} \\ { - 0.1851} \\ {0.1628} \\ { - 0.1334} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.2092} \\ { - 1.2092} \\ {1.2092} \\ {0.1841} \\ { - 0.1841} \\ { - 0.1182} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.0925} \\ { - 1.1242} \\ {1.2709} \\ {0.1968} \\ { - 0.1891} \\ { - 0.1153} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.2092} \\ {1.2092} \\ { - 1.2092} \\ { - 0.1841} \\ {0.1841} \\ {0.1182} \\ \end{array} } \right]\)
\(\left[ {\begin{array}{*{20}c} {1.2148} \\ {1.2247} \\ { - 1.2103} \\ { - 0.2059} \\ {0.1447} \\ {0.1487} \\ \end{array} } \right]\)
Then, to evaluate the identification results, another 30 evaluative configurations are chosen for further verification. The deviations between the predicted pose and the measurements can be found in Figure 23. Those figures dedicate that the calibration method based on the complete-minimal error model presents a better result than the method based on the inverse-kinematic error model, just like the iteration process. Both the position and orientation accuracy have a significant improvement after calibration, which can verify effectiveness of the complete-minimal calibration method. The mean positioning and orientation accuracy of the parallel mechanism can reach about 0.0508 mm and 8.77 × 10−5 rad based on the complete-minimal error model, and simultaneously, the accuracy based on the inverse-kinematic error model is about 0.376 mm and 4.33 × 10−4 rad. The improvement of the position and orientation accuracy is probably about 86.5% and 87.7%.
Meanwhile, the position and orientation errors of evaluation configurations are presented in Figure 23. The results demonstrate that the 30 parameters’ error model based on special geometric constraints can improve the accuracy by releasing some strict constraints. However, its accuracy is still inferior to the complete-minimal error model with 60 parameters. If more geometric parameters are considered in the error model, the final accuracy can be close to the complete one. This further confirms the effectiveness and efficiency of the complete-minimal error model. On the other hand, error modeling based on inverse kinematic usually cannot consider complete kinematic parameters, and this modeling method for specific institutions with specific analysis is inconvenient and error-prone.

5.3 Further Conclusions Obtained by Experiment

1)
In practice, the complete-minimal error model can approach the measurements by nearly 90% compared with the inverse-kinematic error model. The complete-minimal error model should be chosen for those applications with high accuracy requirements.
 
2)
Both the complete-minimal error model and geometric-constraint error model exhibit fast convergence in the iterative process. In contrast, the inverse-kinematic error model has no advantage in both calibration accuracy and identification speed.
 
3)
The deviations of the base frame and platform frame are significant for all three error modeling methods. Combining the influence analysis in simulation, the error model must contain those errors for identification. Thus, the measurement method can be diversified for calibration, even for a large offset.
 
4)
Comparing the mean values between the calibration points and evaluation points, the accuracy has slightly deteriorated for all error models. Consequently, the calibration results cannot be treated as final accuracy. However, more configurations can reduce the differences between them.
 

6 Conclusions

In this paper, kinematic parameters for a 3-DOF 2SPR-RPS parallel manipulator are calibrated successively. The calibration of the parallel mechanism is constructed using three different methods: (1) Error modeling based on inverse kinematics; (2) error modeling based on special geometric constraints; (3) error modeling based on the POE method meeting the characteristics of completeness, continuity, and minimality. The detailed derivations of the error models are presented and simulations are conducted to compare the disadvantages and advantages.
The simulations show that: (1) The complete-minimal error model parameters exhibit the best accuracy among the three methods. (2) All error models demonstrate good identification stability when subjected to different levels of measurement noise. (3) The influence of the S joint should be considered based on the specific accuracy requirements of the application. For high accuracy requirements, the S joint should not be ignored, while for those application scenarios with slightly lower accuracy requirements, the ideal S joint may be a better choice due to its simpler modeling process. (4) Error model with more parameters exhibit a more balanced sensitivity toward the end’s error. (5) Compared with the number of modeling equations and matrices and variables to be sought, the geometric-constraint error model stands out as the simplest one.
Additionally, experiments on a prototype of the parallel mechanism are conducted. The results show that the complete-minimal error model presents better performance in both position and orientation accuracy. Comparisons between the Inv-21 model and the C-M model on mean position and orientation residual after identification are from 0.336 mm to 0.0581 mm and from 3.36 × 10−4 rad to 8.88 × 10−4 rad. After modifying the kinematic parameters by identified ones, the mean position and orientation errors of the moving platform can be reached at about 0.0508 mm and 8.77 × 10−5 rad using the complete-minimal error model, which indicated the effectiveness and efficiency of the complete-minimal error model method comparing to traditional inverse-kinematic error model. It turns out that an error model which contains all geometric parameters is necessary and worthy for accuracy improvement in the kinematic calibration of the parallel manipulators.

Acknowledgments

Not applicable.

Declarations

Competing Interests

The authors declare no competing financial interests.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://​creativecommons.​org/​licenses/​by/​4.​0/​.
Literatur
[1]
Zurück zum Zitat A Joubair, L F Zhao, P Bigras, et al. Absolute accuracy analysis and improvement of a hybrid 6-DOF medical robot. Industrial Robot: An International Journal, 2015, 42(1): 44–53.CrossRef A Joubair, L F Zhao, P Bigras, et al. Absolute accuracy analysis and improvement of a hybrid 6-DOF medical robot. Industrial Robot: An International Journal, 2015, 42(1): 44–53.CrossRef
[2]
Zurück zum Zitat T Huang, P Bai, J Mei, et al. Tolerance design and kinematic calibration of a four-degrees-of-freedom pick-and-place parallel robot. Journal of Mechanisms and Robotics, 2016, 8(6): 061018.CrossRef T Huang, P Bai, J Mei, et al. Tolerance design and kinematic calibration of a four-degrees-of-freedom pick-and-place parallel robot. Journal of Mechanisms and Robotics, 2016, 8(6): 061018.CrossRef
[3]
Zurück zum Zitat T Huang, C L Dong, H T Liu, et al. A simple and visually orientated approach for type synthesis of overconstrained 1T2R parallel mechanisms. Robotica, 2019, 37(7): 1161–1173.CrossRef T Huang, C L Dong, H T Liu, et al. A simple and visually orientated approach for type synthesis of overconstrained 1T2R parallel mechanisms. Robotica, 2019, 37(7): 1161–1173.CrossRef
[4]
Zurück zum Zitat L M Xu, X X Chai, Q C Li, et al. Design and experimental investigation of a new 2R1T overconstrained parallel kinematic machine with actuation redundancy. Journal of Mechanisms and Robotics, 2019, 11(3): 031016.CrossRef L M Xu, X X Chai, Q C Li, et al. Design and experimental investigation of a new 2R1T overconstrained parallel kinematic machine with actuation redundancy. Journal of Mechanisms and Robotics, 2019, 11(3): 031016.CrossRef
[5]
Zurück zum Zitat J F Wu, R Zhang, R H Wang, et al. A systematic optimization approach for the calibration of parallel kinematics machine tools by a laser tracker. International Journal of Machine Tools and Manufacture, 2014, 86: 1–11.CrossRef J F Wu, R Zhang, R H Wang, et al. A systematic optimization approach for the calibration of parallel kinematics machine tools by a laser tracker. International Journal of Machine Tools and Manufacture, 2014, 86: 1–11.CrossRef
[6]
Zurück zum Zitat M Li, T Huang, J P Mei, et al. Dynamic formulation and performance comparison of the 3-DOF modules of two reconfigurable PKM—the tricept and the trivariant. Journal of Mechanisms and Robotics, 2005, 127(6): 1129–1136. M Li, T Huang, J P Mei, et al. Dynamic formulation and performance comparison of the 3-DOF modules of two reconfigurable PKM—the tricept and the trivariant. Journal of Mechanisms and Robotics, 2005, 127(6): 1129–1136.
[7]
Zurück zum Zitat M Weck, D Staimer. Parallel kinematic machine tools–current state and future potentials. CIRP Annals, 2002, 51(2): 671–683.CrossRef M Weck, D Staimer. Parallel kinematic machine tools–current state and future potentials. CIRP Annals, 2002, 51(2): 671–683.CrossRef
[8]
Zurück zum Zitat Z Pandilov, V Dukovski. Parallel kinematics machine tools: Overview-from history to the future. Annals of the Faculty of Engineering Hunedoara, 2012, 10(2): 111. Z Pandilov, V Dukovski. Parallel kinematics machine tools: Overview-from history to the future. Annals of the Faculty of Engineering Hunedoara, 2012, 10(2): 111.
[9]
Zurück zum Zitat S H H Zargarbashi, J R R Mayer. Single setup estimation of a five-axis machine tool eight link errors by programmed end point constraint and on the fly measurement with Capball sensor. International Journal of Machine Tools and Manufacture, 2009, 49(10): 759–766.CrossRef S H H Zargarbashi, J R R Mayer. Single setup estimation of a five-axis machine tool eight link errors by programmed end point constraint and on the fly measurement with Capball sensor. International Journal of Machine Tools and Manufacture, 2009, 49(10): 759–766.CrossRef
[10]
Zurück zum Zitat B W Mooring, Z S Roth, M R Driels. Fundamentals of manipulator calibration. New York: Wiley-Interscience, 1991. B W Mooring, Z S Roth, M R Driels. Fundamentals of manipulator calibration. New York: Wiley-Interscience, 1991.
[11]
Zurück zum Zitat J Zhang, Q Chen, C Wu, et al. Kinematic calibration of a 2-DOF translational parallel manipulator. Advanced Robotics, 2014, 28(10): 707–714.CrossRef J Zhang, Q Chen, C Wu, et al. Kinematic calibration of a 2-DOF translational parallel manipulator. Advanced Robotics, 2014, 28(10): 707–714.CrossRef
[12]
Zurück zum Zitat Y Wang, H Wu, H Handroos. Accuracy improvement of a hybrid robot for ITER application using POE modeling method. Fusion Engineering and Design, 2013, 88(9–10): 1877–1880.CrossRef Y Wang, H Wu, H Handroos. Accuracy improvement of a hybrid robot for ITER application using POE modeling method. Fusion Engineering and Design, 2013, 88(9–10): 1877–1880.CrossRef
[13]
Zurück zum Zitat M Verner, F Xi, C Mechefske. Optimal calibration of parallel kinematic machines. Journal of Mechanical Design, 2005, 127(1): 62–69.CrossRef M Verner, F Xi, C Mechefske. Optimal calibration of parallel kinematic machines. Journal of Mechanical Design, 2005, 127(1): 62–69.CrossRef
[14]
Zurück zum Zitat J M Hollerbach, D M Lokhorst. Closed-loop kinematic calibration of the RSI 6-DOF hand controller. IEEE Transactions on Robotics and Automation, 1995, 11(3): 352–359.CrossRef J M Hollerbach, D M Lokhorst. Closed-loop kinematic calibration of the RSI 6-DOF hand controller. IEEE Transactions on Robotics and Automation, 1995, 11(3): 352–359.CrossRef
[15]
Zurück zum Zitat C W Wampler, J M Hollerbach, T Arai. An implicit loop method for kinematic calibration and its application to closed-chain mechanisms. IEEE Transactions on Robotics and Automation, 1995, 11(5): 710–724.CrossRef C W Wampler, J M Hollerbach, T Arai. An implicit loop method for kinematic calibration and its application to closed-chain mechanisms. IEEE Transactions on Robotics and Automation, 1995, 11(5): 710–724.CrossRef
[16]
Zurück zum Zitat H Chanal, E Duc, P Ray, et al. A new approach for the geometrical calibration of parallel kinematics machines tools based on the machining of a dedicated part. International Journal of Machine Tools and Manufacture, 2007, 47(7–8): 1151–1163.CrossRef H Chanal, E Duc, P Ray, et al. A new approach for the geometrical calibration of parallel kinematics machines tools based on the machining of a dedicated part. International Journal of Machine Tools and Manufacture, 2007, 47(7–8): 1151–1163.CrossRef
[17]
Zurück zum Zitat M Nategh, M Agheli. A total solution to kinematic calibration of hexapod machine tools with a minimum number of measurement configurations and superior accuracies. International Journal of Machine Tools and Manufacture, 2009, 49(15): 1155–1164.CrossRef M Nategh, M Agheli. A total solution to kinematic calibration of hexapod machine tools with a minimum number of measurement configurations and superior accuracies. International Journal of Machine Tools and Manufacture, 2009, 49(15): 1155–1164.CrossRef
[18]
Zurück zum Zitat H Wang, K C Fan. Identification of strut and assembly errors of a 3-PRS serial–parallel machine tool. International Journal of Machine Tools and Manufacture, 2004, 44 (11): 1171–1178.CrossRef H Wang, K C Fan. Identification of strut and assembly errors of a 3-PRS serial–parallel machine tool. International Journal of Machine Tools and Manufacture, 2004, 44 (11): 1171–1178.CrossRef
[19]
Zurück zum Zitat X Tang, J Wang, M Gao. Kinematic calibration of gantry hybrid machine tool based on estimation error and local measurement information. The International Journal of Advanced Manufacturing Technology, 2005, 26(4): 382–390.CrossRef X Tang, J Wang, M Gao. Kinematic calibration of gantry hybrid machine tool based on estimation error and local measurement information. The International Journal of Advanced Manufacturing Technology, 2005, 26(4): 382–390.CrossRef
[20]
Zurück zum Zitat K C Fan, H Wang, J W Zhao, et al. Sensitivity analysis of the 3-PRS parallel kinematic spindle platform of a serial-parallel machine tool. International Journal of Machine Tools and Manufacture, 2003, 43(15): 1561–1569.CrossRef K C Fan, H Wang, J W Zhao, et al. Sensitivity analysis of the 3-PRS parallel kinematic spindle platform of a serial-parallel machine tool. International Journal of Machine Tools and Manufacture, 2003, 43(15): 1561–1569.CrossRef
[21]
Zurück zum Zitat P Huang, J Wang, L Wang, et al. Kinematical calibration of a hybrid machine tool with regularization method. International Journal of Machine Tools and Manufacture, 2001, 51(3): 210–220.CrossRef P Huang, J Wang, L Wang, et al. Kinematical calibration of a hybrid machine tool with regularization method. International Journal of Machine Tools and Manufacture, 2001, 51(3): 210–220.CrossRef
[22]
Zurück zum Zitat J Feng, F Gao, X Zhao. Calibration of a six-DOF parallel manipulator for chromosome dissection. Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, 2012, 226(4): 1084–1096. J Feng, F Gao, X Zhao. Calibration of a six-DOF parallel manipulator for chromosome dissection. Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, 2012, 226(4): 1084–1096.
[23]
Zurück zum Zitat P Maurine, E Dombre. A calibration procedure for the parallel robot Delta 4. Proceedings of IEEE International Conference on Robotics and Automation. IEEE, 1996, 2: 975–980. P Maurine, E Dombre. A calibration procedure for the parallel robot Delta 4. Proceedings of IEEE International Conference on Robotics and Automation. IEEE, 1996, 2: 975–980.
[24]
Zurück zum Zitat D Daney. Kinematic calibration of the Gough platform. Robotica, 2003, 21(6): 677–690.CrossRef D Daney. Kinematic calibration of the Gough platform. Robotica, 2003, 21(6): 677–690.CrossRef
[25]
Zurück zum Zitat J Wang, O Masory. On the accuracy of a Stewart platform. I. The effect of manufacturing tolerances. Proceedings IEEE International Conference on Robotics and Automation, IEEE, 1993: 114–120. J Wang, O Masory. On the accuracy of a Stewart platform. I. The effect of manufacturing tolerances. Proceedings IEEE International Conference on Robotics and Automation, IEEE, 1993: 114–120.
[26]
Zurück zum Zitat O Masory, J Wang, H Zhuang. On the accuracy of a Stewart platform. II. Kinematic calibration and compensation. Proceedings IEEE International Conference on Robotics and Automation, IEEE, 1993: 725–731. O Masory, J Wang, H Zhuang. On the accuracy of a Stewart platform. II. Kinematic calibration and compensation. Proceedings IEEE International Conference on Robotics and Automation, IEEE, 1993: 725–731.
[27]
Zurück zum Zitat H T Liu, T Huang, D G Chetwynd. A general approach for geometric error modeling of lower mobility parallel manipulators. Journal of Mechanisms and Robotics, 2011, 3(2): 021013.CrossRef H T Liu, T Huang, D G Chetwynd. A general approach for geometric error modeling of lower mobility parallel manipulators. Journal of Mechanisms and Robotics, 2011, 3(2): 021013.CrossRef
[28]
Zurück zum Zitat J Meng, D J Zhang, Z X Li. Accuracy analysis of parallel manipulators with joint clearance. Journal of Mechanical Design, 2009, 131(1): 011013.CrossRef J Meng, D J Zhang, Z X Li. Accuracy analysis of parallel manipulators with joint clearance. Journal of Mechanical Design, 2009, 131(1): 011013.CrossRef
[29]
Zurück zum Zitat L Y Kong, G L Chen, H Wang, et al. An experimental comparison for the accuracy improvement of a 6-PSS parallel manipulator by choosing different sets of measurement data. International Conference on Intelligent Robotics and Applications. Springer, Cham, 2015: 173–184. L Y Kong, G L Chen, H Wang, et al. An experimental comparison for the accuracy improvement of a 6-PSS parallel manipulator by choosing different sets of measurement data. International Conference on Intelligent Robotics and Applications. Springer, Cham, 2015: 173–184.
[30]
Zurück zum Zitat G L Chen, L Y Kong, Q C Li, et al. A simple two-step geometric approach for the kinematic calibration of the 3-PRS parallel manipulator. Robotica, 2019, 37(5): 837–850.CrossRef G L Chen, L Y Kong, Q C Li, et al. A simple two-step geometric approach for the kinematic calibration of the 3-PRS parallel manipulator. Robotica, 2019, 37(5): 837–850.CrossRef
[31]
Zurück zum Zitat L Y Kong, G L Chen, Z Zhang, et al. Kinematic calibration and investigation of the influence of universal joint errors on accuracy improvement for a 3-DOF parallel manipulator. Robotics and Computer-Integrated Manufacturing, 2018, 49: 388–397.CrossRef L Y Kong, G L Chen, Z Zhang, et al. Kinematic calibration and investigation of the influence of universal joint errors on accuracy improvement for a 3-DOF parallel manipulator. Robotics and Computer-Integrated Manufacturing, 2018, 49: 388–397.CrossRef
[32]
Zurück zum Zitat G L Chen, L Y Kong, Q C Li, et al. Complete, minimal and continuous error models for the kinematic calibration of parallel manipulators based on POE formula. Mechanism and Machine Theory, 2018, 121: 844–856.CrossRef G L Chen, L Y Kong, Q C Li, et al. Complete, minimal and continuous error models for the kinematic calibration of parallel manipulators based on POE formula. Mechanism and Machine Theory, 2018, 121: 844–856.CrossRef
[33]
Zurück zum Zitat L Y Kong, G L Chen, Z Zhang, et al. Complete, minimal and continuous kinematic error models of perfect multi-DOF joints for parallel manipulators. International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, American Society of Mechanical Engineers, 2020: 83990. L Y Kong, G L Chen, Z Zhang, et al. Complete, minimal and continuous kinematic error models of perfect multi-DOF joints for parallel manipulators. International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, American Society of Mechanical Engineers, 2020: 83990.
[34]
Zurück zum Zitat K Schröer, S L Albright, M Grethlein. Complete, minimal and model-continuous kinematic models for robot calibration. Robotics and Computer-Integrated Manufacturing, 1997, 13(1): 73–85.CrossRef K Schröer, S L Albright, M Grethlein. Complete, minimal and model-continuous kinematic models for robot calibration. Robotics and Computer-Integrated Manufacturing, 1997, 13(1): 73–85.CrossRef
[35]
Zurück zum Zitat Q C Li, J M Herve. Type synthesis of 3-DOF RPR-equivalent parallel mechanisms. IEEE Transactions on Robotics, 2014, 30(6): 1333–1343.CrossRef Q C Li, J M Herve. Type synthesis of 3-DOF RPR-equivalent parallel mechanisms. IEEE Transactions on Robotics, 2014, 30(6): 1333–1343.CrossRef
[36]
Zurück zum Zitat L He, Q C Li, X Zhu, et al. Kinematic calibration of a three degrees-of-freedom parallel manipulator with a laser tracker. Journal of Dynamic Systems, Measurement, and Control, 2019, 141(3): 031009.CrossRef L He, Q C Li, X Zhu, et al. Kinematic calibration of a three degrees-of-freedom parallel manipulator with a laser tracker. Journal of Dynamic Systems, Measurement, and Control, 2019, 141(3): 031009.CrossRef
[37]
Zurück zum Zitat G L Chen, H Wang, Z Q Lin. Determination of the identifiable parameters in robot calibration based on the POE formula. IEEE Transactions on Robotics, 2014, 30(5): 1066–1077.CrossRef G L Chen, H Wang, Z Q Lin. Determination of the identifiable parameters in robot calibration based on the POE formula. IEEE Transactions on Robotics, 2014, 30(5): 1066–1077.CrossRef
[38]
Zurück zum Zitat L Y Kong, G L Chen, H Wang, et al. Kinematic calibration of a 3-PRRU parallel manipulator based on the complete, minimal and continuous error model. Robotics and Computer-Integrated Manufacturing, 2021, 71: 102158.CrossRef L Y Kong, G L Chen, H Wang, et al. Kinematic calibration of a 3-PRRU parallel manipulator based on the complete, minimal and continuous error model. Robotics and Computer-Integrated Manufacturing, 2021, 71: 102158.CrossRef
[39]
Zurück zum Zitat L Y Kong, G L Chen, G Huang, et al. A comprehensive numerical study on the number of identifiable kinematic parameters of parallel mechanisms. International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, American Society of Mechanical Engineers, 2021: 85444. L Y Kong, G L Chen, G Huang, et al. A comprehensive numerical study on the number of identifiable kinematic parameters of parallel mechanisms. International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, American Society of Mechanical Engineers, 2021: 85444.
[40]
Zurück zum Zitat S Caro, P Wenger, F Bennis, et al. Sensitivity analysis of the orthoglide: A three-DOF translational parallel kinematic machine. Journal of Mechanical Design, 2006, 128(2): 392–402.CrossRef S Caro, P Wenger, F Bennis, et al. Sensitivity analysis of the orthoglide: A three-DOF translational parallel kinematic machine. Journal of Mechanical Design, 2006, 128(2): 392–402.CrossRef
[41]
Zurück zum Zitat S Marie, E Courteille, P Maurine. Elasto-geometrical modeling and calibration of robot manipulators: Application to machining and forming applications. Mechanism and Machine Theory, 2013, 69: 13–43.CrossRef S Marie, E Courteille, P Maurine. Elasto-geometrical modeling and calibration of robot manipulators: Application to machining and forming applications. Mechanism and Machine Theory, 2013, 69: 13–43.CrossRef
Metadaten
Titel
A Comparative Study on Kinematic Calibration for a 3-DOF Parallel Manipulator Using the Complete-Minimal, Inverse-Kinematic and Geometric-Constraint Error Models
verfasst von
Haiyu Wu
Lingyu Kong
Qinchuan Li
Hao Wang
Genliang Chen
Publikationsdatum
01.12.2023
Verlag
Springer Nature Singapore
Erschienen in
Chinese Journal of Mechanical Engineering / Ausgabe 1/2023
Print ISSN: 1000-9345
Elektronische ISSN: 2192-8258
DOI
https://doi.org/10.1186/s10033-023-00940-3

Weitere Artikel der Ausgabe 1/2023

Chinese Journal of Mechanical Engineering 1/2023 Zur Ausgabe

    Marktübersichten

    Die im Laufe eines Jahres in der „adhäsion“ veröffentlichten Marktübersichten helfen Anwendern verschiedenster Branchen, sich einen gezielten Überblick über Lieferantenangebote zu verschaffen.