Professional Documents
Culture Documents
door
Walter VERDONCK
2004D02
April 2004
2
KATHOLIEKE UNIVERSITEIT LEUVEN
FACULTEIT TOEGEPASTE WETENSCHAPPEN
DEPARTEMENT WERKTUIGKUNDE
AFDELING PRODUCTIETECHNIEKEN,
MACHINEBOUW EN AUTOMATISERING
Celestijnenlaan 300B, B-3001 Leuven (Heverlee), België
UDC 681.3*I29
April 2004
c Katholieke Universiteit Leuven – Faculteit Toegepaste Wetenschappen
Arenbergkasteel, B-3001 Heverlee (Belgium)
Alle rechten voorbehouden. Niets uit deze uitgave mag worden vermenig-
vuldigd en/of openbaar gemaakt worden door middel van druk, fotokopie,
microfilm, elektronisch of op welke andere wijze ook zonder voorafgaandelijke
schriftelijke toestemming van de uitgever.
All rights reserved. No part of the publication may be reproduced in any form
by print, photoprint, microfilm or any other means without written permission
from the publisher.
D/2004/7515/14
ISBN 90-5682-476-7
Voorwoord
Vier en een half jaar lang heb ik me een langeafstandsloper gevoeld. In-
formatie opzoeken, ideeën bestuderen, formules afleiden, experimenten
uitvoeren, studenten begeleiden, verslagen en papers schrijven, presen-
taties voorbereiden, . . . , er leek geen eind te komen. Uithouding en
doorzetting zijn dan ook cruciaal gebleken. Met het voltooien van dit
boek ben ik in de laatste rechte lijn gekomen en is de eindmeet in zicht.
Hoewel ‘lopen’ noch ‘doctoreren’ een teamsport zijn, kan je het niet
in je eentje tot een goed einde brengen. Een heleboel mensen hebben al
die jaren vertrouwen in mij gehad en mij van op de zijlijn aanmoedigin-
gen toegeschreeuwd. Al die trouwe supporters wil ik oprecht bedanken
voor hun interesse en steun die me steeds deden ‘voortlopen’.
In de eerste plaats wens ik mijn beide promotoren te danken voor de
kans die ze mij gaven dit doctoraat te beginnen. Professor Jan Swevers
stippelde als dagelijkse trainer mee de weg uit, sprong met raad en
daad bij waar nodig, maar gaf mij tevens voldoende vrijheid om zelf
keuzes te maken. Mijn tweede promotor professor Joris De Schutter
volgde als sportief manager vanop enige afstand mijn vorderingen en
gaf mij het vertrouwen om deze vier jaren zijn oefenzittingen mee te
verzorgen.
Ik dank ook de leden van mijn begeleidingscommissie, professor
S. Van Huffel en professor J.-C. Samin, voor het kritisch nalezen en
beoordelen van de tekst. Verder apprecieer ik ten zeerste de spontane
bereidheid van de professoren Herman Bruyninckx en Wim Desmet om
deel uit te maken van de jury en van professor Berlamont om de jury
voor te zitten.
Ik dank het IWT voor de financiële steun gedurende vier jaren.
GOA/99/04 en IUAP–AMS (‘Intelligent Mechatronic Systems’) gaven
i
ii
dagtaak.
Tenslotte dank ik ook mijn ouders voor de kansen die ze mij geboden
hebben en voor de praktische en morele steun die ze mij gaven. In hun
rotsvast vertrouwen dat dit proefschrift tot een goed einde zou worden
gebracht, hebben ze tijd noch moeite gespaard om mij te omringen met
de beste zorgen. Dankzij hen was elk weekend voor mij het moment
waarop ik me thuis voelde en tot rust kon komen.
Walter Verdonck
Maart 2004
iv
Abstract
v
vi
vii
viii
Voorwoord i
Abstract v
Contents ix
Notation xv
ix
x Contents
1 Introduction 1
1.1 Background and motivation . . . . . . . . . . . . . . . . . . 1
1.2 Serial robot manipulators . . . . . . . . . . . . . . . . . . . 5
1.3 Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Main contributions of this research . . . . . . . . . . . . . . 7
1.5 Chapter by chapter overview . . . . . . . . . . . . . . . . . 9
2 Literature Survey 11
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Introduction to identification . . . . . . . . . . . . . . . . . 12
2.3 Approaches to modelling and identification . . . . . . . . . 14
2.4 Procedure for experimental identification . . . . . . . . . . . 17
2.5 Model generation . . . . . . . . . . . . . . . . . . . . . . . . 18
2.5.1 Derivation of the dynamic equations . . . . . . . . . 18
2.5.2 Models including joint flexibility . . . . . . . . . . . 23
2.5.3 Friction modelling . . . . . . . . . . . . . . . . . . . 25
2.5.4 Rotor inertia . . . . . . . . . . . . . . . . . . . . . . 28
2.6 The parameters of the identification model . . . . . . . . . 29
2.6.1 Linearity in the parameters . . . . . . . . . . . . . . 30
2.6.2 Identifiability and minimal set of parameters . . . . 31
2.7 Experiment design . . . . . . . . . . . . . . . . . . . . . . . 32
2.7.1 Separation of experiments . . . . . . . . . . . . . . . 33
2.7.2 Optimization criteria . . . . . . . . . . . . . . . . . . 34
2.7.3 Parameterization for the excitation trajectory . . . . 35
2.8 Parameter estimation . . . . . . . . . . . . . . . . . . . . . 37
2.9 Optimization techniques . . . . . . . . . . . . . . . . . . . . 42
2.10 Applications of dynamics models . . . . . . . . . . . . . . . 46
2.11 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7 Conclusions 177
7.1 Summary of the conclusions . . . . . . . . . . . . . . . . . . 177
7.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Bibliography 183
Biography 199
A Kinematics 201
A.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
A.2 Forward position kinematics . . . . . . . . . . . . . . . . . . 201
A.2.1 Denavit-Hartenberg representation . . . . . . . . . . 202
A.3 Forward velocity and acceleration kinematics . . . . . . . . 204
Symbols
e : Unit vector
f : Reaction force [N]
fv : Viscous friction coefficient [Nms]
fC : Coulomb friction coefficient [Nm]
g : Vector of gravitational forces or torques
im : Actuator current [A]
k : Spring stiffness [N/m]
m : Reaction moment [Nm]
m : Mass of a rigid body [kg]
m : Barycentric mass [kg]
n : Number of degrees of freedom of a manipulator
q : Joint position [rad]
q̇ : Joint velocity [rad/s]
q̈ : Joint acceleration [rad/s2 ]
s : First order moment of rigid body s = m c [kgm]
t : Reaction torque [Nm]
t : Time [s]
v : 3 × 1 velocity vector [m/s]
xv
xvi Notation
w : Wrench
f
w=
t
L : Lagrangian
K : Kinetic energy
P : Potential energy
C : Convex set
Functions
ẋ : Derivative of variable x
ẍ : Second derivative of variable x
cond(·) : Condition number
det : Determinant of a matrix
sign(·) : Sign function
σ(·) : singular value of ·
·T : Transpose of a matrix or vector
Indices
Experimentele identificatie
van robot en last, met toepassing op
dynamische trajectcompensatie
1 Inleiding
1.1 Motivatie
xix
xx
Dit werk concentreert zich op industriële seriële robots. Dit type robot
wordt in de industrie frequent gebruikt en bestaat uit een seriële ketting
van gelederen die zijn verbonden door middel van rotatie- of transla-
tiegewrichten. In dit werk werden de methodes voor het modelleren
en experimenteel identificeren van de dynamica van industriële robots
verder ontwikkeld. De identificatieprocedure maakt gebruik van peri-
odische excitatie en de meest waarschijnlijke parameterschatter. Het
bekomen dynamisch model is gebruikt om een trajectcompensatie voor
de standaard robotregelaar te berekenen. De identificatie- en compen-
satiemethodes zijn experimenteel geı̈mplementeerd en gevalideerd op
industriële seriële robots.
2 Literatuuroverzicht
Wiskundige modellen worden veelvuldig gebruikt bij ontwerp of simu-
latie van mechatronische systemen. De modelvergelijkingen worden
vaak afgeleid uit gekende fysische wetmatigheden, terwijl experimen-
tele identificatie de modelparameters bepaalt uit metingen van ingang
en uitgang van het systeem.
Voor de identificatie van inertieparameters zijn verschillende be-
naderingen voorgesteld in de literatuur, samengevat in figuur 1. De
klassieke benadering schat de parameters uit bewegingsdata (motor-
encoders) en motorkrachten en -koppels (stroommetingen), beide ge-
meten met ‘interne’ sensoren (Gautier, 1986; Swevers et al., 1996). Het
xxii
kracht/koppel
robot motorstroom platform
paragraaf 3 onder basis
paragraaf 4
bijhorende dynamisch model krijgt dan de naam intern model. Een al-
ternatieve benadering gebruikt een zogenaamd extern model (Raucent
and Samin, 1993; Liu et al., 1998). Dit model relateert de beweging van
de robot tot de reactiekrachten en -koppels aan de basis van de robot,
gemeten door een extern krachtplatform. Chenut (Chenut et al., 2000)
toonde aan dat beide benaderingen gecombineerd kunnen worden. Dit
is experimenteel gevalideerd in paragraaf 4.
Modelgeneratie
Experimentontwerp
Voor de excitatie is gekozen voor een traject dat bestaat uit een eindige
som van harmonische functies, d.i. een beperkte Fourierreeks. De
positie qi van gewricht i van een robot:
N
X
qi (t) = qi,0 + (ai,k sin(kωf t) + bi,k cos(kωf t)) (4)
k=1
xxvi
Parameterschatting
Validatie
−200 −100
0 2 4 6 8 10 0 2 4 6 8 10
400 50
Koppel as 2 (Nm)
200
0 0
−200
−400 −50
0 2 4 6 8 10 0 2 4 6 8 10
100 40
Koppel as 3 (Nm)
50
20
0
0
−50
−100 −20
0 2 4 6 8 10 0 2 4 6 8 10
Tijd (s) Tijd (s)
RMS predictiefout as 1 as 2 as 3
optimale referentie 6.101 6.277 2.850 Nm
geen rotorinertie 6.282 6.271 3.339 Nm
met kinematische kalibratie 6.104 6.281 2.849 Nm
l r sin(q2 )
τveer = l r sin(q2 )k − p P0 (5)
l2 + r2 − 2l r cos(q2 )
3.3 Besluit
4.1 Modelgeneratie
Het intern model (vergelijking (3)) is herschreven in een vorm die lineair
is in de barycentrische parameters:
τi = Ψi (q, q̇, q̈) δi . (6)
δi bevat barycentrische parameters en Ψi is de bijhorende identificatie-
matrix. Dit model wordt uitgebreid met de parameters die het wrij-
vingkoppel en het systeem voor gravitatiecompensatie modelleren. Het
extern model bestaat uit een herformulering van de dynamica die de
beweging van de robot relateert tot de reactiekrachten en -momenten
op de grondplaat. Bovendien heeft de vergelijking van het extern model
een analoge lineaire vorm als vergelijking (6) :
τe = Ψe (q, q̇, q̈) δe (7)
waarbij δe de barycentrische parameters in het extern model bevat,
Ψe is de overeenkomstige identificatiematrix, en τe is de vector met
reactiekrachten en -momenten op de grondplaat van de robot.
xxxii
Rotorinertie
staat uit een Fourierreeks met 5 harmonischen met een periode van 10
seconden.
Om te onderzoeken hoe de nauwkeurigheid van de parameterschat-
ting en de motorkoppelvoorspelling verbetert door intern en extern mo-
del te combineren, werden drie verschillende identificatie-experimenten
beschouwd: (1) identificatie met het intern model, (2) identificatie met
het extern model, en (3) identificatie met het gecombineerde model.
Parameternauwkeurigheid
RMS predictiefout as 1 as 2 as 3
intern model 8.950 Nm 11.824 Nm 4.446 Nm
gecombineerd model 8.949 Nm 11.811 Nm 4.419 Nm
4.3 Besluit
Om zijn taken uit te voeren, beschikt elke robot over een gereedschap
of last die bevestigd is aan het polsgewricht. Identificatie maakt het
mogelijk om ook de inertiële parameters van deze robotlast te bepa-
len. Deze informatie kan dan gebruikt worden om de bewegingen te
optimaliseren zonder overbelasting van de motoren. Hiervoor dient het
dynamisch model voor robot met last in staat te zijn een nauwkeurige
voorspelling te leveren voor het koppel dat nodig is om een gewenste
beweging uit te voeren. Voor een vlotte integratie in de werkomge-
ving is het tevens noodzakelijk dat de bekomen schattingen voor de
lastinerties fysisch interpreteerbaar zijn naar nauwkeurigheid toe.
Een veelgebruikte methode om de inertieparameters van de robot-
last te bepalen meet via een krachtsensor de reactiekrachten op de eind-
effector van de robot (Atkeson et al., 1986). In dit onderzoek gebruiken
we de methodes van robotidentificatie gebaseerd op de gemeten motor-
stromen. Toepassingen in de literatuur beschouwen de last als een extra
gelid en identificeren telkens opnieuw de ganse robot (Gautier et al.,
1995). In dit onderzoek gaan we een stap verder door de dynamica van
de robot reeds op voorhand te bepalen, o.a. door middel van identifi-
catie, en als a priori kennis in rekening te brengen bij de identificatie
van de inertieparameters van de robotlast.
5.1 Modelgeneratie
Bijkomende effecten
Door modellering: Hierbij wordt het koppel ten gevolge van de ge-
lederen berekend uit het dynamisch model en a priori gekende
parameterwaarden. De metingen worden gecompenseerd voor dit
berekende koppel.
5.3 Sensitiviteitsanalyse
0 0
−200 −200
0 10 20 30 0 10 20 30
200 200
As 5 (Nm)
0 0
−200 −200
0 10 20 30 0 10 20 30
100 100
As 6 (Nm)
0 0
−100 −100
0 10 20 30 0 10 20 30
Tijd (s) Tijd (s)
5.5 Besluit
qd qact
Invers qd,comp Systeem
qd qact
Robot
qd
systeem qd,comp + qact
Regelaar
Een model Gcontr van de analoge regelaar wordt bepaald door identifi-
catie op basis van multisinusexcitatie. In een tweede stap, converteert
de inverse regelaar de motorkoppels naar gecompenseerde gewenste
snelheden q̇d,comp = G−1
contr τd + q̇d , die worden aangelegd aan de voor-
waarts gekoppelde snelheid.
Het is noodzakelijk een positieterugkoppeling te behouden om af-
wijkingen van het nominaal traject weg te regelen, bijvoorbeeld door
onnauwkeurigheden in het dynamisch model of verstoringen van bui-
tenaf. Als gewenste positie blijft qd behouden.
x 10
−3 Zonder precompensatie
6
2
Positievolgfout (rad)
−2
As 1
−4 As 2
As 3
−6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
Tijd (s)
x 10
−3 Met precompensatie
6
2
Positievolgfout (rad)
−2
As 1
−4 As 2
As 3
−6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
Tijd (s)
Figuur 7: Volgfout bij een cirkel (diameter 40 cm, snelheid 0.6 m/s)
in een horizontaal vlak zonder compensatie (boven) en
met compensatie (onder) van de niet-lineaire dynamica
6. Dynamische compensatie door trajectaanpassing xlv
dmean dmax
zonder compensatie 1.42 mm 2.01 mm
met compensatie 0.25 mm 0.45 mm
6.4 Besluit
1
2 Introduction
More recently, the term flexibility has reached the work floor and
changed the production concept fundamentally. Previously, the em-
phasis was put on producing high volumes for a mass market. These
standard products had to be made at the lowest cost and with a short
lead time. As marketeers know for years already, profit margins can be
increased by product differentiation and customization. Such custom
tailored products try to fulfill the customer’s wishes as close as possi-
ble. This involves that products must be assembled or even completely
built to order. Implementing such strategy requires more flexibility in
the production lines because every product is different. The just-in-
time philosophy enhances this evolution towards increased flexibility:
batch sizes are reduced, machine setup requires less time, etc. Flexi-
bility should however not go to the detriment of precision, quality or
productivity. On the contrary, all these aspects must go hand in hand.
In this context, industrial robot manipulators have become an indis-
pensable means of automation to increase productivity and flexibility
of production units. They can be employed for tasks which cannot be
executed by human beings, or only with limited accuracy and speed.
Furthermore, robots are able to work in hazardous environments and
are more reliable. Robot manipulators are commonly used in fully au-
tomated production lines in car factories. Typical tasks executed by
these manipulators go from palletizing, transportation and assembly
tasks to cutting, welding, gluing or painting.
Robots are programmed by teaching the sequence of positions and
orientations which are necessary to execute the desired task. To reach
a sufficient accuracy, this teaching is mostly done on-site and relies
on a good repeatability, rather than on a good absolute accuracy. To
improve position accuracy, the manipulator and its environment need
to be calibrated. A kinematic calibration procedure estimates the ge-
ometric properties and the compliance of the manipulator. The ob-
tained kinematic model is used to calculate position corrections. A cal-
ibrated kinematic model is essential for accurate off-line programming
and makes it easier to exchange manipulators without reprogramming.
In modern applications like laser welding and laser cutting increas-
ing importance is attached to path accuracy. Standard industrial con-
trollers neglect however all nonlinearities in robot dynamics, like cen-
trifugal, gravitational, and Coriolis forces, friction, motor dynamics,
1.1. Background and motivation 3
and dynamic couplings between the different joint axes. This results in
deviations from the desired motion. These nonlinearities can be com-
pensated for with new advanced controllers that include more a priori
knowledge of the robot manipulator, e.g. computed torque controllers.
The implementation of these advanced control algorithms requires a
good knowledge of the dynamic behavior of the robot manipulator.
For many years, these control techniques have only been adopted in
specialized robotic labs. Since computers have become more powerful
nowadays, it is possible to calculate the dynamic model within the
real-time constraints of the controller. This evolution created a renewed
interest in these control algorithms and stimulated the need for accurate
dynamic models of robot manipulators.
A practical difficulty is that the physical values in the manipula-
tor dynamic model are often not known accurately. These parameter
values, for example, may change as the robot ages. Picking up of var-
ious parts and tools also influences the dynamic characteristics of the
manipulator. Moreover, in many situations, the mass and inertia prop-
erties of the links, and those of the objects that the manipulator picks
up, are not precisely known. Therefore, having an accurate dynamic
model is impossible. Accordingly, when we have a poor knowledge of
the parameters, the control law may not decouple and linearize the
closed-loop system errors, and may in fact cause the system to be un-
stable.
The gap between the desired accuracy of the production process and
the intrinsic accuracy of the robot manipulator can be also bridged by
means of calibration. Static or kinematic calibration already proved its
usefulness for improving the position accuracy, and dynamic calibration
offers a possibility to reduce path deviations.
The productivity in industrial situations is affected by the speed
of operation. Considerable gains in productivity can be achieved by
minimizing the cycle time. In order to maximize the operational speed
it is necessary to minimize the total travelling time for the robot, but
at the same time guarantee constant accuracy. As soon as reliable dy-
namic models are available, trajectory optimization algorithms can be
applied. They take into account physical limits of the robot such as:
the workspace of the robot, limits on the actuator power and torques,
4 Introduction
and on the reaction forces/torques of the robot on the base plate. These
algorithms allow to distribute the load efficiently over the different ac-
tuators. This prevents the manipulator from being dynamically over-
loaded resulting in a better reliability.
Competition creates an increasing demand to further improve both
the flexibility and the accuracy by off-line programming. Standstill is
economically not acceptable and should be eliminated as much as pos-
sible. Off-line programming and simulation programs make it possible
to program robot motions on an external computer without the need
to interrupt the production. In practice, this leads to a significant im-
provement of flexibility and productivity. Off-line programming gives
the opportunity to produce small series in a flexible way.
Modern off-line programming processes assume a certain basic po-
sitioning accuracy of the robot manipulator. Although the achieved
accuracy is sufficient for relatively slow assembly motions, the result-
ing trajectories are rather inaccurate at high speed. The reason lies
in the factor that commercial systems for off-line programming use,
mostly uncalibrated, kinematic models which take into account only
robot geometry and constraints on position and velocities. These mod-
els do not include the complex nonlinear dynamics of fast motions.
This leads to large tracking errors and consequently requires manual
teach-in corrections, which are time consuming and costly because the
robot manipulator has to be taken out of production. To allow relia-
bility in off-line programming of fast motions, validated and accurate
dynamic robot models are required.
The accuracy of the robot is also affected by the robot payload
or tool. Nevertheless, the inertial parameters of this payload are only
roughly known. This causes a lot of robots to be systematically over-
loaded, which significantly reduces lifetime and reliability. The payload
will certainly attract more attention in the near future. In order to re-
duce the price, manufacturers tend to make the robot structure lighter
weight. As a result, a relatively larger part of the actuator torques is
required to move the payload.
Last but not least, space applications make intensive use of dy-
namic models of both the manipulator and its payload. These models
facilitate the testing and control design on the ground of space robots
1.2. Serial robot manipulators 5
and satellites.
This section motivated the search for experimental identification
methods for robot manipulators. There clearly exists a need for accu-
rate dynamic models and the range of applications keeps growing.
be mounted on the end effector, i.e. on the mounting plate of the last
link.
In applied robot research, it is important to use robot manipulators
that are commonly used in industry. In this work industrial robots with
electric drives are considered. Simplified or special purpose research
robots do not have realistic dynamic properties. The mechanical design
done by major robot manufacturers has been worked out considering
many application, quality, and maintenance demands. Research appli-
cations on such robots remain very relevant from an industrial point of
view.
The restriction to industrial serial manipulators does not limit the
applicability of the methods presented in this work. Most of these
methods can be extended for application to other robotic systems after
some modifications.
1.3 Approach
This research presents identification methods to experimentally obtain
a model describing the dynamics of both robot and its payload. The
experimental identification procedure consists of the following typical
steps: (1) the generation of an identifiable dynamic model, (2) the
generation of optimized excitation trajectories, (3) the estimation of
the model parameters, and finally (4) the validation of the obtained
model.
The model equations consider the rigid body dynamics and are
derived based on physical properties. As a result, the model param-
eter values have a physical interpretation and their estimates can be
compared to the true values, if available. This is an advantage over
black-box methods where only the goodness of fit for the output pre-
diction can be evaluated. The physical modelling approach gives the
opportunity to introduce two extensions. On the one hand, an external
sensor can be added to the setup, providing additional measurements
that can improve the parameter accuracy. The sensor provides mea-
sures of the reaction wrenches at the base of the robot. On the other
hand, the developed robot identification method can be extended to
identifying the robot payload parameters.
1.4. Main contributions of this research 7
This thesis deals with the dynamic robot identification problem and the
compensation of the nonlinear dynamics. The inertial parameters of a
rigid body manipulator are estimated from measurements taken dur-
ing an excitation experiment. The resulting dynamic model is used to
calculate a trajectory compensation for the robot controller. The iden-
tification and compensation methods are experimentally implemented
and validated on industrial serial robot manipulators.
The main contributions of this thesis are as follows:
2.1 Introduction
Since the first generation of robots in the 1970s, the application area
of robotics has expanded over the years. Manipulators have become
more intelligent, more powerful and more accurate. The literature
of the robotics world is accordingly very extensive. Even the field
of modelling, identification and control of robot manipulators went
through an important evolution. The first papers dealt mainly with
the kinematic aspects of robots. As dynamics became more important
to increase speed also more elaborate methods have been presented
11
12 Literature Survey
Mathematical models are required for various steps in the design, sim-
ulation or control design of mechatronic systems. There are mainly
two ways to obtain these models, the theoretical modelling based on
physical principles and design data, and the experimental modelling
(or identification) which builds a model based on measured input and
output variables. In many cases the basic model structure is known
from theoretical modelling, however, some parameters are not known
precisely or change with time. The easiest method would be to use
CAD data. However, these data are mostly not very accurate, because
wiring, internal electronic components, etc. are not included in the
CAD model. A better alternative would be to dismantle the robot ma-
nipulator and experimentally determine all inertial parameters. This
method suffers from the drawback that not all parameters can be mea-
sured, e.g. friction. Moreover, dismantling is a time consuming activity
and not convenient for use in an industrial environment. Hence, for ob-
2.2. Introduction to identification 13
ond order, third order operator and so on. Other popular black-box
models are neural networks and fuzzy models. An overview of soft-
computing methodologies for identification of robotic manipulators is
given in (Onder Efe and Kaynak, 2000).
Sometimes identification is done on-line and integrated in the con-
trol law. Learning and adaptive techniques have the advantage that
they do not require special excitation experiments, because they are
used on-line (Lange and Hirzinger, 1996). Adaptive control of robots
has received considerable attention over the last decades. An impor-
tant number of globally stable algorithms have been developed that
result in zero tracking error in the steady state (Canudas de Wit et al.,
1996; Zhu and De Schutter, 1999).
In this work, nonlinear parametric models are used. The equations
are derived according to physical properties which allows to take into
account all a priori available information and to interpret the estimated
parameter values.
Chenut (Chenut et al., 2000) showed that the internal model and
the external reaction model can be combined into one identification
scheme. This approach allows to improve the accuracy of the param-
eter estimates and obtain more accurate actuator torque prediction.
The presentation was however based on simulation results and did not
include an experimental validation. In chapter 4 of this work this com-
16 Literature Survey
force/torque
robot motor current
platform
chapter 3 at base
chapter 4
wrist-mounted
payload motor current force sensor
at end effector
chapter 5
In the following sections, the different steps in this procedure are dis-
cussed in more detail.
total energy of the system, while the other method is based on the
equations of motion.
A first method to derive a full model uses the total energy of the system.
In (Gautier and Khalil, 1989; Kozlowski and Dutkiewicz, 1996), the
model is obtained by applying the energy theorem. The total energy
Etotal is expressed as
Z t2
Etotal = τ T q̇ dt
t1
= Φ(q, q̇)θ (2.1)
where t1 and t2 represent respectively the begin time and end time of
the experiment, τ is the vector of actuator torques, and q̇ the velocity
vector. A suitable parameterization gives a model which is linear in
the parameters: Φ is the identification matrix and θ are the unknown
inertial parameters.
The identification model based on the energy theorem is function
of the joint positions and velocities, and does not require estimates
or measurements of the accelerations. To obtain a set of equations
from which the parameters can be estimated, the integral in equa-
tion 2.1 should be evaluated between two different time instants. Ko-
zlowski (Kozlowski and Dutkiewicz, 1996) provides us with two possi-
bilities. One possibility is to divide the total experiment time into k
intervals. For each interval (t1 , t2 ) the integral should be evaluated.
Another possibility is to apply the so-called long time integral. In this
approach we always start from a fixed start time t0 (i.e. t1 = t0 ) and
for t2 , m different times in the experiment are chosen. This results
in a number of equations which constitute an overdetermined set of
equations in the unknown parameters. This system is solved using a
parameters estimation algorithm.
To include friction in the model, Kozlowski proposes the following.
The total energy Etot is used on the one hand to move the robot from
one position to an other position. On the other hand, a part of the
20 Literature Survey
energy will get lost due to friction losses. This dissipation can be
calculated a priori using equation (2.1) which is reformulated to
Z t2
Etotal = τ T q̇ dt
t1
Z t2
= H(t2 ) − H(t1 ) + τfT q̇ dt (2.2)
t1
where τf represents the total friction torque and H(ti ) the sum of
kinetic and potential energy at time ti .
A procedure in which each link is moved separately around an equi-
librium position allows to compensate for friction. The link is moved
with constant velocity which is increased incrementally in successive ex-
periments. An appropriate choice for the equilibrium positions cause
the term H(t2 ) − H(t1 ) to become negligibly small with respect to the
friction term. Using equation (2.3) τf can be determined. This infor-
mation can be used as a priori knowledge in the final estimation using
equation (2.2).
R t1
t2 τ dt
τf |q̇=const = (2.3)
t2 − t1
d ∂L ∂L
− = τj , j = 1, . . . , n (2.7)
dt ∂ q̇j ∂qj
et al., 2002; Pham et al., 2001). Frequency response methods and other
linear identification models provide good results for systems that are
approximately linear.
In their paper, Norrlöf et al. (Norrlöf et al., 2002) motivate the use
of a linear model for the first joint of a manipulator using a special
odd multisine excitation (Pintelon and Schoukens, 2001). They con-
clude that most nonlinearities are actually negligible. Östring (Östring
et al., 2001) makes a derivation of a physical model of one joint axis
using three inertias, i.e. actuator, gear and link inertia, with flexibil-
ity and damping in between them. Such model corresponds better to
the physical structure. The system is excited using a chirp signal with
constant amplitude as the reference signal. The identification results
performed using a black-box Box-Jenkins model are compared to the
results from the physically parameterized model. He concludes that the
Bode plot of both models have the same characteristics. The analysis
is however restricted to only one joint. Moreover, introduction of non-
linearities such as friction or backlash affects the Bode plot (Aberger,
2000).
Albu-Schäffer (Albu-Schäffer and Hirzinger, 2001) addresses the
problem of identifying the parameters of a flexible joint robot. In ad-
dition to motor position sensors, the joints are equipped with torque
sensors as well as link position sensors. To avoid complex nonlinear
optimization problems which result in local minima and unreliable pa-
rameter values, each joint and its successive link are identified sepa-
rately before the assembly of the robot. Experimental results show a
good correspondence with the design data from the CAD program.
In (Khalil and Gautier, 2000) a method is presented for the mod-
elling of mechanical systems with lumped elasticity. Pham (Pham
et al., 2001) identifies flexibilities of robot joint moving one axis at
a time. The dynamic model reduces to a dynamic model which is lin-
ear in the inertial parameters. If no joint position measurements are
available, this method requires to calculate the fourth derivative of the
measured motor position.
Linear models for flexible robot joints are well studied in literature,
but dynamic coupling between the joint axes, nonlinear friction, and
the nonlinear compliant behavior in real harmonic and cycloidal drives
2.5. Model generation 25
τC = fC sign(q̇i ) (2.8)
Stribeck friction model includes the effect that for low velocities
the friction takes a higher value that decreases with increasing
velocity. An exponential function is used in the modelling.
− q̇q̇
τS = fS e s sign(q̇i ) (2.10)
26 Literature Survey
where fS is the stiction force at zero velocity, and q̇s is the critical
Stribeck velocity.
τvisc = f1 q̇ + f2 q̇ 3 . (2.14)
eTmi+1 ωi = 0. (2.18)
2.6. The parameters of the identification model 29
• the mass mi ,
z
COG
ci
bodyi-1
R y bodyi
Figure 2.3: The link body frame R and the center of gravity
30 Literature Survey
To this set of inertial parameters, the actuator inertia and the friction
coefficients are added. This results in a parameter vector pi for each
link, mostly containing 13 parameters when a Coulomb and viscous
friction model is used. For the full manipulator structure with ndof
degrees of freedom, this leads to the parameter vector
T
θf ull = pT1 pT2 · · · pTn
(2.20)
containing 13ndof parameters.
The first order moments si equal mi ci . The second order moments pro-
duce the inertia tensor expressed relative to the origin of the link frame.
The reformulation of the recursive Newton-Euler equations using the
transformed parameters are given in appendix B.
Other parameterizations like the barycentric parameters (Raucent
and Samin, 1994) immediately result in a model which is linear and
minimal in the parameters.
First, one has to decide if all parameters will be identified in only one
experiment or in separate experiments, and which joint axes will be
used in each experiment.
The identification matrix has a triangular structure due to the serial
chain construction of a manipulator; the torques of the last actuator
are determined by only the inertial parameters of the last body (and
the payload), while the first actuator torque is influenced by all inertial
parameters. The triangular structure makes it possible to estimate the
parameters in a sequential procedure (Atkeson et al., 1986; Olsen and
Bekey, 1986). These approaches use different trajectories, which each
excite some parameters. This simplifies the estimation procedure.
Due to the large difference between the values of the inertial param-
eters of the wrist with respect to those of the base, Gautier (Gautier
et al., 1995) proposes to carry out the identification in two experiments.
First, all joints are moved and the inertial parameters of the wrist axis
are identified. In a second experiment, only the base axes are excited
and the remaining dynamic parameters are identified.
Daemi et al. (Daemi and Heimann, 1996) propose to identify the
friction model for each link separately, and to compensate for its influ-
ence on the measured torques before starting the robot identification.
This way, the parameter set for a 6-dof robot is reduced by 12 ele-
ments. To collect measurements for the friction model, each axis is
moved separately and constant velocity trajectories are applied. It is
clear that repeating this procedure for different velocities is very time
consuming. In (Daemi and Heimann, 1998; Grotjahn et al., 2001), this
method is extended to the inertial parameters which are separated in
three groups. Each group is estimated in different sets of experiments.
Measurements are carried out with simple motions in the neighbor-
hood of especially selected joint configurations. First, the gravitational
torque is measured at different configurations and the corresponding
inertial parameters are identified. Next, respectively the diagonal and
off-diagonal elements of the mass/inertia matrix are identified. The
contribution of the already known gravitational parameters is compen-
sated for. Finally, all identified parameter sets are combined to yield
the overall base parameter vector.
34 Literature Survey
σmax (Φ)
cond(Φ) = (2.25)
σmin (Φ)
with σmax (Φ) and σmin (Φ) the largest and smallest singular value of Φ.
A small condition number decreases the sensitivity of the least squares
solution to errors in the measured torques τ or in the identification
matrix Φ (Armstrong, 1989; Golub and Van Loan, 1989). This min-
imizes the bias of the estimate due to unmodelled dynamics. Most
papers related to experimental robot identification still use the condi-
tion number of the identification matrix as a measure of influence of
the disturbance on the parameter estimates (Gautier and Khalil, 1992;
Kozlowski and Dutkiewicz, 1996).
2.7. Experiment design 35
Φw = Φdiag(θ̃). (2.26)
Gautier et al. (Gautier and Poignet, 2001) use fifth order polyno-
mials. The coefficients can be optimized using some nonlinear opti-
mization algorithm. In the identification step, the joint velocities and
accelerations are estimated with bandpass filtering of the position us-
ing a low pass butterworth filter in both forward and reverse direction
and the central difference algorithm for derivatives because it is very
important to avoid distortion of the identification matrix Φ.
Daemi et al. (Daemi and Heimann, 1996) use a method with only
a few parameters in order to reduce convergence problems and keep
computation time low. Therefore, initial points qt0 , final points qt2
and one intermediate point qt1 are defined for each axis and seventh
order polynomial trajectories are calculated to connect them. Velocities
and acceleration are set to zero at the initial and final points. The
interpolated trajectories for each axis consist of two parts
6
X 6
X
q(t) = ai ti +(d1 + d2 t) bi ti (2.29)
i=0 i=1
| {z } | {z }
A B
where ai and bi are defined such that part A solves the given boundary
conditions, and part B solves the homogeneous boundary conditions.
By varying d1 and d2 a number of different trajectories can be gener-
ated. The use of seventh order polynomials ensures shock- and jerkless
trajectories such that the elasticities of the joints are not excited by
the driving torques.
In more recent work (Daemi and Heimann, 1998), the same authors
move the axes along some trapezoidal velocity profile about the operat-
ing point in a ‘back-and-forth’ movement. These trajectories have the
advantage that they can be realized easily in typical industrial robot
controllers.
Antonelli et al. (Antonelli et al., 1999) use a different approach.
They first solve the optimization problem to find a set of optimal mea-
surement points. Next, these optimal points are interpolated to obtain
smooth joint trajectories to be executed by the manipulator, e.g. by
using fifth order polynomials or splines. The polynomial coefficients
are fixed by imposing continuity constraints between the trajectory
segments. Instead of constructing the identification matrix only with
2.8. Parameter estimation 37
the optimized points, additional points along the trajectory are added
because this improves the optimization criterion. The authors propose
that these additional samples to be taken along the trajectory are se-
lected via the following criterion. A sample is removed if the inclusion
increases the optimization criterion (which is the condition number)
with at least η, a suitably selected threshold.
In (Swevers et al., 1996), Swevers et al. introduce the concept
of periodic excitation. The excitation trajectory consists of a sum of
harmonic functions, i.e. a finite fourier series
N
X
aik sin(kωf t) + bik cos(kωf t) .
qi (t) = qi0 + (2.30)
k=1
Convex optimization
Global optimization
Simulation and
off-line programming
models describe the kinematics, which are used to calculate the motion
of the end-effector, and the dynamics, used to calculate the required
actuator torques for that motion. To describe both kinematics and
dynamics in a sufficiently accurate way, the geometrical, kinematical
and inertial parameters should be identified. Based upon these models
the path planner can generate an optimal trajectory which realizes the
desired motion within the workspace constraints and maximal velocity,
acceleration and actuator torque. Finally, the robot controller should
execute the trajectory with minimal tracking error. To perform this,
both path planner and robot controller should use an accurate dynamic
2.10. Applications of dynamics models 47
Model-based control
2.11 Conclusions
This chapter presented an overview of the literature on experimental
robot identification. Different identification approaches using internal
and external models were introduced. Both approaches follow a sim-
ilar identification procedure. The model generation of the rigid body
dynamics is based on the integral formulation or on the differential
formulation. The latter is more appropriate for control purposes. The
obtained rigid body model is extended to account for additional ef-
fects, like friction. To ensure persistent excitation of the robot system,
several parameterizations for the excitation trajectories were presented
in literature which are optimized according to an appropriate criteria.
The most frequently used optimization criteria are the condition num-
ber of the identification matrix and the determinant of the covariance
matrix. In order to find the globally optimal excitation trajectory, a
short overview of convex and global optimization techniques was given.
The parameter estimation step of the identification procedure can be
done off-line or on-line. The most widely known off-line estimation
techniques are the least squares estimator, the weighted least squares
estimator and the maximum likelihood estimator. When the estimation
is done on-line, the recursive least squares estimator and the extended
Kalman filter are frequently used. Finally, some applications for dy-
namic models in the domain of optimal path planning, model-based
control, and simulation and off-line programming were presented.
Experimental robot identification:
3
practical issues
3.1 Introduction
Literature has presented several approaches to experimental robot iden-
tification, which all have their specific advantages. When we proceed
from theory to a practical application, final choices have to be made
to fill in the different elements of the identification procedure. They
should be integrated in order to become a coherent procedure.
This chapter works out the identification procedure in more de-
tail and applies it to the identification of an industrial manipulator.
51
52 Experimental robot identification: practical issues
robot base
The rigid body dynamics are the central part of the manipulator struc-
ture. The inverse dynamics equation
gives the required torque for a desired motion of the robot links. The
equations can be derived according to the recursive Newton-Euler for-
mulation or the Lagrange formulation. To obtain linearity in the un-
known parameters, an appropriate parameterization must be chosen
instead of the classical parameters (mi , ci and IiC ). In this work, the
barycentric parameters and the Newton-Euler parameters are used.
Barycentric parameters
k
j
Ci lij
ci
lil
l
Oi
Link body i
with lij the joint vector which locates the connection point of body
j on link body i. Since this vector is only defined for consecutive
bodies, the notation is extended to all the indices k, defining
lik = lij for i < j ≤ k.
Newton-Euler parameters
• The mass mi
As depicted in figure 3.1, the dynamic robot model includes more com-
ponents than only the link inertias. The rigid body dynamics are cer-
tainly the most complex component which is extensively discussed in
3.2. Model generation 57
The following effects affect the accuracy of the dynamic model and
should be taken into account:
The results from the literature survey will not revisited here, but ap-
propriate model extensions for these effects will be given in section 3.7.
The discussion will be based on measurement results. This makes it
possible to compare different alternatives and draw conclusions on the
performance of a individual model description. Linearity in the un-
known parameters will be a very important criteria.
58 Experimental robot identification: practical issues
The second step in the identification procedure is the design and exe-
cution of a robot excitation experiment. Accurate robot identification
requires specially designed experiments. Experiment design includes
choosing a trajectory parameterization and fixing the corresponding
optimal trajectory parameters. In the design of an identification exper-
iment, it is essential to consider whether (1) the excitation is sufficient
to provide accurate and fast parameter estimation in the presence of
disturbances, and (2) whether the processing of the resulting data is
simple and yields consistent and accurate results. This section discusses
the approach used in this work and shows how both requirements are
satisfied if the robot excitation is periodic. The fixing of the optimal
trajectory parameters is the subject of the following section.
where K is the number of samples per period, the index k and the
subscript m indicate the k-th sample of the m-th period. Knowing
the noise variance is valuable information for the maximum likelihood
parameter estimation discussed below. The variance of the noise on
the averaged joint position and actuator torque measurements is esti-
mated by dividing the equations (3.9) and (3.10) by M . Noise results
in a non-systematic error that can be reduced as much as desired by
measuring for a longer time and averaging the measured position and
torque signals over more periods.
The calculation of the joint velocities and accelerations can be per-
formed by analytical differentiation of the measured joint angles. This
is possible because these signals are periodic, finite Fourier series.
N
X
q̇i (t) = (ai,k kωf cos(kωf t) − bi,k kωf sin(kωf t)) (3.11)
k=1
XN
−ai,k k 2 ωf2 sin(kωf t) − bi,k k 2 ωf2 cos(kωf t)
q̈i (t) = (3.12)
k=1
τ = I q̈ (3.13)
where I is the only unknown parameter. Figure 3.3 shows two ap-
proaches for the excitation. If the sample points are spread over the
full acceleration range, the situation on the left is obtained. The es-
timated response (solid line) deviates from the true response (dashed
line) due to the noise on the individual sample points. A better al-
ternative is shown on the right side of the figure. The sample points
are chosen close to the extreme values of the acceleration q̈min and
q̈max . The repetition of the sample points, also realized by peri-
odic excitation, reduces the noise level. As a result, the estimated
response is less sensitive to the noise.
3.4. Generation of the excitation trajectory 63
torque
torque
qmin qmax
:
acceleration acceleration
The actuator torque and velocity are limited by physical and tech-
nical characteristics of the motor and the reduction. Some of the limits
ensure a certain lifetime of the drive under normal operation, other
prevent the motor and gear from destruction.
The last constraint concerning the flexibilities is impossible to quan-
tify and include since we only consider rigid body dynamics in this
work. It is however very important to have measurements which are
consistent with the used model. Otherwise, the unmodelled but ex-
cited dynamics will result in large estimation residuals. Therefore, we
should be very careful when designing the excitation experiment. This
remark imposes an important restriction on the meaning of optimality.
A trajectory which is optimal according to the optimization cost func-
tion and satisfies the first constraints, will probably not be optimal for
the last constraint.
Now that the requirement of persistent excitation is explained and
the constraints defined, the problem of finding the trajectory param-
eters can be tackled. The trajectory parameters can be fixed through
optimization (Swevers et al., 1997), or by means of a heuristic solution.
Both alternatives are discussed in the following two sections.
The first alternative describes the problem of finding the optimal ex-
citation trajectories as an optimization problem. A cost function or
optimization criterion is defined which is a measure of the goodness of
the trajectory as a function of the trajectory parameters. Constraints
are added which express the physical limitations of the manipulator.
Finally, optimization techniques solve the problem by optimizing the
cost function but also satisfying the constraints.
In this work, the covariance matrix C of the parameter estimates is
optimized. Since this matrix cannot be used directly as an optimization
3.4. Generation of the excitation trajectory 65
( )
q̇max q̈max
|Ak | ≤ min qmax , , . (3.22)
kωf k 2 ωf2
This means that the higher k is, the smaller the amplitude Ak
will be for a given maximal velocity and acceleration. An optimal
harmonic k can be found which maximizes the use of both the
velocity and acceleration range.
The phase angle determines the time shift between the different
harmonic terms. An appropriate choice of the phase angles allows
to obtain an optimal distribution of the minima and maxima over
the measurement period.
original reversed
q q
time time
The discussion shows that it is not straightforward to find the best ex-
citation trajectory. The most important limitations for the experiment
design are summarized here.
3.4. Generation of the excitation trajectory 71
The standard deviation of the parameters are the square root of the
variances found on the diagonal of this covariance matrix.
3.6 Validation
Validation is a very important aspect to check the general applicability
of a developed identification procedure. It is however not frequently dis-
cussed in literature. Although validation doesn’t influence or improve
74 Experimental robot identification: practical issues
used for this purpose is the total root mean squared (RMS) pre-
diction error and is calculated in the following way:
v
u
u1 X K
∆τRM S = t ε2k (3.30)
K
k=1
r
1
= (τ − Φ(q, q̇, q̈)θ)T (τ − Φ(q, q̇, q̈)θ). (3.31)
K
K is the number of sample points in the trajectory. The RMS
prediction error for each torque signal gives an idea of the un-
certainty on the torque prediction. The criterion value should be
compared to the noise level on the actuator torques which can be
estimated using equation (3.10). The closer the two values are to
each other, the better the measured dynamics are explained by
the model.
The industrial manipulator KUKA IR 361 is used to carry out the ex-
periments. This is a six degree-of-freedom manipulator with a payload
capacity of 8 kg. Only the first three robot axes are considered in
the experiments. The robot is equipped with an internal spring which
compensates the gravitation for the second link.
1.5
0.5
Position (rad)
−0.5
−1
axis 1
axis 2
axis 3
−1.5
−2
0 1 2 3 4 5 6 7 8 9 10
Time (s)
During the experiment the encoder positions and the motor cur-
rents are measured. The motor currents are analog signals. In order to
avoid aliasing, they are filtered using 8th-order analog low-pass But-
terworth filters with a cut-off frequency of 40 Hz, before their A/D-
conversion. The phase shift introduced by these filters is compensated
for digitally (Swevers et al., 1997).
1
Compliant Motion Research And Development Environment
3.7. Experimental results 79
1.5
0.5
Position (rad)
−0.5
−1
−1.5
−2
−2.5
0 5 10 15 20 25 30 35 40 45 50
Time (s)
Table 3.1: RMS of the actuator torque prediction errors for the
excitation trajectory
Table 3.2: RMS of the actuator torque prediction errors for the
validation trajectory
2 ∗
The parameters indicated with a include a contribution of the actuator rotor
inertias
3.7. Experimental results 81
Frame α β θ a d
joint 1 3.141593 0 0 0 1.020
joint 2 1.571636 0 0 -0.000207 0
joint 3 0.000052 0.000209 -1.570796 0.480123 0
the reference model, which does not take into account the kinematic
calibration. This result can be explained by the fact that in our case
the kinematic errors are relatively small. Therefore the increased com-
plexity cannot be justified. Moreover, the identification matrix has
become very badly conditioned. A closer look reveals that the four ad-
ditional barycentric parameters are not very well excited, resulting in
an identification matrix which is close to singularity. Since the torque
contribution of the additional parameters will be very small anyway,
it makes no sense to extend the dynamic model with these additional
parameters.
Consequently, we cannot conclude that taking into account the
kinematic errors results in a significant improvement of the dynamic
model, i.e. no better prediction of the required actuator torques for
a given trajectory is obtained. It is important to emphasize that a
kinematic calibration remains necessary to guarantee a good position
accuracy. In this respect, a dynamic calibration is complementary to
the kinematic calibration.
Tables 3.1 and 3.2 prove that failing to include the rotor inertia as a
separate parameter increases the actuator torque prediction error. The
torque prediction and the corresponding prediction error are shown in
figure 3.7. The effect is clearly visible in the prediction error for axis
three.
100
0
0
−50
−100
−200 −100
0 2 4 6 8 10 0 2 4 6 8 10
400 50
Torque axis 2 (Nm)
200
0 0
−200
−400 −50
0 2 4 6 8 10 0 2 4 6 8 10
100 40
Torque axis 3 (Nm)
50
20
0
0
−50
−100 −20
0 2 4 6 8 10 0 2 4 6 8 10
Time (s) Time (s)
Model with rotor inertia
Measured and predicted torque Prediction error
200 50
Torque axis 1 (Nm)
100
0
0
−50
−100
−200 −100
0 2 4 6 8 10 0 2 4 6 8 10
400 50
Torque axis 2 (Nm)
200
0 0
−200
−400 −50
0 2 4 6 8 10 0 2 4 6 8 10
100 40
Torque axis 3 (Nm)
50
20
0
0
−50
−100 −20
0 2 4 6 8 10 0 2 4 6 8 10
Time (s) Time (s)
rotation axis
second link
q2
l
gravity
compensation
spring
by the actuator of the second link (figure 3.8). For robots which are
designed to handle heavy loads, a passive pneumatic weight compen-
sation system is often used to support the upper arm motor when the
arm is inclined. In the case of small industrial robots, as is the case in
this work, mostly a gravity compensation spring is used.
In the case of rotational joints, the torque generated by the gravity
compensation spring is a complex nonlinear function of the angular
position of the second joint q2 and the spring parameters:
p
k( l2 + r2 − 2 l r cos(q2 ) − l0 )l r sin(q2 )
τspring = p (3.36)
l2 + r2 − 2 l r cos(q2 )
where k is the stiffness of the spring, l0 is the initial length when the
spring is unloaded, r is the radius of the lever, and l the distance
between the joint axis and the mounting point of the spring. This
nonlinear function and the low sensitivity of spring force for changes in
its parameters make the estimation of the real spring parameters from
noisy data cumbersome.
Ganseman (Ganseman, 1998) presented a different modelling ap-
3.7. Experimental results 87
proach. The torque resulting from the combined effect of gravity and
a gravity compensation spring can be approximated by means of a se-
ries of Ns harmonically related sine and cosine functions of q2 . The
resulting torque on the second joint can then be modelled as:
Ns
X
τspring = An2 cos(nq2 ) + Bn2 sin(nq2 ) (3.37)
n=1
Example 3.4
In the case of the KUKA IR 361 robot, only the fundamental sine
and cosine functions and their first and second harmonics have to be
considered (i.e. Ns = 3 in equation (3.37)) for accurate modelling,
yielding 6 additional parameters: An2 , Bn2 for n = 1, 2, 3.
This modelling approach suffers from the fact that it does not give con-
sistent parameter estimates for different excitation trajectories. This is
an indication that equation (3.37) models not only the compensation
spring torque, but also some unmodelled dynamic effects.
The model description can be improved if more a priori knowledge
is available. When the lengths r and l are known, equation (3.36) can
be rewritten to
l r sin(q2 )
τspring = l r sin(q2 )k − p P0 (3.38)
l2 + r2 − 2l r cos(q2 )
where P0 = k l0 . This equation is linear in the unknown parameters k
and P0 . This physical parameterization is much more interesting be-
cause it is linear in the unknown parameters and it fits closer to the real
behavior of the spring. Furthermore, the estimated parameters of the
model can be compared to a priori information. The model reduction
step reveals that the first term in equation (3.38) is linearly related
with the torque contribution of the barycentric inertial parameter b2,z
related to the center of gravity of the link on which τspring is working.
In order to obtain a minimal parameter set, the coefficients of sin(q2 )
are combined resulting in a new model parameter grav1 = l r k −g b2,z .
Example 3.5
For the KUKA IR 361 the following a priori information is avail-
able: l = 488 mm and r = 100 mm. The parameters k and l0 of
88 Experimental robot identification: practical issues
3.7.5 Friction
400
300
200
100
Friction torque τf,1 (Nm)
−100
−200
−300
−400
−500
−3 −2 −1 0 1 2 3
Friction modelling
Literature frequently presents the classical model for the friction term
τf (q̇) which consists of Coulomb and viscous friction:
The figure 3.10 confirms that this gives a better approximation (dash-
dotted curve). More model extensions are presented in literature (sec-
tion 2.5.3) which give a better approximation of the friction charac-
teristic. However, the creation of a comprehensive model is rather
complicated. Friction coefficients are very difficult to measure. In ad-
dition, they depend on the temperature, lubrication and wear-out of
gears and hence change with time.
3.7. Experimental results 91
40
30
20
Friction torque (Nm)
10
−10
−20
measured
Coulomb + viscous
−30 viscous + velocity1/3
−40
−10 −8 −6 −4 −2 0 2 4 6 8 10
Joint velocity (rad/s)
Besides the dependency on the velocity, the friction torque also depends
on the motor temperature and on the load. Figure 3.11 shows that
robot warm-up decreases the friction torque. It is therefore important
to guarantee a good warm-up of the robot manipulator and to ensure
that the temperature remains constant during the measurement. The
influence of adding a payload is shown in figure 3.12. A higher payload
increases the friction torque.
Both figures confirm that the general shape of the friction charac-
teristic remains similar, but that the friction coefficients change. It is
therefore not a good idea to use a measured friction characteristic as
a priori knowledge. On the contrary, it is necessary to estimate the
friction parameters in each identification experiment in order to obtain
accurate results.
92 Experimental robot identification: practical issues
150
100
50
Friction torque τf,4 (Nm)
−50
−100
cold robot
after warm−up
−150
−5 −4 −3 −2 −1 0 1 2 3 4 5
Joint velocity (rad/s)
40
30
20
Friction torque τf,6 (Nm)
10
−10
−20
without payload
−30
with payload
−40
−10 −5 0 5 10
Joint velocity (rad/s)
−5
0 1 2 3 4 5 6 7 8 9 10
−5
0 1 2 3 4 5 6 7 8 9 10
Time (s)
3.8 Conclusions
This chapter discussed the experimental identification procedure in
more detail. The use of barycentric parameters and Newton-Euler
parameters gives a rigid body model that is linear in the unknown
parameters. The experiment design is based on periodic excitation
which has several advantages over the use of traditional polynomial
trajectories. Finding a set of optimal trajectory parameters remains
the main problem. Both a solution by optimization and a heuristic
solution were discussed from a practical point of view. The parameter
estimation is based on the maximum likelihood estimator which allows
us to calculate statistical properties. Since the dynamic model is lin-
ear in the unknown parameters, the estimation simplifies to a weighted
least squares estimation. Finally, validation criteria were defined to ex-
press the torque prediction accuracy and the parameter value accuracy.
The presented identification procedure was applied experimentally
to an industrial manipulator. The experimental results show that
a kinematic calibration does not affect the accuracy of the dynamic
model. On the other hand, the inclusion of the rotor inertia as a
separate parameter gives an improvement. Furthermore, the friction
characteristic was experimentally measured and a more suitable model
for the gravity compensation spring was presented. Wherever possible,
the obtained parameter estimates are compared to the available a pri-
ori information. A good correspondence was found, which proves the
validity of the identification approach.
Combining internal and external model
4
Knowing is not enough; we must apply.
Willing is not enough; we must do
Johann Wolfgang von Goethe
4.1 Introduction
The previous chapter discussed the classical approach to robot identifi-
cation where the robot inertial parameters are estimated from motion
data and actuator torque measurements. Both signals are measured
by ‘internal’ sensors. The torques are not measured directly, but es-
timated from the actuator currents. A difficulty with this method is
that the actuator torque constants are only approximately known and
that the torque estimation is corrupted by joint friction. Since the sig-
nals are measured at the actuator side, the full drive train including
97
98 Combining internal and external model
the rotor inertia and the gear transmissions have to be included in the
dynamic model. All flexibilities and nonlinearities that appear between
the actuator and the link bodies negatively affect the accuracy of the
manipulator.
Based on the type of measured inputs and outputs, two different models
can be defined: external and internal models. Internal models relate
actuator torques or forces (outputs) to the robot motion (inputs):
τi = Ψi (q, q̇, q̈)δi . (4.1)
The external model relates robot motion (inputs) to reaction forces
and torques measured at the base of the robot (outputs). It can be
easily obtained by projecting the force and torque vectors at the first
joint on the axes of the inertial reference frame attached to the base
plate. As a result, the external model equations have a form similar to
equation (4.1) :
τe = Ψe (q, q̇, q̈)δe . (4.2)
100 Combining internal and external model
Equations (4.1) and (4.2) describe the forces and torques due to the
motion of the rigid bodies. They are linear and minimal in the para-
meters, due to the use of barycentric parameters (Fisette et al., 1996).
The internal model has to be extended with some additional effects.
It is common to include a friction model which consists of Coulomb
and viscous friction (see equation (3.43) in chapter 3). If the robot
manipulator is equipped with a gravity compensation device, an ap-
propriate parameterization has to be used in the internal model. This
has been discussed in detail in section 3.7.4. We assume that the vector
δf g contains the additional parameters for the friction and the gravity
compensation spring.
Chenut et al. (Chenut et al., 2000) show that a dynamic robot
model based on barycentric parameters, and combining internal mea-
surements (actuator torques and forces) and external measurements
(reaction forces and torques of the robot to its base plate measured by
a external base force/torque sensor) can be formulated as the following
set of linear equations:
with
τi
τ= , (4.4)
τe
a column vector containing actuator torque measurements τi and base
sensor force/torque data τe . The parameter vector θc appearing in the
combined model
δi
θc = δf g (4.5)
δe \ δi
contains all inertial parameters, all friction parameters and gravity
compensation parameters, and can be divided in three subsets:
The matrix Ψi is the rigid body regression matrix of the internal model
defined in equation (4.1). The columns of Ψe1 and Ψe2 correspond to
the columns of the regression matrix Ψe of the external model (equa-
tion (4.2)) related to the elements of δi and δe \ δi respectively. Ψf g
models the friction torques and gravity compensation devices.
The considered test case is a KUKA IR 361 robot (figure 4.1) placed on
a KISTLER 9281 B21 force/torque platform (Kistler Instrumente AG)
which is provided with sensors able to measure the three components
of the forces and the three components of torques between the base
plate and the first link of the robot.
Force/torque
platform X
In the experiments, only the first three robot axes are considered.
Parameter vector δi contains 14 independent barycentric parameters.
4.3. Experimental identification results 105
Parameter accuracy
The columns of table 4.1 present the parameter values resulting from
the three identification experiments using combined, internal, and ex-
ternal model respectively. In the rows, first all parameters δi appearing
in both internal and external model are given, followed by the para-
meters of the gravity compensation device and friction δf g and finally
the parameter set δe \ δi . Table C.1 of appendix C gives the physical
meaning of the different parameters.
Most of the parameter values obtained with the three models lie
very close to each other. This result indicates that all models are
converging to the same parameter values and that the measurements
of the actuator torques and force/torque platform are consistent, i.e.
the calibration constants for both kind of signals are probably correct.
The model parameters are estimated using the Markov estimator.
The variances on these parameters can be calculated explicitly based
on knowledge of the model parameters and of the variance of the noise
on the torque/force data (Swevers et al., 1997). Comparison of these
variances (table 4.1) shows that combining the internal and external
models and measurements yields a significant improvement of the ac-
curacy of the parameter estimates: the accuracy of the parameters
in the set δi is highly improved by the base platform measurements
since more measurements are taken into account in one parameter es-
timation problem. Actually, the combined model yields the best accu-
racy for each parameter in comparison to the internal and the external
model (Chenut et al., 2000). This conclusion can also be verified by
calculating a scalar measure of the parameter covariance matrices, e.g.
4.3. Experimental identification results 107
Figure 4.2 presents the actuator torque prediction for the excitation
trajectory using the combined model. The measured torque, shown in
the first column, was used in the identification, i.e. the measured torque
averaged over 16 periods to reduce the noise. The torque prediction
error is the difference between the measured and estimated torque.
This prediction error is small, except at velocity reversal because of
the insufficiently accurate friction model at low velocity. As could be
expected from the fact that the estimated parameter values do not
differ much between the different models, the torque prediction of the
internal and external model are practically equal. This is confirmed by
calculating the root mean square value of the torque prediction error
in table 4.2.
Figure 4.3 and table 4.3 give the corresponding results for the pre-
diction of the reaction forces and torques using external and combined
model. The results of the prediction are also very good. We conclude
that combining internal and external model does not significantly im-
prove the prediction of the reaction forces and torques. It should how-
ever be noticed that the noise level on the reaction forces is relatively
high in proportion to the force ranges. Concerning the excitation, we
could consider to change the identification trajectory or to measure
more periods. This option is not worked out here, because the identi-
fication already provided satisfying parameter estimates.
108 Combining internal and external model
0 0 0
50 50 50
0 0 0
Figure 4.2: Measured and predicted actuator torques and the cor-
responding prediction errors for the excitation trajec-
tory using the combined model
Table 4.2: Root mean squared actuator torque prediction errors for
the excitation trajectory
110 Combining internal and external model
0 0 0
X
0 0 0
Y
0 5 10 0 5 10 0 5 10
50 50 50
f (N)
0 0 0
Z
0 5 10 0 5 10 0 5 10
0 0 0
−200 −200 −200
X
0 0 0
Y
50 50 50
0 0 0
Z
Since this inequality holds for all vectors x which are different from a
zero vector, this is also true for all rows of the identification matrix.
This proves that the uncertainty on the actuator torque prediction
based on the parameter estimates from the combined model is smaller.
The validation step verifies if the identified parameter set is able to ac-
curately predict the actuator torque required to drive the robot along
a trajectory which is different from the excitation trajectory. The val-
idation trajectory has been defined before and goes through 20 points
randomly chosen in the workspace.
112 Combining internal and external model
0 0 0
0 20 40 0 20 40 0 20 40
200 200 200
Torque axis 2 (Nm)
0 0 0
50 50 50
0 0 0
0 20 40 0 20 40 0 20 40
Time (s) Time (s) Time (s)
Table 4.4: Root mean squared actuator torque prediction errors for
the validation trajectory
i.e. a reduced measuring time, to reach the same parameter and torque
prediction accuracy. This effect will be stronger if the signal-to-noise ra-
tio of the reaction force/torque measurements (external measurements)
is higher.
An important advantage of this combined model is that it also
allows to predict the robot base plate reaction forces/torques accurately
(see table 4.5). Figure 4.5 compares the measured values, the predicted
values, and the prediction errors for these reaction forces/torques. The
prediction errors are small with respect to the measured values.
0 0 0
0 0 0
50 50 50
fZ (N)
0 0 0
0 0 0
0 0 0
50 50 50
mZ (Nm)
0 0 0
0 20 40 0 20 40 0 20 40
Time (s) Time (s) Time (s)
forces and torques due to gravity are mixed with the sensor offsets. It is
practically impossible to remove the robot for every offset calibration.
The calibration of the offsets can be carried out as follows:
• Move the robot to a reference position, and reset the sensor signal.
• With the robot standing still, the forces in X and Y direction
and the torque around the Z axis should be zero.
• Gravity is the only force working in the Z direction when the
robot is not moving. By putting the measured force in Z direction
equal to zero in the reference position, the gravity load, which is
related to the total robot mass, disappears from the equations.
• The torques around X and Y axis experience a torque due to
gravity. Therefore, the offsets cannot be calculated from one mea-
surement. It can be realized by measuring both torques, moving
the first robot axis over 180 degrees, and measuring again. From
both torque measurements the remaining offsets can easily be
calculated.
4.5 Conclusions
Combining internal and external measurements in one robot identifica-
tion can improve the model accuracy, compared to identification based
on internal measurements only. The significance of the improvement
depends on the number of periods measured and on the quality of the
external reaction force/torque measurements.
More importantly, this combined approach yields models that allow
to accurately predict actuator torques and base plate reaction forces
and torques. Both of them are important for robot path planning and
optimization, especially in space robotics applications. In our case, we
cannot observe a significant improvement of the prediction of the actu-
ator torques and the reaction forces and torques by combining internal
and external model approaches. This indicates that the individual ap-
proaches are already sufficiently accurate.
The Canadian Space Agency (CSA) has adopted this new com-
bined experimental robot identification method to their SMT-robot
mounted on a force/torque platform. The purpose of this hydraulic
robot is to simulate on earth the behavior of the manipulator that
will be mounted on the International Space Station. For that purpose,
accurate prediction of the actuator torques is required to compensate
gravity as accurately as possible, in order to simulate zero gravity con-
ditions. Accurate prediction of the base plate reaction forces/torques is
required for the path optimization taking into account tight restrictions
on these reaction forces/torques.
118 Combining internal and external model
Robot payload identification
5
Experiment is the sole interpreter of the artifices of nature
Leonardo da Vinci
5.1 Introduction
119
120 Robot payload identification
with m the mass, [cx , cy , cz ]T the center of gravity expressed in the end
effector frame, and I the moments and products of inertia with respect
to the frame in the center of gravity. As already discussed in chapter 3,
the parameter estimation is significantly simplified if the identification
model is linear in the unknown parameters. By deriving the dynamic
robot model using the Newton-Euler coordinates (Atkeson et al., 1986),
the inertial parameters of the payload body are expressed with respect
to the end effector frame R. The ten ‘modified’ inertial parameters of
the payload are
R R R R R R T
θL = [m, sx , sy , sz , Ixx , Iyy , Izz , Ixy , Ixz , Iyz ] (5.6)
with m the mass, s the first order moments with respect to the end
effector frame, and I R the moments of inertia with respect to the frame
R of the end effector.
Using this parameter transformation, the equations for the wrench
of the payload executed on the end effector can be written as
v̇ee represents the linear acceleration of the end effector frame, and ωee
and ω̇ee are the angular velocity and acceleration respectively. These
equations are linear in the inertial parameters of the payload. The
transformation using the transpose of the Jacobian matrix will not
affect this linearity, such that the identification model can be written
as
B. Additional effects
Model (5.9) does not consider any losses in the motors and the trans-
missions, nor coupling between the actuator torques. These and other
effects are however essential for an accurate payload identification and
are described in this section.
τI = Im q̈M . (5.12)
τf = fv qM
˙ + fC sign(qM
˙ ). (5.13)
The net actuator torque which remains to drive the robot links
and the payload is:
τT = τM − τI − τf (5.14)
= τM − Im q̈M − fv q̇M − fC sign(q̇M ). (5.15)
τT and τG0 are the torques at the actuator and link side of the
transmission, respectively. The model of equation (5.17) is not
linear in the parameter η, requiring a nonlinear parameter esti-
mator. In this chapter, we will verify if this increase in complexity
is justified by more accurate parameter estimates.
Coupling between the actuator torques. The axes of the wrist of
many manipulators, and also of the considered robot, are mechan-
ically coupled in the sense that the motion of each wrist link is
determined by more than one wrist actuator. This coupling is de-
scribed as a known fixed linear transformation between the joint
and actuator space:
qG = V qM (5.18)
τG0 T
= V τG . (5.19)
Systematic errors can occur when one of these effects are neglected
or when the a priori information related to these effects is inaccurate.
Kinematic calibration can determine e.g. the coupling matrix V , but
other variables, e.g. rotor inertia, should be known a priori or should
be identified.
N X
X (τ − F(q(k), q̇(k), q̈(k), θu , θk ))2
θM L = arg min , (5.20)
θ στ2i
k=1 i∈ϑ
Experiment
with payload Determine
robot parameters
q, q, q t1 from separate
identification
experiment
Model generation and
parameter estimation
qrobot links
qfull
Derive payload parameters
from parameter estimates
payload parameters qL
Experiment Experiment
with payload without payload
t1 t2
q, q, q + -
torque contribution of
Dt payload and difference
in friction torque
payload parameters qL
(+ difference in friction parameters)
measured motion and torque data. This limits however the number of
practical usable trajectories: a different payload may require a different
excitation trajectory due to workspace limits. When an additional
mass is added to the robot, all measurements without a payload must
be redone. This is costly and time consuming. Another disadvantage
appears when the tracking error is larger for the measurement with
payload. In that case no correct compensation of the robot dynamics
is obtained.
t1 trobot links
q, q, q + -
torque contribution
Dt of payload
and friction torque
payload parameters qL
(+ friction parameters)
axis 1 2 3 4 5 6
fC [Nm] 33.4 32.6 19.6 28.3 21.9 18.6
fv [Nms] 99.1 121.8 58.8 32.5 10.4 3.6
The results are presented in table 5.2. The columns represent the ten
inertial parameters of the robot payload expressed with respect to the
center of gravity. The first row gives the true calibrated values for
the robot payload inertial parameters used for the simulation. The
subsequent rows give the estimated parameter values in the presence
of the different errors. In table 5.3, the deviations are expressed in
134 Robot payload identification
9 excited axes 9.819 23.8 88.4 -200.2 0.614 0.058 0.642 -0.159 -0.003 -0.005
excited axes 2 10.566 22.7 84.2 -185.9 0.673 0.113 0.643 -0.161 -0.000 0.004
Table 5.2: Estimated inertial parameter values when using incorrect a priori information or identification
model
135
136 Robot payload identification
qG =V qM (5.21)
τG =V T τG0 (5.22)
Inertial parameters (deviation from reference in percentage)
m cx cy cz Ixx Iyy Izz Ixy Ixz Iyz
1 torque constant 3 10.2 -5.6 -6.3 -7.4 9.4 78.8 1.0 2.0 -106.2 -137.1
torque constant 4 0.7 -0.8 -0.7 -3.7 13.9 125.9 1.8 1.2 -124.9 -89.8
torque constant 5+6 0.4 -0.5 -0.2 -1.7 -3.4 -20.1 -3.2 -1.2 -21.5 -10.1
torque constant 4-6 1.1 -1.2 -1.0 -5.4 10.4 105.0 -1.4 -0.0 -145.8 -99.4
torque constant 3-6 11.3 -6.7 -7.1 -12.3 19.3 179.1 -0.4 1.9 -243.1 -227.7
2 robot links -30.5 48.6 49.5 36.8 -12.5 -129.2 -8.6 -4.2 640.6 903.8
3 rotor inertia 2.6 -1.7 -2.7 -11.5 37.2 365.9 2.1 0.3 -265.0 -243.9
4 wrist coupling 0.4 1.1 -0.3 -1.8 2.8 26.4 -0.9 -0.5 144.7 -9.4
5 efficiency 90 0.7 6.9 1.4 1.7 -1.4 -7.7 1.1 -4.4 301.7 102.9
efficiency 95 -0.1 3.6 0.9 1.1 -1.1 -6.0 0.3 -2.3 152.2 55.48
6 joint friction -0.0 0.3 0.1 0.2 -1.7 -14.2 -0.2 0.1 53.8 11.9
7 known payload mass 0 3.7 3.4 19.1 -30.6 -296.0 1.3 2.0 541.8 471.9
idem 2 0 -0.1 -0.0 -6.8 10.2 105.7 -1.8 0.1 -173.2 -132.3
idem 3 0 1.0 -1.1 -6.2 10.4 107.4 -1.5 0.3 -132.9 -135.6
8 measurement bias 16.5 -11.1 -11.3 -12.8 11.5 90.7 1.6 2.2 -248.8 -250.7
9 excited axes 2.5 -0.9 -1.8 -0.9 0.2 -7.3 0.8 0.8 25.8 -32.0
5.4. Sensitivity analysis to deterministic errors
excited axes 2 10.3 -5.4 -6.4 -8.0 10.0 79.7 0.9 2.1 -84.7 -146.7
Table 5.3: Deviation of the estimated inertial parameters from the true value (expressed in percentage)
137
138 Robot payload identification
5. Transmission efficiency
The discussed model considers actuator friction only, i.e. neglects fric-
tion in the joints. The difference between the joint and actuator mo-
tion, and therefore also friction, is introduced by the wrist coupling.
Transformation of the actuator friction by means of the coupling matrix
introduces additional coupling friction torques that are approximately
2% of the actuator friction torques. Neglecting joint friction torques
introduces errors. In simulation, we assume that 25% of the friction
torques are in the joint, i.e. at the link side, which is an estimate of the
real distribution. The estimation including only actuator friction re-
sults in parameter values which are very close to the desired values. It
is concluded that modelling the friction in the actuator and in the joints
with only one friction model doesn’t introduce significant systematic
errors.
When in addition the base axes are excited, more measurements are
available to estimate the different parameters of the payload, yielding
a decreased sensitivity to an error on the a priori information, e.g.
inaccurately known motor torque constant or rotor inertia. Of course,
excitation of all robot axes in the payload identification experiment
requires a priori information about more inertial parameters (i.e. those
of the base axes) of which the accuracy is again crucial.
To obtain the result in table 5.2, the torque constant of the third
axis is changed and all six axes of the robot have been excited. The
parameter accuracy is clearly better than in the first case (see point 1.).
The previous section showed that the presence of some systematic er-
rors has a big influence on the actual parameter estimates. Although
there exists a direct, mostly linear, relation between parameter values
and torque prediction, expressed in equation (5.9), it turns out that
most systematic errors don’t have a significant influence on the actua-
tor torque prediction accuracy.
Figure 5.4 shows the torque prediction for a validation trajectory,
which is different from the excitation trajectory. The simulated torque
based on the exact model is compared with the predicted torque based
on the parameters estimated using the discussed payload identifica-
tion approach and erroneous a priori knowledge, i.e. inaccurate torque
constants for the actuators three to six and inaccurate estimates of
5.4. Sensitivity analysis to deterministic errors 141
0 5
−200
0
−400
−5
0 10 20 30 0 10 20 30
500 5
Axis 4 (Nm)
0 0
−500 −5
0 10 20 30 0 10 20 30
500 5
Axis 5 (Nm)
0 0
−500 −5
0 10 20 30 0 10 20 30
200 0.5
Axis 6 (Nm)
0 0
−200 −0.5
0 10 20 30 0 10 20 30
Time (s) Time (s)
Figure 5.4: Measured and prediction actuator torque and the cor-
responding prediction error
the inertial parameters of the robot links. The torque prediction er-
ror, plotted on the right side of the figure, is small compared to the
standard deviation of the noise and to the torque scale.
The parameter estimates are less sensitive to the model used to de-
scribe the losses in the manipulator. Traditionally, losses are assumed
to be concentrated in the actuator and are described by viscous and
Coulomb friction. If the real transmission is characterized by an effi-
ciency ratio or friction is present in the joint, only a small systematic
error is introduced in the parameter estimation.
The company Amatec GmbH has put at our disposal a software mod-
ule for the robot controller that allows us to apply periodic excitation
trajectories. Unfortunately, the module does not provide full freedom
in choosing the trajectory parameters. The input parameters for the
144 Robot payload identification
excitation trajectory are the position ranges of the different joint axes.
Based on this input and on the maximal velocity and acceleration, the
software module chooses the number of harmonics and determines the
trajectory parameters. The number of harmonic terms is limited to
only two terms per axis. Mostly only the first harmonic and the 20th
or the 25th harmonic are included. The period is fixed to 30 seconds
and the sampling period is 12 ms, yielding 2499 sample points per pe-
riod. For every experiment, ten periods are measured after a transient
period of 60 seconds.
Identifiability of parameters
Since the excitation software does not allow to move the first two joint
axes, the excitation is limited to the last four axes of the manipulator.
This is no strong restriction because theoretically the excitation of these
four axes is sufficient to identify all inertial parameters of the payload.
Notice that the excitation of the third robot axis is required in order
to estimate the payload mass. This means that the mass appears only
in the dynamic equations of the third axis as a separate parameter.
Payload configuration
Parameter Small Medium Large
m [kg] 5.8444 9.579 13.555
cx [mm] 53.7 24 −95.1
cy [mm] 201.4 90 25.4
cz [mm] −362.6 −202 −272.1
Ixx [kgm2 ] 0.2961 0.612 0.102
Iyy [kgm2 ] 0.0502 0.063 1.028
Izz [kgm2 ] 0.2871 0.637 1.091
Ixy [kgm2 ] −0.0709 −0.158 0.267
Ixz [kgm2 ] 0.0096 −0.002 −0.003
Iyz [kgm2 ] 0.0361 −0.008 0.001
Table 5.5: Exact inertial parameter values for various payload con-
figurations
Figure 5.7: Small (left) and large (right) configuration of the ref-
erence payload
40 g, and the positions of the center of gravity are known within a few
millimeters. The standard deviation confirms the goodness of the re-
sults. The exact parameter values are within two standard deviations
from the estimated values. The large variation on the mass estimate
can partly be explained by the warm-up effect (see also section 5.6.3):
the estimated value of the mass tends to increase as the robot gets
warmed up. The last column of table 5.6 shows that also for a single
experiment the estimated parameter estimates are already close to the
exact values.
200
100
Axis 3 (Nm)
−100
−200
−300
0 5 10 15 20 25 30
100
50
Axis 4 (Nm)
−50
−100
0 5 10 15 20 25 30
100
50
Axis 5 (Nm)
−50
−100
0 5 10 15 20 25 30
100
50
Axis 6 (Nm)
−50
−100
0 5 10 15 20 25 30
Time (s)
Table 5.7: Root mean squared prediction error for the actuator
torque due to the payload
The results for this approach are first discussed for the medium refer-
ence payload. The identification procedure estimates the ten payload
parameters and the friction parameters. All other inertial parameters
are taken into account as a priori knowledge for the torque compensa-
tion.
To present the experimental results, the same procedure as above
is applied. The results given in table 5.8 are calculated from ten dif-
ferent payload identification experiments. The estimated parameter
values are again close to the exact values. Compared to the previ-
ous approach, the standard deviations on the parameter estimates are
larger. This indicates that a model based compensation of the robot
link torques does not perform as well as the measurement based ap-
proach. The payload mass estimate is the furthest away from the exact
value. The minimal and maximal mass estimate obtained in the ten
experiments are respectively 9.38 kg and 9.87 kg. This large deviation
is probably due to a weak excitation of the system with respect to this
parameter and the variation of the actuator torque constants. The
estimation results for a single experiment prove that it is possible to
5.6. Experimental results 151
0 0
−200 −200
−400 −400
−600 −600
0 10 20 30 0 10 20 30
200 200
Axis 4 (Nm)
0 0
−200 −200
0 10 20 30 0 10 20 30
200 200
Axis 5 (Nm)
0 0
−200 −200
0 10 20 30 0 10 20 30
100 100
Axis 6 (Nm)
0 0
−100 −100
0 10 20 30 0 10 20 30
Time (s) Time (s)
Figure 5.9: Measured and predicted actuator torques for the vali-
dation trajectory
5.6. Experimental results 153
In this section, some of these choices are discussed based on the exper-
imental experience.
Until now, all of the presented results were obtained using the medium
payload configuration. The results and conclusions are however gener-
ally valid. To prove that the presented payload identification approach
also applies to other payload configurations, this section gives the iden-
tification results for a small and a large payload configuration.
Table 5.10 shows the estimated parameter values for the small pay-
load. Although some individual parameter values are relatively small,
their estimates are very accurate. For this configuration, the differences
between estimated and exact parameter values are even smaller than
one standard deviation. Similar to the results of the medium payload
configuration, the standard deviations on the mass m and on the mo-
ments of inertia Ixx and Iyy are relatively large. This indicates that
the excitation does not perform well with respect to these parameters.
The same conclusions apply to the results of the large payload con-
figuration in table 5.11.
5.6. Experimental results 155
Table 5.11: Exact and estimated inertial parameter values for large
payload configuration
156 Robot payload identification
38 50
Axis 3
36 40
34 30
32 20
5 10 15 20 5 10 15 20
28.5 13.5
13
28
12.5
Axis 4
27.5
12
27
11.5
26.5 11
5 10 15 20 5 10 15 20
9.8 11
9.7
10
9.6
Axis 5
9.5 9
9.4
8
9.3
9.2 7
5 10 15 20 5 10 15 20
11 2.6
10.8 2.4
10.6 2.2
Axis 6
10.4 2
10.2 1.8
10 1.6
5 10 15 20 5 10 15 20
Number of measurement Number of measurement
14.4
14.2 −0.096
14
x
m
c
13.8 −0.098
13.6
13.4 −0.1
5 10 15 20 5 10 15 20
0.0256
0.0254
−0.27
cy
z
0.0252
c
0.025
−0.275
0.0248
5 10 15 20 5 10 15 20
0.25 0.29
0.2 0.285
Ixx
xy
0.15 0.28
I
0.1 0.275
0.05 0.27
5 10 15 20 5 10 15 20
−3
x 10
1.25 −2
−4
1.2
−6
Iyy
Ixz
−8
1.15
−10
1.1 −12
5 10 15 20 5 10 15 20
1.14 0.03
1.12 0.029
Izz
yz
1.1 0.028
I
1.08 0.027
1.06 0.026
5 10 15 20 5 10 15 20
Number of measurement Number of measurement
5.7 Conclusions
The presented experimental robot payload identification method is
based on the robot identification method described in chapter 3. The
experiment design using periodic trajectories and maximum likelihood
parameter estimation is adopted. The modelling approach however is
a little bit different. Since we are mainly interested in the payload pa-
rameters, there is no need to identify the full manipulator again. The
torque contribution of the robot links is compensated for based on a
priori known dynamic robot model. The rotor inertias and inertial pa-
rameters of the links are set to a priori determined values. This results
in an identification model that only depends on the payload inertial
parameters and the friction parameters.
Experimental results show that this payload identification approach
satisfies the requirements of the industrial users. The obtained iner-
tial parameter estimates correspond to the physical values and the re-
sulting dynamic model is able to provide an accurate actuator torque
prediction. The first requirement is more difficult to achieve because
the parameter estimation is very sensitive to the quality of all a pri-
ori knowledge. An accurate robot identification should precede the
payload identification step.
The experimental results cannot prove that the inclusion of the
transmission efficiency in the identification model yields significantly
better parameter estimates; a friction model including Coulomb and
viscous friction is therefore sufficient to describe the losses in the sys-
tem. It is observed that the actuator torque constants change with
the warm-up of the robot. This negatively affects the accuracy of the
payload identification approach.
160 Robot payload identification
Trajectory compensation
6
The performance of any real system is limited by its constraints
E. Goldratt
6.1 Introduction
Industrial robots have become an indispensable means of automation
to increase productivity and flexibility of production systems. The
ever increasing quality standards and international competition im-
pose higher requirements on reliability and positioning accuracy, and
above all on velocity of industrial robots. Moreover, modern applica-
tions like laser cutting and welding require an increasing path tracking
accuracy. For some applications, such as spray painting, it is necessary
to move the end effector of a manipulator along some desired paths
with predescribed speed.
161
162 Trajectory compensation
qd qact
Inverse qd,comp System
qd qact
Controller
qd
system qd,comp + qact
Robot
The dynamic robot model describes the relation between the robot
motion and the required actuator torques. It includes nonlinearities
like friction, centrifugal, gravitation, and Coriolis forces. The equations
of the inverse robot dynamics can be written in the following form
The inverse dynamic robot model can be written in a linear form which
forms the basis for an accurate and efficient experimental parameter
identification. These identification techniques were extensively dis-
cussed in chapters 3 and 4. The experimental results showed that
the identified inverse dynamic robot models allows accurate actuator
torque predictions for any desired motion.
The current controller is the most inner loop, and has a high band-
width. Since the most important nonlinearities are due to the me-
chanics, which have a smaller bandwidth, the dynamics of the current
controller may be neglected.
The analog velocity controller feeds back the measured motor ve-
locity and compares it with the desired velocity. A PI structure with
tachometer feedback has been identified as an appropriate model for
the analog velocity controller, represented as Gcontr . Its estimation will
be discussed in section 6.3.2.
In the outer loop, the position controller is implemented digitally,
is completely known, and allows us to add a velocity feedforward to the
position controller. This extra input is used to apply the compensation
signal.
Figure 6.2 shows the global scheme of the robot and its controller with
the pre-compensation in the off-line part. Nonlinear pre-compensation
uses an inverse model of the closed loop system to filter the desired
trajectory. This inverse model consists of the inverse dynamic robot
model, describing the rigid body dynamics and joint friction, and the
inverse model of the analog velocity controller. The current controller
dynamics are neglected.
The desired actuator torques τd required to generate the desired
166 Trajectory compensation
The considered test case is a KUKA IR 361 robot (figure 6.3). Only the
first three robot axes are considered.
The position controller is digitally implemented in the COMRADE
software (Van de Poel et al., 1993). This flexible control environment
allows us to add a velocity feedforward. The digital controller runs at a
sampling rate of 150 Hz. The standard industrial controller RC 22/42
is maintained for the analog control levels.
168 Trajectory compensation
30
GETFE
25 Gcontr
Amplitude (dB)
20
15
10
0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Frequency (Hz)
50
Phase (degrees)
−50
−100
−150
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Frequency (Hz)
The reference and validation trajectories are circles in vertical and hor-
izontal planes. These trajectories have a simple analytic description in
the Cartesian space, and yield periodic and continuous joint trajecto-
ries. This allows time domain averaging and frequency domain calcu-
lations of the velocity and accelerations, which is more accurate than
applying numerical differentiation techniques.
The reference trajectory is executed 15 times. The measurements of
this excitation are averaged over all the measured periods and used to
fine-tune the pre-compensation scheme. This fine-tuning is necessary
because the identification of the inverse model was performed in sep-
arate parts. Scaling factors that exist between these submodels have
to be determined using measurements of the closed loop behavior. In
order to obtain optimal results, it is also necessary to compensate for
the transport delays due to the digital implementation of the position
controller. This is done by taking into account a time shift of approxi-
mately 3 ms for the desired position signal, which is smaller than the
sampling period of the position controller.
The pre-compensation method is validated using several circular
trajectories. These validation trajectories differ from each other in cir-
cle diameter, position and orientation in the workspace, and path veloc-
ity. The performance of the industrial controller with pre-compensated
velocity feedforward and normal velocity feedforward are compared.
The results are evaluated both at the joint level and at the Cartesian
level. At the joint level, the joint position tracking error qd −qact is used.
The tracking error is a measure of the remaining modelling errors and
disturbances, and hence the achieved control performance. Figure 6.5
shows the tracking error qd − qact with and without compensation of
the nonlinear dynamics for a circle with a diameter of 40 cm executed
at a velocity of 600 mm/s in a horizontal plane. The corresponding
maximum absolute values of the tracking error are listed in table 6.1.
These values clearly show the improved control performance.
170 Trajectory compensation
x 10
−3 Without precorrection
6
4
Joint position tracking error (rad)
−2
Joint 1
−4 Joint 2
Joint 3
−6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
Time (s)
x 10
−3 With precorrection
6
4
Joint position tracking error (rad)
−2
Joint 1
−4 Joint 2
Joint 3
−6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
Time (s)
Table 6.1: Maximum absolute value of tracking error for circle with
diameter 40 cm at a velocity of 0.6 m/s in the horizontal
plane
Figure 6.6 compares the measured position tracking error for joint
axis 3 before trajectory compensation to the joint velocity. We observe
a small bend in the tracking error near velocity reversal, which can be
explained by the Coulomb friction. In figure 6.5, we see that this effect
is significantly reduced.
To have a measure of the improvement of the absolute path track-
ing accuracy, the Cartesian positions have been calculated from the
measured actuator positions using the forward kinematics. Possible
deviations due to kinematic errors and joint flexibilities are not con-
sidered for simplicity. An external measurement of the absolute end
effector accuracy would also take into account these deviations. Fig-
ure 6.7 shows the calculated deviations from the desired trajectory for
the given circle.
The distance between the measured point (x, y, z) on the trajectory
and the corresponding point (xd , yd , zd ) on the desired trajectory in
Cartesian coordinates is given by the Euclidean distance:
p
di = (xd (i) − x(i))2 + (yd (i) − y(i))2 + (zd (i) − z(i))2 . (6.4)
To evaluate the experiments, the following performance criteria are
defined:
which gives the mean distance between the desired and the cor-
responding actually measured position, and N is the number of
measured points on the trajectory.
172 Trajectory compensation
−3
x 10
6
Position tracking error (rad)
−2
−4
−6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
2
Velocity axis 3 (rad/s)
−1
−2
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
Time (s)
Figure 6.6: Relation between tracking error and velocity for joint
axis 3 (without the pre-compensation)
6.3. Experimental verification 173
Cartesian errors
3
X−error (mm)
2
1
0
−1
−2
0 0.5 1 1.5
2
Y−error (mm)
−1
−2
0 0.5 1 1.5
1
Z−error (mm)
−1
0 0.5 1 1.5
Time (s)
Table 6.2 shows the values for these performance criteria, and con-
firm the improved path tracking accuracy by using trajectory pre-
compensation.
6.5 Conclusions
This chapter presented a method to compensate off-line for the non-
linear robot dynamics. A trajectory pre-compensation is calculated
by filtering the desired trajectory with an inverse dynamic robot
model including the controller dynamics yielding an improved veloc-
ity feedforward signal. The experimental results of this trajectory pre-
compensation approach show that it is possible to achieve a significant
improvement of the path tracking accuracy.
The challenge remains to implement the trajectory compensation
on-line on a real industrial manipulator and validate it using arbitrary
continuous trajectories generated by the standard path generator. This
development however requires a software interface to the robot con-
troller and information about the controller structure.
7
Conclusions
177
178 Conclusions
one identification model. This thesis presents the first experimental re-
sults ever obtained with this combined approach. To obtain consistent
estimation results for both approaches, it is also necessary to have a
good calibration of the measurement signals and to take into account
the effect of the rotor inertias. Since the rotor inertias have a different
torque contribution to the internal and the external model, the link and
rotor inertias are considered separately in the identification model. It
is experimentally verified that the combined model reduces the uncer-
tainty on the inertial parameter estimates. The accuracy improvement
largely depends on the noise level on the different measurement signals.
The resulting combined robot model allows to accurately predict both
the actuator torques and the reaction forces and torques on the base
plate. An improvement of the actuator torque prediction is however
not confirmed by the results in this thesis.
The robot payload becomes a more important factor in the robot dy-
namics. This thesis recognizes this evolution and extends the classical
robot identification procedure to the problem of identifying the inertial
parameter values of the payload (chapter 5). The presented approach
does not require a full identification of the manipulator, as it is done in
other approaches, but compensates for all known robot dynamics based
on available a priori information. A sensitivity analysis is performed
based on a simulation model of the robot with payload. It shows that
accurate payload parameter estimates can only be obtained if all a pri-
ori knowledge is sufficiently accurate. In addition, the analysis reveals
that obtaining accurate parameter estimates is more difficult to achieve
than accurately predicting the actuator torques. To experimentally val-
idate the payload identification approach, a calibrated reference pay-
load is designed of which all inertial parameters are accurately known.
The finally obtained parameter and actuator torque prediction accu-
racy satisfy the requirements imposed by industrial users of robots.
Only the warm-up effect, yielding a change in the actuator torque con-
stants, makes it difficult to guarantee accurate parameter estimation
in all situations.
180 Conclusions
183
184 Bibliography
Calafiore, G., Indri, M., and Bona, B. (2001). Robot dynamic calibra-
tion: Optimal excitation trajectories and experimental parameter
estimation. Journal of Robotic Systems, 18(2):55–68.
Bibliography 185
Canudas de Wit, C., Noël, P., Aubin, A., and Brogliato, B. (1991).
Adaptive friction compensation in robot manipulators : Low veloc-
ities. The International Journal of Robotics Research, 10(3):189–
199.
Canudas de Wit, C., Olsson, H., Aström, K., and Lischinsky, P. (1995).
A new model for control of systems with friction. IEEE Transac-
tions on Automatic Control, 40(5):419–425.
Chenut, X., Samin, J., Swevers, J., and Ganseman, C. (2000). Com-
bining internal and external robot models for improved model pa-
rameter estimation. Mechanical Systems and Signal Processing,
14(5):691–704.
Fisette, P., Raucent, B., and Samin, J.-C. (1996). Minimal dynamic
characterization of tree-like multibody systems. Nonlinear Dy-
namics, 9:165–184.
Grotjahn, M., Daemi, M., and Heimann, B. (2001). Friction and rigid
body identification of robot dynamics. International Journal of
Solids and Structures, 38(10-13):1889–1902.
Guglielmi, M., Jonker, E., and Piaso, J. M. (1987). Modelling and iden-
tification of a two degree of freedom SCARA robot using extended
Kalman filtering. In Proceedings of the International Conference
on Advanced Robotics, pages 137–148, Paris, France.
188 Bibliography
Heim, A., von Stryk, O., Pesch, H. J., Schäffler, H., and Scheuer, K.
(1997). Parameteridentifikation, Bahnoptimierung und Echtzeit-
steuerung von Robotern in der industriellen Anwendung, pages
551–564. Springer-Verlag.
Hirzinger, G., Sporer, N., Albu-Schäffer, A., Hähnle, M., Krenn, R.,
Pascucci, A., and Schedl, M. (2002). DLR’s torque-controlled light
weight robot iii - are we reaching the technological limits now? In
Proceedings of the IEEE International Conference on Robotics and
Automation, pages 1710–1716, Washington DC.
Jaulin, L., Kieffer, M., Didrit, O., and Walter, E. (2001). Applied
Interval Analysis. Springer-Verlag.
Liu, G., Iagnemma, K., Dubowsky, S., and Morel, G. (1998). A base
force/torque sensor approach to robot manipulator inertial param-
eter estimation. In Proceedings of the IEEE International Con-
ference on Robotics and Automation, pages 3316–3321, Leuven,
Belgium.
Morel, G., Iagnemma, K., and Dubowsky, S. (2000). The precise control
of manipulators with high joint-friction using base force/torque
sensing. Automatica, 36(7):931–941.
Sheu, S.-Y. and Walker, M. (1989). Basis sets for manipulator inertial
parameters. In Proceedings of the IEEE International Conference
on Robotics and Automation, pages 1517–1522, Scottsdale, USA.
Swevers, J., Ganseman, C., Bilgin, D., De Schutter, J., and Van Brus-
sel, H. (1997). Optimal robot excitation and identification. IEEE
Transactions on Robotics and Automation, 13(5):730–740.
Swevers, J., Ganseman, C., De Schutter, J., and Van Brussel, H. (1996).
Experimental robot identification using optimized periodic trajec-
tories. Mechanical Systems and Signal Processing, 10(5):561–577.
Swevers, J., Verdonck, W., Naumer, B., Pieters, S., and Biber, E.
(2002). An experimental robot load identification method for in-
dustrial application. International Journal on Robotics Research,
21(8):701–712.
Tsai, L.-W. (1999). Robot Analysis: The mechanics of serial and par-
allel manipulators. J. Wiley & sons, Inc.
197
198 List of publications
Personal data
Name Walter Verdonck
Born January 12, 1977, Sint-Niklaas, Belgium
Nationality Belgian
Education
• 1999-2004: Ph.D. student in the Robotics Research Group
at the Department of Mechanical Engineering, division PMA
of K.U.Leuven under supervision of prof. Jan Swevers and
prof. Joris De Schutter.
The research was funded by a four-year doctoral scholarship from
the Flemish Institute for the Promotion of Scientific and Techno-
logical Research in Industry (IWT).
My research interests are in modelling, optimization, parameter
estimation and control of industrial robot manipulators.
199
200
A
Kinematics
A.1 Introduction
201
202 Kinematics
link i-1
link i
ai
Zi
Z i-1 Yi
Yi-1 Ti X
i
a di
i-1
Ti-1 X i-1
For revolute joints, θi is the joint variable, and for prismatic joints, di is
the variable. E.g. for a manipulator with revolute joints θi = qi + θi,0 ,
where θi,0 is any joint position offset.
With these conventions we can describe the general joint transfor-
mations as a composition of four elementary transformations:
cO = [cx cy cz ]T , (B.1)
205
206 Dynamics of serial manipulators
zC
yC
C
z O
c xC
body i
y
O
x
i.e. the vector from the coordinate frame O to the COG, and the second
order moments of inertia
Ixx Ixy Ixz
IO = Iyx Iyy Iyz (B.2)
Izx Izy Izz
I O is called the inertia matrix or inertia tensor of the body about the
axes of the frame O, with
Z
Ixx = (y 2 + z 2 )ρ dV,
V
Z
Iyy = (z 2 + x2 )ρ dV,
ZV
Izz = (x2 + y 2 )ρ dV,
V
Z
Ixy = Iyx = − xy ρ dV,
Z V
i−1 T
ωi = Ri ωi−1 + σi q̇i ei (B.8)
i−1 T
ω̇i = Ri ω̇i−1 + σi (q̈i ei + i−1RiT ωi−1 × (q̇i ei )) (B.9)
i−1 T
vi = Ri vi−1 + ωi × pi + (1 − σi ) i−1RiT (q̇i ei ) (B.10)
i−1 T
v̇i = Ri [v̇i−1 + ωi−1 × (ωi−1 × pi ) + (ω̇i−1 × pi )]
+ (1 − σi )(q̈i ei + 2ωi × (q̇i ei )) (B.11)
The dynamic parameters for a link body i are indicated in figure B.2.
Once the velocities and accelerations of the links are found, the joint
forces f and torques t are calculated in the backward computation,
210 Dynamics of serial manipulators
Oi p i+1 Oi+1
ci C
starting from the end-effector link and ending at the base link.
Fi = mi v̇iC (B.13)
Ti = IC C
i ω̇i + ωi × (Ii ωi ) (B.14)
i
fi = Ri+1 fi+1 + Fi (B.15)
ti = Ti + iRi+1 ti+1 + pi+1 × iRi+1 fi+1 + ci × Fi (B.16)
τi = σi tTi ei + (1 − σi )fiT ei (B.17)
Fi and Ti are the reaction forces and torques acting on joint axis i due
to the dynamics of link i alone. fi and ti take into account the dynamic
effect of all descendant links and give the full reaction forces and torques
acting on joint axis i. τi gives the force or torque of actuator i required
to move link i and all its descendants.
External forces fn+1 and torques tn+1 acting on the end-effector
can be taken into account. The position of the end-effector frame with
respect to the frame of link n is given by the rotation matrix nRn+1 and
the translation vector pn+1 . These elements allow to take into account
the wrench exerted by the payload on the robot end-effector.
To obtain this, the first moments (equation (B.4)) are used and the
inertia matrices are expressed about the axes of the link frames instead
of the frames in the centers of gravity. The parallel axis theorem of
equation (B.6) is used for the recalculation.
The modified equations of the recursive Newton-Euler algorithm
become linear in the inertial parameters:
The reaction model can also be obtained from the recursive Newton-
Euler equations. The equations of the backward iteration should be
calculated one iteration step further, down to i = 0. The forces f0
and torques t0 compose the reaction wrench exerted on the robot base
plate.
Similar numerical reduction methods as above can be used to find
the minimal model. Fisette et al. (Fisette et al., 1996) presented sym-
bolic reduction rules for the reaction model using the barycentric pa-
rameters. Recently, Grotjahn (Grotjahn and Heimann, 2000) obtained
similar rules using the Newton-Euler parameters.
C
Robot models
The frame assignments for the first three joint axes are given in
figure C.1. Table C.1 gives the physical meaning of the minimal set of
parameters for this manipulator. The inertial properties are described
using the barycentric parameters.
213
214 Robot models
l3ee = 765 mm
Z3
Y3
X3
l23 = 480 mm
Z1 Z2
Y1 Y2
X1 X2
l01 = 1050 mm
Z0
Y0
X0
A5 + A4
+
--
+
-- +
--
-- A3
A6
+
A2 A1
-- +
--
217
218 Contribution of the rotor inertia
m3
Actuator 2 (+Y) Actuator 3 (-Y) Link 3 (+Y) level 3
m2
Link 2 (+Y) level 2
m1
Actuator 1 (+Z) Link 1 (-Z) level 1
Level 1 The first link of this manipulator is situated on the first level.
It moves around the Z axis, with el1 = [0 0 − 1]T :
T
ωl1 = 0R1T ω0 + q̇l1 el1 = 0 0 −q̇l1
(D.4)
T
ω̇l1 = 0R1T ω̇0 + (q̈l1 el1 + 0R1T ω0 × (q̇l1 el1 )) = 0 0 −q̈l1 .
(D.5)
Level 2 The second link is found on the second level of the manip-
ulator tree structure. For this second joint el2 = [0 1 0]T , and the
kinematics
q̇l1 sin ql2
ωl2 = 1R2T ωl1 + q̇l2 el2 = q̇l2 (D.8)
−q̇l1 cos ql2
ω̇l2 = 1R2T ω̇l1 + (q̈l2 el2 + 1R2T ωl1 × (q̇l2 el2 )) (D.9)
q̈l1 sin ql2 + q̇l1 q̇l2 cos ql2
= q̈l2 . (D.10)
−q̈l1 cos ql2 + q̇l1 q̇l2 sin ql2
Level 3 This level contains the actuators of the second and the third
link. The kinematics for the second actuator (em2 = [0 1 0]T ) are
q̇l1 sin(ql2 + qm2 )
ωm2 = 2Rm
T
ω + q̇m2 em2
2 l2
= q̇l2 + q̇m2 (D.11)
−q̇l1 cos(ql2 + qm2 )
ω̇m2 = 2RmT
ω̇ + (q̈m2 em2 + 2Rm
2 l2
T
ω × (q̇m2 em2 ))
2 l2
(D.12)
q̈l1 sin(ql2 + qm2 ) + q̇l1 (q̇l2 + q̇m2 ) cos(ql2 + qm2 )
= q̈l2 + q̈m2 , (D.13)
−q̈l1 cos(ql2 + qm2 ) + q̇l1 (q̇l2 + q̇m2 ) sin(ql2 + qm2 )
220 Contribution of the rotor inertia
Given that qm3 = µ3 ql3 , and reducing the actuator torques to the link
side, the actuator torque required to move the third rotor inertia Im3
equals:
Equation (D.23) does not yet give us the full torque required to move
the second actuator. Since this actuator drives the second link, an
additional coupling is introduced in level 2 of the robot structure.
On the second level, no actuator is mounted, so that T2 = 0. The
dynamic equations are
Equation (D.26) gives the torque at the joint axis of the second link.
In order to obtain the full actuator torque, τ2 must be combined with
τm2 of equation (D.23). Hereby, the transmission ratio µ2 is taken into
account and the equations are transformed to the link side
τ2,I = µ2 (Im2 (q̈l2 + q̈m2 )) + Im2 (q̈l2 + q̈m2 ) + Im3 (q̈l2 − q̈m3 ) (D.27)
= Im2 (µ2 (q̈l2 + µ2 q̈l2 ) + (q̈l2 + µ2 q̈l2 )) + Im3 (q̈l2 − µ3 q̈l3 ) (D.28)
= Im2 q̈l2 (1 + µ2 )2 + Im3 (q̈l2 − µ3 q̈l3 ) (D.29)
In the same way, the torque contribution on the first level is ob-
tained. Here, Z is the axis of rotation. For the branch along the first
link, the joint torques are
t1 = 1R2 t2 (D.30)
Im2 q̇l1 (q̇l2 + q̇m2 ) + Im3 q̇l1 (q̇l2 − q̇m3 )
= Im2 (q̈l2 + q̈m2 ) + Im3 (q̈l2 − q̈m3 ) . (D.31)
0
222 Contribution of the rotor inertia
The first actuator torque due the rotor inertia of the actuators becomes:
1 T
τm1 = t el + tTm1 em1 = Im1 q̈m1 , (D.33)
µ1 1 1
or transformed to the link side
Equation (D.33) shows the rotor inertias on the second or third level
do not affect the actuator torque on the first level.
The reaction torques on the first level joints are further transformed to
level 0 in order to obtain the reaction torques at the robot base