A methodology for industrial robot calibration based on measurement sub-regions

This paper proposes a methodology for calibration of industrial robots that uses a concept of measurement sub-regions, allowing low-cost solutions and easy implementation to meet the robot accuracy requirements in industrial applications. The solutions to increasing the accuracy of robots today have high-cost implementation, making calibration throughout the workplace in industry a difficult and unlikely task. Thus, reducing the time spent and the measured workspace volume of the robot end-effector are the main benefits of the implementation of the sub-region concept, ensuring sufficient flexibility in the measurement step of robot calibration procedures. The main contribution of this article is the proposal and discussion of a methodology to calibrate robots using several small measurement sub-regions and gathering the measurement data in a way equivalent to the measurements made in large volume regions, making feasible the use of high-precision measurement systems but limited to small volumes, such as vision-based measurement systems. The robot calibration procedures were simulated according to the literature, such that results from simulation are free from errors due to experimental setups as to isolate the benefits of the measurement proposal methodology. In addition, a method to validate the analytical off-line kinematic model of industrial robots is proposed using the nominal model of the robot supplier incorporated into its controller.


Introduction
The use of industrial robots has increased in the last years due to their flexibility and the high productivity requirements in trends applications such as welding, painting, assembling, packaging or undersea operations [1].To control the appropriate robot pose (position and orientation of the end-effector) in industrial processes, it is necessary to construct a suitable mathematical model of the mechanical structure.The mathematical model is obtained with equations associated to the forward and inverse kinematics of the robot [2,3].In this way, an adequate mathematical model is established to relate the robot joint positions to the end-effector pose in relation to a fixed coordinate system.model, such as elastic deformation and gear backlash [15][16][17].Hence, a detailed model is needed to describe the varied sources of geometric and non-geometric errors, improving the robot accuracy after calibration [18].
In practical cases, various measurement conditions can influence calibration results, such as the limitation of resolution and accuracy of measuring devices, accumulated numerical precision errors and robot movement errors [19].In the context of precision, criteria for measurement of repeatability and accuracy have high relevance, reported by several experimental studies that repeatability is significantly irregular within the robot's workspace [20,21].In addition, the measurement uncertainty distribution of the robot end-effector position can be significantly affected depending on its location in the workspace [22,23].
A mapping for accuracy evaluation of an industrial robot trajectory within appropriate regions of the robot workspace was developed in [24], disregarding the relationship between accuracy and geometric errors.Accuracy evaluation using sub-workspace analysis was already proposed [25], aiming to evaluate and determine the suitable region for a given task in the working envelope of an industrial robot, where positioning errors were evaluated in workspace slices.However, the error dispersion in the robot workspace was related to a single error source, in that case, the parameters of a commercial camera.
Due to the error similarity observed in the workspace of industrial robots and the non-linearity and non-normal distribution of errors [22,26], it is known that the efficiency of the calibration of an error model is restricted to the volume of the workspace from which measured samples were collected.That means that if the measurement volume is small, the accuracy of the error model will be restricted to using the robot in the vicinity of the measurement volume [27].This is the reason why, for a calibration aimed to use the robot in large working regions, the measurement volume is required to be as large as possible, with large ranges of variation in joint positions.In short, to the best of authors' knowledge, currently there are no calibration methodologies that make use of measurements in a small volume region aiming to operate the robot in large workspaces.This proposal has the advantage of allowing the usage of simpler and cheaper measurement devices with high measurement accuracy limited to small volumes (e.g.vision systems) and produce an error model that is accurate enough to operate the robot in large volumes after calibration.
Examples of application of the proposed methodology with clear benefits would be in the off-line programming of robots in the automotive and aeronautical industries that demand specific manufacturing operations in large pieces with requirements of high positioning accuracy, making it imperative to improve the accuracy of industrial robots through calibration.
In the automotive industry, the welding, assembly, and parts manufacturing processes can be carried out by industrial robots through off-line programming as long as with the minimum required precision.In the case of parts manufacturing the accuracy must be less than 2.5 mm [28,29], and for inspection processes type Body in White (BIW), less than 0.42 mm [30].Figure 1 shows a possible use of off-line robot programming in the inspection of a car assembly line, which requires robot calibration.
In the aircraft industry, drilling and fastening operations on large parts require a positional accuracy of ±0.25 mm in the assembly process [31,32].In Fig. 2, two practical cases are presented in the assembly process in the aeronautical industry.
Fig. 1 Car inspection process with industrial robots [30]: a Setup for assembly inspection based on industrial robot.b Layout of an on-line inspecting system station Fig. 2 Aircraft assembly process with industrial robots.a Reconfigurable assembly cell of aircraft assembly [31].b Rail-mounted system for aircraft assembly [32] Hence, the main contribution of this article is the proposal and discussion of a robot calibration methodology that makes use of several small measurement subregions obtained from different locations within the robot workspace to subsequently gather the measurement data in only one procedure to calibrate the robot by finding an error model that is adjusted from several error models fitted from measurements in small regions, achieving accuracy results equivalent to a calibration with measurement data collected in large regions measured from one single location, turning feasible the use of high accuracy measurement systems but limited to small region volumes as an alternative of high precision and expensive measurement devices.
This approach can circumvent the problem of measuring the robot end-effector in congested industrial environments.The proposal is at this point based only in simulation to show up that the results presented here come only from the mathematical procedures instead from specific experimental setups.
The remainder of this document is structured as follows: Section 2 describes the proposed methodology based on the sub-region concept.Section 3 presents the analytical off-line kinematic model developed and the method for its validation, while the Section 4 describes the sub-region concept and the validation of the proposed methodology using an ABB IRB-140 robot.Finally, the conclusions are presented in Section 5.

Proposed robot calibration methodology
The proposed methodology for robot calibration is based on a sub-region concept, aiming at making easier and viable to measure datapoints from many different locations with high accuracy and still keep the same order of accuracy expected from a traditional calibration with measurements from only one location.A description of the proposed methodology along the four steps of robot calibration can be seen in Fig. 3, in a block flow diagram.The methodology is to comply with the requirements of industrial processes that demand high accuracy, such as the aerospace or automotive industry [33]. Figure 4 presents the activity diagram used in this work to implement and verify the robot calibration procedures based on the sub-regions concept.
The proposed computer implementation in the simulation was split into two steps: (i) kinematics and (ii) calibration.The first is related to the generation of direction vectors and sub-regions in the workspace, as well as the generation of measuring points for the robot TCP poses distributed within the working envelope.In the calibration step, an error model is generated with several kinematic parameters especially selected from the observation of the conditioning number of the Jacobian matrix of the linear system to guarantee that there are no parameter redundancies, and then the robot calibration and coordinate compensation (accuracy

Inverse Kinematics Validation
Adjust IRB140 Analytical Model evaluation) can be performed in several sub-regions in the robot workspace that had not been used to the parameter identification step.
Calibration is carried out in selected points spread throughout the workspace as point clouds.Sub-regions are built involving groups of points and the robot is calibrated in each sub-region independently.A robot error model is derived from each sub-region error model and accuracy evaluation is performed in several conditions to show the viability of the proposal.

Kinematic model of the ABB IRB-140 robot
The robotic system used for the kinematic analysis is the ABB IRB-140 robot fabricated by ABB, a 6 axes multipurpose industrial manipulator which offers fast acceleration, sufficient large working envelope, it is easy to integrate and adaptable for a variety of applications.

Forward kinematic model
To model the robot kinematic equations, it was assigned coordinate systems in each robot joint, as shown in Fig. 5.
According to the D-H notation [34,35], each matrix associated to the robot joints (T i ) to transform position coordinates between joints is built from four fundamental transformations of translation and rotation [36], as in Eq. 1.
The mechanical structure of the ABB IRB-140 robot has parallel and perpendicular axes, so the D-H notation cannot Fig. 5 Coordinate systems assigned to the ABB IRB-140 robot be used in the error model in consecutive parallel joints, due to the singularities in the Jacobian matrix [3,37].Thus, the Hayati notation circumvents this problem, describing the transformation between two parallel joints using four parameters [27], as in Eq. 2, although it cannot be used in consecutive perpendicular exes for the same reason: With the assignment of the coordinate systems to the robot links, to the base and tool reference systems according to the D-H and Hayati notations, the robot model parameters can be defined.The parameter values of the link lengths connecting joints are commonly provided by the robot supplier [38].The parameter values of the robot model are shown in Table 1.
With all the D-H parameter values and variables, the equations in the form of homogeneous transformations are modeled, relating the coordinates of the end-effector pose to the robot base reference system [39].The manipulator general transformation is the result of the multiplications of each of the homogeneous transformations between link i and link i − 1, as in Eq. 3: The general orientation transformation is shown in Eq. 4, which has to be equal to the robot general transformation if the model is correctly constructed.
There are many publications in the literature describing kinematic models for the ABB IRB-140 robot [40][41][42][43], but assignments of the coordinate systems are not the same, making the model parameter values differ.However, when building the robot kinematics, it is convenient to have the generated equations in the analytical model compatible with the nominal model embedded in the controller with the same input and output values, such that the error model used to identify the error parameters is compatible with the robot controller in the calibration process.

Inverse kinematic model
The inverse kinematics is important in this work because the nominal model embedded in the robot controller must be identified as to guarantee that the analytical model used as the basis for the the error model is compatible geometrically with the nominal model parameters published by the manufacturer.This is relevant in the case of a simulation or if there is no information from the manufacturer such as in old robots.
With the inverse kinematic equations, joint variable values (q i ) can be calculated as functional of the endeffector poses.A kinematic decoupling technique [39] was used as an analytical method with geometric and algebraic approaches to model the inverse kinematics, considering that the robot has a spherical wrist with three revolute joints, with intersecting and orthogonal axes in the wrist center point.Hence, the general transformation matrix can be represented as: from where the wrist orientation matrix is: and the wrist position vector is defined by: The wrist position vector is a function of the robot joint variables, providing three equations for six unknowns, Eqs. 4 and 7.The solution of the first three joint variables allows to the calculation of the remaining three variables associated with the wrist orientation matrix [39], shown in Eq. 6. Depending on the robot configuration, it is possible that the solution of the inverse kinematics equations could be complex, which suggests the use of auxiliary mathematical techniques to facilitate the solution [44].
The decoupling technique was used to describe the θ 1 variable as a function of the end-effector pose [45].
In the case of the ABB IRB-140 robot, θ 3 can be found formulating that: The elements of the left side of Eq. 9 are used to obtain trigonometrical relationships [46] as in Eq. 10.For simplification sin(θ i ) = S i and cos(θ i ).
Equation 10 could match with a constant value (C) of the right side in Eq. 9 to obtain the mathematical relation for θ 3 : The same technique proposed by [46] was used to obtain the Eq.12: Using both parts of Eq. 12, θ 2 can be obtained from: With the first three joint variables solved, θ 5 can be found with the algebraic technique described above, from θ 1 , θ 2 , and θ 3 , in Eqs. 14 and 15: It is necessary to use Eq. 14 to define the following algebraic relations: Thus, it is possible to define the fourth joint of the manipulator (θ 4 ) as: Finally, θ 6 is obtained with Eqs. 17 and 18.

Method to validate the inverse kinematics
To reduce the mismatch between the nominal model embedded in the robot controller and the mechanical structure of the robot a new and compensated robot model has to replace the nominal model.To achieve that, it is necessary to follow some procedures to compare and validate an analytical model from which a parametrized model is built as a platform to fit the new model to the robot structure and compensate the nominal model.Therefore, it is important that this parametrized analytical model has geometric similarity with the nominal model embedded in the robot controller (IRC5).
In this way, joint position values in the robot home position in the controller have to be the same as in the analytical model.The home end-effector orientation defined by the robot supplier affects the results of the inverse kinematics if it is not equal to the analytical model.Thus, the Euler angles (orientation) were obtained from the Robotstudio software available by the manufacturer as input in the analytical model to ensure the compatibility between the models.Figure 6 shows the nominal home coordinates of the robot end-effector.
With the home pose coordinates set by the robot supplier and repeated in the kinematics equations, the analytical model can be compatible with the nominal model, with the same input and output values as the inverse kinematics embedded in the robot controller.
To validate the analytical model, only non-zero error model parameters of link lengths were included in the calibration model.Then, a parameter identification routine was run as it will be explained in the next sections.Datasets with several positions (X 0 Y 0 Z 0 ) were selected in the robot controller and their respective robot joint values (θ i ) were stored.Next, the same joint values were input in the analytical model with corrected link lengths after parameter identification and a new position dataset were calculated (X n Y n Z n ).The error between the positions (X 0 Y 0 Z 0 ) and (X n Y n Z n ) were calculated by the Euclidean distance between them.The average Euclidean distance for all positions was calculated as 0.047 mm, which is the position resolution of the system published be the supplier (0.05 mm) [47].
The steps followed to make the analytical model compatible with the nominal model are shown in Fig. 7, using two commercial software: Robotstudio, which is for robot offline programming and simulation of the trajectories of the programs etc., and MATLAB, which enables the simulation of the analytical kinematics, forward and inverse, the construction of the mentioned datasets and the implementation of the proposed comparison method.Communication between Robotstudio (Server) and MATLAB (Client) was done using Socket method [48].
Figure 8 shows the distribution of position coordinates that were generated for the evaluation of the analytical model.
Figure 9 presents the Euclidean distance of all positions in the method.
It can be discussed that the mismatch between the inverse kinematics solution is as small as the resolution of the system and the built analytical model is compatible with at least one of the inverse kinematics solutions in the controller.

Kinematic error parameters
This section discusses the error parameter model built from the robot kinematic equations and the necessary procedures to identify the error parameter values.The error model of the ABB IRB-140 robot built for this research includes only the geometric parameter errors of the mechanical structure [3].To include error parameters in the kinematic model, it can be established that: where P is the robot transformation matrix and T i is the transformation between each one of the robot joints, such as in Eq. 3 [35].Hence, the kinematic error equations, based on the DH and Hayati notations [7] is presented in Eq. 20: where P is the positioning error that can be physically measured and θ , d, a, α, β are the errors associated with the kinematic parameters, that will be described further in this work.Writing Eq. 20 in a matrix form and using several measurements of the end-effector poses with an external measurement system, it can be formulated a Jacobian matrix (J ) containing the partial derivatives of P and the parameter error vector x [27] as in Eq. 21: The size of the Jacobian matrix (J ) depends on the number of error parameters, as well as the number of measured poses.The parameter error vector, x, to be identified in Eq.21, is shown in Table 2.
The calibration procedures for error parameter identification are then reduced to the solution of a non-linear system of type Ax = B, such that the identification process is a continuous calculation of the errors associated with the kinematic parameters in several iterations, until the parameter error vector does not change above an established residual [10].
To solve the non-linear problem, Levenberg-Marquardt (L-M) algorithm was used, characterized by having good and fast convergence in non-linear systems.The algorithm has three basic parts, where x k is the parameter vector of the error model and x k is the increment in the error parameter in the k th iteration [27], summarized as follows: 1. Calculate the robot Jacobian matrix (J (x k) ) 2. Calculate the x k vector based on:

Fig. 9 Volumetric error between the analytical and nominal models
Table 2 Error parameters assigned to the ABB IRB-140 robot where μ k is the result of the rules shown in the Eq.22: To generate data of measured positions of the robot end-effector coordinates, an analytical kinematic model was constructed with more parameters in joints and links (six between each joint) than the number of parameters used in the kinematic model to calibrate the robot, as an approximation of the real robot, using the homogeneous transformations based on the D-H and Hayati notations.This model had parameter error values chosen with mean and standard deviations to simulate position errors found with the ABB IRB-140 robot [4,49].
Equation 23 presents the transformations used to generate the TCP points, with random errors distributed over all parameters in a Euclidean group of 6 DOF of homogeneous elementary transformations (translation and rotation) between joints.
Position deviations were added to each robot position coordinate to generate the robot measured positions to be used in the calibration procedures, simulating measurement errors.They were calculated with random numbers generated with a Gaussian distribution with nonzero mean and a standard deviation in a range of 0.01 to 0.1 (mm or degrees) [17,23,[50][51][52].

Model parameter identification
Since the measurement data has been generated, the next step is the identification of the error parameter values in the calibration model.In the calibration model, there are much less error parameters than those used to generate the robot position coordinates with the real robot.

Sub-region concept
Considering that robot positioning errors do not have a uniform distribution, measurement sub-regions can be defined as small volumetric regions within the robot workspace that can be used to collect measurement poses in a sufficient number to estimate the statistics of the position errors in a much larger volume as if they have been measured all together in only one step.The main idea of  the method is that each sub-region can be measured from a different location of the measurement system, with different coordinate references.
Therefore, in the sub-regions, parameter errors can be estimated with a minimum number of poses to avoid an illconditioned Jacobian matrix, i.e. at least 25 measured points in one sub-region [53,54] and a complete error parameter vector can be calculated associated to each subregion.Figure 10 depicts how measurement regions can be an alternative for calibration with the concept of sub-regions compared with the traditional measurement based on large volumes within the entire robot workspace.
Figure 11 shows where sub-regions can be established along a direction vector ( f , g, h) and can be associated to Direction vectors and sub-regions can be formulated in a spherical coordinate system as in Eq. 24: where x i , y i , z i are the Cartesian coordinates of the direction vector in the robot base coordinate system, as a function of space variables in a spherical coordinate system (r vg , φ vg , θ vg ), as shown in Fig. 12.
The number of the direction vectors can be chosen according to the workspace, as well as the size of the subregions.Four direction vectors are shown in Fig. 13, with 5 possible sub-regions in each vg i :

Error model optimization
When considering robot calibration, kinematic models with error parameters need to meet three basic requirements concerning the number of error parameters [37,55]: 1. Completeness: the robot kinematic model must have sufficient parameters to include the highest number of sources of deviation from the nominal values; 2. Continuity: small changes in the robot structure must correspond to small changes in the kinematic error parameters; 3. Minimality: redundancy must be avoided, such that the robot model should only have the necessary number of error parameters.
It can be mentioned that the meaning of continuity and completeness are evident, but that of minimality needs a mathematical foundation that quantifies its value, since it is contradictory to completeness.Redundancy becomes clear Fig. 13 Measurement point clouds around vg i only when some mathematical procedures are carried out.It can be emphasized that the minimum number of parameters in the error model cannot be calculated with non-geometric parameters, such as joint elastic deformations [8].Nongeometric errors are not modeled in this work as they produce minor effects in the robot position accuracy and are not relevant for the proposal.
In the proposed methodology described in Fig. 4 the number of kinematic parameters in the error model can be reduced step by step to assure minimality.Figure 14 illustrates the steps of the robot calibration process including the step for identification of error parameters.
Model optimization can be achieved in two fundamental steps [37,56,57].First, it is checked if the condition number of the Jacobian (J) matrix is above 100; the second step identifies which parameter of the model produces deficiencies in the Jacobian matrix, with a proper analysis of the redundancy between parameters, and details are in a previous work [56].Thus, an optimal model is derived from the full model by excluding a small number of parameters from the model, until the conditioning number of the Jacobian (J) is less than 100.
Table 3 shows parameters that have been removed from the complete model during the optimization process, remaining 6 parameters for the transformation from the world coordinate frame to the robot base frame and 21 kinematic parameters of the robot structure.
The optimization routine is carried out to reduce the number of parameters to a minimum, but the error model remains still complete enough to ensure an accurate and efficient identification process of the ABB IRB-140 robot.

Comparison between the traditional and sub-region calibration methods
Next to the optimization procedures to achieve an optimal error parameter model for the robot, it is proposed here that the calibration based on sub-regions is compared with Base-world the traditional method of calibrating a robot within a single and large measurement region.Calibration and evaluation workspace volumes were then established for this purpose, as subsets of 650 random points (Fig. 15).However, some coordinate points were removed due to be out of the robot workspace or that produce singularities in the robot controller.Figure 16 shows 250 measured points among those 650 to be used to perform the traditional robot calibration within a large volume of the robot workspace, different from those used for evaluation.
The identified error parameter vector using the traditional calibration are presented in Table 4.
Table 5 shows the values of the errors calculated before and after traditional calibration: For the calibration based on sub-regions, four direction vectors were established within the workspace volume, with only one sub-region along each vg.The number of direction vectors and sub-regions were chosen to be sufficiently distant from each other and from the robot base, with a large range of position variation of the first joint of the manipulator.The sub-regions were large enough to have inside at least 25 measured points of the point cloud and not to be too small to impose the need to measure many of them to validate the proposal.
Subsequently, the 27 parameters of the error model were identified in each of those four sub-regions for comparison, including the identification in the four sub-regions at the same time.Each sub-region was measured from a different location of the measurement system.Figure 17 presents 100 measured points within the chosen sub-regions, ensuring 25 points for the identification step in each sub-region.Table 6 presents the results of the calibration with the chosen sub-regions, were SR 1−4 includes all the same 100 points measured from one single location of the measured system.
With the four error parameter vectors identified in each of the sub-regions ( X 1→4 ), a single error vector ( Xnew ) was calculated as the mean vector of the other four, calculating a parameter error vector from those calculated from each of the four sub-regions.This proposal assumes that there is a best fitted robot model that could fulfill the accuracy requirements in the entire volume enveloping the sub-regions.The arithmetic mean was adopted as a fitting function because error parameters are optimal locally, vary among sub-regions in harmonic oscillations that tend to be consistent across repeated measures, with small amplitude  [58] as it can be observed in Table 7. Figure 18 presents the proposed procedure to obtain the mean vector.
It is important to mention that the error parameters associated to the robot base are recalculated each time a new measurement is performed, that is, those six parameters are free to change any time measurements and parameter identification are performed.Table 7 shows the error parameter values in each sub-region, excluding those of the robot base.This exclusion is not unreasonable, since any time a robot is placed to work the object piece must be calibrated in relation to the robot base coordinate system.The initial values of the geometric parameters associated to each error parameter, shown in Table 3, were the same for each sub-region and the error parameters identified are the deviation from the initial parameters shown in Table 7.
Modeling the error model parameters through a multivariate function is a complex process, due to the existence of local convergence where nonlinear least squares problems can have multiple local minimums [14].The error vector derived from the four sub-regions is presented in Eq. 25 as: The evaluation workspace was used to compare the error models obtained with the traditional calibration and with the method based on sub-regions.Figure 19 shows the 236 measurement points used to evaluate the two methods, different from those used to calibrate the robot.
The four calibrated models in the sub-regions (SR i ) and the calibrated model with the four sub-regions at once (SR 1−4 ) were evaluated and Table 8 presents the mean position errors calculated in the evaluation points before and after calibration in each sub-region.
After the evaluation procedures with the calibrated robot model in each of the sub-regions, the mean position errors were above 0.7 mm, above the accuracy requirements in industrial processes.It can be noticed that if the four subregions are measured all together from a single location the accuracy achieved is much better, of approximately 0.28 mm.
Figure 20 shows the results of position errors calculated within the evaluation region with the two calibration methods, the traditional method and the proposed subregion method with the mean error parameter vector calculated from the calibration in the 4 sub-regions.
The errors before calibration and those calculated in the evaluation points after calibration with the traditional and sub-region methods are presented in Table 9.It can be pointed out that for each calibration procedure the error parameters associated to the robot base were recalculated, as mentioned before, and that is the reason why there is a small variation in the accuracy before calibration between the two methods.
In the evaluation of the calibration performed in the subregions, the robot position errors were reduced to a mean value of 0.343 mm, while with the traditional method the reduction at the same evaluation points had a mean of 0.262 mm.So, the calibration method performed in subregions is proved to be a viable alternative to the traditional method, where the benefits of the proposed calibration method in sub-regions are mainly in turning feasible the use of simpler measurement instruments with high accuracy limited to small volumes, reducing the time needed for the calibration process setup with complex apparatus and enlarging the workspace where measured points can be collected.

Conclusions
This article presented and discussed an approach to calibrate industrial robots using measurement data collected from several small regions within the robot work-space, such that the measurement system was placed at different locations respectively and measured data were used to statistically find a calibrated kinematic model that can fulfill the accuracy needs as if the robot was calibrated in a larger volume, allowing the use of measurement systems with higher accuracy limited to small regions such as the case of vision systems or contact probes.The robot calibration procedures were simulated in order to isolate results from experimental setups as to show up only the numerical effects of the analytical approach.
Kinematic modeling optimization of a specific robot (ABB IRB-140) was discussed but the techniques can be applied to any type of robot.The validation method of the robot kinematic model was described and implemented, ensuring the compatibility of the analytical kinematic model with the nominal kinematic model embedded in the robot controller (IRC5), resulting in a maximum mismatch of 0.0472 mm between the analytical and nominal kinematic models, which is within the system resolution.Results were obtained from simulated data with the insertion of measurement random errors and geometrical errors of link lengths and joint misalignment as it is consolidated in the literature.
Using the approach of measuring robot positions in subregions, small measurement regions were selected along  direction vectors and the robot was calibrated in each of these sub-regions, and further the results of accuracy improvement were compared with the traditional calibration approach by collecting measuring data in a large volume at once.Positioning errors were evaluated with points distributed in a large volume, achieving an average robot accuracy of approximately 0.35 mm when collecting measuring data from only 4 different small sub-regions, with the measurement system located at different places, and approximately of 0.28 mm when the same points were measured from a single location.The traditional method to calibrate within a large volume measuring points from a single location achieved 0.26 mm.Future works will be focused on the analysis of the presence of several local minimums in the least square algorithms commonly used in calibration of industrial robots as it is still an open discussion in the parameter identification step, providing a suitable method to analyze the error variation along the direction vectors.The proposed method will be implemented in a real environment, allowing to show in practice the numerical analysis described in this work.

Fig. 3 Fig
Fig. 3 Methodology based on a sub-region concept for robot calibration

Fig. 6
Fig. 6 ABB IRB-140 Robot home pose variables in the IRC5 controller

Fig. 10
Fig. 10 Sub-region concept for measurement in robot calibration

Fig. 12
Fig.12 Coordinate frame for the direction vector ( vg)

Fig. 14
Fig. 14 Elimination of redundancies in the error model

Fig. 15
Fig. 15 650 random points in the robot workspace.a Top view and b 3d view

Fig. 16
Fig. 16 250 measurement points selected for traditional calibration.a Top view and b 3d view

Fig. 17
Fig. 17 Measured points within the selected Sub-Regions: a. top view and b. 3d view

Fig. 18
Fig.18 Mean parameter vector calculated from the parameter vectors associated to each sub-region

Fig. 20
Fig. 20 Comparison of the mean achieved with the two calibration methods

Table 1
Geometric parameters for the ABB IRB-140 robot Joint

Table 3
Minimal set of kinematic error parameters of the ABB IRB-140 robot Joint

Table 4
Identified error parameter vector with the traditional calibration

Table 5
Position errors with the traditional calibration

Table 6
Mean error in sub-region calibration

Table 7
Error parameter vectors identified in each sub-region and the mean error parameter vector

Table 8
Mean errors (mm) calculated in the evaluation points before and after calibration in each sub-region

Table 9
Comparison of the mean accuracy achieved with the traditional and sub-region methods