Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Proceedings of the 1997 IEEE

International Conference on Robotics and Automation


Albuquerque, New Mexico - April 1997
DYNAMIC IDENTIFICATION OF ROBOTS
WITH POWER MODEL

Maxime GAUTIER

Institut de Recherche en CybemCtique de Nantes, UMR CNRS no 6597


UniversitC & Ecole Centrale de Nantes
BP 92101
44321 Nantes Cedex 3, France
E-mail : Maxime.Gautier@lan.ec-nantes.fr

ABSTRACT control input) as a function of the generalized coordinates


(the state vector and it's derivative). It can be obtained
This paper presents a new approach to identify the from the Lagrangian equation as recalled here :
minimum dynamic parameters of robots using least
squares techniques (LS) and a power model. Theoretical
analysis is carried out from a filtering point of view and
clearly shows the superiority of the power model over the
energy one and over the dynamic identification model
which has been used to carry out a classical ordinary LS q, q are the (lxn) vectors of generalized joint positions
estimation and a new weighted LS estimation. and velocities.
These results are checked from comparing experimental L is the Lagrangian of the system, equal to E(q,q) - U(q) .
identification of the dynamic parameters of a planar scara E and U are the kinetic and the potential energy of the
prototype robot. system with :
1. INTRODUCTION .T
E = p M(q)il
Accurate dynamic models of robots are required to control
or simulate their motions. These models are functions of M(q) is the (nxn) robot inertia matrix.
the geometric parameters of robots (length of links, angle I'f is the friction torque which is usually modelized at non
between joint axis,...) and the dynamic parameters (inertia, zero velocity as following :
first moments, masses, friction). This paper is focused on
comparing the estimation of the dynamic parameters using
2 identification models which are linear in relation to
these parameters, and least squares techniques, while the
geometric parameters are supposed known. qj is the joint j velocity.
The first model is the dynamic model which depends on Sign(x) denotes the sign function.
the joint acceleration. In order to carry out with success Fv., are the viscous and Coulomb friction coefficients
practical identification using this model, low-pass parallel .! Fs',
. J.
OfJOUltJ.
filtering of the vector of measurements and of the columns (Eq.1) can be written as the classical inverse dynamic
of the observation matrix must be used [l]. A weighted LS model which explicitly depends on the joint acceleration :
algorithm is proposed to improve the accuracy of standard
deviation estimation.
The second model is a new formulation of the energy
model which doesn't depend on acceleration. Rewriting with :
this model in a differential form gives the power model
which allows to improve the filtering and the sampling of (3)
the energy model. Some practical features will be given to
choose the models and the filters in order to get a L.S.
estimation of parameters without neither distortion nor q is the (lxn) vector of joint accelerations.
bias effect. Experimental identification of a 2 d.0.f. scara N(q, q) is the (nxl) vector of centrifugal, Coriolis,
robot will illustrate theoretical results.
gravitational and friction torques.
2. THE EXPLICIT DYNAMIC MODEL The choice of modified Denavit and Hartenberg frames
attached to each link allows to obtain a dynamic model
The inverse dynamic model of a rigid robot composed of
n moving links calculates the motor torque vector r (the
0-7803-3612-7-4/97 $5.00 0 1997 IEEE 1922
(Eq.2) linear in relation to a set of standard dynamic
parameters Xs [ 1,7] :
(-( --)
q T I- = qT li aL -
(it aq
E)+ q r f

(4)

The (13nxl) vector Xs is composed for each link of the 6


components of the inertia tensor, the 3 components of the H(q, q) = E(q, @ + U(q) is the total energy of the system.
first moment and the mass, a total inertia moment for rotor h(q7@ is the (1xNp) row matrix of the energy functions
actuator and gears, Coulomb and viscous friction hi(q,q), inclutding friction effect :
parameters. It has been shown that the set of standard
dynamic parameters can be simplified to obtain the base a(H+ Iq' I'f dt)
inertial parameters. The base inertial parameters are hi(q, 4) = -
defined as the minimum parameters which can be used to
axi
get the dynamic model. They represent the set of Np The power identification model is defined by (Eq.8).
parameters which can be identified using the dynamic Integrating both sides of (Eq.8) between 2 times t, and tb
model [4, 5, 61. These parameters can be obtained from yields the energy identification model :
the standard inertial parameters by eliminating those tb tb

which have no effect on the dynamic model and by JqTrdt = H(q,q)(tb)- H(q,q)(ta)+ jqTrfdt =Ah X (9)
regrouping some others in linear relations. Symbolic and ta ta
numerical solutions have been proposed for any open or Ah is the (IxNp) regressor row matrix defmed from the
closed chain manipulator [7, 8, 91 to get a minimal energy function row matrix h(q, q) :
dynamic model :
Ah(% 4) == h(q7 q)(tb ) - h(q, q>(ta)
The energy model as the power model is a scalar equation
r = D ( q , q, q ) X = CD:iXi (5) whose symbolic equations are easier to calculate and
i=l,Np
manipulate than the vector equations of the dynamic
The ith column D:,i of D is given as following : model [ 101.
4. THE IDENTIFICATION METHOD
Generally, ordinary least squares (OLS) technique is used
From Newton-Euler algorithm it can be seen that the to estimate the minimum dynamic parameters solving an
torque of motor j is function of the inertial parameters of overdetermined linear system obtained from a sampling of
links j, j+l,.., n., thus the matrix D has an upper triangular the dynamic model (Eq.7) or the energy model (Eq.9)
form, such that : along a trajectory (9, q or q) [ l , 3,4,5,6] :
- -
- rl - -D1,1 DIJ ... D'," XI
r2 0 D2,2 ... D2.n x2
. -- . (7) The L.S. solution ? minimizes the 2 norm llp1I2 of the
Dn-l,n-l Dn-l,n xn-l vector of errors p. The unicity of ?depends on the rank
rn-1 0 ...
... of the observation matrix W.
-rn - 0 0 Dn,n
__ xn - W numerical rank deficiency can come from two origins :
the - structural rank deficiency which stands for any samples
the of (9, q or q) in W.
the This is the structural parameters identifiability problem
i
parameters of link which are contained i n the base which is solved using base parameters.
parameters of the robot. - data rank deficiency due to a bad choice of noisy
D',J is a row vector, containing the coefficients of the (q, q or q) samples in W. This is the problem of optimal
parameters XJ in the equation of the torque of motor i. measurement strategies which is solved using closed loop
identification to track exciting trajectories.
3. THE POWER MODEL In order to decrease the sensitivity of the L.S. solution of
In order to eliminate any derivation of velocity in the system (Eq.10) to errors in Y and W, the condition
identification process, a model based on the energy number of the observation matrix W, Cond(W), must be
theorem has been proposed [6,11]. This model can be close to one before computing 2 . Exciting trajectories
obtained in a differential form calculating the power of the can be obtained by non linear optimization of a criterion
system with the Lagrange equation (Eq. 1) : function of the condition number of W, under constraints
of the equation of an interpolator and the joints positions
and velocities limits [16]. In the following, we suppose
that this stage has been reached, that is W is a (rxNp) fill
1923
rank and well conditioned matrix obtained by tracking an random matrices [l]. Then it is essential to filter data in Y
exciting trajectory [ 121, which needs a closed loop control and W, before computing the L.S. solution.
of the robot. 5.2. Filtering the dynamic model
Standard deviations 02, are estimated using classical and
Samples of VT and q at rate w, allow to calculate samples
simple results from statistics, considering the matrix W to
of (Eq.7) at times ti, i=l ,...,ne, to get the (Ixr)
be a deterministic one, and p to be a zero mean additive measurement vector Y(r) and the (rxNp) observation
independent noise, with standard deviation up such that :
matrix W(q, q, q) , with r=nxn,>Np, where matrices have
T 2
c,, = E(P P) = 0, 1, been arranged to regroup the data of a same joint all
where E is the expectation operator. together :
An unbiased estimation of CY,, is used

-2
!/Y - w kif
( 3 = (1 1)
r-Np r .-I r -.
The covariance matrix of the estimation error and standard
deviations can be calculated by :

L J L A

r(i) = T(ti) is calculated with (Eq.13)


oki2 = Ckkii, is the i* diagonal coefficient of Ckk D,,: is the j" row of D.
The relative standard deviation %okriis given by : Dj,:(i)= Dj .(q(ti), q(ti), q(ti)) , is calculated from (Eq.6)
0-. or with it's customized Newton Euler formulation [IO].
%OXri = 1oo*x' The derivatives of q are estimated by passband filtering q.
ki
The choice of the cut-off frequency wfq is very sensitive
5. COMPARISON OF IDENTIFICATION MODELS because the filtered data (qf,, qfq, qf,) must be equal to
Since the analytical expressions of the dynamic or energy (9, q, il> in the range [0, wfq] in order to avoid distortion
or power identification models are equivalent, it is in the dynamic regressor which is composed of non linear
proposed to compare the efficiency of the different models functions of (q, q, q) (Eq.6) :
&om a filtering point of view.
5.1. Data acquisition
Torques are calculated using the relation :
rj= G ~ v,TJ (13) The derivatives qf,, qfq are obtained without phase shift
V T ~is the current reference of the amplifier current loop using a central difference algorithm of the lowpass filtered
which is directly the control data at a sample rate w, in the positionqfq . In order to eliminate high frequency noise
case of using a numerical controller. In the case of analog
differentiation, the order of the lowpass filter fq(s), with s
control it must be analog lowpass filtered to prevent
aliasing before to be sampled at w, with an analog to a derivative operator, must be greater than 2 to get a
passband filter s*fq(s) to calculate the velocity and
digital converter.
s2*fq(s) to calculate the acceleration. The filter fq(s) must
GT, is the gain of the joint j drive chain, which is taken as have a flat amplitude characteristic without phase shift in
a constant in the frequency range [0 wdF] of the robot. the range [0 wfq], with the rule of thumb wfq>lO*wd.yn.
Accurate determination of G T ~using methods described Considering an off-line identification, this is easily
obtained with a non causal zero-phase digital filtering by
in [ 131 is essential for the success of the identification.
Usually, robot sensors provide discrete joint position processing the input data through an IIR lowpass
buttenvorth filter in both the forward and reverse direction
measurements from encoders or resolvers. Then the use of
using a filtfilt procedure from Matlab.
an analog antialiasing filter is not possible and the sample
rate w, must be large enough to avoid high frequency The torque r is perturbed by the rejection of perturbations
(high frequency torque ripple of the joint drive chain) of
noise aliasing in the bandwidth [0 Wdyn] of the joint
the closed loop control and has also to be filtered.
position closed loop. The rule W,=lOO*Wdyn is generally
used to get an acceptable sample rate for the control input T h e n r a n d D(qf,, qf,, qfq) in (Eq.14) are both filtered
VT. by a lowpass filter fp(s) to get a new filtered linear system:
Calculating the O.L.S. solution of (Eq.10) from noisy
discrete measurements or estimations of (9, q , q , T m )
may lead to bias because W and Y are non independent
1924
It is to be noted that no error is introduced by this filtering Then we propose to calculate the weighted least squares
process in the linear relation (Eq.15) compared with (WLS) solution of the global system (Eq.15) where each
(Eq.10). The only point is to choose the row corresponding to joint j equation is weighted by 6; .
cut-off frequency wfp around 5*wd, in order to keep
useful signal of the dynamic behavior of the robot in the The error Covariance matrix is defined as following :
filter bandwidth. Because there is no more signal in the
range [wfp w,/2], Yfp and Wfp are resampled at a lower T -1
C,, = (G G) , G = diag(S),
rate. keeping one sample over nd. The decimate procedure
of Matlab is used to easily calculate a filtered and
decimated linear system :
= ... sn], sj - [ 1,
6;
... L]
ii'p

yfpd = wfpd(qfq,dfq,qfq) X+Pfpd (16) SJ is a (1, rJ) POW matrix.


G is a (n* rJ xn* r j ) diagonal matrix with the elements of
with : S on its diagonal.
nd=(wc/2)/wfpfor a FIR filter, and nd=0.8*(wc/2)/W, for an The w.L.S. solution kw minimizes the 2 n o m of the
IIR filter.
Taking wc=1oO*wd, and Wf~=5*Wdv,,gives a value of nd vector of weighted errors Pfpd :
around 10. A

X, = Arg.min[pfpd T G TGpfpd] (18)


X is estimated as the LS solution k o f (Eq.16) and X
standard deviations (3 ki are classically estimated using
Pfpd = (Yfpd - wfpdk)
(Eq.12) consideringpfpdto be a zero mean and
kw and the corresponding standard deviations okwi are
independent noise such that :
T 2 calculated as the O.L.S. solution of the system (Eq.15)
'PfpdPfpd = Pfpd)= Opfpd 1, (17) weighted by G :

In fact this is not true because the vector of measurements Ywfpd = wwfp (q fq 3 q fq ,q fq x -k Pwfpd (19)
Yfpdis obtained from the concatenation of n
with :
measurements vectors of the n motor torques Y J , with
Ywfpd = G Yfpd Wwfpd = G wfpd &f$d = G Pfpd
9 9

different errors standard deviations , j = l , ...,n. Each


5.4. Filtering the power model
(3; can be estimated using (Eq. 11) and the LS solution of
The energy model has been used by sampling (Eq.9) at
the sflemObtained with the and Of joint different times fa(i), tb(i)qa(i+l), i=1,...,r7 r>Np, as
j linear model defined from the row D,,: of the matrix D following [3, 6 , 151 :
(Eq.7) :

r .=
J [DJ.J
"
...
1
DJ," @J

, dim(OJ) = (NpJJ)
X"
One point is how to choose the sample times ta(i). In order
. 2 = /bjpd
0; - @&cl 6Jll2

, with :
to avoid offset in y(i) due to constant perturbation in
(qfqT r), tb(i)-ta(i) must be bounded. In [12, 151,
rJ - NpJ
sampling times are optimized to get a well conditioned
observation matrix W (Eq.20). This formulation needs a
lower resampling of the energy function h at times ta(i),
tb(i). Then the function h calculated at the acquisition rate
w, must be lowpass filtered with @(s) in order to avoid
aliasing. So it is easier and natural to define the sampling
times from the decimate procedure with a ratio nd, which
results in choosing tb(i) and t,(i) with a constant value
tb(i)-ta(i)=nd*2*n/w,. As a result, the parallel decimate
procedure fpd must be applied to (Eq. 20,21) as following:

1925
This is equivalent to parallel filter and decimate the
differential expression of the energy model (Eq.8), which
is the power model :

Pfpd =('$fc
r)fpd = S hfpd x = dhfpj x
The derivative dhfpd is calculated without phase shift
(23)
D:,6 = DLMYz =
-(2ql + q2) sinq2 - '$2 (241 + '$2) cosq2
ql2 cosq2 - q l sinq2
1
using a central difference algorithm.
Filtering the power model clearly defines the choice of the
sampling times t,(i) of the energy model which depends on
nd = 10, while keeping the main advantage of this model -power model (Eq. 8) :
which is the simplicity of the energy functions h.
6. VALIDATION
6.1. Description of the robot
The comparison is carried out on a 2 joints planar direct
drive prototype robot (Fig. l), without gravity effect. The
description of the geometry of the robot uses the modified
Denavit and Hartenberg notation [6, 101.

Y2

The robustness of the 2 methods with respect to the


systematic errors introduced by the filtering and derivative
processes, without any noise, is investigated using the 2
00,o' XO
models to estimate the dynamic parameters of the robot
Fig. 1. S C A M robot : frames and joint variables. and compare them to the true values. This stage is
important to check that filtering doesn't introduce
The robot is direct drived by 2 DC permanent magnet distortion in the identification process.
motors supplied by PWM choppers. The sampled torque is calculated with the dynamic model
The dynamic model depends on 8 minimal dynamic and a sampling of a successive point to point trajectories
parameters, considering 4 friction parameters : using a classical 5'h order polynomial trajectory generator,
X=[ZR1 Fvl Fsl 2z, LMX2 LMY2 Fv2 F3lT with a sample rate w,=2%*100rd/s, (Nyquist frequency =
Z Z R l = ZZ1 + M2 L2 w,/2=2*~*50rd/s). Starting with n,=8000 samples, and
nd=10 (wf,,=0.X*(w,/2)/10), we get rj =400 equations for
L is the length of the first link, the dynamic model and r=400 for the energy model. Joint
M2 is the mass of the link 2, positions and torques are prefiltered using a butterworth
ZZ1 and ZZ;! are the drive side moment of inertia of link 1 filter with a cut-off frequency wf,=0.8*(w,/2)/5.
and 2 respectively, Results given in Tab.1 show that errors are close for the 3
MX2 and MY2 are the first moments of link 2. approaches with a condition number of the WLS dynamic
The simulation is carried out with the supposed true observation matrix close to that of the power one. So WLS
values (SI Units) : dynamic and OLS power identification can be considered
X=[3.5 0.05 0.5 0.06 0.12 0.005 0.01 0.1IT equivalent from the filtering systematic error point of
view.
The columns of the regressors are the following

- dynamic model (Eq.5)

1926
Table 1 : Comparison of the systematic errors of the providing to use the same filters and the same information.
filtering process. Our conclusion is that the filtered power model is very
attractive for it's simplicity and accuracy and should be
I Dynamic 11 Dynamic 11 Power I used instead of the filtered dynamic model.
REFERENCES
[ 11 M. Gautier, P.P. Restrepo, W. Khalil, "Identification
of an industrial robot using filtered dynamic model ' I ,
Proc. 3rd ECC, Rome, Sept. 1995, pp. 2380-2385.
[2] C. Canudas de Wit, A. Aubin, "Parameters
identification of robots manipulators via sequential
hybrid estimation algorithms", IFAC Congress, Tallin,
1990, pp. 178-183.
[3] M. Prufer, C. Schmidt, F. Wahl, "Identification of
Robot Dynamics with Differential and Integral
Models : a Comparison", IEEE Conf. on Robotics and
Automation, San Diego, 1994, pp. 340-345.
[4] C.H. An, C.G. Atkeson, J.M. Hollerbach, " Estimation
6.3. Experimental comparison of inertial parameters of rigid body links of
The 2 models and the same filtering process as defined for manipulators". Proc. 24th Conf. on Decision and
simulation have been used to calculate the L.S estimation control, 1985, pp. 990-995.
[5] P.K. Khosla, T. Kanade, "Parameter identification of
X of the dynamic parameters of the prototype robot. Four robot dynamics ", 24th CDC, 1985, pp. 1754-1760.
independent realizations of the trajectory have been used [6] Gautier, W. Khalil, "On the identification of the
to get rJ = 3200 for the dynamic model and r=3200 for inertial parameters of robots", 27th CDC, 1988, pp.
the power model. 2264-2269.
[7] M. Gautier, W. Khalil, " Direct calculation of
Table 2 : Comparison of experimental estimation minimum inertial parameters of serial robots", IEEE
Trans. on Robotics and Automation, Vol. 6, No 3,
I Dynamic 11 Dynamic 11 Power I 1990, pp. 368-373.
[SI H. Mayeda, K. Yoshida, K. Osuka, "Base parameters
of manipulator dynamics", Proc. IEEE Conf. on
Robotics and Automation, 1988, pp. 1367-1373.
191 M. Gautier, "Numerical calculation of the base inertial
parameters", Journal of Robotics Systems, Vol. 8, No
4, 1991, pp. 485-506.
[ 101 W. Khalil, "SYMORO+ : A system for generating the
symbolic models of robots", SYROCO, Capri, Sept.
1994.
111 S.Y. Sheu, M. Walker, "Estimating the essential
parameter space of the robot manipulators dynamics",
Proc. 28 th CDC, 1989, pp. 2135-2140.
121 M. Gautier, "Optimal motion planning for robot's
inertial parameters identification", 3 1st CDC, Tucson,
Results given in Tab.2 show that the new filtered power 1992, pp.70-73.
model with OLS gives the same accuracy than that 131 P. P. Restrepo, M. Gautier, "Calibration of drive
obtained with the filtered dynamic model and WLS, using chain of robot joints", 4th IEEE Conf. on Control
exactly the same amount of information and the same Applications, Albany, 1995, pp. 526-53 1.
filters (wfp,wf,), that is to say the 2 methods have the same [ 141 P.R. Belanger, X. Meng, P. Dobrovolny, "Estimation
convergent speed. So, it is possible to take advantage of a of angular velocity and acceleration from equally-
very simple identification model which is less sensitive to spaced shaft encoder measurements", IEEE Conf. on
the use of exciting trajectories compared to the energy Robotics and Automation, Nice, 1992.
model which is it's integral formulation [15]. [15] M. Gautier, W. Khalil, C. Presse, P.P. Restrepo,
7. CONCLUSION "Experimental Identification of dynamic Parameters of
robot", 4th SYROCO, Capri, Italy, Sept. 1994, pp.
A new formulation of the energy model, based on a 625 -63 0.
filtered power model, is proposed. Theoretical, simulation [16] C. Presse, M. Gautier, "New Criteria of exciting
and experimental studies show that OLS estimation using trajectories for Robot Identification", Proc. IEEE
the filtered power model gives close estimations, accuracy Conf. on Robotics and Automation, Atlanta, 1993, pp.
and convergent speed as those obtained with a new WLS 907-9 12.
estimation using the classical filtered dynamic model,
1927

You might also like