15
Uncertainty estimation in robot kinematic calibration Jorge Santolaria a,n , Manuel Gine ´s b a Department of Design and Manufacturing Engineering, Universidad de Zaragoza, Marı ´a de Luna 3, 50018 Zaragoza, Spain b General Motors Spain. Polı ´gono Entrerrios s/n - 50639 Figueruelas, Zaragoza, Spain article info Article history: Received 27 May 2011 Received in revised form 3 August 2012 Accepted 5 September 2012 Available online 3 October 2012 Keywords: Robot calibration Measurement uncertainty Circle-point Parameter identification Kinematic parameters abstract Currently, the results of a robot calibration procedure are expressed generally in terms of the position and orientation error for a set of locations and orientations, which have been obtained from the previously identified kinematic parameters. In this work, a technique is presented to evaluate the calibration uncertainty for a robot arm calibrated using the circle point analysis method. The method developed is based on the probability distribution propagation calculation recommended by the Guide to the Expression of Uncertainty of Measurement and on the Monte Carlo method. This method makes it possible to calculate the uncertainty in the identification of each single robot parameter, and thus, to estimate the robot positioning uncertainty due to the calibration uncertainty, rather than based on a single set locations and orientations that are previously defined for a unique set of identified parameters. Additionally, this technique allows for the establishment of the best possible conditions for the data capture test, which identifies parameters and determines which of them have the least possible calibration uncertainty. This determination is based on the variables involved in the data capture process by propagating their influence up to the final robot accuracy. & 2012 Elsevier Ltd. All rights reserved. 1. Introduction Robot kinematic calibration is a key process that must be performed after robot manufacture and assembly or during periodical recalibration. Typically, industrial robots attain high repeatability levels and are able to successfully perform their tasks because they are mainly used in repetitive applications. These repeatability values clearly demonstrate the high mechan- ical quality of these manipulators and their precise positioning capacities. However, the precision values reached are usually below the capacity that these repeatability values predict. This is, in many cases, because of the application that the robots are used or planned for. This means that because a robot is pro- grammed in teach mode, it is possible to reach precision levels within the repeatability range, but in the offline programming of goal positions and orientations, the accuracy is much lower. In this situation, the kinematic calibration, also called geo- metric calibration, is used to improve the position and orientation accuracy of the robot by calculating the kinematic model para- meters that either minimise the error caused by the manipulator or better fit the robot’s actual kinematics. These techniques assume that the main error in the position of the arm is due to the differences between the nominal robot kinematic parameters and the actual parameters. The sources of robot error are both geometric and non-geometric [16]; therefore, the sampled data in the identification procedures are affected by these errors. However, in general, only the geometric parameters are varied to minimise the final error of the robot arm. Of the large number of robot calibration techniques documented in the literature (in terms of measurement systems used in data capture, constraints, or sequencing data sampling and later treatment [6]), it is possible to classify them as three types: (1) open-loop methods, (2) closed-loop methods and (3) screw-axis measurement meth- ods. There are several possibilities for errors in each of these three areas. In the first group of techniques, real robot poses are captured using an external measurement system. The second group of techniques is based on the differential pose where the error information is taken from the creation of closed kinematic chains that fix one or more of the position and orientation constraints to the end of the effector. This allows the establish- ment of an equation system to determine a set of parameters, which is known as a self-calibration technique. In terms of the mathematic solution of the procedure, the first two groups use non-linear, iterative optimisation techniques to adjust the set of parameters identified from the data that is sampled from differ- ent mechanism positions and orientations; this process helps minimise the error. To calculate the error obtained in sampled positions and to eventually evaluate the error generalisation, data are obtained after the calibration in positions different from the positions used in the optimisation procedure. The third group of Contents lists available at SciVerse ScienceDirect journal homepage: www.elsevier.com/locate/rcim Robotics and Computer-Integrated Manufacturing 0736-5845/$ - see front matter & 2012 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.rcim.2012.09.007 n Corresponding author. Tel.: þ34976761887; fax: þ34976762235. E-mail address: [email protected] (J. Santolaria). Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384

Uncertainty estimation in robot kinematic calibration

  • Upload
    unizar

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384

Contents lists available at SciVerse ScienceDirect

Robotics and Computer-Integrated Manufacturing

0736-58

http://d

n Corr

E-m

journal homepage: www.elsevier.com/locate/rcim

Uncertainty estimation in robot kinematic calibration

Jorge Santolaria a,n, Manuel Gines b

a Department of Design and Manufacturing Engineering, Universidad de Zaragoza, Marıa de Luna 3, 50018 Zaragoza, Spainb General Motors Spain. Polıgono Entrerrios s/n - 50639 Figueruelas, Zaragoza, Spain

a r t i c l e i n f o

Article history:

Received 27 May 2011

Received in revised form

3 August 2012

Accepted 5 September 2012Available online 3 October 2012

Keywords:

Robot calibration

Measurement uncertainty

Circle-point

Parameter identification

Kinematic parameters

45/$ - see front matter & 2012 Elsevier Ltd. A

x.doi.org/10.1016/j.rcim.2012.09.007

esponding author. Tel.: þ34976761887; fax:

ail address: [email protected] (J. Santolaria).

a b s t r a c t

Currently, the results of a robot calibration procedure are expressed generally in terms of the position

and orientation error for a set of locations and orientations, which have been obtained from the

previously identified kinematic parameters. In this work, a technique is presented to evaluate the

calibration uncertainty for a robot arm calibrated using the circle point analysis method. The method

developed is based on the probability distribution propagation calculation recommended by the Guide

to the Expression of Uncertainty of Measurement and on the Monte Carlo method. This method makes

it possible to calculate the uncertainty in the identification of each single robot parameter, and thus, to

estimate the robot positioning uncertainty due to the calibration uncertainty, rather than based on

a single set locations and orientations that are previously defined for a unique set of identified

parameters. Additionally, this technique allows for the establishment of the best possible conditions for

the data capture test, which identifies parameters and determines which of them have the least

possible calibration uncertainty. This determination is based on the variables involved in the data

capture process by propagating their influence up to the final robot accuracy.

& 2012 Elsevier Ltd. All rights reserved.

1. Introduction

Robot kinematic calibration is a key process that must beperformed after robot manufacture and assembly or duringperiodical recalibration. Typically, industrial robots attain highrepeatability levels and are able to successfully perform theirtasks because they are mainly used in repetitive applications.These repeatability values clearly demonstrate the high mechan-ical quality of these manipulators and their precise positioningcapacities. However, the precision values reached are usuallybelow the capacity that these repeatability values predict. Thisis, in many cases, because of the application that the robots areused or planned for. This means that because a robot is pro-grammed in teach mode, it is possible to reach precision levelswithin the repeatability range, but in the offline programmingof goal positions and orientations, the accuracy is much lower.

In this situation, the kinematic calibration, also called geo-metric calibration, is used to improve the position and orientationaccuracy of the robot by calculating the kinematic model para-meters that either minimise the error caused by the manipulatoror better fit the robot’s actual kinematics. These techniquesassume that the main error in the position of the arm is due tothe differences between the nominal robot kinematic parameters

ll rights reserved.

þ34976762235.

and the actual parameters. The sources of robot error are bothgeometric and non-geometric [1–6]; therefore, the sampled datain the identification procedures are affected by these errors.However, in general, only the geometric parameters are variedto minimise the final error of the robot arm. Of the large numberof robot calibration techniques documented in the literature (interms of measurement systems used in data capture, constraints,or sequencing data sampling and later treatment [6]), it ispossible to classify them as three types: (1) open-loop methods,(2) closed-loop methods and (3) screw-axis measurement meth-ods. There are several possibilities for errors in each of these threeareas. In the first group of techniques, real robot poses arecaptured using an external measurement system. The secondgroup of techniques is based on the differential pose where theerror information is taken from the creation of closed kinematicchains that fix one or more of the position and orientationconstraints to the end of the effector. This allows the establish-ment of an equation system to determine a set of parameters,which is known as a self-calibration technique. In terms of themathematic solution of the procedure, the first two groups usenon-linear, iterative optimisation techniques to adjust the set ofparameters identified from the data that is sampled from differ-ent mechanism positions and orientations; this process helpsminimise the error. To calculate the error obtained in sampledpositions and to eventually evaluate the error generalisation, dataare obtained after the calibration in positions different from thepositions used in the optimisation procedure. The third group of

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384 371

techniques is based on the independent movement measure-ments for each of the mechanism joints. In this case, and from theprocessing of the measured data, it is possible to extract themodel kinematic parameters and to analyse the obtained averagejoint axes. As much in the literature as in practice, the first twogroups of techniques are more widespread and have receivedthe most attention from researchers. The first two groups oftechniques, due to the identification method, do not keep themathematical–physical link between the identified kinematicparameters and the actual robot kinematic parameters [7].Although, in terms of the position accuracy achieved, they areable to perfectly achieve their goal, which is obtaining an accuratefinal result. For applications with a very few locations, this typeof technique can achieve a very high accuracy. For these techni-ques, it is extremely important to select the positions andevaluate the generalised solution over the entire workspace inapplications where the positioning accuracy over the entirevolume is important [8,9]. The third group of techniques bettermaintains the mathematical–physical link between the identifiedparameters and the actual robot parameters because the para-meters are based on an independent calculation for each jointaxis. Therefore, in automatic applications that require accuratepositioning over the entire volume, the error results obtained inspecific evaluation positions should be more generalisable to theentire workspace than in the first two cases.

The geometric or kinematic calibration is part of robot metrol-ogy techniques, in which development of techniques that focus onevaluating robot behaviour or calibration can be included and ismainly concerned with the use of external measurement devices.In terms of metrology, the measurement results must be givenwith a quantitative evaluation of their accuracy, which is definedduring calibration and is given by the device’s measurementuncertainty. This is particularly important when a calibrationprocedure is performed, in which the measurement uncertaintyneeds to be defined in a way that can be compared to nationalstandards that are based on the measuring device used in thecalibration. Therefore, the ideal result in a calibration procedure,from a metrological point of view, is obtaining the measurementuncertainty of a device [10,11]. In the case of robots, kinematiccalibration procedures determine the set of parameters that givethe minimum robot positioning and orientation error over adefined set of points. A characteristic robot error value is theexact error calculated in the configurations used during theidentification procedure and eventually in the evaluation config-urations, which are different from the configurations used in thecalibration. This error is then usually taken as the characteristicresult of a calibration procedure, and comparing the calculatederror before and after the identification verifies this result andgeneralises it over the entire workspace. Later, it is possible tocalculate the robot performance using standard repeatability andaccuracy tests to standardise the presentation of the character-istic values, which evaluate the robot’s suitability for a particularapplication or act as a comparison between different robotmanufacturers for the same application [12]. Unlike the roboterrors that are evaluated for a single set of configurations, akinematic calibration procedure gives no uncertainty value;therefore, it is possible to quantify the robot’s characteristics,in a way that is traceable and generalisable for the entire volume.

The Guide to the Expression of Uncertainty of Measurement(GUM) [13] is a reference document for metrological laboratoriesthat was originally developed to provide uniform criteria for boththe expression and calculations of uncertainty in calibration ormeasuring procedures. Traditionally in metrology (and until thepublishing of the first supplement of this document), uncertaintycalculation was performed using the ‘‘law of propagation ofuncertainties’’. This method, which is only valid for linear functions

or functions that can be made linear, requires the calculation of theindividual influence of each and every variable affecting themeasuring process. This is achieved, mainly, by taking the partialderivatives of the measurement model function. This requires adeep knowledge of the measurement model, and that the deriva-tives of the functions involved can be calculated explicitly. There-fore, this method has been traditionally only applied in practice tovery simple measurement models or models with only a fewinfluencing variables. In cases in which model is not linear orthere are many variables in the function and if the calculation ofthe output magnitude is very complex, it is not possible (orpractical because this method is time consuming) to apply thismethod. This is one of primary reasons why different approxima-tions of the robot kinematic calibration end with an error that iscalculated at various single points rather than a comprehensiveuncertainty value. In practice, measurement devices with non-linear or complex mathematical models are unable to characterisethe final precision of the measurement in the same way because itis impossible to obtain traceable uncertainty values using the lawof propagation of uncertainties.

The first supplement to the GUM [14] avoids many of thelimitations of the method that is based on the law of propagationof uncertainties. This supplement presents an uncertainty estima-tion method that is based on Monte Carlo computer simulations.Instead of the propagating uncertainties, this method propagatesthe probability distributions of the function input variables,which gives the probability distribution of the output variablefrom which it is possible to obtain both the average value and itsuncertainty. Comparatively, in cases where it is possible to applyboth calculation techniques, results show that both methods givevery similar values for the uncertainty [15–17]. This new methodbased on the distribution propagation is very well suited forcomplex models or models with many influencing variables [18],as is the case with robot kinematic calibration. There are previousapproaches to the problem of robot calibration and performanceevaluation using Monte Carlo simulations. [19] presents a methodthat evaluates the performance of two approaches to a robotmodel, specifically introducing the effect of manufacturing errorsthrough parameters in the model. Monte Carlo simulation is usedto evaluate the effect of the variability of the errors and datacapture systems on the robot’s positioning accuracy. [20] intro-duces the propagation of uncertainties of the mechanism itself,due to environmental effects and due to the measurement systemin calibration procedures for parallel kinematic machines usingthe Monte Carlo method. In [21] the authors present the modelingof the robot positioning error considering both random andsystematic components and modeling its variation in both cases.Subsequently, Monte Carlo simulations are performed to analysethe effect of each component separately in the final calibrationresults.

Thus, using this approach, it is possible to know how an outputvariable (the resulting position and orientation) is influenced bypossible input value distributions. Therefore, it is possible toobtain calibration uncertainty as a characteristic value and therobot position and orientation uncertainties for a defined config-uration. The error value can be generalised and predicted over theentire workspace according to the calibration uncertaintyobtained from a specific robot pose. The simulation procedureestablishes the influential variable probability distributions andobtains the possible output magnitude values for the differentinput variable values. This procedure is established as an iterativemathematical procedure with a large number of iterations toachieve secure results. Due to the larger number of iterations, itis suitable for calibration procedures based on individual math-ematical calculation of the joints axis in such a way that it is notnecessary to set out an optimisation procedure for each iteration.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384372

Therefore, an extremely high computational cost is avoided, and itis feasible to outline useful uncertainty estimation tools that arevalid for industrial calibration procedures, which do not need tobe very long to achieve uncertainty results in accordance to theinput variable configuration. Therefore, it is possible to establishfeedback in the procedure to achieve the lowest possible uncer-tainty in the calibration results.

In this paper, an evaluation method for the calibration uncer-tainty of an industrial robot is presented. The output of thecalibration procedure is the calibration uncertainty for eachidentified parameter. The uncertainty obtained for each para-meter depends on the data sampling test configuration and on theexternal measuring device used. This evaluation method is ableto obtain a calibration uncertainty according to the configuration,equipment and measurement procedure used. Moreover, thisallows for calculating and optimising a data capture test beforetest execution to validate the numerical results. Knowing theuncertainty in the parameter determinations allows for thepropagation of the distributions of the position and orientationerrors of the calibrated robot for a particular pose; the errors canthen be applied to the evaluation of the entire robot workspace.The presented technique can be easily generalised for any kine-matic calibration method using external measuring devices andallows for the numerical quantification of the robot’s accuracyfrom a metrological point of view.

2. Circle point analysis

The robot calibration techniques that use screw-axis measure-ments are based on the independent analysis of each robot axis.From the points that are measured in the linear- or circular-shaped paths that are independent of the axis type, this methodsfirst determines both the joint axis direction and a point thatbelongs to that axis. Once path points are captured with themeasuring system, the line normal to the best-fit plane thatcontains these points is considered to be the joint link direction.In the case of rotary joints, the circle centre that best fits the pathpoints that are projected onto the plane is considered an axispoint (Fig. 1).

A characteristic of circle point analysis (CPA) is that jointslocated ahead of the joint that is being measured as it movingthrough its path must remain still, and it is preferred that thestationary joints be blocked by joint breaks as this can be an

Fig. 1. Data capture for parameter identification accor

important error source for axis placement during the procedure.Thus, the CPA method obtains the spatial localisation of the jointaxis for a specific robot configuration. From the algebraic analysisof two consecutive axes, it is possible to extract the parametersthat form the geometric transformation between the two joints.Typically, the four Denavit–Hartenberg (DH) model parameters[22] and a fifth parameter, b, which is in described in Hayati’smodel [23], are obtained when parallel joints are analysed. Thereare several approximations to this technique that were developedby Stone [24], Sklar [25] and Mooring [26]. Although the techni-que presented here is easily generalisable to any of thesemethods, this work implements evaluation of the calibrationuncertainty of a robot calibrated using the CPA method outlinedby Sklar. The evaluation method outlined is especially viable, asan analytic technique for joint axis determination using indepen-dent joint measurements without requiring adjustment with theleast squares method, which minimises the position and orienta-tion errors. Therefore, the calibration uncertainty, as mentionedin the methods based on the previously described CPA algorithmsand on the screw-axis measurements [27,28], can be assessedusing this technique. The entire mathematical formulation of theCPA method set out by Sklar can be found elsewhere [29], andit is also summarised and contextualised in other studies [6].In the CPA method outlined by Sklar, each of the movementaxes is denoted by the vector S1

!for each i axis. The common

perpendicular joining the axes defined by Si

!and Sj

!or joint vectors

are denoted by the vector aij�!

for each pair of consecutive axes i

and j, and always in the direction from i to j axis. The fourparameters used to fully specify a single joint are: the length ofthe joint (a), the angle of rotation (a), the displacement of thejoint (d) and joint angle (y). Some calculation improvements havebeen included with regard to the original method outlined bySklar, which are needed because the method is limited in itsability to determine the two parameters of the robot globalreference system and for computational improvements of thecalculation method. In accordance to the nomenclature intro-duced by Sklar, the improvements are:

ding

First joint parameters calculation—d1: The robot base referencesystem location is arbitrary; therefore, DH parameter d1 or y1

can be determined based on the system where it is located.The CPA method, by definition, cannot determine theseparameters, which is not a problem in cases in which thedefinition the system was performed during a calibration.

to CPA method. Calculation of the joint axis.

Figbas

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384 373

However, to obtain a set of parameters that fit the actual robotparameters with a previously defined model, which is themost common situation in practice, the original CPA methodhas been improved with some additions that allow for calcu-lating these data without requiring connecting matrixesbetween an arbitrary reference system and the robot basereference system.J First, the robot base system transformation matrix to the

measuring equipment is obtained. This matrix is achievedby moving the robot to n points in different areas of therobot workspace, and determining both the robot coordi-nates and the measurement equipment coordinates ofthese points. With these points, a transformation matrixis obtained by means of an adjustment method that assuresorthonormality of the transformation matrix by using adirect adjustment of the least squares method followed bya polar decomposition [29] or direct methods that havebeen previously performed [30]. Therefore, the robot basereference system is obtained in the reference system of themeasurement equipment’s frame.

J By taking this value and comparing it with the value (0, 0,0) in the robot coordinate system, DH parameter d1 iscalculated independently of the position in which themeasurement system reflector is placed.

. 2.e fra

First joint parameters calculation—y1: As in the previous case,the CPA method does not define a reference systemfrom which calculations are established, so the way tocalculate parameter y1 is not specified. Parameter yj is calcu-lated using Eqs. (1) and (2), where aij

�!is the normal vector

direction between the i and j axes, and Sj

!represents the joint

direction, but it is not possible to calculate y1 because a01�!

isnot known.

cosyj ¼ cj ¼ aij!� ajk�!

ð1Þ

sinyj ¼ sj ¼ ðaij!� ajk�!Þ � Sj

!ð2Þ

However, the outlined method does determine this vectorbecause it is taken from the X-axis component of the robotbase reference system in measurement system coordinates.Once vector a01

�!is determined, it is feasible to calculate the

value of y1 (Fig. 2).

� Hayati model parameter calculation—b2: parameter is calcu-

lated using the kinematic model with the option of includingan additional parameter, which is one of the options shownby Sklar in the case of a parallel axis. The angle b represents arotation of a coordinate system of the adjacent joint on a y

local axle ( bjk

�!). The calculation is based on the cosine of bjk,

Calculation of y1. Vector a01�!

determined from the X axis of the robot

me.Figont

which only determines angles in the range [0,180] (Eq. (3)).

cos bjk ¼

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi½1�ðSk

!� anom

jk Þ2�

rð3Þ

sin bjk ¼SP

k

!

9SPk9

��!� Sk

!� bjk

�!ð4Þ

During calculation of sinbjk, in Eq. (4), the vector bjk

�!is

unknown. The new parameter defines a rotation around thisvector. c (Eq. (4)) represents the actual joint axis projection onthe plane that is perpendicular to vector ajk

�!, which contains

the nominal axis of the joint. In this situation, sinbjk isdetermined without knowing vector bjk

�!, and then, sin bjk is

calculated using only the information determined from themeasured data (Eq. (5)).

sin bjk ¼ cos Skajk ¼ Sk

!� ajk�!

ð5Þ

where Skajk is the projection of Sk

!onto ajk

�!. From Skajk, bjk is

calculated using Eq. (6) obtaining an angle in the range of[�180, þ180] (Fig. 3).

bjk ¼ a tan 2ðcos Skajk, cos bjkÞ ð6Þ

Calculation of angles a, b, y: Angles are calculated using theatan2 function, which gives values in the range of [�180,þ180]. However, for angle values very close to 71801 thistechnique results in high variability because it gives values of,for instance, þ180.0011 or �180.0011, for the same robotconfiguration, and there is very little error variation due to themeasuring system. Because of that, for angles close to 71801,the range given by atan2 is converted to the [0, þ360] rangewith the improved method. � Verification of the direction of the vector Sj: In the implemented

functions, the direction of the Sj vectors is the same as thenominal directions defined by the DH–Hayati model that wasimplemented in the robot. The CPA method result is alwaysvalid from the formal modelling point of view, but the resultdoes not need to match the model outlined for the robot or themodel implemented for its control. Thus, assurance is needthat this vector is correctly matched in such a way that thesolution given in the calibration from the measured datamatches the kinematic model that it is pretending to calibrate.In the case where the method result shows the oppositedirection for the joint axis vector with regard to the nominalZ-axis of the joint, the vector’s direction is inverted beforecalculating the rest of parameters.

. 3. Calculation of b2. sin bjk is calculated using only the projection of Sk_ACT

���!o aij�!

, both determined from the measured data.

Fig. 4. Kuka KR5sixx robot. Nominal kinematic model in the initial position. Source (left image): Kuka Robotics.

Table 1Nominal kinematic parameters (Fig. 4).

Joint di (mm) hi (1) ai (mm) ai (1) bi (1)

1 335 0 75 90

2 0 0 270 0 0

3 0 90 90 90

4 295 0 0 90

5 0 180 0 90

6 80 0 0 0

Fig. 5. Propagation of distributions of input variables to the measurement result.

Table 2Relevant contributions that are considered in the robot calibration uncertainty

estimation.

Measurement instrument Capture conditions of data forcalibration

Reflector position in each joint

Position and orientation in robot global

frame

Angles covered by each joint

Measurement uncertainty Number of points captured in each

joint

Joint initial positon

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384374

2.1. Robot kinematic model

Although the calibration uncertainty evaluation techniquedeveloped can be applied to any robot model, a robot KukaKR5sixx 650 (Fig. 4) has been considered in this implementation.From its nominal dimensions, a robot model is defined using amixture between the DH and Hayati model for the case of paralleljoints (Fig. 4), which results in the model shown in Table 1.

3. Robot calibration uncertainty

The basis of the calibration uncertainty estimation method isthe simulation of the data capture procedure and the subsequentkinematic parameter calculation using the CPA method and usinga statistic simulation according to the Monte Carlo method.For the uncertainty estimation when using the law of propagationof errors, both the model to calculate the analysed variables andthe error sources to be considered are needed for the uncertaintycalculation and probability distribution. However, in this case theuncertainty is not obtained analytically but by analysing theinfluence of the input variables covering their maximum possiblerange of values and analysing the possible outputs that can be

determined. This process will give the most probable output valuewith a confidence interval, which will allow for the establishmentof the related uncertainty (Fig. 5).

3.1. Generation of measurement data for calibration

In the CPA method, it is possible to capture the geometricinformation about the rotation of each joint by means of severalcapture methods that are generally based on the large scalecoordinate measuring systems, such as laser trackers, total sta-tions or indoor GPS (Fig. 1).

Using a reflector placed on a point in a forward location of therobot structure regarding the current rotary joint, besides thecapacity of tracking this reflector, makes these types of techni-ques simple and accurate for this task. The proposed methodgenerates synthetic measurement points from the definition ofthe variables that influence the result. The variables coming fromthe measurement uncertainty of the measurement system usedand the sampling process definition parameters will affect, in anindirect way, the final uncertainty because they cause a change inthe best-fit calculations of the CPA method. Thus, it is possible togenerate, in a parametric manner, a set of measured data fromwhich the set of robot kinematic model parameters can beobtained. Such data will then be affected by the measurementsystem error and influence sources that are caused by the capturetest configuration. In this case, and assuming that robot calibra-tion is in an environment with controlled atmospheric conditions,the input parameters considered and implemented as havingrelevant contributions to the accuracy of the calculated kinematicparameters are shown in Table 2. The general approach of themethod considers only variables influencing the calibration pro-cedure itself. In cases of particular application to a particularrobot, it is possible to assess the inclusion as error source of theuncertainty of the mechanism itself or its manufacturing andassembly uncertainty, in addition to environmental factors.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384 375

The system position and orientation are considered to be inputparameters of the algorithm and are expressed in the robot globalframe, which is entered into the model by means of the homogeneoustransformation matrix that links both systems. Because the measure-ment uncertainty of these types of devices is given as a constant termplus a dependent linear term, which is a function of the measurementdistance (AþBL mm with L in mm), the uncertainty is considered tobe an input parameter in both the nominal and position uncertaintyand is influenced by the reflector that is placed on the robot. Thisdevice position on the robot will determine the measurementdistance and directly affect its uncertainty and the coordinates ofthe measured points on each joint. There will be experimentallimitations when defining both the reflector positions on each jointand the captured joint angle because either the robot will bephysically unable to reach every position or the measuring systemreflector will be hidden during joint rotation. Thus, it is possible toconsider these practical limitations in the simulation process basedon the particular conditions of a data capture test.

Alternately, the input parameters related to the rotation angle,number of points captured on each joint and the initial robotposition will define the number of points and circular sectorscaptured. The fact that the CPA method uses an adjustmentbased on the least squares of the points on a plane and projectionof these points onto a circle causes that the circle sector tobe covered, and the measurement system uncertainty is directlyinfluenced in the calculation accuracy of both geometric

Fig. 6. Sample data sets for the angle covered an

primitives [31]. Therefore, these three parameters are considereda direct source of uncertainty caused by a constant input para-meter related to the capture test configuration. Fig. 6 shows twosets of generated data. The initial values that were the inputparameters for the generation are shown in Table 3, while theparameter modified for each sample generation is shown in Fig. 6.

Eq. (7) shows an example of the model generated using thenominally measured coordinates for a point in the second joint. Thisequation determines reflector coordinates of the current locationexpressed in the joint 2 reference system, and these points aredefined as input parameters. GZi represents a homogeneous rotationmatrix of y degrees around the Zi-axis according to the initial robotposition, rotation angle and number of points defined. 0M1 representsthe homogeneous transformation matrix between joints 2 and 1 whenthe rotation around joint 1 is zero degrees, and MIM0 is thetransformation matrix of the robot base reference system relative tothe measurement system frame, which is a laser tracker in this case.Sub index F of rotation angle y makes reference to the final generatedpoint in the previous joint, and sub-index I refers to the current pointin joint 2. This generation scheme becomes widespread for all joints.Fig. 7 graphically shows the process of obtaining measured pointsexpressed in the measurement system for joint 2. The robot model’snominal parameters are taken into account during the generation ofthe synthetic points, which allows for the evaluation of not only theuncertainty but also the error created in determining each parameter,which is in accordance to the uncertainty finally assigned to each

d number of points captured in each joint.

Table 3

Base initial values considered as input parameters, where RobotMMI is the homogeneous transformation matrix between the measurement instrument frame and robot

global frame.

Joint 1 2 3 4 5 6

Robot initial position (1) 15 0 0 0 0 0

Angle covered (1) 45 80 100 50 200 300

Number of points 15 20 30 15 25 30

A (mm) B (mm/m) Reflector positionMeasurement uncertainty 7(AþBL) 0 0 Joint X Y Z

1 100 0 0RobotMMI

2 200 0 0

1 0 0 0 3 0 50 0

0 1 0 0 4 20 0 0

0 0 1 0 5 0 80 0

0 0 0 1 6 0 60 0

Fig. 7. Generation model for the measured coordinates of the reflector on joint 2.

Fig. 8. Joint axis calculation using the CPA method with calibration measurements

generated according to Table 3 input values.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384376

parameter.

XYZ

1

264

375

Ref lector_SR_MI

¼MIM0 � GZ1ðyF Þ �

0M1 � GZ2ðyiÞ

XYZ

1

264

375

Ref lector_SR2_point_i

ð7Þ

3.2. Plucker coordinates and kinematic parameters calculation

Once the points are generated (Fig. 7) based on the specifiedinput parameters and, in this case, to the robot model’s nominalparameters, it is possible to complete the CPA method calcula-tions. The CPA method determines from the measured points theaxis direction for each joint as the normal direction to the best-fitplane, and the CPA method defines this axis by a calculating apoint that belongs to the joint axis. This point is defined as thecentre of the circle that best fits the points projected in thecalculated plane.

This is the basic information used by the method to analyse apair of adjacent axes in the robot’s final position and to obtain theparameters that describe the geometric transformation betweenthem. This method has the characteristic that is able to sort this

geometric information and to express each joint axis in thePlucker coordinates, which simplifies the algebraic evaluation ofthe adjacent axis’s relative position and allows for an easy methodto select the parameters relative to this position. At this stage ofevaluation procedure, both the plane and circles that correspondto each joint are determined, which allows for the definition ofthe Plucker coordinates at each joint axis. Keep in mind that suchan axis direction has to match the Z-axis direction of the nominalmodel. Therefore, this matching should be verified and thecalculation adapted to the defined model. Fig. 8 shows thedetermined axes for the synthetic data previously generated forthe initial parameters considered in Table 3, where the measuredpoints and fit circles are drawn from the projection of the pointson their respective best-fit planes.

Once the Plucker coordinates are calculated, the robot modelkinematic parameters are obtained using the CPA method. Table 4shows the results obtained for both the generation case shown inFig. 8 as well as a comparison with the robot model nominalparameters used to generate the synthetic points, which is avalidation of the algorithm.

Table 4Kinematic parameters obtained using the CPA method with the sample data from Fig. 8 generated with nominal parameters.

Nominal parameters CPA parameters Fig. 8

Joint di (mm) hi (1) ai (mm) ai (1) bi (1) di (mm) hi (1) ai (mm) ai (1) bi (1)

1 335 0 75 90 335 2.13E�14 75 90

2 0 0 270 0 0 0 �2.84E�14 270 �9.51E�15 5.16E�15

3 0 90 90 90 1.21E�13 90 90 90

4 295 0 0 90 295 7.11E�15 0 90

5 0 180 0 90 �6.10E�13 180 0 90

6 80 0 0 0 80 0 0 0

Fig. 9. Uncertainty evaluation algorithm workflow.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384 377

3.3. Uncertainty evaluation and confidence intervals

of the parameters

To evaluate the calibration uncertainty for the input variablesconsidered, variables related to the data capture test configura-tion have to be defined for each situation. Some of these variableswill not change during determination of the parameter outputvalues, but they will affect the final uncertainty because theyaffect the accuracy during different stages of the calibratedparameter calculations depending on how the capture test isperformed. The uncertainty evaluation diagram for the MonteCarlo method is shown in Fig. 9. By defining a number of specificiterations using this method, the possible output variable valuesare determined. In the case of the robot kinematic model para-meters, the input variables were varied based on their probabilitydistributions. From the distribution obtained for each parameter,it is possible to obtain an estimate of its value by the averagevalue of the distribution X, and its typical uncertainty, which isdescribed as the distribution’s standard deviation. Additionally, a95% confidence interval is obtained for each parameter in theresulting distribution.

After the test conditions are defined, the coordinates of themeasured point change due to the uncertainty of the measuringdevice are considered. This uncertainty applies to each X, Y, and Z

coordinate of each point independently and depends on thecoordinate value. The coordinates have a random value in the

range 7(AþBL), which is defined by the measuring system’suncertainty, where A is in mm, B is in mm/m and L is in m.Therefore, the measuring system uncertainty is directly reflectedin the coordinates measured by the device.

This calibration uncertainty evaluation method gives a result fora specific measurement under specific conditions and, therefore, forspecific test data captured for the calibration using CPA. In Figs. 10and 11 two cases of the identification of the kinematic modelparameters’ uncertainties are shown using two different measuringsystems. These figures show the distribution of each parameterobtained according to the different possibilities of joint kinematicparameters defined by the variation ranges of the input variables.It should be noted that the original CPA method does notdetermine the kinematic parameters of the base frame nor thetool frame ones, as only the axes of the frames in which movementoccurs can be located in space. The position of the global frame inthis case is determined by least squares using the methodexplained in Section 2. The last frame of the kinematic chain ismatched to the previous frame in the initial position of the model.Therefore, the parameters of joint 6 do not change during thesimulation. On the other hand, the parameter d2 is zero in any casebecause the Hayati model is used in this joint. So, the value d2is forced to be zero and the translation transformation in this jointis made by the parameter a2. Both modified input parametersrelated to the initial values are shown in Table 3. The numericalresults related to the uncertainty, the individual standard devia-tions and the offset parameters obtained using the nominalgeneration parameters are shown in Tables 5 and 6.

Therefore, once the particular test conditions are defined, it ispossible to know, by means of this uncertainty evaluation tool,the best data capture test conditions that will result in the lowestpossible calibration uncertainty in the identified kinematic modelparameters for a particular robot.

3.4. Input parameters evaluation tests

It is possible to propose a number of method evaluation teststo check the isolated influence of each input parameter consid-ered. From the initial values of the input parameters common toall tests (Table 3), different sets of simulations that very differentparameters have been performed. These test groups can beclassified in the following way:

1)

Different measurement devices, which have different mea-surement uncertainties intervals. The two laser trackers, twototal stations, one indoor GPS, and laser tracker with a probingaccessory will all affect the final measurement uncertainty indifferent ways;

2)

Different rotation angles are covered by different joints. 3) Different reflector locations on the robot’s structure and a

different number of points are captured per joint;

4) The measurement instruments are located at different posi-

tions with respect to the robot’s base reference system;

Fig. 10. Distributions of kinematic parameters identified using the CPA method and confidence intervals. Input data from Table 3 and 5.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384378

5)

Different numbers of iterations are considered, and differentcharacteristics of the computers used in the simulations areused with the goal of analysing the viability and the computa-tional limits of the method.

Although this is an offline tool, the number of iterations toobtain accurate parameter values from the simulation must beadjusted. It is experimentally verified in this case that increasingthe number of iterations forces the identified parameter valuedistribution mean to be closer to the generation value used, butincreasing computational time (Fig. 12). The number of iterationsin the simulations was selected to be 100.000 because thedeviations in all cases are below 1 mm for all parameters.

From the performed tests, two examples of the input para-meters’ influence are shown here. To check the simulations ina comparable way, the precision of the data obtained from thesimulation is calculated using the CpK parameter (Eq. (8)), whichresults in a unique combination of the mean and uncertainty.

CpK ¼minðLimsup�x,x�Liminf Þ

3sð8Þ

The model’s nominal parameters have been used as averageparameters in this evaluation, and a value of 0,1 mm is used asthe upper and lower limit. Although this parameter is usuallyused to check the stability of manufacturing processes, in thiscase it is suitable because it combines, in one parameter, both themean and uncertainty. Therefore, a comparable value is obtainedfor the different parameters and simulations considered.

First, Fig. 13 shows the rotation angle evaluation results coveredby joint 4 during data capture. From the starting values shown inTable 3, assuming a laser tracker is used as the measurementdevice, and using the measurement uncertainty and position data

from Table 5, a set of parameters and uncertainty values have beencalculated for 151, 401, 901 and 1801 rotation angles that werecovered by the joints during the data capture test.

Fig. 13 shows the effect on the joint parameters by varying theangle traced by the reflector in joint 4 and the relationshipbetween the previous and the following joint. For parametersd4, d5, y3, y5, a3, a4, a3, a4, and, to lesser extent, y4, a greaterreflector angle results in a greater CpK values. This was expectedmainly because the greater reflector angles will results in agreater joint axis and plane best-fit calculation precision, whichgives less uncertainty to these parameters.

As second evaluation example, Fig. 14 shows the evaluationresults from the number of points captured in all joints. In thiscase, the kinematic model parameter calibration uncertainty isobtained by using the same measurement equipment that wasused in the previous case and capturing 10, 40 and 100 pointsat each joint. A greater number of points captured results inreducing the effects of the measuring system uncertainty in thefinal fit circle, which results in a lower calibration uncertainty forall parameters.

4. Position and orientation uncertainty from the calibrationuncertainty

Typically, once parameter identification and robot calibrationare performed, robot pose accuracy is checked in locations usedboth for calibration and for evaluation, which verifies the resultsand the ability to maintain the repeatability and accuracyobtained in the calibration over the entire robot workspace. Oncecalibrated, the mean or maximum error parameter for the

Fig. 11. Distributions of kinematic parameters and the confidence intervals identified using the CPA method. Input data from Tables 3 and 6.

Table 5Calibration uncertainty by parameter and the confidence intervals (Fig. 10) for the specified calibration conditions using a laser tracker.

A (mm) B (mm/m) RobotMLT

Measurement uncertainty 7(AþBL) 10 2.5 0.0066 0.99995 0.00651 1866.9489

�0.99992 0.00666 �0.01008 5.0186

M.I.: Laser tracker �0.01013 �0.00645 0.99992 625.5015

0 0 0 1

CPA ResultsIdentified parameter Uncertainty U. bound (95%) L. bound (95%) Max. Min Deviation from nominal

d1 334.9999 0.0351 335.0680 334.9315 335.1442 334.8576 �0.0001

d2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

d3 0.0002 0.0714 0.1387 �0.1398 0.2766 �0.2977 0.0002

d4 294.9996 0.1698 295.3299 294.6679 295.6528 294.3806 �0.0004

d5 �0.0003 0.2646 0.5143 �0.5186 0.9811 �0.9846 �0.0003

d6 80.0000 0.0000 80.0000 80.0000 80.0000 80.0000 0.0000

h1 0.0000 0.0106 0.0205 �0.0207 0.0421 �0.0435 0.0000

h2 �0.0001 0.0258 0.0499 �0.0501 0.1012 �0.1046 �0.0001

h3 90.0000 0.1080 90.2113 89.7895 90.4235 89.6100 0.0000

h4 �0.0001 0.0052 0.0100 �0.0102 0.0224 �0.0203 �0.0001

h5 180.0000 0.1080 180.2102 179.7889 180.4022 179.5721 0.0000

h6 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

a1 75.0010 0.1556 75.3024 74.6979 75.6238 74.3806 0.0010

a2 269.9999 0.0135 270.0263 269.9735 270.0647 269.9451 �0.0001

a3 89.9999 0.0386 90.0746 89.9241 90.1661 89.8357 �0.0001

a4 0.0000 0.5519 1.0737 �1.0776 2.1280 �2.1666 0.0000

a5 0.0000 0.0029 0.0058 �0.0057 0.0119 �0.0121 0.0000

a6 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

a1 90.0000 0.0112 90.0217 89.9782 90.0448 89.9568 0.0000

a2 0.0000 0.0053 0.0103 �0.0104 0.0210 �0.0232 0.0000

a3 90.0001 0.0522 90.1014 89.8982 90.2020 89.7923 0.0001

a4 89.9999 0.0519 90.1008 89.8984 90.1936 89.8042 �0.0001

a5 90.0000 0.0016 90.0031 89.9969 90.0065 89.9936 0.0000

a6 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

b2 0.0000 0.0062 0.0121 �0.0121 0.0248 �0.0262 0.0000

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384 379

Table 6Calibration uncertainty by parameter and the confidence intervals (Fig. 11) for the specified calibration conditions with an indoor GPS.

A (mm) B (mm/m) RobotMIGPS

Measurement uncertainty7(AþBL) 200 0 0.0066 0.99995 0.00651 1866.9489

�0.99992 0.00666 �0.01008 5.0186

M.I.: Indoor GPS �0.01013 �0.00645 0.99992 625.5015

0 0 0 1

CPA ResultsIdentified parameter Uncertainty U. bound (95%) L. bound (95%) Max. Min Deviation from nominal

d1 334.9838 0.8308 336.5580 333.3269 338.1888 331.4509 �0.0162

d2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

d3 �0.0820 1.7290 3.2763 �3.4606 6.5707 �7.4472 �0.0820

d4 294.7979 3.8529 301.7374 286.7699 307.2700 277.5207 �0.2021

d5 0.0040 6.0458 11.8241 �11.7601 22.9856 �22.5369 0.0040

d6 80.0000 0.0000 80.0000 80.0000 80.0000 80.0000 0.0000

h1 0.0003 0.2802 0.5436 �0.5501 1.0713 �1.1836 0.0003

h2 �0.0030 0.6137 1.1856 �1.1931 2.3964 �2.4502 �0.0030

h3 90.0027 2.4462 94.7818 85.2509 99.8780 80.9028 0.0027

h4 �0.0478 0.1619 0.2590 �0.3782 0.5580 �0.8627 �0.0478

h5 179.9974 2.4461 184.7419 175.2184 189.3335 169.8510 �0.0026

h6 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

a1 75.0295 3.7393 82.3105 67.7839 90.2032 60.0577 0.0295

a2 269.9986 0.2973 270.5792 269.4189 271.3748 268.8012 �0.0014

a3 89.8839 0.8806 91.4866 88.0535 93.0977 85.4102 �0.1161

a4 0.0209 12.6076 24.5903 �24.4887 49.2358 �51.7325 0.0209

a5 0.0002 0.0661 0.1293 �0.1293 0.2823 �0.2956 0.0002

a6 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

a1 90.0008 0.2686 90.5203 89.4772 91.1012 88.9794 0.0008

a2 �0.0003 0.1551 0.3026 �0.3027 0.6719 �0.6461 �0.0003

a3 89.9994 1.1870 92.3008 87.6784 94.6464 85.0319 �0.0006

a4 89.9977 1.1745 92.2865 87.7062 94.3582 85.4674 �0.0023

a5 89.9999 0.0381 90.0743 89.9246 90.1571 89.8319 �0.0001

a6 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

b2 �0.0001 0.1814 0.3566 �0.3547 0.7536 �0.7803 �0.0001

Fig. 12. Influence of the number of Monte Carlo iterations on the mean value of the distribution. Parameter d4.

Fig. 13. Evaluation of the parameter identification and calibration uncertainty. Effect of the angle covered by joint 4 during the data capture for the calibration with a laser

tracker.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384380

Fig. 14. Evaluation of the parameter identification and calibration uncertainty. Effect of the number of points captured in all joints for the calibration with a laser tracker.

Fig. 15. Position and the orientation uncertainty of the robot end effector due to the calibration uncertainty (Table 5). Uncertainty in the position and orientation of sample

position defined by y1¼601; y2¼801; y3¼�451; y4¼2001; y5¼1251 and y6¼2801.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384 381

position and orientation provide a rough estimate of the robot’sglobal behaviour. Optionally, there are standard procedures thatintroduce tests to check robot behaviour from a geometric pointof view using point, distance or path tests [12]. These tests,however, do not assess the calibration but only the robotbehaviour without needing to know its kinematic model.

Fig. 15 shows the positioning uncertainty effects due to thecalibration uncertainty obtained for the robot location shown inFig. 10. The position and orientation uncertainty appear in the figurefor the robot end effector in the positions considered by the jointsangles. This uncertainty, as discussed before, will depend on therobot position. The uncertainty numerical data and characteristicvalues for this robot location are shown in Table 7.

For a particular robot pose, it is possible to analyse the calibrationuncertainty effect on an end effector’s spatial position. To performthat analysis, Fig. 16 shows all possible position and orientationvalues obtained based on the range of possible parameter combina-tions and with the calibration uncertainty for the case shown inTable 5. Fig. 16a shows calculated values for the end effectorposition and orientation parameters for the example positionconsidered given by the rotation angles of the joints. Fig. 16b showsall possible end effector positions based on the parameters combi-nation considered in the calibration case shown in Table 5 and theexample position analysed. These figures show how robot kinematiccalibration uncertainty is propagated to the possible position errordue to such an uncertainty.

As shown in Fig. 16, the calibration uncertainty generates adistribution of possible end effector locations with ellipsoid-shaped plots; this is a behaviour observed in all analysed posi-tions. A deeper analysis of the robot inverse kinematic model fora given allows for determining the possible joint configurationsthat produce the same end effector position. For each possibleconfiguration, a similar ellipse is produced due to the calibrationuncertainty. Because all the obtained configurations using theinverse kinematics are related to the same nominal point in therobot workspace, it is possible to define the minimum uncertaintyregion as the intersection of the given ellipsoids. In this manner,it is possible to have a tool that selects possible parametercombinations, which give combinations, within the calibrationuncertainty, that produce lower positioning uncertainty in theglobal robot workspace.

The influence on the robot accuracy following a path can bechecked by this positioning error analysis technique. By takinginto account the case analysed in Table 5, Fig. 17 shows anexample path performed by the robot. This path is defined using75 points. The end effector position uncertainty analysis has beenperformed for each point individually like in the previous case forthe example point. For each nominal point defined by jointpositions during the path, all the kinematic parameters combina-tions obtained using calibration uncertainty have been checked.This figure shows each point of the nominal path using a colourthat represents the maximum distance range possible of the end

Table 7End effector position and the orientation uncertainty due to the calibration uncertainty for a sample robot pose.

Robot position

y1¼601 y2¼801 y3¼�451 y4¼2001 y5¼1251 y6¼2801

Position and orientation uncertaintyNominal Mean value Uncertainty U. bound (95%) L. bound (95%) Max. Min

X 225.8555 225.8536 0.2916 226.4211 225.2875 227.0504 224.7193

Y �346.3665 �346.3642 0.2139 �345.9451 �346.7795 �345.4799 �347.2127

Z 50.3832 50.3795 0.8267 51.9982 48.7765 53.8733 46.8064

A 1.2386 1.2375 0.2028 1.6341 0.8433 2.0884 0.4007

B �16.3098 �16.3098 0.0244 �16.2624 �16.3572 �16.2136 �16.4133

C �148.6273 �148.627 0.0377 �148.5534 �148.6999 �148.4634 �148.7785

Fig. 16. Position and orientation uncertainty of the robot end effector due to calibration uncertainty (Table 5). The uncertainty for the position and orientation in the

sample positions defined by y1¼601; y2¼801; y3¼�451; y4¼2001; y5¼1251 and y6¼2801. a) Position and orientation, b) spatial distribution of the possible end effector

positions due to calibration uncertainty.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384382

effector position due to an uncertainty calibration in the threecoordinates. It is possible to visually check the robot uncertaintyfor a particular work path and to check if the possible error in aspecific path area is inside or outside the required path accuracyfor a particular task. By means of this analysis, it is possible toquantify the robot’s real accuracy following a path based on thecalibration uncertainty.

5. Conclusions

This work demonstrates a kinematic calibration uncertaintyevaluation technique for industrial robots. Previously, the existingrobot calibration techniques confirm the robot’s behaviour after acalibration procedure by defining the maximum or averageposition and orientation error over a set of single points in the

Fig. 17. Position and orientation uncertainty of the robot end effector following a trajectory. The maximum range values by the coordinates based on the calibration

uncertainty shown in Table 5.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384 383

robot’s workspace. By means of a calibration uncertainty deter-mination, it is possible to know the robot positioning uncertainty,depending on its location, for any position and orientation.

By applying this technique, it is possible to define the datacapture test conditions for calibration that minimise the calibra-tion uncertainty, and therefore, minimise (before the capture testis carried out) the positioning uncertainty obtained with therobot. This method can also define the starting conditions thatwill maximise the positioning accuracy obtained after calibration.Several examples of input variables have been collected anddemonstrated as to their influence on the calibration uncertainty.

The technique shown uses the evaluation outline given inAnnex I of the GUM, which was performed using a Monte Carlotechnique applied to the input variable uncertainty propagationanalysis. This simulation obtains the calibration uncertainty of theidentified kinematic parameters. From a practical point of view,a few changes have been made from the original CPA method tobe able to compare the robot nominal kinematic model with theidentified model. When using the CPA method, it is not necessaryto know beforehand the nominal kinematic model because a validnumerical solution is achieved. Although, in the implementedmodel, the robot axis directions do not have to match the nominalkinematic model, and therefore, the model may give numericalparameter values that are very different to those considerednormal for the particular robot analysed. Also from a practicalpoint of view this calibration technique should be applied torobots with a prefixed model. However, due to practical reasonsthe positioning of the robot global reference system is determinedby previous measurements and adjustments because the basicCPA method does not define the location of this reference system.

The determination of the calibration uncertainty for eachidentified parameter allows for the propagation of the errorsources because the data capture process. Thus, calculation ofthe parameters is considered not only in the model parametercalculation but also in the robot error. Because the robotkinematic model is non-linear, the final error given at a locationand pose by the influence of its kinematic parameters depends onthe pose in each case. The calibration uncertainty evaluationtechnique developed will define a positioning uncertainty forany location defined on the robot in such a way that it will bepossible to choose, for a precision task, the best robot locations.That means that the robots that have less positional uncertainty,which will guarantee higher accuracy depending on the robotcalibration uncertainty. Therefore, the calibration data captureand calculation procedure are directly linked to the final robot

positioning uncertainty, which depends on its location. It ispossible then to know and improve the robot positioning uncer-tainty using an appropriate procedure definition and capture testfor calibration.

Once obtained the calibration uncertainty for each kinematicparameter, it is possible to evaluate the robot positioning errorfrom its uncertainty for a given joints rotation angles values. Thus,the data capture procedure conditions for the robot calibrationand the considered influences are linked to the robot positionuncertainty and, therefore, with the possible maximum errormade in a particular location that is caused by this calibration.With this, it is possible to assess, prior to use, the data capturetest conditions needed for parameter identification from not onlya parameter uncertainty point of view but also from a point thatexplains the effect that such uncertainty will potentially have onthe robot location error for a set of planned locations.

This technique can be used with any robot model and for anydirect kinematic parameter calculation even though it is morethan applicable in cases where the parameters are determined bymeans of a least squares adjustment procedure to a set ofcaptured data or by imposing geometric constraints. In this lastsituation, the solution is not analytic and depends significantlyon the initial solution used in the solving the iterative method. Inthis case, an uncertainty evaluation scheme as the one shownhere comes at a higher computational cost because the initialsolution is input parameter because one must consider the effectof different initial solutions for the parameters on the finalcalibration uncertainty.

References

[1] Sheth PN, Uicket JJ. A generalized symbolic notation of mechanism. ASMEJournal of Engineering for Industry 1971:102–12.

[2] Caenen JL, Angue JC. Identification of geometric and non-geometric para-meters of robots. Processing IEEE International Conference on Robotics andAutomation 1990;2:1032–7.

[3] Everett LJ, Suryohadiprojo AH. A study of kinematic models for forwardcalibration of manipulators. Processing IEEE International Conference onRobotics and Automation 1988:798–800.

[4] Park FC, Brockett RW. Kinematic dexterity of robotic mechanisms. Interna-tional Journal of Robotics Research 1994;13(1):1–15.

[5] Drouet PH, Dubowsky S, Zeghloul S, Mavroidis C. Compensation of geometricand elastic errors in large manipulators with an application to a highaccuracy medical system. Robotica 2002;20(3):341–52.

[6] Hollerbach JM, Wampler CW. The calibration index and taxonomy for robotkinematic calibration methods. International Journal of Robotics Research1996;15(6):573–91.

J. Santolaria, M. Gines / Robotics and Computer-Integrated Manufacturing 29 (2013) 370–384384

[7] Goswami A, Bosnik JR. On a relationship between the physical features of roboticmanipulators and the kinematic parameters produced by numerical calibration.Journal of Mechanics Designs Transfer ASME 1993;115(4):892–900.

[8] Santolaria J, et al. Kinematic parameter estimation technique for calibrationand repeatability improvement of articulated arm coordinate measuringmachines. Precision Engineering 2008;32(4):251–68.

[9] He R, Zhao Y, Yang S, Yang S. Kinematic-parameter identification for serial-robot calibration based on POE formula. IEEE Transactions on Robotics2010;26(3):411–23.

[10] Weise K, Woger W. A Bayesian theory of measurement. MeasurementScience and Technology 1992;3:1–11.

[11] Kacker R, Jones A. On use of Bayesian statistics to make the Guide to theExpression of Uncertainty in Measurement consistent. Metrologia 2003;40:235–48.

[12] ISO 9283, Manipulating industrial robots. Performance criteria and relatedtest methods, (1998).

[13] BIPM, IEC, IFCC, ISO, IUPAC, IUPAP and OIML, Guide to the expression ofuncertainty in measurement (Geneva, Switzerland: International Organiza-tion for Standardization), ISBN92-67-10188-9 (1995).

[14] JGCM 101. Evaluation of measurement data – Supplement 1 to the ‘‘Guide tothe expression of uncertainty in measurement’’ – Propagation of distribu-tions using a Monte Carlo method, (2008).

[15] Trapet E, Waldele F. The virtual CMM concept, advanced mathematical toolsin metrology. World Scientific Publ. Comp. 1996:238–47.

[16] Canaves M, Pompeia PJ. Uncertainty of the density of moist air: Gum x MonteCarlo. Brazilian Archives of Biology and Technology 2006;49:87–95.

[17] Wubbeler G, Krystek M, Elster C. Evaluation of measurement uncertainty andits numerical calculation by a Monte Carlo method. Measurement Scienceand Technology 2008;19.

[18] Takamasu K, Takahashi S, Abbe M, Furutani R. Uncertainty estimation forcoordinate metrology with effects of calibration and form deviation instrategy of measurement. Measurement Science and Technology 2008;19:084001.

[19] Stone HW, Sanderson AC. Statistical performance evaluation of the S-modelarm signature identification technique. Processing IEEE International Con-ference on Robotics and Automation 1988:939–46.

[20] Jokiel B, Ziegert JC, Bieg L. Uncertainty propagation in calibration of parallelkinematic machines. Precision Engineering 2001;25(1):48–55.

[21] Qian GZ, Kazerounian K. Statistical error analysis and calibration of industrialrobots for precision manufacturing. International Journal of Advanced Man-ufacturing Technology 1996;11(4):300–8.

[22] Denavit J, Hartenberg RS. A kinematic notation for lower-pair mechanismsbased on matrices. Journal of Applied Mechanics, Transactions ASME1955;77:215–21.

[23] Hayati S, Mirmirani M. Improving the absolute positioning accuracy of robotmanipulators. Journal of Robotic Systems 1985;2(4):397–413.

[24] Stone HW. Kinematic modeling, identification, and control of robotic manip-ulators. Boston: Kluwer Academic Publishers; 1987.

[25] Sklar ME. Geometric calibration of industrial manipulators by circle pointanalysis. Processing 2nd Conference on Recent Advances in Robotics1989:178–202.

[26] Mooring BW, Roth ZS, Driels MR. Fundamentals of manipulator calibration.New York: Wiley Interscience; 1991.

[27] Bennett DJ, Hollerbach JM, Henri PD. Kinematic calibration by direct estima-tion of the Jacobian matrix. Processing IEEE International Conference onRobotics and Automation 1992:351–7.

[28] Hollerbach JM, Lokhorst D. Closed-loop kinematic calibration of the RSI6- DOF hand controller. Processing IEEE International Conference on Roboticsand Automation 1993;2:142–8.

[29] Nicholas JH. Computing the polar decomposition with applications. Journalon Scientific Computing 1986;7:1160–74.

[30] Horn BKP. Closed-form solution of absolute orientation using unit quater-nions. Journal of the Optical Society of America A 1987;4:629–42.

[31] Mount DM, Netanyahu NS. Efficient randomized algorithms for robustestimation of circular arcs and aligned ellipses. Computational Geometry2001;19(1):1–33.