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

Dynamic parameter identification of the Universal Robots UR5

Nemanja Kovincic1 , Andreas Müller1 , Huber Gattringer1 ,


Matthias Weyrer2 , Andreas Schlotzhauer2 and Mathias Brandstötter2

Abstract— In this paper, a methodology for parameter iden- matrix, c(q, q̇) ∈ RN stands for the vector of centripetal and
tification of an industrial serial robot manipulator is shown. Coriolis terms, and g(q) ∈ RN denotes the gravity vector.
The presented methodology relies on the fact that equations Furthermore, the vector QR ∈ RN stands for friction forces
describing motion of any mechanical system can be written in
a linear form with respect to some set of parameters. Based while QM ∈ RN denotes torques acting on bodies, i.e active
on experimental measurements done on the Universal Robots or control torques.
UR5, the presented technique is applied and the dynamical B. Friction model
parameters of the robot are determined by use of the Moore-
Penrose pseudoinverse. At the end, the ability of the determined Dissipative forces are modeled in the form of Coulomb’s
parameters to predict measurements other then the ones used dry and viscous friction, leading to
for the identification is shown.
QRi = rvi q̇i + rci sign(q̇i ) , i = 1 . . . N, (2)
I. INTRODUCTION
where rvi and rci are respectively coefficients of viscous and
af t
A mathematical model of a real physical system is as good
as it can predict what experiments show. In order to achieve a
dry friction. In order to avoid non-smooth functions in the
model, the sign function is approximated by the tangent
proper model both its structure, meaning taking into account hyperbolic function as
all relevant dynamics, and its parameters must be correct.  
Some model parameters, like masses and lengths of robot q̇i
sign(q̇i ) ≈ tanh , (3)
links, can be measured, while others, such as temperature ε
dependent dry and viscous friction, axial and centrifugal where ε is a very small number chosen to make the slope
moments of inertia or position of center of mass of segments, of the tangent hyperbolic function steep around zero.
Dr
are almost always unknown and must be identified. However, C. Motor and gearbox dynamics
each parameter can not be separately identified but only
Assuming that at each joint a motor and a gearbox are
linear combinations of them. The vector whose elements
located leads to motor dynamics in the form
are linear combination of parameters that can be identified
is called vector of identifiable parameters or vector of base i2G,i CM,i q̈i = iG,i MMot,i = QM,i , i = 1 . . . N, (4)
parameters. where, CM,i stands for the i-th rotor’s axial moment of inertia
In this paper, the procedure for determination of base corresponding to the rotation axis and MMot,i denotes the
parameters and for their identification is explained. Then, motor torque. Note that the previous equations can be divided
using experimental measurements, the procedure is applied by iG,i , however between a motor and a body is the gearbox,
to parameter identification of the Universal Robots UR5 thus torque QM,i , acting on body i, is iG,i times greater
manipulator. At the end, in order to validate the obtained than the motor torque. Also, note that although the rotor
parameters, they are used for predictions of experimental in a motor rotates around an axis that itself is in motion
measurements not used for the identification. and thus making rotor’s motion complex in the parallel
II. MATHEMATICAL MODELING sense, dynamics of a motor and gearbox are modeled in a
A. Robot dynamics simplified form. Namely, assuming the known gear ratio iG,i ,
the rotor of a motor driving body i spins around the joint axis
Differential equations of motion describing dynamics of a
with angular velocity iG,i times greater than relative angular
serial robot consisting of N rigid bodies can be written in a
velocity of the corresponding bodies. Since this rotation is
well known form as
dominant compared to the motion of the joint axis itself,
M(q)q̈ + c(q, q̇) + g(q) + QR (q̇) = QM , (1) only it is taken into account.
where q ∈ RN denotes the vector of generalized coordinates, III. M ETHODOLOGY FOR IDENTIFICATION OF
M(q) ∈ RN,N denotes the symmetric positive definite mass DYNAMICAL PARAMETERS

*This work was supported by FFG project Dr.KORS (Project number:


The methodology for identification of robot parameters is
864892) based on the fact that the equations describing motions of
1 Insitute of Robotics, Johannes Kepler University Linz a system of rigid bodies can be written in linear form with
nemanja.kovincic@jku.at respect to some set of dynamical parameters, see [2], [3].
2 JOANNEUM RESEARCH Forschungsgesellschaft mbH,
ROBOTICS – Institut für Robotik und Mechatronik For an overview on robot dynamic parameter identification
mathias.brandstoetter@joanneum.at see [10].
A. Parameter linear form of the equations of motion where the vector of parameters is
Having the previous fact in mind, (1) is written as  2
iG,1 CM,1

pT M =  ..
N . (11)
 
.
∑ ΘTi (q, q̇, q̈)pTi = ΘT (q, q̇, q̈)pT = Qo , (5) i2G,N CM,N
i=1
N,10N 10N
ΘT ∈ R , pT ∈ R , Dissipative forces defined in (2) are written in parameter
where the regressor matrix ΘTi is defined as linear form as
 
rv
ΘTi = FTKi ×    .1 
" # QR = diag(q̇i ) diag(sign(q̇i ))  ..  = ΘR pR , (12)
ω̃˙ + ω̃ ω̃
 
v̇K + ω̃vK − g 0
, rcN
0 − v̇K + ω̃vK − g
∼ ˙ − ω̃ Ω̂,
Ω̇ + ω̃Ω | − Ω̂
where diag(·) denotes a diagonal matrix, and pR the param-
∂ K ω IK T T
 
∂ K vK T eter vector.
FKi = ∈ R6,N .
∂ q̇ ∂ q̇ i
(6)
C. Parameter linear form of the equations describing the
For the derivation of the previous equation see [7].
whole system
Parameter vector pTi is
T When equations describing all elements of the model, i.e.
pTi = m, mρSx , mρSy , mρSz , A, B,C, D, E, F i ∈ R10 , (7) rigid bodies, motors and friction, are written in parameter

where ρSx , ρSy and ρSz are projections of the center of


af t linear form, writing the same form of equations describing
the system in whole is straightforward. Namely, combining
mass of body i onto x, y and z axes of the coordinate (5), (10) and (12), the linear form of equations describing
frame positioned, and rigidly connected, to the joint of the whole system is
that body and whose one axis is the rotation axis of that  
body. In the same coordinate system, moments of inertia   pT
of all consecutive bodies are denoted as A, B,C, D, E, F. ΘT ΘT M ΘR pT M  = Θ p = QM ,
pR (13)
Furthermore, in (6) matrices Ω and Ω̂ stand for
Dr
  Θ ∈ RN,13N , p ∈ R13N , QM ∈ RN ,
A
B

A −F −E
 
ωx i   where matrix Θ is known as the regressor matrix of the
C 
system. From the previous equations vector Qo from (5) is
h
JK K ω IK = −F
 B −D   ωy = Ω Ω̂  
 
,
−E −D C ωz  D
E  Qo = QM − ΘR pR − ΘT M pT M . (14)
F
    (8) D. Determination of the base parameters
ωx 0 0 0 ωz ωy Before determining the base parameters, zero columns in
Ω =  0 ωy 0  , Ω̂ = ωz 0 ωx  , (9) the regressor matrix are identified and eliminated. Namely, in
0 0 ωz ωy ωx 0 the regressor matrix defined in (5), the most general type of
where vector g denotes acceleration vector of gravity, and rigid body motion, i.e. translation plus rotation, is assumed
˜ is a skew-symmetric matrix corresponding to a vector
(·) for every body in the kinematic chain. However, when it
(·). Note that the inertia matrix JK and all vectors in (6) comes to robot manipulators, the motion of the first segment
are written in the body coordinate frames positioned at the in the chain can be described as pure rotation around an axis.
joints. Vector Qo in (5), in the absence of motor dynamics Thus, only columns in the regressor corresponding to the
and friction, denotes the vector of body torques, while for moments of inertia related to the axis of rotation in parameter
the case of friction and motor dynamics is defined in what vector (7) are not equal to zero. All other columns in the
follows. regressor matrix for the first body in the chain are equal to
zero. Note that if the coordinate frame, located at joint axis
B. Parameter linear form of the motor dynamics and friction of the second body in the chain, is positioned in such a way
forces that the velocity of its origin is always equal to zero, then
the projection of the center of mass of that body, on the axis
Differential equations (4) describe the motor dynamics and of rotation can not be identified. However, this can be easily
can be written in parameter linear form as avoided by moving that frame along the axis of rotation.
 2
iG,1 CM,1
 Computation of the base parameters is based on determi-
  .. nation of independent columns of the regressor matrix Θ by
QM = diag(q̈i )   = ΘT M pT M , (10)

. use of the QR decomposition. This procedure is explained
2
iG,N CM,N in detail in [5], Appendix 5. Here it is assumed that the base
parameters and the corresponding independent columns are Here, it is important to note that (18) and (21) make
determined. Thus, (13) can be written as sense only if all degrees of freedom are of the same type,
Θ(q, q̇, q̈) p = ΘB (q, q̇, q̈) pB = QM , e.g. rotational. Otherwise, dimensionless quantities must be
(15) introduced first.
ΘB ∈ RN,b , pB ∈ Rb , QM ∈ RN Finally, note that a good approximate solution of (18)
where ΘB is the new regressor with all columns being can only be found if the excitation trajectory excites all
independent, and where pB is the vector of base parameters. dynamical parameters of the robot. The determination of
Note that the elimination of zero columns is not necessary such a trajectory is the subject of the next subsection.
because when calculating the base parameters, the parame- E. Determination of the identification trajectory
ters corresponding to zero columns are not present. However,
The identification trajectory that excites all dynamic pa-
elimination of zero columns is the standard procedure in the
rameters, and thus yields to an accurate approximate solution
determination of base parameters.
for the parameter identification problem (18), is usually
In order to determine the base parameters (15), the real
called the persistent excitation trajectory. The term ”persis-
system is excited with a specially chosen trajectory and
tent” means that all parameters must be excited persistently
generalized coordinates and the motor torques are measured
throughout time, that is, on every time interval during the
at m time instances. From the generalized coordinates, the
identification process. However, persistence of the trajectory
generalized velocities and accelerations are calculated using
is not the only requirement for obtaining an accurate ap-
filtering and then the new regressor, called information
proximate solution. Namely, since the persistent excitation
matrix, is formed as
    trajectory is the desired trajectory, the controller on a real
ΘB |t1 QM |t1 robot manipulator must be able to follow it. Otherwise, the
 ..   . 
 .  pB =  ..  + rn ,
af t (16) trajectory is not persistent any more.
There are various criteria for calculating persistent exci-
ΘB |tm QM |tm
tation, see [8], [1], [4]. However, one of the most used is
T
or written in a simpler form as the condition number of the matrix Λ = ΘB ΘB because it
ΘB pB = QM + e, (17) measures the sensitivity of the solution of the least squares
problem to the modeling errors and noise. Thus well defined
where e is the residual error vector. In general case, the excitation trajectory is one whose points in time give small
Dr
previous system of equations does not admit a solution, condition number of the matrix Λ. Several condition number
however, an approximate solution is found by solving the based criteria for calculating the persistent excitation exist in
following least squares problem the literature, see [5]. Here, the criteria

1 T
σmax
min cond(Λ(q, q̇, q̈)) = ≥1 (22)
min e e , e = ΘB pB − QM . (18)

q,q̇,q̈ σmin
pB 2
is used where σmax and σmin denote the maximum and the
where the solution is
minimum singular value of the matrix Λ, respectively. Since a
 T −1 T
pB = ΘB ΘB ΘB QM , (19) real physical robot cannot achieve arbitrary values of coordi-
 T −1 nates, velocities and accelerations, the previous minimization
provided that the matrix ΘB ΘB exists, i.e. if ΘB has full problem is solved together with following constrains:
column rank. Since the matrix ΘB has linearly independent qmin ≤ q ≤ qmax ,
columns
 T −1it Tis a full rank matrix. Note that the matrix
ΘB ΘB ΘB is a pseudo inverse of the matrix ΘB , or |q̇| ≤ q̇max , (23)
more precisely the left Moore-Penrose inverse. Assuming |q̈| ≤ q̈max .
that the matrix ΘB is deterministic and that ρ n is zero mean In (23) the vectors qmin and qmax denote minimal and
additive independent noise, the standard deviation of the i-th maximal allowed values of the generalized coordinates, the
parameter is, r vector q̇max stands for maximal generalized velocities and
 T −1 
σi = ΘB ΘB , (20) the vector q̈max denotes maximal allowed generalized accel-
i,i erations. If the robot can self collide during motion, then
as described in [5]. If the standard deviation of a parameter also the requirement that there is no self-collision is used as
is ”big”, then the parameter is considered to be poorly a constraint. Besides the condition number, the determinant
identified. of the matrix Λ can also be used for calculating persistent
In order to quantify how good calculated base parameters excitation, see [4].
predict measured torques, the normalized error In order to solve the minimization problem (22) together
with constrains (23), following [9] the minimization trajec-
1√ T
eN = e e, (21) tory is taken in form of a finite Fourier series as
m
Li
is used, where m stands for the number of time samples used ai,l bi,l 
qi (t) = ∑ sin (ωi lt) − cos (ωi lt) + qi,0 , (24)
for the calculation of the information matrix. l=1 ωi l ωi l
where Li is the order of the series, ωi is the base frequency, relative position and orientation of these coordinate frames
qi,0 is the coordinate offset, and ai,l and bi,l are coefficients of first rotation matrices between them are defined and then
the series. In the general case, all constants in the previous local and global attributes of motion of each body in the
equation can be used as optimization variables. However, kinematic chain are calculated.
usually the order of the series is fixed and the remaining
A. Parameter linear form of the equations of motion
variables are used within the optimization. With the Fourier
series representation the infinite-dimensional optimization Assuming all elements for writing the parameter linear
problem (22) is substituted with finite dimensional one given form of the equations of motion are known, in order to con-
as struct the regressor matrix it is necessary to substitute them
min cond (Λ (q, q̇, q̈)) (25) into (6), (10), and (12). However, the obtained analytical
a,b,ω,q0 expression for the regressor is not shown. Instead, it will be
where assumed that the regressor matrix Θ(q, q̇, q̈) is known. Then,
 T  T the parameter linear form of the equations of motion is
a = a1,1 . . . a1,Li . . . aN,Li b = b1,1 . . . b1,Li . . . bN,Li
 T  T
ω = ω1 . . . ωN q0 = q1,0 . . . qN,0 , Θ(q, q̇, q̈) p = QM , Θ ∈ R6,78 , p ∈ R78 , QM ∈ R6 . (27)
(26)
which is again solved together with the constrains (23) and where the parameter vector p is
the condition that there is no self collision of the robot.  
Finally, instead of optimizing all previously mentioned vari- pT
ables, for example the coordinate offset q0 can be predefined p = pT M  ∈ R78 , (28)
or the basic frequency, ωi , can be the same for all bodies. pR
af t
This lowers the dimension of solution of the problem and with its elements defined as
thus also the time needed for the optimization algorithm to
find the solution. pT = pT 1 . . . pT 6 ∈ R60 ,


∈ R10 ,

IV. U NIVERSAL ROBOTS UR5 pTi = m, mρSx , mρSy , mρSz , A, B,C, D, E, F i
i = 1 . . . 6,
pT M = i2G,1 CM,1 . . . i2G,6 CM,6 ∈ R6 ,

To demonstrate the previously described methodology for
parameter identification, the Universal Robots UR5 manip- pR = rv1 . . . rv6 rc1 . . . rc6 ∈ R6 ,

Dr
ulator is used, see Fig. 1. This manipulator has six degrees (29)
of freedom and is a lightweight collaborative robot. where ρSxi , ρSyi and ρSzi are projections of the center of mass
of body i onto the axis of the coordinate frame positioned at
the i-th joint.
Note that, since the motion of the first body is described
as pure rotation, only the column in the matrix Θ(q, q̇, q̈),
corresponding to axial moment of inertia for the axis of
rotation is not zero. All other columns in that regressor are
zero.
Sometimes, some parameters are known to be zero or they
are negligible compared to some other parameters. In that
case one can chose not to identify them so the corresponding
columns in matrix Θ are eliminated first and then the QR
decomposition is applied to the resulting matrix.
In this work, for the identification of parameters of the
UR5 manipulator, several parameters are assumed to be
negligible. Namely, centrifugal moments of inertia of links
are assumed to be much smaller than the axial moments of
inertia and thus are not going to be identified. Furthermore,
it is assumed that the position of the center of mass of
body i does not have all three projections onto the axis
of the coordinate frame positioned at the corresponding
joint, but only one. The motion of the first body in the
Fig. 1. Universal Robots UR5, taken from [6]. kinematic chain is pure rotation and thus only axial moment
of inertia corresponding to the rotation axis is identified. For
In Fig. 1, the UR5 robot is shown at initial configuration, the second body, it is assumed that the center of mass has
together with the coordinate systems of interest and distances projection only on the z axis. Similarly, center of mass of
between them. The red, green and blue axis in Fig. 1 the third body is assumed to be on z axis. For the forth and
correspond to x, y and z axis, respectively. Based on the the sixth body in chain, it is assumed that the corresponding
centers of mass are on y axis, respectively. Finally, for the and all others are zero. The remaining parameters of the
fifth body, center of mass is assumed to lie on the z axis. Fourier series are found by optimization. The identification
With the previous assumptions, substituting random values is done on a time interval of 20 seconds, however, only first
for vectors q, q̇ and q̈ in the matrix Θ(q, q̇, q̈), and applying 10 seconds are shown in figures. In Fig. 2 measured angles
the QR decomposition to the resulting matrix, results in the of the excitation used for the parameter identification are
base parameter vector pB ∈ R33 , where shown, while Fig. 3 shows measured motor currents for the
 2  same trajectory.
iG,1 CM,1 +C1 +C2 +C3 +C4 + 0.01285 m2 +

 +0.01191 m5 + 0.01191 m6 

1

 m2 ρSz2 
 q1 q2 q3 q4 q5 q6

 A2 −C2 
 0.5

 i2G,2 CM,2 + B2 
 0

Angle [rad]

 m3 + m4 + m5 + m6 PSfrag replacements 

 0.3922 m + 0.3922 m + 0.3922 m + m ρ  -0.5
4 5 6 3 Sz 
 A −C + 0.1539 m + 0.1539 m + 0.1539 m3 

-1
 3 3 4 5 6

 B 3 + 0.1539 m 4 + 0.1539 m 5 + 0.1539 m 6 
 -1.5

 0.1092 m5 + 0.1092 m6 + m4 ρSy4 
 -2

 A4 + B5 −C4 + 0.008959 m6 

-2.5

 B4 + B5 + 0.008959 m6 
 0 1 2 3 4 5 6 7 8 9 10
 0.09465 m + m ρ  Time [s]
pB =  6 5 Sz5 .
A5 − B5 +C6





C5 +C6
m6 ρSy6
af t 




Fig. 2. Persistent excitation trajectories used for the identification

 

 A6 −C6 

8

 B6 
 I1 I2 I3 I4 I5 I6
 2
iG,3 CM,3  6
 
i2G,4 CM,4 4
 
 
Current [A]

 2
iG,5 CM,5
 2
 PSfrag replacements

Dr
2
 

 iG,6 CM,6 

0


 rv1

 -2

 ..  -4
 . 
-6
rc6
-8
(30) 0 1 2 3 4 5 6 7 8 9 10
Time [s]
Thus, the system of equations
Fig. 3. Motor current
Θ(q, q̇, q̈) p = QM , Θ ∈ R6,78 , p ∈ R78 , QM ∈ R6 (31)
is substituted with the new system In order to calculate torques acting on bodies, each motor
current is multiplied with the torque constant and the gear
ΘB ∈ R6,33 , pB ∈ R33 , QM ∈ R6
ΘB (q, q̇, q̈) pB = QM , ratio. Thus, body torques are Mi = iG,i ki Ii , i = 1 . . . 6. On the
(32) UR5 robot, there are two types of motors, one with motor
where all columns in the new regressor ΘB are mutually constant ki = 0.125 Nm/A, i = 1 . . . 3, and other with constant
independent. Note that elements of the vector pB are linear ki = 0.0922 Nm/A, i = 4 . . . 6. Also, all gears have the same
combinations of the model parameters. Also note that the gear ration, i.e. iG = iG,i = 101, i = 1 . . . 6.
zero columns from the regressor are not eliminated first, but In order to form the regressor ΘB , generalized velocities
the corresponding parameters are still not in the vector pB . and accelerations must be calculated from the measured val-
They are eliminated by use of the QR decomposition. In ues of generalized coordinates. When working with the UR5
what follows the base parameter vector (30) is going to be robot, generalized velocities are obtained from the controller,
identified. while generalized accelerations are calculated using filtering.
The transfer function of the filter used is
B. Identification results
s
For the identification of the base parameters, two persistent y= s u, (33)
w + 1
excitation trajectories are generated. One is used for param-
eter identification and the other one for validation of the where s denotes the Laplace variable, w = 2π f is the angular
obtained parameter vector. These trajectories are generated frequency with f = 10 Hz being the corner frequency of the
by solving the optimization problem (25), where the order filter. The values of the corner frequency is determined by
of the series in (24) is 5, and where the offset q2,0 = −π/2 inspecting the frequency content of the measured signals.
Using the filter and Matlab’s ”filtfilt” function, generalized

Torque 3 [Nm]
50

acceleration are obtained.


Following the methodology for the parameter identifica- 0

tion, first the information matrix ΘB and vector QM are


-50
formed. Then, base parameter are determined using the 0 1 2 3 4 5 6 7 8 9 10

Moore-Penrose pseudoinverse from (19). Time [s]

Torque 4 [Nm]
10
The results for the base parameters obtained by use of
the pseudoinverse are shown in Fig. 4, together with the 0
PSfrag replacements
corresponding standard deviations.
-10
0 1 2 3 4 5 6 7 8 9 10

12
Time [s]
Parameter value
10 Standard deviation Fig. 6. Measured and predicted torques.
8

Torque 5 [Nm]
10
6

4 0

2
-10
ag replacements 0 0 1 2 3 4 5 6 7 8 9 10
Torque 6 [Nm] Time [s]
-2 10
0 5 10 15
af t
20
Index in the base vector
25 30

PSfrag replacements
0

Fig. 4. Base parameters.


-10
0 1 2 3 4 5 6 7 8 9 10
Note that the standard deviations are small. Time [s]
In order to check the quality of the calculated base
Fig. 7. Measured and predicted torques.
parameter vector, predicted torques are compared with the
measured ones and the normalized error (21) is calculated.
Dr
0.5
Predicted body torques are shown in Fig. 5, Fig. 6 and Fig. 7,
while the normalized error reads 0

eN = 0.0279. (34) -0.5


Angle [rad]

PSfrag replacements
q1 -1
q2
Torque 1 [Nm]

50
q3 -1.5

q4
0 q5 -2

q6
-2.5
-50 0 1 2 3 4 5 6 7 8 9 10
0 1 2 3 4 5 6 7 8 9 10
Time [s]
Time [s]
Torque 2 [Nm]

100
Fig. 8. Persistent excitation trajectories used for the parameter validation
0
ag replacements
Torque 1 [Nm]

50

-100
0 1 2 3 4 5 6 7 8 9 10
0
Time [s]

-50
Fig. 5. Measured and predicted torques. 0 1 2 3 4 5 6 7 8 9 10
Time [s]
Torque 2 [Nm]

100
Next, calculated vectors of the base parameters are used
for predicting torques obtained using the second excitation 0
trajectory, shown in Fig. 8. PSfrag replacements
For the trajectory in Fig. 8, and using the obtained base -100
0 1 2 3 4 5 6 7 8 9 10
parameters, predictions of torques are shown in Fig. 9, Time [s]
Fig. 10 and Fig. 11, while the normalized error is
Fig. 9. Validation of the obtained base parameter vector, trajectory from
eN = 0.0152. (35) Fig. 8.
Torque 3 [Nm]

50 [3] A. Codourey and E. Burdet, “A body-oriented method for finding


a linear form of the dynamic equation of fully parallel robots,” in
0 Proceedings of International Conference on Robotics and Automation,
vol. 2. IEEE, 1997, pp. 1612–1618.
[4] J. Jin and N. Gans, “Parameter identification for industrial robots with
-50
0 1 2 3 4 5 6 7 8 9 10 a fast and robust trajectory design approach,” Robotics and Computer-
Time [s] Integrated Manufacturing, vol. 31, pp. 21–29, 2015.
Torque 4 [Nm]

5 [5] W. Khalil and E. Dombre, Modeling, identification and control of


robots. Butterworth-Heinemann, 2004.
0
[6] K. M. Lynch and F. C. Park, Modern Robotics: Mechanics, Planning,
ag replacements -5 and Control, 1st ed. New York, NY, USA: Cambridge University
-10
Press, 2017.
0 1 2 3 4 5 6 7 8 9 10 [7] M. Neubauer, H. Gattringer, and H. Bremer, “A persistent method
Time [s] for parameter identification of a seven-axes manipulator,” Robotica,
vol. 33, no. 5, pp. 1099–1112, 2015.
Fig. 10. Validation of the obtained base parameter vector, trajectory from [8] C. Presse and M. Gautier, “New criteria of exciting trajectories for
Fig. 8. robot identification,” in Proceedings IEEE International Conference
on Robotics and Automation. IEEE, 1993, pp. 907–912.
[9] J. Swevers, C. Ganseman, D. B. Tukel, J. De Schutter, and
H. Van Brussel, “Optimal robot excitation and identification,” IEEE
Torque 5 [Nm]

10
transactions on robotics and automation, vol. 13, no. 5, pp. 730–740,
1997.
0
[10] J. Wu, J. Wang, and Z. You, “An overview of dynamic parameter iden-
tification of robots,” Robotics and computer-integrated manufacturing,
-10 vol. 26, no. 5, pp. 414–419, 2010.
0 1 2 3 4 5 6 7 8 9 10
Time [s]
Torque 6 [Nm]

10

0
af t
ag replacements
-10
0 1 2 3 4 5 6 7 8 9 10
Time [s]

Fig. 11. Validation of the obtained base parameter vector, trajectory from
Fig. 8.
Dr
V. C ONCLUSION
From the identification results several things can be seen.
First, although the obtained base parameters vector has neg-
ative parameters corresponding to moment of inertia of the
motor rotors, which is physically impossible, it can predict
measured torques very good. However, the consequence of
having physically impossible negative parameters is that the
mass matrix is, for some robot configurations, not symmetric
or negative definite and thus methods for mass matrix
inversion tailored for symmetric positive definite matrices,
like the Cholesky decomposition, can not be used.
At the end, note that on some figures showing torque
predictions there is an error at zero time. This error is because
of static friction which is greater than the dynamic one
identified in this work.
ACKNOWLEDGMENT
This work was financed by Dr.Kors - Dynamic recon-
figurability of collaborative robot systems project, funded
by FFG - Österreichische Forschungsförderungsgesellschaft,
project number 864892.
R EFERENCES
[1] G. Antonelli, F. Caccavale, and P. Chiacchio, “A systematic procedure
for the identification of dynamic parameters of robot manipulators,”
Robotica, vol. 17, no. 4, pp. 427–435, 1999.
[2] C. G. Atkeson, C. H. An, and J. M. Hollerbach, “Estimation of inertial
parameters of manipulator loads and links,” The International Journal
of Robotics Research, vol. 5, no. 3, pp. 101–119, 1986.

You might also like