You are on page 1of 274

KATHOLIEKE UNIVERSITEIT LEUVEN

FACULTEIT TOEGEPASTE WETENSCHAPPEN


DEPARTEMENT WERKTUIGKUNDE
AFDELING PRODUCTIETECHNIEKEN,
MACHINEBOUW EN AUTOMATISERING
Celestijnenlaan 300B, B-3001 Leuven (Heverlee), België

Experimental robot and payload


identification with application
to dynamic trajectory compensation

Promotoren: Proefschrift voorgedragen tot


Prof. dr. ir. J. Swevers het behalen van het doctoraat
Prof. dr. ir. J. De Schutter in de toegepaste wetenschappen

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ë

Experimental robot and payload


identification with application
to dynamic trajectory compensation

Jury: Proefschrift voorgedragen tot


Voorzitter: het behalen van het doctoraat
Prof. dr. ir. J. Berlamont in de toegepaste wetenschappen
Leden:
Prof. dr. ir. J. Swevers, promotor door
Prof. dr. ir. J. De Schutter, promotor
Prof. dr. ir. S. Van Huffel Walter VERDONCK
Prof. dr. ir. J.-C. Samin (UCL–PRM)
Prof. dr. ir. H. Bruyninckx
Prof. dr. ir. W. Desmet

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

mij mee de kans dit werk voor te stellen op workshops en internatio-


nale conferenties. Dans le contexte de l’IUAP, je tiens à remercier le
professeur Samin et ses collègues de la division Production mécanique
et machines de l’UCL pour la coopération agréable.
Graag vermeld ik de inbreng van enkele industriële partners. Ik
dank de firma Krypton voor het uitvoeren van een kinematische kali-
bratie van onze robot en hun hulp bij de zoektocht naar een geschikte
opstelling voor de trajectcompensatie. De firma’s KUKA en Stäubli
hebben een bijgedrage geleverd door het opzoeken van specificatiege-
gevens over onze robots. I am grateful to the Amatec company for
providing me a software module for the payload identification.
Ook binnen het departement zal ik vele mensen nog lang herinneren.
Herman Bruyninckx toonde in de voorbije jaren regelmatig belangstel-
ling in mijn onderzoek en begreep als geen ander mijn nood aan open
robotsturingen. Voor praktische problemen met onze ‘goeie ouwe’ ont-
wikkelomgeving Comrade kon ik steeds terecht bij Johan Baeten en
Erwin Aertbeliën. De thesisstudenten Sven en Sabine en daarna Kris
en Peter bedank ik voor hun inzet en het uitvoeren van talrijke expe-
rimenten. Zij hebben dit werk mee vorm gegeven.
Mijn bureaugenoten waren steeds opgewekt en wisten problemen te
relativeren met een portie humor. Drie jaren heb ik een klein, maar
fijn, bureau gedeeld met Wim S. en Christophe. Het laatste anderhal-
ve jaar heb ik doorgebracht in het gezelschap van Bob en een bende
jonge assistenten Peter, Johan, Wim M. en Brecht. Ook Tine, Bram,
Vincent, René, Klaas, Dries, en andere collega’s van de robotgroep, de
afdeling en het departement hebben elk op hun wijze bijgedragen aan
de aangename werksfeer.
De mensen van het secretariaat, de werkplaats, de diensten meet-
systemen, elektronica en informatica verdienen eveneens een woord van
dank. Hoewel zij meestal in de schaduw staan van de uiteindelijke on-
derzoeksresultaten, was hun hulp onontbeerlijk.
Buiten de werkuren kon ik voor ontspanning rekenen op mijn vrien-
den die af en toe naar Leuven centrum afzakten voor een kaartavond
of een hapje en een drankje. Ook de vele (ex-)kotgenoten wens ik te
vermelden. Ik denk hier in het bijzonder aan mijn buren Els, Goele
en Nathalie, die een aangenaam gezelschap waren na een soms zware
iii

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

Industrial robot manipulators have become an indispensable means of


automation to increase flexibility and productivity. The ever increasing
quality standards and new applications impose higher requirements on
accuracy, reliability and performance. Due to the complex nonlinear
robot dynamics, the design of robot controllers should include accurate
dynamic robot models. Robot identification is an experimental tech-
nique to estimate realistic and accurate dynamic robot models from
motion data and actuator torques measured during ‘well-designed’ ex-
periments.
This research improves and extends the existing experimental iden-
tification methods and applies the obtained dynamic models to im-
proving path tracking control. The influence of a kinematic calibration
and more appropriate model descriptions for some additional effects on
the obtained model accuracy has been investigated. Further, this work
presents the experimental validation of an identification approach us-
ing both ‘internal’ and ‘external’ (i.e. a force/torque platform) sensors.
The use of different types of sensors into one combined identification
problem provides more information on the robot dynamics, yielding
improved parameter estimation accuracy and actuator torque predic-
tion.
Due to the growing importance of the robot payload, the robot
identification method is extended to the estimation of the inertial pa-
rameters of the robot payload. In this application not only the actu-
ator torque prediction accuracy is important, but special attention is
paid to the accuracy of the individual parameter estimates. This work
presents a payload identification approach which does not require a full
identification of the manipulator, but compensates for all known robot
dynamics based on available a priori information. A sensitivity analysis

v
vi

is performed to investigate the influence of the quality of the a priori


information on the final accuracy of the payload parameter estimates.
In view of industrial relevance, the obtained dynamic robot model
is used to improve the path tracking accuracy of robots without large
adaptations to the present hardware. This is realized by filtering the
desired trajectory with the inverse model of the robot and its controller,
which calculates off-line a correction to the robot trajectory using the
dynamic model. Feeding this precompensated trajectory to the robot
controller, the resulting executed trajectory is much closer to the de-
sired one. The improvement of the dynamic accuracy is experimentally
evaluated.
Beknopte samenvatting

Industriële manipulatoren zijn een onontbeerlijk automatiseringsmid-


del geworden om de flexibiliteit en productiviteit te verhogen. Steeds
toenemende kwaliteitsnormen en nieuwe toepassingen leggen hogere ei-
sen op aan nauwkeurigheid, betrouwbaarheid en prestaties. Omwille
van de complexe niet-lineaire robotdynamica moet bij het ontwerpen
van regelaars gebruik gemaakt worden van nauwkeurige dynamische
robotmodellen. Robotidentificatie is een experimentele techniek die
toelaat om op een efficiënte wijze realistische en nauwkeurige dyna-
mische modellen te bekomen uit bewegingsdata en de aandrijfkoppels
gemeten tijdens speciaal ontworpen experimenten.
Dit onderzoek heeft tot doel de bestaande identificatiemethoden te
verbeteren en toe te passen om de trajectnauwkeurigheid van robots te
verbeteren. De invloed van een kinematische kalibratie en geschikte-
re modelbeschrijvingen voor enkele bijkomende effecten op de bereikte
modelnauwkeurigheid is onderzocht. Verder presenteert dit werk de
experimentele validatie van een identificatiebenadering die zowel ‘in-
terne’ als ‘externe’ sensoren gebruikt. Het gebruik van verschillende
types sensoren in één gecombineerd identificatieprobleem levert meer
informatie over de robotdynamica. Dit resulteert in een verbeterde
nauwkeurigheid van parameterschatting en voorspelling van het actu-
atorkoppel.
Vanwege het groeiend belang van de robotlast, is de robotidenti-
ficatiemethode uitgebreid naar het schatten van de inertieparameters
van de robotlast. Voor deze toepassing is niet enkel de nauwkeurig-
heid van de koppelvoorspelling van belang, maar wordt speciale aan-
dacht geschonken aan de nauwkeurigheid van de afzonderlijke parame-
terwaarden. Dit werk presenteert een lastschattingsmethode die geen
volledige identificatie van de robot vereist, maar alle gekende robot-

vii
viii

dynamica compenseert op basis van a priori gekende informatie. Een


sensitiviteitsanalyse is uitgevoerd om de invloed van de kwaliteit van
deze informatie op de uiteindelijke nauwkeurigheid van de parameter-
schattingen van de robotlast te onderzoeken.
Met het oog op industriële relevantie is het bekomen dynamisch
robotmodel gebruikt om de trajectnauwkeurigheid van robots te ver-
beteren zonder ingrijpende wijzigingen in de aanwezige hardware. Dit
is gerealiseerd door het gewenste traject te filteren met een invers model
van de robot en zijn regelaar. Deze filter berekent off line een correctie
op het robottraject op basis van het dynamisch model. Wanneer dit
gecompenseerde traject naar de robotregelaar wordt gestuurd, ligt het
uitgevoerde traject dichter bij het gewenste traject. Deze verbetering
van de dynamische nauwkeurigheid is experimenteel geëvalueerd.
Contents

Voorwoord i

Abstract v

Beknopte samenvatting vii

Contents ix

Notation xv

Nederlandse samenvatting xix


1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
1.1 Motivatie . . . . . . . . . . . . . . . . . . . . . . . . xix
1.2 Belangrijkste bijdragen van dit werk . . . . . . . . . xx
2 Literatuuroverzicht . . . . . . . . . . . . . . . . . . . . . . . xxi
3 Robotidentificatie: praktische benadering . . . . . . . . . . xxv
3.1 Procedure voor experimentele robotidentificatie . . . xxv
3.2 Experimentele resultaten . . . . . . . . . . . . . . . xxvii
3.3 Besluit . . . . . . . . . . . . . . . . . . . . . . . . . . xxx
4 Combineren van intern en extern model . . . . . . . . . . . xxx
4.1 Modelgeneratie . . . . . . . . . . . . . . . . . . . . . xxxi
4.2 Experimentele resultaten . . . . . . . . . . . . . . . xxxii
4.3 Besluit . . . . . . . . . . . . . . . . . . . . . . . . . . xxxiv
5 Bepalen van de inertieparameters van de robotlast . . . . . xxxv
5.1 Modelgeneratie . . . . . . . . . . . . . . . . . . . . . xxxv
5.2 Compensatie van a priori gekende dynamica . . . . . xxxvii
5.3 Sensitiviteitsanalyse . . . . . . . . . . . . . . . . . . xxxviii
5.4 Experimentele resultaten . . . . . . . . . . . . . . . xxxviii
5.5 Besluit . . . . . . . . . . . . . . . . . . . . . . . . . . xl
6 Dynamische compensatie door trajectaanpassing . . . . . . xli
6.1 Niet-lineaire trajectprecompensatie . . . . . . . . . . xlii
6.2 Experimentele resultaten voor de KUKA IR 361 . . . xliii
6.3 Praktische beperkingen voor implementatie . . . . . xlv

ix
x Contents

6.4 Besluit . . . . . . . . . . . . . . . . . . . . . . . . . . xlv


7 Algemeen besluit en toekomstig werk . . . . . . . . . . . . . xlvi

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

3 Experimental robot identification: practical issues 51


3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2 Model generation . . . . . . . . . . . . . . . . . . . . . . . . 52
3.2.1 General manipulator structure . . . . . . . . . . . . 52
3.2.2 The rigid body dynamics . . . . . . . . . . . . . . . 54
3.2.3 Additional effects . . . . . . . . . . . . . . . . . . . . 56
3.3 Experiment design using periodic robot excitation . . . . . 58
3.3.1 Trajectory parameterization . . . . . . . . . . . . . . 58
3.3.2 Properties of periodic excitation . . . . . . . . . . . 59
3.4 Generation of the excitation trajectory . . . . . . . . . . . . 61
3.4.1 General problem formulation . . . . . . . . . . . . . 62
Contents xi

3.4.2 Solution by optimization . . . . . . . . . . . . . . . . 64


3.4.3 Heuristic solution . . . . . . . . . . . . . . . . . . . . 67
3.4.4 Limitations for obtaining the optimal excitation trajec-
tory . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.5 Parameter estimation . . . . . . . . . . . . . . . . . . . . . 72
3.6 Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.7 Experimental results . . . . . . . . . . . . . . . . . . . . . . 77
3.7.1 Description of the setup and the experiments . . . . 77
3.7.2 Kinematic calibration . . . . . . . . . . . . . . . . . 82
3.7.3 Rotor inertia . . . . . . . . . . . . . . . . . . . . . . 83
3.7.4 Gravity compensation spring . . . . . . . . . . . . . 84
3.7.5 Friction . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.7.6 Advantages of using periodic excitation . . . . . . . 93
3.8 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

4 Combining internal and external model 97


4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.2 Generation of dynamic robot models . . . . . . . . . . . . . 99
4.2.1 Combining internal and external robot models . . . 99
4.2.2 Effect of rotor inertia . . . . . . . . . . . . . . . . . 101
4.2.3 Advantages of combining internal and external robot
models . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.3 Experimental identification results . . . . . . . . . . . . . . 104
4.3.1 Description of test case and robot model . . . . . . . 104
4.3.2 Description of the experiments . . . . . . . . . . . . 105
4.3.3 Discussion of the experimental results . . . . . . . . 106
4.4 Practical considerations . . . . . . . . . . . . . . . . . . . . 114
4.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

5 Robot payload identification 119


5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5.2 Robot payload identification approach . . . . . . . . . . . . 121
5.2.1 Dynamic robot model for payload identification . . . 121
5.2.2 Parameter estimation . . . . . . . . . . . . . . . . . 126
5.3 Approach to payload identification . . . . . . . . . . . . . . 128
5.3.1 Compensation based on parameter estimates . . . . 128
5.3.2 Torque compensation by measurement . . . . . . . . 129
5.3.3 Torque compensation by modelling . . . . . . . . . . 131
5.4 Sensitivity analysis to deterministic errors . . . . . . . . . . 132
5.4.1 Simulation model of the KUKA KR15 . . . . . . . . . 132
5.4.2 Approach used in the sensitivity analysis . . . . . . 133
5.4.3 Results of the analysis . . . . . . . . . . . . . . . . . 133
5.4.4 Actuator torque prediction accuracy . . . . . . . . . 140
xii Contents

5.4.5 Discussion and conclusion . . . . . . . . . . . . . . . 142


5.5 The experimental setup . . . . . . . . . . . . . . . . . . . . 143
5.5.1 The industrial robot KUKA KR15 . . . . . . . . . . . 143
5.5.2 The reference payload . . . . . . . . . . . . . . . . . 144
5.6 Experimental results . . . . . . . . . . . . . . . . . . . . . . 146
5.6.1 Identification with compensation by measurements . 147
5.6.2 Identification with compensation using modelling . . 150
5.6.3 Effect of the warm-up on the accuracy of the parameter
estimates . . . . . . . . . . . . . . . . . . . . . . . . 156
5.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

6 Trajectory compensation 161


6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
6.2 Trajectory pre-compensation . . . . . . . . . . . . . . . . . 163
6.2.1 The dynamic robot model . . . . . . . . . . . . . . . 164
6.2.2 Controller dynamics . . . . . . . . . . . . . . . . . . 164
6.2.3 The trajectory pre-compensation . . . . . . . . . . . 165
6.3 Experimental verification . . . . . . . . . . . . . . . . . . . 167
6.3.1 Description of test case . . . . . . . . . . . . . . . . 167
6.3.2 Description of the robot controller model . . . . . . 168
6.3.3 Reference and validation trajectories . . . . . . . . . 169
6.3.4 Experimental results . . . . . . . . . . . . . . . . . . 169
6.4 Practical limitations for implementation . . . . . . . . . . . 175
6.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

7 Conclusions 177
7.1 Summary of the conclusions . . . . . . . . . . . . . . . . . . 177
7.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

Bibliography 183

List of Publications 197

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

B Dynamics of serial manipulators 205


B.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Contents xiii

B.2 Mass properties . . . . . . . . . . . . . . . . . . . . . . . . . 205


B.3 Inverse dynamic equations . . . . . . . . . . . . . . . . . . . 208
B.3.1 Recursive Newton-Euler formulation . . . . . . . . . 208
B.3.2 Linearity in the inertial parameters . . . . . . . . . . 210
B.3.3 Calculation the identification matrix . . . . . . . . . 211
B.3.4 Base reaction model . . . . . . . . . . . . . . . . . . 212

C Robot models 213


C.1 KUKA IR 361 . . . . . . . . . . . . . . . . . . . . . . . . . . 213
C.2 KUKA KR15 . . . . . . . . . . . . . . . . . . . . . . . . . . . 215

D Contribution of the rotor inertia 217


D.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
D.2 Forward kinematics . . . . . . . . . . . . . . . . . . . . . . . 217
D.3 Inverse dynamics . . . . . . . . . . . . . . . . . . . . . . . . 220
D.3.1 The actuator torques . . . . . . . . . . . . . . . . . . 220
D.3.2 The base reaction torques . . . . . . . . . . . . . . . 222
xiv Contents
Notation

Symbols

b : Barycentric moment [kgm]


c : Position of center of mass of rigid body [m]
 
c = cx cy cz

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

z : Extended state variable

C : Matrix containing Coriolis and centrifugal effects


C : Covariance matrix
E : Energy
G(s) : Transfer function
Gcontr : Controller model
IR : Tensor of second order moment with respect to
frame R
I : Inertia tensor containing the moments and prod-
ucts of inertia
 
Ixx Ixy Ixz
I = Ixy Iyy Iyz 
Ixz Iyz Izz

Ixx , Iyy , Izz : Principal moment of inertia of a rigid body about


the coordinate axes of a fixed frame [kg m2 ]
Ixy , Iyz , Izx : Product of inertia of a rigid body about the coor-
dinate axes of a fixed frame [kg m2 ]
Im : Rotor inertia [kg m2 ]
J : Jacobian matrix
K : Barycentric tensor
Km : Actuator torque constant
M : Mass or inertia matrix
T : Period [s]
Ts : Sampling period [s]
V : Coupling matrix

β : Vector of trajectory parameters


δ : Parameter vector
η : Transmission efficiency
µ : Transmission ratio
Notation xvii

ω: 3 × 1 angular velocity vector [rad/s]


ωf: Fundamental pulsation [rad/s]
σ: Standard deviation
τ: Torque (or force)
θ: Parameter vector
Φ: The identification matrix, which is function of
position, velocity, and acceleration
Ψ : Identification matrix
Σ : Weighing matrix

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

·min : Minimal value


·max : Maximal value
·mean : Mean value
xviii

Acronyms and abbreviations


ARX : Auto-Regressive with eXogenous input
ARMAX : Auto-Regressive Moving Average models with
eXogenous inputs
BJ : Box-Jenkins
CAD : Computer Aided Design
COG : Center of gravity
CSA : Canadian Space Agency
DLR : Deutsches Zentrum für Luft- und Raumfahrt
DOF : degree of freedom
EE : End effector
EKF : Extended Kalman filter
ETFE : Experimental transfer function estimate
GA : Genetic Algorithm
LED : Light Emitting Diode
LMI : Linear Matrix Inequality
LP : Linear programming
LS : Least squares
MDH : Modified Denavit-Hartenberg
MLE : Maximum likelihood estimator
PID : Proportional, Integral, Derivative
PTP : Point-to-point
QP : Quadratic programming
RLS : Recursive least squares
RML : Robust maximum likelihood
RMS : Root Mean Square
RNE : Recursive Newton-Euler
RRS : Realistic robot simulation
SDP : Semi definite programming
SQP : Sequential Quadratic Programming
SVD : Singular Value Decomposition
TCP : Tool center point
WLS : Weighted least squares
Nederlandse samenvatting

Experimentele identificatie
van robot en last, met toepassing op
dynamische trajectcompensatie

1 Inleiding

1.1 Motivatie

Industriële robots zijn een onontbeerlijk automatiseringsmiddel gewor-


den om de productiviteit en flexibiliteit van productie-eenheden te ver-
hogen. Ook de alsmaar stijgende kwaliteitseisen en internationale con-
currentie leggen steeds hogere verwachtingen op aan betrouwbaarheid
en nauwkeurigheid van industriële robots. Bovendien dient stilstand
zoveel mogelijk geëlimineerd te worden door gebruik van simulatie en
off line programmering.
Door de stijgende druk op snelheid en productiviteit worden heel
wat robots systematisch overbelast, wat de levensduur en de betrouw-
baarheid aanzienlijk verkleint. Om betrouwbare programmering van
snelle bewegingen toe te laten, zijn gevalideerde dynamische robotmo-
dellen nodig, die ook rekening houden met de last of het gereedschap
dat de robot voor zijn taken gebruikt. De inertieparameters van deze
last maken eveneens deel uit van een dynamisch model van de robot.
Daarom dient de identificatieprocedure uitgebreid te worden om de
ware inertiële en fysisch interpreteerbare parameters te bepalen. Dit

xix
xx

laatste is belangrijk voor een vlotte integratie en aanvaarding van de


methode op de werkvloer.
Hoewel de hedendaags bereikte nauwkeurigheid voldoende is voor
relatief trage assemblagebewegingen, zijn de resulterende trajecten
minder nauwkeurig bij hoge snelheidsmaneuvers. In moderne toepas-
singen zoals laserlassen en -snijden wordt toenemend belang gehecht
aan de trajectnauwkeurigheid. Standaard industriële regelaars nege-
ren echter de niet-lineariteiten in de robotdynamica zoals centrifuga-
le, gravitatie- en Corioliskrachten, wrijving, motordynamica en dyna-
mische koppeling tussen de verschillende assen. Deze complexe niet-
lineaire effecten overwegen echter bij erg snelle bewegingen. Dit re-
sulteert in afwijkingen van de gewenste beweging en vereist bijgevolg
manuele correcties, die tijdrovend en kostelijk zijn omdat de robot
uit productie moet genomen worden. Deze niet-lineariteiten kunnen
gecompenseerd worden door nieuwe modelgebaseerde besturingen die
meer a priori kennis van de robot gebruiken, o.a. ‘computed-torque’.
De implementatie van deze geavanceerde regelalgoritmes vereist een
goede kennis van het dynamisch gedrag van de robot.

1.2 Belangrijkste bijdragen van dit werk

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.

• Er werd nagegaan wat de invloed is op de modelnauwkeurigheid


van een kinematische kalibratie en het in rekening brengen van de
motorinerties. Een fysisch model werd afgeleid voor de gravitatie-
compensatieveer. De geschatte parameterwaarden zijn vergeleken
2. Literatuuroverzicht xxi

met de specificaties van de constructeur (paragraaf 3).


• Metingen van de motorkoppels (intern model) en van de reactie-
krachten en -momenten aan de basis van de robot (extern model)
zijn gecombineerd in één identificatieschema om de nauwkeurig-
heid van de inertieparameters te verbeteren. De experimentele
verificatie van deze benadering is in dit werk uitgevoerd (para-
graaf 4).
• De identificatiemethode is toegepast om de inertieparameters van
de robotlast te bepalen. Hierbij was het nodig om de robotpols
nauwkeurig te modelleren en bijkomende effecten in rekening te
brengen. Een sensitiviteitsanalyse is uitgevoerd om de invloed
van a priori kennis op de parameternauwkeurigheid na te gaan.
Een gekalibreerde referentielast is ontwikkeld en de methode is
experimenteel gevalideerd op een industriële robot. Deze bevesti-
gen dat de methode nauwkeurige schattingen levert van de para-
meterwaarden voor verschillende configuraties van de robotlast,
en de vereiste motorkoppels nauwkeurig voorspelt (paragraaf 5).
• Het bekomen dynamische model van robot met last is gebruikt om
een geschikte trajectcompensatie te berekenen die als voorwaartse
snelheidskoppeling in de bestaande regelaar toegevoegd wordt.
Experimenten tonen aan dat het gewenste traject nauwkeuriger
uitgevoerd wordt (paragraaf 6).

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

intern model extern model

kracht/koppel
robot motorstroom platform
paragraaf 3 onder basis
paragraaf 4

last motorstroom krachtsensor


aan eindeffector
paragraaf 5

Figuur 1: Mogelijke identificatiebenaderingen

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.

Analoge benaderingen kunnen gedefinieerd worden voor de iden-


tificatie van de inertieparameters van de robotlast. De meest direc-
te manier is een krachtsensor te monteren tussen last en eindeffector
die de reactiekrachten meet (Atkeson et al., 1986; Olsen and Bekey,
1986; Kozlowski and Dutkiewicz, 1996). De andere benadering maakt
opnieuw gebruik van de gemeten motorkoppels (Raucent and Samin,
1993; Gautier et al., 1995; Zeng and Unbehauen, 1999). Deze benade-
ring vormt het uitgangspunt van paragraaf 5.

De procedure om experimentele identificatie te doen is algemeen


aanvaard (Atkeson et al., 1986; Gautier, 1986; Mukerjee and Ballard,
1985). De volgende paragrafen bespreken kort de verschillende stappen
in een identificatieprocedure.
2. Literatuuroverzicht xxiii

Modelgeneratie De eerste stap in een identificatieprocedure is het


opstellen van een model op basis van een fysische beschrijving. Er
bestaan twee verschillende methodes om de modelvergelijkingen af te
leiden. De eerste methode gebruikt de totale energie Etotal van het
systeem (Gautier and Khalil, 1989; Kozlowski and Dutkiewicz, 1996)
Z t2
Etotal = τ T q̇ dt (1)
t1

met t1 en t2 begin- en eindtijdstip van het experiment, τ de vector


van de motorkoppels en q̇ de snelheidsvector. Deze methode heeft als
voordeel dat de versnelling van de assen niet berekend moet worden.
Het nadeel is dat de wrijving moeilijker in rekening te brengen is en
dat het model niet bruikbaar is om het motorkoppel te voorspellen.
Een tweede methode start vanuit de bewegingsvergelijkingen (At-
keson et al., 1986; Khosla and Kanade, 1987; Olsen and Bekey, 1986).
Dit model relateert de beweging van de gelederen tot de benodigde
motorkoppels τ

τ = M(q)q̈ + C(q, q̇)q̇ + g(q). (2)

M(q) is de inertiematrix afhankelijk van de set van gewrichtsposities


q en bevat de inertı̈ele parameters (massa, positie van het zwaar-
tepunt, inertieproducten en inertiemomenten), C(q, q̇) modelleert de
centrifugaal- en Corioliskrachten, g(q) modelleert de gravitatiekrach-
ten. Verschillende algoritmes zijn voorgesteld om de vergelijkingen te
genereren. De meest bekende zijn het recursieve Newton-Euler algorit-
me (Atkeson et al., 1986) en de Euler-Lagrange energiemethode (Sheu
and Walker, 1989).

Parameterreductie Het identificatiemodel is over het algemeen niet


lineair in de parameters. Een gepaste combinatie van de inertieparame-
ters, bijvoorbeeld in barycentrische coördinaten (Raucent and Samin,
1994) of de gewijzigde Newton-Euler coördinaten (Atkeson et al., 1986),
laat toe om de dynamische vergelijkingen lineair in de onbekende para-
meters te maken τ = Φ(q, q̇, q̈)θ. Deze eigenschap vereenvoudigt sterk
de parameterschatting.
xxiv

Ten gevolge van de bewegingsbeperkingen komen niet alle inertı̈ele


parameters onafhankelijk voor in de dynamische vergelijkingen. Om te
garanderen dat alle parameters afzonderlijk identificeerbaar zijn, wor-
den sommige parameters geëlimineerd of gecombineerd totdat een mini-
male basisset van parameters bekomen wordt. Een procedure om deze
basisset te bepalen kan gebaseerd zijn op symbolische manipulatie van
de vergelijkingen (Gautier and Khalil, 1990) of op een numerieke me-
thode zoals een singuliere waardenontbinding (Sheu and Walker, 1989;
Gautier, 1990).

Experimentontwerp De bewegingsdata en de aandrijfdata worden


opgemeten tijdens speciaal ontworpen testbewegingen. Om een goe-
de excitatie te bekomen zijn verscheidene optimalisatiecriteria gedefi-
nieerd, o.a. het conditiegetal van de identificatiematrix (Armstrong,
1989) of de determinant van de parametercovariantiematrix (Swevers
et al., 1997). Ook de keuze van de trajectparametrisatie is belangrijk.
Gautier (Gautier and Poignet, 2001) gebruikt vijfde orde polynomen,
terwijl Daemi (Daemi and Heimann, 1998) heen-en-weer bewegingen
rond een werkingspunt voorstelt met een trapezoidaal snelheidsprofiel.
Swevers (Swevers et al., 1996) introduceert het concept van periodische
excitatie. Het excitatietraject bestaat uit een som van harmonische
functies.

Parameter estimation De klassieke kleinste kwadratenschatter is


vanwege zijn eenvoud een veelgebruikte methode om een overgedeter-
mineerd stelsel van lineaire vergelijkingen op te lossen (Atkeson et al.,
1986; Canudas de Wit et al., 1996). Swevers (Swevers et al., 1997)
stelt het gebruik van de meest waarschijnlijke schatter voor, omdat
deze gebaseerd is op een statistisch kader dat de parameters met mi-
nimale onzekerheid wenst te schatten. Wanneer de positiemetingen
ruisvrij zijn, vereenvoudigt het probleem zich tot een gewogen kleinste
kwadratenschatting. Verder zijn een Bayesiaanse benadering (Pressé
and Gautier, 1992) en een robuuste schatter (Calafiore and El Ghaoui,
2001) toegepast op robotidentificatie. Voor on line parameterschatting
bestaan technieken zoals recursieve kleinste kwadraten (Gautier, 1986;
Östring and Gunnarsson, 2002) en uitgebreide Kalmanfilter (Gautier
and Poignet, 2001)
3. Robotidentificatie: praktische benadering xxv

3 Robotidentificatie: praktische benadering


Bij het toepassen van experimentele robotidentificatie moeten defini-
tieve keuzes gemaakt worden. De modelbeschrijving wordt vastgelegd,
evenals het optimale excitatietraject, de schattingsmethode en de vali-
datiecriteria.

3.1 Procedure voor experimentele robotidentificatie

Modelgeneratie

Een robot bestaat uit verschillende componenten die samen de model-


structuur bepalen. Centraal in deze structuur staat de seriële kine-
matische ketting van starre lichamen, beschreven door de dynamische
vergelijking (2) en afgeleid m.b.v. het recursieve Newton-Euler algorit-
me. Aan deze vergelijkingen worden voor elk gelid termen toegevoegd
om de aandrijving te modelleren. Deze bestaat uit de overbrenging
en de motor, gekenmerkt door een inertie en wrijvingsverliezen. Vaak
wordt verondersteld dat de wrijving bestaat uit Coulomb- en viskeuze
wrijving: τwrijving = fC sign(q̇) + fv q̇.
Na de modelreductie bekomt men een identificeerbare set van para-
meters en een minimale set van vergelijkingen (d.i. een identificeerbaar
model) die lineair in de onbekende parameters is:

τ = Φ(q, q̇, q̈)θ, (3)

met Φ de bewegingsmatrix en θ de gereduceerde set van te identificeren


parameters.

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

met ωf de fundamentele pulsatie van de Fourierreeks en N het aan-


tal harmonische termen. Deze periodische trajectparametrisatie heeft
volgende voordelen:

• middeling in het tijdsdomein verbetert de signaal-tot-ruisverhou-


ding van de experimentele data.
• de periodiciteit laat toe om de ruiskarakteristieken te schatten.
Deze gegevens zijn nodig voor de schatting volgens de methode
van de maximale waarschijnlijkheid.
• de periodiciteit van de trajecten laat de analytische berekening
van de gewrichtssnelheden en -versnellingen toe op basis van de
gemeten gewrichtsposities.

De trajectparameters worden gekozen zodat alle modelparameters


kunnen worden geschat en de invloed van meetruis op de geschatte
waarden van de dynamische parameters minimaal is. Hierbij moet re-
kening gehouden worden met beperkingen zoals de toegelaten maximale
en minimale posities, snelheden en versnellingen van de gelederen, de
motorbeperkingen en de beschikbare of toelaatbare werkruimte van de
robot. De keuze van de trajectparameters kan gebeuren door middel
van optimalisatie of op basis van heuristische regels. Bij optimalisatie
zijn ai,k , bi,k en qi,0 de te bepalen trajectparameters. Het optimalisa-
tieprobleem met beperkingen is echter sterk niet-lineair zodat slechts
een lokaal optimum gevonden wordt De keuze van de startwaarden
is daarom cruciaal voor een goede excitatie. Bij een heuristische op-
lossing worden ook ωf en N vrijheidsgraden. Een aantal eenvoudige
regels laat toe om reeds goede waarden voor de trajectparameters te
bekomen, waarbij de beperkingen optimaal benut worden. Toch moet
bij het bepalen van het optimaal excitatietraject opgelet worden dat
geen niet-gemodelleerde dynamica, zoals flexibiliteiten of niet-lineaire
effecten, wordt geëxciteerd.

Parameterschatting

Voor de parameterschatting is de methode van de maximale waarschijn-


lijkheid (ML) toegepast. In het algemene geval veronderstelt deze me-
thode dat de gemeten posities en de motorkoppels beide verstoord zijn
3. Robotidentificatie: praktische benadering xxvii

door witte ruis en levert dit een niet-lineair kleinste kwadratenpro-


bleem. De vereenvoudiging tot een gewogen kleinste kwadratenschat-
ting (WLS) is toegelaten aangezien het ruisniveau op de positieme-
tingen veel kleiner is dan het ruisniveau op de koppelmetingen en het
model lineair is in de onbekende parameters.

Validatie

De validatiestap evalueert de kwaliteit van de bekomen resultaten.


Twee categoriën van validatiecriteria worden gedefinieerd. De eerste
categorie van criteria beoordeelt de nauwkeurigheid van de voorspel-
de motorkoppels door te vergelijken met de gemeten koppels of door
de predictiefout te bekijken. De tweede categorie kijkt direct naar de
nauwkeurigheid van de geschatte parameterwaarden.

3.2 Experimentele resultaten

De besproken methode is toegepast op de eerste drie assen van de


KUKA IR 361 robot. Deze paragraaf gaat na in welke mate een aantal
bijkomende effecten en modelwijzigingen bijdragen tot de parameter-
nauwkeurigheid.

Beschrijving van optimale resultaten

Om het belang van bijkomende effecten te kunnen beoordelen, is een


referentiemodel opgesteld dat optimale resultaten geeft. Dit optimale
referentiemodel bevat een viskeus en Coulombwrijvingsmodel en houdt
rekening met de rotorinertie, maar niet met een kinematische kalibratie.
Figuur 2 vergelijkt het gemeten en voorspelde koppel en de pre-
dictiefout voor het excitatietraject. Hierin is duidelijk te zien dat het
geı̈dentificeerde model de metingen zeer goed verklaart. Tabel 1 geeft
de RMS waarden van de predictiefout voor de verschillende modellen
die hieronder besproken worden.
xxviii

Gemeten en voorspeld motorkoppel Predictiefout van het motorkoppel


200 50
Koppel as 1 (Nm)
100
0
0
−50
−100

−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)

Figuur 2: Gemeten en voorspelde motorkoppel en de predictiefout


voor het excitatietraject

Invloed van bijkomende effecten

Kinematische kalibratie Elke mechanische structuur vertoont ki-


nematische en geometrische fouten door afwijkingen tijdens de fabri-
cage of assemblage. Om de invloed van kinematische fouten op de
nauwkeurigheid van het dynamisch model na te gaan, werden de eerste
drie assen van de KUKA IR 361 robot kinematisch gekalibreerd. De
kinematische fouten zeer echter klein, waardoor de verbetering van de
nauwkeurigheid van het dynamisch model verwaarloosbaar is. Bijge-

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

Tabel 1: RMS van de predictiefout voor het excitatietraject


3. Robotidentificatie: praktische benadering xxix

volg geeft het inrekenen van de kinematische fouten geen significant


betere voorspelling van de nodige motorkoppels en valt de bijdrage
van de extra parameters tot het koppel binnen de onzekerheidsmarges
op o.a. de wrijving. Daarom kan de toegenomen complexiteit niet
gerechtvaardigd worden. De kinematische kalibratie blijft echter wel
noodzakelijk om een goede positienauwkeurigheid te garanderen.

Rotorinertie Commerciële industriële robots worden vaak aangedre-


ven met overbrengingsverhoudingen tussen 50 en 200. De rotorinertie
kan dan een belangrijke factor worden in de robotdynamica. Vaak
wordt de rotorinertie toegevoegd aan de gelidinertie. Deze werkwij-
ze is enkel verantwoord als aan de voorwaarde eTmi+1 ωi = 0 voldaan
is (Sciavicco et al., 1996), d.w.z. de rotoras moet loodrecht staan op de
hoeksnelheid van het gelid waarop de motor gemonteerd is. Indien niet,
kan de rotorinertie onafhankelijk van de gelidinertie bepaald worden.
Experimentele resultaten tonen aan dat de geschatte parameterwaarde
van de rotorinertie goed overeenkomt met de specificatie van de fabri-
kant.

Gravitatiecompensatieveer Veel robots zijn uitgerust met een


veer om het effect van de zwaartekracht op de tweede as te compense-
ren. De wiskundige beschrijving

l r sin(q2 )
τveer = l r sin(q2 )k − p P0 (5)
l2 + r2 − 2l r cos(q2 )

is afgeleid op basis van fysische eigenschappen waardoor het model


veel dichter aansluit bij het werkelijke gedrag van de veer. Door het
gebruik van a priori kennis van enkele afmetingen, is de bestaande
modelbeschrijving lineair in de onbekende parameters k en P0 gemaakt.
De experimenteel bekomen waarden voor de veerparameters vertonen
een sterke overeenkomst met de specificaties van de fabrikant.

Wrijving De wrijvingskarakteristiek (snelheid vs. wrijvingskracht) is


experimenteel opgemeten en vergeleken met het gebruikte Coulomb- en
viskeus wrijvingsmodel. De grootste afwijkingen treden op bij lage snel-
heden. Daarom zijn wrijvingsmodellen voorgesteld die beter aansluiten
xxx

bij de experimenteel gemeten karakteristiek. Daarbij is vastgesteld dat


de wrijving afneemt met de opwarming van de robot, en toeneemt bij
gebruik van een zwaardere robotlast. Het is daarom belangrijk om elk
experiment in zoveel mogelijk constante omstandigheden uit te voeren.

Opmerking: Kalibratie van de meetsignalen is zeer belangrijk bij


parameteridentificatie. Meestal worden de motorkoppels indirect ge-
meten via de motorstroom en geeft de koppelconstante het verband
tussen beide. In de praktijk kan deze constante aanzienlijk afwijken
van de specificatie van de fabrikant. Om goede experimentele resulta-
ten te behalen, is het noodzakelijk om regelmatig de actuele waarden
van de koppelconstante voor elke motor te bepalen.

3.3 Besluit

Het identificatiemodel is lineair in de onbekende parameters en brengt


wrijving en rotorinertie in rekening. Het experimentontwerp is geba-
seerd op periodische excitatie, wat enkele belangrijke voordelen biedt.
De keuze van de trajectparameters blijft echter een probleem. Naast
een optimalisatie, is een heuristische oplossing besproken vanuit prak-
tisch oogpunt. De parameterschatting is gebaseerd op de methode van
de maximale waarschijnlijkheid.
De experimentele resultaten tonen aan dat een kinematische kali-
bratie geen significant effect heeft op de modelnauwkeurigheid, terwijl
de rotorinertie wel een belangrijke rol speelt. Verder is de wrijvingska-
rakteristiek experimenteel opgemeten en is een geschikter model voor
de gravitatiecompensatieveer voorgesteld. Een goede overeenkomst
tussen de geschatte parameterwaarden en de specificatie valideren de
voorgestelde werkwijze.

4 Combineren van intern en extern model


In de klassieke identificatiebenadering worden de parameters geschat
uitgaande van metingen van bewegingsdata en aandrijfkoppels, geme-
ten door ‘interne’ sensoren. Het dynamisch model dat deze in- en uit-
gangen relateert noemt men het intern model. De klassieke benadering
4. Combineren van intern en extern model xxxi

vertoont een aantal gebreken: de krachten die aangelegd worden in de


gewrichten zijn niet direct meetbaar zodat ze beı̈nvloed zijn door mo-
delleringsfouten op het wrijvingskoppel en door de gebrekkige kennis
van de koppelconstanten van de motoren.
Een alternatieve benadering maakt gebruik van het extern model
van de robot (Raucent and Samin, 1993). Dit model relateert de bewe-
ging van de robot aan de reactiekrachten en -momenten op de grond-
plaat van de robot. De reactiekrachten worden gemeten met een extern
krachtplatform dat geplaatst is onder de robot. Deze benadering laat
toe de inertieparameters nauwkeuriger te schatten omdat het model
volledig onafhankelijk is van interne koppels zoals wrijving. De pa-
rameters van de wrijving zijn echter belangrijk voor een nauwkeurige
voorspelling van de motorkoppels bij modelgebaseerde controle.
Beide modellen samenvoegen geeft een gecombineerd model dat alle
inertieparameters bevat, evenals de wrijvingsparameters. Zowel de mo-
torkoppels, de beweging van de gewrichten als externe reactiekrachten
worden dan gebruikt als meetdata. Deze gecombineerde benadering is
in dit werk experimenteel gevalideerd.

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

De set van parameters in het gecombineerd model τ = Φ(q, q̇, q̈) θ


kan onderverdeeld worden in drie subsets: (1) de set van barycentrische
parameters δi die zowel in intern als extern model verschijnen, (2) de
set overige barycentrische parameters δe \ δi die enkel voorkomen in het
extern model, en (3) parameters gerelateerd aan gravitatiecompensatie
en wrijving δf g die enkel voorkomen in het intern model.
Het totale gecombineerde robotmodel kan geformuleerd worden als:
 
    δi
τi Ψi Ψf g 0  δf g 
= (8)
τe Ψe1 0 Ψe2
δe \ δi
Ψi en Ψf g komen respectievelijk overeen met het deel van de matrix Φi
(vergelijking (6)) dat samenhangt met de barycentrische parameters δi
en δf g . De kolommen van Ψe1 en Ψe2 komen overeen met die kolommen
van matrix Ψe (vergelijking (7)) die gerelateerd zijn tot de elementen
van δi en δe \ δi respectievelijk.

Rotorinertie

De inerties van de motor en de overbrenging worden vaak vervangen


door een equivalente inertie die toegevoegd wordt aan de gelidinertie.
Wanneer intern en extern model echter gecombineerd worden, levert
de rotorinertie een andere koppelbijdrage tot het intern model dan tot
het extern model. Voor de rotorinertie van de eerste robotas, zijn de
koppelbijdrages tot het intern en extern model respectievelijk
τ1 = µ21 q̈1 Im1 , (9)
mZ = µ1 q̈1 Im1 , (10)
waarbij µ1 de overbrengingsverhouding is en Im1 de rotorinertie. Wan-
neer de rotorinertie gekend is kan deze a priori in rekening gebracht
worden, anders dient ze als een aparte parameter geschat te worden.

4.2 Experimentele resultaten

Beschrijving van de testopstelling en het experiment

De beschouwde testopstelling bestaat uit een KUKA IR 361 robot ge-


plaatst op een KISTLER 9281 krachtplatform. Het excitatietraject be-
4. Combineren van intern en extern model xxxiii

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

Op basis van de variantie van de ruis op de krachtmetingen kan de


variantie op de geschatte parameters expliciet berekend worden. Ta-
bel 2 geeft deze resultaten weer. Vergelijken van de varianties toont
dat het combineren van interne en externe modellen en metingen een
significante verbetering levert van de nauwkeurigheid van de parame-
ters: de nauwkeurigheid van de parameters in δi wordt sterk verbeterd
doordat er meer meetdata wordt gebruikt in één parameterschattings-
probleem. Bovendien levert het gecombineerd model de beste nauw-
keurigheid voor elke parameter in vergelijking met het intern en extern
model.

Voorspelling van de motorkoppels

De onzekerheid op de voorspelde motorkoppels hangt rechtstreeks af


van de nauwkeurigheid van de parameterschattingen in δi en δf g , om-
wille van de lineaire afhankelijkheid van de koppelpredictie van de
modelparameters. Aangezien de onzekerheid op de parameters die
geı̈dentificeerd zijn met het gecombineerde model kleiner is, is bijge-
volg de onzekerheid op de voorspelde motorkoppels kleiner.
Tabel 3 toont de RMS waarde van fout op de motorkoppelpredictie
bij het validatietraject voor de verschillende sets van parameters. De
RMS predictiefout voor assen 1, 2 en 3 bij het gecombineerd model zijn
minder dan 1% lager dan bij het intern model. Deze verbetering komt
niet overeen met de opmerkelijke verbetering uit de simulatie (Chenut
et al., 2000) wegens het veel hogere ruisniveau bij de reële metingen.
xxxiv

gecombineerd intern extern


schatting σc schatting σi schatting σe
Kr1,zz 18.6808 0.0787 18.7188 0.0973 18.7301 0.0930
Kd2 -10.8183 0.0906 -10.8792 0.1129 -10.8471 0.1053
b3,x 2.9993 0.1512 3.0249 0.1605 2.7889 0.2739
K2,yy 23.2883 0.2234 23.5007 0.2372 23.5102 0.4576
fv2 17.1865 0.2724 17.2849 0.2740 − −
fc2 39.1988 0.2812 39.1899 0.2816 − −
fv3 5.2598 0.1620 5.2412 0.1630 − −
fc3 16.0939 0.1355 16.1230 0.1360 − −
b2,z 16.6222 0.0880 − − 16.8236 0.1039
b1,x -0.4053 0.0922 − − -0.4325 0.0997
br1,y 19.4197 0.1099 − − 19.2940 0.1151
K1,xz -0.8316 0.1874 − − -0.9307 0.1891

Tabel 2: Set geschatte parameterwaarden en bijhorende standaard-


deviatie voor gecombineerd, intern en extern model

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

Tabel 3: RMS predictiefout voor het validatietraject

4.3 Besluit

We kunnen besluiten dat het combineren van interne en externe metin-


gen (1) de nauwkeurigheid op de parameters die zowel in het interne als
het externe model voorkomen, sterk verbetert en (2) de nauwkeurig-
heid op de parameters die enkel in het interne model model voorkomen
in beperkte mate verbetert. De waarde van de verbetering hangt af
van het aantal gemeten perioden en de kwaliteit van de metingen.
Bovendien laat het gecombineerd model toe om zowel de motor-
koppels als de reactiekrachten en -momenten op de grondplaat nauw-
keurig te voorspellen. Beide zijn belangrijk voor trajectplanning en
-optimalisatie, vooral in ruimtetoepassingen. Het kan dus overwogen
worden om krachtplatformmetingen te gebruiken om de dynamische
identificatie van robots te verbeteren.
5. Bepalen van de inertieparameters van de robotlast xxxv

5 Bepalen van de inertieparameters van de ro-


botlast

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

Dynamisch model van de last

Zoals bij elke identificatieprocedure is de eerste stap het opstellen van


een dynamisch model van de robot met last. De robotlast oefent een
‘wrench’ w (d.w.z. kracht en moment) uit op de eindeffector. Dit
resulteert in een bijkomend motorkoppel

τrobotlast = JT (qG ) w, (11)

waarbij J(qG ) de Jacobiaanmatrix is van de robot. Mathematisch kan


nagegaan worden dat het dynamisch model van de robot met last op-
xxxvi

gesplitst kunnen worden in twee afzonderlijke modellen,

τG = M(qG )q̈G + C(qG , q̇G )q̇G + g(qG ) + JT (q) w (12)


= τrobotgelederen + τrobotlast , (13)

d.w.z. de robotgelederen en de robotlast leveren elk een additieve bij-


drage tot de motorkoppels. Bijgevolg kan de bijdrage van de robotge-
lederen in rekening worden gebracht op basis van een a priori bepaald
dynamisch robotmodel, en dienen enkel de inertieparameters van de
last opnieuw bepaald te worden bij het wijzigen van de robotlast.
Om een dynamisch model te bekomen dat lineair is in de inertie-
parameters stellen Atkeson e.a. (Atkeson et al., 1986) voor om de in-
ertieparameters uit te drukken ten opzichte van de rotatie-as in plaats
van het massacentrum. Deze werkwijze levert een set gewijzigde iner-
tieparameters die rechtstreeks gerelateerd zijn tot de tien ‘ware’ iner-
tieparameters van de last (de massa m, de drie coördinaten van het
massacentrum (cx , cy , cz ), drie inertiemomenten (Ixx , Iyy , Izz ) en drie
inertieproducten (Ixy , Ixz , Iyz )) .

Bijkomende effecten

Voor robotlastidentificatie is het van uiterst belang rekening te hou-


den met bijkomende effecten, o.a. de koppeling die bestaat tussen de
verschillende assen en verliezen in de motor en de overbrenging.

Verband tussen motorstroom en motorkoppel Vele robots zijn


uitgerust met permanent magneet synchrone motoren. Het lichtjes
niet-lineaire stroom-koppelverband bij hoge motorstromen kan beschre-
ven worden met een derde-orde veelterm.

Dynamica van de motor Een aanzienlijk deel van het motorkoppel


wordt gebruikt om de rotorinertie te versnellen of af te remmen. Dit
koppel bedraagt τI = Im q̈M , met q̈M de hoekversnelling van de motor
en Im de inertie van de rotor. Verliezen ten gevolge van wrijving in de
motor en de overbrenging worden beschreven met een Coulomb en een
viskeus wrijvingsmodel.
5. Bepalen van de inertieparameters van de robotlast xxxvii

Rendement van de overbrenging De robotmotoren drijven de ge-


lederen aan via een overbrenging waarin vele onderdelen met verschil-
lende hoeksnelheden bewegen. De verliezen in de overbrenging kunnen
worden beschreven door een zeker rendement η. Dit model zorgt er ech-
ter voor dat het identificatiemodel niet-lineair wordt in de onbekende
parameters, zodat iteratieve schattingsmethoden vereist zijn.

Koppeling tussen de motorkoppels Bij heel wat industriële ro-


bots zijn de bewegingen van meerdere assen van de robotpols mecha-
nisch gekoppeld. Deze koppeling wordt beschreven door een vaste line-
aire transformatie qG = V qM tussen motorruimte (E: actuator space)
en gewrichtsruimte (E: joint space).

5.2 Compensatie van a priori gekende dynamica

Zoals hoger opgemerkt, kan de koppelbijdrage van de robotgelederen


gescheiden worden van deze van de robotlast. Drie mogelijke benade-
ringen om de a priori kennis in rekening te brengen worden hier kort
beschreven.

Door gekende parameterwaarden: Hierbij wordt een identificatie


gedaan van de volledige robot. De inertieparameters van de last
worden dan berekend uit het verschil tussen de geschatte para-
meters en de gekende parameterwaarden voor de robotinertie.

Door meting: Deze benadering doet twee experimenten met hetzelf-


de excitatietraject: één met last en een ander zonder last. Het
verschil tussen beide metingen geeft het motorkoppel ten gevolge
van de robotlast, en eventueel de variatie van de wrijving.

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.

De derde benadering geeft de meeste flexibiliteit aangezien niet tel-


kens hetzelfde excitatietraject moet worden gebruikt en geen volledige
identificatie van de robot vereist is.
xxxviii

5.3 Sensitiviteitsanalyse

Goede resultaten behalen is niet vanzelfsprekend. Ruis op de metingen


introduceert onzekerheid die kan gereduceerd worden door uitmiddelen
van periodische metingen. Deterministische fouten, zoals een onvolle-
dig model of onnauwkeurige a priori informatie, geven systematische
afwijkingen op de resultaten. Een sensitiviteitsanalyse gebaseerd op
simulatie is uitgevoerd om de invloed na te gaan van deze fouten op
de uiteindelijke nauwkeurigheid van de parameterschattingen van de
robotlast.
De analyse toont dat de kwaliteit van de a priori informatie erg be-
langrijk is. De identificatie is vooral gevoelig voor de nauwkeurigheid
van de koppelconstanten en van de inertieparameters van de robotge-
lederen en rotorinerties.
De parameterschattingen zijn minder gevoelig voor het model dat
gebruikt wordt om de verliezen te beschrijven. Het in rekening brengen
van het overbrengingsrendement geeft geen merkbare verbetering ten
opzichte van de resultaten uit de lineaire schatting waarbij deze rende-
menten verwaarloosd worden en de verliezen opgenomen worden in de
viskeuze en Coulombwrijving. Een complexer niet-lineair identificatie-
model is daarom niet verdedigbaar.
Terwijl de geı̈ntroduceerde fouten de parameterwaarden duidelijk
beı̈nvloeden, is vastgesteld dat de motorkoppelvoorspelling nagenoeg
ongevoelig is. Een nauwkeurige koppelvoorspelling is daarom geen ga-
rantie voor nauwkeurige parameterwaarden.

5.4 Experimentele resultaten

De voorgestelde identificatieprocedure is toegepast op een KUKA KR15


industriële robot. Om de juistheid van de inertiële parameters te valide-
ren is een gekalibreerde referentielast ontwikkeld waarvan alle inertiële
parameters gekend zijn. Figuur 3 toont een mogelijke configuratie van
de referentielast. Om alle inertieparameters van de last eenduidig te
kunnen bepalen, volstaat het de assen drie tot zes van de robot te ex-
citeren. Indien de massa van de last a priori gekend is, zijn de laatste
drie assen voldoende.
5. Bepalen van de inertieparameters van de robotlast xxxix

Figuur 3: Eén mogelijke configuratie voor de referentielast

Bij de experimentele resultaten maken we een onderscheid tussen


de koppelpredictie en de inertieparameters van de last. Figuur 4 toont
het gemeten motorkoppel voor een validatietraject en vergelijkt dat met
het koppel dat voorspeld wordt op basis van het geı̈dentificeerde model
van robot en last. Beide koppels komen goed overeen, zodat we mogen
stellen dat het bekomen model in staat is een nauwkeurige voorspelling
te maken van het koppel dat nodig is om een gegeven beweging uit te
voeren.
Voor een goede aanvaarding op de werkvloer moet de identificatie
ook in staat zijn om de inertieparameters van de last nauwkeurig te be-
palen, d.w.z. dat de geschatte waarden de werkelijke zo goed mogelijk
moeten benaderen. Tabel 4 geeft de resultaten voor de gebruikte confi-
guratie van de referentielast. Het gemiddelde en de standaarddeviatie
zijn berekend uit de resultaten van tien verschillende lastidentificatie-
experimenten. De geschatte parameterwaarden komen goed overeen
met de werkelijke waarden; de afwijkingen zijn beperkt tot minder dan
één standaarddeviatie.
Ook experimenteel werd vastgesteld dat de resultaten erg gevoelig
zijn aan een schaalfactor die gebruikt wordt om het gemeten stroom-
signaal om te zetten naar het motorkoppel. Bij een te kleine koppel-
constante zijn de parameterschattingen stelselmatig te klein, en vice
versa.
Bovendien heeft de opwarming van de robot een belangrijke invloed
op de resultaten. Niet enkel de wrijving varieert, maar ook de geschatte
inertieparameters veranderen. Dit wijst erop dat de koppelconstante
xl

Gemeten en voorspeld motorkoppel Predictiefout van het motorkoppel


As 3 (Nm) 200 200
0 0
−200 −200
−400 −400
−600 −600
0 10 20 30 0 10 20 30
200 200
As 4 (Nm)

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)

Figuur 4: Gemeten en voorspelde koppel voor validatietraject

wijzigt met de opwarming. Hierdoor wordt het zeer moeilijk om in alle


omstandigheden dezelfde nauwkeurigheid te garanderen.

5.5 Besluit

Voor de lastidentificatie is het mogelijk de inertieparameters van de ro-


bot a priori in rekening te brengen. Hierdoor is het niet meer nodig om
de ganse robot opnieuw te identificeren wanneer de robotlast gewijzigd
wordt. Experimentele resultaten tonen aan dat het bekomen model in
staat is om het vereiste motorkoppel voor een gewenste beweging nauw-
keurig te voorspellen. Ook de schattingen van de inertieparameters van
de last voldoen aan de door industriële gebruikers vereiste nauwkeurig-
heid. Er is echter vastgesteld dat de koppelconstanten van de motoren
veranderen met de opwarming van de robot. Dit heeft een negatieve
invloed op de nauwkeurigheid van de lastidentificatie.
6. Dynamische compensatie door trajectaanpassing xli

Inertie- Gekalibreerde Geschatte Standaard-


parameter waarde waarde deviatie
m [kg] 9.579 9.6179 0.1735
cx [m] 0.024 0.0246 0.0010
cy [m] 0.090 0.0930 0.0016
cz [m] -0.202 -0.2065 0.0064
Ixx [kgm2 ] 0.612 0.6770 0.0765
Iyy [kgm2 ] 0.063 0.1210 0.0773
Izz [kgm2 ] 0.637 0.6211 0.0204
Ixy [kgm2 ] -0.158 -0.1642 0.0105
Ixz [kgm2 ] -0.002 -0.0038 0.0097
Iyz [kgm2 ] -0.008 -0.0105 0.0156

Tabel 4: Gekalibreerde en geschatte inertieparameters van de


referentielast

6 Dynamische compensatie door trajectaan-


passing

Er is een groeiende vraag vanuit de industrie om de performantie en


de trajectnauwkeurigheid bij de huidige generatie robots te verbeteren
door rekening te houden met de niet-lineaire dynamische effecten. Hoe-
wel de klassieke lineaire regelaars voldoen voor toepassingen waarbij
hoge positienauwkeurigheid en lage snelheid vereist zijn, geven ze aan-
leiding tot niet verwaarloosbare trajectafwijkingen bij hoge snelheid.
Krachtige modelgebaseerde regelalgoritmen, zoals ‘computed-torque’
en adaptieve methoden (Craig, 1986; Sciavicco and Siciliano, 1996),
vormen een alternatief, maar worden omwille van hun complexiteit niet
gebruikt in de industrie. Bovendien vereisen ze een interface waarlangs
het gewenste motorkoppel kan opgegeven worden.
Om de niet-lineaire dynamica te kunnen compenseren met behoud
van de bestaande standaard industriële regelaar, is een compensatiemo-
dule voorgesteld die op basis van een dynamisch model een aanpassing
op het gewenste robottraject berekent zodat bij uitvoering de eindef-
fector het gewenste traject volgt.
xlii

6.1 Niet-lineaire trajectprecompensatie

Figuur 5 geeft het algemene idee van de precompensatie weer. Het


gewenste traject qd wordt eerst gecompenseerd door het te filteren met
het invers model van het robotsysteem met regelaar. Het gecompen-
seerde traject qd,comp wordt dan aangelegd aan het echte systeem. Dit
resulteert in perfect trajectvolgen als er gen verstoringen of modelfou-
ten zijn.

qd qact
Invers qd,comp Systeem
qd qact
Robot
qd
systeem qd,comp + qact
Regelaar

Figuur 5: Algemeen idee van precompensatie

Niet-lineaire precompensatie gebruikt een invers model van het ge-


sloten lus systeem om het gewenste traject te ‘filteren’. Dit invers
model bestaat uit het inverse dynamisch robotmodel, dat de ‘rigid bo-
dy’ dynamica en de wrijving bevat, en een invers model van de analoge
snelheids- en stroomregelaar van de robot.
Figuur 6 toont de globale structuur van het precompensatieschema.
De nodige motorkoppels τd voor een gewenst traject qd worden in een

Invers dynamisch model


td
f(qd,qd,qd) q -1
Gcontr
+ qd,comp
d qd +
dt Positieregelaar Snelheidsregelaar
qd + PI + + + Gcontr t Robot qact
ò
qact
- -

Off line Digitaal Analoog

Figuur 6: Structuur van de robot opstelling met de niet-lineaire


precompensatie
6. Dynamische compensatie door trajectaanpassing xliii

eerste stap bepaald uit vergelijking (3):

τd = M(qd )q̈d + C(qd , q̇d )q̇d + g(qd ) + τf (q̇d )


= Φ(qd , q̇d , q̈d ) θ (14)

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.

6.2 Experimentele resultaten voor de KUKA IR 361

Om de prestaties en toepasbaarheid te evalueren, is de voorgestelde


methode toegepast op de KUKA IR 361 robot. Voor de identificatie van
een model van de analoge snelheidsregelaars is gebruik gemaakt van
multisinusexcitatie met een bandbreedte van 5 Hz. Als model werd
een PI-regelaar met tachoterugkoppeling vooropgesteld. Dit geeft een
aanvaardbare kwaliteit voor het bekomen model.
Aan de hand van het afleggen van validatietrajecten is nagegaan
wat de verbetering van de dynamische nauwkeurigheid is. Als vali-
datietraject is een cirkel in het horizontale vlak gekozen. De cirkel
heeft een diameter van 40 cm en wordt gevolgd met een (Cartesische)
baansnelheid van 0.6 m/s. Dit traject heeft een eenvoudige analytische
beschrijving met als voordeel dat de gewenste hoeksnelheden en ver-
snellingen kunnen berekend worden zonder fazeverschuiving. Een off
line berekening bepaalt de gewenste hoekposities qd van de assen en de
gecompenseerde snelheden q̇d,comp .
Figuur 7 toont de volgfout qd − qact met en zonder compensatie
van de niet-lineaire dynamica. In beide gevallen werd de voorwaartse
koppeling van de snelheid gebruikt.
De afstand tussen het gemeten punt (x, y, z) op het traject en het
dichtstbijgelegen punt (xd , yd , zd ) op het gewenst traject in Cartesische
xliv

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

coördinaten wordt gegeven door:


p
di = (xd (i) − x(i))2 + (yd (i) − y(i))2 + (zd (i) − z(i))2 . (15)
In tabel 5 zijn enkele performantiecriteria opgenomen. dmax = maxi |di |
1 PN
geeft de maximale afwijking en dmean = N i=1 di geeft de gemiddelde
waarde van de afwijkingen, waarbij N het aantal gemeten punten is op
het traject.

dmean dmax
zonder compensatie 1.42 mm 2.01 mm
met compensatie 0.25 mm 0.45 mm

Tabel 5: Performantiecriteria bij diameter 40 cm en snelheid


0.6 m/s

De experimenten werden herhaald voor andere diameters van de


cirkel, voor verschillende snelheden en voor een andere ligging en
oriëntatie van de cirkel. Telkens werd een gelijkaardige verbetering
bekomen.

6.3 Praktische beperkingen voor implementatie

Bij de beschikbare experimentele opstelling werd de oorspronkelijke


trajectgenerator en positieregelaar vervangen werden door eigen ont-
wikkelde software. Dit beperkt sterk de industriële relevantie en over-
tuigingskracht van de compensatiemethode en laat niet toe om een
meer diepgaande validatie uit te voeren.
Toch is de implementatie op een standaard industriële robot niet
vanzelfsprekend. Meestal laat de regelaar niet toe om in real-time cor-
recties toe te voegen aan het gewenste traject. Voor verdere implemen-
tatie is daarom een samenwerking vereist is met een industriële partner
die een open interface creëert en de nodige informatie over de structuur
van het regelschema ter beschikking stelt.

6.4 Besluit

Een trajectcompensatiemethode is ontwikkeld om een verbeterde voor-


waartse snelheidskoppeling te berekenen die rekening houdt met de
xlvi

niet-lineaire robotdynamica. De berekening van de trajectprecompen-


satie is gebaseerd op een geı̈nverteerd dynamisch model van de robot en
de snelheidsregelaar. De behaalde experimentele resultaten tonen aan
dat een opmerkelijke verbetering van de trajectnauwkeurigheid moge-
lijk is.

7 Algemeen besluit en toekomstig werk


Dit werk vertrok van een bestaande robotidentificatieprocedure. Het
identificatiemodel is lineair in de onbekende parameters en is afgeleid
vanuit fysische eigenschappen. Het experimentontwerp gebruikt peri-
odische excitatie, waardoor analytisch afleiden en berekenen van het
ruisniveau mogelijk zijn. Deze statistische informatie wordt gebruikt
bij de meest waarschijnlijke parameterschatter.
Deze procedure is toegepast om het dynamisch model van een indu-
striële seriële manipulator te identificeren. De experimentele resultaten
tonen aan dat het bekomen dynamisch model in staat is om het vereiste
motorkoppel voor elke gewenste beweging nauwkeurig te voorspellen.
Bovendien komen de geschatte parameterwaarden goed overeen met de
gegevens van de fabrikant.
Om de nauwkeurigheid van de parameterschattingen verder te ver-
beteren is een externe krachtsensor toegevoegd aan de opstelling om de
reactiekrachten en -momenten van de robot op de basis te meten. Het
bij deze metingen horende extern identificatiemodel is gecombineerd
met het klassieke interne model tot één globaal identificatiemodel. Het
is experimenteel gevalideerd dat dit gecombineerd model parameter-
schattingen geeft met kleinere onzekerheidsmarges. Om consistente
resultaten te bekomen voor beide benaderingen is het noodzakelijk om
het effect van de rotorinertie expliciet in rekening te brengen en om
een goede kalibratie te hebben van de meetsignalen. Het belang van de
nauwkeurigheidsverbetering hangt hoofdzakelijk af van het ruisniveau
op de verschillende meetsignalen. Het resulterende gecombineerd mo-
del laat toe om de motorkoppels en de reactiekrachten en -momenten
op de grondplaat nauwkeurig te voorspellen.
In een volgende stap is de klassieke identificatieprocedure toegepast
op het identificatieprobleem van de inertieparameters van de robotlast.
7. Algemeen besluit en toekomstig werk xlvii

Bij deze toepassing wordt de koppelbijdrage van de robotgelederen ge-


compenseerd op basis van zoveel mogelijk a priori gekende informatie.
Een sensitiviteitsanalyse heeft aangetoond dat de nauwkeurigheid van
de parameterschattingen in directe verhouding staat met de kwaliteit
van de a priori informatie, terwijl de koppelvoorspelling hiervoor veel
minder gevoelig is. De experimenteel behaalde nauwkeurigheid voldoet
aan de vereisten voor de industrie. Enkel de opwarming die een wijzi-
ging in de koppelconstanten veroorzaakt, maakt het moeilijk om deze
nauwkeurigheid in alle gevallen te garanderen.
De laatste stap stelde een trajectcompensatiemethode voor om off
line de niet-lineaire robotdynamica te compenseren. Een belangrijk
voordeel van deze methode is dat er geen koppelinterface vereist is.
Het gewenste traject is gefilterd met een invers model van de robotdy-
namica en de dynamica van de regelaar resulterend in een voorwaartse
koppeling op de snelheid. De experimentele resultaten tonen een signi-
ficante verbetering van de trajectnauwkeurigheid.
Experimenteel werk is nooit gedaan, en dit geldt evenmin voor dit
werk. Hoewel het theoretisch kader reeds een stevige basis vormt, blij-
ven sommige vragen onbeantwoord.
Om te beginnen dienen alle methoden, zoals gecombineerd model,
lastidentificatie en trajectcompensatie, geı̈mplementeerd en gevalideerd
te worden op eenzelfde experimentele opstelling. Deze synthese laat toe
de nauwkeurigheid en consistentie van de resultaten voor elke toepas-
sing te evalueren.
Een belangrijke vereiste voor consistentie is te beschikken over een
nauwkeurige schatting van de motorkoppelconstanten en het in reke-
ning brengen van de temperatuur- en lastafhankelijkheid van de wrij-
ving. Een goed inzicht in hoe de koppelconstanten en de wrijving va-
riëren met de opwarming van de manipulator kan zorgen voor betere
parameterschattingen en biedt de mogelijkheid om de robotdynamica
ook over een lange tijdspanne beter te compenseren.
Het ontwerp van het excitatietraject moet bekeken worden vanuit
een praktisch standpunt. Verschillende vrijheidsgraden in de trajectpa-
rametrisatie laten toe om de kwaliteit van de excitatie te beı̈nvloeden.
Een efficiënt optimalisatie-algoritme moet gezocht worden om het opti-
malisatiecriterium te minimaliseren zodat een minimaal vereist niveau
xlviii

van excitatie gegarandeerd is. Om te beslissen of het verschil in para-


meterschatting van praktisch belang is, kunnen de resultaten bekomen
met verschillende excitatietrajecten vergeleken worden.
Onderzoeksresultaten worden meestal enkel gevalideerd op één op-
stelling waardoor de toepasbaarheid vaak niet vanzelf geëxtrapoleerd
kan worden. Toepassing in de industrie kan daarom een waardevolle
feedback opleveren. Bovendien zal de implementatie ook de industrie
ten goede komen, omdat de robots nauwkeuriger worden. Een eerste
stap hiernaar is gezet in dit werk met de ontwikkeling van de traject-
compensatie. Deze methode moet echter nog geı̈mplementeerd worden
op een commercieel beschikbare robotregelaar. Een extern meetsys-
teem moet de bekomen verbetering van de trajectnauwkeurigheid nog
valideren.
In verdere stappen dient het dynamisch model geı̈ntegreerd te wor-
den in de regelalgoritmes en de trajectgenerator van industriële robots
teneinde hun nauwkeurigheid te verhogen. Het is echter geweten dat
de ontwikkelaars van standaard robotregelaars grote moeite hebben om
deze behoefte voor integratie te ondersteunen. Meer bepaald, een open
real-time interface naar de commerciële regelaar is niet beschikbaar.
Door het ontwikkelen van een modulaire en open systeemarchitectuur
kan de controle-ingenieur elke gewenste uitbreiding toevoegen zonder
veel aan efficiëntie en veiligheid in te boeten.
Om de integratie in de industrie te vereenvoudigen is er nood aan
kant-en-klare software voor dynamische modellering en identificatie van
robots, ontwikkeld in nauwe samenwerking met robotconstructeurs.
Dit moet evolueren tot een software concept dat gebaseerd is op een bi-
bliotheek van modulaire componenten, die geconfigureerd kunnen wor-
den voor de specifieke toepassing van de gebruiker. Het vinden van
relevante en aantrekkelijke toepassingen zal robotidentificatie maken
tot een noodzakelijk hulpmiddel.
1
Introduction

The whole of science is nothing more


than a refinement of everyday thinking.
Albert Einstein

1.1 Background and motivation


Ever since the beginning of the industrial revolution, the industrial
world has been confronted with better technologies and changing ex-
pectations of customers. The ever increasing quality standards, inter-
national competition and economic reasons put higher requirements
on reliability and accuracy, and especially on speed of production pro-
cesses. Improvement of the output is the major motivation behind the
development of new techniques. This evolution still continues nowadays
and new upcoming challenges have to be taken up.

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.

1.2 Serial robot manipulators

A robot is a machine designed to execute one or more tasks repeat-


edly, with speed and precision. These machines contain sensors and
programmable controllers, and can also be equipped with speech recog-
nition, and other advanced features. There may be as many different
types of robots as there are tasks for them to perform. The most tra-
ditional types are serial manipulators and Cartesian or gantry robots.
These robot types are frequently used in industry. The Stewart plat-
form is an example of a parallel manipulator. This manipulator has
six joints in parallel which offers excellent stability and high stiff-
ness. Other types of robotic systems are humanoids, walking machines,
robotic hands, and nonholonomic mobile robots.
It would be impossible to derive detailed identification techniques
which are applicable to all of these types of robots. This section defines
which type of manipulator is considered in this work and introduces
some commonly used concepts and terminology.
We limit the discussion to industrial serial robot manipulators.
Throughout this work we will simply use the terms robot or manip-
ulator. The serial manipulator is an open-ended structure consisting
of several links connected in series. The human arm is a good exam-
ple of a serial manipulator. The robot links are assumed to be rigid
bodies connected by revolute or prismatic joints with a single degree
of freedom each. They form a multibody system with the topological
structure of a kinematic chain.
The joint axes of a six degrees of freedom industrial robot can be
divided into two main categories: the base axes and the wrist axes.
The first three joint axes are the base axes which are mainly used for
positioning the end effector. The last three joint axes are the wrist axes
which realize the orientation of the end effector. A tool or payload may
6 Introduction

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

Distinct in our identification approach with respect to literature is


the use of periodic trajectories for the excitation of the system, which
allows data reduction by data averaging which improves the signal-to-
noise ratio. The parameter estimation is based on the maximum likeli-
hood estimator. Due to an appropriate parameterization, the identifi-
cation model becomes linear in the inertial parameters, which facilitates
the parameter estimation. As a final validation the obtained dynamic
model is used to improve the robot accuracy. This step is realized
without major modifications to the existing industrial controller.

1.4 Main contributions of this research

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:

• Experimental validation of the identification approach


using both internal and external sensors. The use of dif-
ferent types of sensors into one combined identification problem
provides more information on the robot dynamics. This allows
to improve the accuracy of the parameter estimation and the
actuator torque prediction. With control and simulation appli-
cations in mind, accurate torque prediction is the first objective.
This thesis presents the experimental validation of this combined
approach. Since the rotor inertias have a different torque contri-
bution to the internal and the external model, the link and rotor
inertias are considered separately in the identification model. The
experimental results confirm the reduced uncertainty on the iner-
tial parameter estimates; not only the standard deviation on the
parameters appearing in both models is smaller, also the other
parameters in the internal or external model take advantage of
8 Introduction

the combined approach. An improvement of the actuator torque


prediction is however not confirmed by the experimental results.

• Extension of the robot identification method to the esti-


mation of the inertial parameters of the robot payload.
In this application not only the actuator torque prediction accu-
racy is important, but special attention is paid to the accuracy of
the individual parameter estimates. Therefore, the first evalua-
tion objective becomes the accuracy of the individual parameter
estimates. This work presents a payload identification approach
which does not require a full identification of the manipulator, but
compensates for all known robot dynamics based on available a
priori information. A sensitivity analysis is performed to inves-
tigate the influence of the quality of the a priori information on
the final accuracy of the payload parameter estimates. To exper-
imentally validate the approach, a calibrated reference payload is
designed of which all inertial parameters are accurately known.
The experimental results show that the presented payload identi-
fication approach is able to provide accurate parameter estimates
for different payload configurations, and to predict accurately the
required actuator torques.

• Improvement of the path tracking accuracy by trajec-


tory pre-compensation. The obtained dynamic robot model
with payload is used to improve the path tracking accuracy of
industrial robots. Based on a dynamic model of the robot ma-
nipulator and the controller, a dynamic correction is calculated
which is introduced in the standard industrial controller as a tra-
jectory compensation. This pre-compensation method is imple-
mented on an experimental setup. The experimental results show
a significant improvement of the path tracking accuracy.

During this research three different industrial manipulators have


been used for the experimental validation of the methods. These in-
clude the older generation KUKA IR 361 manipulator, and the current
generation KUKA KR15 and Stäubli RX130. This experience enlarges
the industrial relevance of the presented methods.
1.5. Chapter by chapter overview 9

1.5 Chapter by chapter overview


First, chapter 2 briefly surveys the wide range of literature related to
this research domain.
Chapter 3 explains in more detail the elements of the identification
approach and the elements which are taken into account in the dynamic
robot model.
In chapter 4 internal and external models are combined into one
identification scheme. The experimental validation shows the improved
parameters accuracy and torque prediction.
Chapter 5 presents an approach to identify the inertial parameters
of the robot payload. The sensitivity of the different elements in the
model is discussed.
Chapter 6 uses the dynamic robot model, obtained by applying
above mentioned methods, to calculate off-line an appropriate feedfor-
ward signal for the robot controller. The feedforward signal compen-
sates for the nonlinear robot dynamics, resulting in an improvement of
the path tracking accuracy of industrial manipulators.
Finally, chapter 7 concludes this work and gives some suggestions
for future work.
The appendices give the kinematic and dynamic equations used, the
derivation of the contribution of the rotor inertias, and other relevant
information about the industrial manipulators.
10 Introduction
Literature Survey
2
If I have been able to see further,
it was only because I stood on the shoulders of giants
Isaac Newton

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

about this aspect. Initially rather theoretical methods were developed


to describe and to control the robot dynamics. Due to the increasing
computing power, especially in the last decade, most of these methods
have been implemented and tested experimentally.
It is impossible to describe the full literature on robot dynamics
within the scope of this chapter. This chapter presents a survey of the
research in the field of experimental identification, particularly applied
to serial robot manipulators. The most relevant techniques and appli-
cations found in literature are summarized. After a short introduction
to identification in section 2.2, the different modelling approaches for
robot and payload identification are given in section 2.3. Section 2.4
presents the general identification procedure. The different steps are
discussed in the following sections: model generation (section 2.5), the
model parameters (section 2.6), experiment design (section 2.7), and
parameter estimation (section 2.8). Section 2.9 gives an overview of
optimization techniques for nonlinear problems. To illustrate the use-
fulness of experimental identification, section 2.10 shows applications of
dynamic models in path planning, model-based control and simulation.

2.2 Introduction to identification

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

Figure 2.1: Nonlinear models

taining precise mathematical models generally identification methods


have to be applied. They fit models developed by theoretical modelling
to the measurements. The ideal solution would be a combination of
these methods as was done for the light weight robot (LWR) of the
German Aerospace Center (DLR). This allows the identification meth-
ods to be validated by comparing the estimated parameter values to
the real values.
Identification methods can be classified in various categories ac-
cording to the models they use: linear and nonlinear models, contin-
uous time and discrete time models, parametric and nonparametric
models (Isermann, 1999). In this work, only the nonlinear models are
relevant because of the nonlinearity of the robot dynamics. Figure 2.1
shows a classification for nonlinear models.
When a priori knowledge is available about the system, parametric
models can be used. The model is derived based on the laws of physics
and mechanics resulting in a set of nonlinear differential equations.
The unknown model parameters have a physical meaning and can be
identified from measurements. The parametric modelling approach is
widely used for robot identification.
Non-parametric models are a practical alternative when no knowl-
edge is available about the structure of the nonlinear system. Look-up
tables contain the response values for different combinations of the in-
put variables. For systems with a large number of variables polynomial
models provide an alternative, e.g. Volterra series describe the output
of a nonlinear system as the sum of the responses of a first order, sec-
14 Literature Survey

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.

2.3 Approaches to modelling and identification


With respect to the identification of inertial parameters, several ap-
proaches have been developed in the last decade. They can be divided
into two categories according to the models and the type of sensors they
use. In the classical and most widely used identification approach (Gau-
tier, 1986; Swevers et al., 1996; Tafazoli et al., 1999), the parameters
are estimated from motion data and actuator torques or forces, both
measured by ‘internal’ measurement devices. The built-in encoders of
the actuators are used to measure the motion, and the actuator torque
data are obtained through actuator current measurements, i.e. no ad-
ditional sensors are required. The dynamic model relating these inputs
and outputs is called internal model.
An alternative approach to identify the inertial parameters makes
use of the so-called reaction or external model of the robot (Liu et al.,
1998; Raucent and Samin, 1993). This model relates the motion of
the robot to the reaction forces and torques on its base plate and is,
therefore, totally independent from internal torques such as joint fric-
tion torques. The robot motion can be measured by means of joint
2.3. Approaches to modelling and identification 15

encoders (internal sensors) or by means of a high-precision visual po-


sition sensor (external sensor). The reaction forces and torques are
measured by means of an external sensor: a force/torque platform.
West et al. (West et al., 1989) use a base-mounted force/torque sensor
to estimate the mass properties of a manipulator statically. The ma-
nipulator is mounted on a six-degrees-of-freedom force sensor and the
reaction forces and torques are measured for different positions of the
manipulator joints and different orientations of the base. This method
does not yield all inertial parameters and the parameters are therefore
only applicable for gravity compensation. Further, it requires the reori-
entation of the base of the robot, which is not very practical. Raucent
et al. (Raucent et al., 1992) introduced a method based on barycentric
parameters to estimate the inertial properties from external measure-
ments without requiring base reorientation. The position of each link is
measured by a high-precision visual position sensor. This is very advan-
tageous because it avoids the need for a robot controller interface which
provides encoder readings. Liu et al. (Liu et al., 1998) presented an
estimation algorithm derived from the Newton-Euler algorithm, which
uses the base force sensor measurements and the manipulator joint
positions and velocities. A low-pass filter technique eliminates the re-
quirement for joint accelerations. Based on this approach, (Morel et al.,
2000) presents a measurement-based method to compensate for joint
friction using a six-axis force/torque sensor mounted under the base of
the robot. Recently, Grotjahn (Grotjahn and Heimann, 2000) derived
analytical simplification and regrouping rules which lead to a formula-
tion of the base force/torque equations of serial robots which is linear
with respect to the dynamic parameter vector. From an experimental
application he concludes that the reaction method yields much better
results than the identification by motor current measurements. Espe-
cially for the small parameters of the hand axes large improvements
are obtained due to the absence of friction.

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

bined approach will be applied to the identification of an industrial


robot and experimentally validated.

When a tool is attached to the robot end effector or an object is


picked up, this payload becomes a part of the manipulator dynamics
and its inertial parameters have to be identified and taken into account
in the dynamic model. Identification of the inertial parameters of the
robot payload is complementary to dynamic robot identification. Sim-
ilar to above, two approaches can be distinguished based on external
and internal sensors respectively.

A first approach uses a force/torque sensor to measure the reaction


wrench exerted by the payload on the robot end effector (Atkeson et al.,
1986; Kozlowski and Dutkiewicz, 1996; Olsen and Bekey, 1986). This
sensor is mounted between end effector and payload. This approach
has the advantage that it is easy to implement since only kinematic
data is required to calculate the payload inertial parameters and no
dynamic information of the manipulator itself. However, this approach
is not applied in this work, because a wrist-mounted force sensor is
not always present and its allowed force range might be too small for
a persistent excitation.

The other approach uses the motor currents as a measure of the


actuator torques. In this case, not only the torque contribution of the
payload is measured, but also the rigid body dynamics of the robot
links. In (Gautier et al., 1995), the parameters identified without pay-
load plus the known payload parameters are compared to the values
identified with the payload in order to validate the robot identification
results. Raucent (Raucent and Samin, 1993) modifies the system by
adding a known mass to the last link and the change in the correspond-
ing barycentric parameters are compared to the exact values. A similar
approach was used by (Zeng and Unbehauen, 1999). Different payloads
are attached to the robot and the estimated parameters are compared.
From the change in the robot parameters the payload parameters are
estimated. Murotsu (Murotsu et al., 1994) identifies the parameters of
an unknown object handled by a space robot. The last robot link and
the object are considered as one body in the identification. Afterwards,
it is split up in two body subsystems and the inertial parameters of the
object are calculated.
2.4. Procedure for experimental identification 17

internal model external model

force/torque
robot motor current
platform
chapter 3 at base
chapter 4

wrist-mounted
payload motor current force sensor
at end effector
chapter 5

Figure 2.2: Identification possibilities framework

Figure 2.2 summarizes the different approaches to robot and pay-


load identification and shows the coherence of the chapters in this the-
sis. For both applications internal or external sensors can be used.
Chapter 3 illustrates the general robot identification procedure using
the internal model. The following chapter 4 combines the internal and
external model approach for the robot identification. In chapter 5 a
payload identification approach will be presented which is based on
motor current measurements.

2.4 Procedure for experimental identification


of dynamic parameters

The procedure to experimentally identify parameter values of a real


robot system is generally accepted in literature (Antonelli et al., 1999;
Atkeson et al., 1986; Gautier, 1986; Khalil and Dombre, 2002; Mukerjee
and Ballard, 1985). Most of the alternatives presented are variations
of the same scheme. Roughly, the identification procedure can be for-
mulated as follows:

• First, the dynamic identification model of the manipulator is de-


18 Literature Survey

rived, e.g. in symbolic form. This modelling is mostly based on


physical principles.
• The minimal set of dynamic parameters to be identified, i.e. the
set of base parameters, is computed. It is possible to simplify
the dynamic model by neglecting the contribution of certain pa-
rameters to the joint torques, or by considering the kinematic or
geometric structure of the manipulator.
• Excitation trajectories have to be designed in order to guarantee
good quality of the measured data. This includes the choice of a
trajectory parameterization and an optimality criterion.
• The identification experiment is executed, during which the mo-
tion and the required forces and torques are measured.
• Estimates of the unknown dynamic parameters are obtained by
applying a suitable estimation algorithm.
• The identified dynamic model is experimentally validated. In
most cases, this is realized by comparing the predicted and the
measured torques for a trajectory which is different from the tra-
jectory used in the excitation.

In the following sections, the different steps in this procedure are dis-
cussed in more detail.

2.5 Model generation


A robot manipulator is constructed with mechanical bodies that are
interconnected by joints. Usually, the robotic multibody system has a
tree structure. With some small modification, the methods presented
in this section can also be applied to closed loop robots (Gautier et al.,
1995).

2.5.1 Derivation of the dynamic equations

Literature presents two methods to obtain an identification model of


the rigid-body dynamics of the manipulator. One method uses the
2.5. Model generation 19

total energy of the system, while the other method is based on the
equations of motion.

The integral formulation or the energy approach

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

An alternative method to take into account friction in the integral


formulation is presented in (Gautier et al., 1995). The authors propose
a friction model including Coulomb and viscous friction

τf = fc sign(q̇) + fv q̇. (2.4)

Including this model in the integral formulation gives:


Z t1 Z t1 Z t1
τfT q̇ dt = fC |q̇|dt + fv q̇ 2 dt. (2.5)
t2 t2 t2

Since the friction characteristic is usually not constant, but varies in


time, friction has to be identified for each experiment. Equation (2.5)
allows to estimate the friction coefficients together with the other in-
ertial parameter values.
2.5. Model generation 21

The differential formulation or dynamic model approach

A second method to derive a complete model starts from the equations


of motion which can be formulated as a system of second order differ-
ential equations (Atkeson et al., 1986; Khosla and Kanade, 1987; Olsen
and Bekey, 1986). This model serves for control and relates the joint
motion to the joint torques.
The dynamics of a rigid body robot with revolute joints can be
described adequately using the equations of motion (Canudas de Wit
et al., 1996; Sciavicco and Siciliano, 1996), resulting in

M(q)q̈ + C(q, q̇)q̇ + g(q) = τ, (2.6)

where q is the vector of generalized joint coordinates, M(q) is the sym-


metric positive definite inertia matrix, C(q, q̇)q̇ is the vector containing
all velocity dependent coupling terms arising from Coriolis and centrifu-
gal forces, g(q) represents the vector of gravitational torques, and τ is
the vector of torques acting at the joints.
A number of algorithms have been proposed for generating the dy-
namic equations of motion for a robot manipulator in terms of the
specified kinematic and inertial parameters of the links, such as the
recursive Newton-Euler method (Atkeson et al., 1986), Lagrange en-
ergy method (Sheu and Walker, 1989), Kane’s method based on vir-
tual power, etc. In one form or another, the models are obtained from
known Newtonian physical laws. These methods are equivalent to each
other in the sense that they describe the dynamic behavior of the same
physical robot manipulator. However, the structure of these equations
and, particularly, the computational efficiency of the equations may
differ, as they are obtained for various reasons and purposes, such as
suitability for simulation, real-time control, parameter estimation, con-
troller design, etc.
Among these methods, the Lagrange and the Newton-Euler for-
mulation have been generally used. These methods have their own
advantages and disadvantages. Atkeson (Atkeson et al., 1986) starts
from the Newton-Euler equation to derive the set of equations. The
advantage of the Newton-Euler method is that the amount of compu-
tation necessary to obtain the joint torques is quite small. In order
to design control strategies and to perform dynamic simulations, an
22 Literature Survey

explicit set of closed form differential equations in state-space form is


often useful.
An alternative method uses the equations of Lagrange and is based
on energy considerations. The dynamic model of a manipulator is
obtained from the Lagrange equations

d ∂L ∂L
− = τj , j = 1, . . . , n (2.7)
dt ∂ q̇j ∂qj

where L = K − P is the Lagrangian, K is the kinetic energy, and


P is the potential energy of the system. τj represent the generalized
forces, i.e. a torque or force applied to the system, e.g. caused by an
actuator. The Lagrange formulation for the dynamics is a relatively
simple, elegant approach which yields a set of differential equations in
which the physical meaning of each term in the equations is clear. For
this reason, this approach is widely used in theoretical derivations. The
most significant drawback of the Lagrange formulation arises from the
computational inefficiency of its general form, which has traditionally
been a bottleneck for model-based control (Khosla and Ramos, 1988).
Both approaches lead to a model τ = f (q, q̇, q̈, θ) that is mostly
nonlinear in the physical inertial parameters. Using an appropriate
combination of the inertial parameters, e.g. using barycentric coordi-
nates (Raucent and Samin, 1994) or the modified Newton-Euler formu-
lation (Atkeson et al., 1986), the set of equations can be reformulated
to become linear in the inertial parameters τ = Φ(q, q̇, q̈)θ. This will
be addressed in more detail in section 2.6. Linearity in the parameters
is a very interesting property because it allows to use linear parameter
estimation algorithms.
Friction and other effects can easily be introduced in the dynamic
model. This can be done by adding extra terms to the model equation,
as indicated in the following sections.

The integral versus differential formulation

In (Gautier et al., 1995), (Kozlowski and Dutkiewicz, 1996) and (Prüfer


et al., 1994), both formulations have been compared. Their conclusions
are briefly summarized.
2.5. Model generation 23

• The integral formulation does not require to calculate or measure


accelerations. As a consequence, this formulation is less rich in
information.

• Following from the previous point, it is important to apply a good


excitation trajectory. This trajectory should be able to excite as
good as possible all information which is present in the model
equations.

• If the trajectory measurements do not fit an analytical descrip-


tion, analytical differentiation cannot be applied, and numerical
differentiation techniques have to be used in order to calculate
velocity and acceleration. This introduces additional (numeri-
cal) errors. The integral formulation has the advantage that the
information about the acceleration is not required.

In this work, we apply the differential formulation to derive the


model equations. This choice is motivated by the fact that the dynamic
model will be used for control purposes, which immediately leads to the
differential formulation.

2.5.2 Models including joint flexibility

The above-mentioned dynamic model considers all robot links as rigid


body elements. Neglecting flexibilities is an appropriate approxima-
tion for the dynamics of industrial robots which are constructed to be
very stiff. The constant pressure to reduce prices and increase perfor-
mance make that manufacturers reduce the weight of new generation
manipulators at the cost of an increased flexibility. Taking into account
flexibility will therefore gain importance in the future. In literature two
extensions to the classical rigid body approach are found: (1) a robot
with elastic joints, and (2) a robot with elastic bodies. The latter type
of flexibility is of less importance than the first one. Joint elasticity is
the major source of flexibility in many applications. Especially if the
robot is moving fast, we cannot assume the robot joint to be stiff. In the
last years, new efforts have been done to identify this stiffness of indus-
trial manipulators. However, most (experimental) results are restricted
to one joint axis and neglect the nonlinear dynamic coupling (Norrlöf
24 Literature Survey

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

are mostly not included. Although flexibilities will have an increasing


importance in the near future, literature brings no full solution for the
identification of a six-degrees-of-freedom flexible manipulator. This
requires more built-in sensors, e.g. joint torque and position sensors,
and a more extended identification model to estimate the pronounced
nonlinearities.
In this work we consider no flexibility of the bodies and joints and
only look at the rigid body dynamics. This approach is allowed because
industrial manipulators are constructed for being stiff. Furthermore, it
is shown that compensation for the nonlinear rigid body dynamics in
the controller already gives a significant improvement of the dynamic
behavior.

2.5.3 Friction modelling

It is well known that friction is a major source of disturbances affecting


motion quality. Therefore, it must be included as an additional com-
ponent in robot modelling. The classical approach describes friction
as a nonlinear and discontinuous function of the relative velocity be-
tween the contacting surfaces. This model often includes the following
components

Coulomb friction is described as

τC = fC sign(q̇i ) (2.8)

which results in a discontinuity at zero velocity.

Viscous friction gives a linear relation with the velocity

τvisc = fv q̇i (2.9)

with fv the viscous friction coefficient.

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.

In robot identification applications, a model including viscous and


Coulomb friction is frequently applied (Armstrong-Hélouvry et al.,
1994; Canudas de Wit et al., 1991; Gautier et al., 1995; Pfeiffer and
Hölzl, 1995). Such model is linear in the parameters which significantly
simplifies the parameter estimation. Since it is difficult to derive a sim-
ple model for the stiction effects at low velocity, the friction model can
be explicitly restricted to a certain velocity range (Antonelli et al.,
1999; Caccavale and Chiacchio, 1994)

τf = fC sign(q̇) + fv q̇, |q̇| ≥ q̇min (2.11)


=0 |q̇| < q̇min

where q̇min is a suitable velocity threshold.


This simple model is, however, not capable of fully describing the
experimentally measured friction characteristic. Daemi and Heimann
(Daemi and Heimann, 1996) propose better descriptions of the mea-
sured friction characteristics:
1
τf = f0 + f1 sign(q̇) + f2 q̇ + f3 q̇ 3 (2.12)
τf = f0 + f1 sign(q̇) + f2 q̇ + f3 arctan(f4 q̇). (2.13)

These models provide better results than the classical approach. It


should be noted that model parameters in (2.12) and (2.13) no longer
represent physical properties. In addition, these models have a dis-
continuity at zero velocity. This can be smoothed by replacing the
Coulomb friction term with an appropriate approximation, e.g. the
term fi arctan(ci q̇) with a suitable constant ci (Heim and von Stryk,
2000)
In (Schäfer and da Silva, 2000), some models are presented to model
the friction torques inside an harmonic drive gear. The viscous friction
model is extended with a nonlinear cubic term, yielding:

τvisc = f1 q̇ + f2 q̇ 3 . (2.14)

For the dry friction, a modified classical Coulomb friction model is


taken, that accounts for the Stribeck effects. These models are mainly
2.5. Model generation 27

combinations of the above-mentioned components.


−| q̇ |δs
 
τdry1 = fC + fS e q̇s sign(q̇) (2.15)
q̇ q̇ −| q̇ |δs
τdry2 = fC arctan + fS e q̇s (2.16)
q̇1 q̇1
The subscript ·C indicates the Coulomb friction and the subscript ·S is
related to the part modelling the Stribeck effect. The constants fS , q̇s ,
q̇1 and q̇2 have to be determined experimentally. The last model avoids
discontinuities at zero velocity.
Daemi et al. (Daemi and Heimann, 1998) show the time variation of
the friction characteristics. Typically in robot identification, the robot
is warmed up for some time in order to reach stationary temperature
and lubrication. Measurements show that this is not generally pos-
sible for industrial robots. After a short break in the measurements,
the friction becomes significantly larger. This makes it impossible to
guarantee always the same measurement conditions. Furthermore, the
paper mentions that the friction model depends on the driving torque.
These are unmodelled effects leading to systematic errors in the iden-
tification, even with a good excitation.
The temperature dependence of friction was already mentioned
in (Prüfer and Wahl, 1994). Since friction varies almost linearly with
temperature, orthogonal polynomials were used to describe friction as
a function of velocity and temperature. The resulting model is applied
in robot control to overcome the friction effects.
Albu-Schäffer (Albu-Schäffer, 2001) reports a load dependency of
the friction parameters.
− q̇q̇
(fC + ν1 |τ | + ν2 τ 2 )(1 + fS e s ) sign(q̇) + fv q̇ (2.17)

where τ is the driving torque, and ν1 and ν2 are the corresponding


coefficients.
More detailed microscopic and stochastic friction models are pre-
sented in literature (Armstrong-Hélouvry et al., 1994; Canudas de Wit
et al., 1995; Dahl, 1977; Lampaert et al., 2002; Lampaert et al., 2003;
Swevers et al., 2000). These models account for the microsliding dis-
placements observed at motion start or reversal resulting in hysteresis.
28 Literature Survey

Two different friction regimes can be therefore distinguished (Swevers


et al., 2000): the presliding regime, where the friction force appears
to be a function of displacement rather than velocity, and the gross
sliding regime, where the friction force is a function of the sliding ve-
locity. Hence, these advanced friction models combine a simple friction
model for faster motions with a complex model for the small displace-
ments. In practical robot applications, however, very slow motions
and small displacements do not frequently appear such that a simpler
friction model will give sufficiently good results. In addition, complex
friction identification mostly requires the inertia to be known a priori
and the advanced friction models are nonlinear in the unknown param-
eters. This makes them inconvenient for inclusion in a dynamic robot
identification procedure.

2.5.4 Rotor inertia

Each joint in a serial manipulator is driven by a motor through a gear


unit. These units use typically reduction ratios µi between 50 and 100,
and in the case of harmonic drives even up to 200. When the rotor
inertias are relatively small, it is common practice to add the rotor
inertia to the inertia of the corresponding link in the dynamic model.
Nevertheless, it has been shown that the inertial effect of fast spin-
ning rotors may have a significant influence on the dynamic behav-
ior (Chen, 1989; Sciavicco et al., 1996; Tsai, 1999). This is because
the rotor inertia is multiplied with the square of the transmission ra-
tios. Additional contributions have to be introduced in the off-diagonal
elements of the inertia matrix to account for Coriolis and centrifugal
effects of the relative rotor motion.
Raucent (Raucent, 1990) and Sciavicco et al. (Sciavicco et al., 1996)
consider the link and rotor contributions separately in the derivation
of the dynamic model. In their paper, Sciavicco et al. quantify the
error made by simply adding the reduced rotor inertia µ2i Im to the
inertia of the corresponding link. From the derivation, it follows that
this approximation is only exact when

eTmi+1 ωi = 0. (2.18)
2.6. The parameters of the identification model 29

Here, ωi is the angular velocity of the link i on which the motor is


mounted, and emi+1 is the unit vector lying along the rotation axis of
the rotor. It is implicitly assumed that the joint axis i + 1 is paral-
lel to the rotation axis of actuator i + 1. Equation (2.18) expresses
that the simplification is allowed for motors mounted on links with an
angular velocity which is zero or orthogonal to the rotor axis for any
configuration of the manipulator.

2.6 The parameters of the identification model

The previous section derived the dynamic equations and presented


models for additional effects such as friction. In this section these
equations are reformulated in a form that is suitable for identification.
The unknown parameters to be identified are selected and added to the
parameter vector. A suitable transformation of these parameters allows
to rephrase the equations into a form which is linear in the transformed
parameters. Finally, a reduction of the parameter vector gives the base
set of parameters.
Each link i is characterized by ten inertial parameters:

• the mass mi ,

• the position of the center of gravity ci = [cx,i cy,i cz,i ]T expressed


in the link frame R (see figure 2.3), and

z
COG
ci
bodyi-1
R y bodyi

Figure 2.3: The link body frame R and the center of gravity
30 Literature Survey

• the six components of the inertia tensor I expressed with respect


to the center of gravity:
 T
Ixx,i Iyy,i Izz,i Ixy,i Ixz,i Iyz,i . (2.19)

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.

2.6.1 Linearity in the parameters

The dynamic equations (2.6) are mostly a nonlinear function F of the


elements of θf ull as they are defined above.
τ = M(q)q̈ + C(q, q̇)q̇ + g(q) (2.21)
= F(q, q̇, q̈, θf ull ) (2.22)
Fortunately, other parameterizations and parameter transformations
have been presented which allow to rewrite the equations as a linear
relation of the set of dynamic parameters
τ = Φ(q, q̇, q̈) θlinear (2.23)
with Φ the observation or identification matrix. θlinear is the vector
of transformed parameters. The dynamic model is already linear with
respect to the inertia moment of the rotor and the friction coefficients, if
a friction model was selected that is linear in the unknown parameters
(cfr. section 2.5.3). Consequently, the corresponding parameters do
not need any transformation. The property of linearity is interesting
because it allows a much simpler parameter estimation.
A commonly used transformation to achieve linearity results in the
use of first and second order moments of inertia (Atkeson et al., 1986;
Khosla, 1989; Mayeda et al., 1990; Sciavicco et al., 1996)
R R R R R R
plinear,i = [m sx sy sz Ixx Iyy Izz Ixy Ixz Iyz Im fC fv ]T . (2.24)
2.6. The parameters of the identification model 31

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.

2.6.2 Identifiability and minimal set of parameters

Generally, the dynamic model parameters cannot all uniquely be iden-


tified. Unidentifiability results from the fact that the kinematic con-
struction limits the relative motion between the links. In order to be
able to estimate uniquely all inertial parameters, the Jacobian of the
identification model with respect to the unknown parameters must be
of full column rank (Schoukens and Pintelon, 1991). The matrix Φ in
equation (2.23) is generally not of full rank. The dynamic parameters
can be divided in three categories: completely identifiable, identifiable
in linear combinations, and unidentifiable (Atkeson et al., 1986).
The set of standard dynamic parameters can be simplified to ob-
tain the set of base inertial parameters (Mayeda et al., 1990; Sheu and
Walker, 1989). The base set is defined as the minimal set of parame-
ters needed to describe the dynamic model. These parameters can be
obtained from the standard inertial parameters by eliminating those
which have no effect on the dynamic model and by regrouping some
others in linear combinations. Some authors have introduced extra
simplifications in their models, neglecting second order terms such as
Coriolis and centrifugal terms. Such strategy improves the condition
number of the identification matrix since less significant parameters
are omitted. At high speed however, the neglected terms may become
significant, making accurate position control of the manipulator impos-
sible.
The base set can be found by considering the rank of the identifica-
tion matrix Φ. A procedure to obtain the set of base parameters based
on symbolic manipulation of equation (2.23) is proposed in (Gautier
and Khalil, 1990). Similar rules to obtain the minimal set of barycentric
32 Literature Survey

parameters was presented in (Fisette et al., 1996). This is a complex


procedure, especially when the number of links is large. An auto-
matic procedure to determine a set of base parameters is a numerical
method based on the Singular Value Decomposition (SVD) (Gautier,
1990; Pfeiffer and Hölzl, 1995; Sheu and Walker, 1989). The disadvan-
tage of this procedure is, however, that the linear combinations in the
base set may change when another trajectory is used. This makes it
difficult to compare the identification results and it does not simplify
the physical interpretation of the estimated parameters. Therefore, it
is better to find once a unique minimal set of parameters which is valid
for all possible motions.

2.7 Experiment design

A critical issue for identification of dynamic parameters is the choice


of the excitation trajectory. It should sufficiently excite the system in
order to estimate all unknown parameters in the model unambiguously.
If this condition is not satisfied, some parameters may become uniden-
tifiable or very sensitive to noise on the measured data. The quality of
the resulting parameter estimates depends on the quality of the avail-
able input and output signal, i.e. is directly related to the choice of the
excitation trajectory.

The first considerations on finding excitation trajectories for the


identification of dynamic robot parameters were presented by Arm-
strong (Armstrong, 1989). Many researchers recognize the importance
of a good excitation experiment design (Armstrong, 1989; Calafiore
and Indri, 1998; Gautier and Khalil, 1992; Vandanjon et al., 1995).
The quality of the measured signals can be enhanced slightly by filter-
ing or the use of an observer, but cannot replace a suitable trajectory
optimization.

The design of a good excitation trajectory includes the decision


which joint axes have to be excited, the choice of a trajectory parame-
terization and an optimization criterium, and solving the optimization
problem.
2.7. Experiment design 33

2.7.1 Separation of experiments

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

Kozlowski (Kozlowski and Dutkiewicz, 1996) only uses movements


of single joints and simultaneous movements of two joints. A shortcom-
ing of axis by axis excitation is the risk of accumulating errors since
the values of the already identified parameters will be used as a pri-
ori knowledge in the identification of the remaining parameters (Khalil
and Dombre, 2002). Some parameters, e.g. the off-diagonal elements
of the inertia matrix, are only identifiable when more than one axis is
moved during the excitation.
In this work we will identify all parameters in one identification
experiment using one optimized excitation trajectory. We recognize
that this approach might not be appropriate in all cases. For slow
moving robots, such as hydraulic manipulators, this approach may lead
to a badly conditioned estimation problem.

2.7.2 Optimization criteria

A proper choice of trajectory should ensure the excitation of the full


system in a sufficient way such that all parameters can accurately be
identified. Therefore, optimization techniques are used. This section
discusses some commonly used optimization criteria which should guar-
antee the trajectory to be persistently exciting.
Armstrong suggested to minimize the condition number or the in-
verse of the smallest singular value of the observation matrix (Arm-
strong, 1989). The condition number of a matrix Φ is defined as

σ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

If good a priori knowledge θ̃ about the unknown parameters θ is


available, the identification matrix can be weighted by θ̃ (Pressé and
Gautier, 1993).

Φw = Φdiag(θ̃). (2.26)

A condition number of this weighted identification matrix equal to one


then means that all parameters are estimated with the same relative
accuracy.
Other optimization criteria have been proposed (Antonelli et al.,
1999; Armstrong, 1989; Pressé and Gautier, 1993; Khalil and Dom-
bre, 2002), e.g. maximization of the smallest singular value. Large
singular values ensure a small standard deviation on each parameter.
Combining this criterion with the condition number gives
1
cond(Φ) + λ . (2.27)
σmin (Φ)
The variable λ indicates the relative importance of the two criteria.
Instead, another popular criterion is based on a scalar measure of
the covariance matrix. The d-optimal criterion is the most appealing
because it guarantees minimal uncertainty on the parameter estimates
when only the torque measurements are corrupted by noise and the
identification matrix is free of noise (Ljung, 1987; Swevers et al., 1997).
It minimizes

− log det(ΦT Σ−1 Φ). (2.28)

Σ is the diagonal covariance matrix of the actuator torques.


We remark that excitation trajectories should not excite any un-
modelled dynamics, like joint flexibilities. All presented optimization
criteria fail to include this requirement.

2.7.3 Parameterization for the excitation trajectory

The choice of parameterization for the excitation trajectory is a very


important issue. It directly determines the number of parameters in
the optimization problem, and the effort needed to calculate velocity
and accelerations from the position measurements.
36 Literature Survey

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

Although these trajectories are more difficult to implement on an in-


dustrial setup, this parameterization has several advantages. It is e.g.
possible to calculate the velocities and accelerations in the frequency
domain, which avoids phase distortions. The properties and advantages
of periodic excitation will be discussed in more detail in section 3.3 of
the next chapter.
The actual optimization of the excitation trajectory generally in-
volves a high number of optimization variables. Solving such problem
requires a lot of computation time and may result in a local minimum.
Calafiore (Calafiore et al., 2001) presents a method based on a pa-
rameterization using harmonic functions. The optimization problem is
solved using a Genetic Algorithm (GA). In practice, such optimization
algorithms have proven to be particularly efficient and robust in the
global search of solutions of nonlinear optimization problems.

2.8 Parameter estimation


When the dynamic model has been derived and the excitation trajec-
tory is optimized, the actual experiment can be carried out. During this
experiment the required signals are measured. Based on the collected
data, the unknown model parameters are estimated.
Two classes of estimation methods exist. On the one hand, off-line
estimation methods use a batch of measurement data and calculate
38 Literature Survey

the unknown parameter values in one calculation. In the on-line es-


timation methods the parameter estimates are updated every time a
new measurement is available. Off-line estimation methods are more
frequently used because they are easier to implement, do not require
starting values and have no calculation time constraint.

Off-line parameter estimation

The classical least-squares method is a well-known method to solve an


overdetermined set of linear equations (equation (2.31)). Other more
complex methods exist that allow to take into account information
about the noise on input and output. More available a priori knowledge
generally yields better properties of the estimators.
As indicated in section 2.6.1, the dynamic model is in most cases
linear in the inertial parameters
τ = Φ(q, q̇, q̈)θ. (2.31)
The easiest way to estimate θ is the least squares (LS) solution of an
overdetermined linear system (Canudas de Wit et al., 1996). The LS
estimator assumes the the identification matrix Φ is of full column rank,
i.e. the set of parameters is minimal. The least squares solution is
θ̂LS = (ΦT Φ)−1 ΦT τ, (2.32)
where (ΦT Φ)−1 ΦT is the pseudoinverse of the matrix Φ. This LS es-
timator supposes that the torque measurements are corrupted with
Gaussian white noise and that the standard deviation is equal for all
actuators. In practice, this condition is not satisfied which leads to a
bias on the parameter estimates (Schoukens and Pintelon, 1991). How-
ever, due to its simplicity, the least squares estimator is often used in
literature (Atkeson et al., 1986; Canudas de Wit et al., 1996; Grotjahn
et al., 2001).
An improvement over the classical LS estimator is the use of a
weighted least squares (WLS) estimator (Gautier, 1997; Khalil and
Dombre, 2002). In this estimator, the error is weighted with a weighting
matrix Σ, and the solution becomes
θ̂W LS = arg min (τ − Φθ)T Σ−1 (τ − Φθ). (2.33)
θ
2.8. Parameter estimation 39

When the covariance matrix of the noise on τ is used as the weighting


matrix Σ, this WLS estimator is called the Markov estimator. In (Grot-
jahn et al., 2001), the maximum torque of each axis is used as the
weighting factor.
Swevers (Swevers et al., 1997) proposed an approach based on the
maximum likelihood estimator (MLE). The maximum likelihood esti-
mate θM L is given by the value of θ which maximizes the likelihood.
Literature shows that this estimator is consistent, asymptotically unbi-
ased and efficient. In practical cases, the parameter estimation assumes
that the measured actuator torques are corrupted by independent zero-
mean Gaussian noise, and that the joint angle measurements, and con-
sequently also the joint velocities and accelerations, are free of noise.
Under these assumptions, the identification matrix is considered to be
free of noise and the maximum likelihood parameter estimation corre-
sponds to a Markov (or WLS) estimation problem. The weights are
the variance estimates of the actuator torques.
Olsen (Olsen and Petersen, 2001) implemented the full maximum
likelihood estimator which considers both noise on the torque mea-
surements and on the joint position measurements and the derivatives
velocity and acceleration. Finding the solution of this estimation prob-
lem is computationally expensive and requires a good initial guess of
the parameter values. Experimental results show that this maximum
likelihood estimator performs as well as the weighted least squares es-
timator. The reason for this is that the variances of the noise on the
torque measurements are dominant compared to the noise on the joint
position measurements.
To further improve the estimation method, (Pressé and Gautier,
1992) proposes to take into account statistical a priori information
about the inertial parameters. This information can be obtained from
CAD data of the manufacturer or from the previous step in an itera-
tive identification process. Simulation results show that this Bayesian
approach results in smaller confidence intervals on the parameter esti-
mates.
The maximum likelihood principle assumes that the true parametric
model is known exactly. This assumption is, however, seldom verified
in practice, where models only approximate reality. A robust version
40 Literature Survey

of maximum likelihood takes the uncertainty in the underlying statis-


tical model explicitly into account. In particular, the lower bound on
the worst-case value of the likelihood function is maximized. Calafiore
and El Ghaoui (Calafiore and El Ghaoui, 2001) show that the robust
maximum likelihood (RML) estimation problem with uncertainty in
the regression matrix and in the observations covariance can be solved
as a semidefinite optimization problem (SDP) using convex program-
ming. The estimate maximizes the worst-case likelihood of the mea-
sured sample. The method takes into account both uncertainty on the
measurements and uncertainty in the regression matrix. The proposed
methodology computes an ellipsoid of confidence for the unknown pa-
rameters. This information is directly used in the expression of the
robust control law. In (Bona et al., 2000), robust linear estimation
is applied to the problem of manipulator parameter estimation and
experimentally validated.
When the dynamic model is nonlinear in the unknown parameters,
a nonlinear iterative estimation procedure is required and the methods
of Gauss-Newton or Levenberg-Marquardt can be used.

On-line parameter updating

Some critical parameter values might change due to different operation


conditions. For instance, the behavior of a satellite can be different
in space or on earth due to modified temperature conditions and the
absence of gravity. Parameters may show variation with temperature
or with time, e.g. due to wear and tear. A monitoring system can
be used to detect the breakdown of a machine or a possible critical
situation by looking at the parameter values.
In these situations, it can be considered to estimate the parameters
on-line in order to cover time variations of parameters. This applica-
tion, however, faces two difficulties (Albu-Schäffer, 2001):

1. To achieve convergence of the parameters the applied motion


must be persistently exciting the system, i.e. the measured sig-
nals should include all necessary information. This is especially
the case if the estimation is done during normal operation and
no optimized excitation trajectory is used.
2.8. Parameter estimation 41

2. If the identified parameters are simultaneously used in the control


algorithm, measures should be taken to assure stability of the
system.

For the time-dependent behavior of the physical parameters, an on-


line estimation algorithm can be applied, such a the Recursive Least-
Squares (RLS) (Gautier, 1986; Östring and Gunnarsson, 2002). The
recursive version of the classical least squares does not require remem-
bering all the past measurements. The resulting estimate is the same
as if we had solved one large estimation problem using all the data at
once. In (da Silva et al., 2000; Schäfer and da Silva, 2000), a modi-
fied Recursive Least Squares (RLS) algorithm with variable gain has
been derived. The gain is adjusted considering how good the previous
estimate has been.
An alternative method that takes into account uncertainty, is the
use of Kalman filtering (Guglielmi et al., 1987). Based on the direct
dynamic model an extended state z is defined. The extended state
includes both position and velocity and the model parameters. The
dynamic model
   −1 
q̈ M [τ − C(q̇, q)q̇ − g(q)]
ż = q̇  =  q̇  (2.34)
θ̇ 0

is nonlinear in the state parameters. A first order discretization of the


dynamic equations (equation (2.34)) leads to the model equations for
the extended Kalman filter (EKF). The EKF is suitable as an on-line
state estimator which is also useful for control. Gautier (Gautier et al.,
1993; Gautier and Poignet, 2001) observes that the identification re-
sults for the EKF are very sensitive with respect to the a priori knowl-
edge of initial values and convergence speed is lower than for WLS.
The EKF algorithm estimates both the velocities and the parameters
while WLS estimation needs the joint velocity and acceleration to be
calculated separately using bandpass filters. It does not appear to be
an advantage for the EKF because the off-line filtering for the WLS
can take special care to avoid introducing phase distortion on the cal-
culation of velocity and acceleration.
42 Literature Survey

Recently, a Non-Minimal State Kalman Filter (Lefebvre et al.,


2003) is presented. It is a finite-dimensional Bayesian filter that lin-
earizes any kind of nonlinear measurement equation in a higher dimen-
sional state space. A Kalman filter solves the linear estimation problem
in this higher dimensional space. However, this filter cannot be applied
because also the process model is nonlinear.
Honegger and Corke (Honegger and Corke, 2001) present an appli-
cation to a hydraulic manipulator where the dynamic parameters, that
are required in the calculation of the feedforward torque, are identi-
fied on-line using adaptation algorithms. A gradient descent algorithm
is used to adapt the dynamic parameters. Experimental results show
that this parameter adaptation leads to an improved performance of
the feedforward controller.
In this work we will use an off-line estimator based on the maximum
likelihood framework. Due to the properties of the dynamic model, such
as linearity in the parameters and no uncertainty on the identification
matrix, the estimator becomes in practice a weighted least squares
estimator.

2.9 Optimization techniques


Optimization is an important tool in science and engineering. In many
design applications, the decision maker has to choose the option that
is optimal in a certain sense. A lot of real world problems can be ex-
pressed as optimization problems, usually with equality or inequality
constraints. An objective function or cost function quantifies the per-
formance of a design option as a function of the design variables. The
goal is to find the values of these design variables that optimize the ob-
jective function and satisfy the constraints. This section gives a short
overview of optimization theory for constrained nonlinear optimization
problems. A more theoretical discussion can be found in literature, e.g.
in (Nocedal and Wright, 1999).
There exists no universal optimization algorithm. Numerous pow-
erful algorithms are available which are each appropriate for a spe-
cific application, starting from linear programming (LP), linear least
squares (LLS) and quadratic programming (QP) methods. In practice,
2.9. Optimization techniques 43

the objective function becomes frequently a more complex nonlinear


function and constraints are added to satisfy physical properties or
design requirements. This results in using constrained and nonlinear
programming methods. Sequential Quadratic Programming (SQP) is
one of the most effective and a widely used algorithms. In each itera-
tion step, the objective function is locally approximated by a quadratic
function and the minimum of this approximation become the new guess
for the minimum of the objective function (Nocedal and Wright, 1999).
This process is repeated iteratively until convergence.
Ideally, every optimization should return the global optimum. Un-
fortunately, this approach is not feasible in practice. The difficulty that
arises is that the objective function may have several local minima in
the region of interest. Standard nonlinear programming techniques
have not been successful for solving these problems with multiple local
minima, because they suffer from the drawback that they are not guar-
anteed to reach the global optimum. In many practical engineering
applications, it is sometimes essential or at least desirable to determine
the global optimum of the objective function. Therefore, methods de-
signed for global optimization are required. There are two alternatives:
exploit the structure of the problem, or give up the guarantee to find
the global minimum. The first alternative may lead to convex opti-
mization, while the latter is mostly based on random search strategies.

Convex optimization

A special class of optimization problems where the global optimum is


found, are the convex optimization problems. They are characterized
by a convex objective function and a convex feasible set. An additional
requirement is that the equality constraints should be linear and the
inequality constraints concave. The term convex is applicable to both
set and function. A set C is a convex set if the line segment connecting
any two points in C lies completely in C, i.e. for any x, y ∈ C,
αx + (1 − α)y ∈ C for all α ∈ [0, 1]. (2.35)
A function f is convex if its domain is a convex set and if for all x and
y in this convex set, we have
f (αx + (1 − α)y) ≤ αf (x) + (1 − α)f (y) for all α ∈ [0, 1]. (2.36)
44 Literature Survey

Convex problems have interesting properties. These problems can be


solved numerically with great efficiency. If the algorithm converges, the
solution attained is guaranteed to be the global optimum. A detailed
discussion on convex optimization theory is given by Vandenberghe and
Boyd (Vandenberghe and Boyd, 1996).
The belief exists that many convex problems occur in engineering
problems, but they are not recognized as such. The major drawback
lies in the fact that recognizing a convex problem and finding an appro-
priate reformulation towards a convex optimization problem requires
training and relies a lot on experience (and luck).

Global optimization

Unfortunately, not all optimization problems can be formulated as a


convex programming problem. In that case we face nonconvex opti-
mization problems which may have many local minima. Therefore,
standard nonlinear optimization methods may fail to locate the global
minimum and other more general global optimization methods can be
used (Törn and Z̆ilinskas, 1989; Horst and Pardalos, 1995). In contrast
to local optimization for which a gradient equal to zero and a condi-
tion for the Hessian indicate a local minimum, no such criterion exists
in global optimization for asserting that the global minimum has been
reached.
As a consequence, the guarantee to find the global optimum has
often to be given up and the full workspace has to be searched. The
research in this field is basically divided in two branches, which may be
classified as follows. On the one hand, the stochastic approach uses the
idea of random search in constructing global optimization algorithms.
This is a widely used solution strategy. In the absence of a priori
information it seems rational to collect information about the problem
by taking a number of points uniformly distributed over the whole
region and evaluate the objective function in these points. The cost is
proportional to the number of function evaluations performed and will
be higher if the grid is made finer.
The three simplest random search algorithms are pure random
search, singlestart, and multistart. Pure random search does not in-
clude local refinement at all. In singlestart a single local search is
2.9. Optimization techniques 45

performed starting from the best point in the sample. In multistart


each random point is taken as a starting point for local optimization.
These algorithms are very simple and will obviously find the global
minimum as the number of function evaluations approaches infinity,
but they are rather inefficient. In order to improve their efficiency
these methods have been modified in different ways. One class of mod-
ified methods are the clustering methods. In these a cluster analysis
algorithm is used to group points which lie around a local minimum.
The idea is to start just one local search for each local minimum.
Other stochastic methods like simulated annealing and genetic al-
gorithms which use only function values are very popular among users,
although their rate of convergence is rather slow.
Deterministic methods on the other hand are guaranteed to find the
global minimum. This solution implicitly searches all of the domain.
The Branch-and-Bound concept is the main idea here. A Branch-and-
Bound method employs branching and bounding steps. Branching is
done by splitting a problem into several disjoint subproblems. Bound-
ing is carried out by determining a lower and an upper bound on the
optimal value of the objective function for each of these subproblems.
These bounds are used to discard subproblems. If the lower bound
of a subproblem is larger than the function value at a known feasible
point, further refinement will not produce the global minimum and the
subproblem can be cut off. This feature of Branch-and-Bound methods
make them very powerful if it is possible to cut off subproblems early
in the process. The drawback of these methods is that possibly none of
the subsets can be cut off if the lower bounds are not sufficiently tight.
In this case, the algorithm has to explore every subset and becomes
very inefficient.
Interval analysis (Hansen, 1992; Jaulin et al., 2001) applies this con-
cept to objective functions that are composed of simple one-dimensional
functions and the four arithmetic operations addition, subtraction,
multiplication and division. A function is considered as simple if its
bound on every interval can be computed accurately and easily. A lower
bound on the optimal value can be determined by calculating the func-
tion interval for the optimization domain. In every iteration, some part
of the domain is bisected into subregions and the lower bounds on the
46 Literature Survey

objective function in all regions is evaluated. Typically, the region with


the least lower bound is split.
At present, deterministic methods are useful only for well-
structured problems with a very restrictive class of objective functions
and the required computational effort increases exponentially with the
dimension of the problem.

2.10 Applications of dynamics models

The final purpose of applying experimental robot identification tech-


niques is improving the accuracy of industrial robots. This requires
more than only an accurate dynamic model. A close interaction be-
tween all elements is needed, as illustrated in figure 2.4. Mathematical

Modelling Parameter estimation

Simulation and
off-line programming

Model-based control Path planning

Figure 2.4: Problem interaction for accurate industrial robots

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. A logical following step is to incorporate all these elements in


a simulation program, facilitating off-line programming.

Optimal path planning

As soon as reliable dynamic models are available, optimization algo-


rithms can be applied to minimize the cycle time of certain maneuvers.
Research on robot trajectory optimization began in the early sixties.
During the last decade the topic has received great interest and various
approaches have been proposed based on different problem formulations
and different types of robot models.
The two major types of trajectory optimization problems are the
prescribed path problem and the point-to-point (PTP) problem. In
the prescribed path problem, the tool center point (TCP) is required
to move along a predefined trajectory with given orientation. These
data uniquely define the joint positions, so that only the velocity profile
along the path remains to be optimized. In the point-to-point problem,
only the initial and final point are specified. In this case, the shape of
the trajectory is subject to optimization.
Steinbach et al. (Steinbach et al., 1998) present an optimization
method for time-optimal motion planning using the inverse dynamic
model, which eliminates the need for numerical integration of differ-
ential equations. A sensitivity analysis reveals that a reduction of the
speed limit increases the time required for the motion, while reducing
the actuator torque limits does not degrade performance much.
Heim et al. (Heim et al., 1997; Heim and von Stryk, 2000) present
a method for solving the constraint trajectory optimization problem
by using full dynamic robot models. The authors remark that time-
optimal trajectories are very aggressive, reaching the performance lim-
its for at least one actuator. This puts extremely high loads on the
joints. Small deviations from the desired trajectory may lead to in-
stabilities. Optimizing a trajectory with minimal energy consumption
results in a trajectory that is only 10% slower, but with considerably
lower forces and torques on the joints. This reduces the wear of the
robot and proves to be more robust in practice. In (Saramago and
Steffen, 1998), optimal travelling time and minimum mechanical en-
ergy of the actuators are considered together to build a multi-objective
48 Literature Survey

function. The optimization problem takes into account kinematic and


dynamic constraints and uses a dynamic model.

Model-based control

Industrial manipulators are usually controlled by conventional PID-


type independent joint controllers. They are designed under the as-
sumption that the dynamics of the links are uncoupled and linear.
To improve the performance of the PID controllers, the model-based
manipulator control problem has been studied extensively in robotics
literature and many control schemes have been proposed (Luh et al.,
1980; An et al., 1986; Canudas de Wit et al., 1996; Craig, 1988; Slotine,
1985). One of the model-based techniques is the feedforward dynam-
ics compensation method which computes the desired torques from the
given trajectory and injects these torques as feedforward control sig-
nals. Khosla and Kanade (Khosla and Kanade, 1988) reported that this
scheme with the feedforward signal effectively linearizes the manipu-
lator system about a given trajectory. However, it does not achieve
exact decoupling. In contrast, the computed-torque scheme in which
the dynamic model is included in the feedback loop achieves both the
linearization as well as decoupling. Craig (Craig, 1986) emphasized
that the control algorithm synthesis problem of this feedback control
algorithm is more difficult compared to other control schemes. He also
reported in (Craig, 1988) that the computed-torque servo scheme is an
excellent way to use a dynamic model of a manipulator (if it were exact)
in the controller. Despite the fact that industrial experiment conditions
are far from those provided by research setups, the results obtained on
an industrial setup have confirmed that it is worth using feedforward
compensation control (Caccavale and Chiacchio, 1994). Even partial
compensation of the dynamics still gives good performance.
Although theoretical and experimental results have shown that
model-based control techniques outperform the conventional PID con-
troller, they are not widely used in industry. The main reasons for this
are the dominant friction, the lack of accurate model parameters (Craig,
1986), and the time required to compute the model on-line. The avail-
able computation power nowadays removes the latter practical objec-
tion to implementing model-based control. Experimental identification
2.10. Applications of dynamics models 49

is an efficient way to obtain good parameter estimates.


To circumvent the problem of finding an accurate dynamic model,
learning control techniques have been presented. The adaptive version
of the inverse dynamics control scheme was studied in (Craig, 1988).
Norrlöf (Norrlöf, 2002) applied Iterative Learning Control to industrial
robots.
A more practical objection to using model-based control is the ab-
sence of a torque interface to apply the feedforward signal. The only
remaining possibility is to add a correction to the reference position
signal. Lange (Lange and Hirzinger, 1996; Lange and Hirzinger, 1999)
proposed the use of linear decoupled impulse response models for each
joint controller in order to reduce path deviations. This method does
not take into account the nonlinear effects. Grotjahn (Grotjahn and
Heimann, 2002) presents a method which reduces path deviations by
precorrection of the desired trajectory. The corrections are calculated
based on a nonlinear dynamic model of the robot. The method is appli-
cable to industrial robots if an interface for path corrections is available,
and if joint angles and torques are measurable. The calculated desired
torques are transferred into trajectory corrections using the inverted
controller model. A similar trajectory compensation approach which
was developed almost simultaneously, will be presented in chapter 6.

Simulation and off-line programming

Today on-site teaching is still common practice. Depending on the ex-


perience and intuition of the personnel, this method results in accurate,
collision-free trajectories. Advanced off-line programming and simula-
tion tools using a dynamic robot model make it possible to design and
simulate off-line robot motions, accurately predicting the robot behav-
ior. This reduces the need for costly and time consuming reteaching.
In the beginning of the 1990’s, the precise simulation of robot mo-
tion behavior was a major obstacle for successful off-line programming
of industrial robots. Although considerable efforts were done, simulated
trajectories deviated from real ones due to differences between the sim-
ulation model and the real robot motion planner and controller. The
situation was significantly improved by the project ‘Realistic Robot
50 Literature Survey

Simulation’ (RRS) (Bernhardt et al., 1995). The approach was to inte-


grate the motion software of robot controllers into simulation systems.
A standard interface was defined to allow the coupling of any robot
software with any simulation system software. Although the aim of
the project was very attractive, robot manufacturers only offer specific
commercial software tools for off-line programming and simulation of
their robots. Unfortunately, no dynamic model is included in these
tools.

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

Things should be made as simple as possible, but not any simpler.


Albert Einstein

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

Section 3.2 describes the manipulator model structure and derives a


dynamic model which is linear in the inertial parameters. The use of
periodic excitation and the design of an optimal excitation trajectory
are discussed in sections 3.3 and 3.4. In section 3.5, the maximum like-
lihood parameter estimation framework and its statistical properties
are briefly introduced. The validation step of the identification proce-
dure is the subject of section 3.6. Finally, the influence of considering
additional effects is illustrated using experimental results presented in
section 3.7.

3.2 Model generation


The dynamic robot model is certainly the most important part for the
identification procedure. A good model has to satisfy two conflicting
objectives. It must include enough detail to describe the real behavior
of the manipulator with sufficient accuracy and detail. On the other
hand, it should permit a well-conditioned parameter estimation. The
necessary degree of detail may depend on the actual application and
on the required accuracy.
This section discusses the components to be taken into account for
the model generation. For each component it is important to find a
suitable mathematical description which allows accurate and simple,
i.e. linear, parameter estimation. To preserve linearity in the unknown
parameters, an adequate parameterization must be chosen and the re-
quired a priori information should be collected.

3.2.1 General manipulator structure

A robot manipulator consists of several components which are con-


nected and interact in order to execute the task. Before going into
more detail on the individual components, it is important to describe
the general manipulator structure. Figure 3.1 gives a schematic repre-
sentation of a robot manipulator.
The robot structure can be divided into a vertical and a horizontal
direction. The vertical direction represents the serial robot construc-
tion where all robot links are interconnected in a chain. This subsystem
3.2. Model generation 53

rigid body dynamics of serial manipulator


actuator 6 transmission friction link 6 payload

actuator 5 transmission friction link 5

actuator 4 transmission friction link 4

actuator 3 transmission friction link 3

actuator 2 transmission friction link 2

actuator 1 transmission friction link 1

robot base

Figure 3.1: Schematic representation of manipulator

is described by the rigid body dynamics and introduces the nonlinear


coupling effects between the axes. Models describing the rigid body
dynamics are well studied in literature (see the discussion of integral
and differential formulation in section 2.5.1). Many algorithms were
presented, such as the recursive Newton-Euler equations.
In the horizontal direction of the manipulator structure, we find the
drive train of each joint axis consisting of the actuator, the gear trans-
mission, friction and the robot link. The actuators generate the torques
which drive the motion of the manipulator. Although servo drives have
a small rotor inertia, accelerating and decelerating the rotor inertia re-
quires a considerable part of the generated actuator torque. This is due
to the high transmission ratios which result in a fast spinning actuator
rotor. To simplify the model generation, the dynamic parameters are
often expressed at the reduction or joint side, instead of the actuator
side. This requires the measured torques and encoder positions to be
transformed to the joint side. The rotor inertia is transformed by mul-
tiplication with the square of the transmission ratio. The inertia of the
gear transmission is usually neglected and added to the rotor inertia or
the link inertia. Friction should be added to these components since it
consumes a part of the actuator torque. Mostly, friction losses are as-
54 Experimental robot identification: practical issues

sumed to be spread over the actuator and the gears. In identification,


however, it is impossible to distinguish the different friction sources.
Therefore, friction is arbitrarily introduced in the scheme as a separate
block.
The robot payload is connected to the end effector of the last link.
In this chapter, the payload will be discarded. Its identification will be
the subject of chapter 5.

3.2.2 The rigid body dynamics

The rigid body dynamics are the central part of the manipulator struc-
ture. The inverse dynamics equation

τ = M(q)q̈ + C(q, q̇)q̇ + g(q) (3.1)

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

One way to obtain the above-mentioned linear identification model is


based on the so-called barycentric parameters (Maes et al., 1989), which
are combinations of the inertial parameters of the different bodies. The
barycentric parameters for link body i (figure 3.2) are defined as follows:

• The barycentric mass


X
m̄i = mi + mj , (3.2)
j>i

which is defined as the mass of the link body, augmented by the


total mass of all descendants (j > i) in the tree-like structure.
For a serial manipulator, the descendants are the following links
in the chain up to the end effector and the payload.
3.2. Model generation 55

k
j

Ci lij
ci
lil
l
Oi
Link body i

Figure 3.2: Geometric parameters for link body i

• The barycentric moment


X
bi = mi ci + mj lij , (3.3)
j>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.

• The barycentric tensor


X
K i = IC
i − mi c̃i c̃i − mj ˜lij ˜lij , (3.4)
j>i

where ˜· denotes the skew-symmetric tensor associated with the


cross product, e.g.:
 
0 −cz,i cy,i
c̃i =  cz,i 0 −cx,i  . (3.5)
−cy,i cx,i 0

The use of these barycentric parameters provides a model for the


robot dynamics which is linear in a combination of the inertial pa-
rameters of both robot links and payload. In addition, rules are es-
tablished to define the minimal set of dynamical parameters (Fisette
56 Experimental robot identification: practical issues

et al., 1996). A side effect of the barycentric parameters appears when


it comes to payload identification. The payload is the last link body in
the robot tree structure, e.g. link body k in figure 3.2. The barycentric
parameters of the last link are exactly the same as the Newton-Euler
parameters, which will be discussed next. However, all barycentric
parameters contain a contribution of the inertial parameters of the de-
scendent link bodies, and therefore also those of the robot payload.
This means that most barycentric parameters change when the robot
payload is changed. A disadvantage of barycentric parameters is the
more difficult physical interpretation of the parameter values.

Newton-Euler parameters

Another way towards linearity uses the Newton-Euler parameters. This


parameterization is widely used in literature and contains the following
parameters

• The mass mi

• The first order moment si = mi ci , with ci the position of the


center of gravity expressed in the link frame.

• The second order moments and products of inertia I, i.e. the


inertia tensor is expressed about the axes of the link frame instead
of the frame in the center of gravity. The parallel axis theorem
is used for the recalculation between the two frames.

This parameterization has the same advantages as the barycentric pa-


rameters. The resulting models are linear in the unknown parameters,
which simplifies significantly their estimation. In addition, the physical
interpretation of the Newton-Euler parameters is much easier. These
parameters will be used for the payload identification in chapter 5.

3.2.3 Additional effects

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 robot literature. Nevertheless, the additional effects, like friction


and rotor inertia, are indispensable to obtain an accurate dynamic
model.

The following effects affect the accuracy of the dynamic model and
should be taken into account:

Kinematic calibration. Every mechanical construction contains


some small deviations from the original specification which af-
fect the position accuracy of the manipulator. A calibration
procedure can identify more accurate geometric and kinematic
information. This information must be used for the derivation of
the rigid body dynamics model.

Inclusion of rotor inertia. The fast spinning rotor inertias of some


actuators introduce an additional dynamic coupling between the
different joint axes. Especially for fast motions this effect becomes
important.

Gravity compensation device. Some manipulators are equipped


with a spring which partly compensates the gravitational torque
on one joint axis. This torque can be modelled and included in
the identification model.

Friction. This phenomenon is present in each mechanical manipula-


tor and consumes a significant part of the actuator torque. An
accurate model describing the real physical behavior is therefore
required.

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

3.3 Experiment design using periodic robot


excitation

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.

3.3.1 Trajectory parameterization

Several approaches to robot excitation have been presented in litera-


ture (section 2.7). They all use a different trajectory parameterization,
most of them not resulting in periodic trajectories. Swevers et al. (Sw-
evers et al., 1997) propose a robot excitation which is periodic. This is
one of the key elements of the presented robot identification method.
The excitation trajectory is a finite Fourier series, yielding a periodic
response, i.e. all measured signals are periodic, after the transient robot
response has died out. This approach is adopted and the advantages
related to the periodicity of the excitation are discussed here and il-
lustrated in section 3.7.6. The excitation trajectory for each joint is
a finite Fourier series, i.e. the angular position qi for each joint i is
written as a finite sum of harmonic sine and cosine functions:
N
X
qi (t) = qi,0 + (ai,k sin(kωf t) + bi,k cos(kωf t)) (3.6)
k=1

with ωf the fundamental pulsation of the finite Fourier series, and t is


the time. This Fourier series specifies a periodic function with period
Tf = 2π/ωf . Each Fourier series contains 2N +1 parameters, which are
3.3. Experiment design using periodic robot excitation 59

the degrees of freedom for the optimization problem: the amplitudes


ai,k and bi,k of the sine and cosine functions, for k = 1 to N , and qi,0
which is the offset on the position trajectory. Appropriate values for
these trajectory parameters can be selected by means of trial and error,
as it is done in industry, or by solving a complex nonlinear optimiza-
tion problem with motion constraints. This problem is addressed in
section 3.4.
The fundamental pulsation is common for all joints, resulting in a
periodic robot excitation. This is advantageous because it allows:

• time-domain data averaging, which yields data reduction and im-


proves the signal-to-noise ratio of the experimental data,

• estimation of the variance of the measurement noise by calculat-


ing the sample variance,

• analytic calculation of the joint velocities and accelerations from


the measured joint angles,

• to specify the bandwidth of the excitation trajectory,

• continuous derivatives up to higher order,

• to reduce the experiment time.

3.3.2 Properties of periodic excitation

The advantages of using periodic excitation are discussed in more


detail now, and will be illustrated in section 3.7.6 based on experimental
results.
The signal-to-noise ratio of the measured signals can be improved
by data averaging, which is possible because of the periodicity of the
data. The averaged trajectory q̄ and torque τ̄ are obtained from
M
1 X
q̄ = qm (3.7)
M
m=1
M
1 X
τ̄ = τm (3.8)
M
m=1
60 Experimental robot identification: practical issues

where M is the number of measured periods, and qm and τm the m-


th period of the trajectory and the measured torque. Improving the
signal-to-noise ratio is extremely important since motor current mea-
surements are usually very noisy. This technique is preferable to low-
pass noise filtering because filtering colors the noise, and consequently
complicates a consistent and efficient, e.g. maximum likelihood, pa-
rameter estimation (Schoukens and Pintelon, 1991).
The variance of the noise on the measured signals can be calcu-
lated by means of the sample variance, without performing additional
measurement:
K M
1 XX
σq2 = (qm (k) − q̄(k))2 , (3.9)
(M K − 1)
k=1 m=1
K X M
1 X
στ2 = (τm (k) − τ̄ (k))2 , (3.10)
(M K − 1)
k=1 m=1

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

For the analytical differentiation, the measured encoder readings are


first approximated in a least squares sense, as a finite sum of sine and
3.4. Generation of the excitation trajectory 61

cosine functions. This approximation is done to avoid a systematic


errors due to a tracking error which give a deviation from the desired
excitation trajectory. The resulting sum, which corresponds to equa-
tion (3.6), is then analytically differentiated once or twice to obtain
velocity and acceleration, respectively. This approach corresponds to
frequency domain differentiation combined with frequency domain win-
dowing. First, the discrete Fourier transform of the averaged encoder
readings is calculated and the excited frequency lines are selected by fre-
quency domain windowing (using a rectangular window). The selected
frequency lines are then multiplied with the frequency response of a
pure single and double differentiator, i.e. multiplied with jω and −ω 2 ,
with ω the frequency in radians per second. The obtained frequency
spectra are then transformed back into time domain using the inverse
discrete Fourier transform, yielding joint velocities and accelerations.
The choice of the base frequency and the harmonics immediately
makes it possible to specify the bandwidth of the excitation signal.
The highest frequency can be chosen to be lower than the resonance
frequency of the manipulator. This design criterion is not available
with random point-to-point motions.
The use of a Fourier series gives a trajectory which is continuously
differentiable up to any order. This is an interesting property since it
avoids the excitation of unwanted dynamic effects. The frequently used
polynomial trajectories do not have this property, e.g. the 5th order
polynomial has a discontinuity in the jerk.
The global approach to trajectory design allows to excite all joint
axes in only one experiment. This eliminates the need for special sets
of motions to achieve accurate estimates of the dynamic parameters.
It is clear that periodic excitation has several advantages over the
classical excitation trajectories. Therefore, this approach is used in this
thesis and its advantages are maximally exploited.

3.4 Generation of the excitation trajectory

Although the advantages of a periodic excitation trajectory are easy


to understand, the problem of finding the parameters of the optimal
62 Experimental robot identification: practical issues

trajectory is much more difficult. In this section, this problem is for-


mulated and different solution approaches are discussed.

3.4.1 General problem formulation

Once the trajectory parameterization has been chosen, the trajectory


parameters should be chosen to obtain a persistent excitation. This
means that it is essential to consider whether the excitation gives an
acceptable signal-to-noise ratio, is sufficient to provide accurate param-
eter estimation in the presence of disturbances, and yields consistent
and accurate results. In literature, some criteria have been defined to
express the exciting performance, e.g. the condition number of the
observation matrix, or the determinant of the parameter covariance
matrix, etc.
In practice, the optimal trajectory will cover the workspace as much
as possible and use the maximum speed and acceleration. This follows
from the equation of the robot dynamics (3.1). To excite the inertia, the
acceleration should be high, for the centrifugal and Coriolis terms the
velocity should be high, and finally for the gravitational parameters the
joint positions should be chosen such that gravity generates the largest
torque differences at the actuators.
Example 3.1
Optimal use of the acceleration is illustrated with an example. As-
sume the simple identification model

τ = 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

Figure 3.3: Choice of the sample points: randomly distributed


(left), close to the extreme values (right). Estimated
response in solid line and true response in dashed line

The trajectories should however be feasible, i.e. the robot should be


able to execute them. The consideration of the actual robot kinematics
and dynamics imposes a number of constraints:

• maximum and minimum joint angles qmax and qmin , imposed by


the robot construction,

• maximum velocity q̇max and maximum acceleration q̈max , im-


posed by the robot manufacturer to prevent wearing of the robot
or by the maximal forces and torques allowed,

• constraints imposed by the environment of the robot to avoid


collision. This region is frequently approximated by a cilinder,
specified by a minimum and maximum radius ree and height hee ,
in which the robot end effector should stay. These constraints
involve forward kinematics calculations,

• maximum actuator torque τmax , imposed by the maximum cur-


rent in the armature windings. The evaluation of this constraint
poses difficulties because it requires the inertial parameters to be
known,
64 Experimental robot identification: practical issues

• maximum forces in the transmission gears. Exceeding these limits


can cause the gear teeth to break, for instance.

• avoid excitation of flexibilities, backlash and nonlinearities which


are not taken into account in the identification model.

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.

3.4.2 Solution by optimization

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

criterion, it is replaced by a scalar measure log det(·) of the parameter


covariance matrix, yielding the so-called d-optimality criterion (Ljung,
1987). The d-optimality criterion has an interesting physical inter-
pretation: the determinant of the covariance matrix is related to the
volume of the uncertainty ellipsoid for the parameters. Minimizing this
criterion also minimizes the uncertainty on the parameter estimates. In
the case of the Markov estimate (Swevers et al., 1996) estimate, the pa-
rameter covariance matrix equals C = (ΦT Σ−1 Φ)−1 (equation (3.29))
and depends only on the robot trajectory via the identification matrix
Φ and the variance of the noise on the torque measurements. It does
not depend on the model parameters θ.
The optimization problem can be formulated as:

minimize log det C (3.14)


subject to
qmin ≤ q(β) ≤ qmax (3.15)
q̇min ≤ q̇(β) ≤ q̇max (3.16)
q̈min ≤ q̈(β) ≤ q̈max (3.17)
rmin ≤ ree (q(β)) ≤ rmax (3.18)
hmin ≤ hee (q(β)) ≤ hmax (3.19)
τmin ≤ Φ(q(β), q̇(β), q̈(β)) θ ≤ τmax . (3.20)

The optimization algorithm returns the trajectory parameter vector β


which solves this problem. To simplify the optimization, the vector
β includes only the trajectory parameters qi,0 , ai,k and bi,k of equa-
tion (3.6) for all joints. The fundamental pulsation ωf and the number
of harmonics are fixed in advance.
The constraint equations are all function of the trajectory param-
eters β. Equations (3.15) to (3.17) are respectively the motion con-
straints on the joint angles, velocities, and accelerations which are im-
posed by physical limitations. In most cases, they are specified by the
robot manufacturer. Due to the use of Fourier series for the trajectory,
these constraints are linear in the parameters of β. Therefore, the mo-
tion constraints are easy to handle and rather cheap to evaluate. In
addition, this is an advantageous property when formulating a convex
optimization problem.
66 Experimental robot identification: practical issues

In a concrete working environment, the motion of the robot end


effector position in the cartesian space is limited in order to avoid col-
lision of the robot with the environment and with itself. This type
of constraint involves forward kinematics calculations. To simplify the
equations, the allowed workspace for the end effector is approximated
by a cylinder. A constraint is then imposed on the radius ree (equa-
tion (3.18)) and on the height hee (equation (3.19)). For a standard
industrial manipulator, these equations are mainly function of the po-
sitions of the second and third joint axes. The constraint on the end
effector motion is nonlinear in the trajectory parameters, but it may
easily be approximated by some linear constraints.
Equation (3.20) expresses the constraint on the maximum actuator
torque which prevents the actuator from being overloaded. This dy-
namic constraint requires the evaluation of the inverse dynamics. Since
the dynamic parameter values are not known for the first experiment
design, this dynamic constraint can only be taken into account if a
priori knowledge about the parameter values is available, e.g. from
CAD or a previous identification experiment. This suggests an iter-
ative experiment design. First, an excitation trajectory is designed
without taking into account the dynamic constraint. This experiment
is aimed at obtaining initial estimates of the dynamic parameters. In
a second design, an optimal excitation trajectory is found which takes
into account all constraints. The dynamic constraint remains however
nonlinear in the trajectory parameters β. Therefore, this constraint is
frequently replaced with a tighter constraint on the maximal acceler-
ation. Although this approximation is not equivalent, the constraint
becomes linear in β and no a priori knowledge is required.
In general the constraints are almost linear in the trajectory pa-
rameters β, or they can be approximated by a linear function, making
them easy to evaluate. The cost function (equation (3.14)) is however
a complex nonlinear function of the trajectory parameters β, which
cannot easily be reformulated in a convex form. As a consequence,
the global optimum is not guaranteed to be found, and iterative search
algorithms, like sequential quadratic programming (SQP), have to be
used. They locally approximate the cost function converging to a local
minimum. Repeating the optimization using many different starting
values increases the chance of finding a better excitation trajectory.
3.4. Generation of the excitation trajectory 67

This is however a very time consuming solution.


Concerning the solution of the trajectory design by optimization,
the following remarks can be made. First, a good excitation requires a
high number of harmonics for each joint trajectory, i.e. many optimiza-
tion parameters in the trajectory parameter vector β. Since the more
degrees of freedom there are in the optimization problem, the more
local minima exist, it is impossible to find an appropriate excitation
trajectory within an acceptable time. Second, it should experimen-
tally be verified if the difference between an optimal and a suboptimal
excitation trajectory results in a practical significant influence on the
accuracy of the dynamic parameter estimates. If not, a minimal level
of optimality may be defined such that we should not worry about
reaching only a local optimum.

3.4.3 Heuristic solution

Using the optimization approach requires a lot of calculation time to


find a (satisfying) solution. Although efficient optimization algorithms
are used, it is not guaranteed that the global optimum is found. As
an alternative the trajectory parameters can be selected by means of
trial and error, as is frequently done in industry. By observing the op-
timization problem, some heuristic rules of thumb can be found which
might give insight in the parameter selection. This section summarizes
the experiences gained in this work in a qualitative way.
The optimization considers only the coefficients of the sine and
cosine functions as the degrees of freedom, yielding an optimization
problem which is hard to solve. In practice however, more degrees of
freedom are available to set up the excitation experiment. Beside the
coefficients, also the fundamental pulsation ωf , the number of periods
measured, the number of harmonic terms, and the number of joints
axes excited during the identification experiment should be chosen.

The coefficients ai and bi are related to the amplitude and phase


of one frequency by the goniometric equation
ai cos θ + bi sin θ = A cos(θ − ϕ) (3.21)
where A is the amplitude and the angle ϕ represents the phase.
68 Experimental robot identification: practical issues

The amplitudes are limited by the motion constraints in equa-


tions (3.15) to (3.17). For a trajectory which only contains the k-
th harmonic q(t) = Ak sin(kωf t), the amplitude Ak is constrained
by

( )
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.

On the other hand, the amplitude of a harmonic term should


have a minimal value. A small amplitude only introduces ad-
ditional velocity reversals and excites the system in the range
where backlash and stiction forces have a negative influence on
the accuracy.

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.

The number of harmonic terms specifies the bandwidth of the ex-


citation trajectory. The lowest frequency is fixed by the funda-
mental pulsation. Higher frequencies can be selected based upon
the discussion of the coefficients above. It is not necessary to
include all frequency terms. The more terms that are taken into
account, the more local minima appear in the optimization prob-
lem and hence the more difficult it becomes to find an optimal set
of coefficients. In addition, every additional term introduces ad-
ditional velocity reversals which increases the number of sample
points in the low velocity range. Section 3.7.5 will note that the
friction model is not very accurate at low velocities. Too many
harmonic terms is therefore not a good idea.
3.4. Generation of the excitation trajectory 69

The fundamental pulsation ωf has influence on the duration of


one period. The duration of one measured period equals

T = . (3.23)
ωf
Here, a trade-off should be made between noise sensitivity and
more measurement data. On the one hand, a higher fundamental
pulsation results in a shorter period. Given a limited measure-
ment time, this allows to measure more periods, and hence aver-
aging improves the signal-to-noise ratio. We should keep in mind
that this effect decreases as more periods are taken into account.
A longer measurement period with the same sampling frequency,
on the other hand, gives more measurement data and hence more
information is available for the parameter estimation. In addi-
tion, it allows us to excite in a wider workspace given the same
maximal joint velocity and acceleration. This aspect is closely
related with the discussion of the coefficients.
Example 3.2
A trajectory is described by q(t) = A cos(ωt). The corre-
sponding acceleration is q̈(t) = −Aω 2 cos(ωt). Suppose that
the maximal acceleration q̈max is the limiting factor to increase
the amplitude. Dividing ωf by a factor two and holding the
same q̈max , the amplitude A may be increased by a factor
four. The discussion is similar if the velocity were the limiting
constraint. 

This discussion shows that for a manipulator with relatively small


allowable maximal velocity or acceleration, it might be appropri-
ate to choose a longer measurement time and a lower fundamental
frequency.

The number of periods measured in combination with the duration


of one period determines the total experiment time. This vari-
able should be chosen such that averaging sufficiently reduces the
remaining noise level. If the maximal experiment time is limited,
the number of periods cannot be chosen independently anymore,
but follows from the given experiment time and the fundamental
pulsation.
70 Experimental robot identification: practical issues

original reversed
q q

time time

Figure 3.4: Reverse the excitation trajectory

Every excitation trajectory that is obtained immediately gives rise


to an alternative trajectory design. The periodic trajectory can be
executed in the reverse order as illustrated in figure 3.4. Since this
alternative trajectory includes the same joint positions, no problem
with collisions are introduced. The maximal velocities and acceler-
ations don’t change either. In the reversed trajectory all points are
approached from the opposite direction compared to the original tra-
jectory. This is advantageous because the nonlinearities, e.g. backlash
which is present in the transmission, are excited from both sides result-
ing in a compensation. Including the original and reversed trajectory
in the estimation problem will therefore result in more consistent pa-
rameter estimates.
A trajectory design based on rules of thumb and experience will
not produce the optimal trajectory. Therefore, the heuristic trajectory
design may be followed by a local optimization. Better starting val-
ues are available from the heuristic approach and convergence is faster
because the optimization starts closer to a minimum. This way, the
advantages of both approaches are combined.

3.4.4 Limitations for obtaining the optimal excitation


trajectory

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

In the first place, the quality of the excitation is limited by the


constraints that are taken into account in the optimization. These
constraints are necessary to avoid a collision of the robot with the
environment or with itself or overloading the robot manipulator. En-
larging the range of an active constraint makes it possible to obtain
a better trajectory. However, care should be taken not to excite too
many unmodelled dynamics, since this would only lead to systematic
errors. A trade off must be made between enlarging the range and
avoiding systematic errors. As a consequence, we must accept to find
only a suboptimal excitation trajectory. Therefore, it is questionable
whether the use of sophisticated optimization algorithms can still be
justified.
Due to the complex nature of the objective function, no fast opti-
mization algorithm exists that guarantees global convergence. There-
fore, we should accept that only a local minimum is reached. By choos-
ing appropriate starting values for the optimization, an excitation tra-
jectory can be found which approaches the performance of the global
optimal trajectory.
The industrial controller may also become an additional constraint.
Implementing periodic multisine trajectories requires the possibility to
apply user defined trajectory setpoints to the controller input. Unfor-
tunately, most industrial controllers only allow users to generate very
simple trajectories like lines, point-to-point motions and circles. In
the worst case, excitation trajectories have to be implemented using
standard built-in point-to-point motions, specifying fly-by or precision
points. In that case, the trajectory period is mostly no multiple of
the sampling period, and an approximation of the trajectory with a
limited number of harmonic terms in the Fourier series is rather inac-
curate. Then, periodicity and its nice properties have to be given up
and other filtering methods are required to calculate the velocity and
acceleration.
Sometimes, however, the manufacturer provides a module which
allows us to apply some feedforward or compensation signal to the
(servo) controller. If this signal is added in joint space, periodic ex-
citation is possible without limitations. As soon as a Cartesian space
compensation is used, it becomes important to avoid all singularities.
In practice, this puts additional constraints on the joint positions and
72 Experimental robot identification: practical issues

considerably limits the allowed workspace. Consequently, the quality


of the excitation will be worse. It is optimal to have an open interface
to the robot controller which allows to specify the trajectory in joint
space.

3.5 Parameter estimation

The following step in the identification procedure is the estimation of


the robot parameters from the measured data (Gautier and Khalil,
1992; Swevers et al., 1997). The selection of an appropriate parameter
estimation method is a compromise between accuracy and complexity
of implementation.
The maximum likelihood parameter estimation method presented
by Swevers et al. (Swevers et al., 1997) will be applied, since this ap-
proach is based on a statistical framework aiming at estimating the
robot model parameters with minimal uncertainty. The maximum like-
lihood estimate of the parameter vector θ is given by the value of θ
that maximizes the likelihood of the measurement. The minimization
of such a likelihood function is a nonlinear least squares minimization
problem. In general, this method assumes that the measured joint po-
sitions and actuator torques are both corrupted by independent zero-
mean Gaussian noise. If the measured joint angles are free of noise
and the model is linear in the parameters, which is the case if barycen-
tric parameters are used, this minimization problem simplifies to the
Markov estimate, i.e. a weighted linear least squares estimate. This
simplification is justified since in almost all practical cases the noise
level on the joint position measurements is much smaller than the noise
level on the force/torque measurements (Swevers et al., 1997).
The dynamic model is evaluated for a number of time steps tk ,
k = 1, . . . , K, and combined in the global observation matrix
 
φ(qt1 , q̇t1 , q̈t1 )
 φ(qt2 , q̇t2 , q̈t2 )

Φ= , (3.24)
 
..
 . 
φ(qtK , q̇tK , q̈tK )
3.6. Validation 73

and the corresponding measured torques in


 
τt1
 τt 
 2
τ =  . . (3.25)
 .. 
τtK

This leads to the overdetermined set of linear equations

τ = Φ(q, q̇, q̈)θ + ε (3.26)

where ε represents the error due to measurement noise. The error is


assumed to have a normal distribution with zero mean.
The weighted least-squares solution of (3.26) is given by

θ̂W LS = (ΦT Σ−1 Φ)−1 ΦT Σ−1 τ (3.27)


−0.5 + −0.5
= (Σ Φ) Σ τ. (3.28)

Σ is the diagonal covariance matrix containing the standard deviation


of the noise on the measured torque data. A consistent estimate of the
noise variance is provided by the sample variance (Swevers et al., 1996),
which can be calculated without additional measurements if the robot
excitation, and therefore also the measured joint torques, are periodic
(see section 3.3.2).
The use of a statistical framework allows to calculate uncertainty
bounds on the estimated parameter vector. The covariance matrix C
of θ̂W LS is given by

C = (ΦT Σ−1 Φ)−1 . (3.29)

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

the identification results, it is an indispensable step in the identifica-


tion procedure. An unsatisfactory validation will lead to reconsidering
some previous steps of the identification procedure.
This section proposes some methods to validate the accuracy of an
identification experiment. Two main methods exist: (1) evaluate the
torque prediction accuracy, or (2) check the accuracy of the parameter
estimates. The first validation method is important for model-based
control, while the latter is applied for payload identification in chap-
ter 5.
The first validation method simulates the system using the esti-
mated parameter values. In particular, the inverse dynamic equations
are evaluated and the actuator torques for the desired motion are cal-
culated. A good validation requires the validation trajectory to be dif-
ferent from the excitation trajectory. Considering the actuator torques
is an appropriate validation method when the identified model will be
used for control. The following criteria can be used to evaluate the
quality of the predicted torques.

Compare predicted and measured torques. Plotting both the


predicted and measured torques on the same figure allows us to
do a visual inspection. Both curves are compared and it can
easily be evaluated if both curves are similar.

Prediction error. An alternative uses the difference between pre-


dicted and measured torque, i.e. the prediction error or prediction
residue ε = τ − Φ(q, q̇, q̈)θ. The prediction error should be small
in comparison to the torque signal.
These graphical techniques are very easy to use because they give
a direct impression of the result. An experienced user might be
able to find an indication of what possibly went wrong during the
identification. The drawback of these techniques is their subjec-
tivity. Not every user might have the same expectation towards
good accuracy.

RMS value of the prediction error. To improve the objectivity of


the validation some measure of goodness is needed to evaluate
how accurate a particular identification experiment is. The value
3.6. Validation 75

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.

An alternative method to validate the goodness of the estimation


checks the accuracy of the estimated parameter values. This method
is more appropriate when the physical interpretation of the estimated
values is important. Therefore, it will be used to evaluate the pay-
load identification in chapter 5. Different criteria are available for this
validation method.

Parameter values estimated from different trajectories. To


verify the quality of the identified model a number of different
excitation trajectories can be used. All parameter sets obtained
from these experiments are estimates of the same parameters.
Comparing the corresponding values gives an idea about their
accuracy. According to the central limit theorem the averaged
parameter set θ̄ should be a better estimator for the parameter
values.
The spreading of the estimated parameter sets can be expressed
mathematically by calculating the root mean squared deviation
from the averaged parameter set.
v
u
u1 X J
∆θRM S = t (θj − θ̄)2 (3.32)
J
j=1
76 Experimental robot identification: practical issues

J is the number of different excitation trajectories used. ∆θRM S


gives a measure of the true uncertainty on the parameter esti-
mates. This value can be compared to the estimated parameter
uncertainty calculated by means of the parameter covariance ma-
trix.

Confidence intervals. This method is based on statistical proper-


ties of the estimator discussed in the previous section. Starting
from the covariance matrix it is possible to calculate the stan-
dard deviation for every parameter. The confidence interval is
then determined by taking a multiple of the standard deviation
above and below the parameter value. The multiple is found in
tables of a statistical distribution for a desired confidence level.
The confidence interval is used to decide if a parameter is statis-
tically significant. If zero is included in the confidence interval,
there is no statistical evidence that the parameter values signifi-
cantly differs from zero and the parameter may be discarded from
the model. A more formal way to decide about significance is to
set up a hypothesis test.

Addition of a known load. In this method a known load is added


to the robot end effector and the identification experiment is re-
peated. The change in the parameter vector should correspond
to the contribution of the inertial parameters of the additional
load. Some parameters are not influenced by the additional load
and consequently their parameter values should not change. This
validation allows us to test if the identification model is complete,
i.e. gives a full description of the dynamics, and if the calibration
factors of the measurement signal are correct. This information
comes at the cost of doing an extra identification experiment.

Using a priori information. The estimated parameter values can


be evaluated based on their physical interpretation. It is known
that moments of inertia should be positive and that the center of
mass should lie within the physical dimensions of a link body.
If values for the parameters are available, e.g. from CAD, they
can be used for comparison. We should however keep in mind
that CAD data are mostly not very accurate. This approach
3.7. Experimental results 77

is suitable for the evaluation of a payload identification using a


calibrated reference load.

Unfortunately, there exists no best way to perform the validation.


The value of a validation method depends largely on the application,
on available information, and on the assumptions that were made in
the modelling and estimation step.

3.7 Experimental results

In this section experimental result are presented which are obtained on


a real industrial robot manipulator. First, the experimental setup and
the excitation and validation trajectories are presented. Then, some
additional effects are introduced in the model: a kinematic calibration,
the rotor inertia, a gravity compensation spring, and alternative fric-
tion models. Their influence on the parameter and torque prediction
accuracy is discussed. Finally, the advantages of periodic excitation
over the classical approach using numerical differentiation are shown
experimentally.

3.7.1 Description of the setup and the experiments

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.

The excitation experiment

The fundamental frequency of the trajectories is 0.1 Hz, yielding a


period of 10 seconds. The excitation trajectory consists of five-term
Fourier series, yielding 11 trajectory parameters for each joint, and a
0.5 Hz bandwidth for the excitation signal. The optimization of the
trajectories is based on the d-optimality criterion. Figure 3.5 shows
the optimized trajectory for the three robot axes. The trajectories are
78 Experimental robot identification: practical issues

implemented on the COMRADE1 (Van de Poel et al., 1993) software


platform and runs at a sampling rate of 150 Hz. After the transients
have died out, 16 periods are measured and used for the identification.

Excitation trajectory KUKA IR 361


2

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)

Figure 3.5: Optimized robot excitation trajectory: axis 1 (full


line), axis 2 (dashed line) and axis 3 (dash-dotted line)

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

The validation experiment

To validate the accuracy of the results, the identified model is used to


predict the torque of a validation trajectory which is different from the
excitation trajectory.

Figure 3.6 shows the validation trajectory. It goes through 20 points


randomly chosen in the workspace of the robot. The robot moves
with maximum acceleration and deceleration between these points, and
comes to a full stop at each point. This results in a trapezoidal velocity
profile between two successive points.

Validation trajectory KUKA IR 361


2.5

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)

Figure 3.6: Joint angular position for the validation trajectory:


axis 1 (full line), axis 2 (dashed line) and axis 3 (dash-
dotted line)
80 Experimental robot identification: practical issues

RMS prediction error axis 1 axis 2 axis 3


optimal reference 6.101 6.277 2.850 Nm
no rotor inertia 6.282 6.271 3.339 Nm
with kinematic calibration 6.104 6.281 2.849 Nm

Table 3.1: RMS of the actuator torque prediction errors for the
excitation trajectory

RMS prediction error axis 1 axis 2 axis 3


optimal reference 8.971 11.806 4.395 Nm
no rotor inertia 9.262 12.289 4.756 Nm
with kinematic calibration 8.970 11.806 4.395 Nm

Table 3.2: RMS of the actuator torque prediction errors for the
validation trajectory

The optimal reference model

In order to be able to evaluate the importance of an additional effect, a


reference model is defined which gives optimal accuracy. This dynamic
model includes the rigid body dynamics and Coulomb and viscous fric-
tion. The rotor inertia of the third actuator is included as a separately
identifiable parameter. Kinematic imperfections are neglected.

In the following sections, several models will be discussed which


each take into account an additional effect. The root mean squared pre-
diction errors obtained for the different models are given in table 3.1 for
the excitation trajectory and in table 3.2 for the validation trajectory.
Table 3.32 gives the estimated parameter values. The physical mean-
ing of the different parameters is given in table C.1 of appendix C. The
parameter estimates are obtained with different models: the optimal
reference model, the model including the rotor inertia (section 3.7.3),
and using numerical differentiation of the position measurements to
calculate joint velocity and acceleration (section 3.7.6).

2 ∗
The parameters indicated with a include a contribution of the actuator rotor
inertias
3.7. Experimental results 81

optimal no rotor numerical units


reference inertia differentiation

Kr1,zz 29.013 29.352 25.099 kgm2
Kd2 -10.909 -11.075 -10.114 kgm2
K2,xz -0.263 -0.450 -0.157 kgm2
Kr2,yz 2.640 4.050 6.990 kgm2
K2,xy -0.0421 0.282 0.670 kgm2
b3,z 0.0509 -0.0057 0.358 kgm
b3,x 3.022 3.006 3.841 kgm
Kd3 2.443 2.593 2.515 kgm2
K3,xz 0.0531 -0.159 -1.113 kgm2
K3,yz -0.258 -0.762 -0.498 kgm2
K3,xy -0.263 -0.937 0.020 kgm2

K2,yy 35.467 32.110 23.581 kgm2
K3,yy 5.632 7.364 3.237 kgm2
b2,x -0.265 -0.502 -0.599 kgm
grav1 346.782 297.398 221.734 Nm
grav2 3.219 2.784 2.182 N
fv1 10.782 11.978 15.259 Nms
fC1 34.260 33.790 33.601 Nm
fv2 16.990 15.311 16.705 Nms
fC2 39.159 38.986 36.147 Nm
fv3 5.450 6.640 6.739 Nms
fC3 16.139 16.231 15.184 Nm
o1 -12.724 -12.729 -12.616 Nm
o2 -6.109 -7.757 -8.931 Nm
o3 1.959 2.159 2.856 Nm
Im3 9.935 − 9.379 kgm2

Table 3.3: Set of estimated parameter values for different ap-


proaches: the optimal reference model, a model neglect-
ing the effect of the rotor inertia, and an approach using
numerical differentiation of the position measurements
to calculate joint velocity and acceleration
82 Experimental robot identification: practical issues

3.7.2 Kinematic calibration

Every mechanical structure contains kinematic and geometric errors


due to imperfections in the manufacturing and assembly process. These
errors influence the static position accuracy of the robot (Bernhardt
and Albright, 1993). A kinematic calibration procedure determines the
actual properties, such as the dimensions of the links, the orientations of
the joint axes, offsets on the encoder reading, etc. This information can
be used in a kinematic compensation module to improve the position
accuracy.
This section investigates the influence of kinematic errors on the ac-
curacy of the dynamic model. For this purpose the Krypton RODYM6D
dynamic measurement system (Krypton, 1998) is used to perform a
kinematic calibration procedure which identifies the kinematic vari-
ables of the first three axes of the KUKA IR 361.
The identified kinematic variables can be divided into two cate-
gories. A first category includes the lengths of the different links, which
determine the distance between successive joint axes, and the offset on
the actuator encoders (table 3.4). These variables can directly be taken
into account without deriving a new dynamic model.

specification measured value


length link 2 480 mm 480.123 mm
encoder offset axis 2 0 degrees 0.008465 degrees

Table 3.4: Kinematic calibration: results for joint axis 2

The second category includes variables expressing position and ori-


entation error of the joint axes. Table 3.5 gives the extended set of
Denavit-Hartenberg parameters for the KUKA IR 361. The values are
very close to the values of the non calibrated kinematic model where
all joint axes are considered to be perfectly orthogonal or parallel. To
include these deviations with respect to the non calibrated model in
the dynamic identification procedure, a new dynamic model must be
derived. In the case of the KUKA IR 361 this results in four additional
barycentric parameters to be estimated. Tables 3.1 and 3.2 show no
improvement in the accuracy of the dynamic model with respect to
3.7. Experimental results 83

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

Table 3.5: Extended set of Denavit-Hartenberg parameters for


KUKA IR 361
(angles are expressed in radians, and lengths in meter)

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.

3.7.3 Rotor inertia

Commercial industrial robots often have gears or harmonic drives with


typical transmission ratios between 50 and 200. Hence, the motors
may perform several thousands of rotations per minute which makes
the rotor inertia a significant factor in robot dynamics. Nevertheless the
rotors are frequently considered as rigid bodies joined with the links on
which they are located. As we know from literature, this simplification
84 Experimental robot identification: practical issues

is only permitted when the condition of equation (2.18) is satisfied, i.e.


eTmi+1 ωi = 0 (3.33)
for any configuration of the robot, and for parallel rotation axes of link
and rotor.
For a common industrial manipulator, the rotor of the first actu-
ator moves with respect to the fixed base, such that ω0 = 0. The
rotor inertia cannot be distinguished from the link inertia and has to
be considered as one body. The rotation axis em2 of the second ac-
tuator is perpendicular to the motion axis of the first joint, such that
equation (3.33) holds. For the third actuator, however, both axes are
parallel and the rotor inertia can be estimated as a separate parameter.
Example 3.3
The third actuator of the KUKA IR 361 is mounted on the second
link and its rotor inertia can be estimated. From the manufacturer’s
specification, we know that the moment of inertia of the rotor, tacho-
generator and brake together equals 10.1 kgcm2 or 0.00101 kgm2 .
Table 3.3 gives an estimated value for the rotor inertia Im3 of the
third actuator of 9.935 kgcm2 , which is close to the specified value.
The parameters Kr1,zz ∗ ∗
and K2,yy contain the contribution of
the rotor inertia of the first two actuators. Their contributions are,
respectively,
Im1 µ21 = 0.00101 · 94.1472 = 8.952 kgm2 (3.34)
Im2 µ22 = 0.00101 · 103.2352 = 10.764 kgm2 , (3.35)
with µ1 and µ2 the transmission ratios of the first and second joint.

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.

3.7.4 Gravity compensation spring

Some industrial manipulators are equipped with a gravity compensa-


tion device on the second joint axis in order to reduce the torque needed
3.7. Experimental results 85

Model without rotor inertia


Measured and predicted torque Prediction error
200
Torque axis 1 (Nm) 50

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)

Figure 3.7: Prediction error for the excitation trajectory without


(upper figure) and with (lower figure) inclusion of rotor
inertia
86 Experimental robot identification: practical issues

rotation axis
second link
q2

l
gravity
compensation
spring

Figure 3.8: 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

the model can be calculated from the manufacturer’s specifications.


For a stroke of 162 mm the spring force increases from 729.4 N to
2495.8 N. This gives a spring stiffness of
2495.8 N − 729.4 N
k= = 10904 N/m. (3.39)
0.162 m
Knowing that the force of 729.4 N is found for a total spring length
of 387 mm, we can calculate the length l0 where the spring force is
zero.
729.4 N
l0 = 0.387 m − = 0.3201 m (3.40)
10904 N/m

The parameters k and l0 can be calculated from the identified


parameter values grav1 and grav2 (see table 4.1 in chapter 4), yield-
ing following results
grav1 + g b2,z
k= = 10588 N/m (3.41)
lr
grav2
l0 = 1000 = 0.310 m. (3.42)
k
Comparing these estimated values with the above-mentioned a pri-
ori information shows a good correspondence. This validated the
presented approach. 

3.7.5 Friction

Experiments show that friction consumes up to thirty percent of the


actuator torque. Since friction has such a large influence, an accurate
friction model is necessary. This section experimentally measures the
friction characteristic, and looks for a suitable friction model.

The friction characteristic

To have a good idea of the friction characteristic, the friction torque


is measured as a function of joint velocity. Every robot joint is moved
separately with constant velocity while the actuator torque is measured
(indirectly through the actuator current). When possible, the joint axis
3.7. Experimental results 89

400

300

200

100
Friction torque τf,1 (Nm)

−100

−200

−300

−400

−500
−3 −2 −1 0 1 2 3

Joint velocity (rad/s)

Figure 3.9: Measured friction characteristic for joint 1 of KUKA


KR15

orientation is chosen such that influence of gravity is eliminated. The


velocity is stepwise increased to cover the full velocity range. To obtain
the friction characteristic the measured actuator torques are averaged
and plotted against the corresponding velocity.
Figure 3.9 shows the resulting friction characteristic for the first
joint axis of the KUKA KR15. At high velocities the friction torque
increases linearly with joint velocity, as predicted by the viscous friction
model in literature. The Stribeck friction can be observed for very low
velocities (smaller than 0.025 rad/s). For the wrist axes, measurements
at low velocities (down to 0.01 rad/s) did not show the presence of
Stribeck friction. Anyway, we claim that these low velocities do not
appear frequently in trajectories, so Stribeck friction will be neglected
further on.
The friction characteristics for the other axes are similar. The
shape of the friction characteristic is confirmed by the results presented
by (Daemi and Heimann, 1996) and by experiments on a KUKA IR 361.
So all conclusions are expected to be generally valid and applicable to
90 Experimental robot identification: practical issues

other industrial manipulators.

Friction modelling

Literature frequently presents the classical model for the friction term
τf (q̇) which consists of Coulomb and viscous friction:

τf (q̇) = fC sign(q̇) + fv q̇. (3.43)

This is a simple, but appropriate friction model with fC and fv the


Coulomb and viscous friction coefficient respectively. Equation (3.43)
assumes a symmetric friction characteristic, i.e. the model holds for
both positive and negative velocity. Fortunately, this condition is sat-
isfied for most industrial robots (Grotjahn et al., 2001). An asymmetric
Coulomb friction can be modelled by introducing an offset parameter.
One should be very careful when interpreting this parameter. An off-
set may also model a bias on the measurements or other unmodelled
dynamics.
Figure 3.10 shows the fit of the classical model of equation (3.43) to
the measurements. Compare the dashed line with the black dots. It is
clear that this friction model shows significant deviations, especially at
low velocities. Hence, we introduce a systematic model error by using
the classical friction model. This could be avoided by eliminating all
measurements with low velocity from the estimation, but this would
reduce too much of the available information.
A significant improvement is obtained by replacing the Coulomb
friction term with a smoother term
1
τf = f1 q̇ + f2 q̇ 3 . (3.44)

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)

Figure 3.10: Approximation with friction models

Influence of temperature and load

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)

Figure 3.11: Influence on friction torque of temperature for joint


4 of KUKA KR15

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)

Figure 3.12: Influence on friction torque of adding a payload for


joint 6 of KUKA KR15
3.7. Experimental results 93

3.7.6 Advantages of using periodic excitation for robot


excitation

The advantages of periodic excitation in robot identification have been


briefly mentioned in (Swevers et al., 1997), but have never been demon-
strated experimentally. This is the purpose of this section. The dis-
cussion is based on the experimental data presented in this chapter.
Analytic differentiation of the finite Fourier series allows us to cal-
culate accurate and noise-free estimates of the joint velocities and ac-
celerations, which are required to calculated the identification matrix
Φ (equation (3.24)). This approach can only be applied for periodic
signals. The Fourier transform of non-periodic signal would introduce
leakage errors, which are systematic errors. The frequency domain win-
dowing mentioned corresponds to ideal noise filtering, providing noise-
free velocity and acceleration data. Figure 3.13 compares the joint
accelerations obtained by analytical and numerical differentiation (us-
ing Tustin’s bilinear differentiation rule) of the joint angles measured
during the experiment discussed in section 3.7.1.
The noise on the velocity and acceleration data influences the ac-
curacy of the robot identification. Noise on the elements of the iden-
tification matrix Φ introduces systematic estimation errors if it is not
considered appropriately in the parameter estimation, which is the case
for the linear least squares or Markov estimation. The maximum like-
lihood estimation method presented in (Olsen and Petersen, 2001) is
capable of handling this situation. However, this estimation method
is complex, because of the used iterative optimization scheme, which
requires a good initial parameter estimate to avoid local minima. In
addition, this method did not show any improvement in a practical
robot identification experiment (Olsen et al., 2002). This result can
mainly be explained by the small noise level on the joint position mea-
surements, yielding a small uncertainty on the identification matrix.
Periodic trajectories allow us to estimate the noise level by cal-
culating the sample variance using equations (3.9) and (3.10). The
corresponding standard deviations are presented in table 3.6.
In order to show the mentioned loss of accuracy, the Markov param-
eter estimation method discussed in section 3.5, has been applied to
the experimental data. Joint velocities and accelerations are obtained
94 Experimental robot identification: practical issues

Analytical calculation of acceleration


5
Acceleration (rad/s2)

−5
0 1 2 3 4 5 6 7 8 9 10

Numerical calculation of acceleration


5
Acceleration (rad/s2)

−5
0 1 2 3 4 5 6 7 8 9 10
Time (s)

Figure 3.13: Accelerations obtained by analytical and numerical


differentiation (using Tustin’s bilinear differentiation
rule) of joint angle measurements: axis 1 (full line),
axis 2 (dashed line) and axis 3 (dash-dotted line)

standard deviation of noise


axis 1 axis 2 axis 3
joint position 9.4 10 rad 11.2 10−5 rad
−5 6.9 10−5 rad
actuator torque 3.3 Nm 4.6 Nm 1.5 Nm

Table 3.6: Estimated standard deviations of the noise on position


and torque measurements

by means of the numerical differentiation rule mentioned above. Ta-


ble 3.7 compares the accuracy of the models obtained using analytical
and numerical differentiation of the joint angle data. The comparison is
based on the RMS actuator torque prediction errors for the validation
3.7. Experimental results 95

differentiation method axis 1 axis 2 axis 3


analytical 8.971 Nm 11.806 Nm 4.395 Nm
numerical 10.643 Nm 17.471 Nm 7.781 Nm

Table 3.7: Comparison of RMS actuator torque prediction errors


using analytical and numerical differentiation for the
validation trajectory

trajectory (figure 3.6). A decrease of the accuracy up to 75% shows the


importance of analytical differentiation, and consequently of periodic
excitation.

Remark that numerical differentiation combined with low-pass fil-


tering reduces the noise level on the estimated velocities and accel-
erations. However, an appropriate choice of the cut-off frequency is
crucial. This choice is quite difficult if the bandwidth of the excitation
signal is not clearly specified, as it is the case for the non-periodic exci-
tation trajectories presented in (Armstrong, 1989; Gautier and Khalil,
1992). The selection of the filter cut-off frequency is then a compromise
between eliminating as much noise as possible without eliminating too
much of the original useful signal. In addition, forward and backward
filtering is required in order to avoid phase distortions.

Conclusion on periodic excitation

Periodic excitation is a key element for accurate experimental robot


identification, mainly because it allows us to calculate noise-free joint
velocities and accelerations from joint angle measurements. Experi-
mental results show that this approach yields robot models that are
more accurate in predicting actuator torques than models resulting
from robot identification that do not take advantage of this periodicity,
or that use non-periodic excitation, therefore requiring the application
of numerical differentiation techniques.
96 Experimental robot identification: practical issues

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.

In order to improve the accuracy of the parameter estimates, al-


ternative approaches were investigated. One approach uses an ‘exter-
nal’ sensor (Raucent and Samin, 1993; Liu et al., 1998) to measure
the reaction forces and torques at the base of the robot. From these
measurements, estimates of the robot inertial parameters are obtained.
Its main advantage compared to identification by motor measurements
is that the identification model is totally independent from internal
torques such as joint friction torques. Since the sensor is external to
the manipulator, the same sensor can be used for a number of different
systems.

Based on these approaches two identification models can be de-


fined. The classical internal model is used to predict the required ac-
tuator torques for a given desired motion of the robot. The so-called
reaction or external model relates the motion of the robot to the re-
action forces and torques on its base plate. Both models have their
own specific relevance. In robotics, optimization of robot trajectories
with respect to cycle time is an important issue. Hereby physical con-
straints of the robot have to be taken into account: the workspace of
the robot, limits on the actuator power and torques, and on the reac-
tion forces/torques of the robot on the base plate. For industrial robots
these limits are specified by the robot manufacturer. The limits on the
base plate reaction forces/torques are extremely important and often
very tight for robots that will be used on space stations. Too high
reaction forces/torques may disturb the often very sensitive laboratory
equipment present in these space stations. As a result, the most impor-
tant aspect of the robot models for these applications is their ability
to accurately predict the required actuator torques and the resulting
base plate reaction forces/torques based on the desired robot motion.

In this chapter both models are combined into one identification


model (Chenut et al., 2000). This approach allows combining the ad-
vantages of both models and improving the accuracy of the parameter
estimates.
4.2. Generation of dynamic robot models 99

Section 4.2 describes the generation of dynamic robot models (in-


ternal and external models), briefly discusses how both models can be
combined, and the advantages associated with this. The use of this
combined model approach in robot identification was first presented
in (Chenut et al., 2000), however without any experimental validation.
The experiment design resulting in optimal periodic robot excitation
and the parameter estimation have been discussed in chapter 3.
The main part of this chapter is section 4.3, which presents the
experimental identification results obtained on a KUKA IR 361 indus-
trial robot and discusses the advantages of using a combined internal-
external robot model. The results presented in section 4.3 are the first
experimental results ever obtained with this combination of external
and internal measurements.

4.2 Generation of dynamic robot models


This section defines the internal and external models, and explains
how both models can be combined into one identification scheme. The
inertial parameter set is split up into different subsets and the effect of
the rotor inertia in the different approaches is worked out. Finally, the
advantages of combining internal and external robot models are given.

4.2.1 Combining internal and external robot models

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:

τ = Φ(q, q̇, q̈)θc , (4.3)

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:

• a minimal set of barycentric parameters of the internal model:


δi . They appear in both internal and external model and are a
subset of barycentric parameters of the external model δe .

• the remaining set of barycentric parameters of the external model:


δe \ δi . They appear only in the external model.
4.2. Generation of dynamic robot models 101

• the parameters related to gravity compensation devices and joint


friction: δf g . When we consider the robot as the system, these
forces are internal and have no effect at the base plate. Therefore,
these parameters only appear in the internal model.

All parameter sets are assumed to be minimal, i.e. redundant parame-


ters are removed (Fisette et al., 1996; Maes et al., 1989).
The identification matrix Φ of the combined model consists of fol-
lowing submatrices:
 
Ψi Ψf g 0
Φ= . (4.6)
Ψe1 0 Ψe2

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.

4.2.2 Effect of rotor inertia

The model reduction removes unidentifiable parameters and combines


parameters that can only be estimated in combination. Within the
robotics research field, the following simplification strategy is frequently
applied (see also section 3.7.3). The rotor inertia, including the inertia
of the transmission and that of the brake, is replaced by an equivalent
inertia which is added to the link inertia. As a result, the reduced
dynamic equations correspond to dynamic equations of the link only
and rotor and transmission dynamics are not identified separately.
When combining internal and external models into a combined
model, however, this simplification cannot be applied anymore because
the rotor inertia has a different contribution to the internal model than
to the external model. If the influence of these rotor inertias is sig-
nificant, the mentioned simplification would yield that the combined
inertial parameters of the internal model δi is no subset anymore of the
external model parameters δe . To avoid this, the rotor inertias have
to be included and estimated as separate parameters in the combined
model. However, knowledge of the values of the rotor inertias, usually
102 Combining internal and external model

provided by the manufacturers, simplifies this problem, simply by sub-


tracting the torque contributions of these inertias from the actuator
torque measurements.
Example 4.1
For the first three axes of the KUKA IR 361 robot, the torque con-
tribution of the rotor inertia to the internal model is respectively:

τ1,I = µ21 q̈1 Im1 (4.7)


2
τ2,I = (1 + µ2 ) q̈2 Im2 + (q̈2 − µ3 q̈3 )Im3 (4.8)
τ3,I = (µ3 q̈2 − µ23 q̈3 )Im3 . (4.9)

For the external model, the following torques have to be subtracted


from the measured robot reaction torques on the base plate in X,
Y , and Z-direction respectively:

mX,I =(q̈2 (1 + µ2 ) sin q1 + q̇1 q̇2 (1 + µ2 ) cos q1 )Im2


+ ((q̈2 − µ3 q̈3 ) sin q1 + q̇1 (q̇2 − µ3 q̇3 ) cos q1 )Im3 (4.10)
mY,I =(q̈2 (1 + µ2 ) cos q1 − q̇1 q̇2 (1 + µ2 ) sin q1 )Im2
+ ((q̈2 − µ3 q̈3 ) cos q1 − q̇1 (q̇2 − µ3 q̇3 ) sin q1 )Im3 (4.11)
mZ,I = − µ1 q̈1 Im1 (4.12)

with µi the transmission ratios of joint i (µ1 = 94.147, µ2 = 103.235,


µ3 = 51.441). Imi is the inertia of the actuator of joint i. The inertia
includes the inertia of the rotor, the brake and the tachometer. The
derivation of these equations can be found is appendix D. 

4.2.3 Advantages of combining internal and external


robot models

The classical robot identification approach using the internal model


suffers from an important drawback: the torques applied to the links
are not directly measurable, so the accuracy of their estimates depends
on friction torque modelling errors and the precision of the actuator
torque constants.
The external model is totally independent of internal torques such
as joint friction torques. The reaction forces and torques are measured
4.2. Generation of dynamic robot models 103

by means of an external sensor: a force/torque platform. This ap-


proach, however, suffers from the fact that joint friction parameters
cannot be estimated. These parameters are important for accurate ac-
tuator torque prediction which is used in advanced control algorithms
and path optimization. Another drawback is that a force/torque plat-
form is required and that for each identification experiment the manip-
ulator has to be placed on the platform.

Experimental robot identification benefits from combining internal


and external robot models. The combined model allows us to take
into account more measurement data, i.e. joint torque data with base
reaction force and torque data, in one parameter estimation problem,
yielding more accurate robot model parameter estimates. Since the
base sensor method is not influenced by friction, this method results
in a more accurate estimation of the inertial parameters. By includ-
ing the actuator torque measurements, however, this method is able
to provide an estimation of the friction torque as well. The improved
robot model parameter accuracy yields more accurate actuator torque
predictions, as it is shown in (Chenut et al., 2000) by means of sim-
ulations. Chenut reported that the RMS actuator torque prediction
errors resulting from the combined model are between 20% and 50%
smaller than those resulting from the internal model only. This is quite
interesting, because the design of an advanced robot controller, such
as a computed torque controller, is based on the robot model, and its
performance depends directly on the model accuracy. This also holds
for trajectory optimization taking into account the physical limits of
the robot. In addition, the combined model provides estimates of the
base plate reaction forces and torques, which is important for the path
planning of e.g. space robots, as explained in the introduction.

Furthermore, the combined model allows us to estimate more para-


meters separately than would be possible with the internal or external
model alone. It is e.g. possible to estimate the rotor inertias of the ac-
tuators (section 4.2.2) and the parameters of the gravity compensation
device (section 3.7.4) separately from inertial parameters of the links.
104 Combining internal and external model

4.3 Experimental identification results using a


combined internal/external model

This section discusses the application of the above-mentioned identifi-


cation approach. Internal and external models are combined to improve
the accuracy of the parameter estimates.

4.3.1 Description of test case and robot model

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

Figure 4.1: Schematic representation of a KUKA IR 361 robot

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

The subset δe \ δi contains 5 additional inertial parameters which only


appear in the external model (Chenut et al., 2000).
The friction model considers viscous and Coulomb friction, yielding
6 parameters. One parameter per joint is added to take offset on the
joint torque measurements into account.
The torque generated by the gravity compensation spring is a com-
plex nonlinear function of the angular position of the second joint q2 and
the spring parameters, and requires two parameters (see section 3.7.4).
This yields 11 parameters appearing only in the internal model and
forming the subset δf g .

4.3.2 Description of the experiments

The experiments investigate how the accuracy of the parameter esti-


mates and of the actuator torque prediction can be improved by com-
bining internal and external models. Therefore, three different identifi-
cation experiments are considered: (1) identification using the internal
model, which contains 25 parameters, (2) identification using the exter-
nal model, which contains 19 parameters and (3) identification using
the combined model containing all 30 parameters.
The excitation trajectory is the same as the one used for the experi-
ments in section 3.7 of the previous chapter. For comparison purposes,
only one trajectory is optimized and used for all three experiments.
The signals measured during excitation are: (1) the joint angles,
measured by means of the encoders mounted on the actuator shafts,
(2) the actuator currents, which are considered proportional to the
actuator torques, and (3) the six reaction forces/torques measured at
the base of the robot. In order to avoid aliasing, reaction forces/torques
are filtered using the same low-pass butterworth filters as used for the
motor currents.
The variance of the noise on the averaged actuator torque and the
reaction forces and torques measurements is estimated by calculating
the sample variance: στ1 = 3.26 Nm, στ2 = 4.58 Nm, στ3 = 1.47 Nm,
σfX = 10.68 N, σfY = 11.20 N, σfZ = 5.10 N, σmX = 12.06 Nm, σmY =
11.54 Nm and σmZ = 2.70 Nm. The estimation of the variance and
the improvement of the signal-to-noise ratio through data averaging
106 Combining internal and external model

are only possible because of the periodicity of the excitation, as it is


explained in section 3.7.6.
The trajectory parameters qi,0 , ai,k , and bi,k (equation (3.6)) are
(re)-estimated using the discrete Fourier transform of the averaged en-
coder measurements, in order to account for tracking errors during the
execution of the experiments due to robot controller limitations. The
joint velocities and accelerations are then calculated analytically.

4.3.3 Discussion of the experimental results

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

the determinant of the covariance matrix is related to the volume of


the uncertainty ellipsoid for the parameters. For the covariance ma-
trix Ccomb,δifg of the parameters δi and δf g obtained with the combined
model, this measure equals 3.8 · 10−45 , which is smaller than 2.0 · 10−43
for the covariance matrix Cint,δifg obtained with the internal model.
The same conclusion holds for the parameters δe of the external model:
the scalar measure for Ccomb,δe equals 1.2 · 10−36 which is again smaller
than 3.8 · 10−32 for Cext,δe .

Actuator torque prediction for the excitation trajectory

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

combined σc internal σi external σe units


Kr1,zz 18.681 0.079 18.719 0.097 18.730 0.093 kgm2
Kd2 -10.818 0.091 -10.879 0.113 -10.847 0.105 kgm2
K2,xz -0.137 0.065 -0.230 0.081 -0.111 0.075 kgm2
Kr2,yz 2.614 0.097 2.393 0.116 2.881 0.120 kgm2
K2,xy -0.008 0.174 -0.099 0.209 0.012 0.212 kgm2
b3,z 0.069 0.255 0.061 0.273 0.057 0.451 kgm
b3,x 2.999 0.151 3.025 0.161 2.789 0.274 kgm
Kd3 2.441 0.077 2.416 0.093 2.486 0.091 kgm2
K3,xz 0.141 0.146 0.090 0.180 0.122 0.173 kgm2
K3,yz -0.199 0.082 -0.169 0.093 -0.285 0.106 kgm2
K3,xy -0.180 0.096 -0.144 0.107 -0.249 0.127 kgm2
K2,yy 23.288 0.223 23.501 0.237 23.510 0.458 kgm2
K3,yy 5.370 0.132 5.328 0.135 5.188 0.423 kgm2
b2,x -0.193 0.115 -0.224 0.134 -0.078 0.226 kgm
grav1 353.693 0.283 355.451 0.286 − − Nm
grav2 3.284 0.284 3.296 0.286 − − N
fv1 10.694 0.246 10.572 0.252 − − Nms
fc1 34.363 0.144 34.343 0.145 − − Nm
fv2 17.187 0.272 17.285 0.274 − − Nms
fc2 39.199 0.281 39.190 0.282 − − Nm
fv3 5.260 0.162 5.241 0.163 − − Nms
fc3 16.094 0.136 16.123 0.136 − − Nm
o1 -12.723 0.291 -12.724 0.291 − − Nm
o2 -5.828 0.199 -5.820 0.225 − − Nm
o3 1.806 0.136 1.924 0.144 − − Nm
b2,z 16.622 0.088 − − 16.824 0.104 kgm
b1,x -0.405 0.092 − − -0.433 0.100 kgm
br1,y 19.420 0.110 − − 19.294 0.115 kgm
K1,xz -0.832 0.187 − − -0.931 0.189 kgm2
K1,yz -2.118 0.227 − − -2.230 0.248 kgm2

Table 4.1: Set of estimated parameter values and standard devia-


tions for the combined, internal and external model
4.3. Experimental identification results 109

Measured actuator torque Predicted actuator torque Torque prediction error


Torque axis 1 (Nm)

100 100 100

0 0 0

−100 −100 −100

−200 −200 −200


0 5 10 0 5 10 0 5 10
Torque axis 2 (Nm)

200 200 200


100 100 100
0 0 0
−100 −100 −100
−200 −200 −200
0 5 10 0 5 10 0 5 10

100 100 100


Torque axis 3 (Nm)

50 50 50

0 0 0

−50 −50 −50

−100 −100 −100


0 5 10 0 5 10 0 5 10
Time (s) Time (s) Time (s)

Figure 4.2: Measured and predicted actuator torques and the cor-
responding prediction errors for the excitation trajec-
tory using the combined model

RMS prediction error axis 1 axis 2 axis 3


internal model 6.099 Nm 6.303 Nm 2.863 Nm
combined model 6.098 Nm 6.340 Nm 2.864 Nm

Table 4.2: Root mean squared actuator torque prediction errors for
the excitation trajectory
110 Combining internal and external model

Measured force/torque Predicted force/torque Force/torque prediction error


100 100 100
f (N)

0 0 0
X

−100 −100 −100


0 5 10 0 5 10 0 5 10

100 100 100


f (N)

0 0 0
Y

−100 −100 −100

0 5 10 0 5 10 0 5 10

50 50 50
f (N)

0 0 0
Z

−50 −50 −50

0 5 10 0 5 10 0 5 10

200 200 200


m (Nm)

0 0 0
−200 −200 −200
X

−400 −400 −400


−600 −600 −600
0 5 10 0 5 10 0 5 10
400 400 400

200 200 200


m (Nm)

0 0 0
Y

−200 −200 −200

−400 −400 −400


0 5 10 0 5 10 0 5 10

100 100 100


m (Nm)

50 50 50
0 0 0
Z

−50 −50 −50


−100 −100 −100
0 5 10 0 5 10 0 5 10
Time (s) Time (s) Time (s)

Figure 4.3: Measured and predicted reaction forces and torques


and the corresponding prediction errors for the excita-
tion trajectory using the combined model
4.3. Experimental identification results 111

RMS prediction error


fX fY fZ
external model 11.803 N 13.611 N 4.491 N
combined model 11.805 N 13.604 N 4.518 N
mX mY mZ
external model 14.748 Nm 12.388 Nm 3.225 Nm
combined model 14.604 Nm 12.686 Nm 3.255 Nm

Table 4.3: Root mean squared reaction force/torque prediction er-


rors for the excitation trajectory

Uncertainty on actuator torque prediction

The uncertainty on the actuator torque predictions depends on the


accuracy of the parameter estimates in δi and δf g , because of the
linear dependency of the torque prediction on these model parame-
ters (Schoukens and Pintelon, 1991). Before, it has already been men-
tioned that the covariance matrix of the parameters obtained with
the combined approach is smaller than this obtained with the inter-
nal model, i.e. Ccomb,δifg < Cint,δifg . This means that the difference is
negative definite. From the definition of positive definiteness (Golub
and Van Loan, 1989), it follows that

∀x 6= 0 : xT Ccomb,δifg x < xT Cint,δifg x. (4.13)

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.

Experimental model validation

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

Measured actuator torque Predicted actuator torque Torque prediction error


Torque axis 1 (Nm)

100 100 100

0 0 0

−100 −100 −100

0 20 40 0 20 40 0 20 40
200 200 200
Torque axis 2 (Nm)

100 100 100

0 0 0

−100 −100 −100

−200 −200 −200


0 20 40 0 20 40 0 20 40
Torque axis 3 (Nm)

50 50 50

0 0 0

−50 −50 −50

0 20 40 0 20 40 0 20 40
Time (s) Time (s) Time (s)

Figure 4.4: Measured actuator torque, predicted torque and the


corresponding torque prediction errors for the valida-
tion trajectory using the combined model (filtered)

Figure 4.4 compares the measured and predicted actuator torques


and the corresponding prediction errors, obtained using the parameter
estimates resulting from the combined model identification. Compar-
ison of the prediction errors with the measured torques shows that
the obtained model is capable of accurately predicting the actuator
torque data. The peaks in the prediction error occur at low joint an-
gular velocity, which indicates that the assumed friction model, which
includes viscous and Coulomb friction only, is too simple. Including
more advanced friction and gear models results in smaller prediction
errors (Swevers et al., 2002).

Unlike for the identification measurements, the validation trajec-


tory consists of point-to-point motions, which are not guaranteed to
be exactly the same when they are repeated. Therefore, it was not
4.3. Experimental identification results 113

possible to reduce the noise level by averaging over multiple periods.


Therefore, the measured forces and torques and corresponding predic-
tion errors shown in figures 4.4 and 4.5 have been filtered with a second
order Butterworth filter with a cut-off frequency of 10 Hz. To calculate
the values in tables 4.4 and 4.5, however, the unfiltered data are used.
Table 4.4 shows the root mean squared (RMS) actuator torque pre-
diction errors obtained with the different sets of estimated parameters
for this validation trajectory. The RMS prediction errors for axes 1,
2 and 3 resulting from the combined model are less than 1% smaller
than those resulting from the internal model. This improvement is
rather limited and does not correspond to the significant improvement
predicted by the simulation results presented in (Chenut et al., 2000).
The reasons for that are quite simple. The estimated noise levels on
the measured reaction forces and torques are much higher than the lev-
els that were assumed in simulation. E.g. the estimated noise variance
on reaction force fX equals 10.5 N, while the simulations presented
in (Chenut et al., 2000) assumed a noise variance equal to 2 N. The
estimated noise levels on the measured actuator torques are lower than
the levels that were assumed in simulation.
RMS prediction error axis 1 axis 2 axis 3
internal model 8.950 Nm 11.824 Nm 4.446 Nm
combined model 8.949 Nm 11.811 Nm 4.419 Nm

Table 4.4: Root mean squared actuator torque prediction errors for
the validation trajectory

In addition, the parameter values used in the simulation are esti-


mated based on one period only, while the experimental measurements
have been averaged over 16 periods first and then been used for the
identification. It is clear that in the experimental case the noise level
already has been reduced sufficiently by averaging. This explains why
combined and internal model perform nearly as well. If in the simu-
lation more periods had been used in the estimation, the prediction
errors would certainly become even more similar.
From this discussion, it can be concluded that combining internal
and external measurements would require less periods to be measured,
114 Combining internal and external model

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.

RMS prediction error


fX fY fZ
external model 17.605 N 17.402 N 6.132 N
combined model 17.604 N 17.393 N 6.126 N
mX mY mZ
external model 21.415 Nm 21.628 Nm 6.491 Nm
combined model 21.392 Nm 21.683 Nm 6.480 Nm

Table 4.5: Root mean squared reaction force/torque prediction er-


rors for the validation trajectory

It can be seen clearly that these predictions are sufficiently accurate.


As a result, the obtained combined model can be used for path planning
and optimization taking into account limits on actuator torques and
base plate reaction forces and torques.

4.4 Practical considerations

This section discusses some practical problems which do not appear in


a theoretical analysis, but which arise during the implementation and
might disturb the experimental results.
The force/torque sensor shows some small drift on the signals. From
time to time, a recalibration of the sensor offsets is required. Normally
such offsets can be measured by taking sensor readings at zero load. In
this setup, the robot manipulator is standing on top of the sensor, and
4.4. Practical considerations 115

Measured force/torque Predicted force/torque Force/torque prediction error

100 100 100


fX (N)

0 0 0

−100 −100 −100


0 20 40 0 20 40 0 20 40
200 200 200

100 100 100


fY (N)

0 0 0

−100 −100 −100


0 20 40 0 20 40 0 20 40
100 100 100

50 50 50
fZ (N)

0 0 0

−50 −50 −50


0 20 40 0 20 40 0 20 40

200 200 200


mX (Nm)

0 0 0

−200 −200 −200

−400 −400 −400


0 20 40 0 20 40 0 20 40
400 400 400

200 200 200


mY (Nm)

0 0 0

−200 −200 −200

−400 −400 −400


0 20 40 0 20 40 0 20 40

50 50 50
mZ (Nm)

0 0 0

−50 −50 −50

0 20 40 0 20 40 0 20 40
Time (s) Time (s) Time (s)

Figure 4.5: Measured and predicted reaction forces and torques


and the corresponding prediction errors for the valida-
tion trajectory using the combined model (filtered)
116 Combining internal and external model

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.

When using data from different measurement devices to estimate


the same parameters, calibration of the measurement channels becomes
important. The force platform can be calibrated very accurately. It
is based on piezo crystals, which keep their properties for a very long
time. Mostly a calibration sheet is provided by the manufacturer. The
actuator torques however are not directly available. They are measured
indirectly by means of the motor current. For permanent magnet DC
motors the torque constant Km relates the torque output τi to the
current im : τi = Km im . In practice, the actuator torque constant
can vary considerably from the manufacturer’s specification. Torque
constants may even show considerable variation between similar motor
types on a single robot. In most cases, the measured torque constant
is less than the manufacturer’s specification. Torque constants reduce
gradually with time due to demagnetization. For all these reasons it is
necessary to frequently recalibrate the actual torque constant for each
motor in a robot, e.g. using (Corke, 1996).
The combined model possibly allows us to discover badly known
torque constants. When the number of periods measured increases, the
4.5. Conclusions 117

noise level can be reduced by averaging the measurements such that


the estimation results of internal and combined model should converge.
This is only valid under the assumption that the model is able to explain
all dynamics in the measured signal. Any unmodelled effect will result
in a systematic error on the parameter estimates.

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

For many years already experimental robot identification techniques


have successfully been applied to obtain an accurate dynamic robot
model that is suitable for simulation purpose and for controller design.
The literature on robot identification is very extensive, but in most
cases no distinction is made between the robot links and the robot
payload. The payload is considered as a part of the last link and the
identification method is applied to the robot with payload.

119
120 Robot payload identification

Nevertheless, the robot payload will have an increasing importance


in industrial robot manipulators. The newest KUKA KR500 palletiz-
ing robot is a six-axis robot in the 500 kg payload category. It has a
weight of only 2350 kg in relation to its payload. This gives a ratio
of the payload mass to the manipulator mass of 1 to 5. The DLR
light-weight robot (LWR) has a ratio of 1 to 2, and their most recent
developments tend towards a ratio of 1 (Hirzinger et al., 2002). As a
consequence, the payload brings about a much larger contribution to
the actuator torques and accurate knowledge of the payload inertial
parameters becomes more important for the controller performance.
In addition, the robot payload may be different from one application
to another and then a full identification of the robot dynamics is re-
quired. This procedure is very time consuming and error prone because
a persistent excitation of the full robot system is required in order to
identify accurately all robot parameters.
This chapter presents a robot payload identification method which
is based on the general robot identification method discussed in chap-
ter 3. It does not require a full dynamic identification, but uses as much
a priori information as possible. Robot payload identification should
fulfill the following requirements. For simulation purposes and con-
troller design, the obtained model should be able to accurately predict
the required actuator torques for a desired robot motion. This require-
ment is already satisfied for the existing general robot identification
method. For acceptance in an industrial environment, however, the
estimated parameter values should correspond to the physical values.
This is necessary to gain the confidence of the users on the industrial
work floor because they mostly have an idea about at least the mass
and the position of the payload’s center of mass. The first objective of
the payload identification approach will be to obtain accurate estimates
of the inertial parameters. It will be shown that this new requirement
is more difficult to achieve than accurate actuator torque prediction.
Like in standard experimental robot identification techniques (Gau-
tier and Khalil, 1992; Olsen and Bekey, 1986; Swevers et al., 1997), the
parameters of the dynamic robot model are estimated based on motion
and actuator torque data measured during well-designed identification
experiments. The actuator torque data are obtained through actuator
current measurements. This way no additional sensors are required.
5.2. Robot payload identification approach 121

Although this may be considered as an advantage at first sight, the


major disadvantage is that a more extensive identification model is re-
quired. When a wrist-mounted force-torque sensor is used to determine
the inertial parameters of the payload (Atkeson et al., 1986), kinematic
information is sufficient to derive the identification model. Using the
experimental robot identification approach on the other hand requires
much more a priori information (Craig, 1986), which makes the iden-
tification result more sensitive to errors. In this approach, the torque
contribution of the robot links should be compensated for, an appropri-
ate friction model should be used, and other losses and dynamic effects
should be included in the identification model (Swevers et al., 2002).
In addition, the actuator current measurements are more difficult to
calibrate than a force sensor.
This chapter applies the robot identification approach developed
in the previous chapters to the identification of the robot payload.
The chapter is outlined as follows. Section 5.2 describes the dynamic
model used for robot payload identification and section 5.3 discusses
different approaches to identify the payload parameters. In section 5.4
we investigate the possible causes of systematic errors on the parameter
estimates and on the actuator torque prediction using a sensitivity
analysis. Section 5.6 discusses the results obtained on an experimental
setup. A last section summarizes the conclusions.

5.2 Robot payload identification approach

This section briefly discusses the developed robot payload identifica-


tion approach (Swevers et al., 2002), which is based on periodic robot
excitation and the maximum likelihood parameters estimation, as it
was discussed in chapter 3. First, the dynamic model for a manipula-
tor with payload is derived and some additional effects are described.
Then, the modifications in the parameter estimation are discussed.

5.2.1 Dynamic robot model for payload identification

The generation of a dynamic robot model constitutes a basic step in any


identification approach. Although the model derivation is based on the
122 Robot payload identification

same physical principles, a dynamic model for payload identification


is quite different from a model for robot identification. In the latter,
some simplifications are often introduced by neglecting the contribution
of some inertial parameters to the joint torques. Some parameters
which are not essential for the unloaded robot may become essential
for the loaded robot. For instance, in a standard anthropomorphic
manipulator, the dynamic effect of the wrist axes on the base axes is
usually negligible due to the compact construction and small inertia of
the wrist. For robot payload identification, however, an accurate model
of the wrist is required and the contribution of the payload to the joint
torques of the base axes becomes significant. The key element in the
applied dynamic model for payload identification is the inclusion of
some additional effects in addition to the rigid body dynamics resulting
from the robot. This identification model allows to obtain accurate
parameter estimates for the payload.

A. Rigid body dynamics

The dynamic model of an ndof degrees of freedom robot manipulator


without payload was derived in chapter 3:

τG = M(qG )q̈G + C(qG , q̇G )q̇G + g(qG ). (5.1)

It is a dynamic relation between the gear torques τG , i.e. the joint


torques that drive the links, and the motion of the links (qG , q̇G , q̈G ).
When a payload is attached to the manipulator, the required actu-
ator torques will change. The payload exerts a wrench w on the end
effector. This results in additional actuator torques τpayload which are
calculated by the formula

τpayload = J T (qG ) w, (5.2)

where J T (qG ) is the ndof × ndof transposed Jacobian matrix of the


manipulator. The wrench w consists of three force components fee
and three torques tee . If a wrist-mounted force sensor were used, this
wrench could be measured directly.
5.2. Robot payload identification approach 123

The total dynamic model of manipulator with payload becomes

τG = M(qG )q̈G + C(qG , q̇G )q̇G + g(qG ) + J T (q) w (5.3)


= τrobot links + τpayload . (5.4)

Equation (5.4) reveals an interesting property: the robot links and


the payload contribute each separately to the joint torques,
i.e. no coupling effect exists. This suggests a possible identification
approach. Since the inertial parameter values of the robot links do not
change when adding a payload, the torque contribution of the robot
links τrobot links can be calculated in advance based on the available
parameter estimates and can easily be compensated for. This means
that the inertial robot parameter values must not be estimated again
for each new payload. The different approaches for the compensation
will be discussed in section 5.3.
The payload is characterized by ten inertial parameters

[m, cx , cy , cz , Ixx , Iyy , Izz , Ixy , Ixz , Iyz ]T (5.5)

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

fee = m v̇ee + ω̇ee × s + ωee × (ωee × s) (5.7)


tee = s × v̇ee + IR ω̇ee + ωee × (IR ωee ). (5.8)
124 Robot payload identification

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

τG = τrobot links + φL (qG , q̇G , q̈G )θL . (5.9)

The payload identification matrix φL is derived based on the kinematic


data of the robot manipulator and does not depend on the inertial
parameters of the robot. On the other hand, the torque contribution
of the robot links only depends on their inertial parameters. Since
these parameters can be determined a priori, the torque contribution
for the desired motion is calculated and compensated for.

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.

Relation between motor current and torque. Modern robot


manipulators are equipped with permanent magnet synchronous
motors. The relation between the actuator torque τM and cur-
rent im of these motors has been found to be weakly nonlinear.
The relation can be described by a polynomial model, e.g. a
third order polynomial

τM = µ sign(im )(γ0 + γ1 |im | + γ2 i2m + γ3 |im |3 ) (5.10)


= h(im , µ, γ). (5.11)

µ is the transmission ratio, and γ represents the vector which con-


tains the parameters of the third order polynomial. This model
is more accurate than the often used linear relation between mo-
tor current and torque, especially at large motor currents where
saturation results in a lower torque for a given current.
5.2. Robot payload identification approach 125

The transmission ratio is already taken into account, e.g. the


actuator angles and torques are transformed to the link side by
respectively dividing and multiplying them with the appropriate
transmission ratio. As a consequence, the variables that appear
in the dynamic equations are all related to the link side. This is
advantageous because then the parameter values have almost the
same order of magnitude which improves the conditioning of the
identification problem.

Actuator dynamics. A considerable part of the actuator torques is


consumed by actuator friction and by the accelerating and decel-
erating rotor inertia. Therefore, an accurate robot model should
include these effects.
Accelerating or decelerating the rotor inertia Im requires the fol-
lowing torque:

τI = Im q̈M . (5.12)

The friction model includes viscous and Coulomb friction:

τ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)

Efficiency of the transmission. The mechanical gear transmission


between the actuator and link is a complex system, with many
parts moving at different angular velocities. Such system has
many losses which are difficult to model in detail. Instead, we
employ an empirical model that is typically used in practice. Each
drive is assumed to have a certain efficiency, i.e. a reduction
of the nominal input torque by a constant percentage yielding
the effective output torque. This model for the losses in the
transmission depends in a nonlinear way on the joint velocity q̇G
126 Robot payload identification

and torque τG . It is modelled using only one parameter η per


joint :

τG0 = g(τT , q̇M , η) (5.16)



τT · η if τT · q̇M > 0
= (5.17)
τT /η if τT · q̇M < 0

τ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)

The vector qM indicates the actuator position, and V represents


the coupling matrix.

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.

5.2.2 Parameter estimation

As for the robot identification method, the payload estimation is based


on the maximum likelihood estimator presented in (Swevers et al.,
1997). This method yields the payload parameter vector θL that max-
imizes the likelihood of the measurement data, and guarantees an un-
biased estimate.
5.2. Robot payload identification approach 127

To simplify the parameter estimation, parameters that do not de-


pend on robot payload, and that are not time-dependent, are identi-
fied a priori, e.g. rotor inertias and inertial parameters of the robot
links. These known parameter are combined in a set θk . As a result,
only the friction, the payload inertial parameters, and if desired the
transmission efficiency are estimated. The vector θu contains these
unknown parameters. If no transmission efficiency is considered, the
model equation (5.9) extended with the friction model remains linear
in the unknown parameters θu . This problem can be solved using a
weighted linear least squares estimator.
However, the estimation problem becomes nonlinear in the parame-
ters if the transmission efficiency is taken into account. The parameter
estimation is then formulated as the following nonlinear least squares
problem:

N X
X (τ − F(q(k), q̇(k), q̈(k), θu , θk ))2
θM L = arg min , (5.20)
θ στ2i
k=1 i∈ϑ

where F represents the total identification model which depends on


the motion and on the unknown and known parameter set. στi is the
standard deviation of the noise on the measured torque. ϑ indicates
the set of axes which are actuated during the identification experiment.
Equation (5.20) can be solved using iterative search methods such as
the Gauss-Newton or Levenberg-Marquardt method. The application
of these methods requires an initial estimate of the unknown model
parameters.
The unique estimation of all inertial parameters of the robot pay-
load requires the Jacobian of the total identification model with respect
to the unknown parameters to be of full rank (Schoukens and Pintelon,
1991). This condition does not require that all robot axes are acti-
vated during the payload identification experiment. The identification
matrix is of full rank if axes 3 to 6 are actuated. In that case, all iner-
tial parameters of the payload can be uniquely identified. If only the
axes 4 to 6 are excited, this identification matrix is not of full rank. It
can easily be verified that the payload mass cannot be estimated and
should be given as a priori information.
128 Robot payload identification

5.3 Approach to payload identification

As indicated in section 5.2.1 the torque contribution of the robot links


should be separated from that of the payload. A first approach, which is
frequently applied, realizes the separation after the parameter estima-
tion by subtracting the known parameter values of the robot links. An
alternative approach immediately compensates for the torque contri-
bution of the robot links in order to independently identify the payload
inertial parameters. The dynamic parameters of the rotor inertia and
the robot links are constant in time and independent of temperature.
Therefore, it is logical to take into account this information in advance.
This way, less parameters have to be estimated, which reduces uncer-
tainty on these parameters. The compensation can be realized based on
a measurement or using a dynamic robot model. This section discusses
the three alternative approaches.

5.3.1 Compensation based on parameter estimates

In a first approach, all robot and payload parameters are estimated


from the experiment data. In order to obtain a minimal model de-
scription, some payload parameters will form linear combinations with
the robot parameters. The payload parameter values can be calcu-
lated by subtracting the known robot parameters from the estimated
parameters. This a priori information of the robot parameters can be
obtained from a different identification experiment in which only the
robot parameters are identified. The approach is graphically repre-
sented in figure 5.1.

The disadvantage of this approach is the requirement of an excita-


tion trajectory that sufficiently excites the full robot system such that
all parameters can be estimated accurately. This persistent excitation
is more difficult to realize with an unknown payload attached, because
the workspace is more limited and care should be taken not to overload
the actuators. This approach will not be discussed any further since
the following approaches based on torque compensation have some clear
advantages.
5.3. Approach to payload identification 129

Desired excitation trajectory


qd, qd, qd

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

Figure 5.1: Compensation based on parameter estimates

5.3.2 Torque compensation by measurement

A second possibility to compensate for the dynamics of the rotor in-


ertias and robot links is to perform two measurements using the same
excitation trajectory: one with payload, and another without payload
(figure 5.2). In this case, the measurement without payload contains
all information about the rigid body dynamics of the robot links.
This approach has the advantage that no full robot identification
is required. This means that the excitation trajectory can be designed
such that especially the payload parameters are identified more ac-
curately. In addition, the torque measurement also compensates for
nonlinearities which are not modelled.
A first disadvantage is the increased measurement time because two
excitation measurements should be carried out. It could be considered
to do the measurements without payload once in advance and store the
130 Robot payload identification

Desired excitation trajectory qd, qd, qd

Experiment Experiment
with payload without payload

t1 t2
q, q, q + -
torque contribution of
Dt payload and difference
in friction torque

Model generation and


parameter estimation

payload parameters qL
(+ difference in friction parameters)

Figure 5.2: Torque compensation by measurement

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.

Although the compensation with the measured torque seems likely


to allow the elimination of the friction effect, friction is shown to be
payload dependent. Hence, it is better to re-estimate the friction pa-
rameters.
5.3. Approach to payload identification 131

5.3.3 Torque compensation by modelling

A third approach uses a dynamic robot model to describe the dynamic


effects of the robot links and the motor inertia. Figure 5.3 illustrates the
approach. The calculation is based on inertial parameter values of the

Desired excitation trajectory qrobot links


qd, qd, qd

Experiment Inverse dynamics


with payload of robot links
F(q,q,q) qrobot links .

t1 trobot links
q, q, q + -
torque contribution
Dt of payload
and friction torque

Model generation and


parameter estimation

payload parameters qL
(+ friction parameters)

Figure 5.3: Torque compensation by modelling

robot links. This approach requires very accurate a priori information.


Every deviation of the used inertial parameter values from the real
values will induce a systematic error. Mostly the a priori information
originates from inaccurate CAD data. Alternatively, the parameters
can be estimated from a preceding identification, e.g. as presented in
chapter 4.
The main advantage of this approach is its independency from the
excitation trajectory used, because the torque contribution can be cal-
culated from the model parameters. This gives an important flexibility
in the design of an optimal excitation trajectory. On the other hand,
132 Robot payload identification

the accuracy directly depends on the accuracy of the actuator torque


prediction, and consequently on the accuracy of the dynamic model
and the robot parameter values.

5.4 Sensitivity analysis to deterministic errors

Obtaining the correct parameter values from experimental measure-


ments is not straightforward. Two different kinds of error sources de-
termine the accuracy of the parameter estimates. Stochastic errors, e.g.
noise on the measurements, produce uncertainty on the result, which
can be reduced in theory to any desired level if more measurements are
taken into account. The deterministic errors on the other hand, e.g.
incorrect a priori information, an incomplete model description or an
inappropriate estimation method, cannot be compensated for, and give
rise to a systematic error on the resulting parameter estimates.
This section discusses the sensitivity analysis of the payload identi-
fication approach from the perspective of these systematic errors, and
shows the influence of inaccurate a priori information or identification
model on the final accuracy of the payload parameter estimates.

5.4.1 Simulation model of the KUKA KR15

The sensitivity analysis uses a simulation model of a KUKA KR15 in-


dustrial robot with six degrees of freedom. The dynamic model in
equation (5.9) is evaluated for an excitation trajectory in which the
last four axes of the robot are moved. To make the simulation as real-
istic as possible, the inertial parameter values of the robot model are
obtained from a robot identification experiment. For the reference pay-
load, the inertial parameters of the CAD model are used (table 5.2).
The simulation model takes into account the coupling matrix V be-
tween the actuator torques (equation (5.18)). At the actuator side,
the dynamics of the rotor inertia and friction including Coulomb and
viscous friction, are modelled. The friction parameter values are given
in table 5.1. Obviously, no noise is added to the simulated actuator
currents, because these non-systematic errors can be reduced by mak-
ing longer measurements and averaging over more periods, as indicated
5.4. Sensitivity analysis to deterministic errors 133

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

Table 5.1: Coulomb and viscous friction parameters used in the


simulation model

before. The simulated actuator torques are converted to currents by


division by the torque constants assuming a linear relation.

5.4.2 Approach used in the sensitivity analysis

The payload identification approach uses a dynamic model which is


linear in the parameters. The inertial parameters of the payload and
the friction parameters are estimated in each experiment. Afterwards
the inertial parameters are recalculated towards the center of gravity.
The inertial parameters of the robot links and rotor inertia are not
estimated, but are compensated for based on a priori information.
The purpose of the sensitivity analysis is to determine which a priori
information shows the largest influence on the estimation. Therefore,
in every experiment, only one error is introduced by changing one a
priori known value, yielding a univariate sensitivity analysis. For each
introduced error, the identification is carried out and the parameters
are estimated. Some experiments required the simulation model to
be adapted and new simulation data to be created, e.g. in order to
investigate the influence of an incomplete identification model. This
will be indicated when applicable.

5.4.3 Results of the analysis

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

percentages. The influence on the actuator torque prediction will be


discussed in section 5.4.4.

1. Actuator torque constant

The measured actuator currents are converted to torques by the actua-


tor torque constant. In practice however, this constant is very difficult
to determine on an existing robot. In addition, this constant may
change with the warm-up and the lifetime of the robot.
In a first experiment, we change this torque constant used in the
identification for actuator 3 from 1.23 by 3% to 1.27 Nm/A. The esti-
mation result clearly shows that the mass estimate, which changes by
10%, is very sensitive to this error. This can be explained by the fact
that only the measurements of the third axis contribute to the mass
estimation, because the mass is not identifiable if only the last three
axes are excited. In addition, the robot links have a big contribution
to the torque of the third actuator. Due to a too large torque constant,
the compensation for the robot links inertia is (relatively) too small.
The latter only amplifies the effect on the mass estimation by a lever
effect.
In a second experiment, the actuator torque constant for actuator
four are changed from 0.63 to 0.65 Nm/A, while in a third experiment
both torque constant for actuators five and six are changed from 0.67
to 0.65 Nm/A. These errors have a much smaller influence on the pa-
rameter accuracy, especially on the mass which is not estimated from
the measurements of axes four to six. The mass estimation is only
indirectly affected.
To evaluate the effect when more torque constants are incorrectly
known at the same time, a fourth and fifth experiment is done where
the torque constants are change respectively for actuators four to six,
and for actuators three to six. The errors appear to be cumulative. As
a consequence, it cannot be assumed that the effect of a torque constant
which is too small, will be compensated by the effect of another that
is too large. An accurate calibration of the actuator torque constants
is therefore required.
Inertial parameters
m cx cy cz Ixx Iyy Izz Ixy Ixz Iyz
[kg] [mm] [mm] [mm] [kgm2 ] [kgm2 ] [kgm2 ] [kgm2 ] [kgm2 ] [kgm2 ]
reference 9.579 24 90 -202 0.612 0.063 0.637 -0.158 -0.002 -0.008
1 torque constant 3 10.555 22.7 84.3 -187.0 0.670 0.113 0.644 -0.161 0.000 0.003
torque constant 4 9.648 23.8 89.3 -194.4 0.697 0.142 0.649 -0.160 0.001 -0.002
torque constant 5+6 9.616 23.9 89.8 -198.6 0.591 0.050 0.616 -0.156 -0.002 -0.007
torque constant 4-6 9.685 23.7 89.1 -191.1 0.676 0.129 0.628 -0.158 0.001 -0.000
torque constant 3-6 10.661 22.4 83.6 -177.2 0.730 0.176 0.634 -0.161 0.003 0.010
2 robot links 6.653 35.7 134.6 -276.4 0.535 -0.018 0.582 -0.151 -0.015 -0.080
3 rotor inertia 9.832 23.6 87.6 -178.8 0.840 0.295 0.650 -0.158 0.003 0.012
4 wrist coupling 9.615 24.3 89.7 -198.3 0.629 0.080 0.631 -0.157 -0.005 -0.007
5 efficiency 90% 9.642 25.7 91.2 -205.5 0.604 0.058 0.644 -0.151 -0.008 -0.016
efficiency 95% 9.571 24.9 90.8 -204.2 0.606 0.059 0.639 -0.154 -0.005 -0.012
6 joint friction 9.576 24.1 90.1 -202.3 0.602 0.054 0.636 -0.158 -0.003 -0.009
7 known payload mass 9.579 24.9 93.1 -240.6 0.425 -0.124 0.645 -0.161 -0.013 -0.046
known payload mass 2 9.579 24.0 90.0 -188.2 0.674 0.130 0.626 -0.158 0.002 0.003
known payload mass 3 9.579 24.2 89.0 -189.4 0.675 0.131 0.627 -0.159 0.001 0.003
8 measurement bias 11.164 21.3 79.8 -176.2 0.683 0.120 0.647 -0.162 0.003 0.012
5.4. Sensitivity analysis to deterministic errors

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

2. Dynamic model of robot links

As mentioned before, the torque contribution of the robot links can be


calculated a priori and compensated for. The calculation is however
based on a set of a priori identified robot parameters or obtained from
a CAD model. Consequently, they are subject to uncertainty.
The identification experiment uses a set of CAD data for the robot
parameters provided by the manufacturer (table C.3), which is different
from the set of identified robot parameter values used for the simula-
tion. The sensitivity analysis shows that the influence is significant.
Again, it is concluded that the mass estimate is very sensitive to an
error in this a priori information.

3. Inaccurately known rotor inertia

The actuator inertial dynamics consume a considerable part of the


actuator torque. Mostly, the inertia information provided by the man-
ufacturer is not accurate. In addition, also the gear wheels of the trans-
mission have an inertia which should, at least partly, be added in the
model to the rotor inertia. This leads to a systematic underestimation
of the inertia if only the rotor inertia is taken into account.
The results in table 5.2 correspond to a reduction with 5% of the
a priori values for the rotor inertia, which are changed from 6.6 kgm2 ,
2.9 kgm2 , 3.91 kgm2 and 0.62 kgm2 to 6.29 kgm2 , 2.76 kgm2 , 3.72 kgm2
and 0.59 kgm2 for the actuators three to six respectively. These values
are already reduced to the reduction side by taking into account the
transmission ratios. This reduction of 5%, considered as realistic, in-
troduces significant systematic errors in the robot payload parameter
estimates.

4. Coupling between the axes

As mentioned in section 5.2.1, the wrist axes are mechanically coupled.


This coupling is expressed by the equation

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

where V represents a known fixed linear transformation matrix, e.g.


for the KUKA KR15,
 
1 0 0 0 0 0

 0 1 0 0 0 0 

 0 0 1 0 0 0 
V = , (5.23)

 0 0 0 1 0 0 

 0 0 0 V2 1 0 
0 0 0 V0 V1 1

with V0 = −0.0245, V1 = 0.0243, and V2 = −0.0111.


The mechanical coupling between the wrist axes is in the order of
magnitude of one to two percent. Therefore, it is sometimes assumed
that no coupling is present, and the V matrix (equation (5.23)) is re-
placed by the identity matrix. Although this may seem an appropriate
approach, table 5.2 shows that this simplification introduces a signifi-
cant systematic error, which can easily be avoided.

5. Transmission efficiency

Every transmission is characterized by some efficiency ratio η, defined


as the ratio of the outgoing to the ingoing power. As the inclusion of
this effect in the dynamic model would make the estimation nonlinear,
the transmission efficiency is mostly neglected. It is then assumed that
the standard friction model used for the actuator losses can accurately
describe the losses in the gear transmission.
To evaluate the effect of the efficiency on the parameter estimation,
the simulation model is extended, and adapted simulation data are
created. The efficiency η of the transmission is considered to be 90%
for all axes. The linear least squares estimation, which is equal to
assuming that the efficiency is 1, shows that the friction model is not
completely equivalent with the efficiency model, because a systematic
error is introduced. In the estimation step, it was observed that the
efficiency estimate strongly depends on the initial guess. This indicates
the presence of local minima.
5.4. Sensitivity analysis to deterministic errors 139

6. Neglecting joint friction at the link side

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.

The following points discuss some choices which might be consid-


ered in the identification procedure to improve the parameter estimates.
To evaluate these choices, the torque constant of the third actuator is
changed as described in point 1. of this section.

7. Using payload mass as a priori information

As mentioned before, the payload mass is only estimated based on the


third actuator torque, while the estimation of all other inertial param-
eter depends on the torque measurements of axes 3 to 6. To avoid an
inaccurate mass estimation, the payload mass can be weighed and taken
into account as a priori information. The results show however that
the inertia estimates get worse: the bad scaling of the third actuator
torque dominates the parameter estimation.
The results are different when only the last three axes are excited.
In this experiment, the actuator torque constants for actuators 4 to 6
are changed by 3%. Then, the other inertial parameters are identified
using the measured torques which makes the estimation less sensitive
to errors.
140 Robot payload identification

8. Estimation of measurement bias

Often, actuator current measurements contain a bias. This bias can


easily be taken into account by estimating the bias in the identification
procedure, because theoretically the bias parameter is independently
identifiable. However, this method may produce unexpected results.
When the torque constant of the third actuator is not accurately known
(see point 1.), inclusion of a bias in the estimation model even nega-
tively affects the estimated payload inertial parameters.

9. Number of excited axes

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.).

5.4.4 Actuator torque prediction accuracy

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

Simulated and predicted actuator torque Actuator torque prediction error


200 10
Axis 3 (Nm)

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 root mean square (RMS) value of this simulated prediction


error is small compared to the level of noise that is present on actuator
torque measurements on a real robot. For a KUKA KR15, the standard
deviation of the noise on the torque is typically 10 Nm, 6 Nm, 5 Nm,
and 2 Nm respectively for the axes three to six, as shown in table 5.4.

From this analysis it can be concluded that the actuator torque


prediction is only slightly affected by the presence of system-
atic errors.
142 Robot payload identification

typical standard RMS simulated


deviation of noise prediction error
axis 3 10 Nm 2.2 Nm
axis 4 6 Nm 1.9 Nm
axis 5 5 Nm 0.9 Nm
axis 6 2 Nm 0.1 Nm

Table 5.4: Standard deviation of the noise and RMS actuator


torque prediction error

5.4.5 Discussion and conclusion

This section discussed the influence of systematic errors on the accu-


racy of robot payload identification by means of a univariate sensitivity
analysis. The use of simulated data allowed to clearly separate and in-
vestigate each effect. The sensitivity analysis shows that the quality
of almost all a priori information is very important. The identification
is especially sensitive to the accuracy of actuator torque constants and
to the inertial parameters of the robot links and the rotor. Accurate
estimation results can only be obtained if accurate values for all these
a priori known parameters are available.

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.

Using the payload mass as a priori information and increasing the


number of excited axes does not necessarily improve the accuracy of the
parameter estimates if one of the previously mentioned errors occur.

Whereas the parameter estimates are obviously affected, the ac-


tuator torque prediction is almost insensitive to the presence of the
discussed errors. An accurate actuator torque prediction is therefore
no guarantee for accurate parameter estimates.
5.5. The experimental setup 143

5.5 The experimental setup


This section will briefly describe the experimental setup which was
used to validate the payload identification approach. The setup con-
sists of the industrial robot KUKA KR15 and a reconfigurable reference
payload.

5.5.1 The industrial robot KUKA KR15

The KUKA KR15 robot is a modern industrial robot with a PC-based


robot controller (figure 5.5). This industrial robot has six degrees of
freedom and a payload capacity of 15 kg.

Figure 5.5: The KUKA KR15 robot

The excitation software

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.

5.5.2 The reference payload

To validate the accuracy of the identification, a calibrated reference


payload is necessary. For this payload all ten inertial parameters are
known from an accurate CAD model. This way, the estimated inertial
parameter values can be compared to their real values.

The design of the payload

In order to evaluate the general applicability of the payload identifica-


tion method it is not sufficient to have only one fixed reference payload.
Therefore, a reconfigurable payload was designed and built which is ca-
pable of covering a wide range of inertia and mass. E.g. the mass can
be varied from 1.4 kg to 15 kg, the center of mass from -390 to 390 mm
in x and y direction and has a range of 160 mm in the z direction. The
principal inertias range from nearly zero to over 3 kgm2 . An example
of the reference payload is shown in figure 5.6.
5.5. The experimental setup 145

Figure 5.6: A configuration of the reference payload

The payload is designed to withstand an acceleration of 6 times the


gravity. The eigenfrequency lies above 15 Hz, which is much higher
than the maximal frequency in the excitation trajectory.

Different payload configurations

In the validation of the proposed identification approach various con-


figurations of the designed reference payload have been used. Table 5.5
gives the inertial parameter values for three payload configurations that
are used for the experimental results. The configurations are chosen
such that a relevant range of parameter values is covered.
The medium configuration (shown in figure 5.6) is situated in the
middle of the parameter ranges. It can be considered as a nominal
payload which is frequently used with the KUKA KR15 manipulator.
In this chapter, this configuration is used to compare the different ap-
proaches and to discuss the alternative options in the torque compen-
sation model.
The small configuration has a mass of only 5.84 kg, and conse-
quently also rather small moments of inertia. This makes it more dif-
ficult to obtain accurate parameter estimates. For the large configura-
tion, these parameter values are much higher. The mass of 13.56 kg is
close to the maximal payload mass. In this case, the excitation should
be limited in order not to overload the manipulator. Both configura-
tions are shown on the left and the right side of figure 5.7 respectively.
146 Robot payload identification

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

5.6 Experimental results

This section presents the experimental results of the proposed payload


identification approaches. The first section presents the experimental
results for the approach in which the torque contribution of the robot
links is compensated for using a measurement without payload. Sec-
ondly, the approach using an identified robot model is discussed. A
third section deals with the warm-up problem which negatively affects
the parameter estimates.

The actuator torque constants were not accurately known and a


recalibration was required before doing any experiment in order to
obtain accurate parameter estimates for the robot link and payload
parameters. Improved values for the torque constants are determined
as the best-fit estimate over a set of experiments. Each experiment
uses a different payload configuration with known inertial parameters.
5.6. Experimental results 147

Figure 5.7: Small (left) and large (right) configuration of the ref-
erence payload

5.6.1 Identification with compensation by measure-


ments

Section 5.3.2 presented a payload identification approach that requires


no a priori information. The identification consists of doing two ex-
citation experiments: one with payload and another without payload.
The difference ∆τ in actuator torque measurements is the input for
the parameter estimation. Along with the payload parameters, also
the change in the friction coefficients is estimated since it was shown
that friction is payload dependent. The experimentally measured tra-
jectories are considered to be the same for both experiments, because
the difference in position is smaller than 10−3 radians.
The experimental results for the payload identification are obtained
with the following procedure. Ten different identification experiments
are done, each using a different excitation trajectory. For each exper-
iment, the payload parameters are estimated. From the ten resulting
parameter sets, a mean value and a standard deviation are calculated.
Table 5.6 gives the experimental results. The estimated parameter val-
ues are close to the exact CAD values. The mass is estimated within
148 Robot payload identification

Average estimation values


Parameter Exact Estimated Standard Single
value value deviation experiment
m [kg] 9.579 9.5445 0.1464 9.5866
cx [m] 0.024 0.0248 0.0004 0.0248
cy [m] 0.090 0.0943 0.0012 0.0955
cz [m] −0.202 −0.2070 0.0029 -0.2061
Ixx [kgm2 ] 0.612 0.6416 0.0208 0.6531
Iyy [kgm2 ] 0.063 0.0501 0.0144 0.0597
Izz [kgm2 ] 0.637 0.6459 0.0113 0.6504
Ixy [kgm2 ] −0.158 −0.1707 0.0059 -0.1681
Ixz [kgm2 ] −0.002 −0.0030 0.0011 -0.0021
Iyz [kgm2 ] −0.008 −0.0079 0.0025 -0.0097

Table 5.6: Experimental results for compensation by measure-


ments

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.

The estimated payload parameter values allow accurate torque pre-


diction. Figure 5.8 shows the measured and predicted actuator torques
required to move the payload. Both curves lie almost perfectly on top
of each other. The measured torque is obtained as the torque difference
between the two measured excitation trajectories. The accurate torque
prediction is confirmed by the small RMS values of the prediction error,
given in table 5.7.
5.6. Experimental results 149

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)

Figure 5.8: Measured and predicted torques required to move the


payload. Both torques coincide almost perfectly.
150 Robot payload identification

RMS prediction error


axis 3 axis 4 axis 5 axis 6
9.658 Nm 5.109 Nm 2.678 Nm 2.442 Nm

Table 5.7: Root mean squared prediction error for the actuator
torque due to the payload

5.6.2 Identification with compensation using modelling

The alternative approach, which was discussed in section 5.3.3, uses


the dynamic robot model to compensate for the torque contribution
of the robot links. As mentioned, this compensation approach is the
more flexible one. There still exists the freedom to decide which a priori
information is used for the compensation, and which information should
be re-estimated.

Parameter estimation for the medium reference 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

Average estimation values


Parameter Exact Estimated Standard Single
value value deviation experiment
m [kg] 9.579 9.6179 0.1735 9.5981
cx [m] 0.024 0.0246 0.0010 0.0260
cy [m] 0.090 0.0930 0.0016 0.0946
cz [m] −0.202 −0.2065 0.0064 -0.2103
Ixx [kgm2 ] 0.612 0.6770 0.0765 0.6277
Iyy [kgm2 ] 0.063 0.1210 0.0773 0.0783
Izz [kgm2 ] 0.637 0.6211 0.0204 0.6373
Ixy [kgm2 ] −0.158 −0.1642 0.0105 -0.1455
Ixz [kgm2 ] −0.002 −0.0038 0.0097 -0.0152
Iyz [kgm2 ] −0.008 −0.0105 0.0156 -0.0248

Table 5.8: Exact and estimated inertial parameter values for


medium payload configuration

obtain accurate parameter estimates.


Figure 5.9 shows the actuator torque predictions based on the pa-
rameter estimates for a validation trajectory. As expected, the iden-
tified model of robot with payload is able to accurately predict the
required actuator torque. The measured and the predicted actuator
torques are almost equal, which is confirmed by the small prediction
errors.
The sensitivity analysis revealed that the torque prediction is suffi-
ciently accurate, even if the parameter estimates are not very accurate.
This conclusion is confirmed by the experimental results. The torque
prediction is not strongly affected by rather inaccurate parameter esti-
mates.

Choice of the appropriate a priori information

In the torque compensation step of the payload identification proce-


dure, one has to decide which information is taken into account a priori
and which effects are included in the identification model. The possible
choices were already introduced in the sensitivity analysis (section 5.4).
152 Robot payload identification

Measured and predicted actuator torque Actuator torque prediction error


200 200
Axis 3 (Nm)

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

Average estimation values


Parameter Exact Estimated Standard
value value deviation
m [kg] 9.579 9.3354 0.1373
cx [m] 0.024 0.0249 0.0012
cy [m] 0.090 0.0982 0.0014
cz [m] −0.202 −0.2004 0.0044
Ixx [kgm2 ] 0.612 0.6997 0.0652
Iyy [kgm2 ] 0.063 0.1177 0.0622
Izz [kgm2 ] 0.637 0.7588 0.0423
Ixy [kgm2 ] −0.158 −0.1602 0.0089
Ixz [kgm2 ] −0.002 −0.0090 0.0083
Iyz [kgm2 ] −0.008 −0.0078 0.0139

Table 5.9: Effect of including the transmission efficiency on the es-


timated inertial parameter values

In this section, some of these choices are discussed based on the exper-
imental experience.

Nonlinear relation between the actuator current and torque.


Taking into account the torque saturation for high actuator cur-
rents has no visible influence on the parameter estimates. This
could be expected from the fact that the deviation from a linear
relation is very small in the relevant range.

Estimation of the transmission efficiency. Including the losses in


the transmission makes the parameter estimation nonlinear. The
estimation results, averaged over ten experiments, are presented
in table 5.9. If we compare these results to those in table 5.8, we
see that most parameter values are similar, except the estimate
of the mass, which is much worse. The mass estimate tends to
vary even more when the starting values of the transmission effi-
ciencies are changed. The standard deviation on most parameter
estimates are a bit smaller than those mentioned above.
The nonlinear estimation requires that starting values are chosen
for all parameters. The efficiencies are initially set to 95%. The
154 Robot payload identification

finally estimated values are close to their initial guesses. The


same effect is observed for other initial guesses, e.g. 90% or 100%.
This indicates that the nonlinear optimization gets stuck in a
local minimum.
Based on this discussion, it cannot be concluded that estimat-
ing the efficiencies yields more accurate estimates of the payload
parameters. The increased complexity due to the nonlinear pa-
rameter estimation is therefore not justified.

Payload mass a priori known. The payload mass could be consid-


ered as a priori known in order to eliminate the sensitivity prob-
lem of this parameter. Experimental results show that this does
not improve the accuracy of the other parameter estimates.

In general, it is better to take into account as much a priori infor-


mation as there is available. This reduces the number of parameters
to be estimated, which in turn improves the condition of the estima-
tion problem. An important requisite is that the quality of the a priori
information is very good.

Parameter estimates of other payload configurations

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

Average estimation values


Parameter Exact Estimated Standard Single
value value deviation experiment
m [kg] 5.8444 5.8748 0.0668 5.8947
cx [m] 0.0537 0.0571 0.0025 0.0570
cy [m] 0.2014 0.2089 0.0090 0.2150
cz [m] −0.3626 −0.3624 0.0142 -0.3519
Ixx [kgm2 ] 0.2961 0.2866 0.0841 0.3200
Iyy [kgm2 ] 0.0502 0.0430 0.0963 0.0899
Izz [kgm2 ] 0.2871 0.2728 0.0305 0.2563
Ixy [kgm2 ] −0.0709 −0.0715 0.0049 -0.0636
Ixz [kgm2 ] 0.0096 0.0009 0.0062 0.0087
Iyz [kgm2 ] 0.0361 0.0278 0.0246 0.0280

Table 5.10: Exact and estimated inertial parameter values for


small payload configuration

Average estimation values


Parameter Exact Estimated Standard Single
value value deviation experiment
m [kg] 13.555 13.5909 0.1863 13.5056
cx [m] −0.0951 −0.0976 0.0012 -0.0978
cy [m] 0.0254 0.0258 0.0006 0.0252
cz [m] −0.2721 −0.2687 0.0052 -0.2729
Ixx [kgm2 ] 0.102 0.2350 0.0985 0.3045
Iyy [kgm2 ] 1.028 1.2392 0.0947 1.3112
Izz [kgm2 ] 1.091 1.0440 0.0211 1.0302
Ixy [kgm2 ] 0.267 0.2706 0.0122 0.2530
Ixz [kgm2 ] −0.003 −0.0055 0.0186 -0.0039
Iyz [kgm2 ] 0.001 0.0146 0.0215 0.0308

Table 5.11: Exact and estimated inertial parameter values for large
payload configuration
156 Robot payload identification

5.6.3 Effect of the warm-up on the accuracy of the pa-


rameter estimates

The experimental results of chapter 3 already showed that friction is


temperature dependent. In the experiments of this chapter, it was ob-
served that also the payload parameter estimates are strongly affected
by the warm-up of the robot. This influence was experimentally veri-
fied with the large payload configuration attached to the manipulator.
A payload identification was repeated for 20 successive experiments.
In each experiment, the same excitation trajectory was used.

Figure 5.10 shows the evolution of the friction parameter estimates.


This confirms that the friction parameters change when the robot gets
warmed up. Generally, the friction torque decreases with increasing
temperature, except the Coulomb friction of the third axis. Variation
of only the friction should not cause any problem for the payload iden-
tification as long as the measurement time is short in comparison with
the time constant of the temperature variation.

We observe however that also the parameter estimates of the pay-


load show a variation with temperature. The evolution of these pa-
rameter values is shown in figure 5.11. Especially the estimates of the
payload mass m and the moment of inertia Izz seem to be very sen-
sitive to the warm-up effect. It is physically impossible that the mass
and the inertias change with temperature. This suggests that the rela-
tion between actuator current and actuator torques, i.e. the actuator
torque constant, varies with temperature. Consequently, the measure-
ment signals are badly calibrated and no accurate measurements of the
actuator torque are available anymore. This is bad news, because it
becomes impossible to obtain consistent and accurate parameter esti-
mates in all situations. Fortunately, all other measurements on which
the results in this chapter are based were done in similar conditions.
This explains why the results are accurate and consistent for different
excitation trajectories and different payload configurations.
5.6. Experimental results 157

Coulomb friction coefficient Viscous friction coefficient


40 60

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

Figure 5.10: Evolution of the estimated friction coefficients with


warm-up of the manipulator
158 Robot payload identification

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

Figure 5.11: Evolution of the estimated inertial payload parameter


values with warm-up of the manipulator
5.7. Conclusions 159

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

Path tracking errors mainly originate from kinematic errors, con-


troller performance limitations, and joint flexibility (Bernhardt and
Albright, 1993). The kinematic errors can easily be compensated in
the path planning, and flexibility is mostly negligible because commer-
cial robots have high transmission stiffness. Although typical indus-
trial controllers are sufficient for simple pick-and-place applications,
they don’t take into account nonlinearities like centrifugal, gravitation,
Coriolis forces, friction, actuator dynamics, and dynamic coupling be-
tween the axes, resulting in deviations from the desired motion. The
inclusion of these nonlinear effects is however necessary for accurate
high speed path tracking. Due to the complexity of advanced control
algorithms developed in robotics research (Adams, 1992; Craig, 1986;
Sciavicco and Siciliano, 1996), the classical control techniques are still
widely used in industrial robot applications. Nevertheless, there is a
growing interest from industry for an improved path tracking accuracy
with the current generation of robots and controllers.
Since there is a rather slow evolution to change the standard con-
trollers of industrial robots, a compensation of the nonlinear dynamics
can presently only be realized by adding a compensation to the desired
trajectory (Alban and Janocha, 1999). Lange et al. present an adap-
tive learning algorithm that reduces the path deviations (Lange and
Hirzinger, 1994; Lange and Hirzinger, 1999). The measured deviations
are taken into account in the compensation scheme.
This chapter presents a model based method that uses a priori
knowledge of the robot dynamics to improve the path tracking accuracy
by generating an additional velocity feedforward based on the robot
dynamics. The pre-compensation module can be seen as an off-line
compensation of the velocity trajectory in such way that after execution
the end effector follows the desired position trajectory more accurately.
Section 6.2 presents the different steps of the developed trajectory
pre-compensation method. The implementation of the method on a
KUKA IR 361 industrial robot is discussed in section 6.3. Validation of
the method is performed by means of circular trajectories. The results
clearly show the improved path tracking accuracy on these trajectories.
Section 6.4 discusses some practical limitations which make it difficult,
or even impossible, to implement the trajectory pre-compensation on
any standard industrial robot.
6.2. Trajectory pre-compensation 163

6.2 Trajectory pre-compensation

Obtaining perfect path tracking of a complex dynamic system is not


easy to realize. When we apply the desired trajectory to the command
input, a classical proportional controller with feedback will always lag
behind in executing the trajectory. The reason is that a position and
velocity tracking error is used to build up the required torque. As a
consequence, a high actuator torque cannot be obtained unless there is
a large tracking error.
The right solution to this control problem is to add a torque feedfor-
ward. Unfortunately, most industrial control manufacturers do not al-
low us to intervene directly at this level of the control structure. Hence,
we must be smarter, and find a way to make the feedback controller
generate the torque we want. This means that we have to determine
the (position) command to be applied to the controller input that will
produce the desired actuator torque output.
Figure 6.1 presents the general idea of pre-compensation. The de-
sired trajectory qd is first compensated by filtering it using the inverse
model of the robot system. This model consists of the controller and
robot dynamics in closed loop configuration. The compensated trajec-
tory qd,comp is then applied to the real system, yielding perfect path
tracking if no disturbances or modelling errors are present.

qd qact
Inverse qd,comp System
qd qact
Controller
qd
system qd,comp + qact
Robot

Figure 6.1: General idea of pre-compensation

To implement the trajectory pre-compensation module, a model of


the inverse system has to be identified. The inverse system consists
of two main parts: an inverse dynamic model of the robot, and an
inverse model of the controller. The two parts of the inverse model
and the trajectory pre-compensation are discussed in the following sec-
tions. Section 6.2.1 discusses the identification of an inverse dynamic
164 Trajectory compensation

model of the robot which includes the nonlinear dynamic effects. In


the second step (section 6.2.2), a model of the linear robot controller is
constructed. Finally, the obtained models are combined to implement
the pre-compensation module in section 6.2.3.

6.2.1 The dynamic robot model

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

τ = M(q)q̈ + C(q, q̇) + g(q) + τf (q̇). (6.1)

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.

6.2.2 Controller dynamics

In addition to the robot dynamics, a model of the controller dynam-


ics is required for the compensation method. An accurate model can
be obtained using experimental identification, yielding a transfer func-
tion G(s) for the controller. This step includes the determination and
the selection of the model structure and the parameter estimation, i.e.
the number and the values of the poles and zeros of G(s) have to be
determined. This information might be provided by the robot manu-
facturer or has to be obtained experimentally. The inverse filtering step
of the pre-compensation method involves the inversion of the transfer
function G(s) associated with the controller.
In most practical robot systems, the controller consists of three
cascaded control loops: an analog actuator current controller, an analog
velocity controller, and a digital position controller.
6.2. Trajectory pre-compensation 165

Inverse dynamic model


td
f(qd,qd,qd) q -1
Gcontr
+ qd,comp
d qd +
dt Position controller Velocity controller
qd + PI + + + Gcontr t Robot qact
ò
qact
- -

Off-line Digital Analog

Figure 6.2: Structure of robot with nonlinear pre-compensation

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.

6.2.3 The trajectory pre-compensation

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

robot motion qd are calculated in a first step from equation (6.1):

τd = M(qd )q̈d + C(qd , q̇d ) + g(qd ) + τf (q̇d )


= Φ(qd , q̇d , q̈d ) θ. (6.2)

In a second step, the inverse model of the velocity controller con-


verts the desired actuator torques τd to compensated desired velocities

Gcontr (q̇d,comp − q̇d ) = τd



q̇d,comp = G−1
contr τd + q̇d , (6.3)

which are implemented as a velocity feedforward (see figure 6.2). Be-


cause the standard industrial controller cannot be changed to provide
a computed torque feedforward, the trajectory pre-compensation is
added using the available velocity feedforward controller input. Equa-
tion (6.3) clearly shows that this feedforward generation corresponds
to a trajectory pre-compensation: the desired velocity trajectory q̇d is
compensated using the inverse controller model G−1
contr and the torques
τd required to generate the desired motion qd .
This method combines the general idea and advantages of
computed-torque with the standard industrial controller. Like
computed-torque, the inverse dynamics of the robot are used to calcu-
late the expected actuator torques for the desired joint motion. Since
there is no torque interface available, the resulting values are converted
to a velocity feedforward using the inverse model of the controller.
It is necessary to preserve a position feedback to control deviations
from the nominal trajectory, originating e.g. from inaccuracies in the
dynamic model or external disturbances. As desired position we pre-
serve qd .
The practical implementation of the pre-compensation scheme re-
quires the further fine-tuning of the pre-compensation scheme by iden-
tifying additional constants and time delays which can only be deter-
mined in a closed loop identification. Section 6.3.3 gives more details
about this fine-tuning.
6.3. Experimental verification 167

Figure 6.3: KUKA IR 361 robot

6.3 Experimental verification

This section discusses the experimental application and validation of


the presented method on a KUKA IR 361 robot in the PMA lab. Sec-
tion 6.3.1 presents the test setup. The used robot and controller model
are shortly discussed in section 6.3.2. Section 6.3.3 introduces the ref-
erence trajectory, used to fine-tune the pre-compensation scheme, and
the validation trajectories. Finally, the results have been validated by
using different trajectories (section 6.3.4). Some performance criteria
are used to express the improvement of the path tracking accuracy.

6.3.1 Description of test case

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)

Figure 6.4: Experimentally measured transfer function and identi-


fied controller model of axis 3

6.3.2 Description of the robot controller model

The velocity controller dynamics are identified by applying multisine


trajectories with a bandlimit of 5 Hz (Schoukens and Pintelon, 1991).
This frequency is far below the bandwidth of the velocity controller,
but high enough for the given application. The measured signals that
are used in the identification are: the velocity command signal, the
tachometer signal and the actuator torque. A PI structure with tacho-
meter feedback is the most appropriate model structure yielding the
best correspondence with the experimental transfer function estimate
(ETFE) (Schoukens and Pintelon, 1991) resulting from these measure-
ments. The experimentally measured transfer function and identified
controller model for the velocity controller of axis 3 are shown in fig-
ure 6.4.
6.3. Experimental verification 169

6.3.3 Reference and validation trajectories

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.

6.3.4 Experimental results

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)

Figure 6.5: Tracking error for a circle (diameter 40 cm at velocity


0.6 m/s) in a horizontal plane without compensation
(top) and with compensation (bottom) of the nonlinear
dynamics
6.3. Experimental verification 171

without compensation with compensation


joint 1 1.95 · 10−3 rad 0.58 · 10−3 rad
joint 2 2.60 · 10−3 rad 0.13 · 10−3 rad
joint 3 5.34 · 10−3 rad 0.62 · 10−3 rad

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:

• Mean deviation from the desired trajectory


N
1 X
dmean = di (6.5)
N
i=1

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)

Figure 6.7: Cartesian error for a circle (diameter 40 cm at velocity


0.6 m/s) in a horizontal plane without (full line) and
with compensation (dashed line)
174 Trajectory compensation

• Maximum deviation from the desired trajectory

dmax = max di . (6.6)


i

Table 6.2 shows the values for these performance criteria, and con-
firm the improved path tracking accuracy by using trajectory pre-
compensation.

dmean [mm] dmax [mm]


without compensation 1.422 2.01
with compensation 0.249 0.45

Table 6.2: Performance criteria for circle with diameter 40 cm at


velocity 0.6 m/s

The experiments have been repeated for other diameters of the


circle, with different velocities and for other positions of the circle in
an horizontal and vertical plane, yielding similar results. Some of these
results are summarized in table 6.3.

dmean [mm] dmax [mm]


diameter 30 cm at velocity 600 mm/s
without compensation 1.017 1.72
with compensation 0.062 0.16
diameter 40 cm at velocity 300 mm/s
without compensation 0.260 0.67
with compensation 0.042 0.19
diameter 40 cm at velocity 150 mm/s
without compensation 0.138 0.609
with compensation 0.057 0.204
diameter 40 cm at velocity 75 mm/s
without compensation 0.123 0.540
with compensation 0.056 0.208

Table 6.3: Performance criteria for circles with an other diameter


and a different velocity in a vertical plane
6.4. Practical limitations for implementation 175

6.4 Practical limitations for implementation


The experimental setup available in the lab consists of an industrial
manipulator and its industrial controller. The position controller is re-
placed by a home made version and is implemented in software. This
opens a lot of opportunities to implement and test the trajectory pre-
compensation, because the full controller structure is known and the
full software source code is available. The setup has the disadvantage
that the original industrial path planner and position controller can-
not be used anymore. It was therefore not possible to compare the
performance of the pre-compensation against the original controller
performance.
Implementing the presented pre-compensation procedure on a real
industrial setup is however not straightforward. First of all, most in-
dustrial controllers do not have an open interface which allows to apply
a trajectory correction immediately and in real-time to the controller
input. Some manufacturers have an additional software module that
makes it possible to exchange data between the controller and an exter-
nal system. Unfortunately, the communication is often characterized
by a significant delay and jitter, and therefore not useful for real-time
control. Furthermore, it is desirable to be able to read out several con-
troller signals, e.g. tracking error or the controller output, especially
in the development phase. In practice, it is sometimes possible to log
these signals to a file, but at a lower sampling rate than the controller
sampling rate. This may introduce aliasing which should be avoided.
A more ideal situation would be an open robot controller software.
In that case, the controller structure is completely known, which is
valuable information to design the inverse controller part of the pre-
compensation scheme. Some nonlinear parts can make it difficult, if not
impossible, to experimentally determine the controller structure. For
instance, the use of an anti-windup controller or the inclusion of a signal
saturation block to avoid overloading of the output signal are very hard
to detect. Even the use of a velocity and acceleration feedforward can
complicate the application of a trajectory compensation.
We conclude that an optimal implementation and validation of the
trajectory pre-compensation cannot be realized without the commit-
ment of a robot manufacturer. An open interface to the robot con-
176 Trajectory compensation

troller and knowledge about the controller structure are indispensable


for a successful application.

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

Each success only buys an admission ticket to a more difficult problem


Henry Kissinger

7.1 Summary of the conclusions


Recent technological developments, like increased computational power
at a lower cost, have removed the major objections to implementing
model based control techniques for industrial robot manipulators. New
industrial applications demanding higher accuracy and performance
will benefit from the inclusion of more system knowledge into the con-
troller design. The implementation requires validated and accurate
dynamic robot models.
This research project continues the development of an experimen-
tal identification approach for industrial robot manipulators, which is

177
178 Conclusions

based on a model generation step that yields linearity in the unknown


parameters. The experiment design uses periodic excitation which al-
lows analytic differentiation and calculation of information on the noise
level. This statistical information is used in the parameter estimation
step which is based on the maximum likelihood framework. Finally,
the validation is performed both on the torque prediction and on the
individual parameter values.
This thesis makes contributions in the area of experimental robot
identification by improving the existing approach, validating the com-
bined model approach, identifying the inertial parameters of the robot
payload, and improving the dynamic accuracy with trajectory pre-
compensation. All presented methods are experimentally implemented
and validated on industrial serial robot manipulators. This aspect in-
creases the industrial relevance of this research.

Improvement of the existing identification approach

This thesis brings the dynamic robot identification procedure closer to


industrial practice. The dynamic effects of the gravity compensation
spring and the rotor inertias are described by models which preserve the
linearity of the identification model and which are derived from physical
properties (chapter 3). This ensures an easy parameter estimation and
has the advantage that the parameters have a physical interpretation.
Whenever available, specification data from the robot manufacturer
is compared to the estimated parameter values. Each time, a good
correspondence is found, which confirms the validity of the approach.
This thesis confirms that a good calibration of the actuator torque
constants is required to obtain this good correspondence.

Validation of the combined identification approach

In order to improve the accuracy of the parameter estimates an ex-


ternal force/torque sensor is added to the test setup which measures
the reaction wrench of the manipulator on its base plate (chapter 4).
The external identification model associated with these measurements
is combined with the classical internal robot identification model into
7.1. Summary of the conclusions 179

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.

Identification of the inertial payload parameters

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

Improvement of the path tracking accuracy

To compensate off-line for the nonlinear robot dynamics, a trajectory


pre-compensation method has been developed (chapter 6). The desired
trajectory is filtered with an inverse dynamic robot model including the
controller dynamics yielding a velocity feedforward signal. The exper-
imental results obtained in this thesis show a significant improvement
of the path tracking accuracy. The main advantage of this method is
that no change of the existing robot controller is required. However,
most commercial robot controllers do not even have an open interface
in order to apply a trajectory pre-compensation. This brings a strong
practical limitation for industrial application. Therefore, this thesis
holds a plea for more open real-time interfaces to existing robot con-
trollers. Both manufacturers and industrial users will benefit from the
improved accuracy.

7.2 Future work

Experimental work is never finished, nor does this thesis pretend to


be the end of all stories. Although the theoretical framework forms a
solid basis, some questions remain unanswered. In addition, every new
robot manipulator has its own peculiarities and requires a customized
approach.
As a starting point, all presented methods, like model combining,
payload identification, and trajectory compensation, should be imple-
mented and validated on the same experimental setup. This synthesis
exercise will allow us to evaluate the accuracy of each application, be-
cause the results should be consistent for all experiments.
An important requirement to obtain consistency is to have accurate
actuator torque constants and to consider the temperature and load
dependency of friction. A good insight in how the actuator torque
constants and the friction evolve with the warm-up of the manipulator
can result in better parameter estimates and can open opportunities to
do a better compensation of the robot dynamics over a longer time.
The excitation trajectory design should be considered from a prac-
tical point of view. Several trajectory parameters are available to act
7.2. Future work 181

on the quality of the excitation. An efficient optimization algorithm


has to be selected which is capable of finding a satisfying excitation tra-
jectory within a reasonable time. A new optimization criterion should
be found, which is able to express the uncertainty on the parameter
estimates and which, at the same time, takes into account the desired
parameter accuracy. This optimization criterion should reach an appro-
priately chosen minimal level that guarantees sufficient excitation, but
avoids that further optimization would not yield practical significant
better parameter estimates. The performance of different optimized
excitation trajectories can be evaluated by looking at the parameter
estimation accuracy.
Time is ready to bring the developments of robot identification
to industry. Research results are mostly only validated on one spe-
cific setup. Therefore, the validity can not always be guaranteed for a
wider application area. An industrial experience could give a valuable
feedback to research. In addition, also industry might benefit from the
implementation, because manipulators are made more accurate. A first
step is made in this thesis with the development of the trajectory pre-
compensation method. This method still remains to be implemented
on a commercially available robot controller, which should allow the
application of a trajectory compensation. Only then it makes sense to
compare the performance of the trajectory pre-compensation method
with the performance of the original controller. An external measure-
ment system can be used to validate the obtained improvement in path
tracking accuracy.
In further steps, the knowledge of the dynamic model should be
included in the control algorithm of industrial robots. A close inte-
gration of the dynamic model in both controller and path planner will
result in robots which are more accurate. It is however well known
that developers of standard robot controllers today have great difficul-
ties in supporting this need for integration. More specifically, an open,
real-time interface to the commercial robot controller is not available.
Development of an open-system architecture based on software modules
will enable the control engineer to implement desired control features,
with a minimum of degradation on efficiency and safety.
To facilitate the integration in industry, a ready-to-use software
framework for dynamic modelling and identification of robot manipu-
182 Conclusions

lators should be developed in close cooperation with manufacturers to


learn in an early phase about their requirements. This should evolve
towards a software concept that is based on a library of modular com-
ponents, which can be configured to a specific application for the user.
Finding attractive, appealing and relevant applications will push robot
identification to a should-have toolbox.
This is where my academic research on robot identification ends.
Time has come to bring the results to industry, and to convince them of
the advantages of experimental identification such that the techniques
obtain as much acceptance in industry as they get from academics.
Bibliography

Aberger, M. (2000). Effects of nonlinearities in black box identification


of an industrial robot. Technical Report LiTH-ISY-R-2322, De-
partment of Electrical Engineering, Linköping University, SE-581
83 Linköping, Sweden.

Adams, M. (1992). Nonlinear control of flexible robots. PhD thesis,


Katholieke Universiteit Leuven, Department of Mechanical Engi-
neering, Leuven, Belgium.

Alban, T. and Janocha, H. (1999). Dynamic calibration of industrial


robots with inertial measurement systems. In Proc. of the Euro-
pean Control Conference ECC’99. Karlsruhe.

Albu-Schäffer, A. (2001). Regelung von Robotern mit elastischen Ge-


lenken am Beispiel der DLR-Leichtbauarme. PhD thesis, DLR.

Albu-Schäffer, A. and Hirzinger, G. (2001). Parameter identification


and passivity based control for a 7dof torque controlled light weight
robot. In Proceedings of the IEEE International Conference on
Robotics and Automation, pages 2852–2858, Seoul, Korea.

An, C. H., Atkeson, C. G., and Hollerbach, J. M. (1986). Experimen-


tal determination of the effect of feedforward control of trajectory
tracking errors. In Proceedings of the IEEE International Con-
ference on Robotics and Automation, pages 55–60, San Francisco,
CA.

Antonelli, G., Caccavale, F., and Chiacchio, P. (1999). A systematic


procedure for the identification of dynamic parameters of robot
manipulators. Robotica, 17:427–435.

183
184 Bibliography

Armstrong, B. (1989). On finding exciting trajectories for identifica-


tion experiments involving systems with nonlinear dynamics. The
International Journal of Robotics Research, 8(6):28–48.

Armstrong-Hélouvry, B., Dupont, P., and Canudas de Wit, C. (1994).


A survey of models, analysis tools and compensation methods for
the control of machines with friction. Automatica, 30(7):1083–
1138.

Atkeson, C., An, C., and Hollerbach, J. (1986). Estimation of iner-


tial parameters of manipulator loads and links. The International
Journal of Robotics Research, 5(3):101–119.

Bernhardt, R. and Albright, S. L. (1993). Robot Calibration. Chapman


& Hall.

Bernhardt, R., Schreck, G., and Willnow, C. (1995). Realistic robot


simulation. Computing and Control engineering journal, 6(4):174–
176.

Bona, B., Calafiore, G., and Indri, M. (2000). Calibration of robotic


manipulators: a robust approach. In 1st IFAC Conference on
Mechatronic Systems, pages 501–506, Darmstadt, Germany.

Caccavale, F. and Chiacchio, P. (1994). Identification of dynamic para-


meters and feedforward control for a conventional industrial ma-
nipulator. Control Engineering Practice, 2(6):1039–1050.

Calafiore, G. and El Ghaoui, L. (2001). Robust maximum likelihood


estimation in the linear model. Automatica, 37(4):573–580.

Calafiore, G. and Indri, M. (1998). Experiment design for robot dy-


namic calibration. In Proceedings of the IEEE International Con-
ference on Robotics and Automation, pages 3303–3309, Leuven,
Belgium.

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.

Canudas de Wit, C., Siciliano, B., and Bastin, G. (1996). Theory of


robot control. Springer.

Chen, J. (1989). The effects of gear reduction on robot dynam-


ics. In Proc. NASA Conf. on Space Telerobotics, pages 297–307,
Pasadena, CA.

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.

Corke, P. (1996). In situ measurement of robot motor electrical con-


stants. Robotica, 14(4):433–436.

Craig, J. J. (1986). Introduction to Robotics: Mechanics & Control.


Addison-Wesley, Reading, MA.

Craig, J. J. (1988). Adaptive control of Mechanical Manipulators.


Addison-Wesley, Reading, MA.

da Silva, A. R., Schäfer, B., de Souza, L., and Fonseca, R. (2000).


Space robotics joints non-linear modeling and on-line parameter
identification. In Proceedings of the 31st International Symposium
on Robotics, pages 461–467, Montreal, Canada.

Daemi, M. and Heimann, B. (1996). Identification and compensation


of gear friction for modeling of robots. In Proceeding of the 11th
CISM-IFToMM Symposium on the Theory and Practice of Robots
and Manipulators, pages 89–96, Udine, Italy.
186 Bibliography

Daemi, M. and Heimann, B. (1998). Separation of friction and rigid


body identification for an industrial robot. In Proceeding of the
12th CISM-IFToMM Symposium on the Theory and Practice of
Robots and Manipulators, pages 35–42, Paris, France.

Dahl, P. (1977). Measurement of solid friction parameters of ball bear-


ings. In Proceedings of 6th Annual Symp. on Incremental Motion,
Control Systems and Devices, pages 49–60, Illinois.

Denavit, J. and Hartenberg, R. (1955). A kinematic notation for lower


pair mechanism based on matrices. Trans. ASME Journal of Ap-
plied Mechanics, 22:215–221.

Fisette, P., Raucent, B., and Samin, J.-C. (1996). Minimal dynamic
characterization of tree-like multibody systems. Nonlinear Dy-
namics, 9:165–184.

Ganseman, C. (1998). Dynamic modelling and identification of mecha-


nisms with application to industrial robots. PhD thesis, Katholieke
Universiteit Leuven, Department of Mechanical Engineering, Leu-
ven, Belgium.

Gautier, M. (1986). Identification of robots dynamics. In Proceedings of


the IFAC Symposium on Theory of Robots, pages 351–356, Vienna,
Austria.

Gautier, M. (1990). Numerical calculation of the base inertial parame-


ters of robots. In Proceedings of the IEEE International Conference
on Robotics and Automation, pages 1020–1025, Cincinnati, USA.

Gautier, M. (1997). Dynamic identification of robots with power model.


In Proceedings of the IEEE International Conference on Robotics
and Automation, pages 1922–1927, Albuquerque, New Mexico.

Gautier, M., Janin, C., and Pressé, C. (1993). Dynamic identification of


robots using least squares and extended kalman filtering methods.
In Proceedings of the Second European Control Conference, pages
2291–2296, Groningen, The Netherlands.
Bibliography 187

Gautier, M. and Khalil, W. (1989). Identification of the minimum


inertial parameters of robots. In Proceedings of the IEEE Interna-
tional Conference on Robotics and Automation, pages 1529–1534,
Scottsdale, USA.

Gautier, M. and Khalil, W. (1990). Direct calculation of minimum


set of inertial parameters of serial robots. IEEE Transactions on
Robotics and Automation, 6(3):368–373.

Gautier, M. and Khalil, W. (1992). Exciting trajectories for the iden-


tification of base inertial parameters of robots. The International
Journal of Robotics Research, 11(4):362–375.

Gautier, M., Khalil, W., and Restrepo, P. P. (1995). Identification


of dynamic parameters of a closed loop robot. In Proceedings of
the IEEE International Conference on Robotics and Automation,
pages 3045–3050, Nagoya, Japan.

Gautier, M. and Poignet, P. (2001). Extended kalman filtering and


weighted least squares dynamic identification of robot. Control
Engineering Practice, 9(1):1361–1372.

Golub, G. and Van Loan, C. (1989). Matrix Computations. The Johns


Hopkins University Press.

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.

Grotjahn, M. and Heimann, B. (2000). Determination of dynamic pa-


rameters of robots by base sensor measurements. In Proc. of the
6th IFAC Symposium on Robot Control, Syroco, Vienna, Austria.

Grotjahn, M. and Heimann, B. (2002). Model-based feedforward con-


trol in industrial robotics. The International Journal of Robotics
Research, 21(1):45–60.

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

Hansen, E. R. (1992). Global optimization using interval analysis. Pure


and applied mathematics: a series of monographs and textbooks.
Dekker New York (N.Y.).

Heim, A. and von Stryk, O. (2000). Trajectory optimization of indus-


trial robots with application to computer-aided robotics and robot
controllers. Optimization, 47:407–420.

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.

Honegger, M. and Corke, P. (2001). Model-based control of hydrauli-


cally actuated manipulators. In Proceedings of the IEEE Interna-
tional Conference on Robotics and Automation, pages 2553–2559,
Seoul, Korea.

Horst, R. and Pardalos, P. (1995). Handbook of Global Optimization.


Kluwer, Dordrecht.

Isermann, R. (1999). Modeling, identification and simultation of


mechatronic systems. In Proceedings of the 14th Triennial World
Congress IFAC, pages 395–404, Beijing, China.

Jaulin, L., Kieffer, M., Didrit, O., and Walter, E. (2001). Applied
Interval Analysis. Springer-Verlag.

Khalil, W. and Dombre, E. (2002). Modeling, identification & control


of robots. Hermes Penton Ltd.

Khalil, W. and Gautier, M. (2000). Modeling of mechanical systems


with lumped elasticity. In Proceedings of the IEEE International
Conference on Robotics and Automation, pages 3965–3970, San
Francisco, CA.
Bibliography 189

Khosla, P. (1989). Categorization of parameters in the dynamic robot


model. IEEE Journal of Robotics and Automation, 5(3):261–268.

Khosla, P. and Kanade, T. (1987). An algorithm to estimate ma-


nipulator dynamics parameters. IEEE Journal of Robotics and
Automation, 2(3).

Khosla, P. and Kanade, T. (1988). Experimental evaluation of non-


linear feedback and feedforward control schemes for manipulators.
The International Journal of Robotics Research, 7(1):18 – 28.

Khosla, P. and Ramos, S. (1988). A comparative analysis of the hard-


ware requirements for the Lagrange-Euler and Newton-Euler dy-
namics formulations. In Proceedings of the IEEE International
Conference on Robotics and Automation, volume 1, pages 291 –
296, Philadelphia.

Kozlowski, K. and Dutkiewicz, P. (1996). Experimental identification


of robot and load dynamics. In Triennial World Congress IFAC,
pages 397–402, San Francisco, USA.

Krypton (1998). RODYM-6D Product Description and User Manual.


Krypton Electronic Engineering N.V., Heverlee, Belgium.

Lampaert, V., Al-Bender, F., and Swevers, J. (2003). A generalized


Maxwell-slip friction model appropriate for control purposes. In
Proceedings of the IEEE International Conference on Physics and
Control, pages 1170–1178, Saint-Petersburg, Russia.

Lampaert, V., Swevers, J., and Al-Bender, F. (2002). Modification of


the Leuven integrated friction model structure. IEEE Transactions
on Automatic Control, 47(4):683–687.

Lange, F. and Hirzinger, G. (1994). Learning to improve the path


accuracy of position controlled robots. In Proc. of the Conference
on Intelligent Robots and Systems, pages 494–501. Munich.

Lange, F. and Hirzinger, G. (1996). Learning of a controller for non-


recurring fast movements. Advanced Robotics. Special issue on
Behavior and Learning.
190 Bibliography

Lange, F. and Hirzinger, G. (1999). Adaptive minimization of the max-


imal path deviations of industrial robots. In Proc. of the European
Control Conference ECC’99. Karlsruhe.

Lefebvre, T., Gadeyne, K., Bruyninckx, H., and Schutter, J. D. (2003).


Exact Bayesian inference for a class of nonlinear systems with
application to robotic assembly. Bayesian Statistics 7, J. M.
Bernardo, M. J. Bayarri, J. O. Berger, A. P. Dawid, D. Heck-
erman, A. F. M. Smith and M. West (Eds.), pages 587–596.

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.

Ljung, L. (1987). System identification: theory for the user. Prentice-


Hall Inc., Englewood Cliffs, New Jersey.

Luh, J. Y. S., Walker, M. W., and Paul, R. P. (1980). On-line compu-


tational scheme for mechanical manipulators. Journal of Dynamic
Systems, Measurement, and Control, 102(2):69–76.

Maes, P., Samin, J., and Willems, P. (1989). Linearity of multibody


systems with respect to barycentric parameters : dynamic and
identification models obtained by symbolic generation. Mechanics
of Structures and Machines, 17(2):219–237.

Mayeda, H., Yoshida, K., and Osuka, K. (1990). Base parameters


of manipulator dynamic models. IEEE Journal of Robotics and
Automation, 6(3):312–321.

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.

Mukerjee, A. and Ballard, D. (1985). Self-calibration in robot manip-


ulators. In Proceedings of the IEEE International Conference on
Robotics and Automation, pages 1050–1057.
Bibliography 191

Murotsu, Y., Senda, K., and Ozaki, M. (1994). Parameter identification


of unknown object handled by free-flying space robot. Journal of
Guidance Control and Dynamics, 17(3):488–494.
Nocedal, J. and Wright, S. J. (1999). Numerical Optimization.
Springer.
Norrlöf, M. (2002). An adaptive iterative learning control algorithm
with experiments on an industrial robot. IEEE Transactions on
Robotics and Automation, 18(2):245–251.
Norrlöf, M., Tjärnström, F., and Östring, M. (2002). Modeling and
identification of a mechanical industrial manipulator. In Proceed-
ings of the 15th IFAC World Congress, Barcelona, Spain.
Olsen, H. and Bekey, G. (1986). Identification of robot dynamics. In
Proceedings of the IEEE International Conference on Robotics and
Automation, pages 1004–1010, San Francisco, USA.
Olsen, M., Swevers, J., and Verdonck, W. (2002). Maximum likelihood
identification of a dynamic robot model: implementation issues.
International Journal on Robotics Research, 21(2):89–96.
Olsen, M. M. and Petersen, H. G. (2001). A new method for estimating
parameters of a dynamic robot model. IEEE Transactions on
Robotics and Automation, 17(1):95–100.
Onder Efe, M. and Kaynak, O. (2000). A comparative study of soft-
computing methodologies in identification of robotic manipulators.
Robotics and Autonomous Systems, 30(3):221–230.
Östring, M. and Gunnarsson, S. (2002). Recursive identification of
physical parameters in a flexible robot arm. In 4th Asian Control
Conference, Singapore.
Östring, M., Gunnarsson, S., and Norrlöf, M. (2001). Closed loop
identification of the physical parameters of an industrial robot. In
32nd International Symposium on Robotics, Seoul, Korea.
Pfeiffer, F. and Hölzl, J. (1995). Parameter identification for industrial
robots. In Proceedings of the IEEE International Conference on
Robotics and Automation, pages 1468–1476, Nagoya, Japan.
192 Bibliography

Pham, M. T., Gautier, M., and Poignet, P. (2001). Identifica-


tion of joint stiffness with bandbass filtering. In Proceedings of
the IEEE International Conference on Robotics and Automation,
pages 2867–2872, Seoul, Korea.
Pintelon, R. and Schoukens, J. (2001). System identification: a fre-
quency domain approach. John Wiley & Sons, Inc.
Pressé, C. and Gautier, M. (1992). Bayesian estimation of inertial pa-
rameters of robots. In Proceedings of the IEEE International Con-
ference on Robotics and Automation, pages 364–369, Nice, France.
Pressé, C. and Gautier, M. (1993). New criteria of exciting trajectories
for robot identification. In Proceedings of the IEEE International
Conference on Robotics and Automation, pages 907–912, Atlanta,
USA.
Prüfer, M., Schmidt, C., and Wahl, F. (1994). Identification of robot
dynamics with differential and integral models : a comparison. In
Proceedings of the IEEE International Conference on Robotics and
Automation, pages 340–345, San Diego, USA.
Prüfer, M. and Wahl, F. (1994). Friction analysis and modelling for
geared robots. In Preprints of the Fourth IFAC SYmposium on
RObot COntrol, pages 551–556, Capri, Italy.
Raucent, B. (1990). Identification des paramètres dynamiques des
robots manipulateurs. PhD thesis, Université catholique de Lou-
vain, Département de Mécanique, Louvain-la-neuve, Belgium.
Raucent, B., Campion, G., Bastin, G., Samin, J., and Willems, P.
(1992). Dynamic parameter identification of an industrial robot
and its application to trajectory controls. Automatica, 28(5):1011–
1016.
Raucent, B. and Samin, J.-C. (1993). Modelling and identifying the
dynamic parameters of robot manipulators. Robot Calibration,
eds. Bernhardt R. and Albright S.L, pages 197–232.
Raucent, B. and Samin, J.-C. (1994). Minimal parameterization of
robot dynamic models. Mechanics of Structures and Machines,
22(3):371–396.
Bibliography 193

Saramago, S. F. P. and Steffen, V. (1998). Optimization of the


trajectory planning of robot manipulators taking into account
the dynamics of the system. Mechanisms and Machine Theory,
33(7):883–894.

Schäfer, B. and da Silva, A. R. (2000). Space robotics experiments


for increasing dynamics modelling fidelity. In European Congress
on Computational Methods in Applied Sciences and Engineering,
ECCOMAS 2000, Barcelona.

Schoukens, J. and Pintelon, R. (1991). Identification of linear systems:


a practical guideline to accurate modeling. Pergamon Press, Ox-
ford.

Sciavicco, L. and Siciliano, B. (1996). Modeling and Control of Robot


Manipulators. Electrical and Computer Engineering Series. Mc
Graw Hill, Englewood Cliffs, New Jersey.

Sciavicco, L., Siciliano, B., and Villani, L. (1996). Lagrange and


Newton-Euler dynamic modelling of a gear-driven rigid robot
manipulator with inclusion of motor inertia effects. Advanced
Robotics, 10(3):317–334.

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.

Slotine, J.-J. E. (1985). The robust control of robot manipulators. The


International Journal of Robotics Research, 4(2):49–64.

Steinbach, M. C., Bock, H. G., Kostin, G. V., and Longman, R. W.


(1998). Mathematical optimization in robotics: Towards auto-
mated high speed motion planning. Survey on Mathematics for
Industry, 7(4):303–340.

Swevers, J., Al-Bender, F., Ganseman, C., and Prajogo, T. (2000).


An integrated friction model structure with improved presliding
behaviour for accurate friction compensation. IEEE transactions
on Automatic Control, 45(4):675–686.
194 Bibliography

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.

Tafazoli, S., Lawrence, P. D., and Salcudean, S. E. (1999). Identifica-


tion of inertial and friction parameters for excavator arms. IEEE
Transactions on Robotics and Automation, 15(5):966–971.

Törn, A. and Z̆ilinskas, A. (1989). Global Optimization. Lecture Notes


in Computer Science. Springer Verlag, Heidelberg.

Tsai, L.-W. (1999). Robot Analysis: The mechanics of serial and par-
allel manipulators. J. Wiley & sons, Inc.

Van de Poel, P., Witvrouw, W., Bruyninckx, H., and De Schutter, J.


(1993). An environment for developing and optimizing compliant
robot motion tasks. In Proceedings of the International Conference
on Advanced Robotics, pages 713–718, Tokyo, Japan.

Vandanjon, P., Gautier, M., and Desbats, P. (1995). Identification


of robots inertial parameters by means of spectrum analysis. In
Proceedings of the IEEE International Conference on Robotics and
Automation, pages 3033–3038, Nagoya, Japan.

Vandenberghe, L. and Boyd, S. (1996). Semidefinite programming.


SIAM Review, 38(1):49–95.

West, H., Papadopoulos, E., Dubowsky, S., and Cheah, H. (1989). A


method for estimating the mass properties of a manipulator by
measuring the reaction moments at its base. In Proceedings of
the IEEE International Conference on Robotics and Automation,
pages 1510–1516, Scottsdale, Arizona.
Bibliography 195

Zeng, H. and Unbehauen, H. (1999). Modelling and identification of a


four-link manipulator. In Proceedings of the 14th Triennial World
Congress IFAC, pages 153–157, Beijing, China.

Zhu, W.-H. and De Schutter, J. (1999). Adaptive control of mixed


rigid/flexible joint robot manipulators based on virtual decomposi-
tion. IEEE Transactions on Robotics and Automation, 15(2):310–
317.
196 Bibliography
List of publications

International peer reviewed journal articles

1. J. Baeten, W. Verdonck, H. Bruyninckx and J. De Schutter,


“Combining force control and visual servoing for planar con-
tour following”, International Journal on Machine Intelligence
and Robotic Control, Vol. 2 (2), pp. 69–75, 2000.

2. W. Verdonck, J. Swevers, and J.-C. Samin, “Experimental robot


identification: advantages of combining internal and external
measurements and of using periodic excitation”, Transactions of
the ASME Journal of dynamic systems, measurement, and con-
trol, Vol. 123 (4), pp. 630–636, December 2001.

3. M.M. Olsen, J. Swevers, and W. Verdonck, “Maximum likelihood


identification of a dynamic robot model: implementation issues”,
The International Journal of Robotics Research, Vol. 21 (2), pp.
89–96, February 2002.

4. J. Swevers, W. Verdonck, B. Naumer, S. Pieters, and E. Biber,


“An experimental robot load identification method for industrial
application”, The International Journal of Robotics Research,
Vol. 21 (8), pp. 701–712, August 2002.

Full papers in proceedings of international con-


ferences

1. W. Verdonck, J. Swevers, X. Chenut and J.-C. Samin, “Combin-


ing internal and external robot models to improve model param-

197
198 List of publications

eter estimation”, Proceedings of the IEEE International Confer-


ence on Robotics and Automation, pp. 2846–2851, Seoul, Korea,
May 2001.

2. W. Verdonck and J. Swevers, “Improving the dynamic accuracy


of industrial robots by trajectory pre-compensation”, Proceedings
of the IEEE International Conference on Robotics and Automa-
tion, pp. 2846–2851, Washington D.C., USA, May 2002.

3. J. Swevers, B. Naumer, S. Pieters, E. Biber, W. Verdonck and J.


De Schutter, “An experimental robot load identification method
for industrial application”, Lecture Notes in Control and Informa-
tion Sciences 250. The 8th International Symposium on Exper-
imental Robotics, pp. 318–327, Springer, Sant’Angelo d’Ischia,
Italy, July 2002.

4. W. Verdonck and J. Swevers, “Analysis of systematic errors in


robot load identification”, Proceedings of the International Con-
ference on Advanced Robotics, pp. 941–946, Coimbra, Portugal,
July 2003.
Biography

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.

• 1994-1999: Mechanical engineering student at the Katholieke


Universiteit Leuven, Belgium.
July 1999: Master degree in Mechanical Engineering, specialisa-
tion Mechatronics and Machine Design, Katholieke Universiteit
Leuven, Belgium.
My master thesis ‘Improving contour tracking with a force con-
trolled robot using vision’ tackled the problem of integration of
force and vision information into one control algorithm.

199
200
A
Kinematics

A.1 Introduction

The kinematics of a robot refer to the geometric relationship between


the motion of the robot in joint space and the motion of the tool frame
relative to the base frame of the robot. In this appendix the concept
of forward kinematics will be described using the modified Denavit-
Hartenberg representation.

A.2 Forward position kinematics

In the modelling of the forward kinematics of a robot manipulator the


concept of kinematic chains is used. This means that the manipulator
consists of a set of rigid links connected together in a chain. Suppose the
robot has n + 1 links connected with n joints. The links are numbered
from 0 to n where joint i connects link i − 1 and i. In typical robots,
each joint has one degree of freedom, either translational or rotational.
The relative position and orientation of frame i with respect to

201
202 Kinematics

frame i − 1 are represented by the 4 × 4 homogeneous transformation


matrix
i−1 
i−1 R i pi
Ti = . (A.1)
01×3 1

where pi is the position vector of the origin of frame i expressed in


frame i − 1 and i−1 Ri the rotation matrix. The columns of the matrix
i−1 R represent the components of the unit vectors of frame i expressed
i
in frame i − 1.
The forward kinematics gives the coordinate frame, or pose, of the
last link. It is obtained by
0
Tn = 0 T1 1 T2 · · · n−1 Tn , (A.2)

which is the product of the coordinate frame transformation matrices


for each link. The pose 0 Tee of the robot end-effector (EE) with re-
spect to the base requires an extra transformation n Tee to be added to
equation (A.2).
A coordinate system is attached to all links to indicate the posi-
tion and orientation of the joint axes. The Denavit-Hartenberg (DH)
convention is a systematic method to choose these coordinate systems.

A.2.1 Denavit-Hartenberg representation

The Denavit-Hartenberg representation (Denavit and Hartenberg,


1955) is commonly used in industry to relate a transformation ma-
trix Ti to its scalar joint position value and the parameters describing
the joint geometry. Each transformation is defined with four scalar pa-
rameters. In its original standard form, frame i has its origin along the
axis of joint i + 1. However, many different definitions of the Denavit-
Hartenberg representation have been used through the years.
One of these definitions has the origin of frame i along the axis of
joint i, and is frequently referred to as ‘modified Denavit-Hartenberg’
(MDH) form (Craig, 1986). This form is commonly used in literature
dealing with manipulator dynamics, and was also used in this work.
The MDH convention assumes that the link’s coordinate systems have
been placed according to the following rules:
A.2. Forward position kinematics 203

joint i-1 joint i joint i+1

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

Figure A.1: Modified Denavit-Hartenberg

Zi : lies along the axis of motion of the joint,


Xi : lies along the common normal between Zi and Zi+1 ,
Yi : completes the right-handed coordinate system.

These conventions are graphically represented in figure A.1. The four


parameters that define the transformation are

ai : the distance from Zi to Zi+1 measured along Xi


αi : the angle between Zi to Zi+1 measured about Xi
di : the distance from Xi−1 to Xi measured along Zi
θi : the angle between Xi−1 to Xi measured about Zi

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:

1. Rotate an angle αi−1 about the Xi axis.


2. Translate a distance ai−1 along the Xi axis.
3. Rotate an angle θi about the Zi axis.
4. Translate a distance di along the Zi axis.
204 Kinematics

The resulting homogeneous matrix:


i−1
Ti = Rot(Xi , αi−1 )Trans(Xi , ai−1 )Rot(Zi , θi )Trans(Zi , di ) (A.3)
 
cos θi − sin θi 0 ai−1
sin θi cos αi−1 cos θi cos αi−1 − sin αi−1 −di sin αi−1 
= sin θi sin αi−1 cos θi sin αi−1 cos αi−1

di cos αi−1 
0 0 0 1
(A.4)

transforms the coordinates of a point from frame i to i − 1. This trans-


formation is not constant, but varies as a function of the corresponding
joint variable.

A.3 Forward velocity and acceleration kine-


matics
The forward position kinematics can be summarized by the following
equation

xee = for kin(q), (A.5)

which expresses the position and orientation of the manipulator end-


effector as a function of the joint positions q.
Differentiating equation (A.5) with respect to time gives the veloc-
ity and acceleration of the end-effector as a function of the positions,
velocities, and accelerations of the joints:

ẋee = J(q) q̇ (A.6)


˙
ẍee = J(q) q̈ + J(q) q̇ (A.7)

The manipulator Jacobian matrix J transforms velocities in joint space


to velocities of the end-effector in Cartesian space. The matrix J˙ is the
time derivative of the Jacobian.
Dynamics of serial manipulators
B
B.1 Introduction
This appendix describes the dynamics of serial manipulators. First,
the inertial elements of a rigid body are defined and the conventions
which have been used throughout this work are indicated. Second, the
equations to describe the dynamic behavior of a serial manipulator are
introduced. They can be formulated by different methods (Tsai, 1999).
In this work, the application of the recursive Newton-Euler equations
is chosen to describe the inverse dynamics. By using an appropriate
transformation, the equations can be reformulated to be linear in the
inertial parameters, which is suitable for identification purposes.

B.2 Mass properties


The dynamic parameters of each rigid body consist of its mass m, the
position of the center of gravity (COG), expressed in frame O

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

Figure B.1: Moments of inertia with respect to a reference frame

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

Iyz = Izy = − yz ρ dV,


ZV
Ixz = Izx = − xz ρ dV, (B.3)
V
where x, y, and z are the coordinates of a differential volume of mass
in the volume V of the body with respect to the reference frame O.
The inertia matrix is symmetric and positive definite.
B.2. Mass properties 207

An alternative to the use of the COG, are the first moments of


inertia
s = [sx sy sz ]T = m cO . (B.4)

Steiner’s or parallel axis theorem

The elements of the inertia matrix (equation (B.2)) depend on the


choice of the reference frame. When calculating the moments of inertia,
it is generally easier to perform the calculation with respect to a frame
with its origin in the COG of the object. The parallel axis theorem
shows that, if we know the moments of inertia about a frame in the
COG, we can easily find the moments of inertia about any other frame
that is parallel to the one in the COG.
Let C be a Cartesian coordinate frame attached to the center of
gravity and O a reference frame. It can be shown that
O C
Ixx = Ixx + m (c2y + c2z ),
O C
Iyy = Iyy + m (c2z + c2x ),
O C
Izz = Izz + m (c2x + c2y ),
O C
Ixy = Ixy − m cx cy ,
O C
Iyz = Iyz − m cy cz ,
O C
Izx = Izx − m cz cx , (B.5)
or more compactly in a closed form formula
IO = IC + m (cT c)1 − (c cT ) ,
 
(B.6)
where 1 is the 3 × 3 identity matrix.

Transformation of inertia matrix

The inertia matrix also depends on the orientation of the reference


frame. Let IA and IB be the inertia tensor referred to the frames A
and B, respectively, with a coinciding origin. The inertia matrix can
be calculated from one frame to the other using the relation
IB = RIA RT , (B.7)
208 Dynamics of serial manipulators

with R the rotation matrix of frame A with respect to frame B. If the


axes of the frame coincide with the central axes of inertia, then the
inertia products are zero and the inertia tensor is a diagonal matrix.

B.3 Inverse dynamic equations

The inverse dynamics computation is used to determine the joint forces


and torques that are required for the desired motion which is specified
by joint positions, velocities and accelerations.
Two formulations have been used to derive the dynamic equations
of a robot manipulator: the closed-form Euler-Lagrange formulation
and the recursive Newton-Euler formulation. This section presents the
recursive Newton-Euler (RNE) formulation of the dynamics of serial
manipulators. The Newton-Euler formulation incorporates all forces
and torques acting on the individual link of a robot manipulator. The
same underlying formulation based on these Newton-Euler equations
serves for both rigid-body link and payload parameter estimation.

B.3.1 Recursive Newton-Euler formulation

The Newton-Euler formalism for a serial manipulator, implies two re-


cursive computations: a forward (kinematics) recursion from the base
to the end-effector of the manipulator which computes the velocity and
acceleration of each link, and a backward (dynamics) recursion from
the end-effector to the base of the manipulator which computes forces
and torques applied to each link.
In the formulation of the RNE algorithm, following notations are
employed:
σi : is the joint type: σi = 1 for a revolute joint and σi = 0
for a prismatic joint;
ei : is a unit vector along the ith joint axis and expressed
in the ith frame. E.g. when the modified Denavit-
Hartenberg formulation is used for the kinematics ei =
[0 0 1]T ;
iR
i−1 : rotational transformation from frame i − 1 to frame i;
B.3. Inverse dynamic equations 209

pi : position vector of the origin of the ith link with respect


to (i − 1)th link frame;
q, q̇, q̈ : joint position, velocity, and acceleration;
i : velocities, accelerations, forces and torques are expressed
in frame i.

The Newton-Euler dynamics algorithm

Forward iterations for i = 1, 2, . . . , n

The forward computation computes recursively the angular velocity


ω, angular acceleration ω̇, linear velocity v, and linear accelerations v̇
of each link in terms of its preceding link. The initial conditions for the
base frame are ω0 = 0, ω̇0 = 0, v0 = 0, and v̇0 = g, where g represents
the vector of gravity.

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 linear acceleration of the center of gravity is calculated by

v̇iC = v̇i + ω̇i × ci + ωi × (ωi × ri ) (B.12)

The dynamic parameters for a link body i are indicated in figure B.2.

Backward iterations for i = n, n − 1, . . . , 1

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

joint axis i+1


joint axis i wi
f i+1 t i+1
fi
ti

Oi p i+1 Oi+1
ci C

qi viC link body i

Figure B.2: Definition of dynamic parameters for a link body with


rotational joint

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.

B.3.2 Linearity in the inertial parameters

The Newton-Euler algorithm can be reformulated to obtain a model


that is linear in all of the inertial parameters (Atkeson et al., 1986).
B.3. Inverse dynamic equations 211

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:

Fi = mi v̇i + ω̇i × si + ωi × (ωi × si ) (B.18)


i
fi = Ri+1 fi+1 + Fi (B.19)
ti = iRi+1 ti+1 + pi+1 × iRi+1 fi+1 + si × v̇i + Ii ω̇i + ωi × (Ii ωi )
(B.20)
τi = σi tTi ei + (1 − σi )fiT ei . (B.21)

This linearity is extremely useful for identification purposes because it


allows to use linear estimators.

B.3.3 Calculation the identification matrix

For identification of the inertial parameters, the identification matrix is


required. This matrix contains the partial derivatives of the dynamic
equations to the inertial parameters. As the equations are linear in
these parameters, one column of the identification matrix can easily
be obtained by setting one inertial parameter equal to one and all the
others to zero. Repeating this procedure for all inertial parameters in
the model gives the identification matrix.
In general the obtained identification matrix is not of full rank.
This requires model reduction techniques, based on QR factorization,
singular value decomposition (SVD), or inspection of the rank of the
identification matrix (Gautier, 1990; Mayeda et al., 1990; Sheu and
Walker, 1989). All parameters which do not dynamically contribute
to the joint torques are set to zero and eliminated from the model.
The remaining parameters have to be regrouped to eliminate all linear
dependencies. Symbolic reduction methods are found in (Gautier and
Khalil, 1990; Fisette et al., 1996; Khalil and Dombre, 2002).
Khalil (Khalil and Dombre, 2002) derived a formula to deduce the
212 Dynamics of serial manipulators

number of minimal inertial parameters of a manipulator:

b ≤ 7nr + 4np − 3 − σ̄1 − 2ng (B.22)

with nr the number of revolute joints, np the number of prismatic


joints, σ̄1 is 1 if the first joint is revolute, 0 otherwise, and ng = 1 if
the first joint is revolute and parallel to gravity. In most cases, this
formula gives the exact number of base inertial parameters.

B.3.4 Base reaction model

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

C.1 KUKA IR 361

The KUKA IR 361 is a six degrees-of-freedom industrial robot with


seven joint axes. The wrist is of the Doppelwinkel type, and contains
several harmonic drives. The standard industrial controller RC 22/42
is maintained for the analog control levels. The path planner and po-
sition control loop are digitally implemented in the COMRADE soft-
ware (Van de Poel et al., 1993), running at a sampling rate of 150 Hz

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

parameter physical meaning units


parameters from both internal and external model
Kr1,zz Izz,1 + m1 c2x,1 + m1 c2y,1 + m2 c2y,2 + m3 c2y,3
+(Izz,2 + m2 c2x,2 + Ixx,2 + m2 c2z,2 + m3 l232

+Izz,3 + m3 c2x,3 + Ixx,3 + m3 c2z,3 )/2 kg m2


Kd2 (Izz,2 + m2 cx,2 − Ixx,2 − m2 cz,2 − m3 l23 )/2 kg m2
2 2 2

K2,xz Ixz,2 − m2 cx,2 cz,2 kg m2


Kr2,yz Iyz,2 − m2 cy,2 cz,2 − m3 cy,3 l23 kg m2
K2,xy Ixy,2 − m2 cx,2 cy,2 kg m2
b3,z m3 cz,3 kg m
b3,x m3 cx,3 kg m
Kd3 2 2
(Izz,3 + m3 cx,3 − Ixx,3 − m3 cz,3 )/2 kg m2
K3,xz Ixz,3 − m3 cx,3 cz,3 kg m2
K3,yz Iyz,3 − m3 cy,3 cz,3 kg m2
K3,xy Ixy,3 − m3 cx,3 cy,3 kg m2
K2,yy 2 2
Iyy,2 + m2 cx,2 + m2 cz,2 + m3 l23 2 kg m2
K3,yy Iyy,3 + m3 c2x,3 + m3 c2z,3 kg m2
b2,x m2 cx,2 kg m
parameters from internal model
grav1 l r k − g b2,z (gravity spring) Nm
grav2 k l0 /1000 (gravity spring) N
fv1 viscous friction 1 Nms
fc1 Coulomb friction 1 Nm
fv2 viscous friction 2 Nms
fc2 Coulomb friction 2 Nm
fv3 viscous friction 3 Nms
fc3 Coulomb friction 3 Nm
o1 measurement bias 1 Nm
o2 measurement bias 2 Nm
o3 measurement bias 3 Nm
parameters from external model
b2,z m2 cz,2 + m3 l23 kg m
b1,x m1 cx,1 kg m
br1,y m1 cy,1 + m2 cy,2 + m3 cy,3 kg m
K1,xz Ixz,1 − m1 cx,1 cz,1 kg m2
K1,yz Iyz,1 − m1 cy,1 cz,1 kg m2

Table C.1: Physical meaning of the reduced parameter set for


KUKA IR 361
C.2. KUKA KR15 215

l3ee = 765 mm
Z3

Y3
X3

l23 = 480 mm
Z1 Z2

Y1 Y2
X1 X2

l01 = 1050 mm
Z0

Y0
X0

Figure C.1: Kinematic structure of KUKA IR 361

C.2 KUKA KR15


The KUKA KR15 (figure C.2) is a six degrees of freedom robot. With a
nominal payload of 15 kg, it is one of the smaller manipulators in the
product range from KUKA. The KR C1 robot controller is PC-based
and uses VxWorks as real-time operating system.
Table C.2 gives the kinematic description of the KUKA KR15 using
the Denavit-Hartenberg representation. The dynamic parameters in
table C.3 are obtained from CAD data and are used in the path planner.
Link 6 has no separate inertial parameters, but the table specifies for
this link the parameters of the nominal payload.
216 Robot models

A5 + A4
+
--
+
-- +
--
-- A3
A6
+
A2 A1
-- +
--

Figure C.2: The 6 DOF industrial robot KUKA KR15/2

joint i αi−1 [rad] ai−1 [m] θi [rad] di [m]


1 π 0 0 0
π
2 2 0.3 0 0
3 0 0.65 0 0
π
4 2 0.155 0 -0.6
5 - π2 0 0 0
π
6 2 0 0 0

Table C.2: Denavit-Hartenberg parameters of KUKA KR15

link 1 link 2 link 3 link 4 link 5 link 6/payload


m [kg] - 33 32 19 9 15
cx [m] - 0.245 0.155 0 0 -0.120
cy [m] - 0 -0.026 0 0.024 0
cz [m] - 0 0 0.150 0 -0.290
Ixx [kgm2 ] - 0.09 0.60 0.50 0.05 0.225
Iyy [kgm2 ] - 1.98 0.31 0.46 0.02 0.225
Izz [kgm2 ] 4.4 2.00 0.68 0.12 0.04 0.225
Ixy [kgm2 ] - 0 0 0 0 0
Ixz [kgm2 ] - 0 0 0 0 0
Iyz [kgm2 ] - 0 0 0 0 0

Table C.3: Dynamic parameters of KUKA KR15


Contribution of the rotor inertia
D
D.1 Introduction
This appendix derives the equations of the torque contribution of the
rotor inertias for the KUKA IR 361 robot. In this robot, the first actua-
tor is mounted on the robot base, while the second and third actuator
are both mounted on the second link. This robot structure is graphi-
cally represented in figure D.1. The mounting of actuators and links on
another link body is indicated by a full line, the drive train connection
by a dashed line. Since only rotations and torques are involved in the
dynamics of the rotor inertia, all equations related to translations and
forces are omitted.

D.2 Forward kinematics


In the reference state, all link frames are chosen to be parallel. This
results in the following conventions for the KUKA IR 361. The first link
rotates around the −Z axis, while its actuator uses the +Z axis. The
second link and actuator and the third link have the +Y axis as their

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

Link 0 (base) level 0

Figure D.1: Tree structure of the manipulator: links and actua-


tors with their positive rotation axis. The drive train
connections are indicated by a dashed line and the
transmission ratio.

axis of rotation, and the second actuator the −Y . The direction is


indicated in parenthesis in figure D.1. The rotation matrices between
the different link frames are, respectively,
   
cos ql1 sin ql1 0 cos ql2 0 sin ql2
0
R1 = − sin ql1 cos ql1 0 ,1R2 =  0 1 0 . (D.1)
0 0 1 − sin ql2 0 cos ql2
(D.2)
The subscript ·l indicates a variable related to the link motion. For the
motor variables the subscript ·m is used. The rotations between the
actuator frames and the frames of the links on which they are mounted,
are given by
   
cos qm1 0 − sin qm1 cos qm2 0 sin qm2
0  , 2Rm2 = 
Rm1 =  0 1 0 0 1 0 ,
sin qm1 0 cos qm1 − sin qm2 0 cos qm2
 
cos qm3 0 − sin qm3
2
Rm3 =  0 1 0 . (D.3)
sin qm3 0 cos qm3

Equations (B.8) and (B.9) of appendix B are used to calculate the


forward kinematics of the actuator. The initial conditions for the base
frame are ω0 = 0 and ω̇0 = 0.
D.2. Forward kinematics 219

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)

A similar equation is obtained for the first actuator, which rotates


around the +Z, i.e. em1 = [0 0 1]T :
T
ωm1 = 0Rm
T

ω + q̇m1 em1 = 0 0 q̇m1
1 0
(D.6)
T
ω̇m1 = 0Rm
T
+ 0Rm
T
 
ω̇ + (q̈m1 em1
1 0
ω × (q̇m1 em1 )) = 0 0 q̈m1 .
1 0
(D.7)

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

and similar for the third actuator (em3 = [0 − 1 0]T )


 
q̇l1 sin(ql2 − qm3 )
ωm3 = 2Rm T
ω + q̇m3 em3 = 
3 l2
q̇l2 − q̇m3  (D.14)
−q̇l1 cos(ql2 − qm3 )
ω̇m3 = 2RmT
ω̇ + (q̈m3 em3 + 2Rm
3 l2
T
ω × (q̇m3 em3 ))
3 l2
(D.15)
 
q̈l1 sin(ql2 − qm3 ) + q̇l1 (q̇l2 − q̇m3 ) cos(ql2 − qm3 )
= q̈l2 − q̈m3 , (D.16)
−q̈l1 cos(ql2 − qm3 ) + q̇l1 (q̇l2 − q̇m3 ) sin(ql2 − qm3 )

D.3 Inverse dynamics


The backward recursion step calculates the dynamics, starting from
the kinematic information derived above and using equations (B.14)
to (B.17). Only the moment of inertia around the rotation axis gives
a torque contribution of the rotor, which is different from that of the
link body. All the inertial parameters of the links are set to zero. This
information is taken into account and simplifies the equations. The
equations have been verified using the symbolic multibody software
package Robotran (Raucent, 1990; Fisette et al., 1996).

D.3.1 The actuator torques

For the third actuator, this yields

tm3 = Im3 ω̇m3 + ωm3 × (Im3 ωm3 ) (D.17)


 
Im3 q̇l1 (q̇l2 − q̇m3 ) cos(ql2 − qm3 )
= Im3 (q̈l2 − q̈m3 )  (D.18)
Im3 q̇l1 (q̇l2 − q̇m3 ) sin(ql2 − qm3 )
τm3 = tTm3 em3 = Im3 (q̈l2 − q̈m3 ). (D.19)

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:

τ3,I = Im3 (µ3 q̈l2 − µ23 q̈l3 ). (D.20)


D.3. Inverse dynamics 221

For the second actuator, analogue calculations give

tm2 = Im2 ω̇m2 + ωm2 × (Im2 ωm2 ) (D.21)


 
Im2 q̇l1 (q̇l2 + q̇m2 ) cos(ql2 + qm2 )
= Im2 (q̈l2 + q̈m2 )  (D.22)
Im2 q̇l1 (q̇l2 + q̇m2 ) sin(ql2 + qm2 )
τm2 = tTm2 em2 = Im2 (q̈l2 + q̈m2 ). (D.23)

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

t2 = 2Rm2 tm2 + 2Rm3 tm3 (D.24)


 
Im2 q̇l1 (q̇l2 + q̇m2 ) cos ql2 + Im3 q̇l1 (q̇l2 − q̇m3 ) cos ql2
= Im2 (q̈l2 + q̈m2 ) + Im3 (q̈l2 − q̈m3 )  (D.25)
Im2 q̇l1 (q̇l2 + q̇m2 ) sin ql2 + Im3 q̇l1 (q̇l2 − q̇m3 ) sin ql2
τ2 = tT2 el2 = Im2 (q̈l2 + q̈m2 ) + Im3 (q̈l2 − q̈m3 ). (D.26)

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 joint torque of the motor branch on the first level is


 
0
tm1 = Im1 ω̇m1 + ωm1 × (Im1 ωm1 ) =  0  . (D.32)
Im1 q̈m1

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

τ1,I = µ21 q̈l1 Im1 . (D.34)

Equation (D.33) shows the rotor inertias on the second or third level
do not affect the actuator torque on the first level.

D.3.2 The base reaction torques

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

t0 = 0R1 t1 + 0Rm1 tm1 (D.35)


 
((q̈l2 + q̈m2 ) sin ql1 + q̇l1 (q̇l2 + q̇m2 ) cos ql1 )Im2

 +((q̈l2 − q̈m3 ) sin ql1 + q̇l1 (q̇l2 − q̇m3 ) cos ql1 )Im3  
=  ((q̈l2 + q̈m2 ) cos ql1 − q̇l1 (q̇l2 + q̇m2 ) sin ql1 )Im2
  (D.36)

 +((q̈l2 − q̈m3 ) cos ql1 − q̇l1 (q̇l2 − q̇m3 ) sin ql1 )Im3 
−Im1 q̈m1
 
(q̈l2 (1 + µ2 ) sin ql1 + q̇l1 q̇l2 (1 + µ2 ) cos ql1 )Im2

 +((q̈l2 − µ3 q̈l3 ) sin ql1 + q̇l1 (q̇l2 − µ3 q̇l3 ) cos ql1 )Im3 

=  (q̈l2 (1 + µ2 ) cos ql1 − q̇l1 q̇l2 (1 + µ2 ) sin ql1 )Im2
 .

 +((q̈l2 − µ3 q̈l3 ) cos ql1 − q̇l1 (q̇l2 − µ3 q̇l3 ) sin ql1 )Im3 
−Im1 µ1 q̈l1
(D.37)

You might also like