1 Introduction

In recent years, the rapid progress of manufacturing processes along with the requirement to meet tighter dimensions and tolerances of finished products have played an important role in the development of the dimensional metrology field for the quality control and assurance in the manufacturing production environment. Within this field, an important group of measuring instruments that have increased their application in the automobile, aerospace, machine tools, metal processing, assembling industries, etc. is that of the portable coordinate measuring machine instruments, such as articulated arm coordinate measuring machines (AACMM) and laser trackers (LT), among others. Their growing popularity resides mainly in their flexibility to carry out complex measurements in places where environmental conditions, such as temperature and humidity, are not easy to control and affect negatively the reliability of the measurements. However, the kinematic parameters of these type of instruments require periodical calibration, optimization, and verification procedures which become a drawback because of the techniques applied to perform them. Currently, the ASME B89.4.22-2004, VDI guideline 2617 9:2009 and ISO/CD 10360-12 standard [1,2,3] are the standards used as guide for the performance evaluation of AACMMs. The objective of these standards is to evaluate the measuring capability of the AACMM throughout its measuring volume using calibrated artifacts such as reference lengths. The inconvenience of this procedure is the inherent time-consuming, tedious, and expensive tasks [4, 5] that the industries are not always capable or willing to assume, even more if we take into account the emergence of industry 4.0, which demands to industries faster inspection processes while maintaining the quality and reducing production costs [6, 7]. This drawback is a consequence of the necessity of locating a calibrated gauge object, such as a ball bar gauge, successively in various predetermined positions, so that most of the instrument measuring volume is covered. In every position, a support is used to rigidly fix the gauge object at different heights and orientations with respect to the measuring instrument. For the aforementioned reasons, continuous research in this area is still of paramount importance within the coordinate metrology research community.

Research studies within this field are usually approached in two different ways: (1) the use of gauge artifacts to evaluate the performance of AACMM and (2) the development of new calibration and verification methods to reduce the measurement error committed by this instrument.

For example, in the first group, Santolaria used a ball bar gauge and a self-centering active probing technique to optimize the parameters of an AACMM based on the Denavit-Hartenberg kinematic model parameters [8]. Piratelli presented a gauge consisting of virtual spheres of two groups of conical holes used for the evaluation of AACMM. This conical holes served a kinematic seats to limit the degrees of freedom of the arm probe in order to determine points of two spherical surfaces; these points are fitted to spheres using computational algorithms, and the distance between the spheres’ centers is calculated and compared to the nominal distances measured with a coordinate measuring machine [9]. The same author developed a virtual spheres plate for the assessment of an AACMM. The plate consisted of 16 group of conic holes placed on an aluminum plate used to determine 16 virtual spheres. The distance of the virtual sphere centers was compared to the ones measured with a CMM [10]. In [11], Zhao et al. presented a 3D artifact for the calibration of an articulated arm coordinate measuring machine. The 3D artifact consists of 14 reference points with three different heights that allows the materialization of 91 reference lengths to evaluate the AACMM volumetric performance. Cuesta presented a virtual circle gauge to evaluate the performance of an AACMM by comparing the mean values of the virtual circles to the ones measured [12]. Cuesta also developed a new gauge in order to ensure the reliability of an AACMM. The gauge consisted of several physical geometries, and it included conical holes at the ends in order to materialized virtual spheres for the evaluation of AACMMs [13]. In a subsequent work, Cuesta analyzed the influence of the operator in the reliability of AACMMs measurements by developing a contact force sensor [14]. Also, the influence of the measuring force on the equivalent diameter of the probe is studied in [15], and a mathematical model is developed to compensate the equivalent diameter error caused by the measuring force. In recent research, El Asmai et al. proposed in [16] a simple methodology to estimate the uncertainty in length measurements within a limited zone of the AACMM using a tetrahedral artifact.

In the second group of research works, Ostrowska developed a virtual articulated arm coordinate measuring machine based on three different metrological models in order to determine which of the metrological models obtained better results. Moreover, the author used a verification method for assuring the correct functioning of the virtual articulated arm coordinate measuring machine by means of a multi-feature check standard [17]. In [18], Lin proposed a scaling method to modify the length parameters of the AACMM kinematic model by scaling factor k. Ibrahim applied a stochastic-based optimization technique to identify kinematic parameters of a measuring arm to improve its measurement accuracy [19]. A modeling and error compensation method for AACMMs based on BP Neural Networks is proposed by Gao [20] with the AACMM’s joint angles generated by Monte-Carlo simulation. The same author presented in [21] a constructive parameter identification approach for AACMMs and in [22] focused on a decoupling method of AACMM parameters to be used in identification parameters procedures based on a study of strong non-linear couplings in AACMMs. In [23], a multi-level Monte Carlo method was developed by Romdhani et al. in order to characterize the behavior of an AACMM during the measurement process and quantifying the uncertainty on the considered measurand. In [24], a least squares methodology based on the Gauss-Helmert least squares analysis to calculate the parameters of the AACMM kinematic is shown. The work proposed an alternative methodology to the well-known VDI/VDE and ASME B89.4.22 AACMM standards. In [25], Batista describes a mathematical model based on the use of quaternions for the computation of forward kinematics of an AACMM.

Finally, in previous works, the use of the IMP has been already validated in verification procedures of AACMMs applying a new virtual distance methodology [26] and using a laser tracker as a reference instrument in combination with the IMP [27], being the measurement uncertainty of the platform assessed in [28].

The main goal of this work is to present the kinematic parameter identification procedure of an articulated arm coordinate measuring machine by means of an indexed metrology platform. The metrological behavior of an AACMM depends on many factors, but the correct identification of the mathematical model parameters will determine the final measurement error [29]. Additionally, a brief explanation of the mathematical model that links the AACMM reference system and the IMP global coordinate reference system is given. Furthermore, a discussion of the four proposed quality parameters to evaluate the error of the AACMM during the iteration process in the optimization procedure as well as the development of eight objective functions in terms of the quality parameters to optimize the error made by the AACMM using the IMP is included. Finally, the advantage of using the IMP in the kinematic parameter identification procedures of AACMM’s over the traditional methodologies is shown. This advantage resides in the reduction of the time, physical effort, and space required to carry out these procedures. This reduction is accomplished by inverting the roles of the calibrated gauge objects and the AACMM in the changing of their relative position, that is, the calibrated object remains fixed and the measuring arm moves around it, contrary to the usual method the standard follows, where the calibrated object is moved around the AACMM.

2 AACMM kinematic model and integration with IMP mathematical model

A calibration of a measuring instrument is understood as a technique to establish a relationship between the instrument’s data and the values obtained by a traceable gauge object. This relationship makes it possible to determine mathematical correction models with the purpose of minimizing the measuring instrument’s error [4].

The first step in our process is the development of the AACMM kinematic mathematical model that corresponds to the configuration of the arm. In this work, the configuration of the arm used is a seven-degrees-of-freedom (DOF) Platinum series from FARO with a typical 2-2-3 configuration and an a-b-c-d-e-f-g degree rotation (Fig. 1), according to ASME B89.4.22-2004, with a nominal value of 2σ = 0.030 mm and ± 0.043 mm reported in the single point articulation and volumetric performance tests, respectively. The kinematic model of the arm was established based on the Denavit-Hartenberg (D-H) algorithm [30] due to the mechanical similarities between AACMMs and robot arms. In Fig. 1, we define the AACMM initial position and the seven coordinate reference systems associated to each of the joints, starting from a global coordinate reference system (CSglobal) defined as (X0, Y0, Z0) and finishing with the seventh coordinate reference system attached to the arm probe (X7, Y7, Z7) or (Xpalp, Ypalp, Zpalp).

Fig. 1
figure 1

Seven coordinate reference systems of the AACMM initial position according to D-H algorithm

The mathematical model is represented by four geometrical parameters in each of the arm articulations joints (distances di, ai, and angles αi, θi). According to the D-H algorithm, these parameters are used to determine the homogenous transformation matrices between frames i and i − 1 that depend on the four mentioned parameters, given in Eq. 1,

$$ {{}^{i-1}A}_i={T}_{z,d}{T}_{z,\theta }{T}_{x,a}{T}_{x,\alpha }=\left(\begin{array}{cccc}\cos {\theta}_i& -\cos {\alpha}_i\mathit{\sin}{\theta}_i& \sin {\alpha}_i\sin {\theta}_i& {a}_i\cos {\theta}_i\\ {}\sin {\theta}_i& \cos {\alpha}_i\cos {\theta}_i& -\sin {\alpha}_i\cos {\theta}_i& {a}_i\sin {\theta}_i\\ {}0& \sin {\alpha}_i& \cos {\alpha}_i& {d}_i\\ {}0& 0& 0& 1\end{array}\right), $$
(1)

Then, the transformation matrix that allows to express the coordinates of the probe center with respect to the AACMM global coordinate reference systems is obtained by the following equation:

$$ {{}^0T}_7=\prod \limits_{i=1}^6{{}^{i-1}A}_i\cdotp {{}^6A}_7, $$
(2)

where 0 represents the global fixed coordinate reference system and 7 the coordinate reference system that moves solidary with the rotation of the last articulation. Once the coordinate reference systems are defined, the initial nominal parameter values of the AACMM kinematic model are determined. These values must be as close as possible to the physical real values in order to obtain good results during the calibration procedure. In our case, the initial values were measured with a coordinate measuring machine. The initial values of the kinematic model are shown in Table 1.

Table 1 Kinematic geometric parameters initial values for the AACMM kinematic model

The next step is to develop a mathematical model linking the AACMM and the IMP global coordinate reference systems. In other words, this model will allow us to find a homogenous transformation matrix (HTM) to express the probed points by the measurement arm in the IMP global coordinate reference system (Fig. 2). This mathematical model is based on the optimized geometric features calculated in the calibration procedure of IMP and the capacitive sensor readings obtained during the verification procedure for position 1 [4]. The complete explanation of this procedure can be found in [31], where the non-linear system of equations allowing us to find the searched HTM is clearly illustrated.

Fig. 2
figure 2

Coordinate reference systems of the AACMM, upper platform, and IMP global coordinate reference system

The IMP consists of a mobile hexagonal upper platform and a hexagonal fixed lower platform of dimensions 398.5 mm × 345 mm, respectively, designed in such way that the upper platform rotates around the fixed lower platform and descends every 60°, thus having six possible different positions with respect to the lower platform. To express the coordinates of the measured data in the lower platform global coordinate reference system (CSglobal) during the capturing process of the optimization procedure, a geometric mathematical modeling, based on six capacitive sensors fixed to the lower platform (Lion Precision Probe C5-E Compact Driver) and their targets fixed to the upper platform, is needed [31]. Moreover, to cancel the degrees of freedom and to ensure a good mechanical repeatability of the upper platform with respect to the lower platform, an arrangement of spheres and cylinders kinematic couplings was utilized. In the upper and lower platforms, three pairs of spheres are located at 120° between them and six cylinders are located at 60° between them, respectively. To determine the upper platform and lower platform reference systems, three characterization spheres are located on the sides of the platforms. These spheres are of great importance because they enable to express coordinates of measured data in the fixed CSglobal during the optimization or verification procedures of portable coordinates measuring machines such as AACMMs.

3 Identification parameters procedure

3.1 Data capture process and setup

The second step in the parameters’ identification of a kinematic model of an AACMM is the data capture process that will be used to evaluate and minimize the measurement error made by the measuring arm. This process consists of the capture of the coordinate points measured by the measuring arm along with the rotation angle joint values for each of the captured points from each evaluated position. The measuring error in a given position will be calculated by comparing the AACMM measured point with the real value of the point obtained from a calibrated artifact. These real values are considered the set of nominal coordinates that will be used in the calibration procedure. An important aspect to consider is the propagation of the errors from the calibrated gauge artifact to the results of the parameter identification procedure. To this end, it is extremely important to verify that the precision of the artifact used in the data capture process is at least an order of magnitude higher than that of the measuring arm to be calibrated. In this work, a calibrated ball bar gauge is used to materialize the calibrated distances; see Fig. 3. The ball bar gauge of 1.5 m long comprises a carbon fiber profile and 15 ceramic spheres of 22 mm in diameter, reaching calibrated distances between the centers with an uncertainty u0 for k = 2, in accordance with its calibration certificate, of (0.3 μm + 0.0000006 L), with L in millimeter.

Fig. 3
figure 3

Calibrated ball bar gauge artifact used in the AACMM identification procedure

Another important aspect to consider in the data capture process is the different positions of the ball bar gauge with respect to the measuring arm and the distribution of the measured reference coordinate points which will be used to calculate the arm’s measuring error. This calculated error will be minimized in the optimization procedure. It must be noted that, if the number of gauge positions and captured points are not big enough, the adjustment of the parameters that minimize the error in the captured data positions for the AACMM parameter identification procedure might not be generalizable to the rest of the AACMM working volume. The reason for this is that the optimization procedure of the geometric parameters from the captured data is obtained by a least squares fitting using the Levenberg-Marquardt algorithm. In the AACMM identification procedure, the objective functions considered were subject to different combinations of the following error quality parameters: (1) minimization of distance error between sphere’s centers; (2) point repeatability from different probe orientations and arm joint configurations; (3) minimization of the single point coordinate error that represents the distance between the same point coordinates in each of the six platforms positions expressed in the platform’s global coordinate reference system; (4) minimization of the difference between the calculated diameter of the upper platform characterization spheres and their nominal value.

In the data capturing process of the ball bar gauge, a self-centering passive probe was used. This probing system is composed of three spheres of 6-mm diameter located at 120° from each other as shown in Fig. 4. Moreover, with this probing system configuration, the centering of the probe direction with respect to the sphere center is ensured, making this direction cross it for any orientation of the probe, which allows direct probing of the sphere center when the three spheres of the probe and the sphere of the ball bar gauge are in contact.

Fig. 4
figure 4

Capturing data process with a passive kinematic self-centering probe

The main objective during the data capture process is to cover the maximum measuring working volume of the AACMM. The ability of the platform to rotate to six different positions with respect to a global coordinate reference system allows us to virtually increase the number of positions of the gauge artifact with respect to the measuring instrument and therefore to capture more data without having to generate physically new gauge positions. For this reason, the ball bar gauge used was located at two angular positions of 45° within the AACMM working volume (Fig. 5b). These positions were named as Diag45Upward_Orientation and Diag45twoUpward_Orientation, in which four spheres were probed for each position (spheres 3/5/7/9), materializing six distances between spheres centers as it can be observed in Fig. 5a. The two gauge positions are based on the volumetric performance test positions stated in ASME B89.4.22-2004 standard [1] and were also used in the verification of the arm. The selection of the minimum number of testing positions is a complex process which implies significant data capture and a further analysis of the influence of the testing position captured on the final error, discarding the less influencing testing positions [32].

Fig. 5
figure 5

a Center distance between measured spheres. b Ball bar positions at 45°

3.2 Evaluation methods of the error and quality parameters

As stated earlier, four error quality parameters were defined to evaluate the error throughout the iteration process in the parameter identification procedure and to select the AACMM’s parameters that minimize the defined quality parameter.

  • Evaluation of distance error

Since we have the information of the nominal distances materialized for the calibrated ball bar gauge calculated from the calibrated nominal centers, it is possible to evaluate the error committed by the measuring arm in these distances. The center of the sphere was calculated as the mean of all the measured points with the arm for every sphere, expressing the captured coordinates in the global coordinate reference system of the IMP.

In each of the two ball bar testing positions, six nominal distances were materialized between the probed sphere centers. The nominal distances calculated from the ball bar gauge were compared to the ones measured by the AAMCC, where the result was the distance error committed by the measuring arm. In total, six distance errors were evaluated for every ball bar position, in the two positions of the ball bar for every position of the IMP in all six platform positions, having a total of 72 distances and their corresponding distance errors. The Euclidean distance between two spheres, from the calculated mean points that correspond to the sphere center, is expressed by the following equation:

$$ {D}_{hij k}=\sqrt{{\left({\overline{X}}_{hij}-{\overline{X}}_{hik}\right)}^2+{\left({\overline{Y}}_{hij}-{\overline{Y}}_{hik}\right)}^2+{\left({\overline{Z}}_{hij}-{\overline{Z}}_{hik}\right)}^2}, $$
(3)

where Dhijk represents the Euclidean distance between spheres j and k in position i of the ball bar gauge and in the h position of the platform. The coordinates in the latter equation correspond to the mean of the captured points for the sphere j and k as shown in the following equations.

$$ {\overline{X}}_{hij}=\frac{\sum_{m=1}^{n_{hij}}X{(m)}_{hij}}{n_{hij}}, $$
(4)
$$ {\overline{Y}}_{hij}=\frac{\sum_{m=1}^{n_{hij}}Y{(m)}_{hij}}{n_{hij}}, $$
(5)
$$ {\overline{Z}}_{hij}=\frac{\sum_{m=1}^{n_{hij}}Z{(m)}_{hij}}{n_{hij}}, $$
(6)

where nhij corresponds to the number of captured points for the j sphere, in the position i of the ball bar gauge and in the h position of the platform. Similar observations hold for sphere k. This way, considering Dnjk as the nominal distance between spheres j and k obtained by the calibration data, it is possible to calculate the distance error made by the measuring arm between spheres. This error corresponds to the deviation between the nominal distance of the ball bar gauge and the measured distance between the probed spheres.

$$ E{D}_{hijk}=\sqrt{\left({D}_{hijk}-D{n}_{jk}\right){}^2}. $$
(7)
  • Evaluation of the measurement repeatability

Once the coordinates of the captured points and the mean values are determined for each sphere, it is possible to evaluate the repeatability of the measuring arm by calculating the standard deviation for each of the coordinates of the probed points expressed in the IMP global coordinate reference system. An example of this calculation for the X coordinate of sphere j, in position i of the ball bar gauge and in the h position of the platform, for the nhij number of captured points in sphere j is shown in Eq. 8. An analogous calculation applies for coordinates Y and Z.

$$ {\sigma}_{X_{hij}}=\sqrt{\frac{\sum_{m=1}^{n_{hij}}{\left(X{(m)}_{hij}-{\overline{X}}_{hij}\right)}^2}{n_{hij}-1}} $$
(8)

A combined standard deviation is introduced in the objective functions as a parameter that includes the quadratic sum of the standard deviations obtained for each coordinate, as it is observed in Eq. 9. Six platform positions were considered, to calculate the standard deviations, as well as two orientations of the ball bar gauge and four spheres of the ball bar measured in each gauge orientation with 6 to 8 probed points for each sphere.

$$ {\sigma}_{Com{b}_{hij}}=\sqrt{{\left(2{\sigma}_{X_{hij}}\right)}^2+{\left(2{\sigma}_{Y_{hij}}\right)}^2+{\left(2{\sigma}_{Z_{hij}}\right)}^2} $$
(9)
  • Evaluation of single point error

One of the main characteristics of the indexed metrology platform is its ability to generate point coordinates expressed in a global coordinate reference system. For the evaluation of the single point error, the distance between the center coordinates of the same sphere, expressed in the global coordinate reference system for two different platform positions, was calculated with the scheme shown in Table 2. In total, there are 15 error points for sphere and gauge orientation, having 120 error points evaluated. The coordinates of a point measured by the arm in different platform positions expressed in the global coordinate referencev system theoretically should be the same, since the platform should not contribute with any variation to the results. The error between the mean points of all the calculated values was considered as a parameter to evaluate.

Table 2 Scheme of the calculation of the point errors per sphere 3/5/7/9 and gauge positions/orientations

In the way described, it is possible to calculate the error point of the center of sphere j, in the position h of the ball bar gauge and in the k position of the platform, as the difference between the coordinates expressed in the IMP global coordinate reference system for the sphere center in position h of the gauge and those of the center of the same sphere in position k-1 of the platform, as presented in Eq. 10.

$$ {\displaystyle \begin{array}{c}E{P}_{hjk}=\sqrt{{\left({\overline{X}}_{h,j,k}-{\overline{X}}_{h,j,k-1}\right)}^2+{\left({\overline{Y}}_{h,j,k}-{\overline{Y}}_{h,j,k-1}\right)}^2+{\left({\overline{Z}}_{h,j,k}-{\overline{Z}}_{h,j,k-1}\right)}^2}\\ {}h=1,2;j=1,...,4;\mathrm{k}=2,...,6.\end{array}} $$
(10)
  • Evaluation of the diameter error of the upper platform characterization spheres

The last error considered in the kinematic parameter identification procedure of the AACMM is the error committed by the arm in the measurement of the upper platform characterization spheres. The measurement of the center of each of these spheres is necessary for the determination of the upper platform coordinate reference system and the calculation of the HTM that links the AACMM coordinate reference system with the IMP upper platform coordinate reference system. The measurement error in the diameter of the characterization sphere i is defined by Eq. 11, as the difference between the nominal calibrated diameter, dcal (20 mm), and the diameter, di, obtained by the Gaussian sphere associated to the measurements of the sphere points probed by the measuring arm.

$$ E{R}_i= abs\left({d}_i-{d}_{cal}\right),\mathrm{for}\ i=1,...,3. $$
(11)

3.3 Kinematic parameter optimization procedure

In the parameter identification procedure of the AACMM, we need to determine the parameter values that minimize the final error of the AACMM in all the captured positions. In this work and given the non-linear nature of the arm kinematic model, a non-linear least square approximation by the Levenberg-Marquardt method is used as an optimization algorithm. The mathematical model of the AACMM can be described, for any arm position, by means of Eq. 12, based on the measuring arm kinematic model described in Sect. 2.1.

$$ p=f\left({a}_i,{d}_i,{\theta}_i,{\alpha}_i\right),\mathrm{for}\ i=1,...,7, $$
(12)

where p = (x,y,z), are the coordinates of the measured point with respect to the global coordinate reference system of the arm. Therefore, there are a total of 28 kinematic parameters to optimize in this identification procedure, whose initial values are shown in Table 1, according to the D-H kinematic model of the AACMM.

In this case, not only the AACMM kinematic model but also the indexed metrology platform mathematical model is included in the objective function, since the error terms in the case of the evaluation of the distance error, single point error or measurement repeatability, will be carried out for points captured by the arm but expressed in the IMP global coordinate reference system throughout the IMP mathematical model. For this reason, it is necessary to calculate the homogeneous transformation matrices (HTM) that allow to link the AACMM coordinate reference system to the IMP upper platform and the HTM that links the IMP upper platform coordinate reference system to the IMP global coordinate reference system located in the fixed lower platform. A complete explanation of this procedure can be found in [31].

The HTM that allows the change from the AACMM coordinate reference system to the IMP upper platform coordinate reference system needs to be calculated in each iteration within the optimization procedure from the captured data of the upper platform characterization spheres by the AACMM, whose centers allow determining the associated coordinate reference system. From the saved joint angles, θ1θ7, during the measurement of the characterization spheres by the AACMM, we obtained the coordinates of the sphere centers through the AACMM kinematic model and also the transformation matrix that links the AACMM and IMP upper platform coordinates systems by means of the three sphere centers. Therefore, the AACMM’s optimized parameters obtained during the identification procedure will affect this matrix and the calculation of the coordinates and diameters of the characterization spheres that are used as a quality parameter in the optimization procedure.

The HTM that allows the change from the IMP upper coordinate reference system to the IMP global coordinate reference system is calculated along the optimization procedure for each captured point based on the capacitive sensor readings, and it will be independent of the optimized parameters.

Once the optimized points are expressed in the IMP upper coordinate reference system, the next step is to proceed with the calculation of the different error quality parameters explained in Sect. 2.3 for all the spheres (3/5/7/9), positions of the ball bar gauge (Diag45Upwar_Orientation, Diag45twoUpwar_Orientation), and the six rotating positions of the IMP. For this purpose, we need to define the objective function to minimize, which is usually the sum of the squared components of the considered error. In this work, we defined eight objective functions, including the different error quality parameters, explained in Sect. 2.3, that are expressed individually or combined.

The captured data in the parameter identification procedure will be evaluated through the defined objective functions that are explained in the following. The scheme of the optimization procedure is shown in Fig. 5. The stopping criteria of the optimization algorithm was programmed based on the detection of the objective function convergence, as illustrated in Fig. 6.

Fig. 6
figure 6

Scheme of the optimization procedure

The first objective function, objective function 1, quantifies the distance error of the AACMM for each considered distance according to Eq. 7, including the terms of the distance error for the four captured spheres, two positions of the ball bar gauge, and six platform positions. The quadratic sum of the 72 distance errors evaluated in the optimization procedure is defined as objective function 1 that is developed according to Eq. 13.

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2}, $$
(13)

with p = 2 gauge positions, q = 4 measured spheres per platform positions (spheres 3/5/7/9), and r = 6 platform positions.

The second objective function, objective function 2, includes as an additional error term to the distance error, the diameter error of the upper platform characterization spheres described in Sect. 2.3 according to Eq. 11. In this way, we included in the optimization the minimization of the error made by the arm in the measuring process of the three characterization spheres of the upper platform. Its expression as the quadratic sum of the diameter errors carried out by the arm in the measuring of the three characterization spheres is presented in Eq. 14, together with the distance error.

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2+E{R_1}^2+E{R_2}^2+E{R_3}^2}, $$
(14)

with p = 2 gauge positions, q = 4 measured spheres per platform positions (spheres 3/5/7/9), and r = 6 platform positions.

As mentioned before, through the IMP mathematical model and the capacitive sensor readings, the HTM that links the coordinate reference system of the IMP upper platform with the global coordinate reference system of the platform for each measured point and position of the platform can be obtained. By doing so, a point should have the same coordinates expressed in the global coordinate reference system, regardless of the platform position, and the point error can be calculated as the difference of a point coordinates between two positions of the platform, expressed in the IMP global coordinate reference system (see Eq. 10). The inclusion of the single point error term in the objective function together with the distance error results in the expression of objective function 3 as shown in Eq. 15.

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2+E{P_{i,j,l}}^2}, $$
(15)

with p = 2 gauge positions, q = 4 measured spheres per platform positions (spheres 3/5/7/9), and r = 6 platform positions.

The last quality error parameter to be included in the objective functions of the optimization procedure is the combined standard deviation of the captured points of all the spheres, the gauge, and the platform positions, expressed in the IMP global coordinate reference system. This term allows to evaluate the measurement repeatability. Therefore, the objective function 4 is formulated combining a minimization of the distance error between spheres centers expressed in the platform GCS and a reduction of the combined standard deviation. This function evaluates the behavior of the arm in both, its volumetric precision and point repeatability, according to Eq. 16.

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2+{\sigma_{Combijl}}^2}. $$
(16)

Other possible objective functions included in the parameter optimization procedure, shown in Eqs. 17 to 20, combine the different error quality parameters presented in Sect. 2.3. For all the defined objective functions, the optimization procedure will be carried out with p = 2 gauge positions, q = 4 measured spheres per platform positions (spheres 3/5/7/9), and r = 6 platform positions.

Objective function 5

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2+E{P}_{i,j,l}^2+E{R}_1^2+E{R}_2^2+E{R}_3^2} $$
(17)

Objective function 6

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2+{\sigma}_{Combijl}^2+E{R}_1^2+E{R}_2^2+E{R}_3^2} $$
(18)

Objective function 7

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2+E{P}_{i,j,l}^2+{\sigma}_{Combijl}^2} $$
(19)

Objective function 8

$$ \varPhi =\sum \limits_{l=1}^r\sum \limits_{i=1}^p\sum \limits_{j,k=1}^q\sqrt{{\left({D}_{i,j,k,l}-{D}_{n,j,k,l}\right)}^2+E{P}_{i,j,l}^2+E{R}_1^2+E{R}_2^2+E{R}_3^2+{\sigma}_{Combijl}^2} $$
(20)

The results obtained for the evaluation quality parameters corresponding to the application of the identified parameters over the gauge positions used in the procedure by the eight objective functions shown in Eqs. 13 to 20 are presented in Table 3.

Table 3 Quality parameters obtained from the optimization procedure for objective functions 1–8

Reviewing the quality parameter values obtained for the evaluation of the different objective functions (1–8), it is clearly observed that the optimization procedure minimizes the distance error in all the objective functions since it is included as an error term to be minimized in all of them. The best results for the mean distance error are observed for the objective functions 1, 3, 5, and 7 with values of 0.004080 mm, 0.006353 mm, 0.006946, and 0.006901 mm, respectively. These values can be considered good since the volumetric precision indicated by the manufacturer of the arm Faro Platinum is ± 0.043 mm. Additionally, for the objective functions 3, 5, and 7, the best results for the point error values were obtained: 0.028136 mm for objective function 3, 0.030079 mm for objective function 5, and 0.028391 mm for objective function 7. The same case was observed for the results of the standard deviation in the coordinates X, Y, and Z with values 0.044889 mm, 0.042732 mm, and 0.033180 mm for objective function 3; 0.036564 mm, 0.041649 mm, and 0.027507 mm for objective function 5; and 0.041649 mm, 0.038958 mm, and 0.030951 mm for objective function 7, in which the repeatability value provided by the manufacturer was 0.030 mm. The greater values of the standard deviation are observed in the X coordinate, and the lower values were obtained in the Z coordinate. Although the combined standard deviation was not included in objective function 3 and point error was not included in objective function 5, it is noteworthy to highlight that the values for the quality parameters obtained were good in both cases, despite not being considered in the optimization.

Regarding the diameter errors in the measurement of the upper platform characterization spheres of the arm, the optimization procedure reduces the corresponding quality parameter in the cases of the objective functions 2, 4, 6, and 8, where they are included as a term in the function, showing the best results in the case of the optimization with the objective function 2. In this scenario, the diameter error values of the characterization spheres 1, 2, and 3 of 0.011953 mm, 0.0103641 mm, and 0.008445 mm, respectively, are compared to the initial values of 0.301191 mm for sphere 1, 0.219957 mm for sphere 2, and 0.276728 mm for sphere 3.

In objective functions 2, 4, 6, and 8, where the diameter error of the spheres is reduced, such good results are not observed for the rest of the mentioned quality parameters. Then, it can be concluded that the objective functions that better worked in the parameter identification procedure are functions 3, 5, and 7, which include combinations of distance error, point error, and combined standard deviation, where objective function 7, which includes all three error parameters, showed a slight better behavior. The values of the identified kinematic parameters for the objective function 7, based on the initial values of Table 1 for all the captured positions, are shown in Table 4.

Table 4 Identified values for the model parameters by L-M algorithm (objective function 7)

3.4 Evaluation of the identified parameters

The parameter optimization process concludes with an evaluation of the behavior of the arm with the set of the identified optimum parameters in one or several positions different from the ones used in the optimization procedure. In this case, the gauge Diag45Downward_Orientation (Fig. 7) for position 4 of the platform was chosen as our test position, since this is a diagonal position (45°) that allows an overlap of the working volume in two octants of the arm. For this position, 6, 7, or 8 points of the spheres 3, 5, 7, and 9 were probed, analogously to the procedure performed in the optimization by turning the platform to position 4. The quality parameters used in this test position were equal to the ones used in the parameter identification procedure: distance error, single point error, standard deviation, and diameter error of the upper platform characterization spheres.

Fig. 7
figure 7

Test position Diag45Downward_Orientation used in the evaluation process

The results of the quality parameters obtained for the set of optimum parameters in the test position of the eight objective functions according to Eqs. 13 to 20 are shown in Table 5.

Table 5 Evaluation results with the set of identified parameters from the optimization procedure for the test position of the ball bar gauge

As it can be observed in the results shown in Table 5, for the evaluation of the test position, we obtained values in the same order of magnitude that of those of the optimization positions for the mean distance errors, point error, and standard deviation, for the objective functions that showed better results in the optimization procedures 3, 5, and 7. Observing objective function 7, we obtained values for the mean distance error of 0.006101 mm, point error of 0.028691 mm, and standard deviation in the X coordinate of 0.042039 mm, Y coordinate of 0.040158 mm, and Z coordinate of 0.031351 mm. The maximum distance error in this objective function 7 was 0.012625 mm, which is below 0.012825 mm, the maximum value obtained in the identification procedure.

4 Conclusions

In this work, the use of an indexed metrology platform for the kinematic parameter identification procedure of an articulated arm coordinate measuring machines was presented. The kinematic parameter optimization process was carried out by the Levenberg-Marquardt method as the optimization algorithm, which purpose is to determine the parameter values that minimize the measurement arm final error in all the captured positions. Moreover, the Denavit-Hartenberg algorithm was used to model the kinematics of the AACMM and to deal with the developed parameter identification procedure. After the definition and measurement of the spheres in the captured positions corresponding to two diagonal test positions and six rotating platforms positions, the determination of the quality parameters and error terms to be included in the objective functions was done. The objective functions that obtained the best quality parameter values were 3, 5, and 7 where the error terms to be minimized included the distance error, the point error, and the standard deviation in X, Y, and Z coordinates, in which these terms were used individually or combined. In the case of the mean distance error, the values obtained were 0.006353 mm (OFunction 3), 0.006946 mm (OFunction 5), and 0.006901 mm (OFunction 7), which are good values considering the volumetric precision of ± 0.043 mm indicated by the manufacturer of the Faro Platinum Arm used in this research work. In the same way in the case of the standard deviation results in the X, Y, and Z coordinates with values of 0.044889 mm, 0.042732 mm, and 0.033180 mm for objective function 3, 0.036564 mm, 0.041649 mm, and 0.027507 mm for objective function 5 and 0.042739 mm, 0.038958 mm, and 0.030951 mm for objective function 7, where the repeatability value provided by the manufacturer was 0.030 mm. The last quality parameter evaluated, the error in the upper platform characterization spheres, showed the best results values in the evaluation with the objective functions 2, 4, 6, and 8 where it is included as an error term. Nevertheless, the results with these objective functions were not as good for the rest of the quality parameters, so their evaluation in the gauge test position was not considered. The objective function 7 which includes the three parameters of distance error, point error and combined standard deviation is the function that showed the best behavior, but not with much difference with respect to objective functions 3 and 5.

To validate the results in this optimization procedure, the AACMM optimum parameters obtained in the identification procedure were evaluated with a gauge position different from the ones used in the optimization. In this case, there were observed values in the same magnitude order than those in the optimization positions for mean distance errors, point error, and standard deviation for the objective functions 3, 5, and 7, which showed the best results in the optimization procedure. Particularly, in objective function 7, we obtained values of mean distance error of 0.006101 mm, point error of 0.028691 mm, and standard deviation in coordinates X (0.0042039 mm), coordinate Y (0.040158), and coordinate Z (0.031351 mm). The maximum distance error in objective function 7 was 0.012625 mm, which is below 0.0122825 mm, the maximum value obtained in the identification procedure. Therefore, the results obtained in this work allow to validate the use of the indexed metrology platform in the kinematic parameter identification procedure of articulated arm coordinate measuring machines. Moreover, one of the main advantages to be highlighted of the indexed metrology platform is the ability to express points in a global coordinate reference system, which enables the evaluation of a greater working volume of the measuring arm without the need to physically probing these points, thus reducing the time and physical effort needed to carry out these types of procedures without compromising the reliability of the results. Finally, the time needed to carry out these types of verification or calibration procedures for AACMMs was reduced from approximately 1 day to only 3 h by eliminating the necessity of moving the support of the calibrated gauge object around the measuring instrument.