Determining the uncertainty of measurement with the use of a Virtual Coordinate Measuring Arm

Coordinate Measuring Arms are redundant measuring devices that are widely used today. Therefore, this paper presents a solution of the problem of online estimation of accuracy of measurements done on coordinate measuring arms. This paper shows the metrological model called Virtual Coordinate Measuring Arm. It is composed of a kinematic model of arm, created using the Denavit–Hartenberg convention connected with PC-DMIS measuring software and usage of Monte Carlo method. Verification tests done according to VDI/VDE 2617–7 guideline show that the created model is working properly. Also the comparison of results of measurements done on real Coordinate Measuring Arm and simulated by the created model proves correctness of the model. The metrological model of Virtual Coordinate Measuring Arm can be a breakthrough in the use of the coordinate measuring arms in quality assurance systems in production.


Introduction
The accelerated rate at which the industry embraces new technologies creates new challenges in the field of coordinate metrology-most of them closely related to the requirements of modern production systems. The developers of measuring devices need to respond to the ever-increasing demand for quality products by coming up with new solutions and improving over the existing ones, which would allow for faster and more accurate measurements. One of their most recent developments is the Coordinate Measuring Arm (CMA)a device which is user friendly, and can perform both fast and accurate measurements.
Despite their obvious benefits, CMAs have not received enough attention (i.e., in the European Union), which results in the absence of universally approved methods for calibration and accuracy assessment. In light of this, determining the uncertainty of measurement of said devices is one of the most important concerns; which requires an extensive research to define all possible factors affecting the accuracy of the machine [1][2][3]. As of today, one of the most effective ways of defining the uncertainty of coordinate measurement is the so called Virtual Coordinate Measuring Machine. Such fully functional virtual model of coordinate arm has been created by the Laboratory of Coordinate Metrology at the University of Technology in Cracow. The model has proven capable of simulating measurements in an online mode, as well as calculating the uncertainty of measurement of a physical CMA (Fig. 1a) [4][5][6][7][8][9].

Stages of constructing a virtual CMA
The concept of Virtual Coordinate Measuring Arm (VCMA) is based on a metrological model formed according to the kinematic description of a physical CMA, and is aimed at simulating its operations. The dimensional analysis is to be carried out in accordance with the Denavit-Hartenberg notation. This notation associates a local coordinate system with every joint of the machine. Thus, the position and orientation of the end effecter of CMA are to be determined through the forward kinematics task followed by a string of transformations of adjacent coordinate systems. Understanding the processes of the metrological model, as well as identifying any possible errors affecting the accuracy of measurement allows for simulating multiple measurements with the application of the Monte Carlo method.

Developing a kinematic model of a CMA
In order to define the geometrical elements of a given CMA, a kinematic model of the machine has to be constructed first (Fig. 1b).
The following universal CMA-kinematic model based on the D-H [10] coordinates was created on the basis of the manufacturer's documentation, and with the use of a physical CMA.
Using the kinematic model of the measuring arm, the following transformation matrices of coordinate systems were formulated: where α i -the angles between the z axes, θ i -the configuration coordinates reflected by the angles between the x axes, l i -the length calculated on the x axis, and λ i -the length calculated on the z axis.
The matrix A contains data describing the position and orientation of each respective joint of the machine, and can be represented as: l ix m ix n ix l iy m iy n iy l iz m iz n iz 2 4 3 5 ð3Þ where B the orientation matrix of each respective joint P the position matrix of each respective joint p x ,p y ,p z the position coordinates of each respective joint l ix ,l iy ,l iz ,m ix ,m iy , m iz ,n ix ,n iy ,n iz vector coordinates describing the rotation of all respective parts.

Adapting a forward kinematics task
The forward kinematics task is a staple procedure in examining mechanical manipulation. It is a static, geometric task, which translates the configuration coordinates of a device into the Cartesian coordinates [10][11][12][13][14][15][16].
The position and orientation matrix of the n -system in relation to the system associated with the i -joint can be defined as a multiplication of the following transformations: where: A the matrix defining the position and orientation of each respective segment T the transformation matrix of the matrix A .

Determination of the accuracy of the geometrical elements of a CMA
Determining of the accuracy of geometrical elements of a CMA is a multi-staged task and an extremely difficult and laborious one [17][18][19][20][21]. In most cases, all of the tasks are performed only once, while the remaining ones are repeated only when calibrating the device, or after its dismantling and reassembly.
The first necessary step here is to determine the forward kinematics task. Performing this task provides the necessary data regarding the position and orientation of the measuring stylus. To build the forward kinematics task equations, the parameters which can be found in the manufacturer's documentation should be used. It is obvious that data given by the manufacturer are just some kind of design assumption and that the parameters for the real CMA would be slightly different. The significance of this difference may be of a great importance for developed method and due to this, the real values for CMA parameters have to be determined. There are 22 parameters that include: the length of the segments, as well as eccentricities, the angles between the axes, "zero shifts," that is, the difference between the real indications of the encoders, and the initial assumptions (Fig. 1b). Those parameters are irrespective to the CMA configuration as they are constant in all CMA positions.
In order to determine real CMA parameters, next step have to be undertaken. This entails conducting a series of measurements across the whole measuring space of the arm so that it is covered entirely (Fig. 2b). Each of the series has to contain at least 22 measurements in order to create the equation system that allows the determining of 22 unknown variables.
To accomplish this, the configuration coordinates θ i , as well as the Cartesian coordinates x m , y m , and z m have to be input first. Then, after receiving data from the measuring device, that data has to be substituted into the system of equations formed previously, which would allow to calculate the exact geometrical parameters. So, in this step, the data that are usually constant during the computation of forward kinematics task are taken as unknown while data concerning the position and orientation of last joint are taken as constant and read from the CMA software (those are X m , Y m , Z m -coordinates measured by arm in each point, A m , B m , C m unit vectors of stylus orientation and θ i so the angles indicated by the encoders during each measurement).
The algorithm for calculating the parameters of the model is shown in Fig. 2a. Table 1 shows the data given by the manufacturer compared with the results obtained by performing the above mentioned steps (symbols used in Table 1 are consistent with description to Fig. 2a).
Described differences in parameters values are mainly caused by the inaccuracies during manufacturing and assembly processes of CMA's elements. As an example, unintended rotation (in relation to ideal angular position given in manufacturer data) of encoder during its mounting could be given as a cause of "zero shifts" error. As a next example, the perpendicularity error of each joint could be taken. It is reflected by the differences of α parameters. In the case of described CMA, the "zero shift" of encoder no. 5 (ξ 5 parameter) could be the reason of relatively big differences of point coordinates values produced by mathematical models based on real data and manufacturer data (see Table 2).
After each series of measurements, the indications of all encoders have to be verified. Since every encoder has a specific uncertainty of measurement stated by its manufacturer, it is advisable to check whether the indications taken by the operator correspond with these data. During measurements presented in this paper, authors used different mounting objects (like prisms, cubes) in order to place CMA in a stable position that does not allow unintended encoders movements. To do this, also a set of blockades proposed on Fig. 3 could be installed. Naturally, passing the test requires that all the factual indications are contained within the threshold of measurement uncertainty specified by the manufacturer [11,16,[22][23][24][25]. This condition was satisfied for all of the points measured during verification of the mathematical model of CMA.
In order to prove the correct functioning of the proposed mathematic model of CMA, the coordinates produced with its usage were compared with those indicated by the CMA. Additionally, the coordinates produced by model based on manufacturer data were also given ( Table 2).
So far, the metrological model simulating accurately the operations of a physical CMA has been described. What remains to be done, is to describe the process of simulating a single measurement in a quasi-real time, so that the uncertainty of measurement can be calculated, and the virtual model be rendered fully functional.

Simulating multiple measurements with VCMA
The most crucial module for measurement simulation is the module utilizing the Monte Carlo method (MCM) [26]. The initial procedure necessary in using the MCM requires defining the output values, as well as creating a mathematical model describing the interconnections between those values. The MCM is a numerical method of probability propagation which entails a random sampling from probability density functions (PDFs). The probability propagation process is a certain way of defining the probability density function for output values, which utilizes the analysis of distribution functions attributed to input values, thus affecting the output values in predictable fashion.
The MCM can be used in defining measurement uncertainty during measurement simulation. This method seems to be an especially valid choice due to the random nature of sampling from probability distributions.
A software module (Fig. 4) has been developed to assist in this task [14]. The program selects a number of point coordinates randomly, based on the coded mathematical model, data from the encoders, and the data regarding the distribution of points, and saves it to a file along with the corresponding orientation of the measuring stylus.
In using the MCM, not only the one value of mean from series of measurements is taken, but the system's behavior is tested for different values probed from probability density functions assigned to input quantities. Admittedly, the values would be approaching the average value, which is one of the typical characteristics of the PDF [5,6,8,9,27].
In order to perform simulation of measurement, the PDFs are assigned to encoder indications during measurement of each point. The Gaussian distribution with parameters (x , σ) is assigned to each encoder indication, where x denotes the mean value of distribution and σ denotes its standard deviation. From the practical point of view, during simulation of each point, the actual indication of encoder read from the CMA is taken as a mean value while the standard uncertainty of encoders given by the manufacturer is taken as a standard deviation. This step is performed for all six encoders, simultaneously. Fig. 7 a The position of the cylinder in the measuring space [28]; b The cylinder used for verifying the VCMA (symbols explained in Table 3)

Fig. 8 Conducting measurements of the 'c' and 'd' values
The main goal of presenting the Virtual Coordinate Measuring Arm model is the estimation of measurement uncertainty basing on the results of single measurement and usage of accurate mathematical model, which allows performing multiple simulations of measurements taking into consideration possible errors of CMA. Thanks to this, it is possible to assess the measurement uncertainty almost in the same time when the result of measurement is produced (Fig. 5). Estimated value of uncertainty could be given then in a measurement report, along with the measurement result.

Verification of the VCMA model
The verification of the simulation model was carried out according to the VDI/VDE 2617's instructions [28 (p. 7)]an annex regarding the uncertainty of measurement verification using a standard cylinder by comparing the results of calibration measurements with those obtained from a simula-   tion. Second stage was done by comparing the results of multiple measurements performed on physical CMAs with simulation results. In doing this, two different CMAs, ROMER Multi-Gage and ROMER Omega 2025, were used. The parameters of the standard were measured on a physical device according to VDI/VDE 2617. The data acquired in the process was then copied into the measurement simulation program, and then transferred to metrological software in the form of multiple measurements (Fig. 6).

The verification of measurement results
The previously listed instructions provide the example of measurement of a cylinder placed in various locations of the simulated measuring space. The recommended orientation of the cylinder is shown in Fig. 7. The virtual CMA model was the object of the study discussed below. It consisted of the verification of the model achieved by comparing the results of simulation and calibration of standard, and in the second stage, by comparing the standard measurement, as well as the values of uncertainty of measurement, for both the simulation and a physical device.
The object was placed in four distinct positions during the measurement process: parallel to the x axis parallel to the y axis parallel to the z axis diagonally to the XY plane The cylinder presented at Fig. 7b as a test standard may be confusing, as it has one diameter but two axes. It was presented in this way because the idea here is to measure two cylinders, each on the different side of test standard, and then to evaluate the coaxiality deviation of the first cylinder axis (denoted as B) in relation to second cylinder axis (denoted as A ). This situation was presented on the right side of Fig. 8.

Stages of the measuring process
All measurements were conducted in an air-conditioned laboratory, in temperature=20±0.5°C. First, the measurement was carried out on physical CMAs according to Fig. 7. In order to estimate the simulated uncertainty of measurement, the measurement was repeated 32 times. In simulating the measurements, the simulated XYZ values of the position of the arm stylus were imported to the VCMA system, and then to PC-DMIS.
Types of data that are to be calculated and interpreted in PC-DMIS (Table 3):

Interpreting the results
In the first stage of verification, the simulation model is considered to be operating correctly when Formula (6) is satisfied: where y k -the value obtained in the calibration process of standard, y-the measured value, U k -expanded uncertainty of the calibration of standard, U -expanded uncertainty of measurement (determined using simulation model that is being checked).
The results obtained by means of simulation performed using created VCMA model was inserted into Formula (6). The inequality was satisfied. It allows the conclusion that the described model is consistent with the recommendations of [28] and thus should be considered as working properly.
The results of both physical and simulated measurements were also compared with the results of calibration of the measured standard. The deviations presented in Fig. 9a-d are the deviations of measurement results from the standard calibration results.
During the measurement, a standard of perpendicularity was placed on a special prism to ensure its stability and mobility. The dimensions of the standard were as follows (in accordance with Fig. 7) ( Table 4): The points on the surface of the standard used for verifying the model are distributed symmetrically and densely, according to Pt. 7.12.1. VDI/VDE 2617-7 (Fig. 8).
The values acquired from the arm's encoders (saved as a text file) were used for obtaining the XYZ values in the simulation program (Fig. 3). After that, the text file generated by the simulation software was imported to the PC-DMIS metrological tool.
The measurements were simulated 32 times for each configuration of the standard, and measured with a physical CMA another 32 times for comparison. The diagrams below present the results of both the real time and simulated measurements. It should be noticed here that in both cases, the results, as well as the uncertainty of measurement values, are comparable.

Conclusion
The concept of verification research presented in this paper is similar to the case of the virtual models for CMMs, and follows the guidelines of VDI/VDE 2617-7 [28]. In the case described, the primary task was the assessment of the accuracy of measurement achieved through determining the uncertainty of measurement for selected parameters of a test object (cylindrical perpendicularity standard) with the use of both the CMA model and the simulation, followed by comparing the results with standard calibration results and those from the real arm that was modeled.
The starting assumption here is the use of the manufacturer's software, which allows for a direct reading of the vector compatible with the orientation of the arm stylus, the coordinates of the probe tip x, y, and z, as well as the configuration coordinates. Loading this data allows the use of an algorithm of the forward kinematics task, so as to obtain the coordinates of the contact point. In order to verify the values of uncertainty of measurement, the output data from the forward kinematics task is compared with the results of real measurements. These verification procedures allow for a conclusion that the VCMA measurement simulation method yields satisfactory results, which are comparable to those of a physical CMA with respect to the uncertainty of measurement.
This fulfills the initial assumption and suggests the possible future development of an online VCMA-assisted measurement accuracy assessment and measurement simulation. Constructing such model, however, would require a close cooperation with CMA-manufacturers, in order to gain access to the necessary configuration data.
Open Access This article is distributed under the terms of the Creative Commons Attribution License which permits any use, distribution, and reproduction in any medium, provided the original author(s) and the source are credited.