You are on page 1of 11

EngngApplic. Artif. lntell. Vol. 9, No. 1, pp.

83-93, 1996
Pergamon Copyright © 1996 Elsevier Science Ltd
Printed in Great Britain. All fights reserved
0952-1976(95)00069-0 0952-1976/96 $15.00 + 0.00

Contributed Paper

Inverse Robot Calibration Using Artificial Neural Networks


XIAOLIN ZHONG
Napier University, U.K.

JOHN LEWIS
Napier University, U.K.

F R A N C I S L. N - N A G Y
University of Salford, U.K.

(Received March 1995)

Robot end-effector locations (position and orientation) achieved by controlling joint values obtained
from a robot controller will, in general, deviate from the desired location due to inaccuracies in the
internal kinematic model. Inverse calibration is defined as finding the corrected joint values to drive a
robot so that deviations of the end-effector are minimised. Conventional numerical approaches to the
inverse calibration of robots are time-consuming and suffer from numerical problems of ill-
conditioning and singularities. In this paper, methods using arUficial neural networks (NN) have been
developed for robot inverse compensation, for both local and global calibration problems. Simulation
and experimental results for a Puma robot are presented to show the effectiveness of the NN-based
approach.

Keywords: Robot calibration, autonomous calibration, inverse compensation, generic accuracy


model, artificial neural networks, higher-order networks.

1. INTRODUCTION have analytic closed-form solutions. However, due to


manufacturing tolerance, set-up errors, wear and tear,
1.1. Robot calibration problem transmission errors, compliance, etc., the internal
design model used in the robot controller will not
Robot positioning accuracy is a major concern when describe the transformation accurately. Therefore, the
applying off-line programming methods in advanced actual locations achieved by controlling the joint
robotic manufacturing systems. Whilst an industrial values, obtained from the controller's internal model,
robot has reasonably good repeatability, its positioning will deviate from the desired locations. Robot inverse
accuracy is relatively poor. The desired locations of a calibration is defined as a process of finding the cor-
robot end-effector are normally specified in Cartesian rected joint values, to drive the robot so that the end-
space, while these locations are achieved by controlling effector deviation errors can be minimised. 2 Robot
joint variables in the robot's joint space. The transfor- calibration can improve positioning accuracy to the
mation from Cartesian space to joint space is called the level of robot repeatability.
inverse transformation in robotics. The inverse trans- Most robot calibration work is concentrated on
formation is a computationally intensive procedure for kinematic-model-based calibration 3-6. Kinematic calib-
general-form multi-link manipulators, the accurate ration involves the following procedures:
solution of which depends on the algorithms used and (1) Set up an appropriate kinematic model.
on precise knowledge of the robot parameters. In (2) Take measurements of the robot end-effector's
practice, most industrial robots are designed to have location (position/orientation).
simple-form kinematics I so that the inverse problems (3) Identify the actual kinematic parameters to
minimise the errors between the locations pre-
dicted by the model and the actual measured
Correspondence should be sent to: Dr X. Zhong, Department of
Mechanical, Manufacturing and Software Engineering, Napier ones (in the least-square sense).
University, 10 Colinton Road, Edinburgh EH10 5DT, U.K. (4) Implement the identified robot kinematic model.
83
84 XIAOLIN ZHONG et al. : INVERSEROBOT CALIBRATION

Kinematic model-based calibration has the following NN-based approaches are appealing in robot inverse
limitations: transformation problems due to their computational
• The kinematic model takes only geometric factors efficiency learning ability and robustness, it The capabi-
into account, but non-geometric factors such as lities of feedforward NNs to estimate functions are
backlash, joint compliance, etc., may be signifi- especially useful for applications where the functions
cant in affecting robot accuracy, depending on the have no analytic expressions, or where the analytic
application. calculations are time consuming. In previous work) 2 a
• Identification is a complex numerical procedure pi-sigma-based NN architecture was designed for both
which can suffer from the numerical problem of forward and inverse robot accuracy compensation
ill-conditioning resulting in inaccuracy and inef- which exhibits efficient network learning and a higher-
ficiency. The results of identification can hardly be order approximation capability. A NN-based method
near-perfect due to the numerical inaccuracy and provides a generic model of robot accuracy which is not
limitations of the model used. limited by the inability to model and identify specific
• Implementation of the identified model is proble- error sources. In contrast to numerical approaches to
matic due to the difficulty of modifying the con- inverse compensation, which are computationally
troller parameters, and there is additional diffi- expensive, the NN approach to inverse compensation
culty in solving the inversion problem of the has a constant-time solution which is efficient for on-
modified kinematic model. 4 line implementation.
This paper extends the previous work in that it
1.2. Inverse compensation methods compares both simulation and experimental results on
Instead of modifying the kinematic parameters in the a robot inverse calibration problem using various
robot controller directly, joint compensation approaches. While the feedforward NN is effective for
approaches 7'8 have been used to correct the errors robot inverse compensation for a small portion of the
caused by the identified model errors. However, these robot's workspace, its training efficiency and accuracy
approaches are based on iterative inversion of the robot would be compromised if large calibration volume were
Jacobian, and can therefore only perform compensa- considered. For robot global calibration which involves
tion off-line, due to the computational expense, and the a large number of work points across the whole work-
algorithms break down in the vicinity of singular space, the inverse compensation problem has been
robot 6,9 configurations. Zhuang e t al. 6' 9 formulated the reformulated such that a recurrent Hopfield
accuracy compensation problem as a linear control continuous-valued NN 13 can be applied.
problem, such that the linear quadratic regular method This paper is organised as follows. The different
can be applied to the design of a robust accuracy aspects of inverse robot calibration are described in the
compensator. The existence and uniqueness are next section. The kinematic calibration of a Puma 560
ensured in robot configurations near singularity by robot is performed for comparison. The numerical
adding a regulation term to the performance index. procedure used to generate training data for NN com-
However, the computation of the linear quadratic regu- pensation is also described. Section 3 introduces the
lator algorithm is expensive for on-line implementation feedforward NN architecture for local compensation
of robot joint compensations. and the recurrent Hopfield algorithm for global com-
In the method of non-parametric calibration, intro- pensation. Finally, the compensation results for a six
ducd by Shamma and Whitney,2 the approximation DOF Puma robot using various compensation
functions between joint corrections and robot configu- approaches, with the experimental evaluations, are
rations were set up by using least-square fitting of presented.
trivariate polynomials to the training data samples. The
single calibration of six DOF (degrees of freedom) was
2. INVERSE ROBOT CALIBRATION
separated into two calibrations, which comprise the
calibration of the first three major DOF and then the
calibration of the remaining three minor DOF. 2.1. Kinematic calibration
However, only position compensations were con- A Ferranti Merlin 750 precision co-ordinate measur-
sidered, due to the polynomial approximation adopted ing machine (CMM) has been used to measure the end-
(the polynomial functions required will be too complex effector locations of a Puma 560 robot (with a cube
to be determined by the numerical least-square solu- mounted in the end-effector; Fig. 1). As the work is
tions for both position and orientation). Similarly, concerned here with robot accuracy in a local area of
Kozakiewicz e t al. 1° used a least-squares polynomial the work space, where most fine operations (such as
approximation and multi-layered neural networks assembly) are executed, an area of 200 by 400 by
(NN) to store joint corrections and interpolation for a 4 200 mm in Cartesian space and 45° by 90° by 135° in the
DOF Scara robot. Again, only position calibration was orientation space (Euler angles) has been chosen as a
considered, and the NN gave poor accuracy compared calibration area. 288 data points, uniformly distributed
with polynomial approximations. in the calibration area, have been collected for calib-
XIAOLIN ZHONG et al. : INVERSE ROBOT CALIBRATION 85

Fig. 1. Robot end-effector location measurement using a co-ordinate measuring machine (CMM).

ration and evaluation, with 3, 4, 3, 2, 2 and 2 samplings cedure is not essential for the neuro-compensation.
along each of six dimensions respectively. However, for the purpose of simulation and compari-
After a number of measurements of robot end- son, 120 data points ( M = 120) have been randomly
effector locations had been collected, the mathematical chosen from the collected data set to identify the
model was established, and the parameters to be esti- kinematic errors according to the above method. The
mated were chosen to perform the identification. nominal kinematic parameters used for identification
Adopting the widely-used Denavit-Hartenberg are listed in Table 1 (nominal joint angles are obtained
(denoted as D - H ) parameters (k, q ) = [(a, d, a), q)], from the nominal kinematic controller). After about
the forward kinematic model can be established: 1000 iterations using a quasi-Newton search strategy,
the kinematic errors have been identified and are listed
z = r(k, q) (1) in Table 2. Robot base and tool parameters are not
where z is the location vector of the robot end-effector included in the identification due to the difficulties of
in Cartesian space and f(k, q) is the mapping from the modelling base and tool parameters using D - H para-
robot joint space to Cartesian space. This is a non- meter notation. The errors existing in base and tool
linear function of kinematic parameters k and joint transformations could be compensated for in the least-
variables q. The residual error vector of the robot end- square sense by the kinematic parameters of robot
effector et, corresponding to the l-th location measure- manipulator.
The average positioning error decreased from 4.3710
ment Zl, is:
to 0.5033mm for the identification points after the
et(Ak, Aq) = z , - f(k, q/) (2) kinematic parameters were updated by the identified
errors. It is worth mentioning that the linear least-
where l = 1, 2, . . . , M , and M is the number of meas- square method was also attempted for identification by
urements, A k = ( A a , Ad, Aa); the kinematic error establishing an identification Jacobian using the same
parameter, Aq is joint zero error. data set, but this failed to converge due to the singular-
Assuming these parameter errors are configuration- ity of the identification Jacobian. Obviously, the nonli-
independent, they can be identified by a non-linear near optimisation approach is computationally more
least-square optimisation: robust, though a longer computation time is required.
M
min ~ [e~Ak, Aq)]TQ[et(Ak, Aq)] (3) Table 1. Nominal parameters of the Puma 560 robot
Ak, Aq I= l
Link 1 2 3 4 5 6
where Q is a positive diagonal weight matrix used to
adjust the balance between end-effector position and ai 0 431.8 - 20.32 0 0 0
di 0 149.09 0 433.07 0 111.25
orientation accuracy. at - ~r/2 0 ~t/2 - n/2 3r/2 0
The identification procedure has been eliminated in
the NN-based calibration; therefore, the above pro- (length in mm and angles in radians)
86 XIAOLIN ZHONG et aL : INVERSE ROBOT CALIBRATION

Table 2. Identified kinematic errors of the Puma 560 robot


Link 1 2 3 4 5 6
Aai - 0.486 - 0.029 0.870 - 0.213 0.193 0.063
Adi - 0.244 0.899 0.911 - 2.007 - 3.407 - 0.042
Aai - 0.0004 - 0.0074 0.0147 - 0.0125 - 0.0178 - 0.0065
A0i 0.0010 - 0.0025 0.0000 0.0174 0.0057 0.0133

(length in mm and angles in radians)

2.2. Inverse compensations shown in Fig. 2, the trained NN can be used to augment
Shamma and Whitney 2 categorised calibration into the robot controller to achieve on-line inverse compen-
forward calibration and inverse calibration. Forward sations.
calibration involves finding the actual location in the The method of using numerical optimisation to
world space for a given joint configuration, while obtain the data for joint compensation reduces the
inverse calibration involves finding exact joint values data-collection time significantly compared with the
for given locations in the world space. approach used by Shamma and Whitney, 2 in which they
Correspondingly, compensations can be made both in measure the workspace location error first, and then re-
the robot's world space and in the joint space, and can teach the data point manually such that the workspace
be termed "forward" and "inverse" compensation res- location error approaches zero. The robot joint values
pectively, for convenience. Inverse compensations in at the two consecutive configurations are then used to
joint space are computationally more expensive than obtain the joint compensation amounts necessary to
the forward compensations, since numerical compensate for the workspace location error.
approaches are involved. A widely used inverse com-
pensation is the N e w t o n - R a p h s o n ( N - R ) method, 3. NEURAL NETWORK ARCHITECTURE AND
which involves an inversion of the Jacobian matrix J(q) ALGORITHM
to find the equivalent joint corrections at each ite-
ration. For a local robot calibration problem, in which the
robot's accuracy is critical only in a small portion of its
6q = J-l(q)Ax, (4) workspace, a simple feedforward network with a
where Ax is a location error vector in Cartesian space, higher-order approximation capability is designed, to
which is calculated by evaluating the forward kinema- learn the non-linear mapping between robot configu-
tics of the identified model in kinematic calibration. 4 A rations and joint corrections. The training exemplars
limitation of the N - R method lies in that the geometric are taken from the off-line numerical inverse compen-
errors must be small; otherwise, convergence cannot be sations, which are based on the full location (position
guaranteed, and the method breaks down in the vicinity and orientation) error measurements of a six-degree-
of singular robot configurations, where the Jacobian of-freedom (DOF) Puma robot at discrete locations,
will be ill-conditioned or singular. The computation is uniformly distributed in the calibration volume. The
also expensive for on-line compensation, due to its trained networks are then used to perform constant-
iterative nature. time compensations which are suitable for on-line
implementation.
Alternatively, the actual joint angles which drive the
robot to minimise the end-effector deviations can be 3.1. Feedforward neural-net architecture and local
found by using non-linear least-square optimisation compensation
without explicit evaluation of the Jacobian. The initial
It is known that multilayered feedforward NNs can
values of the joint angles are the nominal joint angles
approximate arbitrary continuous non-linear functions
obtained from the robot controller.
min [f(k, qt) - zt]rQ[f(k, q,) - zt],
qt

where zj is obtained from direct measurement as in (2);


therefore, the accuracy of compensation is not limited
by the accuracy of identification as in the case of
kinematic calibration. As was seen from the identifica-
tion, non-linear optimisation uses a more robust search
strategy, and can converge to good solutions, given
sufficient time. However, its convergence is too slow
(5)

~ Nettral Net
Inverse
Compensator

De " inverse model


.esire~ xlel[ Join~ ~ . Robot ,ctual
- [Robot ~
for on-line implementation. Therefore, a feedforward
NN is used to store and interpolate the joint corrections Location uonnguration Location
obtained from the non-linear optimisation routine. As Fig. 2. NN-based inverse calibration compensation.
XIAOLIN ZHONG et al. : INVERSE ROBOT CALIBRATION 87

~i--1,2,...,6) hidden layer of each pi-sigma network. For six DOF


Puma robots, experiments show that 6 units in the
hidden layer achieves the best results. This agrees well
with analytic compensation models, which are gener-
ally up to 6th order polynomials of sinusoidal functions
of the joint angles.
The network shown in Fig. 3 will be trained separa-
tely for each component of the output vector, and put
together for implementation after training. Therefore,
the network training comprises six pi-sigma network
training processes. The theoretical proof of a pi-sigma
network's approximation capability, and the learning
algorithm, have been given in Ref. 16. For efficient
and stable learning, the asynchronous updating rule has
been adopted. That is, at each learning epoch, only
weights associated with one hidden unit will be chosen
to be updated at one time; this process is repeated until
Fig. 3. NN architecture for inverse compensation. all weights associated with each hidden unit have been
updated once. The weight updating is based on an LMS
(least-mean-square)-type learning rule, and batch
to any desired accuracy. However, there is no construc- learning is used to speed up the training process. Figure
tive method of determining the most suitable NN archi- 4 shows the first three of six Puma robot joint compen-
tectures for specific problems. The involvement of a sation learning curves, which exhibit fast and stable
NN in inverse calibration is used to transfer robot joint learning. The final RMS (root-mean-square) error of
compensation knowledge from the off-line, non-linear each joint compensation is below 0.1 °, which is the
optimisation to NN representations. The target of NN resolution of the robot joint transducers.
learning is a non-linear mapping between joint com- The implementation of the pi-sigma net is economi-
pensations and robot configurations (for a revolute- cal and efficient. The total adjustable weights used in
type Puma robot, the joint configuration is represented the inverse compensation net are 6 x 4 2 = 2 5 2 . For
by six joint angles, q = [oil and the joint compensa- parallel computation, only 1 trigonometric function
tions are 60i, (i= 1,2,...6). The first attempt at using call, 48 multiplications, and 42 additions are needed,
back-propagation learning networks experienced slow which is equivalent to about 100 floating-point addi-
learning and unsatisfactory learning accuracy, due to tions. Even when simulated on serial computers, the
the complex non-linear relationship between the joint NN inverse compensation requires only about 6 x 100 =
corrections and six-joint robot configurations. From the 600 floating-point addition-equivalent computations,
simplified analytic accuracy compensation models, 14'15 while one iteration of the N - R method requires 12
it can be seen that the compensation amounts are trigonometric function calls, 356 multiplications and
higher-order polynomials of sinusoidal functions of 268 additions, 17 which is equivalent to about 720
joint angles, with the polynomial coefficients being floating-point additions. For the inverse compensation
determined by the identified kinematic errors. problem, normally at least 2 iterations are needed for
Therefore, a network with a higher-order approxima- the N - R method to converge; hence a total compu-
tion capability will be desirable for this application. tation of 1440 floating-point additions are needed.
Ghosh and Shin x6 introduced a class of high-order As a rule of thumb, the larger the number of data
networks, the pi-sigma network. The pi-sigma points to be approximated, the larger the number of
network uses linear summing units in the hidden layer, adjustable connection weights that are required in the
and product units in the output layer, to incorporate network. A large number of network connection
the approximation capabilities of high-order networks weights implies a larger sized network. It is well-known
while greatly reducing network complexity. Therefore, that the training of a large-sized feedforward network is
the pi-sigma network has been employed here to exceedingly slow, and the residual training error is
construct a generic model to approximate inverse robot unacceptably large. Therefore, the feedforward
compensation. As shown in Fig. 3, a single pi-sigma NN-based calibration is only suitable for local calib-
network has been used for each compensation vector ration which has a relatively small number of training
component, with the same inputs of joint angles data points covering a small portion of robot work
encoded by sinusoidal functions. The product units space. Where a robotic application involves a large
without sigmoid functions are used in the output layer number of work points across the workspace (such as
so that the outputs are actually high-order polynomials path or trajectory control), a Hopfield continuous-
of sinusoidal functions of the joint angles. The order of valued NN architecture is appropriate to resolve the
the polynomials is equal to the unit number used in the inverse compensation problem. 18
88 X I A O L I N Z H O N G et al. : I N V E R S E R O B O T C A L I B R A T I O N

Joint 1 Compensation Learning Curve conditions of the network, which are determined by the
0.8 robot's nominal kinematic parameters and joint solu-
~" 0 . 7 - tions, the network can obtain global optimal solutions
in a few characteristic time constants of the neural
o 0.6- circuit, even in the robot configurations near singular-
0.5 .-J ity, where numerical approaches break down.
Hopfield and Tank 13 have shown that highly inter-
"~ 0.4 connected networks of simple analogue processors can
0.3 rapidly find local optimal solutions to difficult optimisa-
tion problems. Since joint compensations are only
o0 0.2 small perturbations around the nominal joint values,
the description below shows how the joint compensa-
o.1
tion problem can be rapidly solved given the initial
o.0 ! I I I conditions in the vicinity of the global optimums. In the
o lOO 200 300 400 500 residual error model (2), if the kinematic errors are
Epoches (X I0) zero and the controllable joint values, are variables,
then the linearized residual error e by perturbing the
controllable joint variables 6q around the nominal
Joint 2 Compensation Learning Curve values is:
0.35
e(6q) = Ax - J6q, (6)
0.30 where J is the Jacobian of the robot manipulator,
evaluated at the robot's nominal kinematic parameters,
"-" 0.25 and the joint values (k °, q0), Ax=f(k, qt°) give the
inaccuracy vector of the location of the robot's end-
N 0.20 effector predicated by the actual control model and the
nominal kinematic model.
0.15 The key to the application of Hopfield-type NNs is
the formulation of the network energy function. In this
O.lO ',-._._ application, the quadratic form of a robot's Cartesian
inaccuracy is constructed as a network energy function,
0.05 I I I I so that a decrease in the network's energy corresponds
0 100 200 300 400 500 to a decrease in the robot's positioning inaccuracy. It is
Epoches (X 10) desirable to have only small joint compensation values;
therefore a penalty term is added to the energy function
to ensure small outputs. The energy function for joint
Joint 3 Compensation Learning Curve
compensation is:
0.50
E = ½[e(Sq)] rQ[e(6q)] + ½6qrA6q, (7)

~o 0.40- ~ where A is a positive diagonal weight matrix for regula-


tion, and Q is a coefficient matrix defined as in (3).
~ 0.30-
Using the linear residual error model (6) in (7), and
expressing the network energy, in the standard form:
n m
~ 0.20-
ToSq,Sqj- EIjSqj+½ E Q,(Ax,)Z, (8)
i,j=l j=l i=l
~ 0.10- ~.,......~
where

0.00
0
I
100 200 300 400 500
i I I
T° = -
S=I
( Q'J~'J'J + ;~'6°)' d° =
{10if/-,
if i ~ej
Epoches (X 10)
Fig. 4. Learning curves for inverse compensation. where Qi is the i-th diagonal element of coefficient
matrix Q, 2i is the i-th diagonal element of coefficient
3.2. R e c u r r e n t H o p f i e l d N N a n d g l o b a l c o m p e n s a t i o n matrix A, and
In this section, the inverse compensation problem m

has been re-formulated such that a recurrent Hopfield


continuous-valued NN can be applied. Given the initial i=l
XIAOLIN ZHONG et al. : INVERSE ROBOT CALIBRATION 89

Table 3. Calibrationcompensationresults for a Puma robot (lengthin mm and anglesin degrees)


Before Kinematic Optimisation FeedforwardNN
compensation calibration compensation compensation
Position Orientation Position Orientation Position Orientation Position Orientation
Average 4.3707 2.5767 0.7095 1.0978 0.0021 0.1191 0.6474 0.4974
SD 0.8768 0.4075 0.4477 0.5145 0.0022 0.1033 0.3127 0.2828
Max 5.3814 3.2331 1.8724 2.2502 0.0119 0.4327 1.7311 1.1477

Tit and lj determine the network's connection weights well in the calibrated area. Three statistical measures
and input currents respectively, based on the nominal (average error, standard deviation and maximum devi-
kinematic model and parameters (Jacobian matrix). ation), are used to evaluate the robot calibration com-
The 6qj is the ]-th joint compensation, which corre- pensation results. The results of using kinematic calib-
sponds to the ]-th neuron state, n is the robot's DOF, ration, optimisation inverse compensation and
while m is the dimension of the robot's Cartesian space. NN-based inverse compensation are listed in Table 3,
The energy function gradient with respect to the i-th based on 100 randomly-chosen test data points from
neuron state can be obtained from (8): the whole data set. The compensated positions and
orientations are calculated using the compensated kine-
oe Ti,6qj + ~, (9) matic model, and were then compared with the data
O(6q,) = - collected.
From Table 3 it can be seen that the NN accuracy
compensation can achieve an accuracy improvement
The time evolution of the neuron states should follow
factor of about 10. The NN-based inverse compensa-
the opposite direction of the energy function gradient,
tion has more satisfactory results in terms of accuracy
so the neuron circuit dynamics equation results as:
and efficiency, compared with kinematic model-based
calibration. The optimisation compensation uses six
d(6q,) -[/-,li To6qi + I~ , (10) controllable joint variables to compensate for the
dt \j=l Cartesian error at each configuration; therefore it can
achieve a compensated accuracy of almost zero as long
where gi is the i-th diagonal element of the positive as the robot has enough DOF to move in each direction
diagonal coefficient matrix/z which is chosen to ensure in Cartesian space. The inverse compensation network
the stability and the convergence speed of the circuit. stores and interpolates the joint corrections from the
Given the initial condition of the neuron states (6qi -- O, off-line optimisation procedure, and these can then be
i = 1, 2, . . . , n), the above differential equation (10) used for on-line implementation of inverse compensa-
determines the neuron state trajectories, and hence the tion. Figure 5 shows the improvements in position and
joint compensation amounts (the stable states of the orientation accuracy after using the NN inverse com-
neurons). pensation (sorted in ascending order for 100 randomly
From (9) and (10), and using the chain rule of the chosen test points), compared with the results of the
derivative, the time derivative of the energy function is optimisation approach. Not surprisingly, the NN
obtained: inverse compensation is less accurate than optimisation
compensation, due to the residual errors of the NN
learning.
dE -/.~i To6q~+ (11)
Table 4 lists the experimental evaluation results of
dt i=1 -j=l
joint compensations based on 12 test points across the
calibrated area. The positioning errors (expressed in x,
which is always non-positive, implying that the network
y, z components) before compensation are obtained by
dynamics always tends to minimise the network energy.
measuring the positions of the robot's end-effector,
achieved by controlling the joint angles as recom-
4. COMPENSATION RESULTS AND mended by the robot controller. The positioning errors
EXPERIMENTAL EVALUATIONS after compensation are obtained by measuring the end-
effector positions achieved by controlling the joint
angles, updated by different compensation approaches.
4.1. Local calibration by feedforward NN The average position error (in length) decreased from
The power of feedforward NNs is due largely to their 4.20 mm before compensation, to 1.52 mm after kine-
generalisation ability. Only 144 data points are ran- matic calibration, to 1.25 mm after optimisation com-
domly chosen from the collected data set of 288 points pensation and to 1.57 mm after the NN compensation.
for NN training. The trained network can generalise The improvements in accuracy indicated by the experi-
90 XIAOLIN ZHONG et al. : INVERSE ROBOT CALIBRATION

5 _ m,,,t~t[,l~t u'-' [] Before [] Before


Compen-
sation ~o sation
-- O

o After the
m 3
q NN Corn- = NN Com-
pensation .~ pensation

After Opt.
1
Compen-
sation
0
0 25 50 75 100 125 50 25 75 100 125
Test Points Test Points
Fig. 5. Accuracy improvement with inverse calibration.

mental results are less significant, compared with the g r a m m e d to execute a spiral trajectory specified by the
i m p r o v e m e n t shown by the simulation results. This can homogenous transformation in Cartesian space:
be partially explained by the fact that the measure-
ments for calibration and the measurements for evalu- T= [nsa
ation were made at different times, and system error
may therefore have occurred in the measuring set-up.
where
The final residual errors for the evaluation points are
expected to be less if the joint compensations are n = ( - sin q~, cos q~, O)r,
obtained using on-line location error measurements
s=a×n
during evaluation. Of course, robot repeatability
(which is limited by the robot controller) also contri- a = [cos(~/4)cos(~), cos(~/4)sin(~), sin (~/4)) T
buted to the final residual error. However, experimen-
p = [ - 45 + 20 sin (~), 4.5 + 20 cos (q~), - 26 + 5xt] r
tal results show that the NN approach can achieve the
same level of i m p r o v e m e n t in accuracy as that achieved and
by numerical optimisation approaches, which are com-
putationally more expensive. cp(t) = (x/4)t, 0~<t<5
position in cm.
4.2. Global compensation by Hopfield network The task points were specified at discrete points
To exemplify the efficiency and robustness of the along the trajectory with a cycle time of 25 ms. The
Hopfield neural-net compensation scheme for robot cycle time is demanding in terms of most of the numeri-
global inverse compensation, its trajectory compensa- cal algorithms for on-line compensation. However, this
tion, and the compensation near a robot singularity, are time is sufficient for the neural circuit to converge. The
c o m p a r e d with the numerical compensation algorithm settling time of the neural circuit is in the order of ms,
( N - R ) . Due to the difficulty of taking actual measure- given the coefficients of Q as an identity matrix, A
ments of the robot end-effector across the large volume equal to zero in equation (7),/~i = 10 6, and the initial
of the workspace using a co-ordinate measuring conditions of neuron states 6qi = 0, i = 1, 2 . . . . n in the
machine, the end-effector location errors are computed neuron dynamics equation (10). Figure 6 is the posi-
using the kinematic model of the robot based on the tioning error (in length) caused by kinematic errors
identified kinematic parameters (Table 2). before and after one iteration of NN compensation
The end-effector of the P U M A robot was pro- (one of the eight robot joint configurations-RIGHT

Table 4. Experimental evaluation of compensation results (in mm)


Before Kinematic Optimisation Feedforward NN
compensation calibration compensation compensation
Position error in length Position error in length Position error in length Position error in length
Average error 4.1994 1.5196 1.2504 1.5776
SD 1.0527 0.3894 0.1416 0.2972
Max 5.1482 2.0819 1.4631 1.9678
X I A O L I N Z H O N G et al. : I N V E R S E R O B O T C A L I B R A T I O N 91

2.5 1"3

Compen-
4 ---
03 2
sation
?b
Before ~1.5 , , ......... < > ........

Compen- : ~ After
sation
......... ~). ........
=
. iO
I t
, g' tt ,
It t ,i
Compen-
t
After the e~ / ~ : ,~ sation
NN Corn- ~0.5 m : :.
pensation ~~ x'.~ After
o ?"-° , 0 - t t i Compen-
0 1 2 3 4 5 -I -0.5 0 0.5 I sation
Time in Trajectory (Seconds)
Joint 5 Values (RAD)
Fig. 6. Positioning error along the trajectory.
Fig. 8. Orientation compensationnear robot singulurity.

and A B O V E arm, and UP wrist-is selected), which


shows a significant improvement in accuracy along the 3
trajectory. ~-

:!
.... i - i r a
Next, the compensation near a robot singularity is 2.5 - The NN
examined. Let the robot joint configuration be 0 = [3d2, Joint
-:r/2, Jr/4, ~r/4, 05, 0] and allow only joint 5 to rotate: qg 2- Compen-
-~r/4 ~<05 ~<~d4. The robot will be in its wrist-singular sation
configuration when joint 5 is in the neighbourhood of = 1.5 -
zero. The P U M A wrist-singular configurations are "~
commonly used for some typical assembly operations, i 1- The N-R
Therefore robot singularity problems for certain types / ',, Joint
of robots cannot simply be avoided by avoiding the use r~ 0.5 - o Compen-
of singular configurations during the motion-planning .~ sation
process. 0
Figures 7 and 8 compare the effects of position and -1 -0.5 0 0.5
orientation compensation respectively near the robot Joint 5 Values (RAD)
singularity after one iteration compensation using the Fig. 9. Joint compensation amount near singularity.
NN and N - R methods. Figure 7 shows that the NN
compensation is stable near the robot singularity, while tageous to the NN method, since more often than not, a
the widely used numerical algorithm (N-R) fails to robot's absolute positional accuracy is more critical
converge. Figure 8 shows that both the N - R and NN than its orientation accuracy. In a case where more
methods can converge, but the N - R method has a accurate orientation is required, the coefficient matrix
smaller residual orientation error than the NN method Q in the network energy function (7) can be used to
after one iteration compensation. This is not disadvan- adjust the balance weight between the residual position
error and the orientation error.
r')m The joint compensations obtained by the NN and
Before numerical approaches are also displayed in Fig. 9
~ 1 IIFLII1 Compen- (length in radians). The joint compensations of the
sation
N - R method are too large to be feasible near singular-
ity, while the NN joint compensations using the NN
After
method are reasonably small for practical implemen-
2 tation. The large amount of joint compensation needed
the N-R
Compen- to compensate for small errors in workspace using the
~2 sation N - R method is highly undesirable, since the robot's
.......... C)........
joint limits might be exceeded, and the robot might
After collide with fixtures or other objects in the workspace
the NN during the joint-adjustment movements.
I -I I Compen- The recent work by Everett et a l ) 9 has highlighted
-1 -0.5 0 0.5 sation the importance of automatic singularity avoidance
Joint 5 Value (RAD) during the joint-compensation process. Compared with
Fig. 7. Position compensation near robot singularity. the approach used by Everett et a l ) 9 where the joint-
XIAOLIN ZHONG et al. : INVERSE ROBOT CALIBRATION 93

AUTHORS' BIOGRAPHIES
Xiao-Lin Zhong received a B.Sc. degree in Mechanical Engineering in 1986, and an M.Sc. degree in Robotics and Automation
in 1989 from Huazhong University of Science and Technology (HUST), Wuhan, China. He was a major participant in the
Wuhan-I autonomous mobile robot system project, and was mainly responsible for the development of the microprocessor-
based control system and the integration of multi-sensor systems for robot navigation. He joined Shenzhen Sciences &
Industrial Park Corporation, Shenzhen, China, as an R&D engineer in 1989. He is currently a Ph.D. candidate in the
Department of Mechanical, Manufacturing and Software Engineering, Napier University, Edinburgh, U.K. His research
interests include autonomous robot calibration, motion planning and control, and artificial neural networks and their
application in intelligent manufacturing systems.
John M. Lewis received a B.Sc. degree in Engineering Science from Exeter University, U.K., in 1982. He joined Westland
Helicopters Ltd as a systems engineer, working on pilot decision support systems for rotor craft, and in 1984 the company
supported him through a Ph.D. programme in artificial intelligence at Edinburgh University. In 1987 he joined the
Department of Mechanical, Manufacturing and Software Engineering at Napier University, Edinburgh, where he is currently
a senior lecturer in Software Engineering. His research interests include autonomous robot calibration, real-time job
scheduling for flexible assembly systems, and distributed requirements gathering techniques.
Francis L. N-Ns~gy received a Ph.D. from the University of Salford, U.K. He came to England in 1956, and worked for
Epsylon Ltd and Vectron Research Laboratories. In 1964 he joined the Department of Electrical Engineering of Salford
University, where he taught postgraduate courses on servomechanisms and advanced robot design. He later became a
Professor at the IT-Institute of Salford University. He has published three books on robotics and solid-state control devices,
and more than 100 papers in automation and control applications. He holds a number of patents, and acts as a consultant in
industrial control and robotics. In 1993 he helped initiate the European Association for Research of Leg Robots (EARLR).
He is a Chartered Engineer (U.K.), a Fellow of the IEE and the IMA (U.K.) and a Senior Member of the IEEE.

You might also like