1 Introduction

Five-axis machine tools with two additional rotary axes are the key equipment in the manufacture of the monolithic parts with geometric complexity because of the advantages of high flexibility and efficiency. However, the rotary axes bring more geometric errors that affect the machine tool accuracy at the same time. It is necessary to compensate the geometric errors to improve the machine tool accuracy considering that the systematic geometric error is one of the critical error sources of the machine tools [1]. Accurate measurement and identification of the geometric errors is a prerequisite for error compensation.

At present, several methods have been developed for the measurement of the machine tool geometric errors based on different measurement instruments. Generally, the measurements of the linear axis and rotary axis are performed separately. Using laser interferometer to measure geometric errors of the linear axis is the most common method, such as the 22-, 14-, and 9-line methods [2,3,4]. Afterwards, the 12- and 13-line methods were proposed with better identification accuracy [5]. A laser step diagonal measurement method was presented with high measurement efficiency at the same time [6]. These measurement methods are indirect ones that need to use the error modeling for the geometric error identification. Nowadays, the six-dimension laser interferometer is applied to directly measure the position and angular errors of a linear axis [7]. Overall, the measurement method of the geometric errors of the linear axis is relatively mature.

The most common methods to identify the geometric errors of the rotary axis are the indirect measurement with R-test, touch trigger probe, and test pieces. These measurement methods are performed on the premise that the geometric errors of the linear axes have been well compensated. R-test is based on the principle of chase-the-ball, which makes the measurement path design with simultaneous multi-axis motion complicated. The identification processing of the geometric errors for R-test is also difficult [8, 9]. The measurement accuracy of the touch trigger probe heavily depends on the positioning accuracy of the linear axes, and the self-identification of the geometric errors for the touch trigger probe measurement is complicated [10, 11]. For the measurement using test pieces, the cost is high and many other error sources are introduced in the processing that affects the identification accuracy of the geometric errors [12, 13]. Compared with the measurement methods mentioned above, the double ball bar (DBB) has the advantages of easy installation, stable measurement, and low cost, which makes it the most commonly used in the measurement of the rotary axis currently.

The two balls of the DBB are usually attached to two different parts of the measurement target respectively, and the motion of the measurement target keeps the distance between the two balls constant. The length change of the DBB reflects the error of the machine tool. The DBB can be used for both static and dynamic measurements. For the dynamic measurement, the DBB can evaluate the servo mismatch and backlash of the machine tools [14, 15], while for the static measurement, the length change of the DBB is measured while the machine tool remains stationary to only reflect the static errors. The static errors of the machine tool contain six position-dependent geometric errors (PDGEs) and four position-independent geometric errors (PIGEs) for each rotary axis [16]. The PDGEs are mainly caused by the defects in the components of the controlled axis itself [17]. The PIGEs are generally caused by the imperfections in the assembly process which lead the axis to deviate from its ideal direction [18].

Different identification methods of the PDGEs and PIGEs of the rotary axes using the DBB were presented by designing different installation positions and measurement patterns of the DBB. Tsutsumi [19] designed three kinds of simultaneous three-axis control motions for each rotary axis to identify the PIGEs. Further, Tsutsumi designed the simultaneous four-axis control motions to identify the PIGEs by summarizing the influence of different PIGEs on the circular trajectory error of the DBB [20]. However, some PIGEs cannot be identified through Tsutsumi’s methods. Uddin and Ibaraki used four patterns of the DBB measurement to identify all the PIGEs of the five-axis machine tool, and verified the identification result through machining cone frustum [21]. The above measurement methods are performed under the simultaneous motions of multiple axes, which results in the coupling of some geometric errors. To control single rotary axis motion during the measurement process, Lee [22] and Xiang [23] designed the measurement methods for each rotary axis. Jiang identified the PIGEs by changing the length of the DBB in different measurement process based on single rotary axis control [24]. Afterwards, Jiang identified the PIGEs of the linear axes by introducing the motions of the linear axes [25]. Some measurement methods were proposed based on the screw theory in the global coordinate system [26]. The screw theory allows a global description of rigid body motion without constructing the local frames on each drive module as required by the HTM method [27]. Somehow, the modeling based on screw theory reduced the error parameters required to be identified [28]. The measurement of the PIGEs is based on the assumption that the PDGEs are much smaller than the PIGEs. Compared with the PIGEs, the number of PDGEs is larger and the PDGEs are more likely to couple with each other, which makes the measurement of the PDGEs much more difficult. Zargarbashi designed five measurement patterns of the DBB to identify five PDGEs of the A-axis with single installation of the DBB [29]. Further, Xiang identified 10 PDGEs of two rotary axes by designing 5 different measurement patterns for each rotary axis [30]. Peng identified all the PDGEs of a single rotary axis through seven measurement patterns under two installation positions [31]. Ding identified five PDGEs of the C-axis using two different lengths of the DBB under three installation positions [32]. Obviously, compared with the measurement of the PIGEs, the measurement of the PDGEs needs more measurement patterns and installation positions, and the identification process of the PDGEs is more complicated.

As mentioned above, different measurement methods using DBB were presented to identify the geometric errors of the rotary axis. In order to identify the specified PDGE, the length change of the DBB should be affected by the specified PDGE during test motion. Some mentioned methods can only identify part of the PDGEs of the rotary axis because some PDGEs do not affect the length change of DBB in their designed measurement patterns. For most of the measurement methods, the angular positioning error of the rotary axis is the most difficult to be identified because it is hard to be sensitive to the measurement direction of the DBB. Such as in reference [29, 30, 32], five PDGEs of the rotary axis were identified except for the angular positioning error. At the same time, the measurement with less installation positions, measurement patterns, and simultaneous motion axes is expected to improve the measurement efficiency and introduce less measurement uncertainty, such as the measurement method presented in reference [29] that only one installation position of the DBB was required, which significantly reduced the influence of the measurement errors on the identification accuracy and improved the measurement efficiency. In references [29,30,31,32], only one rotary axis was controlled to reduce the coupling between the geometric errors.

In the present study, a measurement method for the PDGEs of the rotary axes is presented. In the measurement, four measurement patterns are designed for each rotary axis, and a total of four installation positions are required. All 12 PDGEs of the rotary axes can be identified by the presented method, especially the angular positioning error that cannot be identified in most currently presented methods. The identified PDGEs of the rotary axes can be further compensated to improve the machine tool accuracy. The remainder of the present paper is organized as follows. The measurement patterns for the rotary axes are described in Section 2. The experimental validation is presented in Section 3. The analysis of the measurement uncertainty and the comparison with other methods are made in Section 4. Finally, the conclusions are drawn in Section 5.

2 Measurement patterns for geometric errors of rotary axis

Using the DBB to identify the PDGEs of the rotary axis, specified measurement patterns should be designed to make the length change of the DBB sensitive to the PDGEs. Then, the PDGEs can be identified by analyzing and decoupling the influence of the PDGEs on the length change of the DBB in different measurement patterns. A better measurement method should have less measurement patterns to improve the measurement efficiency and introduce less measurement uncertainty. At the same time, all the PDGEs of the rotary axis should be identified. In this section, particular measurement patterns are designed for the measurement of two rotary axes. Especially, the measurement patterns for the angular positioning error are presented separately. All the PDGEs of the rotary axes can be identified using the proposed eight measurement patterns based on four different installation positions.

2.1 Geometric errors of rotary axis

The five-axis machine tool studied in the present paper is a tilting rotary table type as shown in Fig. 1. The basic structure of the five-axis machine tool is a three-axis motion machining center with a vertical spindle, and a tilting rotary table controlled by two rotary axes of A-axis and C-axis. The motion range of the linear axes is x × y × z = 600 × 560 × 450 mm. The rotation ranges of the rotary axes are A ∈ [− 120°, 105°] and C 360° unlimited.

Fig. 1
figure 1

Five-axis machine tool with a tilting rotary table

As described in ISO 230-7 [33], there are six PDGEs for one rotary axis, including three linear errors and three angular errors. The linear errors include two radial motions and one axial motion. The angular errors include two tilt motions and one angular positioning error. For the five-axis machine tool studied in the present paper, the PDGEs of the A-axis and C-axis are listed in Table 1. Taking the C-axis as an example, the six PDGEs of the C-axis are illustrated in Fig. 2. The coordinate system of the C-axis is transformed from ideal OC-XCYCZC to actual OC′-XC′YC′ZC′ influenced by the six PDGEs. Thus, the actual position of the workpiece on the work table will deviate relative to its ideal position with the motion of rotary axes.

Table 1 PDGEs of the A-axis and C-axis
Fig. 2
figure 2

Description of 6 PDGEs of the C-axis

In the present study, the A-axis coordinate system and C-axis coordinate system were set at the rotation center of the machine tool that was located at the intersection of the axis lines of the A-axis and C-axis. The coordinate directions of the A-axis and C-axis were set in accordance with the machine tool coordinate system OM-XYZ.

2.2 Measurement patterns for C-axis

To identify the PDGEs of the rotary axis, the particular measurement patterns are designed. The length change of the DBB is affected by the PDGEs that are sensitive to the measurement direction. Therefore, by properly designing the sensitive measurement direction of the DBB, the length change of the DBB is affected by some specified PDGEs while not being affected by the other PDGEs. Then, the PDGEs of the rotary axis can be identified by analyzing the influence of the PDGEs on the length change of the DBB.

In the present study, the ball attached on the spindle is defined as ball 1, and the ball attached on the work table is defined as ball 2. In the measurement patterns for the C-axis, ball 1 is attached on the spindle with linear axes stationary, and ball 2 is attached on the axis line of the C-axis. Through this way, the rotary axis can rotate without the linear axis moving during the measurement. Thus, the length change of the DBB will only be affected by the PDGEs of the C-axis.

The three measurement patterns for the identification of five PDGEs of the C-axis are shown in Fig. 3. The left column shows the installation position and measurement direction of the DBB, and the right column illustrates the length change of the DBB caused by the PDGEs of the C-axis.

Fig. 3
figure 3

The first to third measurement patterns for identification of 5 PDGEs of the C-axis

As shown in Fig. 3, O represents the intersection point of the axis lines of the A-axis and C-axis, B1 and B2 stand for the installation positions of ball 1 and ball 2, and Z0 indicates the distance between the installation position of ball 2 and the rotation center O. In these three measurement patterns, the sensitive measurement directions of DBB are set to the X-, Y-, and Z-direction, respectively. The length change of the DBB is affected by different PDGEs of the C-axis in different sensitive measurement directions. The position of ball 1 in the coordinate system of the C-axis can be regarded as constant because ball 1 attached on the spindle is stationary. The position of ball 2 will change from B2I to B2A in the coordinate system of the C-axis because of the influence of the PDGEs. Therefore, the length change of the DBB represented as ΔP can be calculated by comparing the actual position of ball 2 in the sensitive measurement direction with the ideal length of the DBB represented as R0. The DBB readings in the first to third measurement patterns for the C-axis are expressed as Eq. (1) to Eq. (3). It should be noted that the DBB readings ΔL are opposite to the length change ΔP illustrated in Fig. 3.

$$ \Delta {L}_1(C)=-\mathrm{EXC}-{Z}_0\cdotp \mathrm{EBC} $$
(1)
$$ \Delta {L}_2(C)=-\mathrm{EYC}+{Z}_0\cdotp \mathrm{EAC} $$
(2)
$$ \Delta {L}_3(C)=-\mathrm{EZC} $$
(3)

It can be observed that in the third measurement pattern, EZC can be directly identified. However, EXC and EBC are coupled in the first measurement pattern, and EYC and EAC are coupled in the second measurement pattern. The installation position of ball 2 needs to be changed for a second measurement to help decouple these four PDGEs. With the first measurement result ΔL1,1(C) obtained by setting the position of ball 2 to Z0 and the second measurement result ΔL1,2(C) obtained by setting the position of ball 2 to Z1, EXC and EBC can be identified through

$$ \left[\begin{array}{c}\mathrm{EXC}\\ {}\mathrm{EBC}\end{array}\right]={\left[\begin{array}{cc}-1& -{Z}_0\\ {}-1& -{Z}_1\end{array}\right]}^{-1}\left[\begin{array}{c}\Delta {L}_{1,1}(C)\\ {}\Delta {L}_{1,2}(C)\end{array}\right] $$
(4)

Similarly, EYC and EAC can be identified with the measurement results ΔL2,1(C) and ΔL2,2(C) by setting the positions of ball 2 to Z0 and Z1. The EYC and EAC can be calculated through

$$ \left[\begin{array}{c}\mathrm{EYC}\\ {}\mathrm{EAC}\end{array}\right]={\left[\begin{array}{cc}-1& {Z}_0\\ {}-1& {Z}_1\end{array}\right]}^{-1}\left[\begin{array}{c}\Delta {L}_{2,1}(C)\\ {}\Delta {L}_{2,2}(C)\end{array}\right] $$
(5)

As analyzed above, five PDGEs of the C-axis can be identified through the first to third measurement patterns for the C-axis, except for the angular positioning error ECC. The ECC is insensitive to the measurement direction of the DBB in the above three measurement patterns. Thus, a special measurement pattern should be designed to identify the angular positioning error, which will be specified discussed in Section 2.4.

2.3 Measurement patterns for A-axis

Similar to the measurement patterns for the C-axis, the specified measurement patterns are designed to identify the PDGEs of the A-axis. Ball 1 is attached on the spindle, and ball 2 is attached on the axis line of the A-axis. The three measurement patterns for identification of the five PDGEs of the A-axis are shown in Fig. 4. The left column shows the installation position and measurement direction of the DBB, and the right column illustrates the length change of the DBB caused by the PDGEs of the A-axis.

Fig. 4
figure 4

The first to third measurement patterns for identification of 5 PDGEs of the A-axis

As shown in Fig. 4, X0 indicates the distance between the installation position of ball 2 and the rotation center O, and the other symbols are the same as in Fig. 3. In these three measurement patterns, the sensitive measurement directions of the DBB are set to the X-, Y-, and Z-direction, respectively. As the same to the three measurement patterns for the C-axis illustrated in Fig. 3, the readings of the DBB in the three measurement patterns for the A-axis can be calculated through the position change of ball 2 along the sensitive measurement direction of the DBB. The DBB readings in the first to third measurement patterns for the A-axis are expressed as Eq. (6) to Eq. (8).

$$ \Delta {L}_1(A)=-\mathrm{EXA} $$
(6)
$$ \Delta {L}_2(A)=-\mathrm{EYA}-{X}_0\cdotp \mathrm{ECA} $$
(7)
$$ \Delta {L}_3(A)=-\mathrm{EZA}+{X}_0\cdotp \mathrm{EBA} $$
(8)

EXA can be directly identified through Eq. (6). However, EYA and ECA are required to be decoupled in the second measurement pattern, and EZA and EBA need to be decoupled in the third measurement pattern. Thus, the second and third measurement patterns need to be performed two times by introducing different installation positions of ball 2, which is the same to the measurement patterns for the C-axis. The installation positions of ball 2 in the first and second measurement patterns are defined as X0 and X1, respectively. The measurement results of the second and third measurement patterns are defined as ΔL2,1(A) and ΔL3,1(A) when ball 2 is installed at the position of X0. The measurement results of the second and third measurement patterns are defined as ΔL2,2(A) and ΔL3,2(A) when ball 2 is installed at the position of X1. Therefore, EYA and ECA can be identified through Eq. (9). EZA and EBA can be identified through Eq. (10). Five PDGEs of the A-axis can be identified through the above three measurement patterns for the A-axis, except for the angular positioning error EAA.

$$ \left[\begin{array}{c}\mathrm{EYA}\\ {}\mathrm{ECA}\end{array}\right]={\left[\begin{array}{cc}-1& -{X}_0\\ {}-1& -{X}_1\end{array}\right]}^{-1}\left[\begin{array}{c}\Delta {L}_{2,1}(A)\\ {}\Delta {L}_{2,2}(A)\end{array}\right] $$
(9)
$$ \left[\begin{array}{c}\mathrm{EZA}\\ {}\mathrm{EBA}\end{array}\right]={\left[\begin{array}{cc}-1& {X}_0\\ {}-1& {X}_1\end{array}\right]}^{-1}\left[\begin{array}{c}\Delta {L}_{3,1}(A)\\ {}\Delta {L}_{3,2}(A)\end{array}\right] $$
(10)

2.4 Angular positioning error measurement of rotary axes

As mentioned in the introduction part, the angular positioning error of the rotary axis cannot be identified in most of the previously presented measurement methods using DBB because the angular positioning error is difficult to be sensitive to the measurement direction of the DBB. Therefore, the angular positioning error of the rotary axis cannot be measured if it has no influence on the length change of the DBB. The key to identifying the angular positioning error is to design a special measurement pattern to make the angular positioning error sensitive to the measurement direction and affect the length change of the DBB. Therefore, another two special measurement patterns for the C-axis and A-axis are designed in this section to identify ECC and EAA.

As illustrated in Fig. 5, the fourth measurement pattern for the C-axis to identify ECC is designed. In this measurement pattern, the A-axis is required to rotate an angle A0, and then the measurement direction of the DBB is set to the X-direction. Through this way, the length change of the DBB will be affected by the angular positioning error ECC. The DBB reading for the fourth measurement pattern is expressed as

$$ \Delta {L}_4(C)=-\mathrm{EXC}-{Z}_0\sin \left({A}_0\right)\mathrm{ECC}-{Z}_0\cos \left({A}_0\right)\mathrm{EBC} $$
(11)
Fig. 5
figure 5

The fourth measurement pattern for the C-axis

It can be observed that the DBB reading is influenced by EXC, ECC, and EBC. ECC can be identified by introducing the identified EXC and EBC through

$$ \mathrm{ECC}=\left(-\Delta {L}_4(C)-\mathrm{EXC}-{Z}_0\cos \left({A}_0\right)\mathrm{EBC}\right)/{Z}_0\sin \left({A}_0\right) $$
(12)

In the fourth measurement pattern for the C-axis, ECC can be sensitive to the measurement direction of the DBB when A-axis rotates an angle, but the rotation of the C-axis will not make EAA sensitive to the measurement direction of the DBB because the motion of the C-axis does not affect the motion of the A-axis. The motions of the linear axes are introduced in the present study to help identify the EAA. The fourth measurement pattern for the A-axis is shown in Fig. 6.

Fig. 6
figure 6

The fourth measurement pattern for the A-axis

The fourth measurement pattern for the A-axis illustrated in Fig. 6 is similar to the fourth measurement pattern for the C-axis. In the fourth measurement pattern for the C-axis, the A-axis remains stationary after rotating an angular. However, the A-axis is rotating while the C-axis remains stationary during the measurement in the fourth measurement pattern for the A-axis. Meanwhile, the Y-axis and the Z-axis move simultaneously with the A-axis to keep the measurement direction of the DBB sensitive in the Z-direction and the ideal distance between ball 1 and ball 2 unchanged. As illustrated in Fig. 6, the DBB reading can be expressed as

$$ \Delta {L}_4(A)=-\mathrm{EZA}+{Z}_0\sin (A)\mathrm{EAA} $$
(13)

It can be observed that ΔL4(A) is related to EZA and EAA. Because EZA can be identified in the third measurement pattern, EAA can be identified by

$$ \mathrm{EAA}=\left(\Delta {L}_4(A)+\mathrm{EZA}\right)/{Z}_0\sin (A) $$
(14)

All the PDGEs of the rotary axes can be identified through the above eight presented measurement patterns. Among these eight measurement patterns, the first and second measurement patterns for C-axis and the second and third measurement patterns for A-axis need to be performed twice with different installation positions of ball 2. Overall, 8 measurement patterns, 12 times measurement, and 4 installation positions are required to identify all the 12 PDGEs of the rotary axes.

3 Experimental validation

3.1 Linear axes compensation and rotation center identification

The installation position of the DBB was achieved by moving the linear axes according to the coordinate displayed in the NC system. At the same time, the Y-axis and Z-axis moved simultaneously with the A-axis in the fourth measurement pattern for the A-axis. Therefore, the positioning errors of the linear axes have a big influence on the installation position accuracy and measurement accuracy of the DBB, which can introduce a lot of measurement uncertainty. The positioning accuracy of the linear axes should be high enough to eliminate the measurement uncertainty. Hence, the positioning errors of the linear axes were compensated before the measurement of the rotary axes in the present study. The measurement of the linear axes positioning accuracy was conducted by using the laser interferometer as shown in Fig. 7. Then, the positioning errors of the linear axes were compensated by adjusting the parameters in the compensation tables in the CNC system based on the measurement results using the screw compensation function. The maximum positioning errors of the X-, Y-, and Z-axis after compensation were reduced to 2, 3, and 1, respectively, after being remeasured by the laser interferometer.

Fig. 7
figure 7

The measurement and compensation process of the linear axes by laser interferometer

Ball 2 of the DBB is required to be installed on the axis line of the A-axis or C-axis in the presented method. Thus, the axis lines of the A-axis and C-axis should be identified before the measurement of the rotary axes. In reference [23], the method for identification of the axis lines of the A-axis and C-axis is described in detail. Following the method presented in reference [23], the axis lines of the A-axis and C-axis studied in the present study were identified. Different from reference [23], the touch trigger probe was used instead of dial gauge to measure the position of the gauge block. The identification accuracy of the axis lines of the A-axis and C-axis can be improved considering that the measurement accuracy and repeated measurement accuracy of the touch trigger probe were better (Fig. 8).

Fig. 8
figure 8

Identification of the axis line of rotary axes. (a) Identification process for the C-axis. (b) Identification process for the A-axis

3.2 Identification of PDGEs of rotary axes

The identification of the PDGEs of the rotary axes were performed following the presented method when the axis lines of the rotary axes were identified. The dynamic errors should be eliminated during the measurement so that the static measurement method of the DBB was adopted. The static measurement method of the DBB is described below. The measurement range of the rotary axis was discretized. The rotary axis stayed at every measurement angle for 3 s instead of rotating continuously during the measurement process. The stay of the rotary axis for 3 s was realized by running the NC code “G04F3.” Therefore, the rotary axis stayed at every measurement angle for 3 s, and then continued to rotate until the next measurement angle was reached. The benefits of the static measurement method of the DBB were that the dynamic errors caused by continuous motion of the rotary axis were excluded and the measured length change of the DBB corresponded to the measurement angle accurately.

The QC20-W DBB measurement system was used in the measurement. The different installation positions of ball 2 were achieved through the help of the magnetic base. The nominal length of the DBB was set to 100 mm. The measurement step size for the rotary axes was set as 3°. The sampling rate of the measurement system was set to 100 Hz, which means that there were nearly 300 data obtained when the rotary axis stayed for 3 s at each measurement angle. The average value of the DBB readings during the stay time was considered as the static measurement result. The measurement settings for the rotary axes are illustrated in Table 2. The measurement range of A-axis is limited within [− 9°, 9°] as listed in Table 2 because of the limitation of the proposed method. The position of the axis line of A-axis is close to the surface of the table for the target machine tool measured in the present study, so that the DBB installed on the table side is easy to collide with the table. The specific limitation of the proposed method that results in the limited measurement range of rotary axis will be illustrated in the discussion part.

Table 2 Measurement settings

The measurements of the rotary axes are shown in Figs. 9 and 10. The measurement results corresponding to the measurement patterns in Figs. 9 and 10 are shown in Figs. 11 and 12, respectively. The PDGEs of the rotary axes were identified based on the identification methods presented in Section 3. The identified PDGEs of the C-axis and A-axis are shown in Figs. 13 and 14, respectively. It can be observed that the PDGEs varied significantly over the range of the motion of the rotary axes, and the angular errors were relatively small.

Fig. 9
figure 9

The measurement for the C-axis

Fig. 10
figure 10

The measurement for the A-axis

Fig. 11
figure 11

Measurement results for the A-axis

Fig. 12
figure 12

Measurement results for the C-axis

Fig. 13
figure 13

Identified PDGEs of the C-axis

Fig. 14
figure 14

Identified PDGEs of the A-axis

3.3 Verification of measurement results

When all the PDGEs of the rotary axes were identified, the precision ball artifact was used to make the verification. The ball artifact was installed on the work table, and the position of the ball center changed with the motion of the rotary axes. The actual position of the ball center deviated from its ideal position because of the influence of the PDGEs of the rotary axes. The actual position of the ball center was identified by measuring four points on the surface of the ball using the touch trigger probe. The deviation between the actual and ideal position of the ball center was used to validate the identified PDGEs of the rotary axes. The mathematical process of solving the deviation of the ball center can be expressed as Eq. (15) to Eq. (17):

$$ {\mathbf{P}}_{\mathrm{i}}={\mathbf{T}}_{\mathrm{A}}{\mathbf{T}}_{\mathrm{C}}\mathbf{P}, $$
(15)
$$ {\mathbf{P}}_{\mathrm{a}}={\mathbf{T}}_{\mathrm{A}}{\mathbf{E}}_{\mathrm{A}}{\mathbf{T}}_{\mathrm{C}}{\mathbf{E}}_{\mathrm{C}}\mathbf{P}, $$
(16)
$$ {\mathbf{P}}_{err}={\mathbf{P}}_a-{\mathbf{P}}_i, $$
(17)

where TA and TC represent the transformation of the motion of the A-axis and C-axis as illustrated in Eq. (18) and Eq. (19), P represents the initial position of the ball center, Pi and Pa stand for the ideal and actual position of the ball center, Perr stands for the position deviation of the ball center, and EA and EC indicate the PDGE transformation of the A-axis and C-axis as illustrated in Eq. (20) and Eq. (21).

$$ {\mathbf{T}}_{\mathrm{A}}=\left[\begin{array}{cccc}1& 0& 0& 0\\ {}0& \cos (A)& -\sin (A)& 0\\ {}0& \sin (A)& \cos (A)& 0\\ {}0& 0& 0& 1\end{array}\right] $$
(18)
$$ {\mathbf{T}}_{\mathrm{C}}=\left[\begin{array}{cccc}\cos (C)& -\sin (C)& 0& 0\\ {}\sin (C)& \cos (C)& 0& 0\\ {}0& 0& 1& 0\\ {}0& 0& 0& 1\end{array}\right] $$
(19)
$$ {\mathbf{E}}_{\mathrm{A}}=\left[\begin{array}{cccc}1& -\mathrm{ECA}& \mathrm{EBA}& \mathrm{EXA}\\ {}\mathrm{ECA}& 1& -\mathrm{EAA}& \mathrm{EYA}\\ {}-\mathrm{EBA}& \mathrm{EAA}& 1& \mathrm{EZA}\\ {}0& 0& 0& 1\end{array}\right] $$
(20)
$$ {\mathbf{E}}_{\mathrm{C}}=\left[\begin{array}{cccc}1& -\mathrm{ECC}& \mathrm{EBC}& \mathrm{EXC}\\ {}\mathrm{ECC}& 1& -\mathrm{EAC}& \mathrm{EYC}\\ {}-\mathrm{EBC}& \mathrm{EAC}& 1& \mathrm{EZC}\\ {}0& 0& 0& 1\end{array}\right] $$
(21)

The measurement of the ball artifact using the touch trigger probe is shown in Fig. 15. In the verification of the identified PDGEs of the rotary axes, the ball artifact was measured under 11 different combinations of rotary axes motions including the initial position that the A-axis and C-axis were at 0°. The motion positions of the 11 sets of the rotary axes are listed in Table 3.

Fig. 15
figure 15

Using the touch trigger probe to measure the ball artifact

Table 3 Motion positions of the 11 sets of rotary axes (°)

The position of the ball artifact that the A-axis and C-axis were at 0° was regarded as the initial position. The position of the ball center was deduced through the kinematic relationship and the initial position of the ball center based on the motion angles of the rotary axes. Then, the comparison was made between the measured and predicted positions of the ball center to verify the identified geometric errors. The measurement ranges of the A-axis and the C-axis were equally divided into 10 parts. Then, the 10 points which covered the measurement ranges of the A-axis and C-axis were obtained by randomly combining the equally divided angles of the A-axis and the C-axis. Thus, there were 11 positions of the ball center. The initial position of the ball center was identified as [58.472, − 15.742, 217.201]. By substituting the initial position of the ball center, the motion positions of the rotary axes listed in Table 3, and the identified PDGEs into Eq. (15) and Eq. (16), the predicted positioning deviation of the ball center was calculated. Meanwhile, the actual positioning deviation of the ball center was obtained through measuring four points on the surface of the ball artifact using touch trigger probe. The comparison between the predicted and actual deviation of the ball center is shown in Fig. 16. It can be observed that the predicted and actual positioning deviation of the ball center agree well. The result shows that the identification accuracy of the PDGEs is good.

Fig. 16
figure 16

The predicted and actual deviation of the ball center

4 Discussion

4.1 Influence of DBB installation error on PDGE identification accuracy

For the presented measurement method, the axis lines of the A-axis and C-axis should be identified first. Then, ball 2 of the DBB was required to be installed on the axis line of the measured rotary axis to perform the different measurement patterns. Therefore, the installation errors of ball 2 with respect to the ideal position had a significant influence on the identification accuracy of the PDGEs. The installation error of ball 2 depended heavily on the identification accuracy of the axis lines of the rotary axes. At the same time, the installation error of ball 1 attached on the spindle was affected by the positioning errors of the linear axes. In the present study, the positioning errors of the linear axes were compensated before the measurement of the rotary axes, which greatly improved the identification accuracy of the PDGEs. However, the deviation between the actual and ideal installation positions of the DBB was inevitable. Therefore, the influence of the installation error on the measurement accuracy is analyzed in this part.

As shown in Fig. 17, B2I represents the ideal installation position of ball 2; B2A represents the actual installation position of ball 2; and dx2, dy2, and dz2 represent the installation errors of ball 2. Similarly, B1I represents the ideal installation position of ball 1; B1A represents the actual installation position of ball 1; and dx1, dy1, and dz1 represent the installation errors of ball 1. It is well known that the length change of the DBB can be approximately expressed as

$$ \Delta R=\frac{\Delta x\cdot \mathrm{dX}+\Delta y\cdot \mathrm{dY}+\Delta z\cdot \mathrm{dZ}}{R} $$
(22)

where ΔR stands for the length change of the DBB; Δx, Δy, and Δz stand for the components of the ΔR in the X, Y, and Z directions; and dX, dY, and dZ stand for the components of the DBB length in the X, Y, and Z directions. Because the measurement direction of the DBB is fixed to the X or Y or Z direction in the proposed measurement patterns, the installation errors of the ball in the other two directions besides the measurement direction have little influence on the length change of the DBB, which can be neglected considering that the installation errors of the ball is relatively too small compared with the DBB length. For example, by considering the installation errors of the DBB, the length change of the DBB in the X measurement direction can be expressed as:

$$ \Delta R=\frac{\left({dx}_1{dx}_2+{dx}_m\right)\cdotp \sqrt{R^2-{\left({dy}_1+{dy}_2\right)}^2-{\left({dz}_1+{dz}_2\right)}^2+{\left({dy}_1+{dy}_2\right)}^2+{\left({dz}_1+{dz}_2\right)}^2}}{R} $$
(23)

where dxm represents the positioning deviation of the ball in the X direction that need to be measured. The installation errors of the DBB on the other two directions besides the measurement directions can also be considered as the DBB length change components. Therefore, the dxm can be expressed by

$$ {dx}_m=\frac{\Delta R\cdotp R-{\left({dy}_1+{dy}_2\right)}^2-{\left({dz}_1+{dz}_2\right)}^2}{\sqrt{R^2-{\left({dy}_1+{dy}_2\right)}^2-{\left({dz}_1+{dz}_2\right)}^2}}-{dx}_1-{dx}_2 $$
(24)
Fig. 17
figure 17

The installation errors of the DBB

According to Eq. (24), it can be observed that the dxm is coupled with the installation errors of the DBB in the X direction. The easy method to reduce the influence of the installation errors of the DBB in the Y and Z directions is that to increase the nominal length of the DBB, which can be inferred based on Eq. (24). As analyzed above, it can be found out that the installation errors of the DBB in the measurement direction has the main effect on the identification accuracy of the PDGEs.

The installation position of ball 2 can be appropriately selected based on the condition number to reduce the influence of the installation errors along the measurement direction on the identification accuracy of the PDGEs. The condition number is an evaluation of the sensitivity of the solution of the linear system of equations Ax = b to the error or uncertainty in b, which is defined in Eq. (25). The smaller the condition number, the smaller the influence of uncertainty in b on the identification accuracy of x. As illustrated in Eq. (4), Eq. (5), Eq. (7), and Eq. (8), the Z0, Z1, X0, and X1 form the identification matrix for the PDGEs. Meanwhile, the measurement uncertainty is introduced in the measurement result of the DBB length change. Based on the application of condition number, the influence of the measurement uncertainty on the identification accuracy of the PDGEs can be reduced through selecting appropriate values for the Z0, Z1, X0, and X1.

$$ \mathrm{cond}\left(\mathrm{A}\right)=\left.\left.\parallel \mathrm{A}\right\Vert \cdotp \right\Vert \left.{\mathrm{A}}^{-1}\right\Vert $$
(25)

Overall, besides that the DBB should be accurately installed to reduce the measurement uncertainty, the influence of the installation error on the measurement accuracy can also be reduced by setting a larger DBB nominal length and selecting the appropriate installation positions of ball 2.

4.2 Comparison with other methods

As mentioned in the introduction part, there are some other methods presented to identify the PDGEs of the rotary axes. Thus, a comparison between the method proposed in the present paper and the methods proposed in some other references are made in this part. The comparison involves the number of the measurement patterns, the installation positions of the DBB, the measured rotary axis, and the PDGEs that can be identified. The measurement of the rotary axis is expected to be efficient and simple. At the same time, the measurement result is expected to involve more information within the same measurement time. Different measurement patterns require different DBB installation methods so that the number of the measurement patterns can indicate the complexity and efficiency of the measurement method. The entire DBB measurement system needs to be reset when the DBB is installed at a new position, which is time consuming, so that the number of the installation positions of the DBB can denote the efficiency of the measurement method. The measured rotary axis and the number of the identified PDGEs can directly indicate the effectiveness of the measurement method. Therefore, the better measurement method should identify more geometric errors of more rotary axes with high efficiency and process simple. The specific comparison between the methods is shown in Table 4.

Table 4 Comparison between the methods of identification of PDGEs

As illustrated in Table 4, the methods in the references require at least five measurement patterns for the measurement of a single rotary axis. In contrast, 4 measurement patterns in the present paper can identify all the PDGEs of a single rotary axis, which is simpler. The measurement method for the PDGEs of A-axis in [29] requires only one installation position to perform five different measurement patterns, which is much more efficient and will introduce less measurement uncertainty. For the measurement method of the A-axis proposed in the present study, two different installation positions are required with four measurement patterns. Compared with the method in [29], the disadvantage of the present study is the lower efficiency and the more measurement errors introduced. The advantage of the present study is that all the PDGEs of the A-axis can be identified which is important for error compensation. For most error compensation methods, all PDGEs are required to be identified to improve the rotary axis accuracy. At the same time, among all the PDGEs, angular positioning error seriously affects the motion accuracy of the rotary axis. Besides the method presented in reference [29] that only one installation position is required, the method presented in the present paper only needs two installation positions for each rotary axis which is more efficient than the other mentioned methods. Only the methods in reference [30] and in the present paper can identify the PDGEs of both the two rotary axes. Moreover, all 12 PDGEs of the rotary axes can be identified in the present study especially for the angular positioning error, which is the advantage of the method proposed in the present study. Overall, the presented method can identify all the PDGEs of the rotary axes while being simpler and more efficient. Meanwhile, the considerable advantage of the method proposed in the present study is that the angular positioning error of the rotary axes that cannot be identified in some other measurement methods can be identified.

4.3 Application and limitation of the proposed method

The error compensation can be performed by the modification of the NC program or using the compensation functions of the NC system. In references [21, 32, 34, 35], some compensation methods based on the NC program modification are proposed. The main idea is that the deviation between the actual and ideal tool position affected by the PDGEs can be compensated by the motions of the linear axes, and the deviation between the actual and ideal tool orientation affected by the PDGEs can be compensated by the motions of the rotary axes. For the NC system compensation functions, the main idea is to generate the required compensation tables based on the identified geometric errors. In references [36, 37], Creamer performed the error compensation of the rotary axes based on the compensation tables. Therefore, the PDGEs of the rotary axes can be compensated based on the NC program modification or the compensation tables in NC system.

At the same time, the method proposed in the present paper has some limitations. First, the axis lines of the rotary axes need to be identified before the performance of the measurement. Second, the measurement range of the A-axis is constrained by the position of the axis line of the A-axis. As illustrated in Fig. 18, in the second measurement pattern for the A-axis, the motion of the A-axis may cause the work table to collide with the DBB. Suppose that the distance between the axis line of the A-axis and the work table surface is ZA and the length of the DBB is L so that the maximum angle Am that the work table can rotate from the horizontal plane can be calculated by Eq. (26). Thus, the maximum measurement range for A-axis is 2Am. The measurement range of the A-axis can be increased by enlarging ZA and reducing the DBB length at the same time. The measurement range of the A-axis in the present paper was limited as [− 9°, 9°] because the axis line of the A-axis is close to the work table surface. At the same time, the premise that the presented measurement method can be applied is that the axis line of the A-axis should be over the work table surface. There should be enough room for the installation of the DBB. Otherwise, the presented method cannot be applied if the axis line of the A-axis is too close to or under the work table surface.

$$ {A}_{\mathrm{m}}=\frac{\pi }{2}-\operatorname{arccos}\left(\frac{Z_{\mathrm{A}}}{L}\right) $$
(26)
Fig. 18
figure 18

Constrained measurement range of the A-axis

One of the advantages of the proposed measurement method is that the angular positioning error of the rotary axis can be identified. For most of the other researches, it is difficult to identify the angular positioning error because the angular positioning error is insensitive to the DBB measurement direction. In the present study, besides the target rotary axis required to be measured, the other axes are required to make some designated motions to make the angular positioning error of the measured rotary axis sensitive to the measurement direction of DBB. This idea can also be adopted to the machine tools with different topologies. However, the measurement patterns and installation positions of DBB depends heavily on the topology of the machine tool. Generally speaking, considering the measurement range and size of the DBB, the proposed method is more suitable for machine tools with a tilting rotary table.

5 Conclusion

The present paper presents a method to identify the PDGEs of the rotary axes of the five-axis machine tool by using the DBB measurement. A total of eight measurement patterns based on four installation positions are designed in this method. The ball of the DBB attached on the work table is required to be set on the axis line of the rotary axis. All 12 PDGEs of the rotary axes can be identified by the presented method. Moreover, experimental verification is performed, and the measurement uncertainty and the limitations of the presented method are analyzed.

  1. 1.

    Compared with some other presented methods, the method proposed in the present study requires less measurement patterns and installation positions of the DBB, which improves the measurement efficiency and introduces less measurement uncertainty.

  2. 2.

    The angular positioning error is difficult to be identified because it is difficult to be sensitive to the measurement direction of the DBB. The presented method can identify all 12 PDGEs of the two rotary axes, especially the angular positioning error that cannot be identified in most presented methods.

  3. 3.

    The installation error of the DBB is the main contributor of the measurement uncertainty. Besides the DBB should be accurately installed, the influence of the installation error on the measurement accuracy can be reduced by selecting a larger DBB nominal length and proper installation position of DBB.

  4. 4.

    The limitation of the presented method is that the axis line of the rotary axis should be identified first, and the measurement range of A-axis depends on the relative positions of the axis line of A-axis and the work table.