^{1}

^{2}

^{*}

^{2}

^{3}

^{4}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

This paper presents a novel method for the calibration of a parallel robot, which allows a more accurate configuration instead of a configuration based on nominal parameters. It is used, as the main sensor with one camera installed in the robot hand that determines the relative position of the robot with respect to a spherical object fixed in the working area of the robot. The positions of the end effector are related to the incremental positions of resolvers of the robot motors. A kinematic model of the robot is used to find a new group of parameters, which minimizes errors in the kinematic equations. Additionally, properties of the spherical object and intrinsic camera parameters are utilized to model the projection of the object in the image and thereby improve spatial measurements. Finally, several working tests, static and tracking tests are executed in order to verify how the robotic system behaviour improves by using calibrated parameters against nominal parameters. In order to emphasize that, this proposed new method uses neither external nor expensive sensor. That is why new robots are useful in teaching and research activities.

Parallel robots or parallel kinematic machines (PKM), in contrast to serial robots, are characterized by high structural stiffness, high load operation, high speed and acceleration of the end effector and high accuracy positioning of the end effector. This is why parallel robots are commonly used in tasks such as surgery, material machining, electronics manufacturing, and product assembly among many other applications. In order to reach such high robot accuracy, it is necessary to avail robust and reliable calibration methods, which is quite difficult to obtain from both theoretical and practical point of view, even if it could be performed off-line. Robot accuracy can be affected by increasing backlash due to robot operation, thermal effects, robot control, robot dynamics [

As previously mentioned, external calibration can generally be carried out by measuring pose parameters of the end effector of the robot (or other elements of the robot) completely or partially. Measurements of the pose of a platform can be made with a laser [

Generally, the goal of a kinematic calibration process is to obtain the constraints of quite large measured poses (called calibration poses) in order to determine which geometry (distances or angles of elements) of the robot is the best to satisfy the above constraints [

In this paper a novel, inexpensive, and external calibration method to calibrate a parallel robot with three DOF is proposed. In order to obtain the joint and 3D incremental positions, the proposed method utilizes positions (not absolute but incremental positions) from the resolvers of the motors and visual information obtained from a spherical element. Once the above information is obtained, it is used in the constraint equations to solve them numerically and obtain the best set of geometrical parameters that will satisfy the set of equations. Finally, several tests are executed in order to check the best behaviour with calibrated parameters against nominal parameters.

The main contribution of this approach is the use of low-cost sensor for calibrating the robot and the methodology used with the approval of the obtained results. Also it allows the evaluation of the position accuracy of homemade robot and the easy application to other robots developed in educational and research teams.

The main objective of the proposed method is to calibrate a parallel robot of the system called RoboTenis. The calibration of the robot is used for improving accuracy of its visual servoing algorithms and developing future tasks such as playing a game of ping-pong. The RoboTenis system was created to study and design visual servoing controllers and to carry out object tracking under dynamic environments. The mechanical structure of the RoboTenis system was inspired by the DELTA robot [^{2}

Constraint equations for the calibration method were obtained from a kinematic model of the robot. It is important to emphasize that the transformation matrix, between the camera coordinates system and the effector coordinates system, does not intervene in the equations of constraint used in the calibration of the robot, but it is obtained during the camera calibration process. Transformation matrix was divided into rotation and translation components. The rotation matrix was obtained independently from the robot calibration, whereas translation matrix is not necessary since the camera is fixed to the end effector and the model of the constraint equations is incremental. _{o}_{i}_{i}_{i}_{x}B_{y}B_{z}^{T}_{i}_{i}_{i}_{x}C_{y}C_{z}^{T}_{i}_{x}P_{y}P_{z}^{T}_{0}_{0}_{0x}P_{0y}P_{0z}^{T}_{i}_{i}_{i}_{i}_{i}_{o}_{i}_{i}_{i0}_{i}_{i}

The constraint equations are based on the movement of the forearms with respect to the robot arms [_{i}_{i}_{i}_{i}_{i}_{o}

Since incremental joint and incremental end effector positions can be obtained (a similar approach for serial robots can be found in [

Observe that _{i0}_{0}_{ik}_{ik}_{ik}_{i0}_{k}_{k}_{k}_{0}_{k}_{1}Θ_{2}Θ_{3}Π_{x}Π_{y}Π_{z}_{k}

Not all of the robot parameters have an effect on the kinematic model and as a consequence they cannot be identified. This fact is known as observability of the term. An observability measurement can be derived from the Jacobian of the constraint equations. This Jacobian is called observation matrix and observable parameters can be obtained by its _{i}_{i}_{i}_{i}_{i}_{i0}_{0}_{0}_{i}_{i}b_{i}h_{i}θ_{i0}_{1}_{2}_{3}P_{x0}P_{y0}P_{z0}

Substituting the incremental

In order to solve the above equations,

Note that because the constraint equations are not linear, their solution is no exactly satisfied, thus, commonly, an approximate solution is obtained by numerical algorithms such as the Gauss-Newton method. Other possible alternatives are shown in [_{3k × 15} is the Jacobian of the constraint equations or the observation matrix, which is given by:

Finally the parameters are iteratively obtained by:
^{+}_{0}

The visual measurement system is made up of a fixed (by a transparent rod) ball and a calibrated camera that is located at the end effector of the robot. The visual system has to get the relative robot position with respect to the ball in order to deliver values used in

In order to solve the system of constraint equations, a set of incremental positions (resolvers and end effector) is needed. Several simulations have shown that at least 6 different perfect pose measurements are required. However, it is obvious that perfect measurements cannot be obtained. Therefore, it is necessary to choose best calibration poses. Thus, errors in the parameters of the robot are especially critical when the calibration pose is near a singularity. However in a practical calibration process, if poses are extremely close to singularities, they can produce unpredictable movements (due to kinematic errors). In this work, the robot workspace is numerically well known, by using nominal values, and the calibration poses are chosen randomly from the workspace boundaries. Thus if a pose is located between 5 and 10 cm from a singularity, then it is included as a calibration pose. The experiments were implemented with 300 poses and each measure is the mean of 500 images in order to avoid noise from image acquisition (image acquisition rate: 8.34 ms) 21 minutes are needed for the acquisition of all images. Additionally, it is necessary to wait 4 seconds at each change of pose in order to ensure the absence of any vibration in the robot or the holding structure. The image processing is performed while the acquisition process, while the time taken by the optimization algorithm is almost negligible compared to the rest (about 5 seconds). Due to its simplicity, the calibration process is done automatically in 40 minutes and it can be calibrated on-line. Several calibrations have been executed and then several sets of calibrated parameters have been used in the initial tests. Since similar results have been obtained, the set of calibrated parameters that produces less error in the tests (see Section 6) has been chosen to compare with the nominal parameter in the rest of the tests. In

As previously mentioned, the aim is to obtain the position of the centre of the ball, (_{B}_{B}_{B}_{B})

The image points, _{u1}_{u2}_{1}_{2}

The values _{1}_{2}_{u1}_{u2}_{B}_{B}_{B}_{B}

The term (_{B}_{1,2}_{B}

From here it can obtain _{B}_{B}_{c}_{c}

The values of _{1}_{2}_{u1}_{u2}

Likewise, considering the distance from the sphere centre to each tangent line:

With similar reasons that for

Then, with _{B}_{B}_{B}

The second developed correction allows calculating the ellipse axes (this ellipse is the projection of the sphere on the image) from the obtained values in the horizontal and vertical lines with intersection in the ellipse centre (see _{u1}_{u2}_{u1}_{u2}_{e}_{e}_{u1}_{u2}

_{z}_{C}_{z}_{z}_{B}_{B}_{B}_{e}_{e}

Observing _{e}_{r}_{uc}y_{uc}

The ellipse point in the ellipse horizontal line that pass by the centre satisfies (see _{uc}_{ue}_{u2}_{u1}_{ue}_{uc}

By substituting _{e} and _{e}

With the value of _{e}, _{e} is calculated and setting in

The proposed calibration algorithm is executed according to the following steps:

Initialize the actuators of the robot in a home position (_{i0}

Randomly, inside of the workspace (not necessary well conditioned but near of the workspace boundaries) of the robot, generate a set of 300 poses of the robot to be used as calibration poses.

The home of the robot is taken as unknown (_{i0}_{0}_{ik}_{k}

Acquire 500 images in each pose of the robot (using the set in II) and by using image processing from each image _{1}_{2}_{1}_{2}_{B}_{B}_{B}

In order to correct the projection of the spherical object in the image, use _{B}_{B}_{B}

Obtain new parameters of the robot by using above incremental measurements and

A set of test cases is implemented to check the goodness of the parameters obtained by the calibration algorithm. The behaviour between a calibrated and a not calibrated robot system is compared. Two types of tests, static and tracking tests have been implemented. By executing static tests, it is determined how calibration parameters affect the robot positioning. By the second type, it is determined how calibration parameters affect the tracking tasks in which the RoboTenis has been designed.

The objective of the static tests is to quantify the effect over the robot positioning by using the parameters obtained from the robot calibration process against the nominal parameters. Both parameter sets are shown in

In order to evaluate the results in the robot motion, the data from the visual system when it sees the control element have been analyzed. Indeed, the repeatability of the three-dimensional data, when a circle to 200 mm of distance is seen by the camera in the image centre (to minimize the camera calibration errors) with the robot blocked, has also been analyzed. The visual resolution is 0.4 mm per pixel approximately in the horizontal axis. The circle position is determined by analysis of the circle rim with subpixel precision. Other results are the centre and diameter. A loop of 50 samples with the robot blocked allows the repeatability of the measurement to be obtained. Some representative data are shown in _{c} and Y_{c} coordinates (image plane), due to a different camera resolution and a bigger uncertainty in the camera Z_{c} axis since it depends on the circle diameter.

The high variation of the data shown in

The repeatability of the measurement according to the ISO 9283 [

The next element to be considered is the robot system itself. The maximum accuracy depends on the considered working point. With the used encoders, it is not possible to guarantee an accuracy that is less than 0.02 mm. In order to determine the robot position, the camera is placed 200 mm of distance. in front of each circle The robot analyzes the image and fixes its position till the circle centre matches the image centre, with an error less than 1 pixel (to minimize the camera calibration errors). The robot position data from the encoders are corrected with the vision system data. As previously described, in order to minimize the error in the visual data acquisition, a reliable measurement for the mean of 500 snapshots and simple data processes are considered. In such manner, accurate calculations of robot position with respect to the control element can be obtained.

Only positioning repeatability has been analyzed as the first analysis. Position accuracy depends on the calibration parameters used. It is the main aim of this research and is analyzed in Section 6.1.2 with incremental data. Orientation repeatability and accuracy have not been analyzed because the robot system has only three degrees of freedom, all of them being translation.

According to the ISO 9283 protocol for positioning repeatability, a plane in a diagonal of a cube into the robot working area is chosen. In the plane, five points are chosen (the vertices of a rectangle and its centre). The robot has to execute a loop formed by positioning in front of each point and repeatable measure the last one (focus point). For such, as mentioned above, the control element is placed 200 mm with a black circle in the image centre. The visual system analyzes the three-dimensional position of the circle. After 500 samples, the position of the robot is known.

In

As conclusion, it can be affirmed that the robot system and the visual sensor have repeatability of less than 0.1 mm under normal working conditions (space working points, robot speed, and load). This value has to be quite small enough so as not to affect in the accuracy of the positioning distance (next section).

The aim of the following tests is to quantify the produced effect in the accuracy robot positioning by the parameters obtained in the calibration robot process against the nominal parameters. Both parameter sets are shown in

The robot positioning in relation to the control element is done likewise as previously mentioned. The robot is placed 200 mm in front of each circle, the position is fixed till the circle is in the image centre, and the three-dimensional data position corrected with the visual information is stored. Its accuracy is considered well known to measure the mean of 500 samples.

For each circle to be analyzed (five planes with 25 circles each one), the distance between the circle and its neighbour in the same plane has been calculated by getting the absolute error. The absolute error is calculated by comparing the obtained distance with the theoretical distance of the control element. For this study a loop of 25 samples has been done according to the ISO 9283 (see

The objective of these tests is to quantify how calibration parameters affect the tracking tasks. It is desired that the robot is able to track an object that moves chaotically in its workspace. In order to test the calibration method, nominal parameters and calibrated parameters are compared when they are utilized in a position-based visual controller [

First this has been studied by simulating the effect it can have on tracking tasks using erroneous values of the parameters of the robot. It seeks to limit its maximum theoretical influence. Later follow-up tests are real, using both nominal and calibrated values.

The visual control law based on position can be defined [

_{p}

_{r}

_{p}

If the direct Jacobian robot [

Articulate position:_{1}_{2}_{3}]^{T}

Cartesian position: ^{T}

The RoboTenis system, like the Delta robot, has a Jacobian as a 3 × 3 matrix, which supports reverse except singular points.

The joint control law, which is acting on the engines, is:
_{R}

The Cartesian robot behaviour (without considering the dynamics of the system) depends on the real robot Jacobian, which is unknown. It corresponds to what would move the robot when the motors are actuated.

In order to analyze the influence of the use of nominal or calibrated parameters in the control law, it is possible to compare the difference in the movement of the robot between when using a control law with nominal parameters or when using calibrated. If defined:

_{RC} Direct robot Jacobian obtained from calibrated parameters

_{RN} Direct robot Jacobian obtained from nominal parameters

_{R}= _{RC} Considered the best estimation

It is obtained:

Also:

For a better visualization, the largest singular value along the exterior of various cylinders (10 mm, 100 m, 200 mm, and 300 mm in radius), and in two perpendicular planes is represented in this figure with false colour. The last figure (on the right) shows the colorimetric scale used. The observed asymmetry is due to the lack of symmetry of the calibrated parameters and its difference from the nominal values. The simulation environment has avoided the singular points of both Jacobians, those points alter the study. The actual control avoids such singular points obtained using the Jacobian at a near no singular point.

Assuming maximum values:

‖_{r}‖=30 mm

‖_{p}‖=1500mm/s

‖

It is obtained:

‖Δ_{r}

It represents approximately 1.5% difference from the control law, which is the greatest influence that would be obtained by using the parameters calibrated against nominal values.

In order to analyze the influence of a best calibration on the robot parameters, several tracking tests of a ball with a chaotic movement at speeds up to 1,500 mm/s have been done. The objective is to keep the robot at a constant distance of 600 mm with the ball in the image centre. In

In this paper, a calibration method using a camera attached to the robot hand as the only main sensor in order to improve the accuracy of a parallel robot inspired by the Delta robot is described. The simplicity of the equipment used over other more expensive alternatives, makes this proposal especially useful for calibration of robots in educational and research environments. The methodology for visual data acquisition is especially accurate, and can be extended to other applications.

The improvements using this method have been verified by executing several sets of tests (static and tracking tests). Before these tests, the measure repeatability of the whole system, which is close to 0.0635 mm according to [

From the first static tests, it can be affirmed that the positioning repeatability of the robot system and the visual sensor is less than 0.1 mm under normal working conditions (space working points, robot speed, and load). From the second kind of static tests, it can be pointed out that using calibrated parameters reduces the errors in the positioning distance by almost 40%, which is a remarkable error reduction.

On the other hand, the tracking tests, by defining an index depending on the errors in the controller and an estimated working velocity, both sets (nominal and corrected) of kinematic parameters have been compared through the visual servoing controller performance. The increase in the performance obtained from the tracking visual controller regarding the correction of the parameters is extremely minimal (errors in the controller are reduced by more than 1.5% when the robot is calibrated). The improvements in the controller performance can be explained as follows: The image visual controller makes use of the Jacobian robot and kinematic robot models (inverse and direct). When the controller corrects the robot trajectory, errors in the model have a direct influence over the direction in which the controller tries to correct. On the other hand if the position of the object remains fixed, the error in the visual controller converges to zero but the evolution of the error is different for two set of parameters.

One aspect to analyze in future work is the incorporation of non-calibrated parameters in the optimization algorithm in order to further minimize the errors obtained. Some videos of the RoboTenis system in tracking tasks (such as playing ping-pong) are shown at:

The authors would like to thank the following institutions for their financial support: Universidad Politécnica de Madrid in Madrid Spain; Universidad Aeronáutica de Querétaro, in Queretaro Mexico; and Universidad Nacional de San Juan in San Juan, Argentina. This work was supported by the Ministerio de Ciencia e Innovación of the Spanish Government under Project DPI2010-20863

The following operation rules have been extracted from ISO 9283 (1998)

The repeatability of position expresses the dispersion of the reached positions after n repeated visits in the same direction to a prefixed position.

Let _{j}_{j}_{j}

The repeatability is defined as:

Let _{c1}_{c2}_{1,j}_{2,j}^{th}

Let _{c1}_{c1},z_{c1}_{c2}_{c2},z_{c2}_{1j}_{1j},z_{1j}_{2j}_{2j},z_{2j}

The authors declare no conflict of interest.

A sketch of the RoboTenis system.

One leg profile of the RoboTenis system.

Projection of the ball in the image plane.

Simplified projection of the ball in the image plane.

Ellipse of the sphere projection on the image plane.

Angle _{r}

RoboTenis system and control element.

Spatial distribution of the obtained errors by using calibrated parameters. The mean of all errors is 0.583 mm (dimension values in mm).

Spatial distribution of the obtained errors by using nominal parameters. The mean of all errors is 1.468 mm (dimension values in mm).

Visual servoing controller scheme of the RoboTenis System.

Largest singular value of the matrix Δ_{R} in a cylinder of radius 300 mm and height 400 mm, included in the workspace.

Robot kinematic parameters, nominal and calibrated.

| ||||||
---|---|---|---|---|---|---|

i = 1 | i = 2 | i = 3 | i = 1 | i = 2 | i = 3 | |

_{i} |
500 | 500 | 500 | 500.89 | 500.01 | 499.96 |

_{i} |
1,000 | 1,000 | 1,000 | 1,002.86 | 1,001.37 | 1,001.28 |

_{i} |
50 | 50 | 50 | 48.69 | 49.96 | 48.68 |

_{i} |
0 | 0 | 0 | 0.316 | 0.844 | 0.936 |

_{x} |
0 | 5.31 | ||||

_{y} |
0 | 0.31 | ||||

_{z} |
750 | 743.74 | ||||

Φ_{i} (degrees) |
||||||

H_{i} (mm) |

Parameters that were not estimated.

Standard deviation and Range (max value–min value) of 50 samples.

_{c} |
0.014 | 0.059 |

_{c} |
0.038 | 0.163 |

_{c} |
0.092 | 0.497 |

Standard deviation and Range for 25 measures analyzed.

_{c} |
0.0025 | 0.0096 |

_{c} |
0.0049 | 0.0150 |

_{c} |
0.0212 | 0.0846 |

Repeatability of position, loop 25 poses.

_{c}, Y_{c}, Z_{c}) with 25 Samples (mm) |
||
---|---|---|

1.0 | 0.032, 0.025, 0.114 | 0.07041 |

2.0 | 0.039, 0.034, 0.121 | 0.07512 |

Tracking Error Mean (mm).

500 mm/s | 4.54 | 4.47 |

750 mm/s | 7.42 | 7.32 |

1,000 mm/s | 12.76 | 12.61 |

1,250 mm/s | 20.14 | 19.84 |

1,500 mm/s | 30.47 | 30.14 |