Automatic Robot Joint Offset Calibration: June 2012
Automatic Robot Joint Offset Calibration: June 2012
net/publication/256765848
CITATIONS READS
4 1,534
1 author:
Morten Lind
SINTEF
20 PUBLICATIONS 85 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Morten Lind on 22 May 2014.
Morten Lind
1 Introduction
High accuracy is only required by certain types of robot applications. The major-
ity of the simple teach-based industrial pick-and-place operations need only high
precision, which is inherent in industrial robots.
However, in operations where the robot is to give 3D poses with external refer-
ence it must be calibrated to the required accuracy; e.g. eye-in-hand setups based on
scanners or cameras.
For robot installations used in autonomous production systems the control soft-
ware may monitor the performance and estimate the accuracy of the robot used in
the operations. Based on this, a calibration operation may be scheduled together
with planned operations. The calibration operation should thus preferably utilize
a technique that allows it to proceed in an autonomous fashion, without requiring
manual interaction or shutting down of surrounding systems.
When targeting industrial production systems it is desirable to keep the compu-
tational complexity manageable and focus on stability. Fortunately, the mechanical
or kinematic parameters may for most industrial robots be considered of good nom-
inal accuracy, and low accuracy of an industrial robot is mainly ascribed to the joint
zero offsets.
The subject of robot calibration has been extensively treated by the scientific
community during the past three decades.
Hollerbach and Wampler [1996]; Hollerbach et al. [2008] give a thorough overview
and details of the mathematical and computational foundation of kinematic calibra-
This work has been supported by the SFI Norman and the KMB Next-Generation Robotics
research programmes; both of which are funded by the Research Council of Norway.
tion. They direct specific attention to robots, and introduce concepts of open and
closed loop calibration applicable for serial as well as parallel robot structures.
The unification of open and closed loop calibration methods described by Wampler
et al. [1995] allows for using implicit or partial pose measurement for calibration.
This effectively eliminated the need for high-cost measurement technologies tradi-
tionally required by pure open loop methods.
Regarding calibration with restriction of an end-effector point to a plane, [Zhuang
et al., 1999] stress the fact that a single planar constraint is not sufficient to guarantee
observability of all parameters to be calibrated. They further demonstrate that three
non-degenerate planar constraints can be considered equivalent to an unconstrained
position measurement device; regarding calibration.
Low-cost measurement techniques based on laser pointers have been reported
for implicit, partial closed loop calibration. Gatla et al. [2007] and Liu et al. [2009]
present automated methods where a laser pointer is mounted in the robot end-
effector. They use a camera and a position sensitive device, respectively, for identi-
fication of the precise position sampling of the laser spot.
Though most literature address calibration of extensive models of a robot, Liu
et al. [2009] single out and focus on identification of joint offset calibration. Their
focus on joint offset calibration stems from an early report by Judd and Knasinski
[1990] which claims that almost 90% of the error in the accuracy of the robots can
be ascribed to joint offset calibration.
This paper presents shortly the setup used for sampling joint space positions
for calibration; Section 2. Then the mathematical and computational techniques are
introduced in Section 3. Section 4 gives an overview of emulated experiments and
calibration results. Finally, some concluding remarks are given in Section 5.
2 Calibration Setup
The calibration setup uses a robot, a calibration plate, a calibration probe tool, and
a force sensing device. The experimental setup is modelled and emulated in a phys-
ically realistic manner, providing a platform for the real calibration application sys-
tem to be developed and tested.
Fig. 1 Calibration setup showing a Universal Robots UR5 robot, contact probing tool,
and two different calibration plate setups.
3 Computational Technique
The computational techniques used for analysing and calibrating the sampled robot
configurations generated with the emulated system setup rests on the techniques
described by Ikits and Hollerbach [1997] and Zhuang et al. [1999].
The kinematic computation system is set up to compute with the centre of the
calibration probe hemisphere as the controlled tool centre point. This controlled
point, at a given joint space position q, and computed from the forward kinematics,
is denoted p̃(q).
The calibration plane is offset by the probe hemisphere radius from the cali-
bration plate surface in the direction of the plate outward normal. When contact is
established between probe and plate, it is known that the real tool centre position,
p, lies in the calibration plane. For a joint space position in the sample set, qi , the
real probe centre position is denoted by pi . The corresponding position based on
the joint space position and forward kinematics is denoted by p̃i = p̃(qi ).
For representing the calibration plane, a plane vector is used; as also used by
Ikits and Hollerbach [1997]. A plane vector is a linear operator, p n, such that for
any point, p, on the plane p np = 1. For points off the plane, p np gives an error
measure along the normal direction of the plane.
Given the known plane vector, p n, it is known that the identities p npi = 1}
holds. Given the forward kinematics it is possible to compute the plane vector errors,
ei , from the samples by the defining identity p np̃i = ei . By subtraction the plane
vector error and the plane vector identity gives the difference equation for each
sample:
p
n(pi − p̃i ) = 1 − ei (2)
Under the assumption that small joint offsets corrects the kinematics, it may be
approximated that pi ≈ p̃(qi + qoff ). Using the position part of the manipulator
Jacobian, Jpi = Jp (q), a Taylor expansion to first order in qoff may be set up as
p̃(qi + qoff ) − p̃(qi ) ≈ Jpi qoff . Together this transforms Equation 2 to
p
nJpi qoff = 1 − ei (3)
Stacking Equation 3 over all samples will, for a sufficient number of samples,
result in an over-determined system of the linear form Ax = b, which solves the
minimization problem given in Equation 1. It is of a suitable form to be solved by
linear least squares with Newton-Raphson, and this method has been implemented.
0.7
0.05
0.6
0.04
Condition number
0.02
0.3
0.2 0.01
0.1 0.000.0
50 100 150 200 250 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Sample size Condition number
(a) Plot of condition number versus sam- (b) Plot of RMS error in the identification
ple sizes. Average error and standard of real joint offsets versus condition num-
deviation in red. ber.
Fig. 2 Illustration of calibration results in the assumed realistic case of realistic noise
levels: δqnoise = 0.0005 m and δpnoise = 0.001 m
In addition, for the pertinent case of realistic noise levels underlying Figure 2b,
the best achievable upper bound of the RMS error is on the lower side of 0.005 rad.
This corresponds realistically to a worst case 0.004 m end-effector error on a UR5
robot; with the worst case being all error on one of the shoulder joints.
Figure 2b suggests that keeping the condition number beyond 0.4 results in an
upper bound to the RMS error of approximately 0.01 rad. Figure 2a indicates that
for achieving a condition number beyond 0.4 a sub-sample of approximately 100 is
necessary.
Taking this as a rough rule of thumb, an error analysis can now be set up for
conveying a rough impression of the achievable accuracy of calibration at various
noise levels, when restricting to a sub-sample size of 100. For generating good statis-
tics, for a fixed noise pair, viz input and output, the worst case calibration accuracy
from the groups of sub-sample sizes in the interval of [70; 130] will be averaged
to represent an estimate of the achievable upper bound to the RMS error around a
sub-sample size of 100. The results are displayed in Table 1.
Table 1 RMS calibration error for realistic levels of input (qnoise ) and output (pnoise ) noises.
Error values are computed as averages of worst case errors for the sub-sample sizes in the
interval [70; 130].
aa
aa pnoise 0.0005 m 0.0010 m 0.0020 m
qnoise aa
a
0.0005 rad 0.00570 rad 0.00983 rad 0.01627 rad
0.0010 rad 0.00922 rad 0.01215 rad 0.01910 rad
0.0020 rad 0.01791 rad 0.01670 rad 0.02248 rad
5 Conclusions and Future Work
It has been demonstrated that, at realistic ranges of input and output noise, the
method described in this paper may bring a UR5 robot to an accuracy of about
0.005 m. As the current accuracy of robots from the manufacturer is presumed to be
some cms, the achieved accuracy is a great improvement.
Activity is proceeding to set up a real system for calibration by the method
described in this paper. The most critical challenge is the development of a system
for identifying mechanical contact between probe and calibration plate.
The presumption, based on the account by Judd and Knasinski [1990], may not
be entirely true. Hence, it may not be sufficient to simply perform a joint offsets cal-
ibration, but also calibration of some identified critical kinematic parameters needs
to be incorporated with the method.
The assumption of uniform or Gaussian noise may not hold, especially for the
output noise; i.e. the probe measurement. Biased noise in sampling may have to
be addressed in the real system, by incorporating techniques such as described by
Hollerbach and Wampler [1996].
References
Gatla, C.S., Lumia, R., Wood, J., Starr, G., (Dec 2007). An Automated Method to Calibrate
Industrial Robots Using a Virtual Closed Kinematic Chain. Transactions on Robotics
vol. 6, no. 23, pp. 1105 –1116
Hollerbach, J.M., Khalil, W., Gautier, M., Model Identification. In: Siciliano, B., Khatib, O.
(eds.) Springer Handbook of Robotics, pp. 321–344. Springer Berlin Heidelberg (2008),
http://www.springerlink.com/content/r6m219/
Hollerbach, J.M., Wampler, C.W., (1996). The Calibration Index and Taxonomy for Robot
Kinematic Calibration Methods. International Journal of Robotics Research vol. 6, no. 15,
pp. 573–591
Ikits, M., Hollerbach, J.M., (Apr 1997). Kinematic Calibration Using a Plane Constraint. In:
International Conference on Robotics and Automation. vol. 4, pp. 3191–3196. IEEE
Judd, R.P., Knasinski, A.B., (Feb 1990). A Technique to Calibrate Industrial Robots with
Experimental Verification. IEEE Transactions on Robotics and Automation vol. 1, no. 6,
pp. 20–30
Lind, M., Skavhaug, A., (2011). Using the blender game engine for real-time emulation of
production devices. International Journal of Production Research vol. 0, no. 0, pp. 1–17,
online available, iFirst
Liu, Y., Xi, N., Zhang, G., Li, X., Chen, H., Zhang, C., Jeffery, M.J., Fuhlbrigge, T.A., (Oct
2009). An Automated Method to Calibrate Industrial Robot Joint Offset Using Virtual
Line-based Single-point Constraint Approach. In: International Conference on Intelligent
Robots and Systems. pp. 715–720. IEEE/RSJ
Wampler, C.W., Hollerbach, J.M., Arai, T., (Oct 1995). An Implicit Loop Method for Kine-
matic Calibration and its Application to Closed-Chain Mechanisms. Transactions on
Robotics and Automation vol. 5, no. 11, pp. 710–724
Zhuang, H., Motaghedi, S.H., Roth, Z.S., (May 1999). Robot calibration with planar con-
straints. In: International Conference on Robotics and Automation. vol. 1, pp. 805–810.
IEEE