368 
Communications 
IEEE TRANSACTIONS ON  ROBOTICS AND AUTOMATION. VOL  6.  kO  3 .  JUNE  1YYO 
Direct  Calculation of  Minimum  Set of  Inertial 
Parameters of  Serial Robots 
Abstract-The  determination  of  the  minimum  set  of  inertial  param- 
eters  of  robots  contributes  to  the  reduction  of  the  computational  cost 
of  the  dynamic  models  and  simplifies  the  identification  of  the  inertial 
parameters.  These parameters  can be obtained  from the classical  inertial 
parameters  by  eliminating  those  that  have  no  effect  on  the  dynamic 
model and  by  regrouping  some others. 
This  paper  presents  a  direct  method  of  determining  the  minimum 
set  of  inertial  parameters  of  serial  robots.  The  given  method  permits 
determination of most of the  regrouped  parameters  by  means of closed- 
form  relations. 
I.  I\-rRODL  CTIOY 
In  order  to  increase  the  dynamic  performance  of  robots,  many 
control  schemes  based  on  the  dynamic  model  have  been  presented 
[1]-[4].  Two problems have to he solved for real time implementation 
of  these control laws: 
1) The numerical values  of the inertial parameters must be known. 
The solution of this problem has been investigated by the use of iden- 
tification  procedures based on a dynamic model linear in the inertial 
parameters [5]-[9].  The  classification and  the determination  of  the 
identifiable  parameters (the minimum  inertial  parameters) increases 
the robustness  of  the identification  process [8]. 
2) The computational cost of the dynamic model must be reduced. 
The  solution of this problem  has been  carried out by  the use  of  the 
customized Newton-Euler  method [lo], [ 1 11. To increase the number 
of parameters that  are equal to zero and, consequently, to reduce the 
number of operations of the dynamic model, the use of  the minimum 
set of inertial parameters in  a customized Newton-Euler  method has 
been  proposed  [ 121, [ 131. 
The determination  of  the  minimum  set  of  inertial  parameters  has 
been  investigated  in  [ 121-[15]: 
Khosla  [14] has used  a  symbolic Newton-Euler  algorithm. Some 
results concerning some parameters in the case of robots whose suc- 
cessive axes are either parallel or perpendicular are given. The detec- 
tion of most of the combined parameters requires a long examination 
of  the symbolic Newton-Euler  model on a case-by-case basis. 
Khalil et al. [13], [15] have determined the minimum set of inertial 
parameters by  the  examination  of  the  symbolic  expressions of  the 
inertia matrix and the gravity forces of a Lagrangian dynamic model. 
Although these expressions are generated automatically by  computer 
[16],  the  detection  of  the  combined  inertial  parameters  may  take 
several hours. 
The aim of  this paper is to present a general  and direct method to 
determine the  minimum  set  of  inertial  parameters of  serial  robots. 
Most  of  these  parameters  (or in  most  cases,  all  of  them)  will  be 
determined  by  the use of the closed-form  solution. 
Coincidently  with  our  work  [17],  similar results  concerning  the 
special case of rotational  robots whose  successive axes are perpen- 
dicular or parallel have been given by  Mayeda et al. [ 181. 
Manuscript received April 20,  1988; revised June 9,  1989. 
The  authors  are  with  the  Laboratoire  d'Automatique  de  Nantes  URA 
C.N.R.S.,  E.N.S.M.,  Nantes,  France 
IEEE Log Number 8933674. 
11.  DESCRIPTION 
OF  THt~ ROBOT 
The system  to be considered  is an  open-loop mechanism  of  n + 
1  links,  where  link  0  is  the  base,  whereas  link  n  is  the  terminal 
link.  The description  of  the  system  will  be  carried  out  by  the  use 
of  the  modified  Denavit-Hartenberg  notation  [ 191, [20]. Thanks to 
this  description, the  closed-form  solution  of  regrouping  the  inertial 
fixed  with  respect  to link j .  The z , axis is along the axis of joint j ,  
parameters has  been  obtained. The  coordinate frame j  is  assigned 
and the x,  axis  is  along the common  perpendicular of E , and z ,  , 
The frame j  is defined with  respect  to frame j  - 1 as a function of 
the parameters (a,, d,, O,,  r,). The  type  of joint j  will  be  defined 
by  a:, where a, = 0 for j  rotational,  a,  = 1 for j  translational,  and 
f.7,  = ( 1  -a,). 
111.  THL MINIMUM 
INERTML PARAMETERS 
The minimum  inertial parameters are defined as the minimum set 
of  constant  inertial  parameters that  do not  conrain  the  zero element 
and are sufficient to calculate the dynamic model of the robot. They 
can be obtained from the classical  inertial parameters by  eliminating 
those  that  have  no effect  on  the  dynamic  model  and  by  regrouping 
some other parameters. 
A .  The Classical Inertial  Parameters 
The inertial parameters of  link j  are given by  the vector X J ,  which 
is denoted  as 
X J  = IXX,XY~X~,.YY,.YZ,.ZZ,.~X,.~Y,~.~Z,.~,I~(I) 
where  ( X X j ,  . . ,ZZ,)  are the  elements  of  the  inertia  matrix  ' J , ,  
which  defines  the  inertia  of  link  j  around  the  origin  of  frame j ,  
( m X j ,  m y , ,  mZ,) are the elements of JmS,, which defines the first 
moments of  linkj, and m j  is the mass of  link j .  
Using this set of parameters and denoting E as the kinetic energy 
and  U as the potential energy of the robot,  we deduce that 
where  m is  equal  to  10n,  XI is  an  inertial  parameter,  and  W',  is 
constant. 
B. Parameters  Having  No Eflect  on the Dynamic Model 
Using the Lagrange equation, one can derive that  if 
DE, - 0  
(4) 
the  corresponding  inertial  parameter X I  has  no  effect  on  the  dy- 
namic  model.  Thus, X ,  is  not  an element  of  the  minimum  inertial 
parameters. 
and  d U ,  = 0  
'The  inertial  parameters satisfying  these  conditions  belong  to the 
links  near  the  base  side.  They  can  be  determined  easily  by  hand 
or  automatically  by  computer  [16].  Supposing  that  r l  is  the  first 
rotational joint and r2 the first succeeding rotational joint not parallel 
to r I  , one can derive most of  the parameters having no effect by  the 
following rules: 
1)  If  joint  j 
is  translational  and  j  < rI, then  X X , ,  X Y , ,  
X Z , ,  Y Y , ,  Y Z , ,  ZZ,, mX,, m y , ,  mZ, have no effect on the dy- 
1042-296X/90/06OO-0368$01 .OO  0 1990 IEEE 
IEEE TRANSACTIONS  ON ROBOTICS AND AUTOMATION, VOL.  6 ,  NO. 3, JUNE  1990 
369 
namic  model  due  to  the  fact  that  the  angular  velocity  of  link j  is 
equal to zero. 
2 )  If the axis of joint  r l  is  parallel to  the direction  of gravity and 
the  axes  of  joints  j  < r l  are  parallel  to  the  axes  of  joint  r l  , or  if 
r l   = 1 ,   then  m X r I ,  m y r I  have  no  effect  on  the  dynamic  model. 
Moreover, in  the  case  of  r l  = 1,  m I  has  no  effect on  the  dynamic 
model. 
3) For a linkj such that r l  5 j  < r2 and the axis of link;  is paral- 
lel to that of r l ,  the parameters X X , ,  X Y , ,  X Z j ,  Y Y , ,  Y Z , ,  mZ, 
have  no  effect  on 
the  dynamic  model.  The  elimination  of 
m X ,  , mY J ,  m j   must  be  studied  on  a  case-by-case  basis.  The  pa- 
rameters  to  be  eliminated  if  the  axis  of  joint j  is  perpendicular  to 
that of r l  can be deduced easily. 
4)  For  the  links  j  2 r2, all  the  parameters  of  the  inertia  tensor 
have  an  effect on the dynamic model.  Therefore,  if  the  parameters 
mXk, mYk, mZk  appear  in  the  model,  then  all  the  parameters  of 
links j  > k  will appear in  the dynamic model. 
C .  Conditions for Regrouping the Inertial Parameters 
An  inertial parameter X I  can be  regrouped  to some other  param- 
eters X;l , . . . ,Xir if 
DE; = ~ ; I D E , I  + . .. + a,,DE,, = x f f , k D E , k  
r 
(Sa) 
and 
dU; = f
f ; ~  dU;i + . . . + f f j r   dUjr -  m;k dU;k 
k = l  
-2 
k = l  
(5b) 
with  (Y;k  = constant;  therefore,  we  get  the  same  value  of  E  and 
dU/dq  (and  consequently,  the  dynamic  model)  if  we  use  the  pa- 
rameters  x;, x;~, 
. . . ,Xir or  if  we  put  X i  equal  to  zero  and  the 
parameters X;k equal to XR;k where 
XRjk  = Xjk + (YjkXj. 
(6) 
Relation  (5) is similar  to that given in  [13]. Its use by  calculating 
DE; and  dU; is  time  consuming  and  error  prone,  especially  for 
robots  having n  2 3. In the following section,  we present a method 
that overcomes this difficulty. 
IV.  CLOSED-FORM SOLUTION OF  REGROUPING 
and  j  =  l , . . . , n  . Denoting  DE' 
aE/dX! and DUJ the vector  of  the components dU/dXj 
Let X j  be the ith  inertial parameter  of link j ,  with i  = 1 , .  . . , l o ,  
the  vector  of  the  components 
THE INERTIAL PARAMETERS 
(7) 
The main idea is to calculate DEJ and DUJ as a function of DE'-' 
and D U J - l ,  respectively. 
A .  Recursive Relations of DE'  and DUJ 
The recursive relations of DEJ and DUJ can be written  as 
DEJ = XiDEJ-' + q J j ( q ,   q )  
and 
or  in the expanded form, we have 
DUJ = P D u J - l  
(9) 
(10) 
As  dU/dXi-'  = 0 for k  = 1,. . . ,6, and  taking  into account that 
(see the Appendix) p:,k  = A;,,  ( k  = 7 , .  . . , lo), (12) can be written 
as 
The expressions  of hi and f'  are given in  the Appendix. 
B .  General Regrouping Relations of Inertial Parameters 
Let us examine the regrouping  of  the  inertial parameters  of  link j 
on those of link j  - 1  by  the use of the recursive  relations of Xi and 
f J  given in the Appendix.  We  consider  the following two cases: 
1) If joint j  is  rotational,  we  see that 
a)  the  coefficients A{, 
are constant  for k  = 1,  . . , l o ,  whereas 
f {o(q, q )  = 0. Thus, DE',, can be obtained as linear combinations of 
DE;-',  i.e., DE{, verifies the  condition  (5a). Taking  into account 
(13),  (5b)  is  also  verified.  Thus,  the  tenth  parameter  m,  can  be 
regrouped  to the ,inertial parameters  of link j  - 1. Using (6) and the 
expressions  of  A{o,  given in the Appendix,  we  get 
X X R , - I   = X X J - ,  +r?m, 
X Y R J P I  = X Y j - ,  + d j r j S a j m j  
X Z R j - ,  = X Z , - ,   - d,r,Ca,m, 
YYRj-,  = Y Y , - I  + (d: + r:Ca:)m, 
Y Z R J - ,  = Y Z J P l  + r ~ C a , S a j m ,  
ZZR,-I  = Z Z j - I  + (d: + r:Sa:)m, 
mXR,-I  = mX,-l  + d j m j  
mYRj-I = m Y j - ,   - r,Sajmj 
mZRjPl = mZ,-,  +r,Ca,m, 
mRj-, = m j P l  + m,. 
b)  The coefficients A;, 
(14) 
are constant  for k  = 1,. . . ,lo, whereas 
fi(q, q )  = 0. Similar to the foregoing  case, the parameter  mZ, can 
be regrouped  to the inertial parameters  of link j  - 1 .  
c)  The  sum  of  DE:  and DE:, corresponding  to  the  parameters 
X X j  and YY j ,  respectively, can be expressed  through  constant co- 
efficients as  a  function  of  DE$-', k  = l , . . . ,  10.  Thus,  X X ,  or 
Y Y j  can be  regrouped  to the parameters  of  link j  - 1  and Y Y ,  or 
X X j ,  We  will  always choose to regroup  Y Y , .  
As  a  conclusion, 
the  parameters 
( Y Y , ,  m Z j ,  m j )  can be eliminated,  whereas the combined parame- 
ters of links j  and j  - 1  are given as 
is  rotational, 
if  joint  j 
X X R j   = X X j  - YYj 
X X R j - ,  = X X , - I  + Y Y j  + 2rjmZ, + r:mj 
X Y R j - ,  = X Y j - ,  + d j S a j m Z j  + d j r j S a J m j  
X Z R j - I  = X Z j - ,  - d,CajmZj - d,r,Ca,m, 
YYRj-I = Y Y j - ,  + Ca:YYj + 2rjCa:mZ, + (d: + r:Caj)m, 
Y Z R j P I  = Y Z , - ,  + C a j S a j Y Y j  + 2rjCa,SajmZ, 
+r:Ca,Sa,m, 
ZZRj-I = Z Z j - ,  +Sa:YYj + 2rjSa;mZj + (d: + r:Sa?)m, 
m X R j - ,  = m X j P l  + d j m ,  
m Y R j P l  = m y , - ,   - Sa,mZ,  - rjSa,m, 
mZRj-,  = mZ,-,  + C a j m Z j  +r,Ca,mj 
mRj-, = m j - l   +m,. 
(15) 
370 
IEEE TRANSACTIONS ON  ROBOTICS AND AUTOMATION.  VOL.  6, NO.  3, JUNE 1990 
2 )  If joint j  is translational,  we  see that A:,, 
are constant,  whereas 
f:(q,q)  = O   for i  = 1 , . . . , 6  and k  = 1 , . . . , 1 0  . Thus, the param- 
eters X X , ,  X Y , ,  X Z , ,  Y Y , ,  Y Z j ,  Z Z j  can  be  regrouped  to  the 
inertial  parameters  of  link j  - 1 by  the  use  of  the  following  rela- 
tions: 
XXR,-1  = XXj-1  +C8:XXJ -2CS8jXYj  +SB:YY, 
XYRj-1  = XYj-1  + CS8jCajXXJ + (C8: - SO:)CajXY, 
- c t l j S ~ ~ j X Z j  - CS8jCajYYj + SBJS~,YZj 
XZR,-l  = XZj-1  +CS8jSaJXX, + (C8: -SB?)Sa,XY, 
+CBjCajXZj  - CSBjSajYY,  - S8jC~ijYZj 
YYR,-I  = Y Y j - ,   +S8:CajXX,  +2CSOjCaSXY, 
- 2SBjCSajX2, + CB~ZCCY~YY, 
- 2C8jCS~rjYZj + S a s Z Z j  
YZR,-l  = YZj-1  +S8:CSa,XX,  + 2CS8,CSaJXY, 
I 
I 
I 
i 
i 
+SB,(Ca:  -Sa:)XZ,  +C8:CSa,YYJ 
+ C8j(Ca: - Sa:)YZ, - CSa,ZZ, 
ZZRj-,  = ZZj-I  +SBfSa:XX, + 2CS8,Sa;XYj 
+2S8jCSa,XZJ + C B ~ S a ~ Y Y ,  + 2COjCSajYZj + CajZZ 
(16) 
where CS( .) is equal to cos ( . ) sin (  ). 
Remarks:  1) We  note  that  (16) corresponds to  the  following 
= J - I J , - ,  
J-lJRj-l 
+'-'A  I .JJ J JA I - 1  
matrix  equation: 
(17) 
where J-IA , is the (3 x 3) matrix defining the orientation of frame 
j  with respect  to frame j  - I .  
This relation  can  be  obtained  directly  by  noting  that  the  angular 
velocity of link j is equal to that of link j - 1 if joint j is translational. 
2)  From  the  general  regrouped  results  and  taking  into  account 
the  eliminated  parameters  of  link  1, we  deduce  that  the  number of 
minimum inertial parameters is equal or less than 
7n, +4n,  - 3 - 51 
(18) 
where  n,  is  the  number  of  rotational joints  = Eaj  and  n,  is  the 
number of translational joints = Coj . 
C. Particular Regrouping of the Inertial Parameters 
As we have seen in Section 111-B, some of the inertial parameters 
of  the  first  links  may  have  no  effect on  the dynamic  model;  there- 
fore, particular  regrouping,  other than that denoted in Section IV-B, 
may  take  place.  The  detection  of  these  particular  cases  have  to  be 
studied on a case-by-case basis using (5). We  find  that the particular 
regrouping  will concern  only the parameters  m X ,  mY, and mZ  of 
the translational  links  lying between the joints  rl and  r2 defined  in 
Section  111-B.  For  the  general  case,  it  is  not  easy  to calculate  this 
regrouping  by  a closed-form  solution.  If  we  consider  that the joints 
between r l  and r2 are either parallel  or perpendicular  such that the 
angular velocity of the links referred  to the link frame will have only 
one component different than zero, then the particular cases will take 
place if the axis of  the joint is parallel to r l  ; in this case, the param- 
eter mZj has no effect on the model,  whereas the parameters  m X j  
and  mY  will  be  regrouped  to  the  parameters  of  link  j - I .   Two 
cases  are considered. 
and 
1)  If Sa,  = 0, then  mZ,-I  has no  effect on the dynamic model, 
ZZRj-, = Z Z j - ,  + 2d,CBjmXj - 2d,SBjmYJ 
m X R j P I  = m X J P I  + C8,mX,  - SBjmYj 
mYRj-,  = m Y j - ,  +SBjCajmXi +C8,CajmYj. 
(19) 
Fig.  1.  PUMA robot. 
TABLE I 
GEOMETRIC PARAMETERS 
OF  THE  PUMA ROBOT 
3
4 
0
0 
0 
 
-90 
D 3  
D4 
e3 
84 
6  I 
o 
I 
o 
I  e 6  
I 
I 
I 
1 - 9 0  
I 
R3 
R4 
o 
2)  If  Ca,  = 0, then  m y ,  
has no effect on the dynamic model, 
and 
YYR,-l  = YY,-I + 2dJC8,mX, - 2dJS8,mY, 
mXR,  = M X ,  -,  + C8, mXJ - S8, m y ,  
mZR,-,  = MZ,-I  +Sa,SB,mX,  +Sa,CB,mY,. 
(20) 
V. PRACTICAL UTILIZATION 
OF  THE  REGROUPING RELATIONS 
c 
The  proposed  algorithm  of  the  detection  of  the  set  of  minimum 
parameters  will be carried out  as follows: 
1)  Find the parameters having no effect on the dynamic model, as 
is given in Section 111-B. 
2 )  Apply (15) and (16) from link n to link  1. 
3)  Apply (5) to the parameters  of translational links lying between 
r l  and  r2 to  detect  the  existence  of  supplementary  regrouping.  If 
these joints  are parallel  or perpendicular, we  can use  (19) and (20). 
Example: In the following, we get the minimum inertial param- 
eters of the six rotational joints of  the well-known 560 PUMA  robot 
(Fig.  1). The geometric  parameters  of  the  robot  are given  in Table 
I. 
Step a):  Using rules 2) and 3) given in Section 111-B, the following 
parameters  have no effect on the dynamic model: 
X X I ,  X Y , ,  X Z I ,  Y Y , ,  Y Z 1 ,  m X 1 ,  m y 1 ,  m Z , ,  and m l .  
Step  b):  Use (15) for links 6, . . . , 1: 
link 6: 
IEEE TRANSACTIONS ON  ROBOTICS AND AUTOMATION. VOL. 6.  NO. 3. JUNE  1990 
37 I 
The  minimum  parameters of  link  6  are X X R 6 ,  X Y 6 ,  X Z 6 ,  Y Z 6 .  
ZZb, m x b ,  myb. 
link  5: 
XXR5 = X X s  +YYt, - Y Y s  
XXR4  L X X 4  + YYs 
ZZRj  ZZ4 + YYS 
mYRJ = mY4 - mZs 
mR4 = m4 t mRS = m4 + ms + m 6 .  
The  minimum  parameters of  link  5 are X X R S ,  X Y 5 ,  X Z s ,  Y Z s ,  
ZZR5, m X 5 ,  mYRs. 
link 4: 
XXR4  = X X J  +YY5  - YYI 
X X R ,  = X X 3  + Y Y 4  + 2R4mZJ + R4'(mJ -t mc + m6) 
XYR3 = X Y 3  - D4mZJ - D4R4(m4 + mc t m,) 
Y Y R ?  =-YY-\ + D4'(m4 + m5 + m6) 
ZZR3  = ZZ3 + Y Y J  + 2R4mZ4 + (04'  + R4')(m4 + m5 t m6) 
m X R s  = mX3 + D4(m4 + m5 + m6) 
mYRi  = my3 + m Z j  + R4(m4 + ms + mb) 
mR3 = m3 + m4 + m5 + mb. 
The  minimum  parameters of  link  4  are X X R j ,  X Y 4 ,  X Z 4 ,  Y Z 4 .  
ZZR4, m X 4 ,  mYR4. 
link 3: 
X X R S  = X X 3  + Y Y 4  t 2R4mZ4 + (R42 - 0 4 ' )  
.(m4 + m 5  + m 6 ) - Y Y 7  
XXR2 = X X 2  + Y Y 3  + 2R3mZ3 + R32(m3 + m4 + m5 + mh) 
-E  M 5  + mg) 
+ D 4 2 ( ~ 4  
XZR2  = XZ2  - DSmZ,  - D3R3(m3 + m4 + ms + mb) 
YYR2 = yy2 + y y 3  + D42(m4 + m5 + 1716) + 2R3mZ3 
+(D32 + R3')(m3 + m4 + ms + mg) 
ZZR2  = ZZ2 + D3'(m3 t m,  t mc + mb) 
m X R 2  = m X 2  + D3(m3 + m4  -t ms + m 6 )  
mZR2 = m Z z  + mZ3 + R3(m3 + m4 + ms + m b )  
mR2 = m2 + m3 + m4 + m5 + mb. 
The minimum parameters of link 3  are X X R 3 ,  X Y R 3 ,  X Z 3 ,  Y Z 3 ,  
ZZR3, m X R 3 ,  mYR3. 
link  2: 
X X R 2  = X X 2  - Y Y 2  - D32(m3 + m4 + m5 + m e )  
Z Z R ,  = Z Z I  + Y Y 2  t Y Y R 3  + 2R3mZ3 
The  regrouping  relations  on 
+(R3* + D3')(m3 + m4 + m5 + m6). 
the  parameters  X X , ,   X Y , ,  
x z i ,  y y ~ ,  Y Z I ,  m X , ,  m y , ,  m Z , ,  m l  are  not  written  because 
these Parameters have no effect on the dynamic model. The minimum 
parametersoflink2areXXR2, X Y 2 ,  X Z R 2 ,  Y Z 2 ,  Z Z R 2 ,  m X R 2 ,  
m y 2 .  
link  1: 
The minimum parameter of  link  1 is Z Z R ,  . 
Since mZ2 and  mz  do not appear on Z Z R ,  , they  have no effect 
on  the dynamic model. 
Step cJ:  This step does not  have  to be calculated  since the  robot 
has  only  rotational joints.  The  final  results  arc  summarized  as  fol- 
lows: 
1)  The parameters having no effect on the dynamic model  are 
X X , ,  X Y , ,  X Z I ,  Y Y , ,  Y Z , ,  m X l ,  m y , ,  m Z I ,  m , ,  m Z z ,  m z .  
2) The parameters to be eliminated  by  regrouping are 
YY2, YY3, mZ3, m3, YYq, m Z 4 ,  m4, 
Y Y s ,  mZs, ms, y y b ,  m Z 6 ,  mb. 
VI. APPLICATION 
TO  T H E  I D E N T I F I C A T I ~ N  A N D  CONTROL 
The  minimum  set of  inertial  parameters are the  only  identifiable 
parameters by  the use  of  the dynamic model  [SI,  and they  are only 
needed for the calculation of  the control law. They  represent,  in the 
case of  the  given  example,  36  parameters,  i.e.  24  parameters less 
than the classical parameters. This will  greatly facilitate the identifi- 
cation process. The regrouped relations may not be important  in this 
case; only  the knowledge  of  the parameters to  be eliminated  either 
by  regrouping or because  they  have  no effect  is needed.  The identi- 
fication process would  give the values  of  the identifiable  parameters 
directly. 
In  many  control  schemes,  such  as  computed  torque,  we  need 
to  calculate  the  dynamic  model  at  the  servo  rate.  The  use  of  the 
minimum  set  of  inertial  parameters in  an  algorithm  of  customized 
Newton-Euler  will  contribute to reducing the cost of  calculating the 
dynamic model  [13]. 
VII.  CONCLUsroN 
This paper presents  a direct method  of determining  the minimum 
set  of  inertial  parameters of  serial  robots.  The  given  method  per- 
mits determination  of  most of the regrouped parameters by  means of 
closed-form  relation  function  of  the  geometric  parameters  of  the 
robot.  The  parameters that  may  need  particular  study  concern the 
first moments of the translation  links between r I  and r2. If the joints 
between r l  and r2  are parallel or perpendicular, we can obtain all of 
the minimum inertial parameters directly  without calculating the dy- 
namic model or the energy. The method  is integrated to our software 
package  of  automatic  symbolic  modeling of  robots  SYMORO [ 161. 
Generalization of  this symbolic method to tree-structured  robots and 
to robots with parallelogram  closed loops are given in  [22] and  [23], 
respectively.  Numerical  approaches to determine the minimum iner- 
tial  parameters are given  in  [24] and  [25). 
A wENi)rX 
c 
RECLIRSIVE 
RSLA'TIONS  OF  THE  DERIVATIVES 
OF  THE  ENERGY 
In this Appendix, we present directly  the results of the calculation 
of the derivatives of the energy with respect to the inertial parameters 
of  link j  in terms of  the derivatives of the energy w.r.t. the inertial 
parameters  of link j 
A .  Recursive Relation  of DE' 
We have  the matrix  relation 
- 1.  The details  can be found in  [21]. 
DEJ = XJDEJ-l + . s f
 
where Xi is a ( I O  x  IO)  matrix, andf' 
I .  Expressions of  XI:  The matrix  XI is given as 
(AI) 
is a (10 x  1)  column matrix. 
where 
Om,n is the ( m  x  n) zero matrix: 
' - ' A ,  is the ( 3  x  3) matrix defining the orientation of frame i with 
respect  to frame i - 1; 
372 
IEEE TRANSACTIONS ON ROBOTICS  AND AUTOMATION, VOL.  6.  NO.  3. JUNE  1990 
‘ - ’ P ,  is  the  (3 x  1)  vector  defining the  position  of  the  origin  of 
frame i  with respect  to frame i  - 1; 
and  J-’PJ are functions of  the geometric 
DJ, DS, D m ,  
parameters d j ,  r , ,  OJ , aJ . They are given as follows (the indexj has 
been  omitted to simplify the writing): 
We  initialize the recursive  relation by 
DUO  = [ O 1 , 6  
*T 
OIT 
(‘412) 
where g  is the acceleration  of gravity. 
csecff 
CSOSff 
ssocca 
SSOCSCY 
SSOSSa 
(CCO - SSO)SCU ~CSOCCCY 
ceca 
-CSOSa 
4OCa 
0 
2CSOCSa 
2CSOSSa 
-2SOCSff  SO(CCff - S S a )   2SOCSa 
CCOSSa 
CCOCCa 
CCOCSa 
ssa)  2cecsa 
-2cocsff ce(ccff 
cca  1 
-csa 
ssa 
~ 
(-43) 
* 
~~~~ 
~~~ 
~~ 
REFERENCES 
W. Khalil, A.  Liegeois, and A.  Fournier,  “Commande dynamique de 
robots,”  RAIRO Automatique Syst. Anal. Contr., vol.  13, no.  2, 
pp.  189-201,  1979. 
J .   Y.  S .   Luh,  M.  W.  Walker,  and  R.  Paul,  “Resolved-acceleration 
control of mechanical manipulators,”  IEEE Trans. Automat. Contr., 
vol.  AC-25, pp. 468-474,  1980. 
0. Khatib,  “A  unified  approach  for  motion  and  force control:  The 
operational space formulation,’‘  IEEE J .  Robotics Automat., vol. 3, 
pp. 43-53,  1987. 
C.  S .   G.  Lee  and  M.  J .   Chung,  “An  adaptive  control  strategy  for 
mechanical manipulators,” IEEE Trans. Aufomat. Contr., vol. AC- 
29, no. 9, pp.  837-840,  1984. 
E. Ferreira, “Contribution a l’identification des parametres et a la com- 
mande dynamique  adaptative des robots manipulateurs,” These Doct. 
Ing., Toulouse, France, 1984. 
C. H. An, C. G. Atkeson and J. M. Hollerbach, “Estimation of inertial 
parameters of rigid body  links of manipulators,” in Proc. 24th  Conf. 
Decision Contr., 1985, pp.  990-995. 
A.  Mukerjee  and  D. H. Ballard,  “Self-calibration  in  robot  manipu- 
lators,”  in  Proc. IEEE  Int.  Conf.  Robotics  Automat., 1985, pp. 
1050- 1057. 
P. K. Khosla and I. Kanade, “Parameter identification of robot dynam- 
its," in Proc. 24th  Conf. Decision  Contr., 1985, pp.  1754-1760. 
M. Gautier  and W.  Khalil,  “On  the  identification  of  the  inertial  pa- 
rameters of robots,” in Proc. 27th Conf. Decision Contr., 1988, pp. 
2264-2269. 
T.  Kanade,  P.  Khosla, and  N. Tanaka,  “Real-time  control  of  CMU 
direct-drive  arm I1  using customized  inverse dynamics.”  in  Proc. 23 
CDC, 1984, pp. 1345-1352. 
W. Khalil and J.  F. Kleinfinger,  “Une modelisation performante pour 
la  commande  dynamique  de  robots,”  RAIRO,  APII,  vol.  6,  pp. 
561-574,  1985. 
W. Khalil, J. F. Kleinfinger, and M. Gautier, “Reducing  the computa- 
tional burden of the dynamic model of robots,” in Proc. IEEE Conf. 
Robotics Automat. (San Francisco), 1986, pp. 525-531. 
W. Khalil and J .   F. Kleinfinger,  “Minimum operations and minimum 
parameters  of  the  dynamic models  of  tree  structure robots,”  IEEE 
Trans. Robotics Automat., vol.  RA-3, pp. 517-526.  Dec.  1987. 
P.  Khosla,  ‘‘Real-time control and identification of direct-drive manip- 
ulators,”  Ph.D. thesis, Carnegie Mellon University, Pittsburgh, 1986. 
W. Khalil, M. Gautier, and J.  F. Kleinfinger,  “Automatic  generation 
of  identification models  of  robots,”  Int. J .  Robotics Automat., vol. 
1,  pp. 2-6,  1986. 
W.  Khalil,  J.  F.  Kleinfinger,  and  C.  Chevallereau,  “SYMORO: 
system pour  ia modelisation  des robots,”  Notice d’utilisation, Note 
interne LAN, Nantes,  1987. 
M. Gautier and W.  Khalil,  “A  direct determination  of minimum iner- 
tial parameters of robots,” in Proc. IEEE Conf. Robotics Automat. 
(Philadelphia), 1988, pp.  1682- 1687. 
H. Mayeda, K. Yoshida, and K. Ousuka, “Base parameters of manipu- 
lator dynamics,”  in Proc. IEEE Conf. Robotics Automat. (Philadel- 
phia),  1988, pp.  1367-1373. 
W. Khalil and J.  F. Kleinfinger,  “A new geometric notation for open 
and closed  loop robots,”  in  Proc.  IEEE  Conf. Robotics  Automat. 
(San Francisco), 1986, pp.  1174-1 180. 
E. Dombre and W. Khalil, “Modelisation et commande des robots,” 
Edition Hermes, Paris,  1988. 
DJ  = 
-2CSO 
0 
SSO 
0 
0
 
-
(CCO 
SSO)Ca 
~ 
- a s f f  
-cseca 
SOSa 
0 
Dm 
= [ r 2   drSa 
I 
- d r C a  
d ?  + r ’ C C a  
r 2 C S a  
/ - l p T   - - [ d 
- r s a  
r c a ]  
2)  Expression of f J :  Two cases are considered: 
a)  For j rotational 
case 
sase 
J A ~ - ~  = 
CMO 
-sa 
S ~ C O  
cff 
[ 
C O  
-se 
0 
1 
b)  for j  translational 
f J  = [ O   0  0  0  0  0 
-wz,j 
W I , J   0 
( V 3 , J  - ; q j ) I T  
(‘49) 
where  0,  is the  velocity  of  the joint  variable J ,  whereas  wk, J ,   and 
V k , j  denotes  the  kth  component of J w j  and ’ V , ,  respectively,  and 
where  J V ,  is  the  velocity  of  the  origin  of  the  link j  fixed  frame, 
referred to frame j ,  and Jo, is the angular velocity of link j ,  referred 
to frame j .  
3)  Znitialization of the  recursive relations of DE’:  Since link 0 
is fixed,  then we  initialize the calculation by 
. . .   0 I T .  
(A101 
D E o = [ O   0 
B .  Recursive Relations  of DUJ 
We  have the relation 
DU’  =  03.6  JA,-l 
( A l l )  
[ 
0 6 , 6  
0 6 ,  I 
0 6 , 3  
J-bY  ‘y‘] 
DuJ-‘’ 
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL  6 .  NO. 3. JUNE  1990 
373 
1211 
[22] 
[23] 
1241 
[25] 
M. Gautier,  “Contribution  a  la  modelisation  et  a  I‘identification  des 
robots,”  these d’etat, Nantes,  1990. 
W. Khalil, F. Bennis, and M. Gautier.  “Calculation  of  the minimum 
inertial parameters of tree structure robots,” in Proc. 3rd ICAR Conf. 
(Columbus), 1989. 
F.  Bennis  and  W.  Khalil,  “Minimum  inertial  parameters  of  robots 
with parallelogram closed loops,” in Proc. IEEE Conf. Robotics Au- 
tomat. (Cincinnati), 1990. 
H. Sheu and M. W. Walker,  “Basis sets for  manipulator  inertial pa- 
rameters,”  in  Proc. IEEE  Conf. Roborics Automat.  (Scottsdale), 
1989, pp.  1517-1522. 
M. Gautier, “Numerical calculation  of  the base  inertial  parameters,” 
in Proc. IEEE Conf. Roborics Automat. (Cincinnati), 1990. 
Robustness Analysis  of  Nonlinear Decoupling  for 
Elastic-Joint Robots 
WOLFGANG M. GRIMM. UEMBER.  IEEE 
Absmct-  In  this  communication,  a  robustness  analysis  of  feedback 
linearization or nonlinear decoupling  is  proposed  for a class of  elastic- 
joint  robot  manipulator control  loops.  it is  shown that  by  splitting  the 
modeling-error  nonlinearities  of  incomplete  feedback  linearization  or 
nonlinear  decoupling  by  a  suitable  transformation,  a  robustness  analy- 
sis  becomes  feasible  under  weak  assumptions  without  the  necessity  of 
estimating bounds  on  derivatives  of robot  nonlinearities. 
I.  INTRODUCTION 
The robustness analysis for rigid robot manipulators,  which is out- 
lined  in  [1]-[5],  is based  on  feedback linearization  [6] or nonlinear 
decoupling  [7], where the rigid  robot  model is always feedback lin- 
earizable. This may  not  be  the  case  for  elastic-joint robot  models 
in general  [8]; however,  under  assumptions  outlined  in  [9] or  [IO], 
the conditions for feedback linearization,  or equivalently, for the ex- 
istence of a completely observable nonlinear decoupling,  can always 
be  fulfilled.  Then,  the  globally  linearized  elastic-joint  robot  model 
can be represented by  a chain of four integrators.  In [ 1 I], the robust- 
ness  of  such  nonlinear-decoupled  robot  control  loops  is  discussed. 
It turns out that the robust  design  method in  [I]-[5]  for rigid  robot 
models cannot  be  carried over to the elastic-joint case without  ma- 
jor difficulties when the system description of the globally linearized 
system is used.  Either  bounds on derivatives of  robot  nonlinearities 
have  to be estimated,  as  is  also  suggested  in  [9], or  a  loss  of  per- 
formance has to be tolerated  when, for example, a compensation  of 
gravitational forces  is  abandoned [IO]. 
In this contribution,  the results in  [IO] are modified and developed 
further.  The  idea  is  not  to  transform  a  given  nth-order  nonlinear 
system  into a  chain of  n  integrators  for the  robustness  analysis  but 
to  compensate  nonlinearities  “in  between”  the  integrators  exactly 
where they physically appear. This means that the summation point 
of  modeling  error  terms  that  contain  derivatives  is  shifted  beyond 
integrators  such that derivatives in these terms  vanish. 
Feedback  linearization  or  nonlinear  decoupling  applied  to  rigid 
robot  models,  which  is  equivalent  to  the  well-known  computed- 
torque  method,  yield  control  laws  that  contain  no  derivatives  of 
robot  nonlinearities.  Thus,  it  is  obviously  not  necessary  to  apply 
such a nonlinear transformation  to the case of  rigid robots;  however, 
it may be advantageous for any system that has a control law derived 
from  feedback  linearization  or  nonlinear  decoupling  that  contains 
derivatives of nonlinearities.  As a result, the integrator chain will be 
partitioned  into groups, where nonlinear decoupling  is accomplished 
in stages. This transformation  does not change the nature of the con- 
trol law, but it is attractive for a robustness analysis, and it facilitates 
the controller  design. 
It  is  shown  in  this  communication that  a  robustness  analysis  of 
feedback linearization,  or equivalently, of nonlinear decoupling,  be- 
comes  feasible  under  weak  assumptions.  The features of  the trans- 
formed globally  linearized  system  are twofold:  First,  derivatives of 
the control-loop nonlinearities due to model uncertainties vanish. Sec- 
ond,  measurements of the external-joint  accelerations  and jerks that 
would  be  needed  for control  [9] are  reconstructed  by  the  proposed 
transformation  and  are  not  used  for  control.  However,  robust  ob- 
servers as proposed  in  [12]-[I31 can still be used to overcome mea- 
surement difficulties [9]. 
This communication is organized as follows: In Section 11, the con- 
trol law of feedback linearization or nonlinear decoupling is stated for 
a class of elastic-joint robot models.  The globally linearized  system 
is then transformed  in  Section 111 for the robustness analysis,  which 
is sketched in  Section IV.  The robustness  condition to be used  is an 
extension  of  those  previously  obtained  for  the  “rigid  case”  in  [4]. 
Finally,  some remarks  in  Section V  conclude  this communication. 
11.  NONLINEAR DECOUPLINC 
FOR  A  CLASS OF  ELASTIC-JOINT ROBOT 
MODELS 
A  class  of  robot  manipulators  that  can  be  described  by  a  set  of 
linear  and decoupled  and a  set of  nonlinear  and coupled  differential 
equations  is considered  according  to  [9]-[ 1 11: 
vector of applied torques  at the motor shaft 
diagonal  matrix  with  gear  ratios  ng; < 1  (i  = 
1 , .  ’ .  ,n) 
diagonal  matrix  with constant motor inertia 
external joint position  vector 
= q M   - N;’qa  vector  of  angular  displacements  at 
the motor shaft, where qM is the vector of motor shaft 
positions 
diagonal matrices of  spring  stiffness and damping co- 
efficients, respectively,  measured at the motor shaft 
nonlinear and coupled robot inertia matrix without any 
entries of  motor mass 
vector of centripetal, Coriolis, and frictional  forces 
vector of  gravitational  forces. 
C and D 
The  model  description  of  (1)  and  (2) can  be  shown to  include  the 
rigid  robot  model  as  C 4 x or D  4 x. It  represents  a  class  of 
elastic-joint robots under the assumptions stated in [9]-[IO].  A major 
assumption is that the kinetic energy of the ith motor mass due to the 
motion of all jth robot links, where j  < i, can be  neglected ( i ,  j  = 
1, . .  , n). As is shown by Spong [9], this assumption is easy to justify 
for  a  large  class  of  robots  that  have  high  gear  transmission  rates. 
Furthermore,  the gear elasticities of  industrial robots  are commonly 
weakly damped  [14], and D  = 0 is considered  in the  sequel. 
Applying feedback linearization  [6] or nonlinear decoupling  [7] to 
the system of  (1) and (2) for D  = 0 leads to the control law 
H  = A 2 G C  - t ~ g A 2 R  
h  = -H*  - P(i. + g) + (PN,’  + 1)CAq 
(3) 
(4) 
( 5 )  
Manuscript  received  December  19,  1988; revised  September  18,  1989.  where 
This work  was supported by  the Volkswagen-Stiftung (U61 394). 
The author is with  Fachgebiet Mess-und  Regelungstechnik,  University  of 
Duisburg, West Germany. 
IEEE Log Number 8933040. 
1042-296X/90/0600-0373$01 .OO O 1990 IEEE