You are on page 1of 14

Robot Dynamic

Calibration: Optimal
Excitation Trajectories
and Experimental
Parameter Estimation
䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇 䢇

G. Calafiore, M. Indri,* and B. Bona


Dipartimento di Automatica e Informatica
Politecnico di Torino
Corso Duca degli Abruzzi, 24-10129 Torino, Italy
e-mail: indri@polito.it

Received 17 April 1999; revised 13 October 2000

Advanced robot control schemes require an accurate knowledge of the dynamic


parameters of the manipulator. This article examines various issues related to robot
dynamic calibration, from generation of optimal excitation trajectories to data acquisi-
tion and filtering, and experimental inertial and friction parameter estimation. In
particular, a new method is developed for the determination of optimal joint trajecto-
ries for the calibration experiment, which is based on evolutionary optimization
techniques. A genetic algorithm is used to determine excitation trajectories that
minimize either the condition number of the regression matrix or the logarithmic
determinant of the Fisher information matrix. All the calibration steps have been
carried out on a SCARA two-link planar manipulator, and the experimental results are
discussed. 䊚 2001 John Wiley & Sons, Inc.

1. INTRODUCTION dynamic parameters can be achieved only by means


of a proper calibration procedure, which estimates
In robotics, the implementation of advanced control their values from input and output data provided
algorithms that take into account the manipulator by sensors and internal measurement devices, or
nonlinearities Žlike the inverse dynamics method. reconstructed via software.
requires a good knowledge of the dynamic model of Two different calibration procedures are com-
the robot. While the structure of the motion differ- monly used to estimate the dynamic parameters of
ential equations of a manipulator is well known, the a manipulator: the first one is based on the recur-
correct values of the involved parameters are not sive formulation of the Newton᎐Euler motion equa-
always available, because they are often not directly tions1,2 the second one is based on the Lagrangian
measurable. In particular, the determination of the energy approach.3 Both approaches lead to dynamic
equations that are linear in a minimally reduced set
To whom correspondence should be addressed. of identifiable parameters Žthe base parameter set.,

Journal of Robotic Systems 18(2), 55᎐68 (2001)


䊚 2001 by John Wiley & Sons, Inc.
56 䢇
Journal of Robotic Systems—2001

which can be determined by applying the reduction of possible trajectories, thus reducing the original
procedure proposed by Gautier and Khalil.4 The infinite-dimensional problem to a more tractable
preliminary aspects related to manipulator model- finitely parameterized optimization problem. This
ing for dynamic calibration are recalled in Section 2. is, of course, done at the expense that the solution
Estimation of the identifiable parameters is usu- will be optimal in the selected class, i.e., suboptimal
ally achieved by application of a least-squares algo- with respect to the original problem. However, what
rithm to the motion or the energy equations of the is of interest in practice is to determine a ‘‘good’’
robot. The validity of the provided estimate strongly Žalbeit not globally optimal. excitation trajectory that
depends on the quality of the available input᎐out- leads to an informative identification experiment. In
put signals and on the choice of the imposed refer- this respect, the above drawback does not seem to
ence trajectories, which must properly ‘‘excite’’ the be critical in an experimental or industrial context,
robot dynamics. The quality of the used input᎐out- as long as the family of allowable trajectories is
put signals can be enhanced by using filters andror chosen to be ‘‘rich enough,’’ according to engineer-
observers Žsee, e.g., refs. 5 and 29.. ing judgment and experimental trials. In this article,
The problem of finding exciting trajectories for in particular, we consider the class of harmonic
the identification has been discussed in several pa- functions with a fixed, finite number of harmonic
pers. The work presented in Armstrong7 is among terms. The introduced parameterization takes into
the oldest and it proposed a functional approach, in account the frequency band constraints on the input
which the calculus of variations is used to solve a excitation, and the number of decision parameters
nonlinear path optimization problem: An optimal of the resulting optimization problem is indepen-
acceleration sequence is determined, and then ve- dent of the number of time samples along the trajec-
locities and positions are computed by numerical tory. Harmonic parameterization also was used in
integration. The weak points of such an approach this context by Swevers et al.11
are the difficulty of including trajectory feasibility The trajectory parameterization reduces the
constraints in the optimization procedure and high problem to a nonlinear parametric optimization that
computational burden due to the large number of is solved here using a genetic algorithm ŽGA.. The
decision variables required when the method is convergence of the GAs to the global optimum is
discretized. not, in general, guaranteed, but in practice such
The methods proposed in refs. 8 and 9 are both algorithms have proved to be particularly efficient
based on the determination of a sequence of optimal and robust in the global search of solutions of non-
joint position᎐velocity couples. A continuous linear and multimodal optimization problems.12,13
smooth ‘‘optimal’’ trajectory is then found by inter- In robotics, genetic algorithms have been used, for
polating them via fixed order polynomials; trajec- instance, for motion planning of mobile manipula-
tory constraints are only checked at the end. The tors14 and for estimation of kinematic parameters.15
number of decision variables and, consequently, the In our case, the use of GAs in conjunction with the
computational effort in this case are dependent on introduced trajectory parameterization allows us to
the number of samples along the trajectory: Gautier take into account the physical constraints on joint
and Khalil9 reported numerical intractability of the positions, velocities, and accelerations directly in
optimization problem in their test cases for a num- the decoding phase of the genotype of the individu-
ber of samples greater than 50. als, i.e., of the strings containing the binary codes of
An alternative solution to the above-described the decision variables, so that the resulting trajecto-
methods, which are gradient based Žand thus re- ries are certainly feasible.
quire time-consuming computations to exactly de- In the experimental part of this article, the com-
termine or estimate the gradient of the objective plete calibration procedure is performed on a
function., is proposed in ref. 10, where a random SCARA two-link manipulator produced by IMI ŽIn-
search approach is used to determine the set of tegrated Motions Inc., Berkeley, CA., starting from
optimal points to be interpolated. trajectories generation according to the proposed
The method proposed in this article is based on method, through issues related to data acquisition
the parameterization of the class of joint position and filtering, to the estimation of the inertial and
time functions. The key idea underlying this method friction parameters of the manipulator and model
is to restrict attention to some parameterized family validation.
Calafiore, Indri, and Bona: Robotic Dynamic Calibration 䢇
57

2. ROBOT CALIBRATION MODEL to Riy1 , m i is the mass of link i, s i is the position


vector of the center of mass of link i, and ⌫i is the
Consider an n degrees-of-freedom Ždof. manipula- inertia tensor with respect to frame Ri . For nota-
tor, having only revolute joints for the sake of sim- tional convenience, vectors with subscript i in
plicity Žthe subsequent developments can be easily Eqs. Ž1. and Ž2. are represented in the reference
extended to the most general case.. Let the kinemat- frame Ri .
ics of the robot be described by introducing De- The friction torques ␶ f i can be expressed accord-
navit᎐Hartenberg notation to define local frames ing to one of several models proposed in the litera-
attached to the links. According to such notation, ture, taking into account the different friction
frame Riy1 , i s 1, . . . , n, is the reference frame lo- components, e.g., stiction, Coulomb, and viscous
cated in correspondence to joint i, with the z axis friction.16 In general, the friction torque vector ␶ f
coinciding with the rotational axis of the respective can be written as
joint Ž R0 is the inertial frame., whereas Rn is the
frame attached to the end effector. Matrix R iy1 i is ␶ f s F Ž q, q
˙. ␪ f , Ž3.
the rotation matrix from frame Riy1 to frame Ri . In
addition, let q be the joint position vector, where where the expression of the function FŽq, q˙. and the
each coordinate qi represents the angular position of choice of the parameter vector ␪ f g ᑬ n f depend on
joint i, defined according to Denavit᎐Hartenberg the considered friction model. Note that if only
rules. Coulomb and viscous friction are included in the
The motion equations of the manipulator can be
˙. is a function of velocity q
model, then FŽq, q ˙ only.
determined following the recursive Newton᎐Euler By introducing vector ␶ , containing the n
formulation, by using two transformation laws: the torques applied to the joints, Eqs. Ž1. and Ž2. can be
first one is represented by the forward transforma- rearranged in the form
tion law of the robot kinematics from the base to the
end effector, while the second one is given by the
␶ s D Ž q, q,
˙ q¨ . ␪m , Ž4.
backward computation of the joint torques from the
end effector to the base. For a manipulator that has
which is linear with respect to the vector ␪ m g ᑬ m
only revolute joints, the recursive Newton᎐Euler
which contains all the inertial parameters of the
equations are Ždependence on time is omitted.
manipulator, i.e., the masses m i , the inertia mo-
ments Žsix for each link., and the first-order mo-
␻ iq1 s R iq1
i
w ␻ i q z i q˙iq1 x , Ž 1a . ments Žthree for each link. of the robot links 3,17 and

˙ iq1 s R iq1
i
w␻
˙ i q z i q¨iq1 q ␻ i = Žz 1 q˙iq1 .x , Ž 1b . the n f friction parameters. DŽq, q, ˙q¨., which is a
nonlinear function of joint position, velocity, and
˙viq1 s R iq1
i ˙vi q ␻˙ iq1 = p iq1 q ␻ iq1 = Ž ␻ iq1 = p iq1 . , acceleration vectors, is then an n = m matrix with
Ž 1c. m s 10 n q n f .
It is well known that only some of the inertial
vi q ␻
f i s R iiq1 f iq1 q m i ˙ ˙i = m i s i q ␻i = Ž ␻i = m i s i . , parameters of the robot really affect its dynamics
and are then identifiable by calibration procedures.
Ž 2a .
It is possible to determine the set of minimum number
of inertial parameters, i.e., the base parameter set con-
n i s R iiq1 n iq1 q p i = f i q ⌫i ␻
˙i q ␻i taining only the p identifiable dynamic parameters
= Ž ⌫i ␻ i . q m i s i = ˙
vi , Ž 2b . collected in ␪ p g ᑬ p , by means of the reduction
procedure proposed by Gautier and Khalil,4 based
␶ i s nTi R iiy1 z iy1 q ␶ f i , Ž 2c. on the energy model of the robot. Equation Ž4. can
be then rewritten as
where ␻ i is the angular velocity of joint i, vi is the
linear velocity of the origin of frame Ri , f i and n i ␶ s D Ž q, q,
˙ q¨ . ␪, Ž5.
are, respectively, the force and the moment applied
to link i by link i y 1, ␶ i is the torque applied to in which ␪ [ w ␪ Tp ␪ Tf x T g ᑬ n p , with n p s p q n f , and
joint i, ␶ f i is the friction torque acting on joint i, z i ˙q
matrix DŽq, q, ¨. is properly defined. Relation Ž5.,
denotes the z axis of frame Ri expressed in its own which is linear with respect to ␪, can be used for the
frame Ži.e., z i s w 0 0 1x T for all i ., p i represents estimation of ␪ by collecting the values of ␶ , q, q, ˙
the position of the origin of frame Ri with respect and q¨ Žby measurements andror reconstructed by
58 䢇
Journal of Robotic Systems—2001

observers. at n m time instants Žwith n m n ) n p . dur- and the corresponding error covariance matrix is
ing the execution of a task, thus obtaining the equa- given by
tion
y1
P␪ s Ž Ry1 T y1 .
␪ qH R v H . Ž8.
y s H␪ q v Ž 6a.
The above formulas refer to the batch solution of
with y [ w ␶ Ž t 1 . ⭈⭈⭈ ␶ Ž t n m .x T and the least-squares ŽLS. problem for the accumulated
measurements y. In the experimental tests, the ac-
˙ Ž t1 . , q
D Žq Ž t1 . , q ¨ Ž t1 .. tual estimate will be computed using the following
.. recursive formulation of the LS algorithm Žsee ref.
H[ . , Ž 6b . 18.. Let H i g ᑬ 1, n p and yi g ᑬ represent the ith row
˙ Ž tn m . , q
D ŽqŽ tn m . , q ¨ Ž tn m . . of the regression matrix and the ith measurement,
respectively. Let ˆ ␪ i and P␪ , i be defined as the esti-
mate of the parameter vector ␪, given the measure-
where v is assumed to be the zero mean measure- ments up to i, and the relative covariance, respec-
ment noise vector, uncorrelated from ␪, and H is tively. The estimate can then be recursively updated
the data matrix, assumed to be deterministic Žthe using the recursions
effects of uncertainty on the data matrix H are
discussed in ref. 7.. The base parameter vector ␪ can
ˆ␪ iq1 s ˆ␪ i q K iq1 Ž yiq1 y H iq1ˆ␪ i . , ˆ␪ 0 s ␪,
be estimated from the regression equation Ž6a. us-
ing a least-squares algorithm as discussed in the y1
K iq1 s P␪ , i H Tiq1Ž R v q H iq1 P␪ , i H Tiq1 . ,
following subsection.
We note that the energy-based calibration ap- P␪ , iq1 s P␪ , i y K iq1 H iq1 P␪ , i , P␪ , 0 s R ␪ .
proach3,17 also leads to a standard least-squares
identification problem, which may be cast in the We recall that the solution obtained from the recur-
form Ž6a.. Therefore, all the subsequent develop- sive algorithm for i s n m coincides with the batch
ments can be applied equally to the energy-based solution, i.e., ˆ
␪n m s ˆ
␪; P␪ , n m s P␪ . The recursive ver-
calibration method. sion is, therefore, a computationally efficient way to
solve Ž7., especially when a large number of mea-
surements is to be processed.
2.1. Least-Squares Parameter Estimation
If a priori knowledge is neglected, then R ␪ s ⬁,
We recall the regression equation Ž6a., and it follows from Ž8. that the ‘‘size’’ of the estima-
tion error depends on the normal equations matrix
y s H␪ q v, ⌸ s H T Ry1v H. A frequently used scalar measurer
on ⌸ is given by Jd s log detŽ ⌸ .. Maximization of
where y g ᑬ n m is the vector of measurements, ␪ g Jd with respect to the input excitation is referred to
ᑬ n p is the parameter vector to be identified, H g as D optimality,19 and it is desirable in order to get
ᑬ n m , n p is the regression matrix Žassumed to be de- estimates with minimal uncertainty bounds. An-
terministic., and v g ᑬ n m is a zero mean random other significant index is derived from the condition
vector representing measurement errors. Vector v is number of ⌸: Jk s condŽ ⌸ .. A small Jk is desirable
assumed to be uncorrelated from ␪, and the auto- to minimize the bias of the estimate due to unmod-
correlation matrix R v ) 0 of v is assumed to be eled dynamics errors Žwhich are correlated with the
known. A priori information about the unknown regressors., to enhance the convergence rate of the
parameter vector is also included in the problem via algorithm, and to minimize the sensitivity of the
the mean value ␪ of ␪ Žfor instance, ␪ may be taken solution to variations of the measurements vector y
as the vector of nominal parameters. and the ‘‘confi- Žsee refs. 19 and 20..
dence’’ on the nominal parameters, expressed by a
given covariance matrix R ␪ ) 0. It is then well
known18 that the linear least-mean-squares estima- 3. TRAJECTORY OPTIMIZATION
tor of ␪, given y, is
The previously discussed optimality indices depend
y1 on the kinematic structure of the manipulator, which
ˆ␪ s ␪ q ŽRy1 T y1 .
␪ qH R v H H T Ry1
v
Ž y y H␪ . , Ž 7 . is fixed for a given type of manipulator, and on the
Calafiore, Indri, and Bona: Robotic Dynamic Calibration 䢇
59

time history of the joint reference positions, veloci- 3.1. Parameterization of the Joints Trajectories
ties, and accelerations. Denoting with Q a class of
Though the method outlined in this article is con-
continuous functions of the time variable t g ᑬ,
ceptually valid for any parametric family Q Žp., we
defined over the interval T s w t min , t max x , the prob-
treat in detail the class of harmonic functions with a
lem of determining the most ‘‘exciting’’ reference
predefined and fixed number W of harmonic terms.
trajectory q*Ž t . with respect to the generic index J
This class of trajectories was also suggested in ref.
can be formulated as
21 and, independently, in ref. 11.
q* Ž t . s arg min J Ž q Ž t .. Ž 9a . Given W Žtypically a small integer, W s 3, 4, . . . .,
the reference trajectory for the jth joint is assumed
subject to to be
W
qi Ž t . g Q ᭙i, Ž 9b .
qj Ž t . s Ý a j, k sin Ž ␻ j, k t . , Ž 10 .
< qi Ž t . < F qi , max ᭙i, t, Ž 9c . ks1

< q˙i Ž t . < F vi , max ᭙i, t, Ž 9d. where a j, k and ␻ j, k , j s 1, . . . , n, k s 1, . . . , W, are


< q¨i Ž t . < F ␣ i , max now the decision variables of the optimization prob-
᭙i, t, Ž 9e .
lem Ž9.. The number of decision variables n v s 2Wn
where qi, max , vi, max , and ␣ i, max represent physical is independent of the number of time samples along
constraints on the ith joint position, velocity, and the trajectory. As
acceleration, respectively. The problem Ž9. is a non-
W W
linear functional optimization problem, for which < qj Ž t . < s
different solutions have been presented in literature,
Ý a j, k sin Ž ␻ j, k t . F Ý < a j, k < , Ž 11 .
ks1 ks1
as discussed in section 1.
The method that we propose herein is based on the constraint Ž9c. may be conservatively substi-
a parameterization of the class Q of joint position tuted by
time functions. Formally, we consider that the class
Q is of the form q j, max
< a j, k < F ᭙ j, k.
W
Q s Q Žp. , pgP,
Similarly, we obtain that
where p is a vector of real-valued parameters and
P represents the set of physical constraints on the W q j, max W
values of the parameters. The number of decision < q˙j Ž t . < s Ý a j, k ␻ j, k cosŽ ␻ j, k t . F Ý < ␻ j, k <
parameters is, therefore, independent of the number ks1 W ks1
of time samples along the trajectory.
The two most popular optimality criteria, among and the constraint Ž9d. is conservatively substituted
the various ones proposed in the literature Žsee, e.g., by
refs. 7, 9, and 11. are considered: the condition vj, max
number Jk of the regression matrix, as a measure of < ␻ j, k < F ᭙ j, k.
the disturbance influence on the parameter esti- q j, max
mates and the scalar measure Žlog detŽ⭈.. of the
Fisher information matrix Ži.e., the Jd index. to guar- Also
antee minimal uncertainty of the parameter esti-
W q j, max W
mates.
< q¨j Ž t . < s Ý a j, k ␻ j,2 k sin Ž ␻ j, k t . F Ý < ␻ j,2 k <
The resulting finite-dimensional optimization W
ks1 ks1
problem is then solved using the paradigm of ge-
netic evolution. The genetic algorithm used in the and the constraint Ž9e. is conservatively substituted
solution is objective Žfitness. function based and by
does not require the computation of gradients and
hessians. Also, the GA is oriented toward the identi- ␣ j, max
fication of the global optimum, as is discussed in
some detail in the following subsections.
< ␻ j, k < F
( q j, max
᭙ j, k.
60 䢇
Journal of Robotic Systems—2001

The optimization problem Ž9. specializes now to The constraints Ž12c. and Ž12d. are directly taken
into account in the decoding phase of the genotype
minimize J Ž q Ž t .. Ž 12a. X. Prior to evaluation of the fitness function, each
a j, k , ␻ j, k ; ᭙ j, k
element of X is decoded to its real value in the
manner
subject, ᭙ j, k, to the constraints
w A j, k x 1
qj Ž t . g Q , a j, k s 10
y ᭙ j, k ,
q j, max
Ž 12b .
ž 2 n Žj,a.k
y1 2 / 2 a j, max Ž 13.

< a j, k < F a j, max s , Ž 12c. w ⍀ j, k x


W ␻ j, k s Ž a.
10
␻ j, max ᭙ j, k , Ž 14 .
2 n j, k y 1
vj, max ␣ j, max
␻ j, k F ␻ j, max s min
½ ( 5
q j, max
,
q j, max
. Ž 12d.
where w A j, k x 10 and w ⍀ j, k x 10 are the decimal values
of the binary integers A j, k and ⍀ j, k . The bounds on
the decision variables are, therefore, implicitly in-
cluded in the decoding step, so that the resulting
3.2. GA Coding
problem is unconstrained in the binary string X.
The optimization problem Ž12. is solved using a GA The GA has been implemented in a MATLAB pack-
with binary coding.12 In the language of genetic age developed by the authors and is available on
programming, each candidate solution is repre- request.
sented by a binary string of n b digits which is
referred to as an individual. The GA works with a
population of Np individuals and emulates the 4. APPLICATION TO A PLANAR
paradigm of natural selection and evolution. At MANIPULATOR
each generation, some members of the population
are selected for reproduction into the next genera- The effectiveness of the method is validated by
tion. The choice of the individuals to be reproduced experimental tests for the dynamic calibration of the
is guided by the fitness value of the individuals and SCARA two-link planar manipulator, which is pro-
by a random component. The reproduction step duced by IMI and is shown in Figure 1. The consid-
takes place by emulating the genetic operators of ered manipulator has two revolute joints equipped
crossover and mutation on the genotypes Žthe bit with brushless Ždirect-drive. motors produced by
strings. of the individuals. The evolution from one NSK ŽNippon Seiko K. K., Tokyo, Japan., incorporat-
generation to the next is very likely to enhance the ing resolvers for position measurements. The con-
average and best fitness of the individuals in the trol unit of the robot is constituted by a Pentium-90
population. After a certain number of generations, PC with a TMS320C30 Digital Signal Processing
the GA converges to an individual which is the best ŽDSP. board, and the control algorithms are imple-
suited for the given fitness function. The conver- mented in C. The joint coordinates are defined ac-
gence of the GA to the global optimum is not, in cording to Denavit᎐Hartenberg notation and col-
general, guaranteed, but in practice the GA has lected in vector q [ w q1 q2 x T, where qi represents
proved to be extremely efficient in solving nonlinear the angular position of joint i. The command torque
and multimodal optimization problems.12,13 The GA vector is defined as ␶ [ w ␶ 1 ␶ 2 x T, where ␶ i is the
turns out to be particularly efficient and robust in torque applied to joint i, and the lengths of the links
the global search of solutions, while usual gradient- are, respectively, given by l 1 s 0.359 m and l 2 s
based methods are efficient in the local solution 0.24 m.
search.
In the problem at hand, each decision variable
4.1. Dynamic Model of the Planar Manipulator
a j, k and ␻ j, k is coded as a binary integer A j, k and
⍀ j, k of nŽj,a.k and nŽj,␻k. digits, respectively, and an The application of the reduction procedure devel-
individual is represented by a binary string X ob- oped by Gautier and Khalil 4 leads to a base param-
tained by connecting all the binary strings head eter set constituted by four inertial parameters given
to tail relative to the decision variables: X s by the inertia moments of the links with respect to
w A1, 1 , . . . , A1, W , A 2, 1 , . . . , A 2, W , . . . , A n, 1 , . . . , A n, W , the z 0 axis Ži.e., the axis perpendicular to the motion
⍀ 1, 1 , . . . , ⍀ 1, W , ⍀ 2, 1 , . . . , ⍀ 2, W , . . . , ⍀ n, 1 , . . . , ⍀ n, W x . plane. and the first-order moments m 2 s2 x , m 2 s2 y of
Calafiore, Indri, and Bona: Robotic Dynamic Calibration 䢇
61

Figure 1. Photograph and schematic model of the IMI two-link manipulator.

the second link. The vector ␪ p of the identifiable model is expressed as in Ž5., where
inertial parameters is then given by
D 1, 1 s q¨1 ,

␪ p s ⌫1 z q m 2 l 12 m 2 s2 x m 2 s2 y ⌫2 z
T
. D 1, 2 s l 1Ž c 2 Ž 2 q¨1 q q¨2 . y s2 q˙2 Ž 2 q˙1 q q˙2 .. ,
D 1, 3 s l 1Ž ys2 Ž 2 q¨1 q q¨2 . y c 2 q˙2 Ž 2 q˙1 q q˙2 .. ,
Due to the small number of identifiable parame-
D 1, 4 s q¨1 q q¨2 ,
ters for our 2 dof robot, no further reduction of the
parameter vector is needed, while an approximate, D 1, 5 s sgn Ž q˙1 . ,
simplified model Žwhich neglects, if possible, the
effects of some of the identifiable parameters. could D 1, 6 s q˙1 ,
be usefully employed for greater manipulators, as D 1, 7 s D 1, 8 s 0,
suggested in ref. 22. Ž 16 .
D 2, 1 s 0,
In the considered case, only Coulomb and vis-
cous friction are modeled, under the assumption D 2, 2 s l 1Ž c 2 q¨1 q s2 q˙12 . ,
that other components Že.g., hysteresis effects
andror stiction. can be considered as negligible. D 2, 3 s l 1Ž ys2 q¨1 q c 2 q˙12 . ,
The friction torque acting on each joint is then D 2, 4 s q¨1 q q¨2 ,
described as
D 2, 5 s D 2, 6 s 0,
␶ f , i Ž q˙i . s ␴s, i sgn Ž q˙i . q ␴v , i q˙i , Ž 15 . D 2, 7 s sgn Ž q˙2 . ,
D 2, 8 s q̇2
where the parameters ␴s, i and ␴v, i represent
Coulomb dynamic friction and the viscous friction with si [ sin qi and c i [ cos qi .
coefficient, respectively. Note that this model can
correctly describe friction only at ‘‘sufficiently high’’
4.2. Robot Control and Physical Constraints
velocities; otherwise, a specified model for stiction
must be introduced. According to Ž15., the friction The control of the two-link manipulator is per-
parameters of the robot can be collected in a vector formed by an independent joint feedback control
␪ f g ᑬ 4 , which is defined as ␪ f [ w ␴s, 1 , ␴v, 1 , ␴s, 2 , law, which is implemented by inserting an observer
␴v, 2 x T. The complete parameter vector ␪ is then for the estimation of the joint velocities, because
given by ␪ [ w ␪ Tp ␪ Tf x T g ᑬ 8. Following the New- only position measurements are available. Unsatis-
ton᎐Euler approach, the planar robot dynamic factory results have been obtained by simply deriv-
62 䢇
Journal of Robotic Systems—2001

ing the joint velocities at discrete time from the 4.3. Data Acquisition and Processing
position measurements. The high-gain observer de-
The main problems to be solved for the acquisition
veloped in ref. 23 were chosen after a comparison
of the data that are required for the calibration
among different solutions proposed in literature
procedures can be summarized as follows:
Že.g., refs. 24᎐27. because it seems to offer, in our
case, a good compromise in terms of tracking error 1. The need to guarantee a good quality of the
and quality of the reconstructed signals Žwith refer- measured or observed signals to be used for
ence in particular to velocities, which must be used the parameter estimation.
both for the control and for the parameter identifica- 2. Computation of the signals not directly avail-
tion procedure.. The implemented controller᎐ob- able: joint accelerations and command
server scheme is then described by torques Žbecause they are not directly mea-
surable in our case..
1 3. Characterization of the torque measurement
˙ˆx 1 s ˆx 2 q H p Žq y ˆx 1 . , Ž 17a. errors to be used in the estimation algorithm.

1 The joint velocities reconstructed by the observer
˙x 2 s
ˆ H v Žq y ˆ
x1 . , Ž 17b . wŽ 17a. and Ž17b.x and directly used for the robot
␧ 2
control need to be filtered before the computation of
␶ s K p Žq d y q. q K d Žq
˙ d y ˆx 2 . , Ž 17c. the acceleration signal and the parameter estima-
tion. This filtering should be performed off-line by
means of a noncausal zero phase shift filter to avoid
where the observer state variables ˆ x 1 and ˆ
x 2 , respec- distortion in the dynamic regressor, as discussed in
tively, denote the dynamic estimates of the joint ref. 6. However, due to our hardware limitations
positions and velocities, q is the vector of the joint and conflicting interrupt problems during the mo-
positions measured by the resolvers incorporated in tion of the robot, it was not possible for us to
the motors, q d Ž t . and q ˙ d Ž t . are the assigned refer- acquire samples at the control rate ␻ c and then filter
ence position and velocity vectors, obtained by the and decimate the data off-line. Therefore, we pre-
optimization procedure, and ␶ is the vector of the ferred to filter the velocity signal on-line using the
applied torques in Ž5.. The observer gain matrices following discrete time filter ŽT s 2␲r␻ c s 1 ms.
H p s diagŽ h p, i . and H v s diagŽ h v, i . are chosen so that has cutoff frequency ␻ f , 14 radrs,
that the spectra of the characteristic polynomials
pi Ž ␭. s ␭2 q h p, i ␭ q h v, i , i s 1, 2, are in the open left ˙ fil Ž kT . s ␣1 ˆx 2 Ž kT . q ␣ 2 q
q ˙ fil ŽŽ k y 1. T .
half-plane, whereas ␧ is a small positive parameter.
The controller gain matrices K p and K d are diago- q ␣3 q
˙ fil ŽŽ k y 2. T . ,
nal, positive definite matrices that are selected to
satisfy the desired closed-loop specifications. In the with ␣ 2 s 1.95550858, ␣ 3 s y0.95599748, and ␣1 s 1
tests carried out, the controller᎐observer scheme is y ␣ 2 y ␣ 3 . Note that this filter introduces negligible
designed at continuous time to obtain a closed-loop phase shift for the reference signals used, which
system with a bandwidth of about 60 radrs and a have frequency content below ␻ma x . The joint accel-
maximum peakF 4 dB, and then implemented at erations are then computed on-line at the control
discrete time with sampling time T s 1 ms Žsample rate ␻ c from the filtered velocity by means of a
rate ␻ c s 2␲rT , 6280 radrs.. The selected observer central difference algorithm, as discussed in refs. 6
gains are H p s diagŽ7, 6.2., H v s diagŽ2, 4., and ␧ s and 28.
0.002. The torques are reconstructed by their expres-
The reference joint trajectories are assumed to sion Ž17c. and then filtered on-line at the control
belong to the class Q of harmonic functions defined rate, using the same discrete time filter employed
in Ž10., with the physical bounds Ž9c. ᎐ Ž9e. on the for the velocities. The filtered torque vector is then
angular positions, velocities, and accelerations given given by
by qma x s 1.5 rad, vmax s 8 radrs, and ␣ max s 5
radrs 2 for both joints. From Ž12d. it follows that the ␶ fil Ž kT . s ␣1␶ Ž kT . q ␣ 2␶ fil ŽŽ k y 1 . T .
frequency content of the reference signals is always
below ␻ma x , 1.825 radrs for all joints. q ␣ 3␶ fil ŽŽ k y 2 . T . .
Calafiore, Indri, and Bona: Robotic Dynamic Calibration 䢇
63

For each reference trajectory, the following proce- GA as a n b s 4 n v s 48 digits binary string X. No-
dure is used to estimate the mean-square error tice that the number n v of decision variables is
Žsample variance. of the torque measurements. The independent of the number of time samples n m
given trajectory is repeated by the manipulator for along the trajectory, while it is proportional to the
M s 20 times and n m data samples are collected considered number W of harmonic terms. The length
over each repetition of the trajectory. The sample of the genotypic string X is proportional to n v and
variance of the torque measurements for the ith to the selected resolution Žnumber of binary digits.
joint is computed as to which the variables are encoded. The fitness
function is, in this case, given by yJk or by Jd ,
nm M because the GA is traditionally a maximization al-
1 2
␴i 2 s Ý Ý Ž␶ i j Ž k . y ␶ i Ž k . . , gorithm.
n m Ž M y 1. ks1 js1

5.1. Estimation Using Jk Optimal Trajectories


where ␶ i j Ž k . represents the k th measurement of the
torque at joint i during the jth trajectory repetition We first consider the optimality criterion based on
and ␶ i Ž k . represents the average over the M repeti- the minimization of the condition number Jk Ž ⌸ ..
tions of the value of the ith joint torque at the k th The resulting three-harmonic trajectory is shown in
sample. Figure 2. The minimum value of Jk Ž Jk s 13.34. is
achieved by the GA after less than 20 generations,
as shown in Figure 3. The order of the computa-
5. EXPERIMENTAL PARAMETER ESTIMATION tional time is 5 min on an ‘‘old’’ Intel 486r66 PC.
The computed optimal trajectory is generated at
Optimal excitation trajectories are computed accord- 1 ms and passed to the manipulator that repeats it
ing to the two criteria previously discussed. The 20 times. The torque measurement variances are
reference trajectories so found are then executed by estimated over the 20 repetitions as ␴ 12 s 3.069 N 2 ⭈
the manipulator and a recursive LS algorithm is m 2 and ␴ 22 s 0.157 N 2 ⭈ m 2 . The LS algorithm de-
applied to the acquired data to estimate the inertial scribed in Section 2.1 is used for the off-line parame-
and friction parameters. ter estimation, collecting n m s 80 equally spaced
The LS normal equation matrix is, in this case, samples for each of the first six trajectory repeti-
given by ⌸ s H T Ry1 v H, where H is given by 6
Ž .
tions. The evolution of the estimates is shown in
and R v s diag ␴ 12 , ␴ 22 4 is the diagonal covariance
matrix relative to the torque measurements. Whereas
the estimated sample variances on the torque mea-
surements depend on the reference trajectory, it was
decided to compute the optimal reference trajectory
assuming R v s I and then to estimate the measure-
ment variances on the computed trajectories for the
application of the recursive parameter estimation
algorithm.
It was determined from simulations that param-
eter resolution Ži.e., the number of binary digits
used to encode each of the decision variable. is not
an issue in the problem at hand; the choice of
nŽj,a.k s nŽj,␻k. s 4 ᭙ j, k is satisfactory for our purposes.
Numerical simulations also showed that a number
of harmonics as low as W s 3 is sufficient to deter-
mine a good trajectory, because larger values of W
gave no significant improvement on the optimal
objective. The number of variables for the optimiza-
tion problem is, in this case, n v s 2Wn s 12, where
n s 2 is the number of joints of the manipulator and Figure 2. Optimal joint reference trajectories using index
each solution string Žgenotype. is represented by the Jk . Solid line, first joint; dashed line, second joint.
64 䢇
Journal of Robotic Systems—2001

Figure 5. Torque estimation residuals for the first Žtop.


Figure 3. GA evolution. Crosses represent fitness values and second joints Žbottom.; six data batches.
Žs yJk . of the best individual in the generation. The solid
line represents the average fitness over the population
members at each generation.
whereas the diagonal elements of the obtained esti-
mation covariance matrix are

␴␪ s w 0.0054; 0.0028; 0.0032; 0.0004; 0.0225; 0.0473;


Figure 4, and the final obtained estimates, which are 0.0011; 0.0025x .
T
consistent with the physical meaning of the parame-
ters, are given by The values obtained from the manufacturer data for
the first four parameters are
ˆ␪ s w 3.923; 0.808; 0.328; 0.141; 2.61; 7.343;
␪nom , 1 s 3.689 kg ⭈ m 2 ,
1.460; 0.787x ,
T
␪nom , 2 s 0.97 kg ⭈ m,
␪nom , 3 s 0 kg ⭈ m,
␪nom , 4 s 0.275 kg ⭈ m 2 ,

but we remark that the goal of the applied LS


method is to determine parameters that minimize
the torque residual on the basis of the assumed
dynamic and friction model, without regard to the
physical meaning of each single parameter.
The estimated parameters are used to compare
the reconstructed torques with the measured ones.
Figure 5 shows the torque estimation residuals,
while the measured and reconstructed torques are
compared in Figure 6. The root-mean-squared Žrms.
estimation residuals Ždifference between the mea-
sured and reconstructed torques. are computed over
the estimation set as ␧ 1 s 1.34 N ⭈ m and ␧ 2 s 0.24
N ⭈ m; the relative estimation errors, defined as the
ratio between the rms estimation error and the rms
Figure 4. Evolution of the recursive LS parameter esti- value of the measured torque, are ␧ r, 1 s 15% and
mates. ␧ r, 2 s 11.7%.
Calafiore, Indri, and Bona: Robotic Dynamic Calibration 䢇
65

Figure 7. Validation trajectory. Solid line, first joint;


Figure 6. Comparison of measured Ždashed. and recon-
dashed line, second joint.
structed Žsolid. torques: first Žtop. and second joints Žbot-
tom.; two data batches.

were obtained with the following values for the


Estimate Validation
diagonal elements of the covariance matrix:
The obtained estimate is tested against two valida-
tion data sets that differ from the data used for
␴␪ s w 0.0339; 0.0010; 0.0011; 0.0000; 1.0446; 0.5603;
estimation. As a first validation set, we consider
another batch of six repetitions of the optimal refer-
0.0035; 0.0019x .
T
ence trajectory. The rms values of the residuals are
in this case ␧ 1 s 1.38 N ⭈ m and ␧ 2 s 0.23 N ⭈ m, while
the relative rms errors are ␧ r, 1 s 16.5% and ␧ r, 2 s The rms torque reconstruction residuals on the esti-
12.2%. The second validation set is constructed upon mation data set are ␧ 1 s 2.98 N ⭈ m, ␧ 2 s 0.24 N ⭈ m,
measurements on six repetitions of the test trajec- ␧ r, 1 s 20.3%, and ␧ r, 2 s 9.3%. Figure 10 shows the
tory shown in Figure 7. The resulting residual errors
are ␧ 1 s 1.3 N ⭈ m, ␧ 2 s 0.31 N ⭈ m, ␧ r, 1 s 17.2%, and
␧ r, 2 s 14.6%, and the torque reconstruction residu-
als are shown in Figure 8.

5.2. Estimation Using Jd Optimal Trajectories


Computation of the optimal three-harmonic refer-
ence trajectory also was performed with respect to
the second optimality criterion, based on the index
Jd s log detŽ ⌸ .. The maximum obtained value is, in
this case, Jd s 17.9, corresponding to a detŽ ⌸ . value
of about 8 = 10 17 . A plot of the reference trajectory is
reported in Figure 9. The torque measurement vari-
ances were estimated as previously explained,
yielding the values ␴ 12 s 113.77 N 2 ⭈ m 2 and ␴ 22 s
0.39 N 2 ⭈ m 2 . By applying the recursive LS algo-
rithm, the parameter estimates

ˆ␪ s w 3.445; 0.698; 0.012; 0.107; 0.500; 7.884; Figure 8. Torque reconstruction residuals for the valida-
tion trajectory: first Žtop. and second joints Žbottom.; six
1.023; 0.883x
T
data batches.
66 䢇
Journal of Robotic Systems—2001

Figure 9. Jd-optimal reference trajectories. Solid line, first


Figure 11. Comparison of measured Ždashed. and recon-
joint; dashed line, second joint.
structed Žsolid. torques: first Žtop. and second joints Žbot-
tom.; two data batches.

torque reconstruction residuals, while the measured


and reconstructed torques are compared in Fig- torque. Validation on the test trajectory of Figure 7
ure 11. yields ␧ 1 s 1.78 N ⭈ m, ␧ 2 s 0.4 N ⭈ m, ␧ r, 1 s 23.8%,
and ␧ r, 2 s 19%.
Estimate Validation
Using a first validation data set given by another 5.3. Remarks
batch of six repetitions of the optimal reference Trajectories optimized with respect to the Jk index
trajectory, the following rms residuals were ob- provided parameter estimates with the lowest rela-
tained: ␧ 1 s 3.65 N ⭈ m, ␧ 2 s 0.31 N ⭈ m, ␧ r, 1 s 26.6%, tive rms prediction errors. The obtained parameter
and ␧ r, 2 s 13%. The larger error on the reconstruc- estimates allowed reconstruction of the input
tion of the torque at the first joint is caused by the torques Žthat may be used for feedforward compen-
large mean-square error in the measurements of this sation. with about 20% rms error on both joints.
Jd-optimal trajectories tend to move the manipulator
faster and result in higher measurement variance;
therefore, the relative parameter estimates yield
higher rms errors in the reconstructed torques.
Some of the parameter estimates obtained in the
two cases Ži.e., when tracking a Jk- or a Jd-optimal
trajectory. are quite different. In particular, the esti-
mates of the static friction ␴s, 1 of the first joint are,
respectively, given by 2.61 and 0.5 N ⭈ m. This fact
may be partially due to the differences between the
imposed trajectories Žsee Figures 2 and 9.: Because
the first one is slower than the second one, the effect
of the static friction is stronger in the first case, so
that greater values of ␴s, i are estimated Žcompare
also the estimates of ␴s, 2 , 1.460 and 1.023 N ⭈ m..
Therefore, a more accurate model of the friction
phenomena may be useful if direct friction compen-
sation is required for control purposes. Notice also
Figure 10. Torque reconstruction residuals: first Žtop. that the value of the static friction parameter for the
and second joints Žbottom.; six data batches. first joint for the Jd-based experiment has little sig-
Calafiore, Indri, and Bona: Robotic Dynamic Calibration 䢇
67

nificance, since the relative variance is high com- 5. B. Bona and M. Indri, Experiments on the dynamic
pared to the nominal value of the parameter. calibration of a planar manipulator, Proc 27th Int
Symp on Industrial Robots, Milan, Italy, 1996, pp.
Finally, it must be stressed that the parameter 117᎐122.
estimates obtained using standard LS identification 6. M. Gautier, A comparison of filtered models for dy-
may sometimes lead to physically unfeasible nu- namic identification of robots, Proc 35th CDC, 1996,
merical values of the parameters Ži.e., negative mo- pp. 875᎐880.
ments of inertia, etc.. because no specific constraints 7. B. Armstrong, On finding exciting trajectories for
are imposed in the optimization problem. Future identification experiments involving systems with
non-linear dynamics, Proc IEEE Int Conf on Robotics
work will be devoted to study the effect of the and Automation, 1987, pp. 1131᎐1139.
inclusion of physical constraints on the torque re- 8. F. Caccavale and P. Chiacchio, Identification of dy-
construction residuals. namic parameters and feedforward control for a con-
ventional industrial manipulator, Control Eng Prac-
tice 2 Ž1994., 1039᎐1050.
9. M. Gautier and W. Khalil, Exciting trajectories for the
6. CONCLUSIONS identification of base inertial parameters of robots, Int
J Robotics Res 11 Ž1992., 362᎐375.
In this article, an efficient method for the determina- 10. G.W. Van der Linden and A.J.J. Van der Weiden,
Practical rigid body parameter estimation, Proc 4th
tion of ‘‘exciting’’ trajectories for robot inertial pa- IFAC Symp on Robot Control, 1994, pp. 631᎐636.
rameter estimation has been presented. The method 11. J. Swevers, C. Ganseman, D.B. Tukel, J. de Schutter,
is based on harmonic parameterization of the joint H. Van Brussel, Optimal robot excitation and identifi-
time functions and minimization of different suit- cation, IEEE Trans Robotics Automation 13 Ž1997.,
able measures on the LS normal equation matrix 730᎐740.
performed by means of a binary coded genetic algo- 12. D.E. Goldberg, Genetic algorithms in search, opti-
mization, and machine learning, Addison-Wesley,
rithm. The proposed framework may be applied to Reading, MA, 1989.
both Newton᎐Euler and energy-based parameter 13. Z. Michalewicz, Genetic algorithmsq data structures
estimation models. s evolution programs, Springer-Verlag, New York,
Numerical simulations were carried out using 1992.
the Newton᎐Euler model and showed that good 14. M.W. Chen and A.M.S. Zalzala, Dynamic modelling
trajectories can be found using low parameter reso- and genetic-based trajectory generation for non-holo-
nomic mobile manipulators, Control Eng Practice 5
lution and a small number of harmonic terms. The Ž1997., 39᎐48.
computed trajectories respect the frequency band- 15. H. Zhuang, J. Wu, and W. Huang, Optimal planning
width constraints and the physical limits on joint of robot calibration experiments by genetic algo-
position, velocity, and acceleration. rithms, J Robotic Syst 14 Ž1997., 741᎐752.
The results of the experimental identification of ´
16. B. Armstrong-Helouvry, P.E. Dupont, and C. Canudas
the inertial and friction parameters of a SCARA de Wit, A survey of models, analysis tools and com-
pensation methods for the control of machines with
two-link manipulator, using the optimal input exci- friction, Automatica 30 Ž1994., 1083᎐1138.
tations, also were presented and discussed. 17. S.-Y. Sheu and M.W. Walker, Basis sets for manipula-
tor inertial parameters, Proc IEEE Int Conf on Robotics
and Automation, 1989, pp. 1517᎐1522.
18. T. Kailath, Lectures on Wiener and Kalman filtering,
REFERENCES Springer-Verlag, New York, 1981.
19. L. Ljung, System identification, theory for the user,
1. C.G. Atkeson, C.H. An, and J.M. Hollerbach, Estima- Prentice-Hall, Englewood Cliffs, NJ, 1987.
tion of inertial parameters of manipulator loads and 20. G.H. Golub and C.F. Van Loan, Matrix computations,
links, Int J Robotics Res 5 Ž1986., 101᎐119. The Johns Hopkins University Press, Baltimore, 1989.
2. C.P. Neuman and P.K. Khosla, Identification of robot 21. G. Calafiore and M. Indri, Experiment design for
dynamics: An application of recursive estimation, Proc robot dynamic calibration, Proc 1998 IEEE Int Conf on
4th Yale Workshop on Applications of Adaptive Sys- Robotics and Automation, 1998, pp. 3303᎐3309.
tem Theory, Yale University, 1985, pp. 42᎐49. 22. A. Visioli and G. Legnani, Experiments on model
3. S.-Y. Sheu and M.W. Walker, Estimating the essential identification and control of an industrial robot ma-
parameter space of the robot manipulator dynamics, nipulator, Proc 6th IFAC Symp on Robot Control
Proc 28th Conf on Decision and Control, 1989, pp. ŽSYROCO’00., 2000, Vol. 1, pp. 283᎐288.
2135᎐2140. 23. S. Nicosia, A. Tornambe, ` and P. Valigi, Experimental
4. M. Gautier and W. Khalil, Direct calculation of mini- results in state estimation of industrial robots, Proc
mum set of inertial parameters of serial robots, IEEE 29th IEEE Conf on Decision and Control 1990, pp.
Trans Robotics Automation 6 Ž1990., 368᎐373. 360᎐365.
68 䢇
Journal of Robotic Systems—2001

24. H. Berghuis and H. Nijmeijer, Robust control of robots point-to-point and trajectory controllers for robot ma-
via linear estimated state feedback, IEEE Trans Au- nipulators, Control Eng Practice 4 Ž1996., 991᎐1000.
tomat Control 39 Ž1994., 2159᎐2162. 28. P.R. Belanger, X. Meng, and P. Dobrovolny, Estima-
25. H. Berghuis and H. Nijmeijer, Global regulation of tion of angular velocity and acceleration from
robots using only position measurements, Syst Con- equally-spaced shaft encoder measurements, IEEE Int
trol Lett 21 Ž1993., 289᎐293. Conf on Robotics and Automation, Nice, 1992.
26. R. Kelly, A simple set-point robot controller by using
29. B. Bona and M. Indri, Identification of the dynamic
only position measurements, Proc 12th IFAC World
parameters of a planar manipulator: Simulations and
Congress, 1993, Vol. 6, pp. 173᎐176.
27. M.F. Khelfi, M. Zasadzinski, H. Rafaralahy, E. Richard, experiments, Proc 2nd World Automation Congress
ŽWAC 96., Montpellier, France, 1996.
and M. Darouach, Reduced-order observer-based

You might also like