modeling and control of flexible manipulators...modeling and control of flexible manipulators stig...

313
Linköping studies in science and technology. Dissertations. No. 1349 Modeling and Control of Flexible Manipulators Stig Moberg Department of Electrical Engineering Linköping University, SE–581 83 Linköping, Sweden Linköping 2010

Upload: others

Post on 01-Jun-2020

20 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Linköping studies in science and technology. Dissertations.No. 1349

Modeling and Control of FlexibleManipulators

Stig Moberg

Department of Electrical EngineeringLinköping University, SE–581 83 Linköping, Sweden

Linköping 2010

Page 2: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Cover illustration: A well-known path used by robot customers and robot man-ufacturers for evaluating the path accuracy of industrial robots (front). One ele-ment of the multivariable frequency response function magnitude for a modernindustrial robot (back).

Linköping studies in science and technology. Dissertations.No. 1349

Modeling and Control of Flexible Manipulators

Stig Moberg

[email protected] of Automatic Control

Department of Electrical EngineeringLinköping UniversitySE–581 83 Linköping

Sweden

ISBN 978-91-7393-289-9 ISSN 0345-7524

Copyright © 2010 Stig Moberg

Printed by LiU-Tryck, Linköping, Sweden 2010

Page 3: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

To Karin and John

Page 4: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 5: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Abstract

Industrial robot manipulators are general-purpose machines used for industrialautomation in order to increase productivity, flexibility, and product quality. Oth-er reasons for using industrial robots are cost saving, and elimination of hazard-ous and unpleasant work. Robot motion control is a key competence for robotmanufacturers, and the current development is focused on increasing the robotperformance, reducing the robot cost, improving safety, and introducing newfunctionalities. Therefore, there is a need to continuously improve the mathemat-ical models and control methods in order to fulfil conflicting requirements, suchas increased performance of a weight-reduced robot, with lower mechanical stiff-ness and more complicated vibration modes. One reason for this development ofthe robot mechanical structure is of course cost-reduction, but other benefits arealso obtained, such as lower environmental impact, lower power consumption,improved dexterity, and higher safety.

This thesis deals with different aspects of modeling and control of flexible, i.e.,elastic, manipulators. For an accurate description of a modern industrial manip-ulator, this thesis shows that the traditional flexible joint model, described inliterature, is not sufficient. An improved model where the elasticity is describedby a number of localized multidimensional spring-damper pairs is therefore pro-posed. This model is called the extended flexible joint model. The main contri-butions of this work are the design and analysis of identification methods, and ofinverse dynamics control methods, for the extended flexible joint model.

The proposed identification method is a frequency-domain non-linear gray-boxmethod, which is evaluated by the identification of a modern six-axes robot ma-nipulator. The identified model gives a good description of the global behaviorof this robot.

The inverse dynamics problem is discussed, and a solution methodology is pro-posed. This methodology is based on the solution of a differential algebraic equa-tion (DAE). The inverse dynamics solution is then used for feedforward controlof both a simulated manipulator and of a real robot manipulator.

The last part of this work concerns feedback control. First, a model-based non-linear feedback control (feedback linearization) is evaluated and compared to amodel-based feedforward control algorithm. Finally, two benchmark problemsfor robust feedback control of a flexible manipulator are presented and some pro-posed solutions are analyzed.

v

Page 6: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 7: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Populärvetenskaplig sammanfattning

Industrirobotar används inom många industrigrenar där bilindustrin är den stör-sta robotkunden. Andra industrier som har stora behov av robotar är halvledar-och elektronikindustrin, flygindustrin och livsmedelsindustrin. Exempel på nyatillämpningar för robotar är hantering av skärmar till platt-TV, tillverkning av sol-celler och solpaneler, samt sortering och paketering av läkemedel. Några typiskaarbetsuppgifter för robotar i traditionell tillverkningsindustri är svetsning, mål-ning, montering, laserskärning och materialbearbetning. Industrirobotar förekom-mer även inom nöjesindustrin, där de bland annat använts vid filminspelningar(Terminator Salvation), vid rock-konserter (Bon Jovi) och som avancerade nöjes-fältsattraktioner (RoboCoaster). Det finns även exempel på att industrirobotaranvänds inom sjukvården, t.ex. för rehabilitering av strokepatienter. Industrirob-otar är med andra ord universalmaskiner och bara användarens fantasi begrän-sar möjligheterna! Totalt har mer än 2 miljoner industrirobotar levererats sedanintroduktionen i slutet av 1960-talet och idag är mer än 1 miljon robotar i drift.Användning av robotar kan förstås minska antalet anställda inom industrin, menkan också skapa nya arbeten med ett bättre arbetsinnehåll och ta bort farliga, tu-nga och tråkiga arbetsuppgifter. Andra motiv för att använda robotar är ökad ochjämn produktkvalitet och en effektivare produktion till en lägre kostnad. Efter-som robotar är omprogrameringsbara får man också, i jämförelse med fast aut-omation, flexibilitet och möjligheter att ändra produktionen.

Robotens hjärna är styrsystemet, vars datorer står för robotens intelligens ochbland annat styr robotens rörelser. Den del av robotstyrsystemet som styr robotensrörelser brukar kallas rörelsestyrning, och dess huvuduppgift är att styra vrid-momenten i robotens elektriska motorer så att de rörelser som robotanvändarenprogrammerat utförs med största möjliga snabbhet och precision. Vridmomentenstyrs i sin tur genom reglering av strömmarna till de motorer som är driverrobotarmarna via växellådor. För att kunna beräkna det vridmoment som be-hövs för att röra t.ex. en svetspistol på önskat sätt används matematiska mod-eller. Denna styrprincip kallas modellbaserad framkopplingsreglering. Eftersommodeller aldrig kan vara helt perfekta, och eftersom vissa saker inte kan modell-eras, t.ex. att någonting stöter till roboten, krävs det också kunskap om robotensverkliga rörelse. En vanligt sätt att få denna kunskap är att mäta motorvinklarna.Denna mätning används av styrsystemet för att korrigera de vridmoment sommodellerna räknat fram. Denna styrprincip kallas återkopplingsreglering. Ävenåterkopplingsregleringen kan använda sig av styrsystemets modeller. Rörelses-tyrningen för en robot kan liknas vid den mänskliga hjärnans styrning av grov-och finmotoriken med hjälp av erfarenhet och instinkt (framkoppling) och sinnes-intryck (återkoppling).

En trend inom industriell robotutveckling är att robotarna görs vigare och attdess vikt minskar relativt den last som roboten ska hantera. Detta ökar robotensanvändbarhet och minskar kostnader och energiförbrukning, men det gör ocksårörelsestyrningen betydligt svårare eftersom roboten totalt sett blir vekare. De

vii

Page 8: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

viii Populärvetenskaplig sammanfattning

dominerande vekheterna (elasticiteterna) i en modern industrirobot finns hosväxellådor, lager och robotarmar, men även underlaget som roboten är monteradpå kan vara vekt. Problemet att styra en vek robot kan liknas vid att snabbt svin-ga ett metspö och att få toppen av metspöt att följa en viss bana och slutligenstanna på önskat ställe utan att svänga. En ökad intelligens i robotens rörelse-styrning är för dessa veka robotar helt avgörande för att kunna styra rörelsernamed snabbhet och precision. Detta innebär att rörelsestyrningens intelligens ock-så är avgörande för att kunna minska robotens tillverkningskostnad.

Denna avhandling handlar om modellering och reglering av moderna industri-robotar. Det som behandlas är hur man med hög noggrannhet matematiskt skallbeskriva veka robotar, hur man skall utföra mätningar på en robot för att anpassade matematiska modellerna till verkligheten och hur man använder modellernaför att med framkoppling och återkoppling kunna styra en robot. Den första de-len av avhandlingen presenterar en matematisk modell som kan beskriva elas-ticiteten i en modern industrirobot, samt beskriver metoder för att ta fram mo-dellparametrar. Att ta fram värden på okända modellparametrar kallas ofta iden-tifiering. Metoden bygger på att man styr robotens rörelser så att de vridmomentoch rörelser som registreras kan användas för att räkna ut de okända modell-parametrarna. Enkelt uttryckt så skakar man på roboten så att den avslöjar vär-dena på modellens fjädrar och dämpare. De modeller och identifieringsmetodersom redovisas i avhandlingen beskriver robotens vekhet på ett unikt bra sätt.

Den andra delen av avhandlingen beskriver hur modellen kan användas i enmodellbaserad framkopplingsreglering. Beräkningen av vridmoment, givet öns-kad robotrörelse, innebär lösandet av en differential-algebraisk ekvation (DAE).Denna ekvation är i detta fall mycket svår att lösa, och ett antal metoder föratt lösa denna DAE föreslås och analyseras. De framtagna metoderna är alltförkomplexa givet dagens datorkraft, men visar att problemet är lösbart. Metodernakan också vara en utgångspunkt för att utveckla förenklade metoder som styr-systemets datorer har kapacitet att beräkna.

Avhandlingen avslutas med en beskrivning av två specialanpassade matematiskarobotmodeller och tillhörande krav på styrsystemet. En viktig egenskap för dessamodeller är att endast motorernas vinklar mäts, vilket är det normala fallet förmoderna industrirobotar. Dessa s.k. benchmark-problem är tänkta att användasför utvärdering och utveckling av alternativa metoder för återkopplingsreglering,och att ge forskare inom området realistiska modeller med tillhörande industri-ella krav. Det första benchmark-problemet presenterades 2004 under namnetSvenska Mästerskapet i Robotreglering och attraherade deltagare från tre världs-delar. Slutsatsen av denna utvärdering är att återkopplingsregleringen måste fåtillgång till mer information för att väsentligen kunna höja prestanda över dagensnivå. Denna information kan erhållas genom mätningar av t.ex. robotarmarnaseller verktygets positioner och accelerationer. Hur flera mätningar kan användasför reglering är ett viktigt område för de kommande årens robotforskning.

Page 9: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Acknowledgments

First of all I would like to thank my supervisor Professor Svante Gunnarsson forhelping me in my research, and for always finding time for a meeting in his busyschedule.

This work has been carried out in the Automatic Control Group at LinköpingUniversity and I am very thankful to Professor Lennart Ljung for letting me jointhe group. I thank everyone in the group for the inspiring and friendly atmo-sphere they are creating. I especially thank Professor Torkel Glad for sharing hisextensive knowledge and for his excellent graduate courses, Ulla Salaneck andÅsa Karmelind for their help with many practical issues, and Dr. Johan Sjöbergfor interesting and helpful discussions. I am also thankful to all the people in thethe Automatic Control Robotics Group, for their support, and also for their firstclass research cooperation with ABB Robotics.

This work was supported by ABB Robotics, the Swedish Research Council (VR),and Vinnova, all gratefully acknowledged. At ABB Robotics, I would first of alllike to thank the former head of controller development, Jesper Bergsjö, for sup-porting my research. The support from Niclas Sjöstrand, Henrik Jerregård, Wil-helm Jacobsson, and Staffan Elfving is also thankfully acknowledged. I am alsogreatly indepted to Dr. Torgny Brogård at ABB Robotics for the support and guid-ance he is giving me. Furthermore, I would like to thank all my other friends andcolleagues at ABB Robotics for creating an atmosphere filled with great knowl-edge, but also with fun, two factors that provide a constant inspiration to mywork. Among present and former colleagues, I would especially like to mention,in order of appearance, Ingvar Jonsson, Mats Myhr, Henrik Knobel, Lars Ander-sson, Sören Quick, Dr. Steve Murphy, Professor Mikael Norrlöf, Mats Isaksson,Professor Geir Hovland, Sven Hanssen, and Hans Andersson. I would also like tothank all master-thesis students whom I have had the privilege to supervise andlearn from.

My co-authors are also greatly acknowledged, Sven Hanssen for his complete de-votion to mechatronics and, as an expert in modeling, being absolutely invaluablefor my work, Professor Svante Gunnarsson and Dr. Torgny Brogård for guidingme in my work and keeping me on the right track, Dr. Jonas Öhr who inspiredme to take up my graduate studies, and for inspiring discussions about automaticcontrol, and finally Dr. Erik Wernholt for equally inspiring discussions aboutidentification. I am also thankful to Professor Per-Olof Gutman at Israel Instituteof Technology, for teaching me QFT in an excellent graduate course, as well asbeing inspirational in many ways.

I am also very grateful to Dr. Torgny Brogårdh, Professor Svante Gunnarsson,Dr. Erik Wernholt, Professor Mikael Norrlöf, Dr. Jonas Öhr, Mats Isaksson, SvenHanssen, Johanna Wallén, Dr. Tomas Olsson, Patrik Axelsson, André CarvalhoBittencourt, and Karin Moberg for reading different versions of this thesis, orparts thereof, and giving me valuable comments and suggestions.

ix

Page 10: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

x Acknowledgments

Finally, I would like to thank my son John for programming of identification soft-ware, and for helping me with the cover design, and my wife Karin for, amongmany things, helping me with the English language, teaching me how to pro-nounce manipulator, trajectory, and accuracy, and for helping me structuringand shortening (?) my presentations. And to the both of you, as well as the restof my immediate family, thanks for the love, patience, and support you are con-stantly giving me.

Stig Moberg

Linköping, December 2010

Page 11: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Contents

Notation xvii

1 Introduction 11.1 Motivation and Problem Statement . . . . . . . . . . . . . . . . . . 11.2 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2.1 Outline of Part I . . . . . . . . . . . . . . . . . . . . . . . . . 41.2.2 Outline of Part II . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

I Overview

2 Robotics 132.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.2 Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.2.1 Kinematic Models . . . . . . . . . . . . . . . . . . . . . . . . 152.2.2 Dynamic Models . . . . . . . . . . . . . . . . . . . . . . . . 15

2.3 Motion Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.3.1 A General Motion Control System . . . . . . . . . . . . . . 162.3.2 A Model-Based Motion Control System for Position Control 19

3 Modeling of Robot Manipulators 233.1 Kinematic Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.1.1 Position Kinematics and Frame Transformations . . . . . . 233.1.2 Forward Kinematics . . . . . . . . . . . . . . . . . . . . . . 263.1.3 Inverse Kinematics . . . . . . . . . . . . . . . . . . . . . . . 263.1.4 Velocity Kinematics . . . . . . . . . . . . . . . . . . . . . . . 27

3.2 Dynamic Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.2.1 The Rigid Dynamic Model . . . . . . . . . . . . . . . . . . . 293.2.2 The Flexible Joint Dynamic Model . . . . . . . . . . . . . . 313.2.3 Nonlinear Gear Transmissions . . . . . . . . . . . . . . . . . 323.2.4 The Extended Flexible Joint Dynamic Model . . . . . . . . 353.2.5 Flexible Link Models . . . . . . . . . . . . . . . . . . . . . . 36

xi

Page 12: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

xii CONTENTS

3.3 The Kinematics and Dynamics of a Two-Link Elbow Manipulator . 38

4 Identification of Robot Manipulators 434.1 System Identification . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.1.2 Nonparametric Models . . . . . . . . . . . . . . . . . . . . . 444.1.3 A Robot Example . . . . . . . . . . . . . . . . . . . . . . . . 474.1.4 Parametric Models . . . . . . . . . . . . . . . . . . . . . . . 524.1.5 Identification of Parametric Models . . . . . . . . . . . . . . 53

4.2 Identification of Robot Manipulators . . . . . . . . . . . . . . . . . 554.2.1 Identification of Kinematic Models and Rigid Dynamic Mod-

els . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554.2.2 Identification of Elastic Dynamic Models . . . . . . . . . . 564.2.3 Identification of the Extended Flexible Joint Dynamic Model 58

4.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5 Control of Robot Manipulators 615.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615.2 Control of Rigid Manipulators . . . . . . . . . . . . . . . . . . . . . 63

5.2.1 Feedback Linearization and Feedforward Control . . . . . . 645.2.2 Other Control Methods for Rigid Manipulators . . . . . . . 67

5.3 Control of Flexible Joint Manipulators . . . . . . . . . . . . . . . . 675.3.1 Feedback Linearization and Feedforward Control . . . . . . 675.3.2 Simplified Flexible Joint Model . . . . . . . . . . . . . . . . 685.3.3 Complete Flexible Joint Model . . . . . . . . . . . . . . . . 695.3.4 State Estimation . . . . . . . . . . . . . . . . . . . . . . . . . 705.3.5 Feedback Control . . . . . . . . . . . . . . . . . . . . . . . . 715.3.6 Minimum-Time Control . . . . . . . . . . . . . . . . . . . . 745.3.7 Experimental Evaluations . . . . . . . . . . . . . . . . . . . 79

5.4 Control of Flexible Link Manipulators . . . . . . . . . . . . . . . . 805.5 Industrial Robot Control . . . . . . . . . . . . . . . . . . . . . . . . 825.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

6 Conclusion 856.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 856.2 Future Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Bibliography 91

II Publications

A Modeling and Parameter Estimation of Robot Manipulators using Ex-tended Flexible Joint Models 1051 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072 Robot Manipulator Model . . . . . . . . . . . . . . . . . . . . . . . 1093 Parameter Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . 112

Page 13: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

CONTENTS xiii

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123.2 Model Parameters and Model Structure Selection . . . . . . 1143.3 Identification of unknown parameters . . . . . . . . . . . . 1143.4 Handling of Nonlinearities and Unmodeled Dynamics . . . 117

4 A Simulation Study of the Attainable Parameter Estimation Accu-racy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

5 Experimental Model Structure Selection and Validation . . . . . . 1216 Identification Using Added Robot Arm Sensors . . . . . . . . . . . 1277 Time-Domain Validation . . . . . . . . . . . . . . . . . . . . . . . . 1308 Conclusion and Future Work . . . . . . . . . . . . . . . . . . . . . . 132Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

B Nonlinear Gray-Box Identification Using Local Models Applied to In-dustrial Robots 1391 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1412 Gray-Box Identification Using Local Models . . . . . . . . . . . . . 143

2.1 Linearized Gray-Box Model . . . . . . . . . . . . . . . . . . 1442.2 Intermediate Local Models . . . . . . . . . . . . . . . . . . . 1452.3 Proposed Identification Procedure . . . . . . . . . . . . . . 1472.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

3 FRF Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1483.1 Properties of Nonparametric FRF Estimates . . . . . . . . . 1493.2 Excitation Signals . . . . . . . . . . . . . . . . . . . . . . . . 1503.3 Optimal Operating Points . . . . . . . . . . . . . . . . . . . 151

4 Parameter Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . 1514.1 Weighted Nonlinear Least Squares . . . . . . . . . . . . . . 1514.2 Weighted Logarithmic Least Squares . . . . . . . . . . . . . 1534.3 Selection of Weights . . . . . . . . . . . . . . . . . . . . . . 1534.4 Solving the Optimization Problem . . . . . . . . . . . . . . 1544.5 Final Identification Procedure . . . . . . . . . . . . . . . . . 154

5 Application Example . . . . . . . . . . . . . . . . . . . . . . . . . . 1555.1 Modeling of Robot Manipulators . . . . . . . . . . . . . . . 1555.2 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . 1575.3 Identification of Simulated Robot . . . . . . . . . . . . . . . 1585.4 Identification of Real Robot . . . . . . . . . . . . . . . . . . 160

6 A Small Comparison with Time Domain Identification . . . . . . . 1637 Conclusions and Future Work . . . . . . . . . . . . . . . . . . . . . 165Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

C Inverse Dynamics of Flexible Manipulators 1691 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1722 The Extended Flexible Joint Model . . . . . . . . . . . . . . . . . . 1733 Inverse Dynamics for The Simplified Flexible Joint Model . . . . . 1744 Inverse Dynamics for The Extended Flexible Joint Model . . . . . . 1755 DAE Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1766 A Manipulator Model with 5 DOF . . . . . . . . . . . . . . . . . . . 179

Page 14: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

xiv CONTENTS

7 Analysis of The Inverse Dynamics DAE . . . . . . . . . . . . . . . . 1817.1 Analysis using The Kunkel and Mehrmann Hypothesis . . 1817.2 Analysis by Differentiation . . . . . . . . . . . . . . . . . . . 1817.3 Analysis by Differentiation and Introduction of Indepen-

dent Variables . . . . . . . . . . . . . . . . . . . . . . . . . . 1828 Methods for Numerical Solution of DAEs . . . . . . . . . . . . . . . 182

8.1 Solving The Original High-Index DAE . . . . . . . . . . . . 1838.2 Index Reduction and Dummy Derivatives . . . . . . . . . . 1838.3 Numerical Solution Based on Kunkel and Mehrmann’s Hy-

pothesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1849 Numerical Solution of The Inverse Dynamics . . . . . . . . . . . . 184

9.1 Initial conditions and trajectory generation . . . . . . . . . 1849.2 Numerical Solution of The Inverse Dynamics for The 5 DOF

Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18510 Inverse Dynamics for Non-Minimum Phase Systems . . . . . . . . 188

10.1 A Discretized DAE Optimization Solver . . . . . . . . . . . 18810.2 Simulation with 5 DOF Model using The Discretized DAE

Optimization Solver . . . . . . . . . . . . . . . . . . . . . . 18910.3 A Continuous DAE Optimization Solver . . . . . . . . . . . 19010.4 Simulation using The Continuous DAE Optimization Solver 192

11 Conclusion, Discussion, and Future Work . . . . . . . . . . . . . . 19312 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . 194Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

D Inverse Dynamics of Robot Manipulators Using Extended FlexibleJoint Models 1991 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2022 The Extended Flexible Joint Model . . . . . . . . . . . . . . . . . . 203

2.1 General Description . . . . . . . . . . . . . . . . . . . . . . . 2032.2 A Manipulator Model with 5 DOF . . . . . . . . . . . . . . 206

3 Inverse Dynamics For The Extended Flexible Joint Model . . . . . 2084 Numerical Solution of the Inverse Dynamics . . . . . . . . . . . . . 211

4.1 Minimum Phase Dynamics . . . . . . . . . . . . . . . . . . . 2114.2 Non-Minimum Phase Dynamics . . . . . . . . . . . . . . . . 212

5 Simulation Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2145.1 Initial Conditions and Trajectory Generation . . . . . . . . 2145.2 Simulation of Minimum Phase System . . . . . . . . . . . . 2145.3 Simulation of Non-Minimum Phase System . . . . . . . . . 217

6 Controllability and Solvability . . . . . . . . . . . . . . . . . . . . . 2207 Experimental Evaluation . . . . . . . . . . . . . . . . . . . . . . . . 2228 Conclusion, Discussion, and Future Work . . . . . . . . . . . . . . 225Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227

E On Feedback Linearization for Robust Tracking Control of FlexibleJoint Robots 2311 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

Page 15: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

CONTENTS xv

2 Flexible Joint Robot Model . . . . . . . . . . . . . . . . . . . . . . . 2353 Feedback Linearization and Feedforward Control of a Flexible Joint

Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2364 Simulation Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

4.1 Nominal Performance . . . . . . . . . . . . . . . . . . . . . 2404.2 Robust Performance . . . . . . . . . . . . . . . . . . . . . . 2424.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

F A Benchmark Problem for Robust Feedback Control of a Flexible Ma-nipulator 2491 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2512 Original Control Problem . . . . . . . . . . . . . . . . . . . . . . . 2523 The Benchmark Control Problem . . . . . . . . . . . . . . . . . . . 2524 Model Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

4.1 Frequency Response Estimation And Parameter Tuning . . 2564.2 Disturbance Tests . . . . . . . . . . . . . . . . . . . . . . . . 2574.3 Stability Tests . . . . . . . . . . . . . . . . . . . . . . . . . . 257

5 The Control Design Task . . . . . . . . . . . . . . . . . . . . . . . . 2585.1 Load And Measurement Disturbances . . . . . . . . . . . . 2585.2 Parameter Variations And Model Sets . . . . . . . . . . . . . 2595.3 The Design Task . . . . . . . . . . . . . . . . . . . . . . . . . 2625.4 Performance Measures . . . . . . . . . . . . . . . . . . . . . 2635.5 Implementation and Specifications . . . . . . . . . . . . . . 264

6 Suggested Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . 2657 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2698 Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270

G A Benchmark Problem for Robust Control of a Multivariable Nonlin-ear Flexible Manipulator 2711 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2732 Problem Description . . . . . . . . . . . . . . . . . . . . . . . . . . 2743 The Manipulator Model . . . . . . . . . . . . . . . . . . . . . . . . . 2754 The Benchmark System . . . . . . . . . . . . . . . . . . . . . . . . . 2795 Model Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2806 The Design Task: Performance Specification and Cost Function . . 2837 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2888 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . 288Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289

Page 16: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 17: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Notation

The same symbol can sometimes be used for different purposes. The main usesof a symbol are listed here, any deviations are explained in the text. Vectors arein general column vectors.

Symbols and Operators

Notation Meaning

Z The set of integersN The set of natural numbersR The set of real numbersC The set of complex numberst Time variables Laplace transform variablez z-transform variableq Shift operator, qu(t) = u(t + Ts)q−1 Backwards shift operator, q−1u(t) = u(t − Ts)q Vector of motor and joint angular positionsqm Vector of motor angular positionsqa Vector of joint angular positionsqg Vector of actuated joint angular positionsqe Vector of non-actuated joint angular positionsτ Torque vectorτm Motor torque vectorτa Joint torque vectorτg Gearbox torque vector (actuated joints)τe Constraint torque vector (non-actuated joints)p Time derivative of a variable pp[n] The nth time derivative of a variable p, d

npdtn

X Cartesian position and orientation of robot tool (TCP)Z Cartesian position and orientation of robot tool (TCP)

xvii

Page 18: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

xviii Notation

Symbols and Operators (contd.)

Notation Meaning

u(t) Vector of input signals at time ty(t) Vector of (measured) output signals at time tz(t) Vector of (controlled) output signals at time tx(t) State vector at time tpd Reference (desired) value for a variable pΓ (q) Forward kinematicsJ(q) Velocity Jacobian ∂Γ (q)

∂q

M(q) Inertia matrixMm(q) Inertia matrix of motorsMa(q) Inertia matrix of links (joints)c(q, q) Vector of Coriolis and centripetal torquesg(q) Vector of gravity torquesm Mass of a rigid bodyξ Center of gravity (mass) of a rigid bodyJ Inertia tensor of a rigid bodyK Stiffness matrixD Damping matrixk Spring constant, i.e., one element of Kd Damping constant, i.e., one element of Df (q) Friction torqueη Gear ratio matrixΥa Number of actuated jointsΥna Number of non-actuated jointsTs Sample timeθ Vector of model parametersθ Estimated vector of model parameters

y(t|t − Ts; θ) A model’s prediction of y(t) given θ and data up totime t − Ts

ε(t, θ) Prediction error y(t) − y(t|t − Ts; θ)arg minx f (x) The value of x that minimizes f (x)

Q Number of operating pointsN Number of samplesM Number of experiments (or blocks of experiments for

MIMO systems)P Number of periodsNf Number of excited frequenciesNp Number of samples in one periodnu Number of inputsny Number of outputsσ Standard deviation

Page 19: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Notation xix

Symbols and Operators (contd.)

Notation Meaning

U (ωk) DFT of u(t)Y (ωk) DFT of y(t)

G(i)k

Non-parametric (estimated) FRF in operating point iat frequency k

G(i)k,θ

Parametric (model) FRF in operating point i at fre-quency k using model parameters θ

W(i)k

Weighting matrix in operating point i at frequency kvec(B) Stacks the columns bi of a matrix B into a column vec-

tor = [bT1 bT2 . . . b

Tn ]T

VN (θ) Cost function or prediction error criterionθN Parameter estimatorθ Position of robot tool in inverse dynamics papersν Differential index of DAE

diag(a) A diagonal matrix with vector a on the diagonal∈ Belongs to|z| Absolute value of complex variable z

arg(z) Argument or phase of complex variable z∂G(x)∂x

Partial derivative of G with respect to x. Also denotedGx.

detA Determinant of matrix ATrA Trace of matrix AAT Transpose of matrix AA−1 Inverse of matrix AAH Complex conjugate transpose of matrix A

Abbreviations

Abbreviation Meaning

e.g. for examplei.e. in other words

BDF Backwards Differentiation FormulaCAD Computer Aided DesignDAE Differential Algebraic EquationDFT Discrete Fourier TransformDOF Degrees Of FreedomEE Elastic Element

Page 20: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

xx Notation

Abbreviations (contd.)

Abbreviation Meaning

ETFE Empirical Transfer Function EstimateFDB FeeDBackFEM Finite Element ModelFF FeedForward

FFT Fast Fourier TransformFFW FeedForWardFL Feedback Linearization

FRF Frequency Response FunctionIRB Industrial RoBot, used in names for ABB robotsILC Iterative Learning ControlLLS Logarithmic Least SquaresLQ Linear Quadratic

MIMO Multiple Input Multiple OutputMP Minimum PhaseNLP NonLinear ProgramNLS Nonlinear Least SquaresNMP Non-Minimum PhaseODE Ordinary Differential EquationPDE Partial Differential EquationPEM Prediction Error MethodPD Proportional and DerivativePI Proportional and Integral

PID Proportional, Integral, and DerivativeQFT Quantitative Feedback TheoryRB Rigid Body

SISO Single Input Single OutputTCP Tool Center Point

Page 21: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

1Introduction

Models of robot manipulators are important components of a robot motion con-trol system. The control algorithms and the trajectory generation algorithms aretwo equally important components. This thesis deals with some aspects of mod-eling and control of flexible manipulators. Here, flexible should be interpreted aselastic, and a manipulator should be interpreted as an industrial robot althoughthe results to some extent can be applied to other types of manipulators and me-chanical systems.

1.1 Motivation and Problem Statement

Robot motion control is a key competence for robot manufacturers, and cur-rent development is focused on increasing the robot performance, reducing therobot cost, improving safety, and introducing new functionalities as describedin Brogårdh (2007, 2009). There is a need to continuously improve the modelsand control methods in order to fulfil all conflicting requirements, for example,increased performance for a robot with lower weight, and thus lower mechanicalstiffness and more complicated vibration modes. One reason for this develop-ment of the robot mechanical structure is of course cost reduction, but other ben-efits are lower power consumption, as well as improved dexterity, safety issues,and lower environmental impact. The need of cost reduction can result in the useof optimized robot components, which usually have larger individual variation,e.g., variation of gearbox stiffness or in the parameters describing the mechanicalarm. Cost reduction sometimes also results in a higher level of disturbances andnonlinearities in some of the components, e.g., in the actuators or in the sensors.The development of industrials robots is illustrated in Figure 1.1 which showsthat the robot weight to payload ratio has been reduced 3 times since the 1980’s.

1

Page 22: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 1 Introduction

Figure 1.1: The development of large ABB robots. 1984: IRB90 1450 kgand payload 90 kg (16:1), 1991: IRB6000 1750 kg and payload 120 kg(15:1), 1997: IRB6400R 2100 kg and payload 200 kg (10.5:1), 2007: IRB66401300 kg and payload 235 kg (5.5:1)

An industrial robot is a general purpose machine for industrial automation, andeven though the requirements of a certain application can be precisely formu-lated, there are no limits in what the robot users want with respect to the desir-able performance and functionality of the motion control of a robot. The requiredmotion control performance depends on the application. The better performance,the more applications can be subject to automation by a specific robot model.Some requirement examples are:

• High path accuracy in continuous applications (e.g., laser welding, lasercutting, dispensing, or water-jet cutting).

• High speed accuracy in continuous applications (e.g., painting or dispens-ing).

• Low cycle time (high speed and acceleration) in discrete applications (e.g.,material handling).

• Small overshoots and a short settling time in discrete process applications(e.g., spot welding).

• High control stiffness in contact applications (e.g., machining).

For weight- and cost optimized industrial manipulators, the requirements abovecan only be handled by increased computational intelligence, i.e., improved mo-tion control. Motion control of industrial robot manipulators is a challengingtask, which has been studied by academic and industrial researchers for morethan three decades. Some results from the academic research have been success-fully implemented in real industrial applications, while other results are far awayfrom being relevant to the industrial reality. To some extent, the development ofmotion control algorithms has followed two separate routes, one by academic

Page 23: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

1.1 Motivation and Problem Statement 3

researchers and one by robot manufacturers, unfortunately with only minor in-teraction.

The situation can partly be explained by the fact that the motion control algo-rithms used in the industry sometimes are regarded as trade secrets. Due tothe tough competitive situation among robot manufacturers, the algorithms areseldom published. Another explanation is that the academic robot control re-searchers often apply advanced mathematics on a few selected aspects of rela-tively small systems, whereas the industrial robot researchers and developersmust deal with all significant aspects of a complex system where the proposedadvanced mathematics often cannot be applied. Furthermore, the problems thatthe robot industry sometimes present might include too much engineering as-pects to be attractive for the academic community. Industrial robot research anddevelopment must balance short term against long term activities. Typical timeconstants from start of research to the final product, in the area of the motioncontrol technology discussed in this work, can be between 5 and 10 years, andsometimes even longer. Thus, long-term research collaborations between indus-try and academia should be possible, given that the intellectual property aspectscan be handled.

The problems of how to get industrial-relevant academic research results, andof how to obtain a close collaboration between universities and industry, are notunique for robotics motion control. The existence of a gap between the academicresearch and industrial practise in the area of automatic control is often discussed.One balanced description on the subject can be found in Bernstein (1999), whereit is pointed out that the control practitioners must articulate their needs to theresearch community, and that motivating the researchers with problems fromreal applications "can have a significant impact on increasing the relevance ofacademic research to engineering practise". Another quote from Bernstein (1999)is "I personally believe that the gap on the whole is large and warrants serious in-trospection by the research community". The problem is somewhat provocativelydescribed in Ridgely and McFarland (1999) as, freely quoted, "what the industryin most cases do not want is stability proofs, guarantees of convergence and otherpurely analytical developments based on idealized and unrealistic assumptions".Another view on the subject is that "the much debated theory-applications gap isa misleading term that overlooks the complex interplay between physics, inven-tion and implementation, on the one side, and theoretical abstractions, models,and analytical designs, on the other side" (Kokotovic and Arcak, 2001). The needfor a balance between theory and practise is expressed in Åström (1994), and fi-nally a quote from Brogårdh (2007): "industrial robot development has for surenot reached its limits, and there is still a lot of work to be done to bridge the gapbetween the academic research and industrial development".

It is certainly true that, as in the science of physics, research on both "theoreti-cal control" and "experimental control" is needed. The question is whether theproportions need adjustment. This subject is certainly an important one, as auto-matic control can have considerable impact on many industrial processes as well

Page 24: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 1 Introduction

as on other areas, affecting both environmental and economical aspects. It is myhope that this work can help bridging the gap, as well as moving the frontierssomewhat in the area of robotics motion control.

This thesis concerns modeling and control of flexible manipulators. Most publi-cations concerning flexible (elastic) robot manipulators only consider elasticity inthe rotational direction. If the gear elasticity is considered we get the flexible jointmodel, and if link deformation restricted to a plane perpendicular to the preced-ing joint is included in the model we get the flexible link model. These restrictedmodels simplify the control design but limit the attainable performance. Moti-vated by the trend of developing light-weight robots, a new model, here calledthe extended flexible joint model, is proposed for use in motion control systemsas well as in robot design and performance simulation. The use of this extendedmodel is the main theme of this thesis, and the following aspects are treated:

• Identification of the unknown elastic model parameters, applied to a realsix-axes industrial robot.

• Inverse dynamics to enable high-accuracy path tracking by the use of feed-forward control.

The remainder of this work deals with feedback control. For flexible joint models,feedback control for path tracking is investigated by comparing nonlinear feed-back control to nonlinear feedforward control. Finally, two benchmark problemson robust feedback control are presented together with some suggested solutions.

1.2 Outline

Part I contains an overview of robotics, modeling, identification, and control. PartII consists of a collection of edited papers.

1.2.1 Outline of Part I

Chapter 2 gives an introduction to robotics in general, and the motion controlproblem in particular. Modeling of robot manipulators is described in Chapter3, and some system identification methods that are relevant for this thesis aredescribed in Chapter 4. A survey on control methods used in robotics can befound in Chapter 5. Finally, Chapter 6 provides a summary and some ideas forfuture research.

1.2.2 Outline of Part II

This part consists of a collection of edited papers, introduced below. Summaryand background of each paper are given, together with the contribution of theauthor of this thesis.

Page 25: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

1.2 Outline 5

Paper A: Modeling and Parameter Estimation of Robot Manipulators usingExtended Flexible Joint Models

S. Moberg, E. Wernholt, S. Hanssen, and T. Brogårdh. Modeling andparameter estimation of robot manipulators using extended flexiblejoint models. 2010. Submitted to Journal of Dynamic Systems Mea-surement and Control, Transactions of the ASME.

Summary: This paper considers the problem of dynamic modeling and identifica-tion of robot manipulators with respect to their elasticities. The so-called flexiblejoint model, modeling only the torsional gearbox elasticity, is shown to be insuf-ficient for modeling a modern industrial manipulator accurately. The extendedflexible joint model, where non-actuated joints are added to model the elasticityof the links and bearings, is used to improve the model accuracy. The unknownelasticity parameters are estimated using a frequency domain gray-box identifi-cation method. A detailed description of this method is provided in Paper B.Similar elasticity model parameters are obtained when using two different out-put variables for the identification, the motor position and the tool accelerationrespectively. A brief time-domain model validation is also presented.

Background and contribution: The basic idea of extending the flexible jointmodel for a better description of modern light-weight manipulators is mainlydue to the author and Sven Hanssen. These two also performed the first promis-ing attempt to identify the model by use of frequency-domain methods. Theresearch was continued by the authors of Öhr et al. (2006) where the use of thenonparametric frequency response function (FRF) for the estimation of the para-metric robot model was first described. Erik Wernholt has continued to improveand analyze various aspects of the identification procedure as described in Wern-holt (2007). The improvements of the identification procedure presented in thispaper is due to the author and Erik Wernholt, the model equations are derived bySven Hanssen, and the simulated and experimental evaluation were performedby the author. Torgny Brogårdh has throughout this whole work served as a mostvaluable discussion partner.

Paper B: Nonlinear Gray-Box Identification Using Local Models Applied toIndustrial Robots

E. Wernholt and S. Moberg. Nonlinear gray-box identification usinglocal models applied to industrial robots. Automatica, 2010. Acceptedfor publication.

Summary: This paper studies the problem of estimating unknown parameters innonlinear gray-box models that may be multivariable, nonlinear, unstable, andresonant at the same time. A straightforward use of time-domain predication-error methods for this type of problem easily ends up in a large and numericallystiff optimization problem. An identification procedure, that uses intermediatelocal models that allow for data compression and a less complex optimizationproblem, is therefore proposed. The procedure is illustrated by estimating elastic-

Page 26: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 1 Introduction

ity parameters in a six-axes industrial robot. Different parameter estimators arecompared and experimental results show the usefulness of the proposed identifi-cation procedure. A brief example of time-domain identification is also presentedand compared to the suggested frequency-domain method.

Background and contribution: The basic idea of using the nonparametric FRFfor the estimation of the parametric robot model is due to the author and SvenHanssen as previously described. The research was continued by the authors ofÖhr et al. (2006). Erik Wernholt has continued to improve and analyze variousaspects of the identification procedure as described in Wernholt (2007) where theauthor has served as a discussion partner. The first theoretical part of this paperis mainly due to Erik Wernholt, whereas the second part with simulation andexperimental results is mainly due to the author. The time-domain example isalso performed by the author.

Paper C: Inverse Dynamics of Flexible Manipulators

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators.In Multibody Dynamics 2009, Warsaw, Poland, July 2009.

Summary: This paper investigates different methods for the inverse dynamicsof the extended flexible joint model. The inverse dynamics solution is neededfor feedforward control, which is often used for high-precision robot manipula-tor control. The inverse dynamics of the extended flexible joint model can becomputed as the solution of a high-index differential algebraic equation (DAE)and different solvers are suggested and evaluated. The inverse dynamics can besolved as an initial-value problem if the zero dynamics of the system is stable, i.e.,minimum phase. For unstable zero dynamics, an optimization approach basedon the discretized DAE is suggested. An collocation method, using a continuousDAE formulation, is also suggested and evaluated. The solvers are illustrated bysimulation, using a manipulator with two actuators and five degrees-of-freedom.

Background and contribution: The DAE formulation of the inverse dynamicsproblem was the result of a discussion between the author and Sven Hanssen.Sven Hanssen derived the simulation model, and the author has made the con-trol research and implemented the DAE solvers that are used. Sven Hanssen hasbeen a discussion partner for this part of the work and also derived and analyzedalternative solvers together with the author.

Paper D: Inverse Dynamics of Robot Manipulators Using Extended FlexibleJoint Models

S. Moberg and S. Hanssen. Inverse dynamics of robot manipulatorsusing extended flexible joint models. 2010. Submitted to IEEE Trans-actions on Robotics (under revision).

Summary: This article is based on Paper C. The suggested concept for inversedynamics is experimentally evaluated using an industrial robot manipulator. In

Page 27: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

1.2 Outline 7

this experimental evaluation, an identified model is used in the inverse dynamicscomputation. Simulations using the same identified model are in good agreementwith the experimental results. The conclusion is that the extended flexible jointinverse dynamics method can improve the accuracy for manipulators with signif-icant elasticities, that cannot be described by the flexible joint model.

Background and contribution: The background and contribution concerningthe problem formulation and the suggested solvers are as described previouslyfor Paper C. The experimental evaluation was performed by the author and SvenHanssen.

Paper E: On Feedback Linearization for Robust Tracking Control of FlexibleJoint Robots

S. Moberg and S. Hanssen. On feedback linearization for robust track-ing control of flexible joint robots. In Proc. 17th IFAC World Congress,Seoul, Korea, July 2008.

Summary: Feedback linearization is one of the major academic approaches forcontrolling flexible joint robots. This contribution investigates the discrete-timeimplementation of the feedback linearization approach on a realistic three-axisrobot model. A simulation study of high speed tracking with model uncertaintyis performed. The feedback linearization approach is compared to a feedforwardapproach.

Background and contribution: The feedback linearization for flexible joint robotswas first presented in Spong (1987). After attending a workshop on nonlinearcontrol of flexible joint robots, the author and Sven Hanssen discussed the lackof (published) evaluations of this control concept. This paper uses a realistic ma-nipulator model and realistic requirements to evaluate the proposed concept ina simulation study. The author was responsible for the implementation of thecontrol schemes, control analysis and performance evaluation. Sven Hanssenderived the simulation model and the model derivatives, needed for the imple-mentation of the control algorithms.

Paper F: A Benchmark Problem for Robust Feedback Control of a FlexibleManipulator

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for ro-bust feedback control of a flexible manipulator. IEEE Transactions onControl Systems Technology, 17(6):1398–1405, November 2009.

Summary: This paper describes a benchmark problem for robust feedback con-trol of a flexible manipulator together with some proposed and tested solutions.The system to be controlled is a four-mass system subject to input saturation, non-linear gear elasticity, model uncertainties, and load disturbances affecting boththe motor and the arm. The system should be controlled by a discrete-time con-troller that optimizes the performance for given robustness requirements.

Page 28: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

8 1 Introduction

Background and contribution: The benchmark problem was first presented asSwedish Open Championships in Robot Control (Moberg and Öhr, 2004, 2005)where the author formulated the problem together with Jonas Öhr. The analysisof the solutions, as well as the experimental validation of the benchmark model,were performed mainly by the author. The final paper as presented in this thesisalso includes Svante Gunnarsson as a valuable discussion partner and co-author.

Paper G: A Benchmark Problem for Robust Control of a Multivariable NonlinearFlexible Manipulator

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem forrobust control of a multivariable nonlinear flexible manipulator. InProc. 17th IFAC World Congress, Seoul, Korea, July 2008.

Summary: This paper describes a benchmark problem for robust feedback con-trol of a two link manipulator with elastic gear transmissions. The gear trans-mission is described by nonlinear friction and elasticity. The system is uncertainaccording to a parametric uncertainty description and due to uncertain distur-bances affecting both the motors and the tool. The system should be controlledby a discrete-time controller that optimizes performance for given robustness re-quirements. The proposed model is validated by experiments on a real industrialmanipulator.

Background and contribution: This benchmark problem is a continuation of theproblem presented in Paper F, using a more complex and realistic model, andwith a more challenging design task. The author contributed to the majority ofthis work with Jonas Öhr and Svante Gunnarsson as valuable discussion partners.

Related Publications

Publications of related interest not included in this thesis, where the author ofthis thesis has contributed:

T. Brogårdh, S. Moberg, S. Elfving, I. Jonsson, and F. Skantze. Methodfor supervision of the movement control of a manipulator. US Patent6218801, April 2001. URL http://www.patentstorm.us/patents/6218801.

T. Brogårdh and S. Moberg. Method for determining load parametersfor a manipulator. US Patent 6343243, Januari 2002. URL http://www.patentstorm.us/patents/6343243.html.

G.E. Hovland, S. Hanssen, E. Gallestey, S. Moberg, T. Brogårdh, S. Gun-narsson, and M. Isaksson. Nonlinear identification of backlash inrobot transmissions. In Proc. 33rd ISR (International Symposium onRobotics), Stockholm, Sweden, October 2002.

S. Moberg and J. Öhr. Robust control of a flexible manipulator arm: Abenchmark problem. Prague, Czech Republic, 2005. 16th IFAC WorldCongress.

Page 29: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

1.3 Contributions 9

S. Gunnarsson, M. Norlöf, G. Hovland, U. Carlsson, T. Brogårdh, T. Svens-son, and S. Moberg. Pathcorrection for an industrial robot. US Patent7130718, October 2006. URL http://www.patentstorm.us/patents/7130718.html.

J. Öhr, S. Moberg, E. Wernholt, S. Hanssen, J. Pettersson, S. Persson,and S. Sander-Tavallaey. Identification of flexibility parameters of 6-axis industrial manipulator models. In Proc. ISMA2006 InternationalConference on Noise and Vibration Engineering, pages 3305–3314,Leuven, Belgium, September 2006.

S. Moberg and S. Hanssen. A DAE approach to feedforward control offlexible manipulators. In Proc. 2007 IEEE International Conferenceon Robotics and Automation, pages 3439–3444, Roma, Italy, April2007.

E. Wernholt and S. Moberg. Frequency-domain gray-box identifica-tion of industrial robots. In 17th IFAC World Congress, pages 15372–15380, Seoul, Korea, July 2008a.

E. Wernholt and S. Moberg. Experimental comparison of methods formultivariable frequency response function estimation. In 17th IFACWorld Congress, pages 15359–15366, Seoul, Korea, July 2008b.

M. Björkman, T. Brogårdh, S. Hanssen, S.-E. Lindström, S. Moberg,and M. Norrlöf. A new concept for motion control of industrial robots.In Proceedings of 17th IFAC World Congress, 2008, Seoul, Korea, July2008.

R. Henriksson, M. Norrlöf, S. Moberg, E. Wernholt, and T. Schön. Ex-perimental comparison of observers for tool position estimation of in-dustrial robots. In Proceedings of 48th IEEE Conference on Decisionand Control, pages 8065–8070, Shanghai, China, December 2009.

1.3 Contributions

The main contributions of the thesis are:

• The extended flexible joint model presented in Öhr et al. (2006) and Mobergand Hanssen (2007) and validated in Paper A.

• The identification procedure introduced in Öhr et al. (2006) and furtherdescribed in Papers A and B. The procedure has been successfully appliedto experimental data from a six-axes industrial robot.

• The DAE formulation of the inverse dynamics problem for the extendedflexible joint model as described in Paper C and D.

• The solution method for the inverse dynamics problem of the extended flex-ible joint model, and its application on a small but realistic robot model.

Page 30: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

10 1 Introduction

This is also described in Papers C and D.

• The experimental evaluation of the inverse dynamics method as describedin Paper D.

• The evaluation of feedback linearization as described in Paper E.

• The formulation and evaluation of a relevant industrial benchmark prob-lem as described in Paper F.

• The formulation of a second relevant industrial benchmark problem as de-scribed in Paper G. Solutions to the problem are planned to be published inthe future. The model is available for download at Moberg (2007), and hasalso been used by other researchers for various purposes.

Page 31: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Part I

Overview

Page 32: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 33: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2Robotics

Robotics involves many technical and scientific disciplines, for example, sensor-and vision technologies, computer architecture, drive systems and motor tech-nologies, real time systems, automatic control, modeling, mechanical design, ap-plied mathematics, man-machine interaction, system communication, and com-puter languages. This chapter gives a short introduction describing the parts thatare relevant for this work, i.e., modeling and motion control.

2.1 Introduction

Throughout this work, the term robot is used to denote an industrial robot, i.e.,a manipulator arm, mainly used for manufacturing in industry. Some examplesof such robots are shown in Figure 2.1. The first industrial robots were installedin the 1960s and the number of operational industrial robots at the end of 2009was in the range of 1, 021, 000 to 1, 300, 000 units (IFR, 2010). Robots are used fora variety of tasks, for example, welding, painting, cutting, dispensing, materialhandling, machine tending, machining, and assembly. There are many types ofmechanical robot structures such as the parallel arm robot and the articulatedrobot, which can be of elbow or parallel linkage type. Examples of these threerobot structures are shown in Figure 2.2. Further examples of mechanical robotstructures (also called kinematic structures) can, e.g., be found in Spong et al.(2006). In the following, the presentation will be restricted to the, at present,most common type of industrial robot which is the six-axes articulated robot ofelbow type. This robot, or manipulator arm, consists of seven serially mountedbodies connected by six revolute joints. The bodies are numbered from 0 to 6, andbody 1 to 6 are also called links. The links and the joints are numbered from 1 to6. The links are actuated by electrical motors via gear transmissions (gearboxes),

13

Page 34: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

14 2 Robotics

Figure 2.1: ABB robot family and the IRC5 controller.

Figure 2.2: Three examples of robot structures from ABB. The parallel armrobot IRB340 (left), the parallel linkage robot IRB4400 (middle), and theelbow robot IRB4600 (right).

Page 35: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2.2 Models 15

also named speed reducers. The motor positions are measured by sensors. Thefirst body is connected to the base, and the last body (link) is connected to an endeffector, i.e., a tool. With six actuated links, both the position and the orientationof the end effector can be controlled. The first three joints and links are oftendenoted main axes, and the last three are denoted wrist axes.

2.2 Models

A description of the most important models used in robotics can be found in, e.g.,Craig (1989), Spong et al. (2006), Siciliano and Khatib (2008), and Siciliano et al.(2010). Here follows a short overview.

2.2.1 Kinematic Models

The kinematic models describe the robot motions without regard to the forcesthat cause the motions, i.e, all time-based and geometrical properties of the mo-tion. The kinematics relate the joint angular position vector q to the position pand orientation φ of the tool frame attached to the tool and positioned in the toolcenter point (TCP). One example of a kinematic relation is the forward kinemat-ics where the tool frame position and orientation are described as a function ofthe joint angular position vector as

X = Γ (q), (2.1)

where X is the tool frame position and orientation, also named pose, defined as

X =[pφ

], (2.2)

and Γ ( · ) is a nonlinear function. The tool frame is described in a reference frame,i.e., a coordinate system, attached to the base of the robot, called base frame. De-scribing the manipulator pose by the joint angles is often denoted a joint spacerepresentation of the robot state while describing it by the tool position and ori-entation is denoted a task space representation which is usually implementedin Cartesian coordinates. The described frames and the joint positions are illus-trated in Figure 2.3.

2.2.2 Dynamic Models

Dynamic robot models describe the relations between the motions of the robotand the forces that cause the motions. The models are most often formulated injoint space. One example of a dynamic model is the model of a rigid manipulatorwhich can be expressed as

τ = M(q)q + c(q, q) + g(q) + f (q), (2.3)

where τ is the actuator torque vector, M(q) is the inertia matrix, c(q, q) is a vectorof Coriolis and centripetal torques, g(q) is the gravity torque vector, and f (q) isthe vector of, possibly nonlinear, joint friction torques. The rigid body inertial

Page 36: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

16 2 Robotics

Figure 2.3: Base frame, tool frame, and joint positions illustrated on a robotequipped with a spotwelding gun.

parameters for each link are the mass, the center of mass, and the inertia. Theactuator inertia and mass are added to the corresponding link parameters.

The inverse dynamics problem is useful for control, and consists of computingthe required actuator torques as a function of the joint position vector q and itstime derivatives, q and q. For the rigid model (2.3), this involves algebraic compu-tations only. For simulation of the manipulator movement, the direct dynamicsproblem must be solved. The differential equation (2.3) is then solved with theactuator torques as input.

2.3 Motion Control

The motion control of a modern industrial manipulator is a complex task. Adescription of the current status of industrial robot motion control can be foundin Brogårdh (2007, 2009), and references therein.

2.3.1 A General Motion Control System

A general robot motion control system, capable of synchronously controlling nrobot manipulators, is illustrated in Figure 2.4. The system consists of the follow-ing components:

Robot 1, Robot 2, ..., Robot n The robot manipulators with actuators and sen-sors included. The manipulators can be in contact with the environment,

Page 37: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2.3 Motion Control 17

Figure 2.4: A general robotics motion control system.

e.g., in assembly tasks, or operate in free space without contact with theenvironment, e.g., in laser cutting. The sensors can be of different types.A first type of sensors generates sensor readings ya which are used by thefeedback controller. Examples of such sensors are encoders or resolversmeasuring actuator positions, accelerometers measuring link and tool ac-celeration, force sensors1 measuring the contact forces acting on the endeffector, torque sensors measuring the joint torques on the link side of thegearbox, and joint encoders measuring the joint positions. The second typeof sensor information, yb, can be exemplified by conveyor positions mea-sured by encoders, or the position of an arc-welding gun relative to thedesired welding path as measured by a tracking sensor. The second type ofsensors are used by the trajectory interpolator and the controller to adaptthe robot motion to the measured path. A third type of sensors are pri-marily used by the trajectory planner, e.g., in the case of a vision systemspecifying the position of an object to be gripped by the robot. Some of therobots in Figure 2.4 could also be replaced by multi- or single-axis position-ers used for, e.g., rotating the object in an arc-welding application.

Controller 1, Controller 2, ..., Controller n Generate control signals u(t) for theactuators with the references Xd(t) and the sensor readings ya(t) as inputs.The controller can operate in position control mode for point-to-point mo-tion in, e.g., a spot-welding application, or continuous path tracking in,e.g., a dispensing application. When the robot is in contact with the en-vironment, the controller can still be in position control mode, e.g., in pre-machining applications. Some contact applications require a compliant be-havior of the robot due to uncertain geometry or process requirements. This

1The sensor is called force sensor for simplicity, even though both forces and torques are normallymeasured.

Page 38: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

18 2 Robotics

requires a controller in compliance control mode for some directions, andposition control mode for other directions in task space. Examples of theseapplications, using compliance control, are assembly, machine tending, andproduct testing. In other applications as friction stir welding, grinding, andpolishing, the contact force must be controlled in a specific direction whileposition or speed control is performed in the other directions. Complianceand force control can be accomplished with or without the use of force sen-sors, depending on the performance requirements.

Trajectory Interpolator The task of the trajectory interpolator is to compute con-troller references Xd(t) that follow the programmed trajectory and whichsimultaneously are adapted to the dynamic performance of the robot. Theinput from the trajectory planner is the motion specification, e.g., motioncommands specifying a series of end effector positions xi along with desiredend effector speeds vi . Sensor readings yb(t) and yc(t) can also be used bythe trajectory interpolator. The trajectory Xd(t) contains positional informa-tion for all n robots, and can be expressed in Cartesian or joint space.

Trajectory Planner Specifies the desired motion of the robot end effector. Thiscan be done manually by a robot programmer who specifies the motion ina robot programming language with a series of motion commands. Theprogram can be taught by moving the robot to the desired positions andcommand the robot to read the actual positions. The motion commands canalso be generated by an off-line programming system. The desired motioncan also be expressed on a higher level by task programming as, e.g., byan instruction as picking all objects on a moving conveyor, and placing theobjects in desired locations. The positions for picking the objects is thenspecified by a vision system.

Besides the basic motion control functionality as described in Figure 2.4, therobot motion control also includes, for example, the following functionality:

Absolute Accuracy Identification of the link parameters for an extended kine-matic model in order to obtain high volumetric accuracy. This is useful foroff-line programming and for fast robot replacement (Brogårdh, 2007).

ILC Iterative learning control for improved path accuracy, used, e.g., for highprecision laser cutting (Norrlöf, 2000; Gunnarsson et al., 2006).

Load Identification Identification of user tool and load to improve the dynamicmodel accuracy for high control performance, and to avoid overload of therobot mechanics (Brogårdh and Moberg, 2002).

Collision Detection Model based collision detection to save equipment at acci-dental robot movements, for example during programming (Brogårdh et al.,2001).

Diagnosis Diagnosis of the status and behavior of, e.g., gearboxes and mechani-cal brakes.

Page 39: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2.3 Motion Control 19

Figure 2.5: A simplified robotics motion control system.

Special Control Modes One example is emergency stop control modes wherethe mechanical brakes and the motors are used simultaneously to stop therobot. Another example from ABB is WristMove, where the robot accuracyin cutting applications is increased by moving the wrist axes only (Jerregårdand Pihl, 2007).

Supervision Supervision of, e.g., position and speed for safety reasons, and forsaving equipment on and close to the robot.

Calibration Calibration methods for, e.g., tool frame or actuators.

Autotune Methods Methods for adapting model parameters or controller tuningto a specific robot individual or installation.

2.3.2 A Model-Based Motion Control System for Position Control

A simplified outline of a motion control system is shown in Figure 2.5. The sys-tem controls one robot manipulator in position control mode. The trajectory in-terpolator and the controller make an extensive use of models, hence this typeof control is denoted model-based control. The system has the following compo-nents:

Robot Manipulator The physical robot arm with actuators receiving the controlsignal u(t) from the controller. The control signal can be, e.g., a torque refer-ence to a torque controller, a velocity reference to a velocity controlled actu-ator or a three-phase current to an electrical motor. Throughout this work,the torque control is assumed to be ideal and a part of the actuator, whichhas been proven by experiments to be a reasonable assumption for most ofthe ABB robots. Hence, the control signal u(t) will be a motor torque refer-ence. The sensor readings y(t) are normally the actuator positions only, butmore sensors can be added as described in the previous section.

Models The models used by the motion control system, e.g., the kinematic anddynamic models described previously. The models and how to obtain themodel parameters will be further described in Chapters 3 – 4.

Controller Generates control signals u(t) for the actuators with the references

Page 40: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

20 2 Robotics

Xd(t) and the sensor readings y(t) as input. The controller can be splitinto a feedback controller and a feedforward controller, and will be furtherdescribed in Chapter 5.

Trajectory Interpolator Creates a reference Xd(t) for the controller with the userprogram as input. The first step of the trajectory interpolation could beto compute the continuous geometric path Xd(γ) where γ is a scalar pathparameter, e.g., the distance along the path. The second step of the inter-polation is to associate a timing law to γ and obtain γ(t). In this way, thepath Xd(γ) is transformed to a time determined trajectory Xd(γ(t)) = Xd(t).Note that the speed and acceleration as well as higher order derivatives ofthe path, are completely determined once the trajectory is computed. Thetrajectory interpolator is responsible for limiting the speed and accelerationof the trajectory, to make it possible for the robot to dynamically follow thereference without actuator saturations. The requirement of path smooth-ness depends on the controller used and on the requested motion accuracy.One example of smoothness requirement is that the acceleration derivative,also called jerk, is limited.

User Program The desired motion of the robot end effector is specified by a se-ries of motion commands in the user program. In the example program, thecommand MoveL x2,v2 specifies a linear movement of the end effector tothe Cartesian position x2 with velocity v2. The movement starts in the endposition of the previous instruction, i.e. x1. Generally, the movement canbe specified in joint space or in Cartesian space. In joint space the positionsare described by the joint angular positions, and in Cartesian space by theCartesian position and orientation of the end effector. The movement inCartesian space can typically be specified as linear or circular. In reality,more arguments must be attached to the motion command to specify, e.g.,behavior when the position is reached (stop or make a smooth directionchange to the next specified position), acceleration (do not exceed 5 m/s2),and events (set digital output 100 ms before the endpoint is reached).

The ultimate requirements on the described motion control system can be sum-marized as follows:

Optimal Time Requirement The user-specified speed must only be reduced ifthe robot movements are limited mechanically or electrically by the con-straints from the robot components. Some examples of component con-straints are maximum motor and gearbox torques, maximum motor speed,and maximum allowed forces and torques acting on the manipulator links.Note that the acceleration is always limited due to actuator constraints andthat the user can add more constraints, for example, maximum allowed ac-celeration along the path.

Optimal Path Requirement The user-specified path must be followed with spec-ified precision, also under the influence of different uncertainties. These un-certainties are disturbances acting on the robot and on the measurements,

Page 41: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2.3 Motion Control 21

as well as uncertainties in the models used by the motion control system.

If these two requirements are fulfilled, the cycle-time performance of the robotdepends entirely on the electromechanic components such as gearboxes, mechan-ical links, actuators, and power electronics. Generally, a given performance re-quirement can be fulfilled either by improving the electromechanics or by im-proving the computational intelligence of the software, i.e., improving the mod-els, the control algorithms, and the trajectory optimization algorithms. The possi-bilities to use electromechanic or software solutions to fulfil performance require-ments can be illustrated by two simple examples:

• Requirement: Path accuracy of 0.5 mm.

– Electromechanic solution: Design the robot with a stiffer mechanicalarm including bearings and gearboxes.

– Software solution: Improve the models and control algorithms, i.e., ahigher degree of fulfillment of the optimal path requirement.

• Requirement: The robot task must be accomplished in 10 s.

– Electromechanic solution: Increase the power and torque of the drive-train, i.e., the motors, gearboxes, and power electronics.

– Software solution: Improve the trajectory optimization algorithmsand the models used, i.e., a higher degree of fulfillment of the opti-mal time requirement.

A higher degree of fulfilment of the two requirements using software solutionsmeans more complexity in the software and algorithms and, of course, more com-putational power. This means a more expensive computer in the controller, andinitially, a longer development time. However, the trend of moving functionalityfrom electromechanics to software will certainly continue due to the continuingdevelopment of low-cost computer hardware and efficient methods for develop-ing more and more complex real-time software systems. However, in every prod-uct development project, there is an trade-off between electromechanics cost, i.e.,the cost of gearboxes, mechanical arm, actuators, and power electronics, and thesoftware cost2, i.e., the cost of computers, memory, sensors, and motion controldevelopment.

To make cost optimization of robot systems, including robot electromechanicsand controller software, for a spectrum of different applications, is a very difficulttask. How this task is solved varies a lot from one robot manufacturer to another.However, moving as much as possible of the performance enhancement to thecontroller software must be regarded as the ultimate goal for any robot motioncontrol system. Besides cost there is of course also a matter of usability which

2Software is not used in the normal sense here and the software cost could also be denoted themotion control cost. Cost of brain could also be used, and in that case, the electromechanics costcould be denoted the cost of muscles.

Page 42: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

22 2 Robotics

increases with the level of computational intelligence, e.g., easy programmingand facilitation of advanced applications.

The optimal time requirement is mainly a requirement on the trajectory interpo-lator and the optimal path requirement is mainly a requirement on the controller.Accurate models are necessary for the fulfilment of both requirements. One smallexample of minimum-time trajectory generation can be found in Section 5.3.6.

The fulfilment of the second requirement, i.e., the optimal path requirement, isthe subject of this work, and the next two chapters will treat the modeling aspectsof robotics.

Page 43: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3Modeling of Robot Manipulators

This chapter describes the models that are relevant for this work, namely thekinematic and dynamic models of a serial link robot of elbow type.

3.1 Kinematic Models

The kinematic models describe the motion without regard to the forces that causeit, i.e, all time-based and geometrical properties of the motion. The position, ve-locity, acceleration, and higher order derivatives are all described by the kinemat-ics. A thorough description of kinematic models can be found in Craig (1989),Spong et al. (2006), Siciliano and Khatib (2008), and Siciliano et al. (2010).

3.1.1 Position Kinematics and Frame Transformations

The serial N-link robot has N + 1 serially mounted rigid bodies connected byN revolute joints. The rigid bodies are numbered from 0 to N , rigid body 0is connected to the base, and rigid body N is connected to an end effector, i.e.,a tool. Rigid body 1 to N are also called links and are actuated by electricalmotors via gear transmissions. The joints are numbered from 1 to N and joint iconnects link i − 1 to link i. The motor positions are measured by sensors1. WithN ≥ 6 actuated links, both the position and the orientation of the end effectorcan be fully controlled. The joint angular position vector, or joint angles, q ∈ RN ,describe the configuration or position of the manipulator. The position of the toolis described by attaching a coordinate system, or frame, fixed to the tool. The tool

1The motor position sensor is usually an encoder or a resolver.

23

Page 44: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

24 3 Modeling of Robot Manipulators

Figure 3.1: A robot in a work-cell with the standard frames, as defined byABB, used in cell modeling illustrated.

pose is then described by the position p ∈ R3 and orientation2 φ ∈ R3 of this toolframe. The origin of the tool frame is known as the tool center point (TCP). Thetool frame position is described relative to the base frame, attached to the base ofthe robot.

Describing the manipulator position by the joint angles q is often denoted a jointspace description, while describing it by the tool position p and orientation φ isdenoted a task space description3. The position kinematics relates the joint spaceto the task space. For a manipulator with gearboxes, the actuator space can alsobe defined. The actuator position q is related to the joint position q by

q = ηq, (3.1)

where η is a (possibly non-diagonal) matrix of gear ratios. A robot with thedescribed frames and the joint positions is illustrated in Figure 3.1. The otherframes in the figure are typical frames used for work-cell modeling, to simplifythe robot programming task4:

2There are several possible representations of orientation. Here, a minimal representation of orien-tation is assumed. One minimal representation is the use of three Euler angles (e.g., roll-pitch-yaw)although it suffers from mathematical singularities. These singularities can be avoided with a fourcomponent unit quaternion representation. The orientation can also be represented by a rotationalmatrix R ∈ SO(3). Different representations of orientation is described in Siciliano and Khatib (2008).

3Task space is sometimes called operational space or Cartesian space. Joint space is also calledconfiguration space.

4Different robot manufacturers have slightly different concepts and naming conventions for theframes used in cell modeling. In this text, the ABB frame concept and names are used.

Page 45: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.1 Kinematic Models 25

Figure 3.2: Standard frames.

• World frame is the common reference frame in a work cell, used by allrobots, positioners, conveyors, and other equipment.

• Base frame describes the position and orientation of the base of a robot.

• Wrist frame is attached to the mounting flange of the robot.

• Tool frame describes the tool position and orientation.

• User frame describes a task relevant location.

• Object frame describes an object relative to the task-relevant location.

• Work object frame is the object frame as seen from the world frame, i.e.,defined by user frame and object frame.

• Displacement frame describes locations inside an object.

• Target frame (or programmed position) is where the tool frame eventuallyshould be positioned.

The position and orientation of frame B can be described relative to frame A by ahomogenous transformation A

BT describing the translation and rotation requiredto move from A to B. Homogenous transformations are described in the generalreferences given, e.g., Siciliano and Khatib (2008). Figure 3.2 shows the standardframes and the chains of transformations describing the frame positions. Notethat, e.g., the user frame can be defined on a positioner, on another robot, or ona conveyor. This means that the transformation from world frame to user framecan be time-varying, defined by, e.g., the kinematics of the external positioner.The base frame can also be time-varying if, e.g., the robot base is moved by atrack motion as illustrated in Figure 3.3. The desired position of the tool frame isdescribed in the robot programs as a target frame. The target frame, which shouldbe equal to the tool frame when the position is reached, can then be described

Page 46: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

26 3 Modeling of Robot Manipulators

Figure 3.3: A robot moved by a track motion.

in the base frame using the chain of transformations. For some applications, aroom-fixed TCP is convenient. Here, the tool is fixed and the work object frameis moved by the robot.

3.1.2 Forward Kinematics

The forward kinematics problem is, given the joint angles, to compute the posi-tion and orientation of the tool frame relative to the base frame, or

X = Γ (q, θkin), (3.2)

where X is the tool frame position and orientation defined as

X =[pφ

], (3.3)

and Γ ( · ) is a nonlinear function. θkin is a vector of fixed kinematic link param-eters which, together with the joint positions, describe the relation between thebase frame, frames attached to each link, and the tool frame. θkin consists ofparameters5 representing arm lengths and angles describing the rotation of eachjoint axis relative to the previous joint axis.

3.1.3 Inverse Kinematics

The inverse kinematics problem is, given the position and orientation of thetool frame, to compute the corresponding joint angles. The inverse kinematicsproblem is considerably harder than the forward kinematics problem6, where aunique closed form solution always exists. Some features of the inverse kinemat-ics problem are:

• A solution may not exist. The existence of a solution defines the workspace

5A well known parametrization of θkin are the so called Denavit-Hartenberg parameters.6This is true for the serial link manipulator considered here. For a parallel arm robot, the situation

is the opposite.

Page 47: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.1 Kinematic Models 27

of a manipulator. The workspace is the volume which the end effector ofthe manipulator can reach7.

• If a solution exists, it may not be unique. One example of multiple solu-tions is the elbow-up and elbow-down solutions for the elbow manipulator.There can even exist an infinite number of solutions, e.g., in the case ofa kinematically redundant manipulator. In this case the number of linkdegrees-of-freedom (DOF)8 is greater than the number of tool DOF, e.g.,N > 6 for a tool which can be oriented and positioned arbitrarily. An ex-ample of a redundant system is the robot moved by a track motion in Fig-ure 3.3, having totally 7 degrees-of-freedom. Methods for selecting one ofmany possible solutions are often needed, and each solution is then usuallysaid to represent a particular robot configuration.

• The solution can be hard to obtain, even though it exists. Closed-form solu-tions are preferred, but for certain manipulator structures, only numericaliterative solutions are possible.

The inverse kinematics can be expressed as

q = Γ −1(X, C, θkin), (3.4)

where C is some information used to select a feasible solution. One alternative isto let C be parameters describing the desired configuration. Another alternativeis to let C be the previous solution, and to select the new solution as the, in somesense, closest solution.

3.1.4 Velocity Kinematics

The relation between the joint velocity q and the Cartesian velocity X is deter-mined by the velocity Jacobian J of the forward kinematics relation

X =∂Γ (q)∂q

q = J(q)q. (3.5)

The relation between higher derivatives can be found by differentiation of the ex-pression above, e.g., X = J(q)q + J(q)q. The velocity Jacobian, from now on calledthe Jacobian, is useful in many aspects of robotics. One example is the transfor-mation of forces and torques, acting on the end effector, to the correspondingjoint torques. This relation can be derived using the principle of virtual work,and is

τ = JT (q)F, (3.6)

where F ∈ R6 is the vector of end effector forces and torques, and τ ∈ R

N is avector of joint torques.

7The volume which can be reached with arbitrary orientation is called dextrous workspace, andthe volume that can be reached with at least one orientation is called reachable workspace.

8The number of independent coordinates necessary to specify the configuration of a certain sys-tem.

Page 48: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

28 3 Modeling of Robot Manipulators

The Jacobian is also useful for studying singularities. A singularity is a configu-ration where the Jacobian looses rank. Some facts about singularities:

• A Cartesian movement close to a singularity results in high joint velocities.This can be seen from the relation q = J−1(q)X.

• Most singularities occur on the workspace boundary but can also occur in-side the workspace, e.g., when two or more joint axes are lined up.

• Close to a singularity there may be infinitely many solutions, or no solu-tions, to the inverse kinematics problem.

• The ability to move in a certain direction is reduced close to a singularity.

3.2 Dynamic Models

Dynamic models of the robot manipulator describe the relation between the mo-tion of the robot, and the forces that cause the motion9. A dynamic model isuseful for, e.g., simulation, control analysis, mechanical design, and real-timecontrol. Some control algorithms require that the inverse dynamics problem issolved. This means that the required actuator torque is computed from the de-sired movement, including time derivatives. For simulation of the manipulatormovement, the direct dynamic problem must be solved. This means that the dy-namic model differential equations are solved with the actuator torques as input.

Depending on the intended use of the dynamic model, the manipulator can bemodeled as rigid or elastic. A real flexible manipulator is a continuous nonlinearsystem, described by partial differential equations, PDEs, with infinite numberof degrees-of-freedom. An infinite dimensional model is not realistic to use inreal applications. Instead, finite dimensional models with the minimum numberof parameters for the required accuracy level is preferred. The following threelevels of elastic modeling are described in, e.g., Bascetta and Rocco (2002):

Finite Element Models These models are the most accurate models but normallynot used for simulation and control due to their complexity. FEM modelsare widely used in the mechanical design of robot manipulators.

Assumed Modes Models These models are derived from the PDE formulationby modal truncation. Assumed modes models used for simulation and con-trol design are frequently described in the literature.

Lumped Parameter Models The elasticity is modeled by discrete, localizedsprings. With this approach, a link can be divided into a number of rigidbodies connected by non-actuated joints. The gearbox elasticity can also bemodeled with this approach.

9A somewhat different definition of dynamics is usually adopted in general multibody dynamics(Shabana, 1998), where kinetics deals with motion and the forces that produce it, and kinematicsdeals with the geometric aspects of motion regardless of the forces that cause it. Dynamics thenincludes both kinematics and kinetics.

Page 49: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.2 Dynamic Models 29

In the following, both rigid and elastic dynamic models for robot manipulatorswill be described.

3.2.1 The Rigid Dynamic Model

There are several methods for obtaining a rigid dynamic model. The two mostcommon approaches are the Lagrange formulation (Spong et al., 2006) and theNewton-Euler formulation (Craig, 1989). A third method is Kane’s method (Kaneand Levinson, 1983, 1985; Lesser, 2000). All methods are based on classical me-chanics (Goldstein, 1980) and produce the same result even though the equationsmay differ in computational efficiency and structure. A detailed comparison ofthese methods is outside the scope of this work. In the following, only the La-grange formulation will be described in some detail.

The Lagrangian method is based on describing scalar energy functions of thesystem, the kinetic energy K(q, q) and the potential energy V (q). These energyfunctions are expressed as functions of some suitable generalized coordinates, q,defined by

q =[q1 q2 . . . qN

]T. (3.7)

For the manipulator considered here, the generalized coordinates can be chosenas the joint angles. It can be shown that the kinetic energy can be expressed as

K(q, q) =12qTM(q)q, (3.8)

where M( · ) is the inertia matrix. The inertia matrix is positive definite and sym-metric. More properties of Lagrangian dynamics are described in, e.g., Sciaviccoand Siciliano (2000).

The next step is to compute the Lagrangian L as L = K − V . By applying theLagrange equation

ddt

∂L∂qj− ∂L∂qj

= τj , (3.9)

the equations of motion, i.e., the dynamic model, can be derived. In the equationabove, τj is called a generalized force, in our case the actuator torque.

In a rigid dynamic model, the links and gearboxes are assumed to be rigid. Themass and inertia of the actuators and gearboxes are added to the correspondinglink parameters. The model consists of a serial kinematic chain of N links mod-eled as rigid bodies as illustrated in Figure 3.4. One rigid body rbi is illustratedin Figure 3.5, and is described by its mass mi , center of mass ξ i , and inertia ten-sor with respect to center of mass J i . Due to the symmetrical inertia tensor, onlysix components of J i need to be defined. For simplicity, it is assumed that thestructure of the serial manipulator, i.e., the orientations of the rotational jointaxes, is given. The kinematics is then described by the length l i . All parameters

Page 50: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

30 3 Modeling of Robot Manipulators

Figure 3.4: A rigid dynamic model with 3 DOF.

Figure 3.5: A rigid body and its attributes.

are described in a coordinate system ai , fixed in rbi , and are defined as follows

ξ i =[ξ ix ξ iy ξ iz

], J i =

J ixx J ixy J ixzJ ixy J iyy J iyzJ ixz J iyz J izz

, l i =[l ix l iy l iz

].

The model can be derived by using, e.g., the Lagrange formulation which yieldsa system of second order ordinary differential equations or ODEs

M(q, θrb, θkin)q + c(q, q, θrb, θkin) + g(q, θrb, θkin) = τ, (3.10)

where x denotes dx/dt and the time dependence is omitted in the expressions.M( · ) ∈ RN×N is the inertia matrix computed asM( · ) = Ma( · )+Mm, whereMa( · )is the configuration dependent inertia matrix of the robot arm and, Mm is theinertia matrix of the rotating actuators expressed on the link side of the gearbox.The Coriolis, centrifugal, and gravity torques are described by c( · ) ∈ R

N andg( · ) ∈ R

N , respectively. The vector of joint angles is denoted q ∈ RN , and the

actuator torque vector is denoted τ ∈ RN . Note that the equations are described

on the link side, i.e., τ = τam = ηT τmm and Mm = Mam = ηTMm

mη where η is the

Page 51: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.2 Dynamic Models 31

gear ratio matrix. The notation Xam should be interpreted10 quantity X for themotor expressed on the link side of the gearbox. The rigid body and kinematicparameters described previously are gathered in θrb and θkin respectively, i.e.,for each link i

θirb =[mi ξ ix ξ iy ξ iz J ixx J iyy J izz J ixy J ixz J iyz

], (3.11a)

θikin =[l ix l iy l iz

]. (3.11b)

For this model to be complete, the friction torque and the torque from gravity-compensating springs, if present, must be added to (3.10).

3.2.2 The Flexible Joint Dynamic Model

This model is an elastic, lumped parameter model. Consider the robot describedin Section 3.2.1 with elastic gearboxes, i.e., elastic joints. This robot can be mod-eled by the so called flexible joint model which is illustrated in Figure 3.6. Therigid bodies are connected by torsional spring-damper pairs. If the inertial cou-plings between the motors and the rigid links are neglected we get the simplifiedflexible joint model11. If the gear ratio is high, this is a reasonable approximationas described in, e.g., Spong (1987). The motor mass and inertia are added to thecorresponding rigid body. The total system has 2N DOF. The model equations ofthe simplified flexible joint model are

Ma(qa)qa + c(qa, qa) + g(qa) = τa, (3.12a)

τa = K(qm − qa) + D(qm − qa), (3.12b)

τm − τa = Mmqm + f (qm), (3.12c)

where joint and motor angular positions are denoted qa ∈ RN and qm ∈ R

N ,respectively. τm is the motor torque and τa is the gearbox output torque. K ∈RN×N is a stiffness matrix and D ∈ RN×N is the matrix of dampers. The dynamic

and kinematic parameters are still described by θrb and θkin but are for simplicityomitted in the equations. A vector of friction torques is introduced for this model,and described by f (qm) ∈ RN . The friction torque is here approximated as actingon the motor side only. The convention of describing the equations on the linkside is used, i.e., qm = qam = η−1qmm and f ( · ) = f am( · ) = ηT f mm ( · )

If the couplings between the links and the motors are included we get the com-plete flexible joint model (Tomei, 1991)

τa = Ma(qa)qa + S(qa)qm + c1(qa, qa, qm) + g(qa), (3.13a)

τm − τa = Mmqm + ST (qa)qa + c2(qa, qa) + f (qm), (3.13b)

τa = K(qm − qa) + D(qm − qa), (3.13c)

where S ∈ RN×N is a strictly upper triangular matrix of coupled inertia between

links and motors. The structure of S depends on how the motors are positioned

10The a is explained by the fact that the link side can also be denoted the arm side and sometimesalso the low-speed side. The motor side can also be denoted the high-speed side.

11Sometimes, the viscous damping is also neglected in the simplified model.

Page 52: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

32 3 Modeling of Robot Manipulators

Figure 3.6: A flexible joint dynamic model with 6 DOF.

and oriented relative to the joint axis directions.

The flexible joint models can formally be derived in the same way as the rigidmodel, e.g., by the Lagrange equation. The potential energy of the springs mustthen be added to the potential energy expressions as

Vs(qa, qm) =12

(qa − qm)T K(qa − qm), (3.14)

and the kinetic energy of the rotating actuators must be added as well.

3.2.3 Nonlinear Gear Transmissions

The nonlinear characteristics of the gear transmission can have a large impact onthe behavior of a robot manipulator, for example at low speed when the frictionparameters with nonlinear speed dependency are dominant. A classical frictionmodel12 includes the viscous and Coulomb friction, fv and fc respectively, and isgiven by

f (v) = fvv + fc sign(v), (3.15)

where v = qm. More advanced friction models are described in Armstrong-Hélouvry(1991). One model taking many phenomenon into account is the so called LuGreModel, described in Canudas de Wit et al. (1995) and Olsson (1996). This modelis a nonlinear differential equation modeling both static and dynamic behavior

12All friction models described here are scalar models that can be used for each gear transmission.

Page 53: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.2 Dynamic Models 33

−100 −50 0 50 100−5

−4

−3

−2

−1

0

1

2

3

4

5

Speed [rad/s]

Fri

ctio

n T

orq

ue

[Nm

]

Figure 3.7: Typical friction characteristics of a compact gearbox as describedby (3.17).

and is described by

dzdt

= v − |v|g(v)

z, (3.16a)

σ0g(v) = fc + (fs − fc)e−(v/vs)2, (3.16b)

σ1(v) = σ1e−(v/vd )2

, (3.16c)

f (v) = σ0z + σ1dzdt

+ fvv, (3.16d)

which in its simplified form has σ1(v) = σ1. The Stribeck friction is modeledby fs. Another dynamic friction model is the Generalized Maxwell-Slip Model,described in Al-Bender et al. (2005). A smooth static friction law is suggested inFeeny and Moon (1994). This model avoids discontinuities to simplify numericalintegration and is given by

f (v) = fvv + fc(µk + (1 − µk) cosh−1(βv)) tanh(αv), (3.17)

and is illustrated in Figure 3.7. Figure 3.8 shows the friction measured on one axisof an industrial robot under steady-state conditions, i.e., constant speed, in oneconfiguration. In the same figure, the steady-state LuGre model and the Feeny-Moon model, fitted to the experimental data, are shown. Both models describethe static behavior in a good way. However, the friction of a real robot showslarge variations for different configurations in the workspace, for different toolloads, and for different temperatures (Carvalho Bittencourt et al., 2010). Thismeans that some kind of off-line or on-line adaption of the model is necessary.An open question is whether the existing friction models can capture the dynamiceffects of the compact gear boxes, together with motor bearings, typically used inindustrial robots of today.

Another important nonlinear gearbox characteristic is the nonlinear stiffness. Thenonlinear stiffness can also be included in the flexible joint model by replacing

Page 54: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

34 3 Modeling of Robot Manipulators

0 0.2 0.4 0.6 0.8 1

0.4

0.5

0.6

0.7

0.8

0.9

1

Normalized Speed

No

rmal

ized

Fri

ctio

n T

orq

ue

Measured FrictionLuGre ModelFeeny−Moon Model

Figure 3.8: One example of the friction characteristics for one axis of anindustrial robot.

−3 −2 −1 0 1 2 3−3000

−2000

−1000

0

1000

2000

3000

Delta Position [arcmin]

To

rqu

e [N

m]

Stiffening spring

Linear spring

Linear spring with backlash

Figure 3.9: Three typical gearbox stiffness characteristics.

K(qm − qa) in (3.12) by

τs = τs(qm − qa), (3.18)

where τs( · ) is a nonlinear function describing a nonlinear spring. Three typicalspring characteristics are shown in Figure 3.9. The first has a smooth nonlinearcharacteristics, often called a stiffening spring. This is typical for the compactgearboxes used by modern industrial robots. The second is an ideal linear springand the third has a backlash behavior. Industrial gearboxes are designed for lowbacklash, i.e., a backlash that can be accepted with respect to the accuracy re-quired. The backlash is, of course, not zero. More nonlinearities could be addedto the model of the gear transmission. Modeling of hysteresis, backlash, and non-linear stiffness/damping is, for example, described in Tuttle and Seering (1996),Dhaouadi et al. (2003), and Ruderman et al. (2009). A smooth nonlinear stiffnessis used in the benchmark problems, described in Papers F and G.

Page 55: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.2 Dynamic Models 35

Figure 3.10: An extended flexible joint dynamic model with 8 degrees-of-freedom.

3.2.4 The Extended Flexible Joint Dynamic Model

Most publications concerning flexible robot manipulators only consider elasticdeformation in the rotational direction. If only the gear elasticity is consideredwe get the flexible joint model, and if link deformation restricted to a plane per-pendicular to the preceding joint is included in the model we get the flexible linkmodel. One example of a flexible link model is described in De Luca (2000). InPaper A it is shown that the flexible joint model must be extended in order todescribe a modern industrial robot in a realistic way. The added elasticity is theelasticity of bearings, foundation, tool, and load as well as bending and torsionof the links.

The extension of the flexible joint model is straightforward. First, replace the one-dimensional spring-damper pairs in the actuated joints with multidimensionalspring-damper pairs. Second, if necessary, divide each link into two or more rigidbodies at proper locations, and connect the rigid bodies with multi-dimensionalspring-damper pairs. In this way, non-actuated joints or pseudo-joints are addedto the model. The principle is illustrated in Figure 3.10 where one extra torsionalspring is added in the actuated third joint to model torsion of link three. Linkthree is then divided in two rigid bodies, and one more torsional spring is addedto allow bending out of the plane of rotation. In this way two non-actuated jointsare created. The model thus has 8 DOF, i.e., three motor DOF qm1–qm3, three ac-tuated joint DOF qa1–qa3, and two non-actuated joint DOF qa4–qa5. The numberof non-actuated joints and their locations are, of course, not obvious. This modelstructure selection is therefore a crucial part of the modeling and identificationprocedure.

Page 56: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

36 3 Modeling of Robot Manipulators

Generally, if the number of added non-actuated joints is Υna and the number ofactuated joints is Υa, the system has 2Υa + Υna degrees-of-freedom. The modelequations can then be described as

Ma(qa)qa + c(qa, qa) + g(qa) = τa, (3.19a)

τa =[τgτe

], (3.19b)

qa =[qgqe

], (3.19c)

τg = Kg (qm − qg ) + Dg (qm − qg ), (3.19d)

τe = −Keqe − De qe, (3.19e)

τm − τg = Mmqm + f (qm), (3.19f)

where qg ∈ RΥa is the actuated joint angular position, qe ∈ R

Υna is the non-actuated joint angular position, and qm ∈ R

Υa is the motor angular position.Mm ∈ R

Υa×Υa is the inertia matrix of the motors and Ma(qa) ∈ R(Υa+Υna)×(Υa+Υna)

is the inertia matrix for the joints. The Coriolis and centrifugal torques are de-scribed by c(qa, qa) ∈ RΥa+Υna , and g(qa) ∈ RΥa+Υna is the gravity torque. τm ∈ RΥa

is the actuator torque, τg ∈ RΥa is the actuated joint torque, and τe ∈ R

Υna isthe non-actuated joint torque, i.e., the constraint torque. Kg , Ke, Dg , and De arethe stiffness- and damping matrices for the actuated and non-actuated directions,with obvious dimensions. This model is from now on called the extended flexiblejoint model. The nonlinearities of the gear transmission described previously canalso be added to this model. The non-actuated joint stiffness can also be modeledas nonlinear if required.

For a complete model including the position and orientation of the tool, X, theforward kinematic model of the robot must be added. The kinematic model is amapping of qa ∈ R

Υa+Υna to X ∈ RΥa . The complete model of the robot is then

described by (3.19) and

X = Γ (qa). (3.20)

Note that no inverse kinematics exists. This is a fact that makes the control prob-lem considerably harder.

The identification of the extended flexible joint model is the subject of Paper Aand B, and the inverse dynamics problem when using this model is treated inPaper C and D.

3.2.5 Flexible Link Models

If the elasticity of the links cannot be neglected nor described by the joint elas-ticity approaches described in Sections 3.2.2 and 3.2.4, a distributed elasticitymodel can be used to increase the accuracy of the model. These models are de-scribed by partial differential equations with infinite dimension. One way toreduce the model to a finite-dimensional model is to use the assumed modesmethod. The link deflections are then described as an infinite series of separable

Page 57: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.2 Dynamic Models 37

Figure 3.11: The flexible link model.

modes that is truncated to a finite number of modes.

A model of this type is described in De Luca et al. (1998) and illustrated in Fig-ure 3.11. The model consists of a kinematic chain of N flexible links directlyactuated by N motors. It is assumed that the link deformations are small andthat each link only can bend in one direction, i.e., in a plane perpendicular to theprevious joint axis. The link deflection wi(xi , t) at a point xi along link i of lengthli is described by

wi(xi , t) =Nei∑j=1

φij (xi)δij (t), i = 1 . . . N , (3.21)

where link i has Nei assumed modes φij (xi), and δij (t) are the generalized coor-dinates. By use of Lagrange equations the dynamic model for the system can beexpressed as [

Bθθ(θ) Bθδ(θ)BTθδ(θ) Bδδ

] [θδ

]+

[cθ(θ, θ, δ)cδ(θ, θ)

]+

[0

Dδ + Kδ

]=

[τ0

], (3.22)

where θ ∈ RN is a vector of joint angles, δ ∈ RNe is a vector of link deformations,and Ne =

∑Ni=1 Nei . B is a partitioned inertia matrix, c a vector of Coriolis and cen-

tripetal forces, and K and D are stiffness and damping matrices, respectively, allwith obvious dimensions. The actuator torque is denoted τ . The reference framewhere the deflection is described is clamped to the base of each link. The end ef-fector position can be approximated by the angles yi as illustrated in Figure 3.11and described by

yi = θi + Φeiδi , (3.23)

where

Φei =[φi,1(li)/ li , . . . , φi,Nei (li)/ li

], (3.24)

Page 58: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

38 3 Modeling of Robot Manipulators

and

δi =

δi,1...

δi,Nei

. (3.25)

Note that y can be regarded as output variable of this system, and that the samedirect and inverse kinematic models as for the rigid or flexible joint can be used.This fact simplifies the inverse dynamics control problem. A fact that makes theinverse dynamics problem hard, however, is that the system from the actuatortorque τ to the controlled variable y can have unstable zero dynamics13, i.e., thesystem has non-minimum phase behavior (Isidori, 1995; Slotine and Li, 1991)which means that trajectory tracking is considerably harder to achieve.

The structure of the equations of motion and the assumed modes depend on theboundary conditions used, which is a critical choice for these models. Assumedmode models are further described in, e.g., Hastings and Book (1987), De Lucaand Siciliano (1991), Book (1993), Book and Obergfell (2000), and Bascetta andRocco (2002).

3.3 The Kinematics and Dynamics of a Two-LinkElbow Manipulator

In this section, the kinematic and dynamic models of a rigid two link elbow ma-nipulator will be derived as a small but illustrative example of how the modelscan be derived. The manipulator is planar and constrained to movements in thex-y plane. By inspection of Figure 3.12, the forward kinematics is

X = Γ (q) =[pxpy

]=

[l1 sin(q1) + l2 sin(π2 + q1 + q2)l1 cos(q1) + l2 cos(π2 + q1 + q2)

]=

[l1 sin(q1) + l2 cos(q1 + q2)l1 cos(q1) − l2 sin(q1 + q2)

]. (3.26)

The inverse kinematics can here be derived in closed form by either algebraic orgeometric methods. Using the geometric approach and the law of cosine

cos(γ) =l21 + l22 − p2

x − p2y

2l1l2= sin(q2) , s2, (3.27)

and finally obtain the expression for q2 by use of the atan2 function

q2 = atan2(s2,±√

1 − s22), (3.28)

13For uniform mass distributions, the system is always minimum-phase.

Page 59: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.3 The Kinematics and Dynamics of a Two-Link Elbow Manipulator 39

Figure 3.12: Two link elbow manipulator kinematics.

where the function atan2 is preferred for numerical reasons. Continuing with thesolution for q1, in the same way

cos(β) =l21 + p2

x + p2y − l22

2l1√p2x + p2

y

= cβ , (3.29a)

β = atan2(±√

1 − c2β , cβ), (3.29b)

α = atan2(py , px), (3.29c)

q1 =π2− α − β. (3.29d)

The inverse kinematics is given by (3.29d) and (3.28). The alternative signs in(3.28) and (3.29b) should be chosen as both plus or both minus correspondingto the two solutions, elbow-up and elbow-down. The Jacobian of the velocitykinematics is obtained by differentiation of the forward kinematics (3.26), i.e.,

J(q) =∂Γ (q)∂q

=[l1c1 − l2s12 −l2s12−l1s1 − l2c12 −l2c12

], (3.30)

where the notations sin(q1) , s1, cos(q1) , c1, and cos(q1 + q2) , c12 etc. are used.

The dynamics is computed based on the simplified model in Figure 3.13. Thedynamic and kinematic parameters are defined according to Section 3.2.1. Theactuator inertial parameters are here included in the link parameters. The firststep is to derive the kinematics for each link center of mass, i.e.,

X1 = Γ1(q) =[x1y1

]=

[ξ1s1ξ1c1

], (3.31a)

X2 = Γ2(q) =[x2y2

]=

[l1s1 + ξ2c12l1c1 − ξ2s12

], (3.31b)

Page 60: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

40 3 Modeling of Robot Manipulators

Figure 3.13: Simplified two link elbow manipulator dynamic model.

and the corresponding Jacobians

J1(q) =[ξ1c1 0−ξ1s1 0

], (3.32a)

J2(q) =[l1c1 − ξ2s12 −ξ2s12−l1s1 − ξ2c12 −ξ2c12

]. (3.32b)

The rotational kinetic energy in this simple case is

Krot =12j1q

21 +

12j2(q1 + q2)2, (3.33)

and the translational kinetic energy is generally

Ktrans =12

N∑i=1

(mi XTi Xi)

=12

N∑i=1

(mi(Ji(q)q)T Ji(q)q) =12qT (

N∑i=1

mi JTi (q)Ji(q))q. (3.34)

Thus, the total kinetic energy is then

K = Ktrans + Krot . (3.35)

The potential energy is given from the y-coordinate of each mass as

V =N∑i=1

(migyi), (3.36)

where g is the gravitational constant. The Lagrange function is then

L = K − V . (3.37)

Page 61: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3.3 The Kinematics and Dynamics of a Two-Link Elbow Manipulator 41

Applying the Lagrange equation (3.9) and using some symbolic mathematicalsoftware, e.g., Matlab Symbolic Toolbox, gives the equations of motion as

τ = M(q)q + C(q, q) + G(q), (3.38)

where

M(q) =[J11(q) J12(q)J21(q) J22(q)

], (3.39a)

J11(q) = j1 + m1ξ21 + j2 + m2(l21 + ξ2

2 − 2l1ξ2s2), (3.39b)

J12(q) = J21(q) = j2 + m2(ξ22 − l1ξ2s2), (3.39c)

J22(q) = j2 + m2ξ22 , (3.39d)

C(q, q) =[−m2l1ξ2c2(2q1q2 + q2

2)m2l1ξ2c2q

21

], (3.39e)

G(q) =[−g(m1ξ1s1 + m2(l1s1 + ξ2c12))

−m2ξ2gc12

]. (3.39f)

Note that the kinetic energy has the form

K =12qTM(q)q, (3.40)

as described in Section 3.2.1. If the rotational kinetic energy is included in (3.34),the inertia matrix of the system, M(q), can be derived without applying the La-grange equation. Deriving dynamic models is clearly a matter of formulating thekinematics, and then use a powerful tool for symbolic mathematics. Of course,the models can be much more complex than shown in this small example. De-scribing the problems and solutions for those cases is outside the scope of thiswork.

Page 62: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 63: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4Identification of Robot Manipulators

This chapter gives a short introduction to system identification in general, and tothe identification of robot manipulators in particular.

4.1 System Identification

System identification is the art of estimating a model of a dynamic system frommeasured data. For a thorough treatment of system identification, the reader isreferred to Ljung (1999), Söderström and Stoica (1989), or Johansson (1993). Anin-depth treatment of frequency-domain identification can be found in Pintelonand Schoukens (2001). In the area of automatic control, the estimated models areoften used for controller design, on-line control, simulation, and prediction.

4.1.1 Introduction

The identification experiment can be performed in open loop or closed loop. Iden-tification of a system not subject to feedback control, i.e, an open-loop system,is illustrated in Figure 4.1. This system has input u, output y, and is affectedby a disturbance v. The disturbance can include measurement noise as well asexternal system inputs, not included in u. An identification experiment on a sys-tem subject to feedback control, i.e., a closed-loop system, is shown in Figure 4.2where r is the reference signal for the system. A reason for performing a closed-loop experiment could be that the system is unstable, and must be controlled inorder to remain stable. This is typically the case for a robot manipulator. Otherreasons could be that safety or production restrictions do not allow open loopexperiments. If we take a typical industrial robot manipulator as an examplesystem, u is the motor torque, y is the motor position, and r is the position refer-

43

Page 64: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

44 4 Identification of Robot Manipulators

Figure 4.1: An open-loop system.

Figure 4.2: A closed-loop system.

ence. The disturbance v includes both measurement noise and internally gener-ated disturbances, e.g., torque ripple generated by the motor1.

Models can be divided into nonlinear- and linear models. A real world systemis in general nonlinear. However, linear time-invariant approximations are oftenused for modeling the nonlinear reality.

Moreover, models can be described as continuous-time models or discrete-timemodels although the measurements, u(t) and y(t), are normally represented assampled, discrete-time, data. It is assumed that the reader has a basic knowledgeof linear system theory for continuous-time and discrete-time systems. Somebooks treating this subject in-depth are Kailath (1980) and Rugh (1996). Otherrecommended sources are Åström and Wittenmark (1996) and Ljung and Glad(2001).

The different types of models can be further divided into nonparametric mod-els and parametric models. A nonparametric model is a vector of numbers or agraphical curve describing the model in the time-domain or frequency-domain.A parametric model is a model where the information obtained by the measure-ments has been condensed to a small number of parameters. The model can bedescribed as a differential or difference equation or, in the case of a linear model,as a transfer function. In the next sections, these two model types are described.

1The torque ripple is not entering the system at the output which means that it must be filtered bysome appropriate system dynamics before added to v.

Page 65: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.1 System Identification 45

0 1 2 3 4 50

0.5

1

1.5

2

2.5

Time[s]

yuK = 2

L = 1

T = 0.5

0.63 K

Figure 4.3: Step response of a first order process with delay.

4.1.2 Nonparametric Models

Examples of nonparametric models in the time-domain are impulse responsesor step responses. Such models consist of vectors of system outputs and the cor-responding time stamps. An example of a step response of a first-order systemwith a time-delay is shown in Figure 4.3. The measured output is affected bymeasurement noise. The nonparametric step response model can in this case bedescribed by a parametric transfer function model

G(s) =K

sT + 1e−Ls. (4.1)

This three-parameter model2 is often used to describe systems in the processindustry. The parametric model (4.1) can be identified by inspection of the step-response according to Figure 4.3. This model can then be used for tuning of aPI- or a PID controller using, e.g., lambda tuning. Identification and control ofindustrial processes are treated in Åström and Hägglund (2006). The describedmethodology of obtaining a parametric model from a nonparametric model is im-portant, and the method considered in Papers A and B includes such a method-ology, although based on a nonparametric frequency-domain model instead of anonparametric time-domain model.

Methods for obtaining nonparametric frequency-domain models are, e.g., Fourieranalysis, and spectral analysis. The obtained model is a frequency response func-tion (FRF) consisting of a vector of complex numbers and the corresponding fre-quency vector. The complex numbers represent the transfer function from inputto output at different frequencies. The FRF can be illustrated in a Bode diagram,

2Sometimes called the KLT model.

Page 66: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

46 4 Identification of Robot Manipulators

a Nichols diagram, or a Nyquist diagram, and can be used directly for controllerdesign with frequency domain methods, such as loop-shaping using lead-lag com-pensation or QFT-design (Horowitz, 1991). The FRF can also be used for obtain-ing a parametric model as described in Papers A and B.

The method used in Papers A and B, for obtaining the FRF, is based on Fourieranalysis and the discrete-time Fourier Transform. This transform, if the time-domain signal is x(t), is defined by

X(ejωkTs ) =∞∑

n=−∞x(nTs)e

−jωknTs , (4.2)

where Ts is the sample time and ωk the frequency considered. As an approxima-tion of this transform, when the measurement is a finite sequence of discrete-timedata, sampled for t = nTs, n = 1, . . . , N , the discrete Fourier transform (DFT) isusually adopted. The DFT3 is usually defined as

XN (ejωkTs ) =1√N

N∑n=1

x(nTs)e−jωknTs , (4.3)

where

ωk =2πkNTs

, k = 1, . . . , N . (4.4)

For a thorough treatment of the discrete Fourier transforms, see Oppenheim andSchafer (1975).

The DFT may contain errors, known as leakage errors, due to the fact that it iscomputed for a data sequence with finite duration. This error can be reducedby applying windowing functions before computing the DFT. The leakage errorcan be eliminated if the signals are of finite duration, and if the signals are sam-pled until the system is at rest. This type of excitation is called burst excita-tion. Another way of eliminating the leakage error is to use a periodic excitation,and to sample the signals for an integer number of periods, when a steady stateis reached. For further discussions on these issues see Pintelon and Schoukens(2001).

The FRF4 for a SISO system with the transfer function G, at frequency ωk , can beestimated as

GN (ωk) =YN (ωk)UN (ωk)

, (4.5)

where YN ( · ) and UN ( · ) are the DFTs of y( · ) and u( · ), respectively. In the fol-lowing, we assume that no leakage errors are present because burst or periodicexcitation has been used in the experiments. We further assume that a properanti-alias5 filtering is performed so that no alias errors are present. For nota-

3The fast Fourier transform (FFT) is an efficient way of computing the DFT.4This estimated FRF is sometimes called the empirical transfer function estimate (ETFE).5Alias or frequency folding occurs when sampling a continuous-time signal with a frequency con-

Page 67: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.1 System Identification 47

Figure 4.4: A linear two-mass flexible joint model.

tional simplicity, the arguments of GN ( · ), YN ( · ) and UN ( · ) are written as ωk ,although ejωkTs would be more correct.

For a multiple-input multiple-output (MIMO) system described by the n×n trans-fer function matrix Gwith inputs u and outputs y, the following relation betweenthe FRF of G, and the Fourier transforms of the input and output, U and Y , forfrequency ωk , holds

Y (ωk) = G(ωk)U (ωk). (4.6)

If n independent experiments of length N are performed, the multivariable FRFcan be estimated as

GN (ωk) = YN (ωk)U−1N (ωk), (4.7)

where UN (ωk) and YN (ωk) have n columns from the n experiments. If more thann experiments are performed, other FRF estimators can be applied, see, e.g., Pin-telon and Schoukens (2001) or Wernholt and Moberg (2008b).

4.1.3 A Robot Example

A linear one-axis flexible joint model (see Section 3.2.2) will now be used as anexample of how to obtain an FRF by closed-loop identification. The model, illus-trated in Figure 4.4, can be described by the differential equations

0 = Jaqa + k(qa − qm) + d(qa − qm), (4.8a)

τ = Jmqm − k(qa − qm) − d(qa − qm), (4.8b)

or by the transfer function

G(s) =s2/ω2

z + 2ζzs/ωz + 1

s2(Ja + Jm)(s2/ω2p + 2ζps/ωp + 1)

, (4.9)

where

ωz =

√kJa, ωp =

√k(Ja + Jm)JaJm

, ζz =d2

√1kJa

, ζp =d2

√Ja + JmkJaJm

. (4.10)

The input u is the motor torque τ and the output y is the motor position qm. Jaand Jm are the inertias of the arm and motor respectively, k is the joint stiffness,

tent above half the sample frequency. The alias effect is further described in Åström and Wittenmark(1996).

Page 68: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

48 4 Identification of Robot Manipulators

d is the joint viscous damping, and finally, qa is the arm position. The measure-ment y is affected by measurement noise. The system is controlled by a speedcontroller of P-type with sample time Ts = 1 ms. The motor speed is obtainedby differentiation of the measured position, and the excitation is the the motorspeed reference r. Two different excitations are evaluated. The first is a burstexcitation in the form of a swept sinusoid (chirp)

r(t) = A sin(2πf1(t − t1) +

π(f2 − f1)t2 − t1

(t − t1)2), (4.11)

with amplitude A, starting at t1 = 0.5 s with frequency f1 = 50 Hz, and ending att2 = 20 s with frequency f2 = 0.5 Hz. The second excitation is a periodic multisinesignal, i.e., a sum of sinusoids, computed as

r(t) =

Nf∑k=1

A cos(2πfkt + φk), (4.12)

where Nf is the number of sinusoids, with frequencies fk and random phases φkuniformly distributed between 0 and 2π. The frequency fk is chosen from thegrid {fk = k/(TsNp) k = 1, . . . , Np/2}, where Np is the number of samples in oneperiod and Ts is the sampling time. The amplitude A is computed, after the ran-domization of the phases, to fulfil input amplitude constraints. For optimizingthe input power, given an amplitude constraint, the phases can be randomizedrepeatedly (or optimized). This means that the crest factor of the input is min-imized (Ljung, 1999). The period time of the multisine is chosen to 20 s. Themotor speed and motor torque are measured from t = 0 s to t = 25 s. For thechirp excitation, the whole sequence is used when computing the FRF, in orderto reduce the leakage errors (allowing all transients to decay during the last 5 s).For the multisine excitation, leakage is avoided by using only the last 20 s (allow-ing the initial transients to decay during the first 5 s). The motor torque, motorspeed, and the excitation signals are shown in Figures 4.5–4.6. Clearly, the noiselevel is very high compared to the excitation.

Figures 4.7–4.8 show the magnitude of the true system FRF and the estimatedFRFs (for chirp and multisine excitation), obtained by applying (4.5). The FRF iscomputed from the torque input to the differentiated output (motor speed). Theerrors in the estimated FRF, when using burst excitation, are quite high for fre-quencies above 20 Hz. These errors can be reduced by averaging over neighboringfrequencies using a suitable window (smoothing). The errors in the FRF, whenusing periodic excitation, are much smaller. The reason is that the periodic excita-tion can be concentrated at a few selected frequencies, and thereby decreases thebias and the variance of the estimated FRF. This is further discussed in Paper B.

Figure 4.9 illustrates one potential problem due to closed loop identification.Here, the amplitude of the excitation signals is reduced by a factor of 100, andthus decreasing the signal-to-noise ratio. The errors in the estimated FRFs in-crease, and the estimated FRFs approach a constant gain, 0 dB. This is the inversecontroller gain (K = 1) as expected (see Söderström and Stoica, 1989). Note that

Page 69: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.1 System Identification 49

0 5 10 15 20 25−40

−20

0

20

40

Mot

or S

peed

[rad

/s]

0 5 10 15 20 25−40

−20

0

20

40

Time [s]

Mot

or T

orqu

e [N

m]

Figure 4.5: Motor speed and torque during the identification experiment(chirp input).

0 5 10 15 20 25−5

0

5

Spe

ed R

ef [r

ad/s

]

0 5 10 15 20 25−5

0

5

Spe

ed R

ef [r

ad/s

]

Time [s]

Figure 4.6: Chirp excitation (upper) and multisine excitation (lower).

Page 70: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

50 4 Identification of Robot Manipulators

100

101

−30

−20

−10

0

10

20

Frequency [Hz]

Mag

nitu

de [d

B]

Figure 4.7: Magnitude of true FRF (solid) and estimated FRF (dashed) usingchirp excitation.

100

101

−30

−20

−10

0

10

20

Frequency [Hz]

Mag

nitu

de [d

B]

Figure 4.8: Magnitude of true FRF (solid) and estimated FRF (circles) usingmultisine excitation.

Page 71: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.1 System Identification 51

100

101

−30

−20

−10

0

10

20

30

Frequency [Hz]

Mag

nitu

de [d

B]

100

101

−30

−20

−10

0

10

20

30

Frequency [Hz]

Mag

nitu

de [d

B]

Figure 4.9: Low excitation amplitude: Magnitude of true FRF (solid), es-timated FRF with chirp excitation (dashed, left), and estimated FRF withmultisine excitation (circles, right).

100

101

−30

−20

−10

0

10

20

30

Frequency [Hz]

Mag

nitu

de [d

B]

Figure 4.10: Magnitude of true FRF (solid), estimated FRF with large leakageerrors (dashed).

multisine excitation improves the estimate somewhat.

The effect of frequency leakage is illustrated in Figure 4.10. Here, the measure-ment is stopped at t = 20 s, before the system has come to rest. Chirp excitation isused in this case, but leakage can also occur if multisine excitation is used, e.g., ifdata from the first transient period is used, or if the data is not exactly an integernumber of multisine periods.

Finally, in Figure 4.11, a comparison is made between the model FRF of the con-tinuous-time model, and of the discrete-time, zero-order hold sampled model.The FRFs are shown up to the Nyquist frequency 500 Hz. The FRFs are almostidentical for lower frequencies. Some conclusions can be drawn from this exam-ple:

• FRFs can be estimated even if the system runs in closed loop. To reduce biasand variance errors, the excitation level must be reasonably high comparedto the level of disturbances.

• A burst chirp excitation works if the system is at rest when measurementsstart and end. However, it might be necessary to smooth the estimated FRFif the disturbance level is high.

• A periodic multisine excitation improves the estimated FRF.

Page 72: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

52 4 Identification of Robot Manipulators

100

101

102

−20

0

20

Mag

nitu

de [d

B]

100

101

102

−150

−100

−50

0

50

Frequency [Hz]

Pha

se [d

eg]

Figure 4.11: FRF of the continuous (solid line) and discrete (dashed line)two-mass model.

• If the sample frequency is well above the frequencies of the interesting pro-cess dynamics, continuous-time model FRFs can be directly compared todiscrete-time estimated FRFs, e.g., if a parametric model is to be estimatedfrom the nonparametric (estimated) FRF. If this is not the case, the discrete-time FRF of the model must be computed.

For further discussions on closed-loop versus open-loop identification, see, e.g,Ljung (1999). Periodic excitation is often recommended as an alternative way ofobtaining a leakage-free FRF, see, e.g., Pintelon and Schoukens (2001). This is theadopted solution described in Paper B, where a multisine excitation is used. Themultisine excitation has, among many things, the advantage that the excitationenergy is concentrated at selected frequencies, thus improving the signal-to-noiseratio at the frequencies where the DFT is evaluated.

4.1.4 Parametric Models

A parametric model is a model described as, e.g., differential or difference equa-tions. System identification is one route for obtaining a parametric model of asystem. Another route is physical modeling, i.e., deriving a mathematical modelfrom the basic laws of physics.

If the parameters of a physical model are known with sufficient accuracy, we geta white-box model, where both the model structure and the model parametersare known. An example of such a model is a rigid-body model, as described inSection 3.2.1, where the kinematic and inertial parameters are known from theCAD models.

A gray-box model is a physical model where the model structure is known butthe physical parameters are unknown or only partly known. Identification ofparameters in this case is called gray-box identification. A nonlinear gray-box

Page 73: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.1 System Identification 53

model can be formulated in continuous state-space form, i.e.,

x(t) = f (x(t), u(t), θ), (4.13a)

y(t) = h(x(t), u(t), θ), (4.13b)

with states x, control input u, and measurements y. The unknown parametersare contained in θ. One example of a gray-box model is a simplified flexiblejoint model (3.12) where the rigid-body parameters are known, and the elasticparameters, consisting of springs and dampers, are unknown. The simplifiedflexible joint model with measurement of motor positions can be expressed as

x =

x3x4

M−1a (x1)[−c(x1, x3) − g(x1) + diag(θk)(x2 − x1) + diag(θd )(x4 − x3)]M−1m [−f (x4) + diag(θk)(x1 − x2) + diag(θd )(x3 − x4) + u]

, (4.14a)

y = x2, (4.14b)

with states

x =[xT1 xT2 xT3 xT4

]T=

[qTa qTm qTa qTm

]T, (4.15)

motor torque u, and the unknown elasticity parameters

θ =[θk θd

]=

[k1 . . . kN d1 . . . dN

]. (4.16)

If (4.13) is discretized, we obtain the discrete-time gray-box model

x(t + Ts) = fd(x(t), u(t), w(t), θ), (4.17a)

y(t) = hd(x(t), u(t), v(t), θ), (4.17b)

with sample time Ts. Here, the process- and measurement disturbances w andv, assumed to be zero-mean white noise processes, are also included. The dis-cretization of the continuous-time system can, for example, be carried out usingthe Euler forward formula.

A third type of parametric model is the so-called black-box model. In this case,the model structure is not known, and therefore, a model structure without anydirect physical interpretation is used for the identification. The black-box modelparameters can, e.g., be the coefficients of a linear difference equation. A generallinear discrete-time black-box model can be expressed as

y(t) = G(q−1, θ)u(t) + H(q−1, θ)e(t), (4.18)

where y(t) ∈ Rny is the output, u(t) ∈ R

nu is the input, and e(t) ∈ Rny is a

sequence of independent zero-mean random vectors with covariance matrix Λ.G( · ) and H( · ) are filters of obvious dimensions, rational functions of the back-ward shift operator q−1, and of finite order. There are a number of standardblack-box model structures, used for discrete-time identification. Examples ofsuch standard structures are the output error structure and the ARX structure

Page 74: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

54 4 Identification of Robot Manipulators

(Ljung, 1999). The ARX structure for a single-input single-output system is

A(q−1)y(t) = B(q−1)q−nku(t) + e(t), (4.19a)

A(q−1) = 1 + a1q−1 + · · · + anaq

−na , (4.19b)

B(q−1) = b0 + b1q−1 + · · · + bnbq

−nb , (4.19c)

with model parameters

θ =[a1 . . . ana b0 . . . bnb nk

]. (4.20)

4.1.5 Identification of Parametric Models

The gray-box and black-box models can be identified directly in the time domain.One way of estimating the parameters is by the use of a so-called prediction errormethod (Ljung, 1999). For linear systems described by (4.18), the optimal one-step-ahead predictor is

y(t|t − Ts; θ) = H−1(q−1, θ)G(q−1, θ)u(t) + [I − H−1(q−1, θ)]y(t), (4.21)

where the predictor y(t|t − Ts, θ) depends on previous inputs and outputs. Theprediction error is then

ε(t, θ) = y(t) − y(t|t − Ts; θ) = e(t) = H−1(q−1, θ)[y(t) − G(q−1, θ)u(t)]. (4.22)

When using a prediction-error method, the error between the predicted modeloutput and the measured output, i.e., ε(t, θ), is minimized according to somedistance measure (norm). A common choice of norm is a quadratic criterion, andthe estimator is then

θN = arg minθVN (θ), (4.23a)

VN (θ) =1N

N∑k=1

ε2(kTs, θ), (4.23b)

assuming N samples of data have been collected. For some model structures theparameters θN can be estimated using linear regression, but for most structuresa numerical search procedure is necessary.

For linear discrete-time state-space models, the Kalman filter is the optimal one-step-ahead predictor, and prediction-error methods can be used for identification.State-space models can also be expressed on the general form (4.18). Besidesprediction-error methods, subspace methods are often used for identification oflinear discrete-time state-space models (Ljung, 1999).

The gray-box model structure can also be identified in the time-domain. To de-sign an optimal predictor for the nonlinear state-space model (4.17) is, in general,not possible. Approximate predictors, e.g, the extended Kalman filter (Andersonand Moore, 1979) can then be used. A simple predictor is the noise-free simu-

Page 75: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.2 Identification of Robot Manipulators 55

lated system output of (4.17)

x(t + Ts) = fd(x(t), u(t), 0, θ), (4.24a)

y(t + Ts |t) = hd(x(t + Ts), u(t + Ts), 0, θ). (4.24b)

However, this only works for stable systems, since a stable predictor is alwaysrequired.

For closed loop identification, prediction-error methods that describe the truenoise properties can be used for accurate estimates (small bias). However, somemethods may fail, e.g., output error methods. For a thorough description of time-domain methods, see Ljung (1999) or Söderström and Stoica (1989).

The gray-box and black-box models can also be identified in the frequency do-main. One way of doing this is to minimize the least squares error betweenthe estimated nonparametric FRF and the parametric model FRF. The frequency-domain methods are described in, e.g., Pintelon and Schoukens (2001). In Pa-per B, it is shown that a time-domain prediction-error method for a nonlinear sys-tem can be approximated by a frequency-domain gray-box identification method.

Finally, an illustrative example of frequency-domain gray-box identification. Thephysical parameters of the the single-axis flexible joint model in Section 4.1.3 canbe approximated by inspecting the estimated FRF from torque to acceleration,according to Figure 4.12, and using (4.9)–(4.10). The inertias can be estimatedfrom the low- and high frequency gains, and the elasticity parameters can beestimated, e.g., from the frequency and gain of the anti-resonance. Note that theaccuracy can be increased by fitting a parametric FRF over the whole frequencyrange. The resulting parameters are Ja = 0.052 (J truea = 0.050), Jm = 0.009 (J truem =0.010), k = 26 (ktrue = 25), and d = 0.032 (dtrue = 0.025).

4.2 Identification of Robot Manipulators

This section briefly describes the identification of some models needed for thecontrol and simulation of robot manipulators. The most important models forthis work are the

• Kinematic model

• Rigid dynamic model

• Elastic dynamic model

Other important models subject to identification but not further described are,e.g., friction models, backlash and hysteresis models, thermal models, fatiguemodels, actuator models, and sensor models. For a more thorough survey ofidentification methods for robot manipulators, see, e.g., Kozlowski (1998) andWernholt (2007).

Page 76: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

56 4 Identification of Robot Manipulators

100

101

0

10

20

30

40

50

60

Frequency [Hz]

Mag

nitu

de [d

B]

3.6 Hz => k = 26

24.3 dB => Ja + J

m = 0.061

−31.2 dB => d = 0.032

41.3 dB => Jm = 0.009

Figure 4.12: Approximate parameter estimation by inspecting the estimatedFRF from motor torque to motor acceleration.

4.2.1 Identification of Kinematic Models and Rigid DynamicModels

The described models depend on a number of parameters. The kinematic linkparameters consist of lengths and angles. The dynamic model depends on thekinematic link parameters as well as the inertial link parameters. The accuracyof these models depends on the accuracy of these parameters. The parametervalues could in some cases be obtained from the CAD models of the robot manip-ulator, and in other cases from measurements of the individual parts of the robot.If these methods are not accurate enough or simply not possible to perform, thenidentification of the unknown parameters can be used to obtain the unknownparameter values. This type of identification is usually denoted gray-box identi-fication as described in Section 4.1.4.

The nominal kinematic model of a large industrial robot typically gives a volu-metric accuracy of 2–15 mm due to the tolerances of components and variationsin the assembly procedure. This does not fulfill the accuracy requirement foroff-line programming of, e.g., a spot-welding application. By identification of thekinematic parameters of the individual manipulator, as well as the elastostaticmodel, used for compensating the deflection due to gravity, a volumetric accu-racy of ±0.5 mm can be obtained.

It is also interesting to be able to identify the rigid dynamic model (2.3). This canbe performed as a verification of the CAD model parameters when a new robotis developed or for direct use in the controller. The rigid dynamic model can be

Page 77: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.2 Identification of Robot Manipulators 57

expressed as (Sciavicco and Siciliano, 2000)

τ = H(q, q, q)π, (4.25)

where π is a vector of the unknown dynamic parameters. The model thus hasthe property of linearity in the parameters. The parameters, called base param-eters, are not the same as the original link inertial parameters which, in general,cannot all be identified. The parameters in π are a set of uniquely identifiableparameters, and consist of different combinations of the physical parameters de-scribed in Section 3.2.1, e.g., Jyy + m(ξ2

x + ξ2z ). If measurements of torques and

positions are performed along an exciting trajectory, the identification problemcan be formulated as a linear regression

τ =

τ(t1)...

τ(tN )

=

H(t1)...

H(tN )

π = Hπ, (4.26)

and the solution is obtained as the least-squares solution

π = (HTH)−1H

Tτ. (4.27)

Note that the speed and acceleration, if not measured, must be estimated fromthe measured positions. For the identification to be possible, the movements ofthe manipulator during the identification experiment must reveal information ofall unknown parameters, i.e., the excitation must be rich enough. Furthermore,the movements should not excite the mechanical resonances of the manipulator.Identification of dynamic parameters is further described in, e.g., Swevers et al.(2007).

4.2.2 Identification of Elastic Dynamic Models

This section gives some examples of proposed identification methods for flexiblerobot manipulators. Most articles on flexible manipulator identification considerlocal models, i.e., models valid in one configuration, of black-box or gray-boxtype. Moreover, the standard assumption is that all parameters are unknown,and most suggested identification methods therefore estimate all parameters inone step. In Pham et al. (2001), all physical parameters of a single-input single-output (SISO) model are identified by linear regression, using a linear-in-param-eter model structure. This is exemplified with measurements on both motor andjoint side, but some parameters (stiffness and mass) can be identified with motormeasurements only. In Pham et al. (2002), this method is extended with accelera-tion measurements on the joint side. A multiple-input multiple-output (MIMO)black-box model of two robot axes is identified from motor side measurementsin Johansson et al. (2000) by use of a subspace method in combination with afriction estimation. A gray-box prediction error method is used in Östring et al.(2003) to identify all physical parameters of a SISO model, using motor measure-ments only. Inverse eigenvalue theory is used to identify a mass-spring modelof any order in Berglund and Hovland (2000), also using motor measurementsonly. This method is extended to MIMO models in Hovland et al. (2001). Ex-

Page 78: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

58 4 Identification of Robot Manipulators

perimental modal analysis is used in Behi and Tesar (1991) to identify the localmasses, springs, and dampers of an industrial manipulator. The system is thenexcited by an impact hammer and the response measured by accelerometers. Anintroduction to modal analysis can be found in Avitabile (2001).

Identification methods for global flexible joint models have also been suggested.Prior knowledge of the rigid body parameters is assumed in Hovland et al. (1999),where the stiffness and damping parameters are identified by using a frequencydomain method where the frequency domain model is linear in the unknownparameters. This method works for MIMO flexible joint models with motormeasurements only, and is exemplified on two axes of an industrial manipula-tor. A three-step identification method is suggested in Wernholt and Gunnars-son (2006). The first step identifies nonlinear friction and rigid body parametersusing a separable least-squares approach, the second step is based on Berglundand Hovland (2000) and identifies approximate elasticity parameters and refinessome rigid body parameters, and the last step further refines some parametersby time-domain nonlinear gray-box identification. The method is applied to oneaxis of an industrial manipulator using a three-mass model and a nonlinear trans-mission stiffness (stiffening spring). In Albu-Schäffer and Hirzinger (2001) therigid body parameters are assumed to be known from CAD models, while thefriction and elasticity parameters are identified in separate identification experi-ments. The elasticities of the transmissions are identified from impulse responseexperiments for each individual joint before the assembly of the robot, using jointtorque sensors.

In Hardeman (2008), an identification method for an extended flexible joint modelwith transmission and bearing elasticity, is suggested. The method is based onthe assumption that all DOFs (motor position, transmission and bearing deflec-tion) are measurable. The unknown elasticity parameters are solved by linearregression. However, the measurement system used was not accurate enough formeasuring the elastic deflections. An alternative method which further developsthe ideas in Hovland et al. (2001) is then used for estimating the transmissionstiffness. However, the bearing stiffness cannot be identified using this method,and the uncertainty of the estimated transmission stiffness is rather large, e.g.,standard deviations larger than 30 %.

4.2.3 Identification of the Extended Flexible Joint DynamicModel

In Papers A and B, and in Wernholt (2007), an identification procedure for the un-known elastic parameters of the extended flexible joint model (3.19), describedin Section 3.2.4, is proposed. The model is global and nonlinear. The identifica-tion procedure is a frequency-domain gray-box method and can be summarizedas:

1. Local nonparametric models are estimated in a number of configurations.The models are frequency response functions, FRFs.

Page 79: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4.3 Summary 59

2. The nonlinear parametric robot model is linearized in each of these config-urations.

3. The parametric FRFs of these linearized models are obtained for a value ofthe unknown parameter vector.

4. The model FRFs and the estimated nonparametric FRFs are compared andan error computed. The parameter vector is adjusted to minimize the error.

5. Repeat from 3 until some criteria is fulfilled.

Paper B provides a detailed description of this method, and shows that it is an ap-proximation of a time-domain prediction-error method. The method is exempli-fied, by estimating the elasticity parameters of a six-axes industrial robot. Someproblems with applying a time-domain identification method to this problemis also discussed. Paper A show that the flexible joint model cannot describe amodern industrial robot accurately, and that the extended model increases theaccuracy.

4.3 Summary

In system identification there are alternative choices concerning the experimentalsetup, excitation signals, model types, and identification methods. The followingaspects have been discussed:

• Experimental setup

– Open loop

– Closed loop

• Excitation signal

– Periodic (e.g., multisine)

– Non-periodic (e.g., chirp or step)

• Model type

– Nonparametric (e.g., step response or frequency response function)

– Parametric (e.g., discrete-time linear black-box or continuous-time non-linear gray-box)

• Identification method

– Time-domain methods (e.g., prediction-error methods)

– Frequency-domain methods

However, there are many aspects of system identification not mentioned in thisbrief description, e.g., validation, experimental design, noise models, and modelquality measures like bias and variance. The interested reader is referred to theliterature cited in this chapter.

Page 80: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

60 4 Identification of Robot Manipulators

Identification is often used for parameter estimation of robot manipulator mod-els. The following cases have been discussed:

• Identification of kinematic parameters

• Identification of rigid dynamic models by linear regression

• Identification of local and global elastic dynamic models

Although, methods for identification of global elastic models have been suggested,the amount of published research in this area is surprisingly small compared tothe amount of research that has been published on sophisticated control conceptsfor these assumed global models. To the authors knowledge, no global valida-tion of the flexible joint model has been published for a multi-axes industrial-like robot manipulator. Moreover, no global validation or identification of alumped parameter model (e.g., an extended flexible joint model) for a multi-axes industrial-like robot manipulator has been published. Paper A validates theglobal extended flexible joint model and Paper B (and its predecessors describedin Section 1.2) describes such an identification procedure.

Page 81: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5Control of Robot Manipulators

5.1 Introduction

Advanced motion control of robot manipulators has been studied by academicand industrial researchers since the beginning of the 1970’s. A historical sum-mary with many early references is given in Craig (1988).

This chapter is a survey of position control methods for articulated robot manipu-lators1, suggested in the literature. Control during contact with the environment,as for example in the case of force control, will not be treated. The actuator is as-sumed to be an electrical motor, and the motor torque control will not be treated.It is assumed that the motor torque control is ideal, and that the torque referencegenerated by the position controller is equal to the real motor torque2. Further-more, even though friction is the dominating source of error in some cases, e.g., atlow speed, control methods specially designed for dealing with friction will notbe covered. The emphasis will be on control methods for handling the elasticityof the manipulator, without influence of tool contact dynamics. This is the farmost usual case for industrial robot applications today.

The focus will be on methods applicable to a typical industrial robot, i.e., anelastic manipulator with gear transmissions, where the only measured variablesare the motor angular positions. Some of the described methods assume thatmore variables are measured but can in many cases be modified such that actu-ator position only is sufficient, e.g., by using state estimation, which is briefly

1Results for manipulators of parallel linkage type are also applicable to a large extent for seriallink manipulators and vice versa.

2Experiments have shown that this is a reasonable approximation when the current- and torque-control servo has an appropriate tuning and uses feedforward.

61

Page 82: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

62 5 Control of Robot Manipulators

described. The main approach for controlling an elastic manipulator is consid-ered to be linear feedback in combination with nonlinear feedforward- or feed-back linearization control. Therefore, these methods will be described in somedetail. This is also motivated by the fact that Papers C–G treat these controlmethods. Some examples of methods not treated here, or only briefly mentioned,are iterative learning control, adaptive control, backstepping, sliding mode con-trol, neural networks, singular perturbations, composite control, input shaping,passivity-based control, and robustification by Lyapunov’s second method. Twosurvey articles with many references are Sage et al. (1999) and Benosman andLe Vey (2004).

The manipulator to be controlled is an elastic multibody system. The system ismultivariable and strongly coupled, and its highly nonlinear dynamics changesrapidly as the manipulator moves within its working range. Moreover, for a robotwith gear transmissions, the gears have nonlinearities such as hysteresis, back-lash, friction, and nonlinear elasticity. The actuators have non-ideal characteris-tics with internally generated disturbances, e.g., torque ripple disturbances. For atypical industrial robot, the controlled variable (tool position and orientation), isnot measured, and the only measured variable is the actuator position (motor an-gular position). This position measurement can be impaired with a high level ofmeasurement noise as well as deterministic disturbances. For industrial manip-ulators, the dynamic position accuracy requirements for low speed applications(e.g., laser cutting), can be 0.1 mm at 20 mm/s. For high-speed applications, suchas dispensing, the maximum allowed error can be 0.5 mm at 500 mm/s, withoutvisible vibrations. Another requirement could be short cycle time, which meanshigh acceleration. Thus, the control problem can, in general, not be solved byapplying smooth trajectories to avoid exciting the mechanical resonances. Theconclusion is that the flexible manipulator control problem is a challenging task.

The control of robot manipulators can be described and classified in many ways,according to, e.g.,

• type of drive system (direct drive or gear transmission).

• type of model used for the (model-based) control (rigid models, flexiblejoint models, or flexible link models).

• controlled variable (position, speed, compliance, or force).

• motion type considered (high-speed continuous path tracking, low-speedcontinuous path tracking, point-to-point movement, tracking in contactwith the environment, or regulation control).

• type of control law (linear/nonlinear, feedback/feedforward, static/dynamic,robust/adaptive).

• type of measurements (actuator position, actuator speed, link position, linkspeed, link acceleration, link torque, tool position, tool speed, tool acceler-ation, tool force, or tool torque).

Page 83: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.2 Control of Rigid Manipulators 63

Figure 5.1: General robot controller structure. Observer reconstruction isenabled by the dashed line, feedback linearization by the dotted line.

A general controller structure is illustrated in Figure 5.1. The desired tool trajec-tory zd is described in Cartesian coordinates, and z is the actual trajectory3, alsodescribed in Cartesian coordinates. The reference- and feedforward generationblock (FFW) computes the feedforward torque uffw and the state references xdused by the feedback controller (FDB), with a correction torque, ufdb, as output.The manipulator has uncertain parameters, illustrated as a feedback with un-known parameters ∆, and is exposed to disturbances d and measurement noisee. The measured signals are denoted ym. Note that the dimension of xd and ymmay differ if some states are reconstructed by FDB. The purpose of the FFW is togenerate model-based references for perfect tracking (if possible). The purposeof the FDB is, under the influence of measurement noise, to stabilize the system,reject disturbances, and to compensate for errors in the FFW.

5.2 Control of Rigid Manipulators

Although this work is primarily focused on flexible manipulators, the control ofrigid manipulators is a good starting point for this survey. A rigid manipulatorcan here, from a control point of view, be interpreted as a manipulator with thelowest mechanical resonances well above the bandwidth of the control. A direct-drive manipulator with stiff links is an example of a manipulator with resonancesat high frequencies. In direct-drive manipulators, the motor axes are directlycoupled to the links, and the negative effects of gear transmissions are eliminated,i.e., friction, backlash, and elasticity. The N-link rigid manipulator hasN degrees-of-freedom, and the joint angle q, can be regarded as output variable since it canbe computed from the Cartesian tool position and vice versa (by using the inverseand forward kinematics). Hence, the reference to the controller can be chosen as

3z is used instead of x to denote the Cartesian position and orientation to avoid confusion with thestates of the system.

Page 84: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

64 5 Control of Robot Manipulators

Figure 5.2: Diagonal PD control (independent joint PD control).

Figure 5.3: Feedforward control combined with diagonal PD control.

the desired joint angle qd(t).

5.2.1 Feedback Linearization and Feedforward Control

A summary of control methods and experimental results for rigid direct-driverobots can be found in An et al. (1988). In the model-based approaches, the rigiddynamic model (3.10) is used.

The first method described is called independent joint PD control, and is illus-trated in Figure 5.2. The controller for the direct drive manipulator is given by

u = Kp(qd − q) + Kv(qd − q), (5.1)

where the measured position and speed are q and q, and the desired position andspeed are qd and qd . The control signal is the reference torque u. Finally, Kv andKp are diagonal gain matrices with obvious dimensions. In this method, the mul-tivariable couplings between the axes are regarded as unmodeled disturbances.

The second method shown in Figure 5.3 is called feedforward control, and is an

Page 85: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.2 Control of Rigid Manipulators 65

Figure 5.4: Feedback linearization (computed torque control) combinedwith outer-loop diagonal PD control.

extension of the PD controller with a feedforward torque uffw according to

u = uffw + Kp(qd − q) + Kv(qd − q), (5.2a)

uffw = M(qd)qd + c(qd , qd) + g(qd). (5.2b)

Note that the reference qd must be at least twice differentiable. The ˆ signs in-dicates that a model, that always differs from the true system, is used by thecontroller.

The third method described is called computed torque control, and is illustratedin Figure 5.4. In this approach the system is first partly linearized by cancelingthe nonlinear dynamics c(qd , qd) + g(qd) with a feedback term. The system is thenlinearized and decoupled by multiplying the controller output with the inversesystem, i.e., the mass matrix. Ideally, the resulting system is a system of decou-pled double integrators, i.e., v = q. The natural choice of controller, with outputv, is again a PD controller. The first approaches of linearizing a nonlinear systemby nonlinear feedback can be found in the robotics literature from the 1970’s.The computed torque controller is

u = M(q)v + c(q, q) + g(q), (5.3a)

v = qd + Kp(qd − q) + Kv(qd − q). (5.3b)

The terminology in this field is somewhat confusing. Computed torque can some-times denote the feedforward control law, and sometimes the linearizing and de-coupling control law. With standard control terminology, the control methodscan also be described as diagonal PD control, feedforward control, and feedbacklinearization control. These terms will be used from now on. In both of thesemodel-based methods it is necessary to solve the inverse dynamics problem, i.e.,compute the torque from the desired trajectory. Also note that one part of thefeedback linearization controller output in Figure 5.4 is computed from the feed-forward acceleration qd .

Page 86: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

66 5 Control of Robot Manipulators

The bullets below summarize results concerning tracking errors according to Anet al. (1988), for the diagonal PD, feedforward, and feedback linearization controlmethods, when applied to the main axes of a direct-drive manipulator (the MITserial-link direct-drive arm). A smooth fifth order polynomial trajectory withhigh speed and acceleration (360 deg/s and 850 deg/s2) was used in the experi-ments.

• For two axes, the model-based controllers reduced the tracking error to2 deg compared to 4 deg with PD control. No significant difference betweenfeedforward and feedback linearization was noticed.

• The third axis had the same tracking error, 4 deg, for all three methods.This was explained by unmodeled motor dynamics and bearing friction incombination with low inertia.

• The sampling time was critical for the model-based methods. It affected thediscretization error but also the possible level of feedback gain.

• The feedforward control method was believed to be the best choice for freespace movements. For cases with large disturbances, the feedback lineariza-tion controller was believed to yield better results.

One reflection concerning these results is that the PD controller performance wassurprisingly good. It should also be noted that a feedforward controller has theadvantage that it, in principle, can even be computed off-line in order to save on-line computer load. Even if the feedforward is computed on-line, the sample rateof the feedforward computations does not affect the stability of the system. Thus,it might be possible to save computer load by using a lower sample rate sinceit will not reduce the stability. On the other hand, the feedback linearizationcontroller is a part of the feedback loop, and could cause instability if the modelerrors are large.

A more recent publication on the same topic is Santibanez and Kelly (2001). Theconclusion in this and a number of other articles is the same as in An et al. (1988).Feedforward control gives the same tracking performance as feedback lineariza-tion and is the preferred choice.

Feedback linearization control and diagonal PD control is also evaluated withrespect to tracking performance of a direct-drive manipulator in Khosla andKanade (1989). The conclusion is that feedback linearization control gives bet-ter performance than diagonal PD control, and that it is important to include thecentripetal and Coriolis terms in the linearization.

A final reflection on this topic is that the test cases studied in the referred articlesare typically a few test trajectories in each article, and only with the best possiblemodel. Feedback linearization and feedforward based on high-accuracy modelsshould give the same tracking performance if the sample rate is chosen such thatthe discretization effects are negligible. It would be very interesting to see a com-parative study concerning robustness to model errors and disturbance rejection,for the different published methods.

Page 87: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.3 Control of Flexible Joint Manipulators 67

5.2.2 Other Control Methods for Rigid Manipulators

In this section, some examples of other control methods that have been consid-ered for the control of rigid manipulators, are given.

Adaptive Control Adaptive control of direct-drive manipulators is studied in,e.g., Craig (1988). The model parameters of the feedback linearization con-troller described in the previous section are adapted on-line. An experimen-tal study on two direct-drive axes of the Adept One robot is also included. Itis shown that the constant gain default controller yields a better result thanthe adaptive controller. However, it is believed that more fine tuning and anew implementation of the adaptive controller concept could improve theresult.

Nonlinear Robust Control A nonlinear outer-loop controller, replacing the PDcontroller, can be used to robustify the feedback linearization controller.One example of such a controller, based on Lyapunov’s Second Method, isdescribed in Spong et al. (2006), and shown to reduce the tracking errorswhen model errors are present. Another proposed controller is the SlidingMode Controller. One example of this controller type used for robustifi-cation of a feedback linearization controller is described in Bellini et al.(1989), where the sliding mode controller was shown to decrease controlerrors caused by an approximative model. Both the Lyapunov- and the slid-ing mode controllers result in a discontinuous control signal (chattering)that can increase motor losses and excite unmodeled dynamics. Methodsfor decreasing the chattering exist for both of these controller types.

A summary of control methods for rigid manipulators is given in Spong (1996).

5.3 Control of Flexible Joint Manipulators

The flexible joint model, as described in Section 3.2.2, is a more realistic descrip-tion of an industrial robot with gear transmissions. This model has elastic geartransmissions and rigid links. The N-link manipulator model has 2N degrees-of-freedom and, as in the case of the rigid manipulator, the Cartesian position z, orthe joint angles q, can be regarded as the output variable since the links are rigid.Hence, the reference to the controller is assumed to be the vector of desired jointangles qd .

5.3.1 Feedback Linearization and Feedforward Control

Feedback linearization and feedforward control can be regarded as the mainapproaches for the control of flexible joint manipulators, and will therefore betreated in some detail.

Page 88: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

68 5 Control of Robot Manipulators

5.3.2 Simplified Flexible Joint Model

The model is here given by

Ma(qa)qa + c(qa, qa) + g(qa) + K(qa − qm) = 0, (5.4a)

Mmqm + K(qm − qa) = u, (5.4b)

where the same notations as in Section 3.2.2 are used, except that the controlsignal, the motor torque, is denoted u. In Spong (1987) and Spong et al. (2006),control methods for the simplified flexible joint model are discussed. In the sim-plified model, the inertial couplings between the links and the motors are ne-glected. Furthermore, the viscous damping is also neglected in order to simplifythe controller design. In Spong (1987) it is shown that a manipulator describedby this model can be linearized and decoupled by static feedback linearization.As for the rigid model described in the previous section, the flexible joint modelcan be used for feedforward control or feedback linearization. The feedforwardapproach is described in, e.g, De Luca (2000).

The flexible joint manipulator is an example of a differentially flat system (Rou-chon et al., 1993). Such a system can be defined as a system where all state vari-ables and control inputs can be expressed as an algebraic function of the desiredtrajectory for a flat output, and its derivatives, up to a certain order. The flatoutput is the selected output variable of the system. Feedback linearization bystatic or dynamic state feedback is equivalent to differential flatness (Nieuwstadtand Murray, 1998). Solving (5.4a) for qm, and differentiating twice, we get anexpression for qm, adding (5.4a) to (5.4b), and inserting the expression for qmyields

u = (Ma(qa) + Mm)qa + c(qa, qa) + g(qa) + MmK−1g [Ma(qa, qa, qa)qa+

2Ma(qa, qa)q[3]a + Ma(qa)q

[4]a + c(qa, qa, qa, q

[3]a ) + g(qa, qa, qa)], (5.5)

where x[i] denotes d ix/dti . This expression shows that the system is differentiallyflat with the flat output qa and that the control signal can be expressed as

u = τm(qa, qa, qa, q[3]a , q

[4]a ). (5.6)

Using the states

x =[qTa qTa qTa q

[3]Ta

]T, (5.7)

the feedback linearization control law can be expressed as

u = τm(x1m, x2m, x3m, x4m, v), (5.8)

where xjm are the measured states, and v is a new control signal for the linearized

and decoupled system q[4]a = v consisting of N independent chains of four inte-

grators. For tracking control, v can be chosen as

v = q[4]ad + L1(xd − xm), (5.9)

where L1 ∈ RN×4N is a linear feedback gain matrix and xd , xm are the reference

Page 89: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.3 Control of Flexible Joint Manipulators 69

states and the measured states respectively. The fourth derivative of the referencetrajectory is denoted q[4]

ad . The derived control law is a combination of feedbackand feedforward where the feedback part is dominating. The feedback gain ma-trix can be computed, e.g., by using LQ optimal control (Anderson and Moore,1990). It is also possible to find a feedforward-dominant control law accordingto

u = τm(x1d , x2d , x3d , x4d , q[4]ad ) + L2(xd − xm), (5.10)

where, ideally in the case of a perfect model, all torques needed for the desiredtrajectory are computed by feedforward calculations, i.e., based on the referencestates xd . Note that the desired trajectory qd must be at least four times differen-tiable for both the feedback linearization and the feedforward control laws. Thefeedback linearization control law (5.8) gives constant bandwidth of the feed-back controller for all robot configurations. For constant bandwidth there wouldbe no need for gain scheduling. Due to the varying manipulator dynamics, gainscheduling, or some other model-based feedback gain computation, is probablyneeded in the feedforward control law (5.10). A simulation study comparingthese two control algorithms is presented in Paper E. Furthermore, feedforwardcontrol for an extended flexible joint model is investigated in Paper C and D.

5.3.3 Complete Flexible Joint Model

The complete flexible joint model (3.13) cannot be linearized by static state feed-back. However, if the viscous damping is excluded, any flexible joint model canbe linearized and decoupled by dynamic state feedback as shown in De Luca(1988) and De Luca and Lanari (1995). The static feedback controller describedin the previous section has the form

u = α(x) + β(x)v, (5.11)

where x are the states, v are the new control signals for the linearized system,and α( · ), β( · ) are nonlinear functions of appropriate dimensions. The dynamicfeedback controller has the form (De Luca and Lanari, 1995)

ξ = α(x, ξ) + β(x, ξ)v, (5.12a)

u = γ(x, ξ) + δ(x, ξ)v, (5.12b)

where ξ are the internal states of the controller (α( · ), β( · ), γ( · ), and δ( · ) arenonlinear functions of appropriate dimensions).

The proof that the complete model is feedback linearizable is based on the factthat the system is invertible with no zero dynamics. Given a desired trajectoryand its derivatives up to a certain order, the motor states and the required torquescan be computed recursively. The solution is based on the fact that S in (3.13) isupper triangular. This result can also be used for feedforward control based onthe complete model (De Luca, 2000). Static or dynamic feedback linearization canalso be performed when the damping term is included but in this case only input-output linearization is possible (De Luca et al., 2005). Input-output linearizationcan be used since the zero dynamics is stable.

Page 90: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

70 5 Control of Robot Manipulators

The complete model increases the complexity of the linearization procedure con-siderably. The requirement on the smoothness of qd is high using these controllaws. If the manipulator has N links, qd must be 2(N + 1) times differentiablecompared to four times for the simplified flexible joint model as described inSection 5.3.2.

5.3.4 State Estimation

All states must be available for feedback in order to use the control laws (5.8)and (5.10). However, the feedforward control law (5.10) can be combined with,e.g., a PD controller for the actuator position, which only requires the motorstates to be available (De Luca, 2000). The motor position is available for allindustrial manipulators considered, and the motor speed can be estimated by,e.g., differentiation of the motor position. This means that a simplified version ofthe feedforward control law is possible to evaluate on a standard industrial robot,if the required computational capacity is available.

The feedback linearization control law (5.8) requires the link position, speed, ac-celeration, and jerk for each link to be measured. This means that some of thestates, e.g., the acceleration and jerk, must be estimated from the available mea-surements. If differentiation is used for estimating the higher order derivatives,the measurement noise is likely to reduce the performance. If link position, linkspeed, motor position, and motor speed are measured, the link acceleration andjerk can be computed by using the model (Siciliano and Khatib, 2008, Chapter13). However, it is likely that the robustness and performance will be impaired,compared to full-state measurements, since the controller will depend on (uncer-tain) model parameters to a higher degree.

Estimation of states can be performed by observers. One well-known type ofobserver for linear systems is the Kalman filter (Anderson and Moore, 1979)where the observer gain is computed based on a stochastic description of themeasurement- and system disturbances. For nonlinear systems, the extendedKalman filter, can be used. The gain of an observer with the same structure asthe Kalman filter can also be determined by pole placement of the observer errordynamics. Another type of observer is the reduced observer, sometimes calledLuenberger observer. Nonlinear observers are treated in, e.g., Isidori (1995) andRobertsson (1999). A state observer for the linear system

x = Ax + Bu,

y = Cx

can be expressed as˙x = Ax + Bu + K(y − Cx),

where x is the estimated state vector and K is the observer gain.

A nonlinear observer for the motor position, motor speed, link position, and linkspeed is suggested in De Luca et al. (2007). The observer works for both thesimplified and the complete flexible joint model, and requires measurements of

Page 91: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.3 Control of Flexible Joint Manipulators 71

motor position and link acceleration. The observer does not depend on the in-ertial link parameters but on the motor inertias, the joint spring-damper pairs,and the kinematic link parameters describing the accelerometer locations. Foran N -link manipulator, M accelerometers are needed, with M ≥ N . The observeris characterized by a linear and decoupled error dynamics. The observer is evalu-ated on the three main axes of an industrial robot, as well as in closed loop withthe feedforward control law decribed in Section 5.3.2. The result is a significantimprovement, with respect to damping and overshoot, compared to a control lawusing motor states only.

An experimental evaluation of observers for tool position estimation is describedin Henriksson et al. (2009). Both the observer from De Luca et al. (2007) andthe extended Kalman filter are evaluated with an emphasis on tuning and robust-ness. The Kalman filter showed better robustness, although a simple nonlineardeterministic observer is preferred for on-line control, due to the less expensivecomputations. More references on nonlinear observers for flexible joint robotscan be found in De Luca et al. (2007).

5.3.5 Feedback Control

A feedback controller is needed to stabilize the system, reject disturbances, and tocompensate for errors in the feedforward (if used). This section is a brief overviewof feedback control for flexible joint robots. A general multivariable linear statefeedback controller with integral action is

u = L(xd − xm) + Li

∫(xid − x

im), (5.13)

L ∈ RN×4N is a linear feedback gain matrix, xd ∈ R

4N are the reference states,and xm ∈ R

4N are the measured or estimated states. Li ∈ RN×N is a diagonal

matrix of integral gains, and xi are the states used by the integral term. Severalstate representations are possible, but here, it is assumed that the states are

x =[qTm qTa qTm qTa

]T. (5.14)

For full-state multivariable control, the feedback gains L and Li of (5.13) canbe computed by LQ design (Anderson and Moore, 1990). If not all states aremeasured, a Kalman filter (Anderson and Moore, 1979) can be used for state esti-mation and combined with LQ design. The resulting controller is then called anLQG controller. LQ and LQG control are natural ways of approaching the flexiblejoint control problem as the design weights for the controlled variable (qa) can beexplicitly tuned. However, for uncertain and disturbed systems, the tuning of thestate weights might not be intuitive, and the tuning of the Kalman filter covari-ances is even harder. The LQG approach for flexible joint robots is described in,e.g., Ferretti et al. (1998), Östring and Gunnarsson (1999) and Elmaraghy et al.(2002). The combination of LQG and disturbance observers is described in Jiet al. (2008). An alternative design method for state feedback and state estima-tion is pole placement (Kailath, 1980; Rugh, 1996; Kautsky et al., 1985). A similar

Page 92: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

72 5 Control of Robot Manipulators

multivariable controller can also be designed using H∞ methods (Skogestad andPostlethwaite, 1996).

For a single axis flexible joint system, a general state feedback controller is

u = Kpm(αpmqdm − qm) + Kpa(αpaq

da − qa) + Kvm(αvmq

dm − qm)+

+ Kva(αvaqda − qa) + Kim

∫(qdm − qm) + Kia

∫(qda − qa), (5.15)

where one of the integral gains must be zero to avoid saturation or oscillationsdue to the double integral parts. The gains α can be used for setpoint weighting(Åström and Hägglund, 2006). Note that, e.g., a PID controller for the motorvariables often is implemented as a cascade controller, with an inner PI controllerfor speed control and an outer P controller for position control. If not all statesare measured, the controller uses only partial state feedback. For the case of onlymotor side measurements, a PD controller for the motor position is suggestedin Tomei (1991), i.e., all gains in (5.15) are zero except Kpm, αpm and Kvm. In,Tomei (1991), it is also proved that the suggested controller globally stabilizesthe manipulator around a reference position if gravity compensation is used. Apractical controller for industrial systems also need an integral part on the motorside, i.e., Kim , 0. Another controller, suitable for relatively stiff systems, hasall gains zero except Kpa, αpa, Kvm, αvm, and Kia. Here, αvm can also be zero ifno speed reference is used. This controller combines high accuracy on the armside with good damping. Using only the arm side measurements results in a lowperformance controller and the best control is of course obtained by using allstates (if available) and with integral part on the arm side. More discussion onthese issues can be found in Spong et al. (2006) and Siciliano and Khatib (2008,Chapter 13). To illustrate the effects of different feedback configurations, a single-link flexible joint robot (Figure 5.5) is used in the following configurations:

1. PD control with motor feedback, no speed reference (Kpm, αpm, and Kvmused).

2. PD control with arm position- and motor speed feedback, no speed refer-ence (Kpa, αpa, and Kvm used).

3. PD control with arm feedback and lead filter on PD output, no speed refer-ence (Kpa, αpa, and Kva used).

4. Full state feedback, no speed references (Kpa, αpa, Kva, Kpm, αpm, Kvmused).

5. PD control with arm feedback, no speed reference (Kpa, αpa, and Kva used).

The test consists of a filtered position reference step, followed by a pulse dis-turbance torque on the arm, and finally a pulse disturbance torque on the motor.The result is shown in Figures 5.6–5.8. PD control when measuring arm variablesonly, clearly results in a slow controller which is very sensitive to disturbances.However, with a more complex controller design, the performance can be im-proved. The use of a lead filter, that improves the phase by adding phase lead,

Page 93: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.3 Control of Flexible Joint Manipulators 73

Figure 5.5: Linear model of a SISO flexible joint robot.

0 0.5 1 1.5

−0.5

0

0.5

1

q a [rad

]

Time [s]0 0.5 1 1.5

−0.5

0

0.5

1

q a [rad

]

Time [s]

Figure 5.6: Arm position (solid) and position reference (dashed) for case1 and 2. 1: Motor feedback (left). 2: Arm/Motor feedback (right). Armdisturbance at 0.5 s, motor disturbance at 1.0 s.

is just an example to show this. Full state feedback gives the best result as ex-pected. Note that the tunings are just examples (with an effort to be fair) for thedifferent controller configurations. Effects of measurement noise and controllerrobustness have not been studied. However, from the tuning of the differentcontroller configurations, it is clear that the configurations using arm feedbackonly (case 3 and 5), are not very robust. This can be explained by the concept ofcollocation.

A collocated system measures the response at the same location as the actuatorinput is applied, i.e., measuring the motor in our case, whereas a non-collocatedsystem measures the response at another location, i.e., after the flexibility in ourcase. This can be illustrated by the benchmark model of Paper F (Figure 5.9).Figure 5.10 shows the frequency response from the control signal (motor torque)to the positions of the different masses. Clearly, the more flexibility between thetorque input and the sensor, the more phase lag in the feedback loop.

Important aspects, often neglected in the robotics literature, are disturbance re-jection and consequences of discrete-time implementation. This is the motivationfor the two benchmark problems described in Papers F and G. The controllerspresented up to now, must in practice most certainly be extended to deal withdisturbances and stability issues. Loop shaping techniques, e.g., QFT (Horowitz,1991), can be used for this part of the controller design.

Page 94: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

74 5 Control of Robot Manipulators

0 0.5 1 1.50

0.2

0.4

0.6

0.8

1

q a [rad

]

Time [s]0 0.5 1 1.5

0

0.2

0.4

0.6

0.8

1

q a [rad

]

Time [s]

Figure 5.7: Arm position (solid) and position reference (dashed) for case 3and 4. 3: Arm feedback + lead filter (left). 4: Full state feedback (right). Armdisturbance at 0.5 s, motor disturbance at 1.0 s.

0 5 10 15

−12

−10

−8

−6

−4

−2

0

q a [rad

]

Time [s]

Figure 5.8: Arm position (solid) and position reference (dashed) for case 5.Arm feedback. Arm disturbance at 5 s, motor disturbance at 10 s. Note thescaling of the axes!

Figure 5.9: The SISO benchmark model.

Page 95: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.3 Control of Flexible Joint Manipulators 75

100

101

102

−80−60−40−20

0

Mag

[dB

]

Magnitude Motor

100

101

102

−80−60−40−20

0

Mag

[dB

]

Magnitude Mass 1

100

101

102

−100−80−60−40−20

Mag

[dB

]

Magnitude Mass 2

100

101

102

−150−100

−500

Mag

[dB

]

Magnitude Mass 310

010

110

2

−500

0

Pha

se [d

eg] Phase Motor

100

101

102

−500

0

Pha

se [d

eg] Phase Mass 1

100

101

102

−500

0

Pha

se [d

eg] Phase Mass 2

Frequency [Hz]10

010

110

2

−500

0

Pha

se [d

eg] Phase Mass 3

Frequency [Hz]

Figure 5.10: Frequency response of the SISO benchmark model.

Page 96: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

76 5 Control of Robot Manipulators

5.3.6 Minimum-Time Control

Minimum-time control can also be used for generating the feedforward torqueuffw and the references states xd from Figure 5.1. The trajectory- and feedforwardgeneration are here combined, as the trajectory reference zd is also generated. Inthis section, minimum-time control is exemplified for a single-axis flexible jointmanipulator.

Minimum-time control of robot manipulators can be divided into the minimum-time path-following problem and the minimum-time point-to-point problem. Forthe path-following problem, there are path constraints along the path and therobot is not allowed to deviate from the desired path. For the point-to-pointproblem, only the start and end positions are specified. There are two main ap-proaches for solving minimum-time problems. Direct methods transcribe theproblem to a nonlinear program (NLP) (Betts, 2001) and indirect methods solvethe problem by solving the equations resulting from optimality conditions, e.g.,the Pontryagin maximum principle (Bryson and Ho, 1975). The time-optimalcontrol of rigid robot manipulators with path constraints is approached with di-rect methods in, e.g., Verscheure et al. (2009), and an indirect approach to thesame problem is considered in, e.g, Shiller (1994). An article concerning the gen-eral problem of path-constrained trajectory optimization is Betts and Huffmann(1993). Dahl (1992) approaches the problem with direct and indirect methodsand also shows some results for the flexible joint manipulator.

A linear model of a single-axis flexible joint robot arm (Figure 5.5) can be de-scribed by

Jmqm = k(qa − qm) + d(qa − qm) + u, (5.16a)

Jaqa = −k(qa − qm) − d(qa − qm). (5.16b)

The motor and arm inertia are described by Jm and Ja, respectively, the gear-boxstiffness and damping are k and d, and the applied motor torque is u. The motorangular position is qm and the arm angular position is qa. The minimum-timeproblem for a point-to-point movement (constraint on control variable u only)can be solved using direct transcription. If the problem is discretized using M

time-steps, sample-time h, states x =[qm qa qm qa

]T, movement distance ∆q,

and maximum allowed motor torque umax, we get the following nonlinear pro-gram (NLP):

minu(k),x(k),h

M∑k=1

h = Mh,

s.t. x(k + 1) = f (x(k), u(k), h),

x(1) =[0 0 0 0

]T,

x(M) =[∆q ∆q 0 0

]T,

|u(k)| ≤ umax,

Page 97: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.3 Control of Flexible Joint Manipulators 77

0 0.05 0.1 0.15 0.2 0.25 0.30

0.02

0.04

0.06

Pos

ition

[rad

]

0 0.05 0.1 0.15 0.2 0.25 0.3−2000

−1000

0

1000

2000

Time [s]

Tor

que

[Nm

]

Link PositionMotor Position

Motor TorqueLink Torque

Figure 5.11: Minimum-time control of single-link flexible joint manipulatorwith eigenfrequency 5 Hz and motor torque constraint |u(k)| ≤ 2000 Nm.Movement time is 0.21 s.

i.e., the problem is to minimize the sample time, which is a free parameter. The

optimization parameters are[u(1), . . . , u(M), x(1), . . . , x(M), h

]T.

Figure 5.11–5.12 show the result for two different manipulator elasticities. Thetest case is a short movement of 0.05 rad which is discretized with M = 60 steps.The near minimum-time solution approaches bang-bang control with threeswitches. The manipulator eigenfrequency in the two cases are 5 Hz and 1 Hz,which result in movement times of 0.21 s and 0.45 s, respectively. The minimumtime for the rigid system is 0.2 s. Clearly, the elasticity and the eigenfrequencyshould be taken into account for time-optimal trajectory generation as well as forrobot design.

If a constraint on the link torque (i.e., gearbox torque τgear = k(qa − qm) + d(qa −qm)) is added to the optimization problem, the solution approaches seven switchesaccording to Figure 5.13. An approximative solution to the problem is to com-pute the minimum-time trajectory for the rigid system, i.e. bang-bang controlwith one switch (Bryson and Ho, 1975), and then use flexible joint feedforwardcontrol (5.10) with the rigid trajectory reference as input. However, this is not fea-sible since the feedforward torque depends on the second acceleration derivative,q

[4]ad . One alternative is shown in Figure 5.14 where a rigid trajectory reference

with a limited q[4]ad is constructed, and combined with flexible joint feedforward

control (Lambrechts et al., 2004). The movement time is somewhat larger for thisapproximative solution and the constraints cannot in general be guaranteed.

Page 98: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

78 5 Control of Robot Manipulators

0 0.1 0.2 0.3 0.4 0.5

0

0.02

0.04

0.06

Pos

ition

[rad

]

0 0.1 0.2 0.3 0.4 0.5−2000

−1000

0

1000

2000

Time [s]

Tor

que

[Nm

]

Link PositionMotor Position

Motor TorqueLink Torque

Figure 5.12: Minimum-time control of single-link flexible joint manipulatorwith eigenfrequency 1 Hz and motor torque constraint |u(k)| ≤ 2000. Move-ment time is 0.45 s.

0 0.05 0.1 0.15 0.2 0.25 0.30

0.02

0.04

0.06

Pos

ition

[rad

]

0 0.05 0.1 0.15 0.2 0.25 0.3−2000

−1000

0

1000

2000

Time [s]

Tor

que

[Nm

]

Link PositionMotor Position

Motor TorqueLink Torque

Figure 5.13: Minimum-time control of single-link flexible joint manipulatorwith eigenfrequency 5 Hz, motor torque constraint |u(k)| ≤ 2000, and gear-box torque constraint |τgear (k)| ≤ 1000. Movement time is 0.25 s.

Page 99: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.3 Control of Flexible Joint Manipulators 79

0 0.05 0.1 0.15 0.2 0.25 0.30

0.02

0.04

0.06

Pos

ition

[rad

]

0 0.05 0.1 0.15 0.2 0.25 0.3−2000

−1000

0

1000

2000

Time [s]

Tor

que

[Nm

]

Link PositionMotor Position

Motor TorqueLink Torque

Figure 5.14: Approximate minimum-time control of single-link flexible jointmanipulator with eigenfrequency 5 Hz, motor torque constraint |u(k)| ≤2000, and gearbox torque constraint |τgear (k)| ≤ 1000. Movement time is

0.27 s. The trajectory reference has a limited value of q[4]ad and flexible joint

feedforward is used.

5.3.7 Experimental Evaluations

This section presents some reported experimental evaluations of control methodsfor flexible joint manipulators.

In Swevers et al. (1991), an industrial robot from KUKA is used for evaluationof an improved trajectory generation, and a model-based control concept. Therobot was equipped with three extra encoders in order to measure the link po-sitions of the main axes. The motor positions were measured by the standardcontroller. A state feedback controller combined with feedforward control basedon a flexible joint model was evaluated and compared with the standard con-troller for this robot. The trajectory generation was also modified to yield a tra-jectory based on a 9th order polynomial. The performance of the standard- andmodel-based controllers were evaluated using some test cases4 defined in the in-dustrial robot test standard ISO 9283 (ISO, 1998). The tests showed significantimprovements compared to the standard KUKA industrial controller implemen-tation. The conclusion was that the smooth trajectory from the new trajectorygeneration contributed most, but also that the new flexible controller improvedthe performance at very high velocities and accelerations.

Jankowski and Van Brussel (1992b) mention some problems with feedback lin-earization, such as the complexity of the control laws, the need for measurementor estimation of link acceleration and jerk, and the need for high sampling fre-

4Settling time, overshoot, and path-following error according to the ISO standard were evaluated.

Page 100: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

80 5 Control of Robot Manipulators

quencies. The suggested solution is a discrete-time formulation of the inverse dy-namics which requires the solution of an index-3 differential algebraic equation.Some experimental results are presented in Jankowski and Van Brussel (1992a).

In Caccavale and Chiacchio (1994), an experimental evaluation on an industrialrobot with gear transmission is reported. The robot is the SMART-3 6.12R robotfrom COMAU. A feedforward torque was added to the conventional PID con-troller output. Sample times were 1 ms and 10 ms for the PID controller andthe feedforward computation, respectively. The feedforward torque calculationswere based on a rigid dynamic model in identifiable form, as described in Section4.2.1. The path error was decreased from 3.4 mm to 1.1 mm at a speed of 2 rad/sand an acceleration of 6 rad/s2. It was concluded that the diagonal inertia termsare the most important terms for use in feedforward.

In Grotjahn and Heimann (2002), model-based control of a KUKA KR15 manip-ulator is described. It is concluded that the nonlinear multibody dynamics andthe nonlinear friction are the dominating reasons for path deviation, and that theelasticity does not need to be considered. No torque interface to the controllerwas available. Instead a path correction interface is used together with a feedfor-ward control method called nonlinear precorrection based on an identified rigidbody model including friction. Improvement by learning control and training ofthe feedforward controller is discussed and evaluated. Learning control can com-pensate for all deviations whereas the feedforward training only compensates forthe modeled effects. Thus, learning gives better performance but is very sensi-tive to path changes after the learning where the feedforward training is moreroboust. The different algorithms improve the path-following in a path definedby the ISO 9283 standard.

A full-state feedback controller is presented in Albu-Schäffer and Hirzinger (2000).The motor position qm and the joint output torque τ are measured for each

joint. By numerical differentiation, the state vector x =[qTm qTm τT τT

]Tis

obtained. The state feedback controller is diagonal, i.e., based on an independentjoint approach that neglects the disturbance due to the strong coupling. Grav-ity and friction compensation is added to the controller, and gain schedulingbased on the diagonal inertial terms is also suggested. A Lyapunov-based proofof global stability is given. The experimental evaluation is performed on a DLRlight-weight robot and shows that the bandwidth of the proposed controller istwice the bandwidth of a motor PD controller, given the same damping require-ment. This type of controller is further developed and analyzed in Le Tien et al.(2007) and Albu-Schäffer et al. (2007).

In Zhu (2007), a seven-axes robot with harmonic drives gearboxes is controlledby an adaptive joint-torque controller, where the friction parameters and the gear-box stiffness are continuously adapted. The outer position control loop is basedon virtual decomposition control. Here, qa, qa, qa, qm, qm, τ , and τ are used by thecontroller. Only the positions and torques are measured, and the derivatives areestimated by numerical differentiation. The result was particulary good at ultra-

Page 101: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.4 Control of Flexible Link Manipulators 81

low speeds, due to the adaptive friction compensation. Virtual decompositioncontrol is further described in Zhu (2010).

5.4 Control of Flexible Link Manipulators

This section describes some proposed control methods for the flexible link modeldescribed in Section 3.2.5. The choice of coordinates and reference frames is notunique and there is more than one possible approximate description of the samesystem (Book, 1993). If the actuator torque is applied at one point of the dis-tributed structure, and the response is measured at another point, the system isnon-collocated, and if the finite dimensional approximation of a beam-like sys-tem has a sufficiently large number of assumed modes, the system descriptionwill be non-minimum phase. This means that if the Cartesian end effector posi-tion is to be controlled, the system can be non-minimum phase, and the inversedynamics is then hard to obtain. The control methods described in this sectionare in general feedforward control methods combined with a feedback controllerof, e.g., PD-type.

If the desired Cartesian trajectory zd is known for t ∈ [0, T ], the desired beam tipangles yd , in Figure 3.11, can be computed by the inverse kinematics. In De Lucaet al. (1998) it is shown that the state trajectories and the control torque can be ob-tained by solving an ordinary differential equation (ODE). The problem is to finda bounded solution to this ODE as the system is normally non-minimum phase,i.e., no bounded causal5 solutions to the inverse dynamics exist. Three differentmethods for solving the problem are suggested, and one is experimentally eval-uated. This method finds a non-causal solution by applying iterative learningcontrol (ILC) for time t ∈ [−∆, T + ∆].

A different approach for the problem of point-to-point motion is described fora one-link manipulator in De Luca and Di Giovanni (2001a). Here, an auxiliaryoutput is designed and used as output variable of the system. In this case theangle yd points to a location where the system is minimum phase, but close tonon-minimum phase. In De Luca and Di Giovanni (2001b) the same problem issolved for a two-link manipulator of which one link is flexible. A method basedon dividing the inverse system in a causal and an anti-causal part is presentedin Kwon and Book (1990). The method is limited to linear systems, i.e., one-linkmanipulators. In De Luca and Siciliano (1993) it is shown that a PD controllerwith gravity feedforward is globally asymptotically stable for the flexible linkmanipulator.

The robust control problem of a four-link flexible manipulator is treated in Wanget al. (2002). An H∞ controller for regional pole-placement is designed for theuncertain linearized system. The controller is evaluated by simulation, and tests

5The output of a causal system depends only on past inputs, whereas the output of a non-causalsystem also depends on future inputs. Hence, a non-causal solution to the inverse dynamics, outputsa torque before the start of a movement.

Page 102: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

82 5 Control of Robot Manipulators

on an experimental manipulator show that the proposed controller has betterperformance than an LQ controller.

To summarize, the control of the flexible link manipulator is complicated by thefact that the system can be non-minimum phase. There are several alternativesfor solving the problem, e.g.,

• Find a stable non-causal solution of the inverse dynamics as described inthe references of this section.

• Choose a new output so that the system becomes minimum phase, e.g., thejoint angle for a flexible link robot. The new output should be a reasonableapproximation of the original output.

• For a linear discrete-time system, the zero phase tracking controller (Torfset al., 1991; Tung and Tomizuka, 1993) can be used.

• In Aguiar et al. (2005) a reformulation from tracking to path-following6 issuggested. By parameterizing the geometrical path X by a path variableθ, and then selecting a timing law for θ, the inverse dynamics for the non-minimum phase system can be stabilized.

5.5 Industrial Robot Control

As described in Section 1.1, the control algorithms used by robot manufacturersare seldom published. This section gives a few examples of known facts aboutthe control of commercial robots7, taken from public information sources.

In Grotjahn and Heimann (2002) it is claimed that the feedback controller ofa KUKA robot is a cascaded controller with an inner speed controller of PI typewith sample time 0.5 ms. The outer loop is a position controller with 2 ms sampletime. Only the position is measured, and the speed is estimated by differentiationand low-pass filtering. The controller can thus be described as a diagonal PIDcontroller.

A sliding mode controller based on an elastic model of two-mass type is suggestedin Nihei and Kato (1993) by Fanuc. The motivation is the reduction of vibrationsin short point-to-point movements in, e.g., spotwelding applications. A patentby Fanuc (Nihei et al., 2007) describes a method for reduction of vibrations inrobot manipulators. The method is based on observer estimation of the link posi-tion. The estimated variable is then used in a controller of internal model control(IMC) type. The controller is based on a linear elastic SISO model of two-masstype. On their web-site (Fanuc, 2007), the new Fanuc controller R-J3iC offers en-hanced vibration control as a feature. Fanuc has recently applied for a patent

6The path-following error is in fact a more relevant performance measure for industrial applica-tions as reflected by the ISO 9283 standard.

7The examples are restricted to the four major robot manufacturers, i.e., Fanuc, Motoman, ABB,and KUKA.

Page 103: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5.6 Conclusion 83

on arm position feedback, called secondary position feedback control (Tsai et al.,2010).

The motion control of ABB robots is described as model-based control, and the ac-curacy in continuous path tracking is claimed to be very high (Madesäter, 1995).The model-based controller is implemented in a controller functionality denotedTrueMove, and the time-optimal path generation is denoted QuickMove. An im-proved version of this functionality is called The Second Generation of TrueMoveand QuickMove (ABB, 2007) and further described in Björkman et al. (2008).

Finally, Motoman has a control concept called Advanced Robot Motion (ARM)control for high-performance path accuracy and vibration control (Motoman,2007).

Clearly, high performance motion control is important for the industrial robotmanufacturers. The actual algorithms used are hard to reveal, and an article ora patent does not mean for sure that the described technology is actually used inthe product.

It is also clear that the performance of industrial robots can be very high. Thisindicates that advanced concepts for motion control are used. Some examples ofobtained performance for the "best in class" commercial robots during optimal-time movements:

• Path-following error of large robots with considerable link- and joint flex-ibilities and a payload of more than 200 kg can be in the order of 2 mmat 1.5 m/s according to the ISO 9283 standard, i.e., when the maximumpath-following error is considered. The mean error is considerably smaller,about 0.5 mm.

• The corresponding errors for a medium-sized robot with a payload of 20 kgcould be maximum 0.5 mm and mean 0.1 mm.

• A positioning time of 0.25 s is obtained for a 50 mm point-to-point move-ments for the large 200 kg payload robot described above. Time is mea-sured from start of movement until the tool is inside an error band of 0.3mm. This means that there are almost no vibrations or overshoots whenreaching the final position.

• Dynamic position accuracy better than 0.15 mm considering maximum er-ror, and with a mean value of 0.05 mm at 50 mm/s in laser-cutting applica-tions when using iterative learning control (ILC).

5.6 Conclusion

Control of flexible joint and flexible link manipulators is a large research areawith numerous publications, and almost every possible control method ever in-vented has been suggested for dealing with these systems. This survey has de-scribed only the main approaches.

Page 104: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

84 5 Control of Robot Manipulators

It is clear that the theoretical foundation of the control methods, and the abilityto prove stability, is in focus for many academic robot control researchers. Eval-uation of nominal and robust performance of the proposed methods, is oftenneglected. From the reported simulation studies and experimental evaluations,it is in fact quite hard to judge what the attainable performance is for the differ-ent methods. It is true that it can be hard to use commercial robots for controlevaluations, and that some methods require a larger computational capacity thancurrently available in present robot controllers. However, simulation studies arealways possible to perform. One further comment is that an integral term ismost certainly needed in order to handle model errors and disturbances in a realapplication. The reason for avoiding the integral term in many publications isprobably motivated mainly by the need to prove stability.

The following facts regarding the tracking and point-to-point performance are atleast indicated in the experimental results presented in this survey:

1. Model-based control improves the performance of an industrial-type robot.

2. A rigid model can improve the performance although the robot has elasticgear transmissions.

3. A flexible joint model improves the performance even more. It is not clearwhether the nonlinear model should be used in the feedback loop, i.e., feed-back linearization, or in the feedforward part of the controller.

4. More measurements improve the result, e.g., measurement of link positionor acceleration.

Page 105: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6Conclusion

This first part of the thesis has served as an introduction to modeling and controlof robot manipulators. The aim has been to show how the included papers inPart II relate to the existing methods, and to motivate the need for the researchpresented. In Section 6.1 a summary of the results is given. Suggestions for futureresearch in this area are discussed in Section 6.2.

6.1 Summary

This thesis has investigated aspects on modeling and control of elastic manipula-tors. The work is motivated by the industrial trend to develop weight- and cost-minimized robot manipulators. A large amount of applied research is neededin order to maintain and improve the motion performance of new generationsof robot manipulators. The approach adopted in this thesis is to improve themodel-based control by developing and validating more accurate elastic models.A model, called the extended flexible joint model, is suggested for use in motioncontrol systems, as well as for robot design and performance simulation. Differ-ent aspects of this model, illustrated in Figure 6.1, are treated in this thesis.

85

Page 106: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

86 6 Conclusion

Figure 6.1: A 9 DOF extended flexible joint model with 2 links, 2 motors(M), 3 elastic elements (EE) and 3 rigid bodies (RB).

0204060

0204060

0204060

Mag

nitu

de (

dB)

0204060

0204060

2 10 50−20

0204060

10 50 10 50Frequency (Hz)

10 50 10 50 10 50

Figure 6.2: The magnitude of a 6 × 6 frequency response function (FRF),describing the dynamics between applied motor torques and motor acceler-ations. Nonparametric FRF obtained from measurements (dashed) and para-metric model FRF (solid).

A procedure for multivariable identification of the unknown elastic parameters

Page 107: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6.1 Summary 87

of the extended model is proposed and described in Papers A and B. The proce-dure is applied for identifying these parameters of a real six-axes industrial robot.Paper B gives a detailed description of the proposed frequency-domain gray-boxmethod, and shows that the proposed method is an approximation of a time-domain prediction-error method. Paper A shows that the flexible joint model isinsufficient for modeling a modern industrial manipulator accurately, and thatthe extended model significantly improves the model accuracy. An example ofmeasured- and modeled frequency response functions is shown in Figure 6.2.

0 0.5 1 1.5 2

−0.5

0

0.5

1

X [m]

Z [

m]

Reference Path

Figure 6.3: Snapshots from an animation of a movement resulting from con-trol using the inverse extended flexible joint model. The manipulator is de-scribed by a 5 DOF extended flexible joint model with 2 actuated joints and1 non-actuated joint (the outer joint). The reference path is shown as a dot-ted line with the direction indicated by the solid arrow. The motor angularpositions (transformed to the arm side) are indicated by the dashed lines,and the joint angular positions are indicated by the solid lines.

In Papers C and D, the inverse dynamics of the extended model is derived andstudied. The inverse dynamics solution can be used for feedforward control. Itis shown that the inverse dynamics can be computed as the solution of a high-index differential algebraic equation (DAE). Different DAE solvers are suggestedand evaluated, both for minimum phase and non-minimum phase systems. Asimulation study is presented in Paper C, and in Paper D, the suggested conceptfor inverse dynamics is experimentally evaluated using an industrial robot ma-nipulator. Figure 6.3 illustrates the inverse dynamics solution. The conclusion

Page 108: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

88 6 Conclusion

is that the extended flexible joint inverse dynamics method can improve the ac-curacy for manipulators with significant elasticities, that cannot be described bythe flexible joint model.

Paper E investigates the discrete-time implementation of the feedback lineariza-tion approach for a realistic three-axes flexible joint robot model and comparesthe result with a feedforward approach. An example trajectory from the evalu-ation is shown in Figure 6.4. The conclusion is that feedforward control givesbetter performance and reduces the requirements on the controller- and sensorhardware.

Figure 6.4: 20 Monte Carlo simulations, where the uncertain robot executesa circular trajectory, using a feedback linearization controller.

Figure 6.5: The SISO Benchmark Robot Model.

Robust feedback control of a one-axis four-mass model, illustrated in Figure 6.5,

Page 109: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6.1 Summary 89

is studied in Paper F. The proposed SISO benchmark problem concerns distur-bance rejection for the uncertain robot manipulator using a discrete-time con-troller. The benchmark model is validated by experiments on a real industrialmanipulator. Several proposed solutions are presented and analyzed. The con-clusion is that, for the uncertain SISO system using motor measurements only,it is hard to improve the result of a PID-controller. One proposed solution notincluded in Paper F is Varso et al. (2005).

Figure 6.6: The MIMO Benchmark System.

Finally, Paper G presents a MIMO benchmark problem for a nonlinear two-linkmanipulator with elastic nonlinear gear transmissions, illustrated in Figure 6.6.This problem also concerns disturbance rejection for the uncertain robot manip-ulator using a discrete-time controller. The benchmark model is validated byexperiments on a real industrial manipulator. Two solutions have been receivedfor this benchmark problem:

A Solution A (unpublished) has a controller that is based on a nominal modelwith robot configuration dependence. The (SISO) controllers uses polyno-mial pole placement with additional closed loop poles to increase the ro-bustness. The states are estimated by a Kalman filter. The resulting perfor-mance, using the proposed controller, is worse than the performance of thedefault PID controller included in the benchmark problem.

B Solution B is based on a robust frequency-domain method called QFD, whichis an extension of quantitative feedback theory (QFT), see, Horowitz (1991).The solution is described in Yaniv and Pila (2009), and the resulting (SISO)controllers are filtered PD controllers in series with two complex lead fil-ters. The controller has a slightly worse performance than the default PIDcontroller.

To summarize, no solutions with better performance than the default PID con-troller has yet been received. The conclusion is that, for the uncertain MIMOsystem using motor measurements only, it is hard to improve the result of a diag-onal PID-controller. However, no multivariable controller has yet been proposed.

Page 110: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

90 6 Conclusion

6.2 Future Research

Based on the experience obtained from the work described in this thesis, severalresearch-related questions have come up. Thus, it would have been interestingto proceed working on the following topics:

• Modeling and Identification

– Identification methods with minimum energy, i.e., minimum experi-ment time and minimum amplitude.

– Identification of transmission nonlinearities.

– Automatic frequency-weight selection.

– Automatic gray-box model structure selection.

– Identification of elasticity models with more DOF than described inthis thesis.

– Identification based on both motor position and arm side measure-ments. Some possibilities are position, speed, or acceleration for thejoints/links and/or the tool. This will include investigations of theoptimal accelerometer/gyro placement, in combination with optimalconfigurations for identification.

• Feedforward Control

– Experimental evaluation of feedforward control based on the extendedflexible joint model, using a more complicated and realistic robot, e.g.,a six-axes industrial robot.

– Extended theoretical analysis of the inverse dynamics problem (e.g.,solvability, controllability and uniqueness).

– Development of more efficient DAE solvers.

– Development of alternative solvers for non-minimum phase dynamics.

– Development of approximate control algorithms for on-line computa-tion.

• Feedback Control

– Design of a MIMO controller for the MIMO benchmark problem, in-cluding experimental evaluation.

– Further development of robust feedback control using additional armsensors, e.g., arm side encoders, accelerometers, or gyros.

Page 111: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography

ABB. IRB 6640 - ABB announce a new stronger robot - thenext generation. http://www.abb.com/cawp/seitp202/ce7d8060f91e36e4c125736a0024afb5.aspx, 2007. 2007-12-03.

A.P. Aguiar, J.P. Hespanha, and P.V. Kokotivic. Path-following for nonminimumphase systems removes performance limitations. IEEE Transactions on Auto-matic Control, 50(2):234–239, 2005.

F. Al-Bender, V. Lampaert, , and J. Swevers. The generalized maxwell-slip model:A novel model for friction simulation and compensation. IEEE Transactions onAutomatic Control, 50(11):1883–1887, 2005.

A. Albu-Schäffer and G. Hirzinger. Parameter identification and passivity basedjoint control for a 7DOF torque controlled light weight robot. In Proc. 2001IEEE International Conference on Robotics and Automation, pages 2852–2858,Seoul, Korea, May 2001.

A. Albu-Schäffer and G. Hirzinger. State feedback controller for flexible jointrobots: A globally stable approach implemented on DLR’s light-weight robots.In Proceedings of the 2000 IEEE/RSJ International Conference on IntelligentRobots and Systems, pages 1087–1093, Takamatsu, Japan, October 2000.

A. Albu-Schäffer, C. Ott, and G. Hirzinger. A unified passivity-based controlframework for position, torque and impedence control of flexible joint robots.The International Journal of Robotics Research, 26(1):23–39, 2007.

C.H. An, C.G Atkeson, and J.M. Hollerbach. Model-Based Control of a RobotManipulator. The MIT press, Cambridge, Massachusetts, 1988.

B. Anderson and J.B. Moore. Optimal Filtering. Dover Publications, Inc, Mineola,New York, 1979.

B. Anderson and J.B. Moore. Optimal Control: Linear Quadratic Methods.Prentice-Hall, Englewood Cliffs, NJ, USA, 1990.

B. Armstrong-Hélouvry. Control of Machines with Friction. Kluwer AcademicPublishers, Norwell, Massachusetts, USA, 1991.

91

Page 112: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

92 Bibliography

K.J. Åström. The future of control. Modeling, Identification and Control, 15(3):127–134, 1994.

K.J. Åström and T. Hägglund. Advanced PID Control. ISA - The Instrumentation,Systems and Automation Society, Research Triangle Park, NC, USA, 2006. ISBN1-55617-942-1.

K.J. Åström and B. Wittenmark. Computer-Controlled Systems: Theory and De-sign. Prentice Hall, Englewood Cliffs, New Jersey, USA, 1996.

P. Avitabile. Experimental modal analysis - a simple non-mathematical presenta-tion. Sound and vibration, 35(1):20–31, January 2001.

L. Bascetta and P. Rocco. Modelling flexible manipulators with motors at thejoints. Mathematical and Computer Modelling of Dynamical Systems, 8(2):157–183, 2002.

F. Behi and D. Tesar. Parametric identification for industrial manipulators usingexperimental modal analysis. IEEE Transactions on Robotics and Automation,7(5):642–52, 1991.

A. Bellini, G. Figalli, and G. Ulivi. Sliding mode control of a direct drive robot. InConference Record of the IEEE Industry Application Society Annual Meeting,vol.2, pages 1685–1692, San Diego, CA, USA, 1989.

M. Benosman and G. Le Vey. Control of flexible manipulators: A survey. Robotica,22:533–545, 2004.

E. Berglund and G. E. Hovland. Automatic elasticity tuning of industrial robotmanipulators. In 39th IEEE Conference on Decision and Control, pages 5091–5096, Sydney, Australia, December 2000.

D.S. Bernstein. On bridging the theory/practise gap. IEEE Control Systems Mag-azine, 19(6):64–70, 1999.

J. T. Betts. Practical Methods for Optimal Control Using Nonlinear Programming.Society for Industrial and Applied Mathematics, Philadelphia, 2001.

J. T. Betts and W. P. Huffmann. Path-constrained trajectory optimization usingsparse sequential quadratic programming. Journal of Guidance, Control, andDynamics, 16(1):59–68, 1993.

M. Björkman, T. Brogårdh, S. Hanssen, S.-E. Lindström, S. Moberg, and M. Nor-rlöf. A new concept for motion control of industrial robots. In Proceedings of17th IFAC World Congress, 2008, Seoul, Korea, July 2008.

W. Book and K. Obergfell. Practical models for practical flexible arms. In Proc.2000 IEEE International Conference on Robotics and Automation, pages 835–842, San Fransisco, CA, 2000.

W.J. Book. Controlled motion in an elastic world. Journal of Dynamic SystemsMeasurement and Control, Transactions of the ASME, 115:252–261, 1993.

Page 113: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 93

T. Brogårdh. Present and future robot control development—an industrial per-spective. Annual Reviews in Control, 31(1):69–79, 2007.

T. Brogårdh. Robot control overview: An industrial perspective. Modeling, Iden-tification and Control MIC, 30(3):167–180, 2009.

T. Brogårdh and S. Moberg. Method for determining load parameters for a manip-ulator. US Patent 6343243, Januari 2002. URL http://www.patentstorm.us/patents/6343243.html.

T. Brogårdh, S. Moberg, S. Elfving, I. Jonsson, and F. Skantze. Method for super-vision of the movement control of a manipulator. US Patent 6218801, April2001. URL http://www.patentstorm.us/patents/6218801.

A. E. Bryson and Y.-C. Ho. Applied Optimal Control: Optimization, Estimation,and Control. Taylor and Francis, 1975.

F. Caccavale and P. Chiacchio. Identification of dynamic parameters and feedfor-ward control for a conventional industrial manipulator. Control Eng. Practice,2(6):1039–1050, 1994.

C. Canudas de Wit, H. Olsson, K.J. Åström, and P. Lischinsky. A new model forcontrol of systems with friction. IEEE Transactions on Automatic Control, 40(3):419–425, 1995.

A. Carvalho Bittencourt, E. Wernholt, S. Sander-Tavallaey, and T. Brogårdh. Anextended friction model to capture load and temperature effects in robot joints.In Proceedings of the 2010 IEEE/RSJ International Conference on IntelligentRobots and Systems, Taipei, Taiwan, October 2010.

J.J. Craig. Adaptive Control of Mechanical Manipulators. Addison-Wesley Pub-lishing Company, Menlo Park, California, USA, 1988.

J.J. Craig. Introduction to Robotics Mechanics and Control. Addison Wesley,Menlo Park, California, USA, 1989.

O. Dahl. Path Constrained Robot Control. PhD thesis, Lund Institue of Technol-ogy, SE-221 00 Lund, Sweden, 1992.

A. De Luca. Feedforward/feedback laws for the control of flexible robots. InProceedings of the 2000 IEEE International Conference on Robotics and Au-tomation, pages 233–240, San Francisco, CA, April 2000.

A. De Luca. Dynamic control of robots with joint elasticity. In Proceedings ofthe 1988 IEEE International Conference on Robotics and Automation, pages152–158, Philadelphia, PA, 1988.

A. De Luca and G. Di Giovanni. Rest-to-rest motion of a one-link flexible arm. In2001 IEEE/ASME International Conference on Advanced Intelligent Mecha-tronics Proceedings, pages 923–928, Como, Italy, 2001a.

A. De Luca and G. Di Giovanni. Rest-to-rest motion of a two-link robot with a

Page 114: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

94 Bibliography

flexible forearm. In 2001 IEEE/ASME International Conference on AdvancedIntelligent Mechatronics Proceedings, pages 929–935, Como, Italy, 2001b.

A. De Luca and L. Lanari. Robots with elastic joints are linearizable via dynamicfeedback. In 34th IEEE Conference on Decision and Control, pages 3895–3897,New Orleans, LA, 1995.

A. De Luca and B. Siciliano. Closed-form dynamic model of planar multilinklightweight robots. IEEE Transactions on Systems, Man, and Cybernetics, 21(4):826–839, 1991.

A. De Luca and B. Siciliano. Regulation of flexible arms under gravity. IEEETransactions on Robotics and Automation, 9(4):463–467, 1993.

A. De Luca, S. Panzieri, and G. Ulivi. Stable inversion control for flexible linkmanipulators. In Proc. 1998 IEEE International Conference on Robotics andAutomation, pages 799–804, Leuven, Belgium, May 1998.

A. De Luca, R. Farina, and P. Lucibello. On the control of robots with visco-elastic joints. In Proc. 2005 IEEE International Conference on Robotics andAutomation, pages 4297–4302, Barcelona, Spain, 2005.

A. De Luca, D. Schröder, and M. Thummel. An acceleration-based state observerfor robot manipulators with elastic joints. In Proc. 2007 IEEE InternationalConference on Robotics and Automation, pages 3817–3823, Roma, Italy, April2007.

R. Dhaouadi, F. H. Ghorbel, and P. S. Gandhi. A new dynamic model of hysteresisin harmonic drives. IEEE Transactions on Industrial Electronics, 50(6):1165–1171, 2003.

H.A. Elmaraghy, T. Lahdhiri, and F. Ciuca. Robust linear control of flexible jointrobot systems. Journal of Intelligent and Robotic Systems: Theory and Appli-cations, 34(4):335–356, 2002.

Fanuc. R-30iA - Product detail. http://www.fanucrobotics.cz/products/robots/controller.asp?idp=317&id=13, 2007. 2007-12-03.

B. Feeny and F.C. Moon. Chaos in a forced dry-friction oscillator: Experimentsand numerical modelling. Journal of Sound and Vibration, 170(3):303–323,1994.

G. Ferretti, G. Magnani, and P. Rocco. LQG control of elastic servomechanismsbased on motor position measurements. In AMC’98 - Coimbra. 1998 5th Inter-national Workshop on Advanced Motion Control. Proceedings, pages 617–622,Coimbra, Portugal, 1998.

H. Goldstein. Classical Mechanics. Addison-Wesley Publishing Company, Read-ing, Massachusetts, USA, 1980.

Page 115: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 95

M. Grotjahn and B. Heimann. Model-based feedforward control in industrialrobots. The International Journal of Robotics Research, 21(1):45–60, 2002.

S. Gunnarsson, M. Norlöf, G. Hovland, U. Carlsson, T. Brogårdh, T. Svensson, andS. Moberg. Pathcorrection for an industrial robot. US Patent 7130718, October2006. URL http://www.patentstorm.us/patents/7130718.html.

T. Hardeman. Modelling and Identification of Industrial Robots including Driveand Joint Flexibilities. Phd thesis, University of Twente, The Netherlands,February 2008.

G.G. Hastings and W.J. Book. A linear dynamic model for flexible robotic manip-ulators. IEEE Control Systems Magazine, 7(1):61–64, 1987.

R. Henriksson, M. Norrlöf, S. Moberg, E. Wernholt, and T. Schön. Experimentalcomparison of observers for tool position estimation of industrial robots. InProceedings of 48th IEEE Conference on Decision and Control, pages 8065–8070, Shanghai, China, December 2009.

I. Horowitz. Survey of quantitative feedback theory (QFT). International Journalof Control, 53(2):255–291, 1991.

G. E. Hovland, E. Berglund, and S. Hanssen. Identification of coupled elasticdynamics using inverse eigenvalue theory. In 32nd International Symposiumon Robotics (ISR), pages 1392–1397, Seoul, Korea, April 2001.

G.E. Hovland, E. Berglund, and O.J. Sørdalen. Identification of joint elasticityof industrial robots. In Proceedings of the 6th International Symposium onExperimental Robotics, pages 455–464, Sydney, Australia, March 1999.

G.E. Hovland, S. Hanssen, E. Gallestey, S. Moberg, T. Brogårdh, S. Gunnarsson,and M. Isaksson. Nonlinear identification of backlash in robot transmissions.In Proc. 33rd ISR (International Symposium on Robotics), Stockholm, Sweden,October 2002.

IFR. International federation of robotics - statistics 2010. http://www.ifr.org/uploads/media/2010_Executive_Summary_rev.pdf, 2010.

A. Isidori. Nonlinear Control Systems. Springer-Verlag, London, Great Britain,1995.

ISO. ISO 9283:1998, manipulating industrial robots - performance criteria andrelated test methods. http://www.iso.org, 1998.

K.P. Jankowski and H. Van Brussel. An approach to discrete inverse dynamicscontrol of flexible-joint robots. IEEE Transactions on Robotics and Automation,8(5):651–658, October 1992a.

K.P. Jankowski and H. Van Brussel. An approach to discrete inverse dynamicscontrol of flexible-joint robots. Journal of Dynamic Systems, Measurement,and Control, 114:229–233, June 1992b.

Page 116: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

96 Bibliography

H. Jerregård and N. Pihl. Method for controlling a robot. US Patent 7209802,April 2007. URL http://www.patentstorm.us/patents/7209802.html.

C.-Y. Ji, T.-C. Chen, and Y.-L. Lee. Joint control for flexible-joint robot withinput-estimation approach and LQG method. Optimal Control Applicationsand Methods, (29):101–125, 2008.

R. Johansson. System Modeling and Identification. Prentice Hall, 1993.

R. Johansson, A. Robertsson, K. Nilsson, and M. Verhaegen. State-space systemidentification of robot manipulator dynamics. Mechatronics, 10(3):403–418,2000.

T. Kailath. Linear Systems. Prentice Hall, Englewood Cliffs, New Jersey, USA,1980.

T. R. Kane and D. A. Levinson. The use of Kane’s dynamical equations in robotics.International Journal of Robotics Research, 2(3), 1983.

T. R. Kane and D. A. Levinson. Dynamics: Theory and Applications. McGraw-Hill Publishing Company, 1985.

J. Kautsky, N.K. Nichols, and P. Van Dooren. Robust pole assignment in linearstate feedback. International Journal of Control, 41(5):1129–1155, 1985.

P.K. Khosla and T. Kanade. Real-time implementation and evaluation ofcomputed-torque scheme. IEEE Transactions on Robotics and Automation, 5(2):245–253, 1989.

P. Kokotovic and M. Arcak. Constructive nonlinear control: a historical perspec-tive. Automatica, 37:637–662, 2001.

K. Kozlowski. Modelling and identification in robotics. Advances in IndustrialControl. Springer, London, 1998.

D.-S. Kwon and W.J. Book. An inverse dynamic method yielding flexible manip-ulator state trajectories. In Proceedings of the 1990 American Control Confer-ence, vol 1, pages 186–193, San Diego, CA, USA, 1990.

P. Lambrechts, M. Boerlage, and M. Steinbuch. Trajectory planning and feedfor-ward design for high performance motion systems. In Proceedings of the 2004American Control Conference, Boston, Massachusetts, 2004.

L. Le Tien, A. Albu-Schäffer, and G. Hirzinger. Mimo state feedback controllerfor a flexible joint robot with strong joint coupling. In Proc. 2007 IEEE Interna-tional Conference on Robotics and Automation, pages 3824–3830, Roma, Italy,April 2007.

M. Lesser. The Analysis of Complex Nonlinear Mechanical Systems: A ComputerAlgebra assisted approach. World Scientific Publishing Co Pte Ltd, Singapore,2000.

Page 117: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 97

L. Ljung. System Identification: Theory for the User. Prentice Hall, Upper SaddleRiver, New Jersey, USA, 2nd edition, 1999.

L. Ljung and T. Glad. Control Theory. CRC Press, 2001. ISBN 0748408789.

Å. Madesäter. Faster and more accurate industrial robots. Industrial Robot, 22(2):14–15, 1995.

S. Moberg. Robust control of a multivariable nonlinear flexible manipulator - abenchmark problem. www.robustcontrol.org, 2007.

S. Moberg and S. Hanssen. A DAE approach to feedforward control of flexiblemanipulators. In Proc. 2007 IEEE International Conference on Robotics andAutomation, pages 3439–3444, Roma, Italy, April 2007.

S. Moberg and S. Hanssen. On feedback linearization for robust tracking controlof flexible joint robots. In Proc. 17th IFAC World Congress, Seoul, Korea, July2008.

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators. In Multi-body Dynamics 2009, Warsaw, Poland, July 2009.

S. Moberg and S. Hanssen. Inverse dynamics of robot manipulators using ex-tended flexible joint models. 2010. Submitted to IEEE Transactions on Robotics(under revision).

S. Moberg and J. Öhr. Svenskt mästerskap i robotreglering. In Swedish ControlMeeting 2004, Göteborg, Sweden, May 26-27 2004.

S. Moberg and J. Öhr. Robust control of a flexible manipulator arm: A benchmarkproblem. Prague, Czech Republic, 2005. 16th IFAC World Congress.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust controlof a multivariable nonlinear flexible manipulator. In Proc. 17th IFAC WorldCongress, Seoul, Korea, July 2008.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust feed-back control of a flexible manipulator. IEEE Transactions on Control SystemsTechnology, 17(6):1398–1405, November 2009.

S. Moberg, E. Wernholt, S. Hanssen, and T. Brogårdh. Modeling and parameterestimation of robot manipulators using extended flexible joint models. 2010.Submitted to Journal of Dynamic Systems Measurement and Control, Transac-tions of the ASME.

Motoman. Introducing NX100 - the Next Generation of Robot Controller. http://www.motoman.co.uk/NX100.htm, 2007. 2007-12-03.

M.J. Van Nieuwstadt and R.M. Murray. Real-time trajectory generation for differ-entially flat systems. International Journal of Robust and Nonlinear Control, 8(11):995–1020, 1998.

Page 118: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

98 Bibliography

R. Nihei and T. Kato. Servo control for robot. In 24th International Symposiumon Industrial Robots (ISIR), Tokyo, Tokyo, Japan, 1993.

R. Nihei, T. Kato, and S Arita. Vibration control device. US Patent 7181294,February 2007. URL http://www.patentstorm.us/patents/7181294.html.

M. Norrlöf. Iterative Learning Control: Analysis, Design, and Experiments. PhDthesis, Linköping University, SE-581 83 Linköping, Sweden, 2000.

J. Öhr, S. Moberg, E. Wernholt, S. Hanssen, J. Pettersson, S. Persson, and S. Sander-Tavallaey. Identification of flexibility parameters of 6-axis industrial manipula-tor models. In Proc. ISMA2006 International Conference on Noise and Vibra-tion Engineering, pages 3305–3314, Leuven, Belgium, September 2006.

H. Olsson. Control Systems with Friction. PhD thesis, Lund Institue of Technol-ogy, SE-221 00 Lund, Sweden, 1996.

A.V. Oppenheim and R.W. Schafer. Digital Signal Processing. Prentice Hall, En-glewood Cliffs, New Jersey, USA, 1975.

M. Östring and S. Gunnarsson. LQG control of a flexible servo. In Second confer-ence on Computer Science and Systems Engineering in Linköping, CCSSE99,pages 125–132, October 1999.

M. Östring, S. Gunnarsson, and M. Norrlöf. Closed-loop identification of an in-dustrial robot containing flexibilities. Control Engineering Practice, 11:291–300, March 2003.

M. T. Pham, M. Gautier, and Ph. Poignet. Identification of joint stiffness withbandpass filtering. In 2001 IEEE International Conference on Robotics andAutomation, pages 2867–72, Seoul, Korea, May 2001.

M. T. Pham, M. Gautier, and Ph. Poignet. Accelerometer based identification ofmechanical systems. In 2002 IEEE International Conference on Robotics andAutomation, pages 4293–4298, Washington, DC, May 2002.

R. Pintelon and J. Schoukens. System identification: a frequency domain ap-proach. IEEE Press, New York, 2001.

D.B. Ridgely and M.B. McFarland. Tailoring theory to practise in tactical missilecontrol. IEEE Control Systems Magazine, 19(6):49–55, 1999.

A. Robertsson. On Observer-Based Control of Nonlinear Systems. PhD thesis,Dept. of Automatic Control, Lund Institue of Technology, SE-221 00 Lund, Swe-den, 1999.

P. Rouchon, M. Fliess, J. Lévine, and P. Martin. Flatness, motion planning andtrailer systems. In Proceedings of the 32nd Conference on Decision and Con-trol, pages 2700–2705, San Antonio, Texas, December 1993.

Page 119: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 99

M. Ruderman, F. Hoffmann, and T. Bertram. Modeling and identification of elas-tic robot joints with hysteresis and backlash. IEEE Transactions on IndustrialElectronics, 56(10):3840–3847, 2009.

W.J. Rugh. Linear System Theory. Prentice Hall, Upper Saddle River, New Jersey,USA, 1996.

H.G. Sage, M.F. De Mathelin, and E. Ostertag. Robust control of robot manipula-tors: A survey. International Journal of Control, 72(16):1498–1522, 1999.

V. Santibanez and R. Kelly. PD control with feedforward compensation for robotmanipulators: analysis and experimentation. Robotica, 19:11–19, 2001.

L. Sciavicco and B. Siciliano. Modeling and Control of Robotic Manipulators.Springer, London, Great Britain, 2000.

A.A. Shabana. Dynamics of Multibody Systems. Cambridge University Press,Cambridge, United Kingdom, 1998.

Z. Shiller. Time-energy optimal control of articulated systems with geometricpath constraints. In Proc. 1994 IEEE International Conference on Robotics andAutomation, pages 2680–2685, San Diego, CA, 1994.

B. Siciliano and O. Khatib, editors. Springer Handbook of Robotics. Springer-Verlag, Berlin Heidelberg, 2008.

B. Siciliano, L. Sciavicco, L. Villani, and G. Oriolo. Robotics - Modelling, Planningand Control. Springer, London, Great Britain, 2010.

S. Skogestad and I. Postlethwaite. Multivariable Feedback Control. Wiley, NewYork, 1996.

J.-J. Slotine and W. Li. Applied Nonlinear Control. Prentice Hall, EnglewoodCliffs, New Jersey, USA, 1991.

T. Söderström and P. Stoica. System Identification. Prentice-Hall Int., London,Great Britain, 1989.

M. W. Spong. Modeling and control of elastic joint robots. Journal of DynamicSystems, Measurement, and Control, 109:310–319, December 1987.

M. W. Spong, S. Hutchinson, and M. Vidyasagar. Robot Modeling and Control.Wiley, 2006.

M.W. Spong. Handbook of Control. CRC Press, 1996. Chapter, Motion Controlof Robot Manipulators, page 1339–1350.

J. Swevers, D. Torfs, M. Adams, J. De Schutter, and H. Van Brussel. Comparison ofcontrol algorithms for flexible joint robots implemented on a KUKA ir 161/60industrial robot. In 91 ICAR. Fifth Conference on Advanced Robotics. Robotsin Unstructured Environments., Pisa, Italy, 1991.

J. Swevers, W. Verdonck, and J. De Schutter. Dynamic model identification forindustrial robots. IEEE Control Systems Magazine, pages 58–71, October 2007.

Page 120: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

100 Bibliography

P. Tomei. A simple PD controller for robots with elastic joints. IEEE Transactionson Automatic Control, 36(10):1208–1213, 1991.

D. Torfs, J. Swevers, and J. De Schutter. Quasi-perfect tracking control of non-minimal phase systems. In 46th IEEE Conference on Decision and Control,pages 241–244, Brighton, England, 1991.

J. Tsai, E. Wong, J. Tao, H. D. McGee, and H. Akeel. Secondary position feedbackcontrol of a robot. US Patent Application US2010191374, July 2010. URLhttp://v3.espacenet.com/.

E.D. Tung and M. Tomizuka. Feedforward tracking controller design based onthe identification of low frequency dynamics. Journal of Dynamic SystemsMeasurement and Control, Transactions of the ASME, 115:348–356, 1993.

T.D. Tuttle and W.P. Seering. A nonlinear model of a harmonic drive gear trans-mission. IEEE Transactions on Robotics and Automation, 12(3):368–374, 1996.

J. Varso, K. Zenger, V. Hölttä, and H. Koivo. Advanced solution for a benchmarkrobot control problem. In Proc. IEEE International Symposium on Computa-tional Intelligence in Robotics and Automation, pages 373–378, Helsinki, Fin-land, 2005.

D. Verscheure, B. Demeulenaere, J. Swevers, J. De Schutter, and M. Diehl. IEEEtransactions on automatic control. Time-Optimal Path Tracking for Robots: AConvex Optimization Approach, 54(10):2318–2327, 2009.

Z. Wang, H. Zeng, D.W.C. Ho, and H. Unbehauen. Multiobjective control of a four-link flexible manipulator: A robust H-infinity approach. IEEE Transactions onControl Systems Technology, 10(6):866–875, 2002.

E. Wernholt. Multivariable Frequency-Domain Identification of IndustrialRobots. PhD thesis, Linköping University, SE-581 83 Linköping, Sweden, 2007.

E. Wernholt and S. Gunnarsson. Nonlinear identification of a physically parame-terized robot model. In Proc. 14th IFAC Symposium on System Identification,pages 143–148, Newcastle, Australia, March 2006.

E. Wernholt and S. Moberg. Frequency-domain gray-box identification of indus-trial robots. In 17th IFAC World Congress, pages 15372–15380, Seoul, Korea,July 2008a.

E. Wernholt and S. Moberg. Experimental comparison of methods for multivari-able frequency response function estimation. In 17th IFAC World Congress,pages 15359–15366, Seoul, Korea, July 2008b.

E. Wernholt and S. Moberg. Nonlinear gray-box identification using local modelsapplied to industrial robots. Automatica, 2010. Accepted for publication.

O. Yaniv and A. Pila. QFD of a multivariable nonlinear flexible manipulator:Benchmark problem. In Proc. of the 6th IFAC Symposium on Robust ControlDesign, Haifa, Israel, 2009.

Page 121: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 101

W.-H. Zhu. Precision control of robots with harmonis drives. In Proc. 2007IEEE International Conference on Robotics and Automation, pages 3831–3836,Roma, Italy, April 2007.

W.-H. Zhu. Virtual Decomposition Control: Toward Hyper Degrees of FreedomRobots. Springer-Verlag, Berlin Heidelberg, 2010.

Page 122: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 123: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Part II

Publications

Page 124: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 125: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Paper AModeling and Parameter Estimation

of Robot Manipulators usingExtended Flexible Joint Models

Authors: Stig Moberg , Erik Wernholt, Sven Hanssen, and Torgny Brogårdh

Edited version of the paper:

S. Moberg, E. Wernholt, S. Hanssen, and T. Brogårdh. Modeling and pa-rameter estimation of robot manipulators using extended flexible jointmodels. 2010. Submitted to Journal of Dynamic Systems Measurementand Control, Transactions of the ASME.

Page 126: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 127: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Modeling and Parameter Estimation ofRobot Manipulators using Extended

Flexible Joint Models

Stig Moberg∗ ,†, Erik Wernholt∗, Sven Hanssen,∗∗ ,† and Torgny Brogårdh†

∗Dept. of Electrical Engineering,Linköping University,

SE–581 83 Linköping, Sweden{stig,erikw}@isy.liu.se

†ABB AB,Robotics,

SE-721 68 Västerås, [email protected]@se.abb.com

[email protected]

∗∗Department of Solid Mechanics,Royal Institute of Technology,SE-100 44 Stockholm, Sweden

[email protected]

Abstract

This paper considers the problem of dynamic modeling and identifi-cation of robot manipulators with respect to their elasticities. The so-called flexible joint model, modeling only the torsional gearbox elas-ticity, is shown to be insufficient for modeling a modern industrialmanipulator accurately. The extended flexible joint model, wherenon-actuated joints are added to model the elasticity of the links andbearings, is used to improve the model accuracy. The unknown elas-ticity parameters are estimated using a frequency domain gray-boxidentification method. The conclusion is that the obtained model de-scribes the movements of the motors and the tool mounted on therobot with significantly higher accuracy. Similar elasticity model pa-rameters are obtained when using two different output variables forthe identification, the motor position and the tool acceleration.

1 Introduction

Modeling of elastic robot manipulators has been studied by the industrial andacademic community since the 1970’s. There are two main approaches for mod-eling elastic robot manipulators. The first approach is the flexible joint model,which is a lumped parameter model based on the assumption that the main elas-ticity is concentrated in the drive train, i.e., in the gearboxes. An analysis of a

107

Page 128: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

108 Paper A Modeling of Robot Manipulators using EFJ Models

representative industrial robot was presented in Sweet and Good (1985) whereit was concluded that the drive train elasticities of the three main axes are crit-ical for robot motion control design. These elasticities, modeled as one spring-damper pair for each main axis, were found necessary to include in the model toget a good accuracy in the frequency region 0 to 50 Hz. It was also found thatthe elasticities of the gearboxes are nonlinear and that a stiffening spring can beused to model this nonlinearity. The presence of structural elasticity (bendingand torsion of the links) was also noted, but this could be neglected in compari-son to the dominating drive train elasticity. Another issue related to the designof a flexible joint model is whether the inertial couplings between the motors andthe rigid links should be included. In Spong (1987), a multivariable flexible jointmodel was presented, where this inertial coupling was neglected because of highgear ratio, and this model has since then been the main approach for modelingand control design of elastic industrial-like robot manipulators. The completeflexible joint model, taking all couplings into account, is described in, e.g., Tomei(1991) and De Luca (2000).

The second approach is the flexible link model, described in, e.g., De Luca and Si-ciliano (1991) and Book and Obergfell (2000). In this approach, the manipulatorarms are modeled as beams with a distributed elasticity. The infinite-dimensionalmodel is truncated to get a finite model, hence this model is also called the as-sumed modes model. This model is often applied to single link manipulators,directly actuated by electric or hydraulic actuators with no transmission. Some-times multi-link manipulators are also considered. Normally, only the elasticityin the rotational direction is considered, i.e., the link deformation is restricted toa plane perpendicular to the preceding joint. Two examples of 3-D flexible linkmodeling are Yoshikawa et al. (1990) and Ueno et al. (1991). The flexible link ap-proach has mostly been applied on very elastic and light-weight research manip-ulators. In, e.g., De Luca (2000) and Siciliano and Khatib (2008), both the flexiblelink and the flexible joint approaches are described, and in Subudhi and Morris(2002), a model that combines the flexible joint and flexible link approaches isused.

The development of industrial robots has to a large extent been focused on in-creasing the robot performance while reducing the robot cost, as described inBrogårdh (2007, 2009). This leads to the use of weight- and cost optimized robotcomponents with increased elasticity. For large robots with a payload of 100–200 kg, the robot weight to payload ratio has decreased from 15 to 5 during thelast 20 years. For smaller robots, the ratio is generally somewhat higher, but thereduction is about the same. This development leads to more complicated vi-bration modes inside the control bandwidth and enhances the need for accuratemodels and identification methods. An example of a modern industrial robotmanipulator is shown in Figure 1.

In Öhr et al. (2006) and Moberg and Hanssen (2007), it was claimed that theflexible joint model cannot accurately describe a modern industrial robot anda model called the extended flexible joint model was introduced. However, no

Page 129: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 Robot Manipulator Model 109

Figure 1: The IRB4600 robot from ABB.

global validation of the proposed model has yet been published, i.e., a validationof the model for the complete workspace of the robot. Moreover, according tothe authors’ knowledge, no global validation of the flexible joint approach for anindustrial robot has ever been published. The main purpose of this paper is tovalidate the extended flexible joint model on a modern industrial manipulator,with the flexible joint model as a reference. The paper also contains a descriptionof the parameter estimation (identification) method used. Moreover, some un-published improvements of the identification method are presented. The paperis organized as follows: The extended flexible joint model is described in Section2 and the parameter estimation procedure is described in Section 3. In Section 4,the identifiability and parameter accuracy are investigated in a simulation study,and in Section 5, the (extended) flexible joint model is identified and validatedfor different model structures, using a real industrial manipulator with motor an-gular position measurements only. Section 6 further validates the model by theuse of tool acceleration measurements, and Section 7 validates the model in thetime-domain. Finally, Section 8 concludes the paper.

2 Robot Manipulator Model

The extended flexible joint model is a lumped parameter model, which consistsof a serial1 kinematic chain of rigid bodies. The rigid bodies are connected byelastic elements, representing torsional, and if needed also translational, deflec-tion. The elastic elements consist of one or more elastic joints, i.e., discretelylocalized spring-damper pairs. Two examples of elastic elements are shown inFigure 2. An actuated joint consists of a motor and a gearbox, and the corre-sponding spring-damper pair models the torsional deflection of the gearbox. Anon-actuated joint models elasticities in, e.g., bearings, foundations, tools, loads,and links (bending and torsion). Each rigid body is described by its mass mi ∈ R,center of gravity ξi ∈ R

3, inertia tensor w.r.t. center of mass2 Ji ∈ R6, and joint

1The same modeling principle can of course be applied to parallel kinematic structures and serialstructures with parallelogram linkages.

2Due to the symmetrical inertia tensor, only six components of Ji need to be defined.

Page 130: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

110 Paper A Modeling of Robot Manipulators using EFJ Models

Figure 2: Examples of elastic elements modeling torsional deflection in threedirections: Three non-actuated elastic joints (left), two non-actuated elasticjoints together with one elastic joint actuated by a motor (right). Dampersare not shown.

Figure 3: Three rigid bodies with fixed coordinate systems A, B, and C(solid). The joint vectors li defines the dashed coordinate systems, startingin N . The transformation (rotation) from the one dashed to the next solidcoordinate system is given by the motor and joint angular positions.

vector li ∈ R3, describing the location of the next rigid body. A model consistingof three rigid bodies is illustrated in Figure 3. All rigid body parameters are de-scribed in coordinate systems fixed to the rigid bodies. If the number of addednon-actuated joints is Υna and the number of actuated joints is Υa, the system has2Υa + Υna degrees-of-freedom (DOF). The model equations are

M(qa)qa + c(qa, qa) + g(qa) +[fg (qg )

0

]=

[τgτe

], (1a)

Kg (η−1qm − qg ) + Dg (η−1qm − qg ) = τg , (1b)

−Keqe − De qe = τe, (1c)

Mmqm + fm(qm) = τm − η−T τg , (1d)

where qa =[qTg qTe

]T, qg ∈ R

Υa is the actuated joint angular position, qe ∈ RΥna

is the non-actuated joint angular position, and qm ∈ RΥa is the motor angular

position. The actuator torque3 is τm ∈ RΥa , τg ∈ R

Υa is the actuated joint torque,

3The electrical drive system is not included in this model and is assumed to be ideal for the fre-quency range considered here. The drive system can be taken into account as described in Section 3.4.

Page 131: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 Robot Manipulator Model 111

Figure 4: A 9 DOF extended flexible joint model with 2 links, 2 motors (M),3 elastic elements (EE) and 3 rigid bodies (RB).

and τe ∈ RΥna is the non-actuated joint torque, i.e., the constraint torque. The,

possibly non-diagonal, gear ratio matrix is η ∈ RΥa×Υa . With obvious dimensions,Mm and M(qa) are the inertia matrices for the motors and the joints, respectively.Furthermore, Kg , Ke, Dg , and De are the stiffness- and damping matrices in theactuated and non-actuated directions. The Coriolis- and centripetal torques aredescribed by c(qa, qa), g(qa) is the gravity torque, and the nonlinear friction4 inmotor bearings and gearboxes are fm(qm) and fg (qg ). Note that the spring-dampertorque also can be defined as nonlinear, e.g., a stiffening spring, see, e.g., Sweetand Good (1985), Tuttle and Seering (1996), and Figure 8. The inertial couplingsbetween the motors and the rigid bodies are neglected under the assumptionof high gear ratio, see, e.g., Spong (1987). Note that (1) is an extension of theflexible joint model, which can be derived as a special case if all non-actuatedjoints are removed, i.e., Υna = 0. The equations of motion (1) can be derivedby computing the linear and angular momentum, and by using Kane’s method(Kane and Levinson, 1985) the projected equations of motion can be derived toyield a system of ordinary differential equations (ODE) with minimum numberof DOF. One alternative way of deriving the equations of motion is to computethe potential and kinetic energy and use Lagranges equation (Shabana, 1998).Figure 4 illustrates a two-link manipulator model, consisting of two motors, threerigid bodies, and three elastic elements with in total seven elastic joints. Thus, themodel has two actuated joints, five non-actuated joints, and in total nine DOF5.

4The friction of the gearbox is actually split into two components and distributed between fm andfg .

5In this paper, the number of DOF refers to the number of independent coordinates necessary tospecify the (internal) configuration of a system.

Page 132: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

112 Paper A Modeling of Robot Manipulators using EFJ Models

The goal when adopting the extended flexible joint model is to describe the realmanipulator with desired accuracy in the frequency region of interest for all con-figurations and all payloads, i.e., to obtain a global model. Note that elasticityin all directions can be modeled, unlike the flexible joint and most flexible linkmodels. The need for modeling bearing elasticity is also reported in Hardeman(2008), where it is concluded that the transmission and bearing elasticities ofa Stäubli robot are of the same order of magnitude. Modeling bearing elastic-ity using non-actuated joints6 is therefore suggested and evaluated in Hardeman(2008). The approximation of the distributed link elasticity with a lumped param-eter model may not be suitable for a very slender robot design, but identificationexperiments presented in this paper show that the approximation is well suitedfor robots used in industry today. The lumped approximation of a flexible linkis also investigated and justified in Huang and Lee (1987) and Yoshikawa et al.(2001), where the non-actuated joints are called pseudo joints or virtual joints.

3 Parameter Estimation

3.1 Introduction

Most articles on flexible manipulator identification consider local models, i.e.,models valid in one configuration, of black-box or gray-box type. Moreover, thestandard assumption is that all parameters are unknown, and most suggestedidentification methods therefore estimate all parameters in one step. In Phamet al. (2001), all physical parameters of a single-input single-output (SISO) modelare identified by linear regression, using a linear-in-parameter model structure.This is exemplified with measurements on both motor and joint side, but some pa-rameters (stiffness and mass) can be identified with motor measurements only. InPham et al. (2002), this method is extended with acceleration measurements onthe joint side. A multiple-input multiple-output (MIMO) black-box model of tworobot axes is identified from motor side measurements in Johansson et al. (2000)by use of a subspace method in combination with a friction estimation. A gray-box prediction error method is used in Östring et al. (2003) to identify all physicalparameters of a SISO model, using motor measurements only. Inverse eigenvaluetheory is used to identify a mass-spring model of any order in Berglund and Hov-land (2000), also using motor measurements only. This method is extended toMIMO models in Hovland et al. (2001). Experimental modal analysis is used inBehi and Tesar (1991) to identify the local masses, springs, and dampers of anindustrial manipulator. The system is then excited by an impact hammer and theresponse measured by accelerometers.

Identification methods for global flexible joint models have also been suggested.Prior knowledge of the rigid body parameters is assumed in Hovland et al. (1999),where the stiffness and damping parameters are identified by using a frequencydomain method where the frequency domain model is linear in the unknown

6Bearing elasticity is called joint flexibility in Hardeman (2008), while the transmission elasticityis called drive flexibility.

Page 133: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 Parameter Estimation 113

parameters. This method works for MIMO flexible joint models with motormeasurements only, and is exemplified on two axes of an industrial manipula-tor. A three-step identification method is suggested in Wernholt and Gunnars-son (2006). The first step identifies nonlinear friction and rigid body parametersusing a separable least-squares approach, the second step is based on Berglundand Hovland (2000) and identifies approximate elasticity parameters and refinessome rigid body parameters, and the last step further refines some parametersby time-domain nonlinear gray-box identification. The method is applied to oneaxis of an industrial manipulator using a three-mass model and a nonlinear trans-mission stiffness (stiffening spring). In Albu-Schäffer and Hirzinger (2001) therigid body parameters are assumed to be known from CAD models, while thefriction and elasticity parameters are identified in separate identification experi-ments. The elasticities of the transmissions are identified from impulse responseexperiments for each individual joint before the assembly of the robot, using jointtorque sensors.

In Hardeman (2008), an identification method for an extended flexible joint mo-del with transmission and bearing elasticity, is suggested. The method is basedon the assumption that all DOFs (motor position, transmission, and bearing de-flection) are measurable. The unknown elasticity parameters are solved by linearregression. However, the measurement system used was not accurate enoughfor measuring the elastic deflections. An alternative method which develops theideas in Hovland et al. (2001) further is then used for estimating the transmissionstiffness. However, the bearing stiffness cannot be identified using this method,and the uncertainty of the estimated transmission stiffness is rather large, e.g.,standard deviations larger than 30 %.

To summarize, identification methods for local models exist, and there are alsosome suggested methods for global flexible joint models. However, to the au-thors knowledge, no global validation of the flexible joint model or any extendedmodels has been published for a multi-axes industrial-like robot manipulator.Moreover, to the authors knowledge, no identification of all elasticities of an ex-tended flexible joint model (lumped parameter model) for a multi-axes industrial-like robot manipulator has been published. The remainder of this section de-scribes an identification method for the global extended flexible joint model. Thisfrequency-domain gray-box identification method uses nonlinear optimization tocompute the elasticity parameters. In articles on robot identification, nonlinearoptimization is often avoided due to the problem with local minima. However,this problem can be handled and it is common practise to use nonlinear optimiza-tion in system identification, see, e.g., Ljung (1999).

3.2 Model Parameters and Model Structure Selection

The model parameters can be divided into rigid body parameters, elasticity pa-rameters (stiffness and damping), and friction parameters. To determine thenumber of non-actuated joints, their direction and location, is generally a com-plex task. A top-down approach would be to start with an accurate FEM modelof the robot and then reduce it to a lumped parameter model of desired accu-

Page 134: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

114 Paper A Modeling of Robot Manipulators using EFJ Models

racy. The structure of the reduced model will then define the rigid body partsof the extended flexible joint model, and the resulting springs and dampers ofthe reduced model can be used as initial values for the parameter estimation. Toextract accurate elastic parameters of a complex manipulator from FEM data isconsidered very hard, see, e.g., Book and Obergfell (2000), and identification us-ing a real manipulator must usually be performed. A bottom-up approach is tostart with the flexible joint model and add non-actuated joints, until the desiredexperimental accuracy in the frequency region of interest is obtained. This is theapproach described in this paper.

When the rigid body structure is determined, the springs and dampers can bechosen as linear or nonlinear, e.g., a stiffening spring. The friction can be modeledin a number of ways. A classical static friction model includes the viscous andCoulomb friction, fv and fc respectively, and is given by

fm(qm) = fv qm + fc sign(qm). (2)

More advanced dynamic friction models are described in, e.g., Canudas de Witet al. (1995) and Al-Bender et al. (2005).

3.3 Identification of unknown parameters

In this section, the proposed identification procedure is briefly described. A moredetailed description can be found in Wernholt and Moberg (2008a) and Wernholtand Moberg (2010). The rigid body parameters for the links and the motors areassumed to be known and properly verified on a real manipulator. If any rigidbody parameters are uncertain, rigid body identification can be used to identifythe base parameters of the links (Kozlowski, 1998; Swevers et al., 2007). How-ever, all physical rigid body parameters cannot be identified. The number ofnon-actuated joints and rigid bodies is assumed to be determined by a bottom-up approach. By using the available information (CAD models and componentdata for bearings and transmissions) about the manipulator elasticities, a numberof model structure candidates can be determined. The identification problem isthen to estimate the unknown parameters of the manipulator model, i.e., theelasticity and the friction parameters. A static friction model can easily be de-termined by, e.g., linear regression, if the motor torque and speed are measuredfor a number of different velocities. In this work, the estimation of the unknownelasticity parameters is the main concern. The friction model is only used forimproving the accuracy of the elasticity parameters.

Generally, the problem is to estimate the unknown parameters in the nonlineargray-box model (1) from measured input-output data. In Wernholt and Moberg(2010) it is shown that a time-domain prediction error method can be approxi-mated by a frequency-domain procedure. The procedure is based on intermedi-ate local models, where the multivariable (nu inputs and ny outputs) frequencyresponse function (FRF) is measured in a number of operating points, i.e., manip-ulator configurations. The nonlinear gray-box model (1) is then linearized in thesame operating points and the optimal parameters are obtained by minimizingthe (weighted) discrepancy between the measured FRFs and the model FRFs (the

Page 135: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 Parameter Estimation 115

FRFs of the linearized gray-box model):

θNf = arg minθ∈Θ

VNf (θ), (3a)

VNf (θ) =Q∑i=1

Nf∑k=1

[E(i)k,θ]H [W (i)

k ]−1E(i)k,θ , (3b)

E(i)k,θ = log vec(G(i)

k ) − log vec(G(i)k,θ). (3c)

HereNf is the number of excited frequencies,Q is the number of operating points,

G(i)k is the measured FRF, G(i)

k,θ is the model FRF, and W (i)k is a weighting matrix,

all dependent on operating point i and frequency line k. The operator vec(B) =[bT1 b

T2 . . . b

Tn ]T stacks the columns bi of a matrix B into a column vector. The

complex logarithm, logG = log |G| + j argG, gives improved numerical stabilityand makes the estimator robust to outliers in the measurements, according toPintelon and Schoukens (2001). This is also evident in the study in Wernholt

and Moberg (2010). Usually the weighting matrix W (i)k is selected as diagonal,

assuming the correlation between the different FRF elements to be negligible.This means that (3b) is simplified to a weighted sum of all the elements in theFRFs:

VNf (θ) =Q∑i=1

Nf∑k=1

ny · nu∑l=1

|[E(i)k,θ]l |2/[W

(i)k ]ll . (4)

One problem, investigated in Wernholt and Moberg (2010), is the existence of lo-cal minima in the optimization cost function VNf (θ). However, with randomizedinitial values in suitable intervals, this problem is properly handled. Other impor-tant user choices are the selection of frequency interval, number of frequencies,weights in the criterion, total measurement time, operating points, etc. Most ofthese aspects are covered in Wernholt and Moberg (2010), but we will elaborateon some of them here as well. The selection of operating points is important foraccuracy and identifiability as described in Wernholt and Löfberg (2007).

To be able to accurately measure the FRF, the experiments must be carefully de-signed. In the literature (see, e.g., Guillaume (1998), Pintelon and Schoukens(2001), or Wernholt and Moberg (2008b)) various procedures exist that differin requirements on the measurement setup and signal-to-noise ratio, as well asin bias and variance properties. The basic idea, however, is to perform nu ex-periments in each operating point, i = 1, . . . , Q, calculate the discrete Fouriertransform (DFT) of the input and output vectors at the excited frequency lines,

k = 1, . . . , Nf , and then collect these nu DFT vectors, U (i,l)k , Y

(i,l)k , l = 1, . . . , nu ,

into matrices

U(i)k = [U (i,1)

k U(i,2)k . . . U

(i,nu )k ],

Y(i)k = [Y (i,1)

k Y(i,2)k . . . Y

(i,nu )k ].

If the input DFT matrix U(i)k is invertable, the nonparametric FRF estimate, de-

Page 136: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

116 Paper A Modeling of Robot Manipulators using EFJ Models

Controller PlantΣ Σur +

yv

Figure 5: Closed-loop measurement setup.

noted measured FRF in this paper, can be calculated as

G(i)k = Y(i)

k [U(i)k ]−1. (5)

The quality of this estimate depends on the particular excitation in each of the nuexperiments. For multivariable systems, the orthogonal random phase multisinesignal has been proposed by Dobrowiecki and Schoukens (2007) to minimize theFRF uncertainty in open loop, given certain input amplitude constraints. This isa periodic signal and we assume that P periods of the steady-state response arecollected in each experiment, with NP samples in each period.

Since the robot manipulator is unstable, it is necessary to collect data in closedloop. Consider therefore the setup in Figure 5, where the controller takes as in-put the difference between the reference signal r and the measured and sampledoutput y, and u is the input. For simplicity, we also assume ny = nu = n. The ad-ditive noise v contains various sources of noise and disturbances. The measuredFRF then usually gets biased, due to the correlation between u and v. This biasis approximately inversely proportional to the signal-to-noise ratio (|Vk |2/ |Rk |2 ifn = 1). Fortunately, the signal-to-noise ratio can be made arbitrarily large at theexcited frequencies by using a periodic excitation. The measured FRF will thenbe asymptotically unbiased (as the number of periods goes to infinity) at the ex-cited frequencies also in closed loop. For details, see Wernholt and Gunnarsson(2007).

The orthogonal multisine signal will therefore be used in closed loop, which cor-responds to an optimal experiment design with output amplitude constraints.

The excitation signal in operating point i is then given by R(i)k = R(i)

d,kT, where T

is an orthogonal matrix n × n, Til = e2πjn (i−1)(l−1), with TTH = nI . Rd,k is a diago-

nal matrix where each diagonal element is the DFT of a random phase multisinesignal, which in the time domain can be written as

r(t) =

Nf∑k=1

Ak cos(ωkt + φk),

with amplitudes Ak , frequencies ωk chosen from the grid {ωk = 2πkNpTs

, k = 1, . . . ,Np2 −1}, and random phases φk uniformly distributed on the interval [0, 2π). Nf is

the number of excited frequencies, which is limited by Nf ≤ Np/2 − 1 (assumingNp even).

The selection of weights W (i)k in (3) should reflect both the uncertainty in the

Page 137: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 Parameter Estimation 117

measured FRF, as well as which FRF elements and frequency ranges the user con-siders most important to describe with the model. Which of these aspects thatis most important partly depends on the model complexity. If the model candescribe every tiny detail in the measured FRF, the focus is to minimize the pa-rameter uncertainty and the weights should then be selected according to Result2 in Wernholt and Moberg (2010). In other cases, it is more important to dis-tribute the model bias to areas of less importance and the weights then reflectsome user choices.

3.4 Handling of Nonlinearities and Unmodeled Dynamics

The method described in Section 3.3 can be used for identifying the unknownparameters of (1). As the identification method is based on linearizing the systemlocally around an operating point, additional nonlinearities can only be identifiedif the linearized model contains enough information about the nonlinearity. Inthe robot application, we have the following major nonlinearities:

1. The nonlinearities associated with the rigid body dynamics.

2. The drive train torque ripple (Gutt et al., 1996) and the sensor positionripple (Hanselman, 1990)7.

3. The nonlinear friction of motor bearings and transmission.

4. The nonlinear transmission elasticity.

Nonlinearity 1 is hard to compensate for within a linear framework and it istherefore important to stay close to the operating point during identification, per-formed as described in Section 3.3.

Nonlinearities 2 and 3 can be approximated as acting on the input and output ofthe system. One way of dealing with these would be to model and identify thesein a separate procedure. The models of the input-output nonlinearities can thenbe used for partially linearizing the system during the gray-box identificationexperiments, as depicted in Figure 6. This on-line method would require thepossibility to modify the controller of the system. An alternative for handlingnonlinearities 2 and 3 is to design the experiments so that the effect of thesenonlinearities is minimized, see, e.g., Wernholt and Moberg (2010). Yet anothermethod would be to compensate for the nonlinearities off-line. One examplesystem is illustrated in Figure 7. The input nonlinearity is defined by u = fi( ˜u, x)and the output nonlinearity by ˜y = fo(y). The system also includes the sensordynamics S (including time delays) and actuator dynamics A (including torquecontrol and zero-order hold), which are assumed to be unmodeled by the gray-box model. Assuming we know fi( · ), fo( · ), A, and S, we can retrieve the input uand output y of the system which is to be identified (gray-box model) accordingto

y = f −1o (S(z)−1y), u = fi(A(z)u, x), (6)

7These nonlinearities can also be regarded as deterministic disturbances.

Page 138: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

118 Paper A Modeling of Robot Manipulators using EFJ Models

Figure 6: Partly linearized system.

Figure 7: System description including nonlinearities and unmodeled dy-namics.

where x is some estimation of the states used in fi( · ), e.g., the motor speed esti-mated from y. It is assumed that S and A are discrete-time linear models. The

measured (nonparametric) FRF G is then estimated from u and y, and used forgray-box identification as described in Section 3.3.

Nonlinearity 4 can be parameterized and its parameters added to the vector ofunknown parameters, θ. For large signal input, the operating point of a non-linearity such as a stiffening spring, changes rapidly and linearizing around anoperating point does not work. A statistical linearization, which takes the vari-ation around the operating point into account, can the be used for performingthe linearization, see, e.g., Crandall (2004). A nonlinear elasticity is illustrated inFigure 8.

Deflection

Tor

que

Figure 8: Stiffening spring characteristics.

Page 139: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 A Simulation Study of the Attainable Parameter Estimation Accuracy 119

Motor Speed

Fric

tion

Tor

que

Figure 9: Nonlinear friction characteristics.

A final comment on the identification method described: Every subsystem thataffects the accuracy of the elasticity parameter identification, and is known orcould be identified separately, can be used for retrieving the FRF of the gray-boxsystem to be identified. The advantage of this is that the number of optimizationparameters is reduced and that nonlinearities can be compensated for. In thispaper, we assume that the unknown parameter vector θ contains the elasticityparameters. In practise, if some elasticity parameters are known with sufficientaccuracy, they should be removed from θ. In the same way, if, e.g., some rigidbody parameters are uncertain, they can be added to θ.

4 A Simulation Study of the Attainable ParameterEstimation Accuracy

To investigate the main causes of errors in the estimated parameters, an identifi-cation of a simulated manipulator was performed. By means of this investigation,it was also possible to verify the implementation of the identification method de-scribed in Section 3. The nonlinear simulation model is the the gray-box model(1) with a nonlinear friction model, approximated as acting on the motor only,described by

f (qm) = fv qm + fc(µ + (1 − µ)sech(βqm)) tanh(αqm), (7)

and illustrated in Figure 9. This smooth friction law (similar to the static versionof the LuGre model (Canudas de Wit et al., 1995)) is suggested in Feeny andMoon (1994) and avoids discontinuities to simplify numerical integration. Thefollowing disturbances are used in the simulation model:

• Deterministic torque ripple disturbances (Gutt et al., 1996) are added tothe torque input in order to obtain realistic ripple disturbances from themotors, drive electronics, and gearboxes.

• Deterministic and stochastic disturbances are in the same way added to themeasured motor position to simulate the real position sensor of the robot(Hanselman, 1990).

The 18 DOF model has 6 actuated joints, 6 non-actuated joints, and linear spring-dampers. The vector of unknown parameters, θ, consists of 12 springs and 12

Page 140: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

120 Paper A Modeling of Robot Manipulators using EFJ Models

Table 1: Simulated robot: Max and mean errors of the 12 springs (K) and the12 dampers (D).

Case No Max Err K Mean Err K Max Err D Mean Err D1 0.0 % 0.0 % 0.1 % 0.0 %2 2.5 % 0.7 % 19 % 5 %3 3.4 % 0.7 % 13 % 5 %4 46.7 % 13.2 % 1856 % 597 %5 5.3 % 1.2 % 355 % 125 %6 3.8 % 1.1 % 57 % 15 %7 2.6 % 1.1 % 79 % 33 %8 6.1 % 1.7 % 82 % 42 %9 5.5 % 1.8 % 105 % 30 %

dampers. All parameters and disturbances have realistic values to simulate a realindustrial manipulator. The identification is based on the motor torque referenceτm as input and the measured motor position qm as output. Multisine excitationis used, and the system is operated in closed loop as described in Section 3.3. Thesimulations and identifications were performed for the following cases:

1. Linearized rigid body dynamics in simulation model, no disturbances, nofriction. Identification is based on 10 configurations and 6 experiments foreach configuration.

2. Same as 1, but stochastic and deterministic disturbances are added to thesimulation model, and 6 × 4 experiments are performed for each configu-ration. According to Section 3.3, only nu = 6 experiments are needed foreach configuration. However, by increasing the number of measurements,the effect of disturbances can be reduced and the FRF accuracy increased.

3. Same as 2, but nonlinear rigid body dynamics in simulation model.

4. Same as 3, but also nonlinear friction in the simulation model.

5. Same as 4, but low frequency sinusoids are added to the excitation in orderto reduce the damping introduced by the nonlinear friction.

6. Same as 5, but viscous friction is added to the gray-box model as well as tothe parameter vector θ.

7. Same as 5, but nonlinear compensation of identified Coulomb friction,fc sign(qm), is performed (described in Section 3.4, Figure 7).

8. Same as 7, but identification based on 5 configurations.

9. Same as 7, but identification based on 6 × 2 experiments.

The result is shown in Table 1, where the parameter error is computed as100(10| log10(θ/θ0)|−1). The motivation for this is that a stiffness parameter of 2×θ0is about as bad as 1/2 × θ0. Clearly, the dampers are harder to estimate than the

Page 141: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Experimental Model Structure Selection and Validation 121

k1 k2 k3 k4 k5 k6 k7 k8 k9 k10 k11 k12

0.8

0.9

1

1.1

1.2

Nor

mal

ized

Stif

fnes

s

Figure 10: Normalized stiffness for all 12 springs in case 7. True parametervalues are 1. The uncertainty is indicated by two standard deviations.

springs. This is natural since an error in a damper effects the cost function muchless than an error in a spring (in a smaller frequency interval). The springs arethe most important parameters for simulation or control design. In fact, most arti-cles on flexible joint control assumes the damping to be zero. The nonlinear rigidbody dynamics and the disturbances cause small errors. Clearly, the nonlinearfriction is the main problem. The added low frequency sinusoids have a large im-pact on the accuracy when friction is present, and some further improvement canbe obtained by the introduction of viscous friction in the gray-box model. Non-linear compensation gives about the same result. One advantage with nonlinearcompensation is that it does not introduce any additional optimization variables.Reducing the measurement time by decreasing the number of configurations, orthe number of experiments in each configuration, increases the errors to someextent. Figure 10 shows the estimated uncertainty as two standard deviationsfor the identified springs of case 7. The estimated standard deviation is basedon the computed FRF uncertainty and the corresponding parameter sensitivity,see Wernholt and Moberg (2010). The standard deviation gives a good indicationof the identifiability of specific parameters. Clearly, this system is identifiable.Figure 11 shows one FRF element with the uncertainty indicated.

5 Experimental Model Structure Selection andValidation

The robot used in these experiments is a modern six-axes medium-sized ABBrobot equipped with an experimental feedback controller to allow for offline gen-erated excitation signals. The excitation signal is the position reference, and itsderivative is the sum of an orthogonal random phase multisine (6–100 Hz) withconstant amplitude spectrum and a low-frequency sine wave. For the identifi-cation, only the standard robot sensors are used, i.e., the output y is the motorangular position qm and the input u is the controller torque reference. The identi-fication is based on the FRF estimates in 14 different robot configurations (identi-fication FRF set), using maximum payload. To validate the model, the FRFs werealso estimated in 14 completely different robot configurations, using maximum

Page 142: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

122 Paper A Modeling of Robot Manipulators using EFJ Models

5 10 30 5010

20

30

40

50

60

70

Mag

nitu

de (

dB)

Frequency (Hz)

Measured FRF Uncertainty (1 std)Measured FRF18 DOF Global Model

Figure 11: One diagonal FRF element in configuration 1 of the simulationstudy. The magnitude of FRF from motor torque to motor acceleration isshown.

payload (validation FRF set 1). The FRF was also estimated in the same 14 vali-dation configurations with no payload (validation FRF set 2). The configurationswere chosen ad-hoc in the complete working area of the robot. The configura-tions are numbered 1–14 for each of the 3 sets, and these numbers will in somecases be used when the results are presented. However, no figures showing allthe configurations are included in this paper. For more information about robotconfigurations and how these can be optimized, see Wernholt and Löfberg (2007).

The gray-box model structure candidates were determined by a bottom-up ap-proach as described in Section 3. The rigid model was known, and 6 locations fornon-actuated joints were proposed by mechanical experts. In total, 7 differentmodel structure candidates were finally evaluated:

1. 6 spring-damper pairs, i.e., the flexible joint model with 12 DOF.

2. 7 spring-damper pairs, i.e., 13 DOF.

3. 8 spring-damper pairs, i.e., 14 DOF.

4. 9 spring-damper pairs, i.e., 15 DOF.

5. 10 spring-damper pairs, i.e., 16 DOF.

6. 11 spring-damper pairs, i.e., 17 DOF.

7. 12 spring-damper pairs, i.e., 18 DOF.

The model structures with 13 to 17 DOF were chosen based on a greedy algo-rithm, i.e., the non-actuated joint giving the lowest cost was chosen for the 13DOF model, and then kept while the remaining non-actuate joints were evalu-ated to determine the 14 DOF model etc. The accuracies of the models wereevaluated by comparing the model cost, i.e., the model fit in the frequency do-main. Figure 12 shows the cost for all models and for the FRF sets with maximum

Page 143: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Experimental Model Structure Selection and Validation 123

12DOF 13DOF 14DOF 15DOF 16DOF 17DOF 18DOF0.2

0.4

0.6

0.8

1

Cos

t

Identification FRF SetValidation FRF Set 1

Figure 12: Cost of all models evaluated for the identification FRF set and inthe first validation FRF set, both with maximum payload. Same cost functionas used in the identification.

12DOF 13DOF 14DOF 15DOF 16DOF 17DOF 18DOF0

0.2

0.4

0.6

0.8

1

Cos

t

Identification FRF SetValidation FRF Set 1Validation FRF Set 2

Figure 13: Cost of all models evaluated for the identification FRF set and inthe first validation FRF set, both with maximum payload, and for the secondvalidation FRF set with no payload. Same cost function as used in the identi-fication, but with all elements including motor 5 and 6 removed (unexcitedwhen no payload).

payload. The cost functions are monotonically decreasing with increased modelorder, which shows that no over-modeling occurs. Figure 13 shows the cost forall models and FRF sets, where all FRF elements including motors 5 and 6 are dis-carded from the cost computation (these elements are not excited properly withno payload). Figure 14 shows the multivariable FRF in one configuration. AllFRFs are shown as the magnitude of the FRF from motor torque u to motor angu-lar acceleration qm. Clearly, the correspondence between the measured FRF andthe 18 DOF model FRF is quite good. Figure 15 shows one FRF element at threedifferent model complexities. The 12 DOF model cannot describe the manipula-tor and the model accuracy increases with increasing model order. If the 12 DOFmodel is optimized only for this configuration and for low frequencies, the reso-nance properties are still completely wrong, although the lowest anti-resonancefrequency is correct. If this locally optimized model is evaluated in another con-figuration, as shown in Figure 16, no resonances are properly modeled, althoughthe globally optimized 12 DOF model is quite good in this particular configu-ration, for this particular element. Figure 17 shows the result for one of thenon-diagonal FRF-elements. The uncertainty of the estimated spring parameters

Page 144: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

124 Paper A Modeling of Robot Manipulators using EFJ Models

Mag

nitu

de (

dB)

10 30 10 30 10 30Frequency (Hz)

10 30 10 30 10 30

Figure 14: All FRF elements in configuration 14 of identification set, show-ing the measured FRF (thick) and the 18 DOF model FRF (thin). The shadedarea indicates the measured FRF uncertainty (1 std). The magnitude of the6 × 6 FRF is shown, with input motor torque and output motor acceleration.

Page 145: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Experimental Model Structure Selection and Validation 125

10 20 30 4035

40

45

50

55

60

Mag

nitu

de (

dB)

Frequency (Hz)

Measured FRF Uncertainty (1 std)Measured FRF12 DOF Global Model12 DOF Local Model Configuration 615 DOF Global Model18 DOF Global Model

Figure 15: One diagonal FRF element in configuration 6 of identification set.

6 10 20 30 40 50

20

30

40

50

60

70

Mag

nitu

de (

dB)

Frequency (Hz)

Measured FRF Uncertainty (1 std)Measured FRF12 DOF Global Model12 DOF Local Model Configuration 618 DOF Global Model

Figure 16: The same FRF element as in Figure 15 but in configuration 9 ofvalidation set 1.

is shown in Figure 18, indicated by two standard deviations. A typical standarddeviation is 3 %, although some parameters are more uncertain.

An 18 DOF model with the transmission elasticities modeled as stiffening springswas identified as described in Section 3.4. The cost was found to be slightly re-duced compared to the cost of the 18 DOF model with linear transmission. How-ever, the errors in some FRF elements are clearly reduced as illustrated in Fig-ure 19. The effect of the nonlinear springs can also be seen as a reduction of someresonance frequencies if the excitation amplitude is decreased, although not tothe same extent as in Sweet and Good (1985).

The conclusion is that a modern robot manipulator cannot be properly modeledby the 12 DOF flexible joint model. The mean frequency error in the dominatingpole-zero pair decreases from more than 25 % to less than 5 % when going froma 12 to a 18 DOF model. The most complex model evaluated in this study stillhas significant errors in some elements, although these are small compared to the

Page 146: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

126 Paper A Modeling of Robot Manipulators using EFJ Models

10 50 100−20

0

20

40

60

Mag

nitu

de (

dB)

Frequency (Hz)

Measured FRF Uncertainty (1 std)Measured FRF12 DOF Global Model15 DOF Global Model18 DOF Global Model

Figure 17: One non-diagonal FRF element in configuration 3 of identifica-tion set.

k1 k2 k3 k4 k5 k6 k7 k8 k9 k10 k11 k12

0.8

0.9

1

1.1

1.2

Nor

mal

ized

Stif

fnes

s

Figure 18: Normalized stiffness for all 12 springs in the 18 DOF model. Theuncertainty is indicated by two standard deviations.

10 20 4010

20

30

40

50

60

70

80

Mag

nitu

de (

dB)

Frequency (Hz)

Measured FRF Uncertainty (1 std)Measured FRF12 DOF Global Model18 DOF Global Model18 DOF Global Model NLS

Figure 19: One diagonal FRF element in configuration 12 of validation set 2.The model with stiffening transmission springs is denoted NLS.

Page 147: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 Identification Using Added Robot Arm Sensors 127

errors of the 12 DOF flexible joint model, where the frequency of the dominatingpole-zero pair can have an error larger than 100 %, i.e., the model pole/zero fre-quency is overestimated by more than a factor of two. Furthermore, the flexiblejoint model does not model some significant resonances at all, in the frequencyregion studied here (6 - 100 Hz). The 18 DOF model is further improved if thetransmission elasticities are modeled as nonlinear stiffening springs. The need forstiffening springs depends on the gear technology used. The required model com-plexity (DOFs) depends of course on the particular robot design, but the need foran extended model is believed to be quite general for modern industrial robots.There are probably several sources of the remaining errors, e.g, choice of non-actuated joints, errors in the rigid body model, and of course, insufficient num-ber of DOF. The choice of model complexity depends on the intended use of themodel, e.g., accuracy requirements in simulation or control design.

6 Identification Using Added Robot Arm Sensors

In the identification studies and experiments described in previous sections, onlythe motor angular positions and the controller torque references have been used.In this section, the acceleration of the tool (payload) is also measured using athree-axes accelerometer. The motivation for this is as follows:

• The described identification method, using motor position only, has beenvalidated by comparing the estimated FRF with the model FRF, using themotor position as output variable. By using the tool acceleration as outputvariable, it can be verified that the obtained model also gives a good de-scription of the tool movement. After all, the tool is the controlled variableof the robot manipulator and a model should also be able to describe itsmovements.

• To perform identification, using the tool acceleration as output variable.Then it can be verified whether the identified parameters are similar aswhen using the motor position, and if the tool acceleration can improve theparameter estimation.

The experiment was carried out on a manipulator from ABB. This manipulator islarger than the one used in the experiments described in Section 5. Both motorposition and tool acceleration were measured in all experiments. Measurementswere performed in 7 different robot configurations. Identification was performedfor 7 model structure candidates, based on both the FRF estimate from motortorque to motor position, and on the FRF estimate from motor torque to toolacceleration. The tool acceleration in sensor frame, ρs, is transformed to the fixedworld frame of the robot by

ρw = Rws (qa)ρs, (8)

where Rws is the transformation matrix between the frames. The joint angles qawere estimated from the measured motor positions. During the parameter op-timization, the model FRF is computed by linearizing the system from motor

Page 148: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

128 Paper A Modeling of Robot Manipulators using EFJ Models

12 DOF 13 DOF 14 DOF 15 DOF 16 DOF 17 DOF 18 DOF0.4

0.6

0.8

1

1.2

1.4

Mot

or P

os C

ost

Motor Pos IdTool Acc Id

12 DOF 13 DOF 14 DOF 15 DOF 16 DOF 17 DOF 18 DOF0.8

1

1.2

1.4

1.6

Too

l Acc

Cos

t

Motor Pos IdTool Acc Id

Figure 20: The cost for models obtained by using tool acceleration or motorposition as output variables. Cost for both output variables are shown.

torque to tool acceleration in the fixed world frame.

The model cost is shown in Figure 20. Clearly, identification for one output vari-able gives a reasonable model also for the alternative output variable althoughthe cost for one particular output variable is smaller if the identification is per-formed using the same output variable. This can possibly be explained by thequality of the acceleration signal (approximately transformed to world frame)or by the general model approximations (location and number of non-actuatedjoints and of course small errors in the rigid body parameters). An example ofthe identified stiffness parameters for the 15 DOF model structure are shown inFigure 21. The parameters obtained, using the two alternative output variablesare quite similar, although there are some differences for k4–k6. The uncertainty,indicated by two standard deviations, is generally smaller compared to Figure 18.One possible explanation is that the resonance frequencies of this larger manip-ulator are lower, and thus more contained within the excited frequency interval(5–100 Hz). The relative level of the disturbances could also be an explanation.Two examples of FRF elements are shown in Figures 22–23. The obtained modelsare quite similar. If the total measurement time (number of configurations) isreduced, some experiments also show that identifiability of specific parameterscan be recovered if tool acceleration is used instead of motor position, i.e., the un-certainty of specific parameters can be reduced from a very large to a low level.

Page 149: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 Identification Using Added Robot Arm Sensors 129

k1 k2 k3 k4 k5 k6 k7 k8 k9

0.8

0.9

1

1.1

1.2

Nor

mal

ized

Stif

fnes

s

Figure 21: Stiffness parameters for 15 DOF model. The parameters obtainedby using motor position are normalized to one and indicated by a circle.The parameters obtained by tool acceleration are indicated by a square. Twostandard deviations are indicated.

5 10 3010

20

30

40

50

60

70

Mag

nitu

de (

dB)

Frequency (Hz)

Measured FRF Uncertainty (1 std)Measured FRF18 DOF Model Motor Pos Id18 DOF Model Tool Acc Id

Figure 22: One FRF element (motor torque to motor acceleration).

5 10 30−40

−30

−20

−10

0

10

Mag

nitu

de (

dB)

Frequency (Hz)

Measured FRF Uncertainty (1 std)Measured FRF18 DOF Model Motor Pos Id18 DOF Model Tool Acc Id

Figure 23: One FRF element (motor torque to tool acceleration).

Page 150: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

130 Paper A Modeling of Robot Manipulators using EFJ Models

0 0.5 1 1.5 2 2.5 3 3.5 4−500

0

500

TCP Speed

Spe

ed X

[mm

/s]

0 0.5 1 1.5 2 2.5 3 3.5 4−500

0

500

1000

Spe

ed Y

[mm

/s]

0 0.5 1 1.5 2 2.5 3 3.5 4

−100

0

100

Time [s]

Spe

ed Z

[mm

/s]

Figure 24: Real (solid) and simulated (dotted) tool speed in all directions.Extended flexible joint model used in simulation.

7 Time-Domain Validation

A time-domain validation was also performed using the robot and identified mod-els as described in Section 5. In a first validation experiment, the 18 DOF modelwith nonlinear transmission was validated. The validation is performed in closedloop (the system is unstable) and a PID controller is used for controlling the realrobot. The output of a simulation model, using the identified model and the samePID controller (including position references) as the real robot, is then comparedwith the real robot output. Figures 24–25 show the tool speed and the motortorque for a complex8 robot path in the x-y plane. The tool position of the realrobot was measured using a Leica laser measurement system LTD600 from LeicaGeosystems, and the tool speed was computed by differentiation. Note that thecontrol is quite bad, using this simple controller, and that the movement in the z-direction is not negligible. However, the model errors are in general quite small.In a second validation experiment, the programmed path was a 50×100 mm rect-angle in the x-y plane. Figure 26 shows the path for the extended flexible jointmodel (18 DOF and nonlinear transmission), and for the flexible joint model (12DOF). Figure 27 shows the errors of the simulation models, when compared tothe measured robot path. It is clear that a higher-order model performs better.The remaining errors of the 18 DOF model are probably mostly due to the sim-

8The path contains straight lines, circular segments, corner zones, and has a geometry that isexpected to excite the manipulator over a wide frequency range.

Page 151: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

7 Time-Domain Validation 131

0 0.5 1 1.5 2 2.5 3 3.5 4−10

0

10

τ m1 [N

m]

0 0.5 1 1.5 2 2.5 3 3.5 4

0

5

10

15

τ m2 [N

m]

0 0.5 1 1.5 2 2.5 3 3.5 40

2

4

τ m3 [N

m]

Time [s]

Figure 25: Real (solid) and simulated (dotted) motor torque for axis 1, 2, and3. Extended flexible joint model used in simulation.

50 100 150

1390

1400

1410

1420

1430

1440

1450

1460

y [mm]

x [m

m]

Figure 26: Real (solid) and simulated path. Extended flexible joint model(dotted) and flexible joint model (dashed) used in simulation.

Page 152: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

132 Paper A Modeling of Robot Manipulators using EFJ Models

0.2 0.4 0.6 0.8 1 1.2 1.40

0.5

1

1.5

2

2.5

Time [s]

Mod

el P

ath

Err

or [m

m]

Figure 27: Error of simulated model when compared to the real robot path.Extended flexible joint model (thick solid) and flexible joint model (thinsolid).

ple friction model (7), and to the simple transmission model (a stiffening spring)used. A rigorous time domain validation would require a more accurate fric-tion model and an improved transmission model, which was not included in thiswork.

8 Conclusion and Future Work

The problem of modeling an elastic robot manipulator has been studied. It hasbeen shown that the so-called flexible joint model, modeling only the torsionalgearbox elasticity, cannot describe a modern industrial manipulator accurately.The extended flexible joint model, where non-actuated joints are added to modelthe elasticity of the links and bearings, has been shown to improve the modelaccuracy significantly. The unknown model parameters have been estimated us-ing a frequency domain gray-box identification method. A method for improv-ing the parameter estimate by compensating for input and output dynamics andnonlinearities has also been suggested and evaluated. The conclusion is that theobtained model describes the motor and the tool movements with good accu-racy. Similar model parameters have been obtained using two different outputvariables, the motor position and the tool acceleration. For, e.g., simulation andcontrol design, this extended flexible joint model should be useful. However, theextended flexible joint control problem, compared to flexible joint control, is sub-stantially harder (Moberg and Hanssen, 2007, 2009).

The models have mainly been validated in the frequency domain, since model-ing of the resonances is the main purpose of the elastic model. A small exampleof time-domain validation has also been presented. However, besides the time-domain result presented in this work, more comparisons of time-domain behav-ior and static deflection have been performed, and the results from identifiedmodel and from real manipulator experiments were in agreement (Moberg et al.,2008, 2009).

Page 153: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

8 Conclusion and Future Work 133

A future work will be to investigate identification based on both motor positionand arm side acceleration. This will include investigations of the optimal ac-celerometer placement on the robot arms, in combination with optimal robotconfigurations for identification. Such measurements on the robot arms will prob-ably improve the identifiability of higher order models. Another future work isto improve the identification of nonlinearities and to reduce the identification in-accuracies caused by these. Time-domain identification is the natural approachfor doing this, although not straight-forward as shown in Wernholt and Moberg(2010).

To further improve the modeling of elasticities, a 3-D flexible link model (i.e.,with deformation in all directions) can be combined with the extended flexiblejoint model. Identification methods for such a model would be an interestingresearch area. A second alternative for improvement is to increase the order ofthe extended flexible joint model (lumped parameter model), to find suitable lo-cations of the non-actuated joints by model reduction of a FEM model, and toapply the identification method described in this paper (possibly with more sen-sors as previously discussed). A third option is to identify a higher order lumpedparameter model with unknown spring/damper locations, unknown mass distri-bution, and unknown elasticity parameters. Such an approach is described inYoshikawa et al. (2001).

Page 154: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

134 Paper A Modeling of Robot Manipulators using EFJ Models

Bibliography

F. Al-Bender, V. Lampaert, , and J. Swevers. The generalized maxwell-slip model:A novel model for friction simulation and compensation. IEEE Transactions onAutomatic Control, 50(11):1883–1887, 2005.

A. Albu-Schäffer and G. Hirzinger. Parameter identification and passivity basedjoint control for a 7DOF torque controlled light weight robot. In Proc. 2001IEEE International Conference on Robotics and Automation, pages 2852–2858,Seoul, Korea, May 2001.

F. Behi and D. Tesar. Parametric identification for industrial manipulators usingexperimental modal analysis. IEEE Transactions on Robotics and Automation,7(5):642–52, 1991.

E. Berglund and G. E. Hovland. Automatic elasticity tuning of industrial robotmanipulators. In 39th IEEE Conference on Decision and Control, pages 5091–5096, Sydney, Australia, December 2000.

W. Book and K. Obergfell. Practical models for practical flexible arms. In Proc.2000 IEEE International Conference on Robotics and Automation, pages 835–842, San Fransisco, CA, 2000.

T. Brogårdh. Present and future robot control development—an industrial per-spective. Annual Reviews in Control, 31(1):69–79, 2007.

T. Brogårdh. Robot control overview: An industrial perspective. Modeling, Iden-tification and Control MIC, 30(3):167–180, 2009.

C. Canudas de Wit, H. Olsson, K.J. Åström, and P. Lischinsky. A new model forcontrol of systems with friction. IEEE Transactions on Automatic Control, 40(3):419–425, 1995.

S.H. Crandall. On using non-gaussian distributions to perform statistical lin-earization. International Journal of Non-Linear Mechanics, 39(9):1395–1406,2004.

A. De Luca. Feedforward/feedback laws for the control of flexible robots. InProceedings of the 2000 IEEE International Conference on Robotics and Au-tomation, pages 233–240, San Francisco, CA, April 2000.

A. De Luca and B. Siciliano. Closed-form dynamic model of planar multilinklightweight robots. IEEE Transactions on Systems, Man, and Cybernetics, 21(4):826–839, 1991.

T. Dobrowiecki and J. Schoukens. Measuring a linear approximation to weaklynonlinear MIMO systems. Automatica, 43(10):1737–1751, October 2007.

B. Feeny and F.C. Moon. Chaos in a forced dry-friction oscillator: experimentsand numerical modelling. Journal of Sound and Vibration, 170(3):303–323,February 1994.

Page 155: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 135

P. Guillaume. Frequency response measurements of multivariable systems usingnonlinear averaging techniques. IEEE Transactions on Instrumentation andMeasurement, 47(3):796–800, June 1998.

H.-J. Gutt, F. D. Scholl, and J. Blattner. High precision servo drives with DSP-based torque ripple reduction. In IEEE AFRICON, 1996, volume 2, pages 632–637, September 1996.

D. Hanselman. Resolver signal requirements for high accuracy resolver-to-digitalconversion. IEEE Transactions on Industrial Electronics, 37(6):556–561, De-cember 1990.

T. Hardeman. Modelling and Identification of Industrial Robots including Driveand Joint Flexibilities. Phd thesis, University of Twente, The Netherlands,February 2008.

G. E. Hovland, E. Berglund, and S. Hanssen. Identification of coupled elasticdynamics using inverse eigenvalue theory. In 32nd International Symposiumon Robotics (ISR), pages 1392–1397, Seoul, Korea, April 2001.

G.E. Hovland, E. Berglund, and O.J. Sørdalen. Identification of joint elasticityof industrial robots. In Proceedings of the 6th International Symposium onExperimental Robotics, pages 455–464, Sydney, Australia, March 1999.

Y. Huang and C. S. G. Lee. Generalization of newton-euler formulation of dy-namic equations to nonrigid manipulators. In Proceedings of the 1987 Ameri-can Control Conference, pages 72–77, Minneapolis, MN, jun 1987.

R. Johansson, A. Robertsson, K. Nilsson, and M. Verhaegen. State-space systemidentification of robot manipulator dynamics. Mechatronics, 10(3):403–418,2000.

T. R. Kane and D. A. Levinson. Dynamics: Theory and Applications. McGraw-Hill Publishing Company, 1985.

K. Kozlowski. Modelling and identification in robotics. Advances in IndustrialControl. Springer, London, 1998.

L. Ljung. System Identification: Theory for the User. Prentice Hall, Upper SaddleRiver, New Jersey, USA, 2nd edition, 1999.

S. Moberg and S. Hanssen. A DAE approach to feedforward control of flexiblemanipulators. In Proc. 2007 IEEE International Conference on Robotics andAutomation, pages 3439–3444, Roma, Italy, April 2007.

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators. In Multi-body Dynamics 2009, Warsaw, Poland, July 2009.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust controlof a multivariable nonlinear flexible manipulator. In Proc. 17th IFAC WorldCongress, Seoul, Korea, July 2008.

Page 156: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

136 Paper A Modeling of Robot Manipulators using EFJ Models

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust feed-back control of a flexible manipulator. IEEE Transactions on Control SystemsTechnology, 17(6):1398–1405, November 2009.

S. Moberg, E. Wernholt, S. Hanssen, and T. Brogårdh. Modeling and parameterestimation of robot manipulators using extended flexible joint models. 2010.Submitted to Journal of Dynamic Systems Measurement and Control, Transac-tions of the ASME.

J. Öhr, S. Moberg, E. Wernholt, S. Hanssen, J. Pettersson, S. Persson, and S. Sander-Tavallaey. Identification of flexibility parameters of 6-axis industrial manipu-lator models. In Proc. ISMA2006 International Conference on Noise and Vibra-tion Engineering, pages 3305–3314, Leuven, Belgium, September 2006.

M. Östring, S. Gunnarsson, and M. Norrlöf. Closed-loop identification of an in-dustrial robot containing flexibilities. Control Engineering Practice, 11:291–300, March 2003.

M. T. Pham, M. Gautier, and Ph. Poignet. Identification of joint stiffness withbandpass filtering. In 2001 IEEE International Conference on Robotics andAutomation, pages 2867–72, Seoul, Korea, May 2001.

M. T. Pham, M. Gautier, and Ph. Poignet. Accelerometer based identification ofmechanical systems. In 2002 IEEE International Conference on Robotics andAutomation, pages 4293–4298, Washington, DC, May 2002.

R. Pintelon and J. Schoukens. System identification: a frequency domain ap-proach. IEEE Press, New York, 2001.

A.A. Shabana. Dynamics of Multibody Systems. Cambridge University Press,Cambridge, United Kingdom, 1998.

B. Siciliano and O. Khatib, editors. Springer Handbook of Robotics. Springer-Verlag, Berlin Heidelberg, 2008.

M. W. Spong. Modeling and control of elastic joint robots. Journal of DynamicSystems, Measurement, and Control, 109:310–319, December 1987.

B. Subudhi and A. S. Morris. Dynamic modelling, simulation and control of amanipulator with flexible links and joints. Robotics and Autonomous Systems,41(4):257–270, 2002.

L. M. Sweet and M. C. Good. Redefinition of the robot motion-control problem.IEEE Control Systems Magazine, 5(3):18–25, 1985.

J. Swevers, W. Verdonck, and J. De Schutter. Dynamic model identification forindustrial robots. IEEE Control Systems Magazine, pages 58–71, October 2007.

P. Tomei. A simple PD controller for robots with elastic joints. IEEE Transactionson Automatic Control, 36(10):1208–1213, 1991.

T.D. Tuttle and W.P. Seering. A nonlinear model of a harmonic drive gear trans-mission. IEEE Transactions on Robotics and Automation, 12(3):368–374, 1996.

Page 157: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 137

H. Ueno, Y. Xu, and T. Yoshida. Modeling and control strategy of a 3-D flexiblespace robot. In Proceedings of the 1991 IEEE/RSJ International Conference onIntelligent Robots and Systems, pages 978–983, Osaka, Japan, November 1991.

E. Wernholt and S. Gunnarsson. Nonlinear identification of a physically parame-terized robot model. In Proc. 14th IFAC Symposium on System Identification,pages 143–148, Newcastle, Australia, March 2006.

E. Wernholt and S. Gunnarsson. Analysis of methods for multivariable frequencyresponse function estimation in closed loop. In 46th IEEE Conference on De-cision and Control, New Orleans, Louisiana, December 2007. Accepted forpublication.

E. Wernholt and J. Löfberg. Experiment design for identification of nonlineargray-box models with application to industrial robots. In 46th IEEE Confer-ence on Decision and Control, New Orleans, Louisiana, December 2007. Ac-cepted for publication.

E. Wernholt and S. Moberg. Frequency-domain gray-box identification of indus-trial robots. In 17th IFAC World Congress, pages 15372–15380, Seoul, Korea,July 2008a.

E. Wernholt and S. Moberg. Experimental comparison of methods for multivari-able frequency response function estimation. In 17th IFAC World Congress,pages 15359–15366, Seoul, Korea, July 2008b.

E. Wernholt and S. Moberg. Nonlinear gray-box identification using local modelsapplied to industrial robots. Automatica, 2010. Accepted for publication.

T. Yoshikawa, H. Murakami, and K. Hosoda. Modeling and control of a threedegree of freedom manipulator with two flexible links. In Proceedings ofthe 29nd Conference on Decision and Control, pages 2532–2537, Honolulu,Hawaii, December 1990.

T. Yoshikawa, A. Ohta, and K. Kanaoka. State estimation and parameter identifi-cation of flexible manipulators based on virtual sensor and virtual joint model.In 2001 IEEE International Conference on Robotics and Automation, pages2840–2845, Seoul, Korea, May 2001.

Page 158: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 159: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Paper BNonlinear Gray-Box Identification

Using Local Models Applied toIndustrial Robots

Authors: Erik Wernholt and Stig Moberg

Edited version of the paper:

E. Wernholt and S. Moberg. Nonlinear gray-box identification usinglocal models applied to industrial robots. Automatica, 2010. Acceptedfor publication.

Page 160: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 161: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Nonlinear Gray-Box Identification UsingLocal Models Applied to Industrial Robots

Erik Wernholt∗ and Stig Moberg∗∗ ,∗

∗Dept. of Electrical Engineering,Linköping University,

SE–581 83 Linköping, Sweden{stig,erikw}@isy.liu.se

∗∗ABB AB,Robotics,

SE-721 68 Västerås, [email protected]

Abstract

In this paper, we study the problem of estimating unknown parame-ters in nonlinear gray-box models that may be multivariable, nonlin-ear, unstable, and resonant at the same time. A straightforward useof time-domain predication-error methods for this type of problemeasily ends up in a large and numerically stiff optimization problem.We therefore propose an identification procedure that uses intermedi-ate local models that allow for data compression and a less complexoptimization problem. The procedure is based on the estimation ofthe nonparametric frequency response function (FRF) in a number ofoperating points. The nonlinear gray-box model is linearized in thesame operating points, resulting in parametric FRFs. The optimal pa-rameters are finally obtained by minimizing the discrepancy betweenthe nonparametric and parametric FRFs. The procedure is illustratedby estimating elasticity parameters in a six-axes industrial robot. Dif-ferent parameter estimators are compared and experimental resultsshow the usefulness of the proposed identification procedure. Theweighted logarithmic least squares estimator achieves the best resultand the identified model gives a good global description of the dynam-ics in the frequency range of interest for robot control.

1 Introduction

When building a mathematical model of a physical object, the user generally hastwo sources of information; prior knowledge and experimental data. This givesthe two modeling extremes, white-box models that are the result of extensivephysical modeling from first principles, and black-box models, where the modelis just a vehicle to describe the experimental data without any physical interpre-tations of its parameters. In between comes gray-box models that are parameter-izations based on various degrees of physical insights. Compared with identifi-cation methods using black-box models, gray-box models have some particular

141

Page 162: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

142 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

benefits. By including prior information, the model set (number of parameters)can be reduced while still providing a good approximation of the true system.This gives a reduced mean-square error (bias and variance) (Ljung, 2008). Sincethe gray-box model in contrast to the black-box model has a physical interpre-tation, the model is also useful in many ways, such as design optimization andvirtual prototyping, which are important areas in industry. Some standard refer-ences for identification of gray-box models are Ljung (1999), Bohlin (2006), andSchittkowski (2002). There are also software packages available for identifyingsuch models, e.g., Ljung (2007), Kristensen et al. (2004), Bohlin (2006), and Schit-tkowski (2002).

In this paper, we will mainly consider identification of nonlinear gray-box modelswith the lightest shade of gray, where a white-box model contains some unknownor uncertain parameters that need to be estimated from data. To be even morespecific, we will allow our systems to be multivariable, nonlinear, unstable, andresonant at the same time. Usually, in the literature, at least one of the first threeproperties is left out to reduce the problem complexity. Identification of suchcomplex systems is therefore challenging, both in finding suitable model struc-tures and efficient identification methods. A straightforward use of time-domainpredication-error methods (Ljung, 1999) for this type of system easily ends up ina large optimization problem, where each iteration in the optimization routineinvolves a number of simulations of a large and numerically stiff ODE for manysamples. We therefore propose an identification procedure that uses intermedi-ate local models that allow for data compression and a less complex optimizationproblem. The procedure is based on the estimation of the nonparametric fre-quency response function (FRF) in a number of operating points. The nonlineargray-box model is linearized in the same operating points, resulting in parametricFRFs. The optimal parameters are finally obtained by minimizing a parametriccriterion, measuring the discrepancy between the nonparametric and parametricFRFs.

The main motivation for our study is identification of accurate dynamic modelsfor industrial robots, which incorporate all the four mentioned properties. Wewill come back to this application in Sections 5 and 6 when identification of elas-ticity parameters (spring-damper pairs) is used as an example of the proposedidentification procedure.

Various aspects of the identification procedure will now be explained in the com-ing sections, starting with a more detailed outline of the procedure in Section 2.The nonparametric FRF estimation is described in Section 3, and some variantsof the parametric criterion are presented in Section 4. This is followed by anexperimental evaluation in Section 5 and a small comparison with time domainidentification in Section 6. Finally, Section 7 concludes the paper.

Page 163: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 Gray-Box Identification Using Local Models 143

Ntot,1,0 Ntot,1, u(1)t , y

(1)t

Ntot,i,0 Ntot,i, u(i)t , y

(i)t

Ntot,Q,0 Ntot,Q, u(Q)t , y

(Q)t

Ni,0 Ni, u(i,1)t , y

(i,1)t

Ni,0 Ni, u(i,l)t , y

(i,l)t

Ni,0 Ni, u(i,nu)t , y

(i,nu)t

Figure 1: Illustration how the Ntot samples are distributed into Q operat-ing points, where Ntot,i,0 samples are “wasted” to get to operating point iwhere the Ntot,i samples are further distributed into nu parts to estimate a

nonparametric FRF by using the nu steady-state responses, u(i,1)t , y(i,1)

t , . . . ,

u(i,nu )t , y(i,nu )

t , each of length Ni .

2 Gray-Box Identification Using Local Models

In this paper we consider the problem of identifying parameters θ in the follow-ing nonlinear gray-box model

xt+1 = f (xt , ut , θ) + g(xt , ut , θ)wt , (1a)

yt = h(xt , ut , θ) + et , (1b)

with state vector xt ∈ Rnx , input vector ut ∈ R

nu , output vector yt ∈ Rny , and

θ ∈ Θ ⊂ Rnθ a vector of unknown parameters that specifies the mappings f ( · ),

g( · ), h( · ) that may all be nonlinear. Furthermore, wt and et are process- andmeasurement noise vectors, that are assumed to be mutually independent zero-mean white processes with covariance matrices E(wtw

Tt ) = Qw and E(ete

Tt ) = Qe.

One solution to the problem of identifying θ in (1) is to apply a nonlinear pre-diction error method (Ljung, 1999, pp. 146–147). The idea then is to find theparameters that will minimize the prediction errors

εt,θ = yt − yt,θ , t = 1, 2, . . . , Ntot,

where yt,θ is the model’s prediction of yt given previous measurements{u1, y1, . . . , ut−1, yt−1, ut}. For the minimization, one can choose different norms,but a common choice is a quadratic criterion

V (θ) =Ntot∑t=1

εTt,θΛ−1t εt,θ , (2)

with weighting matrix Λt and Ntot equal to the total number of measurementsamples. For a general nonlinear system as in (1), it is often very hard to de-termine a predictor on formal probabilistic grounds. In most cases there is noexplicit form available for the optimal solution. This implies that a predictormust be constructed either by ad hoc approaches, or by some approximation ofthe optimal solution, e.g., by using sequential Monte Carlo techniques (Doucetet al., 2001) or the Extended Kalman Filter (Anderson and Moore, 1979). We willfurther discuss such solutions in Section 2.4.

In this paper, we propose another solution to handle the nonlinearities in the

Page 164: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

144 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

system, where θ is identified by using intermediate local models. By performingexperiments that sequentially excite the local system behavior in a number of

operating points (u(i)0 , y

(i)0 ), i = 1, . . . , Q, the criterion (2) can be approximated by

V (θ) =Q∑i=1

Ntot,i∑t=1

[ε(i)t,θ]T [Λ(i)

t ]−1ε(i)t,θ , (3)

using the notation ε(i)t,θ = y

(i)t − y

(i)t,θ where y(i)

t = yt+ti − y(i)0 denotes the measured

output around operating point i with output vector y(i)0 . The Ntot samples in (2)

are therefore distributed according to Figure 1 (top part), where Ntot,i,0 samplesare needed to move the system to operating point i, in which Ntot,i samples arecollected, such that ti = Ntot,i,0 +

∑i−1r=1(Ntot,r + Ntot,r,0) and Ntot =

∑Qi=1(Ntot,i +

Ntot,i,0).

2.1 Linearized Gray-Box Model

The predictor y(i)t,θ for the local model can be simplified compared to yt,θ since

only the local (linear) behavior needs to be captured. Assume now that the behav-

ior of (1) around an operating point (u(i)0 , y

(i)0 ) can be described by the linearized

model

x(i)t+1 = A

(i)θ x

(i)t + B(i)

θ u(i)t + B(i)

w,θw(i)t , (4a)

y(i)t = C

(i)θ x

(i)t + D(i)

θ u(i)t + e(i)

t , (4b)

where x(i)t = xt+ti − x

(i)0 , u(i)

t = ut+ti − u(i)0 , y(i)

t = yt+ti − y(i)0 , and x

(i)0 is obtained

as, e.g., the solution to x(i)0 = f (x(i)

0 , u(i)0 , θ), y(i)

0 = h(x(i)0 , u

(i)0 , θ). Note that x(i)

0

therefore, in general, will be θ-dependent. The matrices A(i)θ , B

(i)θ , C

(i)θ , D

(i)θ are

the partial derivatives of f ( · ) and h( · ) w.r.t. xt and ut and evaluated in (x(i)0 , u

(i)0 ),

and B(i)w,θ = g(x(i)

0 , u(i)0 , θ).

By assuming wt and et to be Gaussian and neglecting transients, the optimal one-

step ahead predictor y(i)t,θ for (4) is given by the steady-state Kalman filter

x(i)t+1 = A

(i)θ x

(i)t + B(i)

θ u(i)t + K (i)

θ (y(i)t − y

(i)t,θ), (5a)

y(i)t,θ = C

(i)θ x

(i)t + D(i)

θ u(i)t . (5b)

Here, K (i)θ = A

(i)θ P

(i)θ [C(i)

θ ]T [C(i)θ P

(i)θ [C(i)

θ ]T + Qe]−1 where P (i)θ is the positive semi-

definite solution of the stationary Riccati equation (omitting indices)

P = AP AT − AP CT (CP CT + Qe)−1CP AT + BwQwBTw.

By using (5), the prediction error ε(i)t,θ can be written as

ε(i)t,θ = [H (i)

θ (q)]−1[y(i)t − G

(i)θ (q)u(i)

t ], (6)

Page 165: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 Gray-Box Identification Using Local Models 145

where q is the difference operator, ut+1 = qut , and

G(i)θ (q) = C

(i)θ [qI − A(i)

θ ]−1B(i)θ + D(i)

θ , (7a)

H(i)θ (q) = C

(i)θ [qI − A(i)

θ ]−1K(i)θ + I. (7b)

In case the measurement data around operating point i can be described by (4)

with θ = θ0, the prediction error ε(i)t,θ0

is the innovation with covariance matrix

Λ(i)0 = C

(i)θ0P

(i)θ0

[C(i)θ0

]T + Qe. The weights Λ(i)t in (3) should therefore be close to

Λ(i)0 .

2.2 Intermediate Local Models

In this paper, we will not use (3) and (6) directly for the parameter estimation, butinstead capture and compress the local behavior by an intermediate estimationof the nonparametric (FRF) in each operating point. There are several reasonsfor this, which will be outlined in Section 2.4. The criterion (3) will now be ap-proximated and rewritten to show how the nonparametric FRF can be estimatedand used for the parameter estimation (c.f. (11) and (12)). For simplicity, we willassume steady-state response data to avoid transients and initial conditions.

To handle multivariable systems, the Ntot,i samples in operating point i are fur-ther split into nu parts in a similar way as in Ljung (2003). Each part containsNi,0transient samples followed by Ni samples of the steady-state response (assuminga periodic excitation), such that Ntot,i = nu(Ni + Ni,0). For details, see Figure 1.

By neglecting the transient samples and using constant weights Λ(i)t = Λ(i), (3) is

approximated by

V (θ) =Q∑i=1

nu∑l=1

Ni∑t=1

[ε(i,l)t,θ ]T [Λ(i)]−1ε

(i,l)t,θ , (8)

where ε(i,l)t,θ = [H (i)

θ (q)]−1[y(i,l)t − G(i)

θ (q)u(i,l)t ] is the prediction error in operating

point i for data part l using the model (6). By using Parseval’s relationship andassuming periodic data, (8) can be rewritten as

V (θ) =Q∑i=1

nu∑l=1

Ni∑k=1

[X(i,l)k,θ ]H [Φ(i)

k,θ]−1X(i,l)k,θ , (9)

with ( · )H denoting complex conjugate transpose,

X(i,l)k,θ = Y

(i,l)k − G(i)

k,θU(i,l)k , Φ

(i)k,θ = H

(i)k,θΛ

(i)[H (i)k,θ]H ,

and using the short notation

G(i)k,θ = G

(i)θ (ejωk ), H

(i)k,θ = H

(i)θ (ejωk ).

Y(i,l)k and U (i,l)

k are the discrete Fourier transform (DFT) of the output and input

Page 166: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

146 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

signals,

Y(i,l)k = N−1/2

i

Ni∑t=1

y(i,l)t ejωk t , ωk =

2πkNi

,

and similarly for U (i,l)k . The criterion (9) can be more compactly written by using

the matrix trace as

V (θ) =Q∑i=1

Ni∑k=1

tr([X(i)k,θ]H [Φ(i)

k,θ]−1X(i)k,θ) (10)

where X(i)k,θ = Y(i)

k − G(i)k,θU(i)

k and the nu DFT vectors are collected into matrices

U(i)k = [U (i,1)

k U(i,2)k . . . U

(i,nu )k ],

Y(i)k = [Y (i,1)

k Y(i,2)k . . . Y

(i,nu )k ].

If the input DFT matrix U(i)k has full rank, the nonparametric FRF estimate can

be calculated as

G(i)k = Y(i)

k [U(i)k ]−1. (11)

The criterion (10) can now finally be rewritten once more to show how (11) canbe used for identification:

V (θ) =Q∑i=1

Ni∑k=1

tr([G(i)k,θU(i)

k ]H [Φ(i)k,θ]−1G

(i)k,θU(i)

k )

=Q∑i=1

Ni∑k=1

vec(G(i)k,θ)H [W (i)

k,θ]−1 vec(G(i)k,θ), (12)

with

G(i)k,θ = G

(i)k − G

(i)k,θ , (13)

and

W(i)k,θ = [U(i)

k [U(i)k ]H ]−T ⊗ Φ

(i)k,θ . (14)

Here, ⊗ is the Kronecker product and (12) is obtained by using (A⊗ B)−1 = A−1 ⊗B−1, tr(AB) = tr(BA), and tr(ABCD) = vec(DT )T (CT ⊗ A) vec(B). The operatorvec(B) = [bT1 b

T2 . . . b

Tn ]T stacks the columns bi of a matrix B into a long column

vector.

The new criterion (12) now measures the (weighted) discrepancy (13) between

the nonparametric FRF estimate G(i)k and the parametric FRF G(i)

k,θ , obtained bylinearizing (1), for all the Q different operating points. To be noted is that theweighting matrix (14) can be seen as the covariance expression for the nonpara-metric FRF estimate (11), under certain assumptions on the measurements. SeeSection 3 for more details.

Page 167: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 Gray-Box Identification Using Local Models 147

2.3 Proposed Identification Procedure

To summarize, the proposed identification procedure is given by the followingthree steps:

1. Collect experimental data from Q operating points.

2. Estimate intermediate local models for each operating point, in this paper

nonparametric FRFs G(i)k , i = 1, . . . , Q.

3. Obtain the optimal parameter vector θ by minimizing the discrepancy G(i)k,θ =

G(i)k −G

(i)k,θ between G(i)

k and the parametric FRF, G(i)k,θ , for all excited frequen-

cies and operating points.

This identification procedure was first suggested in Öhr et al. (2006) and variousaspects of the procedure are further analyzed in Wernholt (2007) and in the citedreferences by Wernholt and co-authors in this paper.

Remark 1 Note that the parametric FRF, G(i)k,θ , is a function of the nonlin-

ear gray-box model (1) such that for each parameter vector θ during the min-imization, (1) is linearized according to Section 2.1 before calculating the FRF

G(i)k,θ = G

(i)θ (ejωk ) with G(i)

θ (q) from (7a).

2.4 Discussion

As was previously mentioned, it is common to use prediction-error methods forsystem identification. One simple (and often used) way of deriving an ad hocpredictor for a nonlinear system is to disregard the process noise wt in (1). Thepredictor is then actually a simulation of the noise-free model. However, this onlyworks if the model is stable, since a stable predictor always is required. Anotheroption is to apply the ideas in Forssell and Ljung (2000), where the predictor ismodified such that an output error model can be used also for unstable systems.This is appealing since the user often is mainly interested in modeling the dy-namics of the plant, the noise properties are less interesting. These ideas are alsoexploited in Larsson et al. (2009), where the nonlinear dynamics of an unstablefighter aircraft is identified, using the Extended Kalman Filter (Anderson andMoore, 1979). See also the work done on stochastic gray-box identification by,e.g., Bohlin (2006) and Kristensen et al. (2004). However, a drawback with allthese time-domain solutions is that they are numerically intensive and sensitivefor our setup due to a resonant, numerically stiff and large multivariable system(many states and parameters). In each iteration of the optimization routine, alarge number of simulations of this stiff system must be carried out to obtain thegradient, and many samples are needed in order to capture the resonant behavior.

One important feature of using intermediate models therefore is that they enabledata compression, which is also emphasized in, e.g., Gawthrop and Wang (2005).Thousands of data points can be compressed into an FRF with a few excited fre-quencies, which reduces computations in the nonlinear gray-box identification

Page 168: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

148 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

substantially (see Section 6 for an example). It is important to acknowledge thatthe idea of estimating intermediate models is not new and is commonly used in,e.g., modal analysis where usually a linear parametric model is fitted to an esti-mated FRF (Behi and Tesar, 1991; Verboven et al., 2005). Another related resultis presented in Johansen and Foss (1995), where local black-box models are com-bined into a global model through interpolation. However, such a model willhave very limited extrapolation features since it is mainly a way of obtaining anaccurate nonlinear black-box model in the manifold spanned by the local mod-els. The difference in our setup is that the prior information incorporated intothe nonlinear gray-box model (1) makes it probable that, once the parametershave been properly estimated, the model will give an accurate description of thebehavior in a fairly large range of the state space. The parameters of this globalmodel are however estimated by only using a few intermediate local models.

Other features of the proposed identification procedure, besides data compres-sion, is that unstable output-error models works fine in the frequency domain aslong as the input and output signals are bounded (which is handled by closed-loop experiments). In the time domain, this is much more involved (Forssell andLjung, 2000). In the frequency domain, it is also easy to validate the model suchthat all important resonances are captured, and model requirements in the fre-quency domain are easily handled.

The proposed procedure also has some possible problems. Local minima in theoptimization give problems here as well as for prediction error methods. In ad-dition comes some difficulties with biased nonparametric FRF estimates due toclosed-loop data and nonlinearities. The bias due to closed-loop data is some-times negligible and can also be reduced by proper experiment design to increasethe signal-to-noise ratio, such as periodic excitation (see Section 3). Another pos-sible problem is if a linear model is unable to describe the dynamics in an operat-ing point even for small perturbations due to the nonlinearities. This can be thecase for certain nonlinearities such as friction or backlash, but the problem canoften be reduced by the choice of excitation (e.g., avoid zero velocity to reducethe effects due to Coulomb friction). Identifiability can also be lost due to thelinearization.

3 FRF Estimation

As an intermediate step toward the parameter identification, estimates of thenonparametric FRF (11) in a number of operating points are needed. In the lit-erature (see, e.g., Guillaume, 1998; Pintelon and Schoukens, 2001; Wernholt andMoberg, 2008b) various estimation methods exist that differ in requirements onthe measurement setup and signal-to-noise ratio, as well as in bias and varianceproperties. Here we will mainly consider the simplest version (11) due to itsconnection to the prediction error criterion.

Page 169: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 FRF Estimation 149

Controller PlantΣ Σur +

yv

Figure 2: Closed-loop measurement setup.

3.1 Properties of Nonparametric FRF Estimates

Assume now that N samples of data are generated from a noise-corrupted linearsystem G(q) in open loop

yt = G(q)ut + vt .

For a scalar input ut , the nonparametric FRF estimate Gk = Yk/Uk (also calledEmpirical Transfer Function Estimate, ETFE), with Uk and Yk the DFTs of theinput and output signals, has the following statistical properties (see Lemma 6.1in Ljung, 1999):

E(Gk) = Gk +ρ1√NUk

, Cov(Gk) =Φk

|Uk |2+

ρ2

N |Uk |2.

Here, Gk = G(ejωk ), Φk is the spectrum of the additive noise vt , and ρi are con-stant bounds that depend on the system impulse response, maximum input am-plitude, and the covariance function of the noise. Moreover, it can be shown thatthe FRF estimates at different frequencies are asymptotically (N → ∞) uncor-related. In general, the FRF estimate will therefore be asymptotically unbiasedwith a variance equal to a noise-to-signal ratio Φk/ |Uk |2, usually resulting in avery crude estimate that must be smoothed over neighboring frequencies to re-duce the random fluctuations. However, these properties are drastically differentif the data is periodic, for example N = NpP with P an integer number of periodsandNp samples in each period, such that ut = ut+Np . In that case, ρ1 = 0 and |Uk |2increases linearly with P for the excited frequencies ωk = 2πk/Np. This gives anunbiased estimate and the variance decays like 1/P (assuming that vt contains nopure sinusoids at the excited frequencies such that Φk is approximately constantwhen P is increased).

Similar results can be obtained for the multi-input case, stating that Gk = YkU−1k

is unbiased for periodic data and with a covariance matrix given by (cf. (14))

Cov(Gk) = E(vec(Gk − Gk)[vec(Gk − Gk)]H )

= [UkUHk ]−T ⊗ Φk ,

where we have neglected a term similar to ρ2/(N |Uk |2) above. For details, see forexample Theorem 8.2.5 in Brillinger (1981) or Wernholt and Gunnarsson (2007).

If the open-loop system to be identified is unstable, it is necessary to collect datain closed loop. Consider therefore the setup in Figure 2, where the controllertakes as input the difference between the reference signal r and the measured

Page 170: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

150 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

and sampled output y, and u is the input. The additive noise v contains varioussources of noise and disturbances. The nonparametric FRF estimate then usuallygets biased due to the correlation between u and v. Assuming a linear plant andcontroller,

yt = G(q)ut + vt , ut = F(q)(rt − yt),and the same number of inputs and outputs ny = nu = n, the estimate is given by

Gk = YkU−1k = Gk + VkU−1

k

= Gk + Vk(Rk −Vk)−1(Gk + F−1

k ),

where Rk and Vk are the DFT matrices of the reference and measurement noisesignals, similarly as for Yk and Uk . It is then hard to calculate the bias due tothe matrix inverse, but it is approximately proportional to the noise-to-signalratio (Φk/ |Rk |2 for n = 1). Fortunately, the signal-to-noise ratio can be madearbitrarily large at the excited frequencies by using a periodic excitation. TheFRF estimate will therefore be asymptotically unbiased (as the number of periods,P → ∞) at the excited frequencies also in closed loop. For details, see Wernholtand Gunnarsson (2007).

3.2 Excitation Signals

As has already been stressed, the quality of the nonparametric FRF estimate ishighly dependent on the excitation where Uk must be invertible and periodicdata is desirable. We will therefore assume periodic data with Ni = NpP , whereP is an integer number of periods (important to avoid leakage effects in the DFTs)and Np is the number of samples in each period.

For multivariable systems, the orthogonal random phase multisine signal hasbeen proposed by Dobrowiecki and Schoukens (2007) to minimize the FRF uncer-tainty in open loop, given certain input amplitude constraints. Here, this signalwill be used in closed loop, which corresponds to an optimal experiment designwith output amplitude constraints. The excitation signal in operating point i is

then given by R(i)k = R(i)

d,kT, where T is an orthogonal matrix, Til = e2πjn (i−1)(l−1),

with TTH = nI . Rd,k is a diagonal matrix where each diagonal element is the DFTof a random phase multisine signal, which in the time domain can be written as

rt =

Nf∑k=1

Ak cos(ωkt + φk),

with Nf the number of excited frequencies (limited by Nf ≤ Np/2 assuming peri-odic excitation andNp even), amplitudes Ak , frequencies ωk chosen from the grid{ωk = 2πk/Np, k = 1, . . . , Np/2}, and random phases φk uniformly distributed be-tween 0 and 2π. The selection of frequencies as well as the amplitude spectrumwill affect the parameter estimation in the next step. Using too many frequenciesfor a given total excitation power will give a low signal-to-noise ratio, which in-creases both the bias and the variance in the nonparametric FRF estimate. The

Page 171: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Parameter Estimation 151

amplitude spectrum should also reflect the parameter sensitivity (cf. Ψ (i)0,k in (16)),

such that θ influence G(i)k,θ for the selected frequencies.

The nonparametric FRF estimate can be improved by collecting more experimen-tal data and average over multiple blocks (by performing nuM experiments ineach operating point, with M an integer number of blocks) and/or periods. Thecovariance matrix can then also be estimated. For a linear system, averaging overdifferent periods is sufficient, whereas for a nonlinear system it can be essential

to average over blocks where R(i)k in each block have different realizations of the

random phases. The reason is that nonlinearities otherwise might distort the es-timate and give a too low uncertainty estimate. See Schoukens et al. (2005) fordetails and Wernholt and Gunnarsson (2008) for experimental results.

3.3 Optimal Operating Points

Given a nonlinear gray-box model (1), the information about the unknown pa-rameters will vary depending on the operating point. Therefore, given a limitedtotal measurement time, one should perform experiments around the operatingpoint(s) that contribute the most to the information about the unknown param-eters. In Wernholt and Löfberg (2007), this problem is formulated as a convexoptimization problem by using a set of candidate operating points, obtained bygriding the workspace. It is also shown that the experiment design is efficientlysolved by considering the dual problem. Given thousands of candidates, onlya few operating points are selected in the optimum. See Wernholt and Löfberg(2007) for details and examples.

4 Parameter Estimation

When the nonparametric FRFs have been estimated from data, the last step is

to linearize (1) in the same operating points, calculate the parametric FRFs, G(i)k,θ ,

i = 1, . . . , Q, and estimate the unknown parameters by minimizing a cost functionV (θ), for example (12). First, two different parameter estimators will be analyzedand compared. Next, the selection of weights and the solution of the optimizationproblem are discussed.

4.1 Weighted Nonlinear Least Squares

Minimizing (12) for the Nf excited frequencies gives the weighted nonlinear leastsquares (NLS) estimator:

θNLSNf

= arg minθ∈Θ

V NLSNf

(θ), (15a)

V NLSNf

(θ) =Q∑i=1

Nf∑k=1

[E(i)k,θ]H [W (i)

k ]−1E(i)k,θ , (15b)

E(i)k,θ = vec(G(i)

k ) − vec(G(i)k,θ), (15c)

Page 172: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

152 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

where W (i)k is assumed to be a Hermitian (W = WH ) weighting matrix. The

asymptotic properties (Nf →∞) of this estimator are given in the following resultunder certain assumptions:

1. The nonparametric FRF is unbiased and given by G(i)k = G

(i)0,k + η

(i)k with

vec(η(i)k ) a zero mean circular complex random vector, independent over i

and k, with finite covariance matrix W (i)0,k .

2. The true system is in the model class: G(i)0,k = G

(i)k,θ0

.

3. Θ is a compact set where V NLSNf

(θ) and its first- and second-order derivativesare continuous for any value of Nf .

4. For Nf large enough, the expected value of V NLSNf

(θ) has a unique globalminimum θ0 in Θ.

Result 1 The NLS estimator (15) is consistent (limNf→∞ θNLSNf

= θ0), and√Nf (θNLS

Nf−

θ0) is asymptotically Normal distributed with covariance matrix Pθ ,

Pθ =12

1Nf

Q∑i=1

Nf∑k=1

<{Ψ

(i)0,kΞ

(i)k [Ψ (i)

0,k]T

}−1

×

1Nf

Q∑i=1

Nf∑k=1

<{Ψ

(i)0,kΣ

(i)k [Ψ (i)

0,k]T

1Nf

Q∑i=1

Nf∑k=1

<{Ψ

(i)0,kΞ

(i)k [Ψ (i)

0,k]T

}−1

, (16)

with the Jacobian matrix [Ψ (i)0,k]

T =∂ vec(G(i)

k,θ)∂θ

∣∣∣∣∣∣θ=θ0

,

( · ) denoting complex conjugate, and

Ξ(i)k = [W (i)

k ]−1, Σ(i)k = [W (i)

k ]−1W(i)0,k[W

(i)k ]−1.

The covariance is minimized by using the weights

W(i)k = W

(i)0,k , (17)

which also simplifies (16) to

Pθ =12

1Nf

Q∑i=1

Nf∑k=1

<{Ψ

(i)0,k[W

(i)0,k]−1[Ψ (i)

0,k]T

}−1

.

This result is a variant of classical results on static nonlinear regression, such asJennrich (1969). See also (Pintelon and Schoukens, 2001, Thm. 7.21) and (Ljung,

Page 173: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Parameter Estimation 153

1999, Thm. 9.1) for similar ideas.

Under the given assumptions, the NLS estimator therefore results in unbiasedparameters and Cov(θNLS

Nf) ∼ 1

NfPθ , with Pθ from (16). The first assumption is true

asymptotically, also in a closed-loop setup, given that we use a periodic excitationsignal with infinitely many periods. The second assumption, that the true systemis in the model class, is necessary when talking about consistency, but is in realityof course violated. Therefore, we will also have a bias term that depends on thechosen weights, see Section 4.3 for additional comments.

4.2 Weighted Logarithmic Least Squares

For systems with a large dynamic range, the NLS estimator may become ill-conditioned.Therefore, the weighted logarithmic least squares (LLS) estimator has been sug-gested (Pintelon and Schoukens, 2001, pp. 206–207)

θLLSNf

= arg minθ∈Θ

V LLSNf

(θ), (18a)

V LLSNf

(θ) =Q∑i=1

Nf∑k=1

[E(i)k,θ]H [W (i)

k ]−1E(i)k,θ , (18b)

E(i)k,θ = log vec(G(i)

k ) − log vec(G(i)k,θ), (18c)

where logG = log |G| + j argG. According to Pintelon and Schoukens (2001), thisestimator has improved numerical stability and is particularly robust to outliersin the measurements. However, from a theoretical point of view, the estimator isslightly biased. The bias can be neglected if the FRF uncertainty is fairly small,see Pintelon and Schoukens (2001) for details. By neglecting the bias, and using∂∂θ logGk,θ = 1

Gk,θ∂∂θGk,θ and Ek,θ0

= log Gk − logGk,θ0≈ ηk/Gk,θ0

, one can showa similar result as Result 1 for the LLS estimator.

Result 2 The asymptotic covariance matrix for the LLS estimator (18) is ap-proximately given by (16) with

Ξ(i)k =

[G

(i)d,k,θ0

W(i)k [G(i)

d,k,θ0]H

]−1, Σ

(i)k = Ξ

(i)k W

(i)0,kΞ

(i)k ,

and G(i)d,k,θ0

= diag(vec(G(i)k,θ0

)). Using the weights

W(i)k =

[G

(i)d,k,θ0

]−1W

(i)0,k

[G

(i)d,k,θ0

]−H, (19)

gives approximately the same covariance as for the NLS estimator (when using(17)).

4.3 Selection of Weights

Even if the covariance is minimized by using the weights (17) and (19), respec-tively, the chosen weights will in general be different for a number of reasons.

First, the true covariance matrix W (i)0,k is usually not known so the user must in-

Page 174: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

154 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

stead be content with an estimated covariance matrix W (i)0,k . Second, the weights

also reflect where the user requires the best model fit. This is important in casethe model is unable to describe every detail in the measurements. The weightsshould then primarily be selected to distribute the bias, not to get minimum vari-ance.

For a resonant system, it is often easier to use the LLS estimator in the way thateven constant weights will make sure that both resonances and anti-resonancesare matched by the model. This is due to the fact that the logarithm in the LLSestimator inherently gives the relative error, compared to the absolute error whenusing the NLS estimator. With the NLS estimator, the anti-resonances are easily

missed if not choosing [W (i)k ]−1 large at those frequencies.

4.4 Solving the Optimization Problem

The minimization problem to be solved, (15) or (18), is unfortunately non-convex.In the example in Section 5, the problem is solved using fminunc in Matlab,which is a gradient-based method which only returns a local optimum. Due tothe existence of local minima, a good initial parameter vector, θinit, is important.The problem can be partly solved by random perturbations of the initial parame-ters in order to reduce the risk falling into local minima. Or, alternatively stated,to obtain a local minimum which is good enough for the purpose of the model.The quality of the resulting model, as well as problems with local minima andidentifiability properties, depend on the choices of estimator, weights, and oper-ating points for the experiments. This will be illustrated in Sections 5 and 6.

4.5 Final Identification Procedure

The identification procedure outlined in the previous sections is now summa-rized:

1. Select a number of operating points, e.g., by solving an optimal experimentdesign problem according to Wernholt and Löfberg (2007).

2. Design the excitation signal and collect experimental data from each op-erating point. Preferably by using an orthogonal random phase multisinesignal with multiple periods and/or realizations, see Section 3.2.

3. Estimate the nonparametric FRF (11) in each operating point, includinguncertainty estimates by using multiple periods and/or realizations.

4. Select a parameter estimator, e.g., NLS (15) or LLS (18) (preferred for reso-nant systems) with suitable weights according to Section 4.3.

5. Solve the corresponding minimization problem, (15) or (18), by using opti-mization software.

Page 175: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Application Example 155

Figure 3: The IRB6640 robot from ABB.

Figure 4: An extended flexible joint dynamic model with three rigid bodies(RB), three joints, two motors, and thus five degrees-of-freedom.

5 Application Example

In this section, the described identification procedure, see Section 4.5, is appliedto an industrial robot from the ABB IRB6600 series, see Figure 3. Similar resultscan be found in Wernholt and Moberg (2008a) and some early results in Öhr et al.(2006).

5.1 Modeling of Robot Manipulators

Most publications concerning robot manipulators only consider elasticity in therotational actuated joint direction. If gear elasticity is considered we then get theflexible joint model, and if link deformation restricted to a plane perpendicularto the preceding joint is included we get the flexible link model. These modelsare described in, e.g., De Luca (2000). However, these models cannot accuratelydescribe a modern industrial robot with weight- and cost optimized components,and thus more elasticity, which results in more complicated vibration modes in-side the controller bandwidth. A more general model, called the extended flex-ible joint model, was suggested in Moberg and Hanssen (2007). The model is alumped parameter model, which consists of a serial kinematic chain of rigid bod-ies. The rigid bodies are connected by elastic elements, representing torsionaldeflection. The elastic elements consist of one or more elastic joints. An actuated

Page 176: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

156 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

joint consists of a motor and a gearbox, and the corresponding spring-damperpair models the torsional deflection of the gearbox. A non-actuated joint modelselasticities in, e.g., bearings and links. One example of this model is illustratedin Figure 4, consisting of two motors, three rigid bodies, and three rotationalspring-damper pairs. Thus, the model has two actuated joints, one non-actuatedjoint, and five degrees-of-freedom (DOF). Generally, if the number of actuatedand non-actuated joints are Υa and Υna, respectively, the system has 2Υa + ΥnaDOF. The model equations can then be described as

M(qg , qe)[qgqe

]+ c(qg , qe, qg , qe) + g(qg , qe) =

[τgτe

],

Kg (η−1qm − qg ) + Dg (η−1qm − qg ) = τg ,

−Keqe − De qe = τe,

Mmqm + fm(qm) + η−T τg = τm,

where the angular positions are described by qg ∈ RΥa (actuated joints), qe ∈ RΥna

(non-actuated joints), and qm ∈ RΥa (motor). The torques are τg ∈ R

Υa (actuatedjoints), τe ∈ R

Υna (non-actuated joints), and τm ∈ RΥa (motors). The inertia ma-

trices for the motors and joints are Mm and M( · ), respectively. The Coriolis andcentrifugal torques are described by c( · ), and g( · ) is the gravity torque. The non-linear friction in motor bearings and gearboxes is fm( · ) and η is the gear ratiomatrix. Finally, Kg , Ke, Dg , and De are the diagonal stiffness and damping matri-ces for the actuated and non-actuated directions. As an example, the completeequations for the model in Figure 4 are given in Moberg and Hanssen (2009).Since the inertia matrices are invertible (Spong et al., 2006), the system can beformulated in state-space form

x(t) = fc(x(t), u(t), θ), (21a)

y(t) = h(x(t), u(t), θ), (21b)

where the states, x, can be chosen as the angular position and speed of the motorsand joints, the input, u, is the actuator torque τm, and the measured variable isthe motor angular position, i.e., y = qm. The rigid body parameters of the model(mass, length, inertia, and center of mass) are assumed to be known from a CADmodel or a rigid body identification, see, e.g., Kozlowski (1998). Here, the mainobjective is identification of elasticity parameters (spring-damper pairs), whichare denoted θ.

In the identification procedure described in the previous sections, the paramet-

ric FRF G(i)k,θ is obtained by linearizing the discrete-time model (1) according to

Section 2.1. A problem now is that the dynamics in our gray-box model (21) isexpressed in continuous time. Of course it is possible to discretize (21a), withassumptions on the inter-sample behavior of u, to obtain f (xt , ut , θ). However,since this must be carried out for each new θ-value during the optimization (seeRemark 1), this will be very time consuming. For simplicity, we will instead firstlinearize (21) and then discretize the linearized model by using zero-order hold

Page 177: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Application Example 157

to obtain G(i)k,θ . This gives a negligible error (since the considered frequency range

is much smaller than the Nyquist frequency) but simplifies the identification pro-cedure substantially. For more details about the linearization and discretization,see, e.g., Wernholt (2007).

5.2 Experimental Setup

The robot used in the experiments is equipped with an experimental feedbackcontroller to allow for offline generated excitation signals. The excitation signalis the angular position reference, and its derivative is the sum of a low-frequencysquare wave and an orthogonal random phase multisine signal with constant am-plitude spectrum for 100 log-spaced frequencies between 2–60 Hz. The squarewave is used to reduce the number of zero velocity crossings, and thus reduce theinfluence of Coulomb friction. For the identification, only the standard sensorsinstalled in the robot are used, i.e., the output y is the motor angular position qm.The input u is the torque reference signal from the controller. However, in thefigures, the angular acceleration qm is considered as output to avoid the effects ofdouble integrators.

The identification is carried out both on a simulated robot, where the true valueθ0 is known, and on the real robot. Simulations and robot experiments were per-formed in 15 optimal operating points (see Wernholt and Löfberg, 2007), with24 sub-experiments in each operating point to get M = 4 blocks with nu = 6parts (the robot has 6 axes). The sampling period is Ts = 0.5 ms and every sub-experiment has Ni = Np = 2 · 104 samples (i.e., P = 1). Each block has a differentrealization of the multisine signal in order to reduce the influence of both de-terministic and stochastic disturbances, and also to enable the computation ofthe FRF uncertainty. Based on these measurements, the parameters are then esti-mated using the following estimators:

LLSUW: LLS with user-defined weights.

LLSCW: LLS with minimal-covariance weights (19).

NLSUW: NLS with user-defined weights.

NLSCW: NLS with minimal-covariance weights (17).

For simplicity, only diagonal weights W (i)k are considered (i.e., covariance be-

tween different elements in the FRF is neglected). The user-defined weights haveonly a few levels and are chosen to, roughly, consider the FRF uncertainty. Theminimal-covariance weights, (17) and (19), are computed using the estimated co-

variance matrix1 W(i)0,k and G

(i)k,θ0≈ G

(i)k . To assess the sensitivity to the initial

parameter vector, θinit, 100 optimizations are performed for each of the four es-timators, using randomly perturbed initial parameters, θ[l]

init, l = 1, . . . , 100 (the

1Actually only the diagonal, since more blocks of data are needed in order to estimate all elements

in W(i)0,k .

Page 178: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

158 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

same for all estimators). Each element in θ[l]init is obtained by multiplying the cor-

responding element in θ0 by 10ϕ , where ϕ is a random number from a uniformdistribution on the interval [−1, 1]. For the simulated robot, θ0 is known, but forthe real robot, a reasonable guess of θ0 is used. The nonlinear gray-box modelfor the identification is an extended flexible joint model with Υa = 6, Υna = 6,and thus 18 DOF or 36 states. A linear friction model is used and the parame-ter vector θ consists of 12 spring constants, 12 dampers, and 6 viscous frictionparameters. The linear friction model improves the estimate of the unknownsprings and dampers, but the identified friction is not physically correct. Foran accurate friction identification, the friction model needs to be nonlinear andother excitation signals must be used for dedicated friction estimation. Note alsothat it is important to design the experiments (e.g., avoid zero velocity) in sucha way that unmodelled properties (e.g., Coulomb friction) does not disturb theidentification of the gray-box model.

5.3 Identification of Simulated Robot

The simulation model is based on the gray-box model with some modificationsin order to act as a substitute to the real robot. These modifications are:

• Deterministic torque ripple disturbances (Gutt et al., 1996) are added to thetorque input in order to simulate ripple disturbances in the motors, driveelectronics, and gearboxes.

• Deterministic and stochastic disturbances are added to the measured motorangular position to simulate the real position sensor of the robot (Hansel-man, 1990).

• A nonlinear friction model, as described in Moberg et al. (2008), is used.

The same controller and excitation signals were used as for the real robot. Themodel cost for all 400 identified models (4 estimators × 100 different initial pa-rameter vectors) is shown in Figure 5. To get comparable numbers, all costs arecomputed using the LLSUW cost function (18). Clearly, the NLS criteria is verysensitive with respect to initial parameter values, and the minimal-covarianceweight is more sensitive than the user-defined weight. Table 1 shows the errorsin estimated springs and dampers for the best model, i.e., the model with min-imum cost function. Both NLSUW and LLSUW give quite accurate values for thespring constants but the estimated dampers are not that accurate. The NLSCWestimator fails completely. To be noted is that despite the good result for thebest NLSUW model in Table 1, approximately only 5 out of 100 optimizations forNLSUW give a reasonable model, compared to approximately 60 for LLSUW. Thisis evident in Figure 5, as well as in Figure 6 where the spring constant accuracyfor the 60 best models is shown. Figure 6 also shows that the LLSUW estimatorworks really well from a stiffness identification point of view.

The parametric FRF for the best LLSUW model is compared to the nonparametricFRF in Figure 7 (only element [1, 1] in operating point 8). The parametric FRF

of the true linearized model (TLM), G(8)k,θ0

, is also shown as a comparison. This

Page 179: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Application Example 159

10 20 30 40 50 60 70 80 90 1001

2

3

4

5

6

Sorted Optimization

Nor

mal

ized

Cos

t

LLSUWLLSCWNLSUWNLSCW

Figure 5: Simulated robot: The normalized cost (computed using the LLSUWcost function) for all identified models. Each optimization is carried outusing different initial parameter values.

Table 1: Simulated robot: Max and mean (arithmetic) errors of the 12 springs(K) and the 12 dampers (D) for the best model. The error is computed as100(10| log10(Θ/Θ0)| − 1). The motivation for this is that a stiffness parameterof 2Θ0 is about as bad as 1/2Θ0.

NLSCW NLSUW LLSCW LLSUWMax Err K 1745 % 3.1 % 11 % 3.1 %Mean Err K 224 % 1.5 % 2.8 % 1.5 %Max Err D 1293 % 135 % 412 % 125 %Mean Err D 436 % 55 % 115 % 41 %

10 20 30 40 50 600

10

20

30

40

50

Max

Err

or [%

]

10 20 30 40 50 600

5

10

15

20

Mea

n E

rror

[%]

Sorted Optimization

LLSUWLLSCWNLSUW

LLSUWLLSCWNLSUW

Figure 6: Simulated robot: Error in estimated stiffness for the 60 best mod-els.

Page 180: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

160 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

2 5 10 20 50

20

30

40

50

Mag

nitu

de (

dB)

Frequency (Hz)

FRF Unc. (1 std)Nonpar. FRFPar. FRF IDMPar. FRF TLM

Figure 7: Simulated robot: The magnitude (from motor torque to motor ac-

celeration) of element [1, 1] for the nonparametric FRF, G(8)k , the identified

parametric FRF G(8)k,θ

(IDM), and the true linearized parametric FRF G(8)k,θ0

(TLM).

model has a low value of the viscous friction, and the nonlinear friction terms(e.g., Coulomb friction) are omitted during the linearization. Note that the iden-tified gray-box model (IDM) obtains a higher value of the viscous friction to betterdescribe the damping caused by the nonlinear friction, which is clearly visible inthe nonparametric FRF. Some standard deviations for the estimated springs anddampers are listed in Table 2 where the theoretical standard deviation of the bestLLSUW model according to (16) is compared to the empirical standard deviationfor the parameters in the 28 best LLSUW models. Note that the empirical vari-ation of parameter values is due to the model parameter sensitivity of the costfunction in relation to the stop criteria of the optimization, and to the existenceof local minima in the cost function. The 28 models used are the models withcost functions within 5 % from the best model.

The best estimator with respect to accuracy and sensitivity to initial values isclearly the LLSUW estimator. The LLS estimator is, as previously explained, knownto be a good choice for resonant systems. The failure of the minimal-covarianceweight can be explained by the high uncertainty around the resonance and anti-resonance frequencies, and the fact that most information about stiffness anddamping can be found at those frequencies. The stiffness parameters are accu-rately estimated for the simulated robot (max error of 3%, see Table 1). Thestiffness parameter uncertainty estimate based on the result for different initialparameter values is in agreement with the theoretical uncertainty based on theFRF uncertainty (see Table 2). The dampers are harder to estimate and this canpartly be explained by the FRF uncertainty around the resonance frequencies.The nonlinear friction also increases the FRF damping in a way that cannot befully modeled by a linear viscous friction.

Page 181: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Application Example 161

Table 2: Simulated robot: max, min, and (geometric) mean standard devia-tion for 12 springs (K) and 12 dampers (D) estimated with the LLSUW esti-mator. Theoretical standard deviation according to (16), σth, and based onthe 28 best models, σ28.

σmin28 σmin

th σmax28 σmax

th σmean28 σmean

thK 0.4 % 0.4 % 4.9 % 7.5 % 1.3 % 1.7 %D 11 % 8.4 % 32 % 108 % 27 % 32 %

Table 3: Real robot: max, min, and (geometric) mean standard deviationfor 12 springs (K) and 12 dampers (D) estimated with the LLSUW estimator.Theoretical standard deviation according to (16), σth, and based on the 54best models, σ54.

σmin54 σmin

th σmax54 σmax

th σmean54 σmean

thK 1.3 % 0.3 % 41.5 % 2.7 % 3.7 % 0.9 %D 30 % 4.1 % 54 % 47 % 47 % 10 %

5.4 Identification of Real Robot

The same procedure as in Section 5.3 is now applied to the real robot. The modelcost for all identified models is shown in Figure 8, and Table 3 shows the stan-dard deviations for the LLSUW estimator. The parametric FRF for the best LLSUWmodel in one operating point is compared to the nonparametric FRF in Figure 9,and element [1, 1] is shown in Figure 10.

The result is the same as for the simulated robot, i.e., the best estimator with re-spect to accuracy and sensitivity to initial values is the LLSUW estimator. See alsoFigure 11 where the max and mean error of the estimated stiffness parameters areshown for the LLSUW estimator (the other estimators give worse results and arenot displayed). The estimated stiffness for the real robot has a larger uncertaintyand the model error, i.e., the cost function, is larger for the real robot if compared

10 20 30 40 50 60 70 80 90 1001

2

3

4

5

6

Sorted Optimization

Nor

mal

ized

Cos

t

LLSUWLLSCWNLSUWNLSCW

Figure 8: Real robot: The normalized cost (computed using the LLSUW costfunction) for all identified models.

Page 182: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

162 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

0204060

0204060

0204060

Mag

nitu

de (

dB)

0204060

0204060

2 10 50−20

0204060

10 50 10 50Frequency (Hz)

10 50 10 50 10 50

Figure 9: Real robot: All 36 elements of nonparametric (dashed) and para-metric (solid) FRF in operating point 8.

2 5 10 20 50

20

30

40

50

Mag

nitu

de (

dB)

Frequency (Hz)

FRF Unc. (1 std)Nonpar. FRFPar. FRF

Figure 10: Real robot: Element [1, 1] for nonparametric and parametric FRFin operating point 8.

10 20 30 40 50 600

10

20

30

40

50

Stif

fnes

s E

rror

[%]

Sorted Optimization

Max ErrorMean Error

Figure 11: Real robot: Error in estimated stiffness for the 60 best LLSUWmodels, compared to the best LLSUW model.

Page 183: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 A Small Comparison with Time Domain Identification 163

Figure 12: The benchmark system.

to the simulated robot. This is no surprise since the 18 DOF model is a low-orderapproximation of the real robot. Moreover, the placement of the spring-damperpairs in the 18 DOF model is probably not optimal and linear spring-dampers areassumed. Despite of this, if the resulting parametric FRFs are inspected (see e.g.,Figure 9), the model requirements in the frequency domain are satisfied. Morespecifically, the lower resonance frequencies are estimated with an error within0.1–1 Hz. The obtained model should therefore be useful for many purposes.

6 A Small Comparison with Time DomainIdentification

This section further motivates the use of frequency domain identification for res-onant systems. In a small simulation study, time domain identification is com-pared to frequency domain identification. The simulated system is a model ofan elastic robot arm, as described in Moberg et al. (2009), and is illustrated inFigure 12. Compared to Section 5 this is a simplified scalar system (ny = nu = 1)with stable dynamics (except integrators). The same torque ripple and measure-ment disturbances as described in Section 5.3 are used. The friction, springs,and dampers are linear. The identification task is to identify the three unknownspring-damper pairs, all other parameters are assumed to be known. The iden-tification is performed in closed-loop with motor torque τm as input and motorposition qm as output. The evaluation is performed in the same way as describedin Section 5.2, identification is performed for 100 sets of initial parameters in therange 0.1θ0 to 10θ0. The reference speed is a 10 s swept sinusoid (chirp) with anadded low frequency sinusoid. The signals are measured for 11 s to ensure thatthe system is at rest when the measurement ends (to avoid frequency leakage forthe non-periodic input). The reason for using chirp is that multisine excitation istailored for frequency domain identification and yields a worse result than chirpwhen used for time-domain identification. Periodic multisine is used in two casesas a comparison. For the time domain identification, the System IdentificationToolbox (Ljung, 2007) is used. The following cases are evaluated:

FD NLS: Frequency domain, NLS estimator.

FD LLS 1: Frequency domain, LLS estimator.

FD LLS 2: Frequency domain, LLS estimator, multisine reference.

Page 184: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

164 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

Table 4: Result for 100 identifications (optimizations) with random initialparameters. AM is the number of acceptable models. Max errors of springs(K) and dampers (D) are given for the best obtained model. Time is the nor-malized execution (optimization) time for the identification method. Notethat the experiment time is the same for all cases (11 s) except for FD LLS 3(44 s).Method AM Err K Err D TimeFD NLS 0 % 1.1 % 3.9 % 3.3FD LLS 1 85 % 0.3 % 7.1 % 2.6FD LLS 2 70 % 0.3 % 1.3 % 1.0FD LLS 3 66 % 0.1 % 0.2 % 1.0TD PEM 1 46 % 0.7 % 2.1 % 5.7TD PEM 2 19 % 0.1 % 0.9 % 5.9

FD LLS 3: Frequency domain, LLS estimator, multisine reference, average FRFfrom 4 different experiments using different realizations.

TD PEM 1: Time domain, prediction error method, no disturbance model, motorspeed is used as output.

TD PEM 2: Time domain, prediction error method, disturbance model used.

Note that a disturbance model is required to get a stable predictor if motor posi-tion is used as output since we have a pure integrator in the system. When mo-tor speed is used, no disturbance model is required. The results for the differentcases are shown in Table 4. An acceptable model is defined as a model with a stiff-ness error within ±1 % and a damping error within ±10 %. The conclusion is onceagain that for frequency domain identification, the LLS estimator is superior tothe NLS estimator which is extremely sensitive to initial parameter values. Timedomain identification is also quite sensitive to initial parameter values. For thetime domain methods, the number of acceptable models can be slightly increasedby decreasing the tolerance parameter of the optimizer, however the penalty in in-creased execution time is large. Numerical problems were indicated for the timedomain methods, especially when disturbance models were used. However, theresult also shows a potential to increase the accuracy by use of disturbance mod-els. However, the best results are obtained for the frequency domain method,when multiple experiments are performed and periodic multisine excitation isused.

In this small linear example, the difference in execution time between computingthe frequency domain cost and simulating the system is quite small. However, forthe 18 DOF nonlinear model used in Section 5, the difference is extremely large.If the execution times for time domain simulation and frequency domain cost arecompared, the conclusion is that time domain identification will require between5000 and 100000 longer optimization time. The data compression obtained bythe use of the frequency domain method, is in the range 100 to 2000. The low esti-

Page 185: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

7 Conclusions and Future Work 165

mates assume that the nu experiments required for computing the multivariableFRF can be replaced by 1 experiment and that multiple experiments are not re-quired for increasing the accuracy (disturbance model used). The high estimatesassumes that the experiment times are the same for the frequency and time do-main methods. If the increased sensitivity for initial parameter values cannotbe handled by, e.g., pre-filtering, the difference in optimization time will furtherincrease. It is likely that time domain identification can reduce the required ex-periment time but it will certainly increase the optimization time. However, inorder to apply a time domain method, the problem of finding a stable predictorfor the nonlinear unstable system must be solved and numerical problems arealso to be expected.

7 Conclusions and Future Work

The problem of estimating unknown parameters in a nonlinear gray-box modelhas been studied. It has been shown in Section 2.2 that a time-domain predictionerror method can be approximated by a frequency-domain procedure that usesintermediate local models. This allows for data compression and a simplifiedoptimization problem. The procedure is based on the estimation of the nonpara-metric FRF in a number of operating points. The nonlinear gray-box model islinearized in the same operating points and the optimal parameters are obtainedby minimizing the discrepancy between the nonparametric FRFs and the para-metric FRFs (the FRFs of the linearized gray-box model). Two different standardparameter estimators (NLS and LLS), as well as the selection of weights in theestimators, have been studied.

The proposed procedure has been successfully applied to the problem of identify-ing elasticity parameters (spring-damper pairs) in a six-axes industrial robot. Theperformance and sensitivity to varying initial parameters varies greatly betweendifferent estimators and selected weights. It was shown that the LLS estimator issuperior for this type of system due to its robustness to the initial estimate. Thestiffness parameters were accurately estimated, but the estimation of dampingwas quite hard. The minimal-covariance weights turned out to give poor results,compared to approximately constant user-defined weights. The main reason wasthe large FRF uncertainty around the resonances, and the fact that most informa-tion about the parameters can be found at those frequencies. The identificationresult of the real robot is satisfactory, the identified model gives a good globaldescription in the frequency range of interest and the obtained model should beuseful for many future purposes.

For the future, improved model accuracy, reduction of measurement time andexcitation energy, and ease-of-use are desired. Nonlinear time-domain identifi-cation, gray-box model structure selection, and automatic weight selection aretherefore important areas for future research. The use of additional sensors, e.g.,accelerometers are also an interesting area.

Page 186: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

166 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

Bibliography

B.D.O. Anderson and J.B. Moore. Optimal Filtering. Prentice-Hall, Upper SaddleRiver, N.J., 1979.

F. Behi and D. Tesar. Parametric identification for industrial manipulators usingexperimental modal analysis. IEEE Transactions on Robotics and Automation,7(5):642–652, October 1991.

T. Bohlin. Practical Grey-box Process Identification: Theory and Applications.Springer, July 2006.

D. R. Brillinger. Time Series: Data Analysis and Theory. McGraw-Hill, New York,expanded edition, 1981.

A. De Luca. Feedforward/feedback laws for the control of flexible robots. InProceedings of the 2000 IEEE International Conference on Robotics and Au-tomation, pages 233–240, San Francisco, CA, April 2000.

T. Dobrowiecki and J. Schoukens. Measuring a linear approximation to weaklynonlinear MIMO systems. Automatica, 43(10):1737–1751, October 2007.

A. Doucet, N. de Freitas, and N. Gordon, editors. Sequential Monto Carlo Meth-ods in Practice. Springer Verlag, 2001.

U. Forssell and L. Ljung. Identification of unstable systems using output errorand box-jenkins model structures. IEEE Transactions on Automatic Control,45(1):137–141, January 2000.

P. J. Gawthrop and L. Wang. Data compression for estimation of the physical pa-rameters of stable and unstable linear systems. Automatica, 41(8):1313–1321,August 2005.

P. Guillaume. Frequency response measurements of multivariable systems usingnonlinear averaging techniques. IEEE Transactions on Instrumentation andMeasurement, 47(3):796–800, June 1998.

H.-J. Gutt, F. D. Scholl, and J. Blattner. High precision servo drives with DSP-based torque ripple reduction. In IEEE AFRICON, 1996, volume 2, pages 632–637, September 1996.

D. Hanselman. Resolver signal requirements for high accuracy resolver-to-digitalconversion. IEEE Transactions on Industrial Electronics, 37(6):556–561, De-cember 1990.

R. I. Jennrich. Asymptotic properties of non-linear least squares estimators. TheAnnuals of Mathematical Statistics, 40(2):633–643, 1969.

T. A. Johansen and B. A. Foss. Identification of non-linear system structure andparameters using regime decomposition. Automatica, 31(2):321–326, February1995.

Page 187: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 167

K. Kozlowski. Modelling and identification in robotics. Advances in IndustrialControl. Springer, London, 1998.

N. R. Kristensen, H. Madsen, and S. B. Jørgensen. Parameter estimation in stochas-tic grey-box models. Automatica, 40(2):225–237, February 2004.

R. Larsson, Z. Sjanic, M. Enqvist, and L. Ljung. Direct prediction-error identifi-cation of unstable nonlinear systems applied to flight test data. In 15th IFACSymposium on System Identification, pages 144–149, Saint-Malo, France, July2009.

L. Ljung. Linear system identification as curve fitting. In Anders Rantzer andChristopher I. Byrnes, editors, Directions in Mathematical Systems Theory andOptimization (Lecture Notes in Control and Information Sciences), volume286, pages 203–215. Springer Verlag, 2003.

L. Ljung. System Identification: Theory for the User. Prentice Hall, Upper SaddleRiver, New Jersey, USA, 2nd edition, 1999.

L. Ljung. System Identification Toolbox for use with Matlab. Version 7. TheMathWorks, Inc., Natick, MA, 7 edition, 2007.

L. Ljung. Perspectives on system identification. In 17th IFAC World Congress,pages 7172–7184, Seoul, Korea, July 2008.

S. Moberg and S. Hanssen. A DAE approach to feedforward control of flexiblemanipulators. In Proc. 2007 IEEE International Conference on Robotics andAutomation, pages 3439–3444, Roma, Italy, April 2007.

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators. In Multi-body Dynamics 2009, Warsaw, Poland, July 2009.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust controlof a multivariable nonlinear flexible manipulator. In Proc. 17th IFAC WorldCongress, Seoul, Korea, July 2008.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust feed-back control of a flexible manipulator. IEEE Transactions on Control SystemsTechnology, 17(6):1398–1405, November 2009.

J. Öhr, S. Moberg, E. Wernholt, S. Hanssen, J. Pettersson, S. Persson, and S. Sander-Tavallaey. Identification of flexibility parameters of 6-axis industrial manipula-tor models. In Proc. ISMA2006 International Conference on Noise and Vibra-tion Engineering, pages 3305–3314, Leuven, Belgium, September 2006.

R. Pintelon and J. Schoukens. System identification: a frequency domain ap-proach. IEEE Press, New York, 2001.

K. Schittkowski. Numerical data fitting in dynamical systems. Kluwer AcademicPublishers, Dordrecht, 2002.

J. Schoukens, R. Pintelon, T. Dobrowiecki, and Y. Rolain. Identification of linearsystems with nonlinear distortions. Automatica, 41(3):491–504, March 2005.

Page 188: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

168 Paper B Nonlinear Gray-Box Identification Applied to Industrial Robots

M. W. Spong, S. Hutchinson, and M. Vidyasagar. Robot Modeling and Control.Wiley, 2006.

P. Verboven, P. Guillaume, and B. Cauberghe. Multivariable frequency-responsecurve fitting with application to modal parameter estimation. Automatica, 41(10):1773–1782, October 2005.

E. Wernholt. Multivariable Frequency-Domain Identification of IndustrialRobots. PhD thesis, Linköping University, SE-581 83 Linköping, Sweden, 2007.

E. Wernholt and S. Gunnarsson. Analysis of methods for multivariable frequencyresponse function estimation in closed loop. In 46th IEEE Conference on De-cision and Control, New Orleans, Louisiana, December 2007. Accepted forpublication.

E. Wernholt and S. Gunnarsson. Estimation of nonlinear effects in frequency-domain identification of industrial robots. IEEE Transactions on Instrumenta-tion and Measurement, 57(4):856–863, April 2008.

E. Wernholt and J. Löfberg. Experiment design for identification of nonlineargray-box models with application to industrial robots. In 46th IEEE Conferenceon Decision and Control, New Orleans, Louisiana, December 2007. Acceptedfor publication.

E. Wernholt and S. Moberg. Frequency-domain gray-box identification of indus-trial robots. In 17th IFAC World Congress, pages 15372–15380, Seoul, Korea,July 2008a.

E. Wernholt and S. Moberg. Experimental comparison of methods for multivari-able frequency response function estimation. In 17th IFAC World Congress,pages 15359–15366, Seoul, Korea, July 2008b.

E. Wernholt and S. Moberg. Nonlinear gray-box identification using local modelsapplied to industrial robots. Automatica, 2010. Accepted for publication.

Page 189: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Paper CInverse Dynamics of Flexible

Manipulators

Authors: Stig Moberg and Sven Hanssen

Edited version of the paper:

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators.In Multibody Dynamics 2009, Warsaw, Poland, July 2009.

Page 190: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 191: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Inverse Dynamics of Flexible Manipulators

Stig Moberg∗ ,† and Sven Hanssen∗∗ ,†

∗Dept. of Electrical Engineering,Linköping University,

SE–581 83 Linköping, [email protected]

†ABB AB,Robotics,

SE-721 68 Västerås, [email protected]

∗∗Department of Solid Mechanics,Royal Institute of Technology,SE-100 44 Stockholm, Sweden

[email protected]

Abstract

High performance robot manipulators, in terms of cycle time and ac-curacy, require well designed control methods, based on accurate dy-namic models. Robot manipulators are traditionally described by theflexible joint model or the flexible link model. These models onlyconsider elasticity in the rotational direction. When these models areused for control or simulation, the accuracy can be limited due tothe model simplifications, since a real manipulator has a distributedflexibility in all directions. This work investigates different meth-ods for the inverse dynamics of a more general manipulator model,called the extended flexible joint model. The inverse dynamics solu-tion is needed for feedforward control, which is often used for high-precision robot manipulator control.

The inverse dynamics of the extended flexible joint model can be com-puted as the solution of a high-index differential algebraic equation(DAE). One method is to solve the discretized DAE using a constant-stepsize constant-order backwards differentiation formula (BDF). Thiswork shows that there is only a small difference between solving theoriginal high-index DAE and the index-reduced DAE. It is also con-cluded that scaling of the algebraic equations and their derivatives isimportant.

The inverse dynamics can be solved as an initial-value problem if thezero dynamics of the system is stable, i.e., minimum phase. For unsta-ble zero dynamics, an optimization approach based on the discretizedDAE is suggested. An optimization method, using a continuous DAEformulation, is also suggested and evaluated. The solvers are illus-trated by simulation, using a manipulator with two actuators and five

171

Page 192: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

172 Paper C Inverse Dynamics of Flexible Manipulators

Figure 1: The IRB4600 robot from ABB.

degrees-of-freedom.

1 Introduction

Current industrial robot development is focused on increasing the robot perfor-mance, reducing the robot cost, improving safety, and introducing new function-alities as described in Brogårdh (2007). The need for cost reduction results inthe use of weight- and cost optimized robot components with increased elasticity.This results in more complicated vibration modes inside the control bandwidth.To maintain or improve the robot performance, the motion control must be im-proved for this new generation of robots. This can, e.g., be obtained by improvingthe model-based control as described in Björkman et al. (2008). An example of amodern industrial robot manipulator is shown in Figure 1.

Most publications concerning robot manipulators only consider elasticity in therotational direction. If gear elasticity is considered we get the flexible joint model,and if link deformation restricted to a plane perpendicular to the preceding jointis included we get the flexible link model. These models are described in, e.g.,De Luca (2000) and are useful for many purposes and simplify the control design.However, these models cannot accurately describe a modern industrial robot. Anextended model is needed to increase the accuracy in, e.g., simulation and con-trol.

The inverse dynamics problem for a number of mechanical systems can be for-mulated and solved as a DAE, see, e.g., Blajer (1997) or Blajer and Kolodziejczyk(2004). For many systems, the problem can be reformulated as the solution ofalgebraic equations or ordinary differential equations. One example of such asystem is the flexible joint model. In Moberg and Hanssen (2007), a general serial-link elastic manipulator model called the extended flexible joint model was pre-sented, and the inverse dynamics of this model was formulated and solved asa differential-algebraic equation (DAE). A comparison of feedforward controlbased on the flexible joint model and the extended flexible joint model was alsoperformed in Moberg and Hanssen (2007), and it was shown that the extended

Page 193: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 The Extended Flexible Joint Model 173

model yields a dramatic improvement.

2 The Extended Flexible Joint Model

The model consists of a serial kinematic chain of rigid bodies. The rigid bod-ies are connected by multidimensional spring-damper pairs, representing the ro-tational, and possibly also the translational, deflection. If two rigid bodies arejoined by a motor and a gearbox, we get an actuated joint represented by onespring-damper pair, modeling the rotational deflection of the gearbox. The otherspring-damper pairs represent non-actuated joints, modeling, e.g., elasticity ofbearings, foundation, tool, and load as well as bending and torsion of the links.One example of this model is illustrated in Figure 2. This model consists of threemotors, three links, four rigid bodies, and five spring-damper pairs. Thus, themodel has three actuated joints, two non-actuated joints, and eight1 degrees-of-freedom (DOF). Generally, if the number of added non-actuated joints is Υna andthe number of actuated joints is Υa, the system has 2Υa + Υna degrees-of-freedom.The model equations are2

M(qa)qa + c(qa, qa) + g(qa) =[τgτe

], (1a)

τg = Kg (qm − qg ) + Dg (qm − qg ), (1b)

τe = −Keqe − De qe, (1c)

τm − τg = Mmqm + f (qm), (1d)

where qa =[qTg qTe

]T, qg ∈ R

Υa is the actuated joint angular position, qe ∈ RΥna

is the non-actuated joint angular position, and qm ∈ RΥa is the motor angu-

lar position. Mm ∈ RΥa×Υa is the inertia matrix of the motors and M(qa) ∈

R(Υa+Υna)×(Υa+Υna) is the inertia matrix for the joints. The Coriolis and centrifugal

torques are described by c(qa, qa) ∈ RΥa+Υna , g(qa) ∈ RΥa+Υna is the gravity torque,and the nonlinear friction in motor bearings and gearboxes is f (qm) ∈ R

Υa . Theactuator torque is τm ∈ R

Υa , τg ∈ RΥa is the actuated joint torque, and τe ∈ R

Υna

is the non-actuated joint torque, i.e., the constraint torque. Kg , Ke, Dg , and Deare the stiffness- and damping matrices for the actuated and non-actuated direc-tions, with obvious dimensions. Note that the spring-damper torque also canbe defined as nonlinear, see, e.g., Moberg et al. (2008). Also note that the iner-tial couplings between the motors and the rigid bodies are neglected under theassumption of high gear ratio, see, e.g., Spong (1987). For a complete model in-

1The number of DOF is the number of independent coordinates necessary to specify the (internal)configuration of a system. This manipulator is specified by 3 motor angular positions, 3 actuatedjoint angular positions, 2 non-actuated joint angular positions, and has thus 8 DOF. The manipulatortool is specified by 6 coordinates (position and orientation) but only 3 coordinates can be controlledusing this manipulator, e.g., the position. In this paper, the number of DOF refers to the manipulatorsystem, and not to the tool.

2All positions, inertias, and torques are expressed on the joint side of the gearbox, hence, the gearratio does not appear in the equations.

Page 194: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

174 Paper C Inverse Dynamics of Flexible Manipulators

Figure 2: An extended flexible joint dynamic model with 8 degrees-of-freedom.

cluding the position and orientation of the tool, θ, the forward kinematic modelof the robot must be added. The kinematic model is a mapping of qa ∈ R

Υa+Υna

to θ ∈ RΥa . The complete model of the robot is then described by (1) and

θ = Γ (qa). (2)

Note that no unique inverse kinematics exists. This is a fact that makes the in-verse dynamics problem difficult to solve. The equations of motion (1) can be de-rived by computing the linear and angular momentum. By using Kane’s method(Kane and Levinson, 1985) the projected equations of motion can be derived toyield a system of ordinary differential equations (ODE) with minimum numberof DOF. One alternative way of deriving the equations of motion is to computethe potential and kinetic energy and to use Lagranges equation, see, e.g., Sha-bana (1998). If some parameters of the extended flexible joint model are un-known, these parameters can be obtained by identification, see, e.g., Wernholtand Moberg (2008). From Wernholt and Moberg (2008), it is also clear that theextended flexible joint model is needed to accurately describe a modern indus-trial robot.

3 Inverse Dynamics for The Simplified Flexible JointModel

The flexible joint model can be derived as a special case of the extended flexiblejoint model if all non-actuated joints are removed, i.e., Υna = 0. If friction anddamping are neglected we get the simplified flexible joint model. The equations

Page 195: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Inverse Dynamics for The Extended Flexible Joint Model 175

describing this model are

M(qa)qa + c(qa, qa) + g(qa) − Kg (qm − qa) = 0, (3a)

Mmqm + Kg (qm − qa) = τm. (3b)

The inverse dynamics of this model is described, e.g., in Jankowski and Van Brus-sel (1992). By solving (3a) for qm and differentiating twice, with respect to time,we get3

qm = qa + K−1g (M(qa)qa + c(qa, qa) + g(qa)), (4a)

qm = qa + K−1g (M(qa, qa, qa)qa + 2M(qa, qa)q

[3]a + M(qa)q

[4]a +

c(qa, qa, qa, q[3]a ) + g(qa, qa, qa)), (4b)

and by solving (3a) for the spring torque Kg (qm−qa) and inserting this expressiontogether with (4b) in (3b) we get an expression for the control signal, i.e., themotor torque, as

τm = (M(qa) + Mm)qa + c(qa, qa) + g(qa) + MmK−1g [M(qa, qa, qa)qa + 2M(qa, qa)q

[3]a +

M(qa)q[4]a + c(qa, qa, qa, q

[3]a ) + g(qa, qa, qa)]. (5)

The simplified flexible joint model is an example of a so-called flat system (see,e.g., Rouchon et al. (1993)) which can be defined as a system where all statevariables and control inputs can be expressed as an algebraic function of the de-sired trajectory and its derivatives up to a certain order. The desired joint trajec-tory qa(t) can be computed from the desired Cartesian trajectory θ(t), includingderivatives, by use of the inverse kinematics. The inverse dynamics can be usedfor feedforward control or feedback linearization as described in, e.g., Mobergand Hanssen (2008a). The simplified flexible joint model has no zero dynamics,see, e.g., De Luca (2000). This means that it is always possible to find a boundedcausal inverse dynamics solution. The inverse dynamics is more complicated ifthe model is extended with damping, friction, nonlinear spring torque, or inertialcoupling between motors and rigid bodies. Approaches for handling these casesare, e.g., described in De Luca (2000) and Thümmel et al. (2001).

4 Inverse Dynamics for The Extended Flexible JointModel

With the following states

X =[qTg qTe qTm qTg qTe qTm

]T=

[XT1 XT2 XT3 XT4 XT5 XT6

]T,

3The nth time derivative of a variable x is denoted x[n].

Page 196: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

176 Paper C Inverse Dynamics of Flexible Manipulators

(1) and (2) can be written as

M11(X1, X2)X4 + M12(X1, X2)X5 + γ1(X1, X2, X3, X4, X5, X6) = 0,

M21(X1, X2)X4 + M22(X1, X2)X5 + γ2(X1, X2, X4, X5) = 0,

MmX6 + γ3(X1, X3, X4, X6) − u = 0,

X1 − X4 = 0, X2 − X5 = 0, X3 − X6 = 0, Γ (X1, X2) − θ(t) = 0,

orF(t, X, X, u) = F(t, X1, X2, X3, X4, X5, X6, X1, X2, X3, X4, X5, X6, u) = 0. (7)

The system has Υa input variables4 u, i.e., the motor torque τm, and Υa controlledoutput variables with a desired reference θ(t), i.e., the position and orientationof the tool5. The gravity torque, speed dependent inertia torque, and the torquefrom the spring-damper pairs are contained in γi .

The inverse dynamics solution for the model is obtained if θ(t) is regarded asthe input signal and u and X are solved for. This means that the DAE (7) mustbe solved, and in Moberg and Hanssen (2007) this is performed using a constantstepsize 1-step backward differentiation formula (BDF). It was observed that ashort stepsize was required to obtain an accurate solution, but that numericalsolvability was lost if the stepsize was too small. Some commercially availablesoftware packages, e.g., Dymola, were also tried on the same systems, but nonewas able to solve these equations if the number of DOF exceeded 5. Numericalproblems could also be seen in cases where a solution was found. The 1-step BDFsolver could solve systems with up to 12 DOF, although with some problems.Clearly, the DAE (7) must be further analyzed in order to improve the solver,which is one of the objectives of this work.

In this work, the inverse dynamics solution is intended to be used primarily forfeedforward control, and the desired trajectory θ(t) must be followed perfectly inthe case of no model errors. If the system has a stable zero dynamics (minimumphase), see, e.g., Isidori (1995), it is possible to obtain a bounded causal solution.However, if the system has an unstable zero dynamics, perfect control requiresa non-causal solution, i.e., the torque must be applied before the start of thetrajectory execution. Solvers for both cases will be suggested and discussed inthe following sections.

5 DAE Theory

As the name implies, a DAE consists of differential and algebraic equations. ADAE can generally be expressed by

F(t, x, x) = 0, (8)

where x ∈ Rn is the state vector and F : R2n+1 → R

m. If Fx = ∂F/∂x is nonsin-gular, (8) represents an implicit ODE since x, by the implicit function theorem,

4The motor torque control is assumed to be perfect.5For a kinematically redundant manipulator, e.g., a 7-axis manipulator, θ must be extended to

specify the trajectory.

Page 197: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 DAE Theory 177

can be solved from x and t. Otherwise it represents a DAE, which in general isconsiderably harder to solve than an ODE. The differential index, ν, of a DAEprovides a measure of the singularity of the DAE. Generally, the higher the in-dex, the harder the DAE is to solve. An ODE has ν = 0, and a DAE with ν > 1is denoted a high-index DAE. The differential index can somewhat simplified bedefined according to Brenan et al. (1996):

Definition 1 The (differential) index of the DAE (8) is the minimum numberof times that all or part of (8) must be differentiated with respect to t in order todetermine x as a continuous function of t and x.

A semi-explicit DAE is a special case of (8) described as

x = F(x, y), (9a)

0 = G(x, y), (9b)

where the non-differentiated variables are denoted y. Differentiation of (9b) w.r.t.time yields

0 = Gy(x, y)y + Gx(x, y)x, (10)

and if Gy is nonsingular it is possible to solve for y and ν = 1. Furthermore, bythe implicit function theorem, it is also possible (at least numerically) to solve fory = φ(x). A straightforward method for solving this DAE is, e.g., Forward Euleraccording to

1. Compute xt+1 = xt + hF(xt , yt)

2. Solve yt+1 from G(xt+1, yt+1) = 0

where h is the stepsize. For the implicit DAE

F(t, x, x, y) = 0, (11)

we can solve for z =[x y

]Tif Fz is non-singular. In this case, ν = 1, and the

DAE can be solved with implicit methods.

For the analysis of a nonlinear DAE (8), the derivative array plays a central part.The derivative array Fl is defined according to (Brenan et al., 1996; Kunkel andMehrmann, 2006)

Fl(t, x, x, . . . , x[l+1]) =

F(t, x, x)ddt F(t, x, x)

...( ddt )

lF(t, x, x)

. (12)

Using the derivative array the differential index can be defined according to (Bre-nan et al., 1996):

Definition 2 The (differential) index of (8) is the smallest ν such that Fν uniquelydetermines the variable x as a continuous function of t and x.

Page 198: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

178 Paper C Inverse Dynamics of Flexible Manipulators

The differential index is a measure of the distance from the DAE to an ordinarydifferential equation (ODE). In Kunkel and Mehrmann (2006), it is argued that abetter measure would be the distance to a decoupled system of ODEs and purelyalgebraic equations. This measure is the strangeness index µ. The strangeness in-dex µ is defined by the following hypothesis6 as described in Kunkel and Mehrmann(2006).

Kunkel and Mehrmann Hypothesis There exist integers µ, a, and d such thatthe set

Lµ = {(t, x, x, . . . , x[µ+1]) ∈ R(µ+2)n+1|Fµ(t, x, x, . . . , x[µ+1]) = 0} (13)

associated with F is nonempty and such that for every (t, x0, x0, . . . , x[µ+1]0 ) ∈ Lµ,

there exists a (sufficiently small) neighborhood in which the following propertieshold:

1. We have rankMµ(t, x, x, . . . , x[µ+1]) = (µ+1)n−a on Lµ such that there existsa smooth matrix function Z2 of size (µ+1)n×a and pointwise maximal rank,satisfying ZT2 Mµ = 0 on Lµ.

2. We have rank A2(t, x, x, . . . , x[µ+1]) = a, where A2 = ZT2 Fµ;x such that thereexists a smooth matrix function T2 of size n × d, d = n − a, and pointwisemaximal rank, satisfying A2T2 = 0.

3. We have rank Fx(t, x, x)T2(t, x, x, . . . , x[µ+1]) = d such that there exists asmooth matrix function Z1 of size n × d and pointwise maximal rank, satis-fying rank ZT1 FxT2 = d.

The Jacobian Mµ is defined according to7

Mµ(t, x, x, . . . , x[µ+1]) = Fµ;x,...,x[µ+1](t, x, x, . . . , x[µ+1]). (14)

The strangeness index can then be defined according to

Definition 3 Given a differential-algebraic equation as in (8), the smallest valueof µ such that F satisfies the hypothesis is called the strangeness index of (8). Ifµ = 0, then the differential-algebraic equation is called strangeness-free.

An algebraic equation and an ODE have both µ = 0. Moreover, (8) can be ex-pressed as the reduced DAE

F(t, x, x) =[ZT1 FZT2 Fµ

]=

[F1(t, x, x)F2(t, x)

]. (15)

If x ∈ Rn is divided into the differential variables x1 ∈ R

d and the algebraic vari-ables x2 ∈ Ra, the reduced DAE can (in principle) be expressed as the decoupled

6The case where the number of equations equals the numbers of unknowns, i.e., m = n, is consid-ered here.

7Qy1 ,...,yn denotes the partial derivative ∂Q/∂y, where y = [y1, . . . , yn]T .

Page 199: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 A Manipulator Model with 5 DOF 179

system

x1 = G1(t, x1), x2 = G2(t, x1). (16)

6 A Manipulator Model with 5 DOF

Figure 3: An extended flexible joint dynamic model with 5 DOF.

Figure 4: An extended flexible joint dynamic model with 5 DOF.

This manipulator model will be used as an example when analyzing and solvingthe inverse dynamics DAE (7). The model is illustrated in Figures 3–4 and is aplanar model with linear elasticity in the rotational direction only, and does notdemonstrate the all-direction elasticity of the general model. However, it is an

Page 200: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

180 Paper C Inverse Dynamics of Flexible Manipulators

appropriate simple example with the desired mathematical structure. The modelhas two links, three rigid bodies, two actuated joints and one non-actuated joint,i.e., Υa = 2 and Υna = 1. The attributes of each joint are length l, inertia j, mass m,mass center ξ, stiffness k, damping d, and motor inertia Jm (actuated joints only).The model has 5 DOF and is described by (7) with states

X =[XT1 XT2 XT3 XT4 XT5 XT6

]T=

[[qg1 qg2]T [qe1] [qm1 qm2]T [qg1 qg2]T [qe1] [qm1 qm2]T

]T=

[q1 q2 q3 q4 q5 q1 q2 q3 q4 q5

]T=

[x1 x2 x3 x4 x5 x6 x7 x8 x9 x10

]T.

The inertia matrices M and Mm are defined and computed as8

Mm =[Jm1 00 Jm2

], M11 =

[J11 J12J12 J22

], M12 =

[J13J23

], M21 =

[J13 J23

], M22 =

[J33

],

J11 = j1 + j2 + j3 + m1ξ21 + m2l

21 s

22 + m2(c2l1 + ξ2)2 + m3(s3c2l1 + s3l2 + c3s2l1)2

+ m3(c3c2l1 + c3l2 − s3s2l1 + ξ3)2,

J12 = j2 + j3 + m2ξ2(c2l1 + ξ2) + m3l2s3(s3c2l1 + s3l2 + c3s2l1)+

m3(c3l2 + ξ3)(ξ3 − s3s2l1 + c3c2l1 + c3l2),

J13 = j3 + m3ξ3(ξ3 − s3s2l1 + c3c2l1 + c3l2), J23 = j3 + m3ξ3(c3l2 + ξ3),

J22 = j2 + j3 + m2ξ22 + m3l

22 s

23 + m3(ξ3 + c3l2)(c3l2 + ξ3), J33 = j3 + m3ξ

23 .

The kinematics is computed as:

Γ =[xz

]=

[l1c1 + l2c12 + l3c123−l1s1 − l2s12 − l3s123

].

Finally, the position and speed dependent terms are computed as:

γ11 = −s2l1m2(q22ξ2 + c2 q

21 l1 + 2q1 q2ξ2 + q2

1ξ2) + m2s2 q21 l1(c2l1 + ξ2) −m3(s3c2l1 + s3l2

+ c3s2l1)(2q1 q2ξ3 + 2q3 q1ξ3 + q21ξ3 + q2

3ξ3 + 2q3 q2ξ3 − s3s2 q21 l1 + 2c3 q1 q2l2 + c3 q

22 l2

+ c3 q21 l2 + c3c2 q

21 l1) + m3(ξ3 − s3s2l1 + c3c2l1 + c3l2)(c3s2 q

21 l1 + s3c2 q

21 l1 + 2s3 q1 q2l2

+ s3 q22 l2 + s3 q

21 l2) −m1gξ1c1 −m2g(l1c1 + ξ2c12) −m3g(l1c1 + l2c12 + ξ3c123)

+ q22ξ3 + k1(q1 − q4) + d1(q1 − q4),

γ12 = ξ2m2s2 q21 l1 − s3l2m3(2q1 q2ξ3 + 2q3 q1ξ3 + q2

1ξ3 + q23ξ3 + 2q3 q2ξ3 − s3s2 q2

1 l1

+ c3 q22 l2 + q2

2ξ3 + c3 q21 l2 + c3c2 q

21 l1) + m3(ξ3 + c3l2)(c3s2 q

21 l1 + s3c2 q

21 l1 + 2s3 q1 q2l2

+ s3 q22 l2 + s3 q

21 l2) −m2gξ2c12 −m3g(l2c12 + ξ3c123) + 2c3 q1 q2l2

+ k2(q2 − q5) + d2(q2 − q5),

γ21 = ξ3m3(s23 q21 l1 + 2s3 q1 q2l2 + s3 q

22 l2 + s3 q

21 l2) −m3gξ3c123 + k3q3 + d3 q3,

γ31 = k1(q4 − q1) + d1(q4 − q1), γ32 = k2(q5 − q2) + d2(q5 − q2).

8The following shorthand notation is used: s1 = sin(q1), c1 = cos(q1), s12 = sin(q1 + q2), c123 =cos(q1 + q2 + q3) etc.

Page 201: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

7 Analysis of The Inverse Dynamics DAE 181

7 Analysis of The Inverse Dynamics DAE

The inverse dynamics problem described in Section 4 will now be analyzed usingthe theory from Section 5 for the model described in Section 6. Note that theproblem (7) can be expressed in the implicit DAE form (8) if u is added to thestate vector X and θ(t) is included in F( · ). Clearly, for (7), the differential indexν ≥ 1 since u is missing in the equation. In Moberg and Hanssen (2007) it isshown that the differential index is at least 4 and that it can be reduced one stepby removing the equation for the motor torque balance. The control signal u canthen be computed from the solution X of the reduced DAE. The reduced DAE isgenerally expressed as

M11(X1, X2)X4 + M12(X1, X2)X5 + γ1(X1, X2, X3, X4, X5, X6) = 0, (17a)

M21(X1, X2)X4 + M22(X1, X2)X5 + γ2(X1, X2, X4, X5) = 0, (17b)

X1 − X4 = 0, (17c)

X2 − X5 = 0, (17d)

X3 − X6 = 0, (17e)

Γ (X1, X2) − θ(t) = 0. (17f)

The analysis is performed for the 5 DOF model described in Section 6, using threedifferent methods. All symbolical computations are performed using Maple andall rank computations are structural, i.e., cannot be guaranteed for all numeri-cal values of states and state derivatives. If this analysis would be a part of anumerical solver, numerical values would have to be used.

7.1 Analysis using The Kunkel and Mehrmann Hypothesis

The analysis was carried out by applying the hypothesis in Section 5, startingwith µ = 0, and constructing the matrix functions Z2, T2 (by computing nullspaces),and Z1 (by selecting matrix rows). If the hypothesis is not satisfied, µ is in-creased until the hypothesis is fulfilled. The analysis showed that there are 6algebraic variables, 4 differential variables, and that the strangeness index µ = 2.In Moberg and Hanssen (2008b), the hypothesis is applied to an analysis of a 2DOF manipulator. In that example, due to less complex equations, it was alsopossible to determine the differential and algebraic variables, and to solve for thedecoupled system (16). The existence of a decoupled system is guaranteed by theimplicit function theorem, but an analytic decoupling cannot be performed for ageneral nonlinear system.

7.2 Analysis by Differentiation

The algebraic constraint was differentiated and the higher order derivatives solvedfor and substituted. After three differentiations, the Jacobian Fx has (structurally)full rank. The differential index, ν, is 3 as expected. In general, the strangenessindex, µ = max(ν − 1, 0).

Page 202: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

182 Paper C Inverse Dynamics of Flexible Manipulators

7.3 Analysis by Differentiation and Introduction of IndependentVariables

This analysis, by introducing independent variables, is based on two methods forindex reduction called Minimal Extension and Dummy Derivatives which arefurther described and referenced in Section 8.2. If the algebraic constraint (17f)is differentiated and added to the system we can add independent variables, e.g.,X1 = X1 to get a determined system. By inspecting the system, we can see thatthe equations involving X1 can be removed. The resulting system is

M11(X1, X2)X4 + M12(X1, X2)X5 + γ1(X1, X2, X3, X4, X5, X6) = 0, (18a)

M21(X1, X2)X4 + M22(X1, X2)X5 + γ2(X1, X2, X4, X5) = 0, (18b)

X2 − X5 = 0, (18c)

X3 − X6 = 0, (18d)

Γ (X1, X2) − θ(t) = 0, (18e)

Γ (X1, X2, X4, X5) − θ(t) = 0. (18f)

By differentiating once more and adding independent variables X4 = X4 we getthe determined system

M11(X1, X2)X4 + M12(X1, X2)X5 + γ1(X1, X2, X3, X4, X5, X6) = 0, (19a)

M21(X1, X2)X4 + M22(X1, X2)X5 + γ2(X1, X2, X4, X5) = 0, (19b)

X2 − X5 = 0, (19c)

X3 − X6 = 0, (19d)

Γ (X1, X2) − θ(t) = 0, (19e)

Γ (X1, X2, X4, X5) − θ(t) = 0, (19f)

Γ (X1, X2, X4, X5, X4, X5) − θ(t) = 0. (19g)

By computing the Jacobian w.r.t. the highest order derivatives9 for (19), we seethat the original system (17) and the one time differentiated system (18) havesingular Jacobians, and that the two times differentiated system (19) has (struc-turally) full rank. This analysis also shows that the (structural) differential indexν, is 3, since we reach an index-1 DAE after two differentiations. We also sethat x1, x2, x6, x7, x9, x10 (X1, X4, X6) can be chosen as algebraic variables and thatx3, x4, x5, x8 (X2, X3, X5) can be chosen as differential variables. Thus, there are 6algebraic variables and 4 differential variables, the same result as in the Kunkeland Mehrmann analysis, but in this way, we can also easily determine which vari-ables are algebraic.

8 Methods for Numerical Solution of DAEs

Common numerical method for solving DAEs are Runge-Kutta methods and BDFmethods (backwards differentiation formulas). In this section we will concentrate

9e.g., [X1, X2, X3, X4, X5, X6, X4]

Page 203: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

8 Methods for Numerical Solution of DAEs 183

on the k-step BDF methods, where the derivative is approximated according to

x(ti) ≈ Dhxi =1h

k∑l=0

αlxi−l , (20)

and h = ti − ti−1 is the stepsize. BDF are stable for 1 ≤ k ≤ 6 and have coeffi-cients according to, e.g., Kunkel and Mehrmann (2006). One widely used solverfor DAEs is called DASSL, which is a variable-order variable-stepsize method(Brenan et al., 1996). In this section some common approaches for solving theequations by k-step BDF will be briefly described. In Section 9, these methodswill be evaluated on the extended flexible joint inverse dynamics problem.

8.1 Solving The Original High-Index DAE

If the BDF approximation is inserted in the original DAE (8) we get

F(ti , xi , Dhxi) = 0, (21)

which is a system of nonlinear equations that must be solved w.r.t. xi , for eachtime step, forward in time (initial value problem). The solvability of this systemcan be analyzed by computing the Jacobian

Fxi =α0

hFx + Fx (22)

which is ill-conditioned for small stepsizes since Fx is singular. This means thatthe solution may be erroneous or that we might not get any solution at all. How-ever, the k-step BDF method converges for some classes of high-index DAEs, andthe equations can be scaled to improve the conditioning of the problem, see Löt-stedt and Petzold (1986) and Petzold and Lötstedt (1986).

8.2 Index Reduction and Dummy Derivatives

This method is based on index reduction by differentiation. Pantelides’s algo-rithm (Pantelides, 1988) is often used to determine which equations to differen-tiate, and a Block Lower Triangular (BLT) form (Duff et al., 1986) of the differ-entiated problem can be used to check that the system is non-singular w.r.t. thehighest order derivatives. Some problems occur when solving the differentiatedproblem. If all equations are kept, the resulting system is overdetermined andmight be complicated to solve, see, e.g., Kunkel and Mehrmann (2006). If onlythe differentiated equations are kept, the resulting system with differential indexν = 1 or ν = 0 is determined, but when the system is discretized and solved, aproblem denoted as drift off often occurs due to discretization and roundoff er-rors. This means that the solution drifts off from the solution manifold since theoriginal algebraic constraints have been removed and replaced by differentiatedconstraints. Techniques for dealing with this are called constraint-stabilizationtechniques and are described in, e.g., Brenan et al. (1996).

In Mattson and Söderlind (1993) a new method for dealing with these problemsis suggested. For each differentiated equation, one differentiated variable is se-lected as a new independent variable, a so-called dummy derivative. In this way,

Page 204: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

184 Paper C Inverse Dynamics of Flexible Manipulators

the original constraints are kept, and a determined system is guaranteed. Thismethod can be applied to large systems and is generally used in the numericalsolvers of object-oriented simulation languages like Modelica (Fritzon, 2004). InKunkel and Mehrmann (2004) a method called minimal extension is suggested.Minimal extension utilizes the structure of the problem to obtain a minimal sys-tem where a new independent variable have been introduced for each differenti-ated equation, i.e., the method is very similar to the dummy derivative method.The motivation is that the original dummy derivative method cannot handle allproblems and that it generally results in an unnecessarily large system. The finalnumerical solution of the index-reduced system is normally solved with a k-stepBDF method as described above.

8.3 Numerical Solution Based on Kunkel and Mehrmann’sHypothesis

In Kunkel and Mehrmann (1998) a method for numerical solution based on thehypothesis in Section 5 is suggested. The system to solve is

Fµ(ti , xi , yi) = 0, ZT1 F(ti , xi , Dhxi) = 0, (23)

where yi = [x, . . . , x[µ+1]] are regarded as independent algebraic variables. Thisunderdetermined system has the same solution as the original high-index DAE.Due to the hypothesis, the dependence of yi can be neglected such that (23) onlydepends on xi . Z1 is an approximation to Z1 at the desired solution.

9 Numerical Solution of The Inverse Dynamics

9.1 Initial conditions and trajectory generation

An ODE solution is well-defined for any initial conditions. The solution to a DAEis restricted to a space with dimension less than n by the algebraic constraint,and its derivatives up to order ν − 1, i.e., the implicit constraints. Consistentinitial conditions w.r.t. all explicit and implicit constraints must be given to avoidinitial transients. For the inverse dynamics problem (7), the initial position forall DOF (X10, X20, X30) and the initial control signal (u0) must be chosen suchthat we get a steady-state solution with initial speed and all state derivativesequal to zero, i.e., we must solve F(0, X10, X20, X30, 0, . . . , 0, u0) = 0. If no gravity ispresent, u0 = 0, X10 = X30, and X20 = 0. Note that the trajectory reference θ(t) isimplicitly included in F and that the first ν derivatives of the algebraic constraintmust be zero for t = 0. Moreover, θ(t) must be sufficiently smooth to obtain acontinuous control signal u(t) as it is (implicitly) differentiated when the DAE issolved. The smoothness requirement is that θ(t) is at least ν0 times differentiable,where ν0 is the differential index of the original (unreduced) inverse dynamicsproblem (7). This can be accomplished, e.g., by using the trajectory polynomial

p(t) = a6t6 + a7t

7 + a8t8 + a9t

9 + a10t10 + a11t

11, (24)

Page 205: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

9 Numerical Solution of The Inverse Dynamics 185

0 0.5 10

0.5

0 0.5 1−1

0

1

2

3θ[1]

0 0.5 1−20

−10

0

10

20θ[2]

0 0.5 1−200

−100

0

100θ[3]

0 0.5 1−1000

−500

0

500

1000θ[4]

0 0.5 1−10

0

10

20θ[5]

Figure 5: Trajectory polynomial p(t) including first five derivatives.

m ξ l j k d JmJoint 1 and 2 100 0.5 1 5 105 250 100

Joint 3 200 0.1 0.2 50 105 250 -

Table 1: Parameters of the 5 DOF model (minimum phase dynamics).

which has p[i](0) = 0, i = 0, . . . , 5. The coefficients are computed by solving

p(tend) = 1, p[i](tend) = 0, i = 1, . . . , 5. (25)

A straight line trajectory in the x–z plane can for example be computed as[θx(t)θz(t)

]=

[θstartxθstartz

]+ p(t)[

[θendxθendz

]−[θstartxθstartz

]]. (26)

One example of the trajectory polynomial and its first five derivatives is shownin Figure 5.

9.2 Numerical Solution of The Inverse Dynamics for The 5 DOFModel

The values of the physical parameters10 are shown in Table 1. For simplicity,the gravity was set to zero, i.e., the manipulator is working in the horizontalplane. The numerical solver is based on a k-step BDF with constant stepsize.The Jacobian Fxi is ill-conditioned for small values of h. This can be improved,e.g., by scaling the algebraic and differentiated algebraic equation with (1/h)3−l ,where l is the number of differentiations. The following systems were solved:Eq. (17) with index 3, Eq. (18) with index 2, and Eq. (19) with index 1. The

10The motor inertia Jm is expressed on the joint side, i.e., multiplied by the square of the gear ratio.

Page 206: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

186 Paper C Inverse Dynamics of Flexible Manipulators

Method L33S L33 NL33S NL33 NL61SIndex 3 16 s 97 s 18 s 29 s 73 sIndex 2 15 s 16 s 17 s 18 s 75 sIndex 1 20 s 24 s 22 s 34 s 69 s

Table 2: Execution time: linear dynamics (L), nonlinear dynamics (NL), 3-step BDF and h = 3 ms (33), 6-step BDF and h = 1 ms (61), scaled algebraicequations (S)

Jacobians Fxi were all full-rank, which shows that the discretized system can besolvable, although the continuous system is not. A solver based on the Kunkeland Mehrmann Hypothesis, where the underdetermined system (23) is solved,was also implemented. However, this solver did not give an accurate solutionin this implementation. An attempt to solve the index 1 system with the Mat-lab solver ode15i also failed due to numerical problems. However, both thesesolvers were successfully applied to a 2 DOF manipulator as shown in Mobergand Hanssen (2008b).

The reference trajectory is a 2.2 m straight line, performed in 0.3 s, an extremelychallenging trajectory for this elastic manipulator with eigenfrequencies down to2 Hz. The solvers were implemented in Matlab, using fsolve to solve the systemof non-linear equations. No effort to make the solvers computationally efficientwas made, but they were still adequate for a comparison of the behavior of thealgorithms. The execution times are shown in Table 2. The time for solving thenonlinear dynamics does not increase proportional to the number of operationsin the DAE. This indicates that the nonlinear terms in some way improve the solv-ability of the system. For a given BDF order and stepsize, the solutions for thedifferent systems were almost identical. The solutions for the states and controlsignals are shown in Figures 6–7. The computed control signal was fed into asimulation model for verification of the inverse dynamics solution. In Figure 8the result is shown and it is concluded the errors in the simulated robot tool po-sition are small (less than 0.05 mm) and that there is a small drift due to the lackof a stabilizing feedback controller. For accurate solutions, the stepsize has to besmall and an increase of the stepsize will increase the tool vibrations. A 3-stepBDF and 3 ms stepsize is adequate in this case. Some snapshots from a simula-tion are shown in Figure 9. The continuous system was linearized and analyzedalong the solution trajectory. As expected, the system was minimum phase at allpoints. If the model parameters are changed so that the linearized system is non-minimum phase, the inverse dynamics solution is unbounded as expected. Ingeneral, a stable zero dynamics (minimum phase) of the linearized system givesa stable zero dynamics for the nonlinear system, see, e.g., Isidori (1995). Notethat the discretized system can be non-minimum phase, even though the contin-uous system is minimum phase, due to zeros introduced by the discretization.Simulations also show that increased damping improves the solvability. This canbe understood since the index increases one step if the damping is zero.

Page 207: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

9 Numerical Solution of The Inverse Dynamics 187

0 0.2 0.4 0.6 0.8

−1−0.5

0

x1

=q a

1

0 0.2 0.4 0.6 0.80.5

1

x2

=q a

2

0 0.2 0.4 0.6 0.8

−0.20

0.2

x3

=q a

3

0 0.2 0.4 0.6 0.8−1.5

−1−0.5

0

x4

=q m

1

0 0.2 0.4 0.6 0.80.5

11.5

x5

=q m

2

0 0.2 0.4 0.6 0.8

−10−5

0

x6

=q a

1

0 0.2 0.4 0.6 0.8−5

05

10

x7

=q a

2

0 0.2 0.4 0.6 0.8−10

010

x8

=q a

3

0 0.2 0.4 0.6 0.8−20

020

x9

=q m

1

0 0.2 0.4 0.6 0.8−20

0

20

x10

=q m

2

Figure 6: The state solution for 3-step BDF and 3 ms stepsize.

0 0.2 0.4 0.6 0.8−10

−5

0

5

x 104

u1 [

Nm

]

0 0.2 0.4 0.6 0.8−2

024

x 104

u2 [

Nm

]

Time [s]

Figure 7: The control signal. 3-step BDF and 3 ms stepsize.

0 0.2 0.4 0.6 0.81200

1400

1600

1800

2000

X [

mm

]

ReferenceSimulated

0 0.2 0.4 0.6 0.8

0

500

1000

1500

Z [

mm

]

Time [s]

ReferenceSimulated

Figure 8: The tool position. 3-step BDF and 3 ms stepsize.

Page 208: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

188 Paper C Inverse Dynamics of Flexible Manipulators

0 0.5 1 1.5 2−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

X [m]

Z [m]

Reference Path

Figure 9: Snapshots from an animation of the movement. The reference pathis shown as a dotted line. The direction is indicated by an arrow. Note thedeflection of the, outer, non-actuated joint.

10 Inverse Dynamics for Non-Minimum PhaseSystems

If the system, from input torque to tool position, is non-minimum phase (NMP),the initial-value solvers presented in the previous sections will give an unboundedsolution. Several approaches for handling the inverse dynamics of NMP systemshave been suggested. For linear systems, a non-causal solution can be obtainedif the MP and the NMP dynamics are separated, solved separately (forward andbackwards in time, respectively), and then superimposed, see, e.g., Kwon andBook (1990). A method for non-causal inverse of nonlinear systems is describedin Devasia et al. (1996), and in De Luca et al. (1998), a non-causal solutionis found for a flexible-link manipulator by applying iterative learning control.Another method is to define an alternative output which gives a stable or non-existing zero dynamics. This approach is used in, e.g., De Luca and Di Giovanni(2001). In Aguiar et al. (2005), the problem is reformulated from tracking to path-following, i.e., the time evolution of the trajectory polynomial p(t) is allowed tobe changed. Another method would be to reduce the model to get a minimumphase system. These methods have been exemplified on, in general, small sys-tems. To be able to solve the problem for a complex multi-axis manipulator, wepropose the use of numerical optimization.

10.1 A Discretized DAE Optimization Solver

In this approach, the inverse dynamics problem is solved for the complete tra-jectory in one step. The discretized DAE (k-step BDF) to solve for time step i isF(ti , xi , xi−1, . . . , xi−k) = 0. Note that F( · ) can be the original high-index or theindex-reduced DAE. The DAE to solve for the complete trajectory, i = 1, . . . , N ,

Page 209: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

10 Inverse Dynamics for Non-Minimum Phase Systems 189

m ξ l j k d JmJoint 1 and 2 100 0.5 1 5 5 · 105 500 100

Joint 3 200 0.7 1.4 50 5 · 105 500 -

Table 3: Parameters of the 5 DOF model (non-minimum phase dynamics).

is11 F(t1, x1, x1−1, . . . , x1−k)F(t2, x2, x2−1, . . . , x2−k)

. . .F(tN , xN , xN−1, . . . , xN−k)

= G(y) = 0, (27)

where

y =[xT1 xT2 . . . xTN

]T. (28)

One alternative is to solve the nonlinear least-squares (NLS) problem

miny‖G(y)‖22,

and another approach is to solve the nonlinear constrained optimization12 prob-lem

miny‖y‖22, subject to G(y) = 0.

The trajectory should start at t = ∆t to allow a non-causal solution. The mini-mization requirement of the states y is used to get a bounded solution. Otherchoices, e.g., torque or power are possible. However, in the simulation runs, theobtained solutions were always bounded, even if this requirement was removed.This needs to be further investigated. If needed to obtain a bounded solution, thefunction G(y) used in the NLS approach can be extended with, e.g., y.

10.2 Simulation with 5 DOF Model using The Discretized DAEOptimization Solver

The previously described 5 DOF model from Section 6, with parameters as shownin Table 3, was used in the simulation, using the described discretized DAE op-timization solver. The model parameters yield a NMP system for the configura-tions used. To avoid drift in the solution, the system was stabilized with a PIDcontroller according to Figure 10. The initial values for all time steps in y are setto the initial values at t = 0. The example movement is a straight line, 25 mmin both directions (x and z). The result is shown in Figures 11–12. Note that thetorque is applied before the trajectory start (at t = 0.1 s), in order to create thenecessary initial deflection. Also note the control action after the trajectory end(at t = 0.2 s) in order to release the deflection. A suitable ∆t to allow a non-causalsolution, seems to be 2–3 times the time constants of the slowest NMP zero. The

11Initial values [x1−1, . . . , x1−k ] are computed as described in Section 9.112Also called a nonlinear program (NLP).

Page 210: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

190 Paper C Inverse Dynamics of Flexible Manipulators

Figure 10: The inverse dynamics computes the desired motor position qrefmand the torque feedforward uf f w from the desired trajectory θref . The PIDcontroller computes a torque adjustment from the measured motor positionqm and the desired motor position.

0 0.1 0.2 0.3

−0.6

−0.4

−0.2

0Speed

Sp

eed

[m

/s]

xz

0 0.1 0.2 0.3

−20

0

20

AccelerationA

ccel

erat

ion

[m/s

2 ]

xz

3185 3190 3195 3200 3205 3210−960

−955

−950

−945

−940

−935Max error 0.05 mm, rms error 0.01 mm

X [mm]

Z [

mm

]

ReferenceSimulated Robot

Figure 11: Cartesian speed, acceleration, and the simulated path. Maximumpath error is 0.05 mm.

linearized system has a NMP zero around 27 Hz and the lowest eigenfrequencyaround 5 Hz. The stepsize is 2 ms which gives 151 time steps in this simulation,and a 6-step BDF is used. If the index-1 system (19) is used, the NLP solver with1812 variables and 1812 nonlinear equality constraints takes 880 s to solve. TheNLS solver takes 630 s and the execution time could be reduced further if theindex-2 or index-3 systems were used. The solvers are Matlab implementations(using lsqnonlin and fmincon), numerical gradients and Hessians are used, andadditional computational optimization of the algorithms would yield a signifi-cant reduction of the computational time, but this has not been the main focusfor the present study.

10.3 A Continuous DAE Optimization Solver

The algorithms in Section 10.1 are straight forward to apply but result in verylarge optimization problems. One way of reducing the problem size is to describe

Page 211: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

10 Inverse Dynamics for Non-Minimum Phase Systems 191

0 0.05 0.1 0.15 0.2 0.25 0.3

−5000

0

5000

To

rqu

e [N

m]

u1u2

0 0.05 0.1 0.15 0.2 0.25 0.3

3190

3200

3210

X p

os

[mm

]

0 0.05 0.1 0.15 0.2 0.25 0.3−960

−950

−940

Z p

os

[mm

]

Time [s]

Figure 12: The control signals (motor torques) and the tool x- and z-position.

the motor and joint angular positions, q(t) =[qTa (t) qTm(t)

]T, using a basis func-

tion expansion. In this work, the solution for the complete trajectory is describedwith one basis function expansion. Depending on the trajectory complexity, itcould be advantageous to split the trajectory in several parts and use one expan-sion for each part. One possible expansion is a combination of a polynomial anda Fourier series, i.e.,

q(t) =M∑m=0

amtm +

R∑r=1

[br sin(r 2π

Nh t) + cr cos(r 2πNh t)

](29a)

= q(t, a1, . . . , aM , b1, . . . , bR, c1, . . . , cR). (29b)

The derivatives q and q can be computed analytically and the DAE to solve fortime step i is then

Φ(ti , qi , qi , qi) = Φ(ti , a1, . . . , aM , b1, . . . , bR, c1, . . . , cR) = 0, (30)

where Φ is the original extended flexible joint model described in (1) and (2),omitting the motor torque balance equation. The DAE to solve for the completetrajectory is then

Φ(t1, a1, . . . , aM , b1, . . . , bR, c1, . . . , cR)Φ(t2, a1, . . . , aM , b1, . . . , bR, c1, . . . , cR)

. . .Φ(tN , a1, . . . , aM , b1, . . . , bR, c1, . . . , cR)

= Ψ (µ) = 0, (31)

where µ =[aT1 . . . aTM bT1 . . . bTR cT1 . . . cTR

]T, and each element, e.g.,

a1, is a vector with the same dimension as q. The solution can now be obtainedby solving the NLS problem

minµ‖Ψ (µ)‖22.

Page 212: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

192 Paper C Inverse Dynamics of Flexible Manipulators

2320 2340 2360 2380 2400 2420 2440 24601000

1050

1100

1150

1200

1250

Max error 0.30 mm, rms error 0.09 mm

X [mm]

Z [

mm

]

ReferenceSimulated Robot

Figure 13: A complex path.

10.4 Simulation using The Continuous DAE Optimization Solver

The continuous DAE optimization solver was used on the same 5 DOF model andthe same trajectory as used in Section 10.2. The series expansion used had M = 1,R = 20, and stepsize h = 5 ms. This resulted in a NLS problem with 210 variablesand 305 nonlinear equations which was solved in 22 s. The maximum path errorwas the same as previously (0.05 mm), although small oscillations could be seenin the motor torque. To reduce these, the value of R can be increased (numberof terms in the Fourier series). The execution time could be reduced further bycomputing an approximate solution and use as the initial value of µ. This could,e.g., be done by computing the series expansion for the rigid solution, i.e., motorand actuated joint angular positions are equal and non-actuated joint positionsare zero. Another alternative would be to compute the algebraic (flat) inversedynamic solution for the flexible joint approximation, omitting the non-actuatedjoint. The number of necessary terms in the Fourier series can be approximatedby Fourier analysis of an approximate solution. To show that this approach canbe used for more complex trajectories, a complex trajectory containing straightlines, circular segments and corner zones was used. This trajectory is used byrobot manufacturers and customers for performance evaluation. The trajectoryacceleration was 50 m/s2, giving a speed of up to 1.5 m/s. The resulting positionand torque are shown in Figures 13–14. The parameters were chosen as M = 1,R = 84, and h = 10 ms. The execution time was 1100 s and the maximum patherror 0.3 mm. To solve the inverse dynamics using the continuous DAE optimiza-tion method reduces the optimization problem and seems very promising. As afinal remark it could be added that trajectories for a manipulator model with 12DOF have been tested, using the same method. Accurate solutions were found,although the execution time was quite long.

Page 213: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

11 Conclusion, Discussion, and Future Work 193

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

−1

−0.5

0

0.5

1

x 104

u1 [

Nm

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

−5000

0

5000

u2 [

Nm

]

Time [s]

Figure 14: Control signal for the complex path.

11 Conclusion, Discussion, and Future Work

The inverse dynamics of the extended flexible joint model can be solved with aconstant-stepsize constant-order BDF. The difference between solving the origi-nal high-index DAE and the index-reduced DAE is small with respect to solvabil-ity and execution time. Solution of the original high-index system is attractivesince differentiations of the constraint equations are avoided. Scaling of the al-gebraic equations and their derivatives is important and this should be furtherinvestigated, including scaling of variables. The use of more efficient equationsolvers and optimizers, utilizing analytic gradients and Hessians, is another areafor future research. Evaluation of the algorithms, using a more complex manip-ulator model, e.g., a six-axes model with transmission nonlinearities, is anotherimportant future work. Another logical step is to evaluate the algorithms on areal robot manipulator.

Generally, a practical manipulator controller must be computed on-line as thefuture trajectory can be, at least partly, unknown, e.g., if sensor input affects thetrajectory. This makes the optimization approach unfeasible and will set hardreal-time requirements on the initial-value solver. However, for some applica-tions, an off-line feedforward computation could be acceptable. Of course, thereare a number of problems to be solved in order to make this approach feasible,e.g., smooth trajectory generation with constrained control signals and handlingof manipulator singularities and alternative configurations. The main motiva-tion for this work is, however, that a method for perfect feedforward control isvaluable for evaluating the limit of control performance, and for developing ap-proximate control algorithms for on-line computation.

Page 214: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

194 Paper C Inverse Dynamics of Flexible Manipulators

12 Acknowledgements

This work was supported by ABB AB-Robotics, Vinnova’s Industry ExcellenceCenter LINK-SIC at Linköping University, and the Swedish Research Council(VR), which is gratefully acknowledged.

Page 215: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 195

Bibliography

A.P. Aguiar, J.P. Hespanha, and P.V. Kokotivic. Path-following for nonminimumphase systems removes performance limitations. IEEE Transactions on Auto-matic Control, 50(2):234–239, 2005.

M. Björkman, T. Brogårdh, S. Hanssen, S.-E. Lindström, S. Moberg, and M. Nor-rlöf. A new concept for motion control of industrial robots. In Proceedings of17th IFAC World Congress, 2008, Seoul, Korea, July 2008.

W. Blajer. Dynamics and control of mechanical systems in partly specified mo-tion. Journal of the Franklin Institute, 334B(3):407–426, May 1997.

W. Blajer and K. Kolodziejczyk. A geometric approach to solving problems ofcontrol constraints: Theory and a dae framework. Multibody System Dynamics,11(4):341–350, May 2004.

K. E. Brenan, S. L. Campbell, and L.R. Petzold. Numerical Solution of Initial-Value Problems in Differential-Algebraic Equations. Society for Industrial andApplied Mathematics, Philadelphia, PA, USA, 1996. ISBN 0-89871-353-6.

T. Brogårdh. Present and future robot control development—an industrial per-spective. Annual Reviews in Control, 31(1):69–79, 2007.

A. De Luca. Feedforward/feedback laws for the control of flexible robots. InProceedings of the 2000 IEEE International Conference on Robotics and Au-tomation, pages 233–240, San Francisco, CA, April 2000.

A. De Luca and G. Di Giovanni. Rest-to-rest motion of a one-link flexible arm. In2001 IEEE/ASME International Conference on Advanced Intelligent Mecha-tronics Proceedings, pages 923–928, Como, Italy, 2001.

A. De Luca, S. Panzieri, and G. Ulivi. Stable inversion control for flexible linkmanipulators. In Proc. 1998 IEEE International Conference on Robotics andAutomation, pages 799–804, Leuven, Belgium, May 1998.

A. Devasia, D. Chen, and B. Paden. Nonlinear inversion-based output tracking.IEEE Transactions on Automatic Control, 41(7):930–942, 1996.

I. S. Duff, A. M. Erisman, and J. K. Reid. Direct Methods for Sparse Matrices.Clarendon Press, Oxford, 1986.

P. Fritzon. Principles of Object-Oriented Modeling and Simulation with Modelica2.1. John Wiley & Sons, New York, 2004.

A. Isidori. Nonlinear Control Systems. Springer-Verlag, London, Great Britain,1995.

K.P. Jankowski and H. Van Brussel. An approach to discrete inverse dynamicscontrol of flexible-joint robots. IEEE Transactions on Robotics and Automation,8(5):651–658, October 1992.

Page 216: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

196 Paper C Inverse Dynamics of Flexible Manipulators

T. R. Kane and D. A. Levinson. Dynamics: Theory and Applications. McGraw-Hill Publishing Company, 1985.

P. Kunkel and V. Mehrmann. Index reduction for differential-algebraic equationsby minimal extension. Z. Angew. Math. Mech., 84:579–597, 2004.

P. Kunkel and V. Mehrmann. Differential-Algebraic Equations: Analysis and Nu-merical Solution. European Mathematical Society, 2006.

P. Kunkel and V. Mehrmann. Regular solutions of nonlinear differental-algebraicequations and their numerical determination. Numerische Mathematik, 79:581–600, 1998.

D.-S. Kwon and W.J. Book. An inverse dynamic method yielding flexible manip-ulator state trajectories. In Proceedings of the 1990 American Control Confer-ence, vol 1, pages 186–193, San Diego, CA, USA, 1990.

P. Lötstedt and L. R. Petzold. Numerical solution of nonlinear differential equa-tions with algebraic constraints. i: Convergence results for backwards differen-tiation formulas. Mathematics of Computation, 46(174):491–516, April 1986.

S.-E. Mattson and G. Söderlind. Index reduction in differential-algebraic equa-tions using dummy derivatives. SIAM Journal of Scientific Computing, 14:677–692, 1993.

S. Moberg and S. Hanssen. A DAE approach to feedforward control of flexiblemanipulators. In Proc. 2007 IEEE International Conference on Robotics andAutomation, pages 3439–3444, Roma, Italy, April 2007.

S. Moberg and S. Hanssen. On feedback linearization for robust tracking controlof flexible joint robots. In Proc. 17th IFAC World Congress, Seoul, Korea, July2008a.

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators - a DAEapproach. Technical Report LiTH-ISY-R-2866, Department of Electrical Engi-neering, Linköping University, SE-581 83 Linköping, Sweden, October 2008b.

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators. In Multi-body Dynamics 2009, Warsaw, Poland, July 2009.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust controlof a multivariable nonlinear flexible manipulator. In Proc. 17th IFAC WorldCongress, Seoul, Korea, July 2008.

C. C. Pantelides. The consistent initialization of differential-algebraic systems.SIAM Journal of Scientific and Statistical Computing, 9(2):213–231, 1988.

L. R. Petzold and P. Lötstedt. Numerical solution of nonlinear differential equa-tions with algebraic constraints ii: Practical implications. SIAM Journal ofScientific and Statistical Computing, 7(3):720–733, July 1986.

P. Rouchon, M. Fliess, J. Lévine, and P. Martin. Flatness, motion planning and

Page 217: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 197

trailer systems. In Proceedings of the 32nd Conference on Decision and Con-trol, pages 2700–2705, San Antonio, Texas, December 1993.

A.A. Shabana. Dynamics of Multibody Systems. Cambridge University Press,Cambridge, United Kingdom, 1998.

M. W. Spong. Modeling and control of elastic joint robots. Journal of DynamicSystems, Measurement, and Control, 109:310–319, December 1987.

M. Thümmel, M. Otter, and J. Bals. Control of robots with elastic joints based onautomatic generation of inverse dynamic models. In Proceedings of the 2001IEEE/RSJ International Conference in Intelligent Robots and Systems, pages925–930, Maui, Hawaii, USA, October 2001.

E. Wernholt and S. Moberg. Frequency-domain gray-box identification of indus-trial robots. In 17th IFAC World Congress, pages 15372–15380, Seoul, Korea,July 2008.

Page 218: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 219: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Paper DInverse Dynamics of Robot

Manipulators Using Extended FlexibleJoint Models

Authors: Stig Moberg and Sven Hanssen

Edited version of the paper:

S. Moberg and S. Hanssen. Inverse dynamics of robot manipulatorsusing extended flexible joint models. 2010. Submitted to IEEE Trans-actions on Robotics (under revision).

Page 220: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 221: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Inverse Dynamics of Robot ManipulatorsUsing Extended Flexible Joint Models

Stig Moberg∗ ,† and Sven Hanssen∗∗ ,†

∗Dept. of Electrical Engineering,Linköping University,

SE–581 83 Linköping, [email protected]

†ABB AB,Robotics,

SE-721 68 Västerås, [email protected]

∗∗Department of Solid Mechanics,Royal Institute of Technology,SE-100 44 Stockholm, Sweden

[email protected]

Abstract

High performance robot manipulators, in terms of cycle time and ac-curacy, require well designed control methods, based on accurate dy-namic models. This work investigates different methods for the in-verse dynamics of a general manipulator model, called the extendedflexible joint model. This model can describe elasticity in all direc-tions, unlike the traditionally used robot models. The inverse dynam-ics solution is needed for feedforward control, which is often used forhigh-precision robot manipulator control. The inverse dynamics ofthe extended flexible joint model can be computed as the solution ofa high-index differential algebraic equation (DAE). The obtained DAEis analyzed, and solvers for both minimum phase and non-minimumphase systems are suggested. The solvers are evaluated by simulation,using a manipulator with two actuators and five degrees-of-freedom.Finally, the suggested concept for inverse dynamics is experimentallyevaluated using an industrial robot manipulator. In this experimentalevaluation, an identified model is used in the inverse dynamics com-putation. Simulations using the same identified model are in goodagreement with the experimental results. The conclusion is that theextended flexible joint inverse dynamics method can improve the ac-curacy for manipulators with significant elasticities, that cannot bedescribed by the flexible joint model.

201

Page 222: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

202 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

Figure 1: The IRB4600 robot from ABB.

1 Introduction

The development of industrial robots has to a large extent been focused on in-creasing the robot performance while reducing the robot cost, as described inBrogårdh (2007). This leads to the use of weight- and cost optimized robot com-ponents with increased elasticity. For large robots with a payload of 100–200 kg,the robot weight to payload ratio has decreased from 15 to 5 during the last 20years. For smaller robots, the ratio is generally somewhat higher, but the reduc-tion is about the same. This development leads to more complicated vibrationmodes inside the control bandwidth and enhances the need for accurate models,identification methods, and more advanced control algorithms. An example ofa modern industrial robot manipulator is shown in Figure 1. Some examples ofindustrial research, addressing this problem by improving the model-based con-trol, is described in Björkman et al. (2008) and Brogårdh (2009).

Most publications concerning robot manipulators only consider elasticity in therotational direction. The flexible joint model (Spong, 1987; De Luca, 2000), in-cludes gear elasticity, and the flexible link model (De Luca and Siciliano, 1991;Book and Obergfell, 2000), includes link deformation restricted to a plane per-pendicular to the preceding joint. When these models are used for control or sim-ulation, the accuracy can be limited due to the model simplifications, since a realmanipulator has a distributed flexibility in all directions. In Moberg et al. (2010)it is shown that the flexible joint model cannot accurately describe a modern in-dustrial robot, and that a general serial-link elastic manipulator model, calledthe extended flexible joint model, improves the model accuracy. This work in-vestigates different methods for inverse dynamics computation of the extendedflexible joint model. The inverse dynamics solution is needed for feedforwardcontrol, which is often used for high-precision robot manipulator control.

In Öhr et al. (2006) and Moberg and Hanssen (2007), the extended flexible jointmodel was presented, and in Moberg and Hanssen (2007), the inverse dynam-ics of this model was formulated and solved as a differential-algebraic equation(DAE). The inverse dynamics DAE was solved using a constant stepsize 1-step

Page 223: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 The Extended Flexible Joint Model 203

Figure 2: Examples of elastic elements modeling torsional deflection in threedirections: Three non-actuated elastic joints (left), two non-actuated elasticjoints together with one elastic joint actuated by a motor (right). Dampersare not shown.

backward differentiation formula (BDF). It was observed that a short stepsize wasrequired to obtain an accurate solution, but that numerical solvability was lost ifthe stepsize was too small. Some commercially available software packages werealso tried on the same systems, but none was able to solve these equations if thenumber of degrees-of-freedom (DOF) exceeded 5.

The work presented in this paper has two main objectives. The first objective isto analyze the inverse dynamics DAE and to improve the numerical DAE solver.The material presented on this matter is primarily based on Moberg and Hanssen(2009). The other objective is to experimentally evaluate feedforward control, us-ing the extended flexible joint model, on a real industrial manipulator. The paperis organized as follows: The extended flexible joint model is described in Section2 and the inverse dynamics problem is analyzed in Section 3. In Section 4, someimproved solvers are presented, and in Section 5, these solvers are evaluated ina simulation study. Section 7 evaluates feedforward control, using the suggestedinverse dynamics, on a real industrial manipulator, and Section 8 concludes thepaper.

2 The Extended Flexible Joint Model

2.1 General Description

The extended flexible joint model is a lumped parameter model, which consistsof a serial1 kinematic chain of rigid bodies. The rigid bodies are connected byelastic elements, representing torsional, and if needed also translational, deflec-tion. The deflections caused by elasticity can be modeled as large rotations orapproximated as small rotations, to reduce the model complexity. In this work,large rotations are used in order to handle large deflections with high accuracy.The elastic elements consist of one or more elastic joints, i.e., discretely localizedspring-damper pairs. Two examples of elastic elements are shown in Figure 2. Anactuated joint consists of a motor and a gearbox, and the corresponding spring-damper pair models the torsional deflection of the gearbox. A non-actuated joint

1The same modeling principle can of course be applied to parallel kinematic structures and serialstructures with parallelogram linkages.

Page 224: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

204 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

Figure 3: Three rigid bodies with fixed coordinate systems A, B, and C(solid). The joint vectors li connect the dashed coordinate systems, startingin N . The transformation (rotation) from the one dashed to the next solidcoordinate system is given by the kinematic joint angles.

models elasticities in, e.g., bearings, foundations, tools, loads, and links (bendingand torsion). Each rigid body is described by its mass mi ∈ R, center of gravityξi ∈ R

3, inertia tensor w.r.t. center of mass2 Ji ∈ R6, and joint vector li ∈ R

3,describing the location of the next rigid body. A model consisting of three rigidbodies is illustrated in Figure 3. All rigid body parameters are described in co-ordinate systems fixed to the rigid bodies. If the number of added non-actuatedjoints is Υna and the number of actuated joints is Υa, the system has 2Υa + Υnadegrees-of-freedom (DOF). The model equations are

M(qa)qa + c(qa, qa) + g(qa) +[fg (qg )

0

]=

[τgτe

], (1a)

Kg (η−1qm − qg ) + Dg (η−1qm − qg ) = τg , (1b)

−Keqe − De qe = τe, (1c)

Mmqm + fm(qm) = τm − η−T τg , (1d)

where qa =[qTg qTe

]T, qg ∈ R

Υa is the actuated joint angular position, qe ∈ RΥna

is the non-actuated joint angular position, and qm ∈ RΥa is the motor angular

position. The actuator torque3 is τm ∈ RΥa , τg ∈ R

Υa is the actuated joint torque,and τe ∈ R

Υna is the non-actuated joint torque, i.e., the constraint torque. The,possibly non-diagonal, gear ratio matrix is η ∈ RΥa×Υa . With obvious dimensions,Mm and M(qa) are the inertia matrices for the motors and the joints, respectively.Furthermore, Kg , Ke, Dg , and De are the stiffness- and damping matrices in theactuated and non-actuated directions. The Coriolis- and centripetal torques are

2Due to the symmetrical inertia tensor, only six components of Ji need to be defined.3The electrical drive system is not included in this model and is assumed to be ideal for the fre-

quency range considered here.

Page 225: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 The Extended Flexible Joint Model 205

Figure 4: A 9 DOF extended flexible joint model with 2 links, 2 motors (M),3 elastic elements (EE) and 3 rigid bodies (RB).

described by c(qa, qa), g(qa) is the gravity torque, and the nonlinear friction4 inmotor bearings and gearboxes are fm(qm) and fg (qg ). Note that the spring-dampertorque also can be defined as nonlinear, e.g., a stiffening spring (Sweet and Good,1985; Tuttle and Seering, 1996). The inertial couplings between the motors andthe rigid bodies are neglected under the assumption of high gear ratio (Spong,1987). Note that (1) is an extension of the flexible joint model, which can be de-rived as a special case if all non-actuated joints are removed, i.e., Υna = 0. Theequations of motion (1) can be derived by computing the linear and angular mo-mentum, and by using Kane’s method (Kane and Levinson, 1985) the projectedequations of motion can be derived to yield a system of ordinary differential equa-tions (ODE) with minimum number of DOF. One alternative way of deriving theequations of motion is to compute the potential and kinetic energy and use La-granges equation (Shabana, 1998).

Figure 4 illustrates a two-link manipulator model, consisting of two motors, threerigid bodies, and three elastic elements with in total seven elastic joints. Thus, themodel has two actuated joints, five non-actuated joints, and in total nine DOF5.

The goal when adopting the extended flexible joint model is to describe the realmanipulator with desired accuracy in the frequency region of interest for all con-figurations and all payloads, i.e., to obtain a global model. Note that elasticityin all directions can be modeled, unlike the flexible joint and most flexible linkmodels. The unknown model parameters, e.g., springs and dampers, can be ob-tained by identification (Wernholt and Moberg, 2008, 2010). From Moberg et al.(2010), it is also clear that the extended flexible joint model is needed to accu-

4The friction of the gearbox is actually split into two components and distributed between fm andfg .

5In this paper, the number of DOF refers to the number of independent coordinates necessary tospecify the (internal) configuration of a system.

Page 226: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

206 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

Figure 5: A 5 DOF extended flexible joint model with 2 links, 2 motors (M),3 elastic elements (EE) and 3 rigid bodies (RB).

rately describe a modern industrial robot.

For a complete model including the position and orientation of the tool, θ, theforward kinematic model of the robot must be added. The kinematic model is amapping of qa ∈ R

Υa+Υna to θ ∈ RΥa . The complete model of the robot is then

described by (1) and

θ = Γ (qa). (2)

Note that no unique inverse kinematics exists. This is a fact that makes the in-verse dynamics problem difficult to solve.

2.2 A Manipulator Model with 5 DOF

A 5 DOF manipulator model will be used as an example when analyzing andsolving the inverse dynamics. The model is illustrated in Figure 5 and is a pla-nar model with linear elasticity in the rotational direction only, and does notdemonstrate the all-direction elasticity of the general model. However, it is anappropriate simple example with the desired mathematical structure. The modelhas two links, three rigid bodies, two actuated joints and one non-actuated joint,i.e., Υa = 2 and Υna = 1. This 5 DOF model requires around 500 operations tocompute. As a comparison, a reasonable model for a six-axes manipulator, e.g.,18 DOF, requires around 25000 operations when symbolically optimized. Eachrigid body is described by length li , mass mi , center of mass ξi , and inertia ji .Each joint is described by stiffness ki and damping di . An actuated joint is alsodescribed by motor inertia Jmi and the gear ratio ηi . The motor angular position isqmi , the joint angular position is qai , and the motor torque is ui . The manipulator

Page 227: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 The Extended Flexible Joint Model 207

dynamics is then described by6

M11 M12 M13M12 M22 M23M13 M23 M33

qa1qa2qa3

+

C1C2C3

+

G1G2G3

=

τg1τg2τe

,[Jm1 00 Jm2

] [qm1qm2

]+

[η−1

1 τg1η−1

2 τg2

]=

[u1u2

],

where

τgi = ki (η−1i qmi − qai ) + di (η

−1i qmi − qai ),

τe = −k3qa3 − d3 qa3,

M11 = j1 + j2 + j3 + m1ξ21 + m2l

21 s

22 + m2(c2l1 + ξ2)2

+ m3(s3c2l1 + s3l2 + c3s2l1)2

+ m3(c3c2l1 + c3l2 − s3s2l1 + ξ3)2,

M12 = j2 + j3 + m2ξ2(c2l1 + ξ2) + m3l2s3(s3c2l1 + s3l2+ c3s2l1) + m3(c3l2 + ξ3)(ξ3 − s3s2l1 + c3c2l1 + c3l2),

M13 = j3 + m3ξ3(ξ3 − s3s2l1 + c3c2l1 + c3l2),

M22 = j2 + j3 + m2ξ22 + m3l

22 s

23 + m3(ξ3 + c3l2)(c3l2 + ξ3),

M23 = j3 + m3ξ3(c3l2 + ξ3), M33 = j3 + m3ξ23 ,

G1 = −m1gξ1c1 −m2g(l1c1 + ξ2c12)

−m3g(l1c1 + l2c12 + ξ3c123),

G2 = −m2gξ2c12 −m3g(l2c12 + ξ3c123),

G3 = −m3gξ3c123,

C1 = −s2l1m2(q2a2ξ2 + c2 q

2a1l1 + 2qa1 qa2ξ2 + q2

a1ξ2)

+ m2s2 q2a1l1(c2l1 + ξ2) −m3(s3c2l1 + s3l2

+ c3s2l1)(2qa1 qa2ξ3 + 2qa3 qa1ξ3 + q2a1ξ3 + q2

a3ξ3

+ 2qa3 qa2ξ3 − s3s2 q2a1l1 + 2c3 qa1 qa2l2 + c3 q

2a2l2

+ q2a2ξ3 + c3 q

2a1l2 + c3c2 q

2a1l1)

+ m3(ξ3 − s3s2l1 + c3c2l1 + c3l2)(c3s2 q2a1l1

+ s3c2 q2a1l1 + 2s3 qa1 qa2l2 + s3 q

2a2l2 + s3 q

2a1l2),

C2 = ξ2m2s2 q2a1l1 − s3l2m3(2qa1 qa2ξ3 + 2qa3 qa1ξ3 + q2

a1ξ3

+ q2a3ξ3 + 2qa3 qa2ξ3 − s3s2 q2

a1l1 + 2c3 qa1 qa2l2 + c3 q2a2l2

+ q2a2ξ3 + c3 q

2a1l2 + c3c2 q

2a1l1) + m3(ξ3 + c3l2)(c3s2 q

2a1l1

+ s3c2 q2a1l1 + 2s3 qa1 qa2l2 + s3 q

2a2l2 + s3 q

2a1l2),

C3 = ξ3m3(s23 q2a1l1 + 2s3 qa1 qa2l2 + s3 q

2a2l2 + s3 q

2a1l2).

6The following shorthand notation is used: s1 = sin(qa1), c1 = cos(qa1), s12 = sin(qa1 + qa2),c123 = cos(qa1 + qa2 + qa3) etc.

Page 228: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

208 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

The kinematics is computed as:

Γ =[XZ

]=

[l1c1 + l2c12 + l3c123−l1s1 − l2s12 − l3s123

].

3 Inverse Dynamics For The Extended Flexible JointModel

The flexible joint model can be derived as a special case of the extended flexiblejoint model if all non-actuated joints are removed, i.e., Υna = 0. If friction anddamping are neglected we get the simplified flexible joint model. The simplifiedflexible joint model is an example of a so-called flat system (see, e.g., Rouchonet al. (1993)) which can be defined as a system where all state variables and con-trol inputs can be expressed as an algebraic function of the desired trajectory andits derivatives up to a certain order. The desired joint trajectory qa(t) can be com-puted from the desired Cartesian trajectory θ(t), including derivatives, by use ofthe inverse kinematics. The simplified flexible joint model has no zero dynamics(De Luca, 2000). This means that it is always possible to find a bounded causalinverse dynamics solution. The inverse dynamics solution for the flexible jointmodel is derived in Jankowski and Van Brussel (1992) and De Luca (2000). Theinverse dynamics is more complicated if the model is extended with damping,friction, nonlinear spring torque, or inertial coupling between motors and rigidbodies. Approaches for handling these cases are described in De Luca (2000) andThümmel et al. (2001).

With the following states

x =

qgqeqmqgqeqm

=

x1x2x3x4x5x6

,

(1) and (2) can be written as

M11(x1, x2)x4 + M12(x1, x2)x5 + γ1(x1, x2, . . . , x6) = 0, (3a)

M21(x1, x2)x4 + M22(x1, x2)x5 + γ2(x1, x2, x4, x5) = 0, (3b)

Mmx6 + γ3(x1, x3, x4, x6) − u = 0, (3c)

x1 − x4 = 0, (3d)

x2 − x5 = 0, (3e)

x3 − x6 = 0, (3f)

Γ (x1, x2) − θ(t) = 0, (3g)

or

F(t, x, x, u) = 0. (4)

Page 229: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 Inverse Dynamics For The Extended Flexible Joint Model 209

The system has Υa input variables u, i.e., the motor torque τm, and Υa controlledoutput variables with a desired reference θ(t), i.e., the position and orientationof the tool7. The gravity torque, speed dependent inertia torque, friction, and thetorque from the spring-damper pairs are contained in γi . The inverse dynamicssolution for the model is obtained if θ(t) is regarded as the input signal and uand x are solved for.

Generally, the inverse dynamics problem is the inverse problem for the system

xd(t) = f (xd(t), ud(t)), (5)

yd(t) = h(xd(t)), (6)

where the task is to find the states xd(t) and the control input ud(t) from thedesired output yd(t). Note that (3) can be written in this form since the iner-tia matrices are invertible, see, e.g., Spong et al. (2006). Various approaches forsolving this inverse problem have been suggested, e.g., nonlinear inverse (Deva-sia et al., 1996), flatness (Rouchon et al., 1993), and DAE solution (Brenan et al.,1996; Blajer and Kolodziejczyk, 2004). In Moberg and Hanssen (2007) the in-verse dynamics for the extended flexible joint model was obtained by solving theDAE (3). The solver used was a constant stepsize 1-step backward differentiationformula (BDF). It was observed that a short stepsize was required to obtain anaccurate solution, but that numerical solvability was lost if the stepsize was toosmall.

As the name implies, a DAE consists of differential and algebraic equations. ADAE can generally be expressed by

F(t, x, x) = 0, (7)

where x ∈ Rn is the state vector and F : R2n+1 → R

m. If Fx = ∂F/∂x is nonsin-gular, (7) represents an implicit ODE since x, by the implicit function theorem,can be solved from x and t. Otherwise it represents a DAE, which in general isconsiderably harder to solve than an ODE. The differential index, ν, of a DAEprovides a measure of the singularity of the DAE. Generally, the higher the index,the harder the DAE is to solve. An ODE has ν = 0, and a DAE with ν > 1 isdenoted a high-index DAE. The differential index can somewhat simplified be de-fined according to Brenan et al. (1996): The (differential) index of the DAE (7) isthe minimum number of times that all or part of (7) must be differentiated withrespect to t in order to determine x as a continuous function of t and x. If theDAE contains non-differentiated variables y, i.e.,

F(t, x, x, y) = 0, (8)

it can be solved for z =[x y

]Tif Fz is non-singular, and then has ν = 1. For a

thorough treatment of DAE theory and numerical methods, see, e.g., Brenan et al.(1996) and Kunkel and Mehrmann (2006).

The inverse dynamics DAE (4) can be expressed in the DAE form (7) if u is added

7For a kinematically redundant manipulator, e.g., a 7-axis manipulator, θ must be extended tospecify the trajectory.

Page 230: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

210 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

to the state vector x. Clearly, for (4), the differential index ν ≥ 1 since u is missingin the equation. In Moberg and Hanssen (2007), it is shown that the differentialindex, ν is at least 4, and that ν can be reduced one step by removing the torquebalance equation for the motor (3c). The control signal u can then be computedfrom the solution x of the reduced DAE. The reduced DAE is

M11(x1, x2)x4 + M12(x1, x2)x5 + γ1(x1, x2, . . . , x6) = 0, (9a)

M21(x1, x2)x4 + M22(x1, x2)x5 + γ2(x1, x2, x4, x5) = 0, (9b)

x1 − x4 = 0, (9c)

x2 − x5 = 0, (9d)

x3 − x6 = 0, (9e)

Γ (x1, x2) − θ(t) = 0, (9f)

and has ν ≥ 3. Further analysis of (9) will be performed by differentiation andintroduction of independent variables, which is based on two methods for indexreduction called dummy derivatives (Mattson and Söderlind, 1993) and mini-mal extension (Kunkel and Mehrmann, 2006). If the algebraic constraint (9f) isdifferentiated and added to the system, and all state derivatives substituted, anindependent variable, e.g., x1 = x1, can be introduced to get a determined sys-tem. By inspecting the system, we can see that the equations involving x1 can beremoved. The resulting system is

M11(x1, x2)x4 + M12(x1, x2)x5 + γ1(x1, x2, . . . , x6) = 0, (10a)

M21(x1, x2)x4 + M22(x1, x2)x5 + γ2(x1, x2, x4, x5) = 0, (10b)

x2 − x5 = 0, (10c)

x3 − x6 = 0, (10d)

Γ (x1, x2) − θ(t) = 0, (10e)

Γ (x1, x2, x4, x5) − θ(t) = 0. (10f)

By differentiating once more and adding independent variables x4 = x4 we getthe determined system

M11(x1, x2)x4 + M12(x1, x2)x5 + γ1(x1, . . . , x6) = 0, (11a)

M21(x1, x2)x4 + M22(x1, x2)x5 + γ2(x1, x2, x4, x5) = 0, (11b)

x2 − x5 = 0, (11c)

x3 − x6 = 0, (11d)

Γ (x1, x2) − θ(t) = 0, (11e)

Γ (x1, x2, x4, x5) − θ(t) = 0, (11f)

Γ (x1, x2, x4, x5, x4, x5) − θ(t) = 0. (11g)

To do a structural analysis of an extended flexible joint model, a specific modelstructure must be used. An analysis is performed for the 5 DOF model struc-ture described in Section 2.2. All symbolical computations are performed usingMaple and all rank computations are structural, i.e., cannot be guaranteed for allnumerical values of parameters, states and state derivatives. By computing theJacobian w.r.t. the highest order derivatives, Fz , where z = [x1, x2, x3, x4, x5, x6, x4]for (11), we see that system (9) and the one time differentiated system (10) have

Page 231: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Numerical Solution of the Inverse Dynamics 211

singular Jacobians, and that the two times differentiated system (11) has (struc-turally) full rank. This analysis also shows that the (structural) differential indexν, is 3, since we reach an index-1 DAE after two differentiations. A similar analy-sis of the original DAE (3) shows that it has ν = 4. We also see that x1, x4, x6 canbe chosen as algebraic variables and that x2, x3, x5 can be chosen as differentialvariables. Thus, if the Jacobian Fz of (11) is non-singular, the extended flexiblejoint model can be reduced to an index-1 DAE with 3Υa algebraic variables andΥa + 2Υna differential variables. However, the index depends of the structure ofthe model and if, e.g., the damping is set to zero, the index is generally increasedone step. Alternative methods for analyzing the index of the inverse dynamicsDAE are described in Moberg and Hanssen (2009).

4 Numerical Solution of the Inverse Dynamics

In this work, the inverse dynamics solution is intended to be used primarily forfeedforward control, and the desired trajectory θ(t) must be followed perfectlyin the case of no model errors. If the system, from input torque to tool position,is minimum phase (MP), i.e., has a stable zero dynamics, see, e.g., Isidori (1995),it is possible to obtain a bounded causal solution and solve the inverse dynam-ics DAE as an initial value problem. However, if the system is non-minimumphase (NMP), i.e., has an unstable zero dynamics, the initial-value solvers willgive an unbounded solution. In this case, perfect control requires a non-causalsolution, i.e., the torque must be applied before the start of the trajectory exe-cution. Solvers for both cases will be suggested and discussed in the followingsections.

4.1 Minimum Phase Dynamics

Common numerical method for solving DAEs are Runge-Kutta methods and BDFmethods (backwards differentiation formulas). One widely used solver for DAEsis called DASSL, which is a variable-order variable-stepsize method (Brenan et al.,1996). Some commercially available software packages, e.g., Dymola (see Dy-mola (2010)), were also tried on the inverse dynamics DAE, but none was ableto solve these equations if the number of DOF exceeded 5. Numerical problemscould also be seen in cases where a solution was found. In this section we willconcentrate on constant-stepsize constant-order k-step BDF methods, where thederivative is approximated according to

x(ti) ≈ Dhxi =1h

k∑l=0

αlxi−l , (12)

and h = ti − ti−1 is the stepsize. BDF are stable for 1 ≤ k ≤ 6 and have coefficientsaccording to, e.g., Kunkel and Mehrmann (2006). This approximation can beinserted in any version of the inverse dynamics DAE, (3), (9), (10), or (11), withdifferential index 4, 3, 2, or 1, respectively. Then we get the discretized DAE

F(ti , xi , Dhxi) = 0, (13)

Page 232: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

212 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

which is a system of nonlinear equations that must be solved w.r.t. xi , for eachtime step, forward in time (initial value problem). The solvability of this systemcan be analyzed by computing the Jacobian

Fxi =α0

hFx + Fx (14)

which is ill-conditioned for small stepsizes since Fx is singular. This means thatthe solution may be erroneous or that we might not get any solution at all. This ex-plains the problems with small stepsize described in Moberg and Hanssen (2007).The k-step BDF method converges for some classes of high-index DAEs, and theequations can be scaled to improve the conditioning of the problem, see Lötst-edt and Petzold (1986) and Petzold and Lötstedt (1986). However, index reduc-tion is normally used when solving DAEs, e.g., in the numerical solvers of object-oriented simulation languages like Modelica (Fritzon, 2004). The index reductionpresented in Section 3 is based on the dummy derivative method (Mattson andSöderlind, 1993) where one differentiated variable is selected as a new indepen-dent variable (a dummy derivative) for each new equation created by differenti-ation. In this way, the original constraints are kept (drift off from the solutionmanifold is avoided) and a determined system is guaranteed. To further reducethe size of the system, the structure of the problem has been utilized accordingto Kunkel and Mehrmann (2004) (minimal extension).

4.2 Non-Minimum Phase Dynamics

Several approaches for handling the inverse dynamics of NMP systems have beensuggested. For linear systems, a non-causal solution can be obtained if the MPand the NMP dynamics are separated, solved separately (forward and backwardsin time, respectively), and then superimposed, see, e.g., Kwon and Book (1990). Amethod for non-causal inverse of nonlinear systems is described in Devasia et al.(1996), and in De Luca et al. (1998), a non-causal solution is found for a flexible-link manipulator by applying iterative learning control. Another method is todefine an alternative output which gives a stable or non-existing zero dynamics.This approach is used in, e.g., De Luca and Di Giovanni (2001). In Aguiar et al.(2005), the problem is reformulated from tracking to path-following, i.e., thetime evolution of the trajectory is allowed to be changed. Another method wouldbe to reduce the model to get a minimum phase system. These methods have beenexemplified on, in general, small systems. To be able to solve the problem for acomplex multi-axis manipulator, we propose the use of numerical optimization.

NMP Solver I

In this approach, the inverse dynamics problem is solved for the complete tra-jectory in one step. The discretized DAE (k-step BDF) to solve for time step i isF(ti , xi , xi−1, . . . , xi−k) = 0. Note that F( · ) can be the original high-index DAE orone of the the index-reduced DAEs. The DAE to solve for the complete trajectory,

Page 233: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Numerical Solution of the Inverse Dynamics 213

i = 1, . . . , N , is8 F(t1, x1, x1−1, . . . , x1−k)F(t2, x2, x2−1, . . . , x2−k)

. . .F(tN , xN , xN−1, . . . , xN−k)

= G(y) = 0, (15)

where

y =[xT1 xT2 . . . xTN

]T. (16)

One numerically efficient alternative is to solve the nonlinear least-squares (NLS)problem

miny‖G(y)‖22.

The trajectory should start at t = ∆t to allow a non-causal solution.

NMP Solver II

The algorithm in Section 4.2 is straightforward to apply but results in very largeoptimization problems, e.g., for long trajectories and complex models with manyDOFs. The problem size can be reduced by describing the motor and joint angu-

lar positions, q(t) =[qTa (t) qTm(t)

]T, using a basis function expansion. This type

of algorithms are often called collocation methods. In this work, the solution forthe complete trajectory is described with one basis function expansion. Depend-ing on the trajectory complexity, it could be advantageous to split the trajectoryin several parts and use one expansion for each part. One possible expansion is acombination of a polynomial and a Fourier series, i.e.,

q(t) =M∑m=0

amtm +

R∑r=1

[br sin(r 2π

Nh t) + cr cos(r 2πNh t)

]= q(t, a1, . . . , aM , b1, . . . , bR, c1, . . . , cR).

The derivatives q and q can be computed analytically and the DAE to solve forcollocation points ti is then

Φ(ti , qi , qi , qi) = Φ(ti , a1, . . . , aM , b1, . . . , bR, c1, . . . , cR) = 0,

where Φ is the original extended flexible joint model described in (1) and (2),omitting the motor torque balance equation. The DAE to solve for the completetrajectory is then

Φ(t1, a1, . . . , aM , b1, . . . , bR, c1, . . . , cR)Φ(t2, a1, . . . , aM , b1, . . . , bR, c1, . . . , cR)

. . .Φ(tN , a1, . . . , aM , b1, . . . , bR, c1, . . . , cR)

= Ψ (µ) = 0, (17)

8Initial values [x1−1, . . . , x1−k ] are computed as described in Section 5.1

Page 234: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

214 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

where µ =[aT1 . . . aTM bT1 . . . bTR cT1 . . . cTR

]T, and each element, e.g.,

a1, is a vector with the same dimension as q. The solution can now be obtainedby solving the NLS problem

minµ‖Ψ (µ)‖22.

5 Simulation Study

5.1 Initial Conditions and Trajectory Generation

An ODE solution is well-defined for any initial conditions. The solution to a DAEis restricted to a space with dimension less than n by the algebraic constraint, andits derivatives up to order ν − 1, i.e., the implicit constraints. Consistent initialconditions w.r.t. all explicit and implicit constraints must be given to avoid initialtransients. For the inverse dynamics problem (3), the initial position for all DOFand the initial control signal must be chosen such that we get a steady-state solu-tion with initial speed and all state derivatives equal to zero, i.e., we must solve(3) for x10, x20, x20, and u0. Note that the trajectory reference θ(t) is implicitlyincluded in (3) and that the first ν derivatives of the algebraic constraint must bezero for t = 0. Moreover, θ(t) must be sufficiently smooth to obtain a continuouscontrol signal as θ(t) it is (implicitly) differentiated when the DAE is solved. Thesmoothness requirement is that θ(t) is at least ν0 times differentiable, where ν0 isthe differential index of the original (unreduced) inverse dynamics problem (3).This can be accomplished, e.g., by using the trajectory polynomial

p(t) = a6t6 + a7t

7 + a8t8 + a9t

9 + a10t10 + a11t

11, (18)

which has9 p[i](0) = 0, i = 0, . . . , 5. The coefficients are computed by solving

p(tend) = 1, p[i](tend) = 0, i = 1, . . . , 5. (19)

A straight line trajectory in the x–z plane can for example be computed as[θx(t)θz(t)

]=

[θstartxθstartz

]+ p(t)[

[θendxθendz

]−[θstartxθstartz

]]. (20)

5.2 Simulation of Minimum Phase System

Here, the 5-DOF model from Section 2.2 is used with physical parameters val-ues10 according to Table 1. The control objective is to control the x and z coordi-nates of the tool. For simplicity, the gravity was set to zero, i.e., the manipulatoris working in the horizontal plane. The reference trajectory is a 1.7 m straightline, performed in 0.2 s, an extremely challenging trajectory for this elastic ma-nipulator with eigenfrequencies down to 2 Hz. The solvers were implementedin Matlab, using fsolve to solve the system of non-linear equations. No effort tomake the solvers computationally efficient was made, but they were still adequate

9The ith time derivative of a variable p is denoted p[i].10The motor inertia Jm is expressed on the joint side, i.e., multiplied by the square of the gear ratio.

Page 235: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Simulation Study 215

m ξ l j k d JmJoint 1 and 2 100 0.5 1 5 105 500 100

Joint 3 200 0.1 0.2 50 105 500 -

Table 1: Parameters of the 5 DOF model (minimum phase dynamics).

0 0.1 0.2 0.3 0.4 0.5 0.6

1400

1600

1800

2000X

X [

mm

]

ReferenceSimulated

0 0.1 0.2 0.3 0.4 0.5 0.6−500

0

500

Z

Z [

mm

]

Time [s]

ReferenceSimulated

Figure 6: Tool position for minimum phase system.

for a comparison of the behavior of the algorithms. The numerical solver is basedon a k-step BDF with constant stepsize. System (9), (10), and (11) were solved11,and the control signal u were computed from the state solution, using (3c). TheJacobians Fxi were all full-rank, which shows that the discretized system can besolvable, although the continuous system is not.

The computed control signal was fed into a simulation model for verificationof the inverse dynamics solution. In Figures 6–7 the result is shown and it isconcluded the errors in the simulated robot tool position are small (less than0.1 mm) and that there is a small drift due to the lack of a stabilizing feedbackcontroller. To avoid drift in the solution, the system was stabilized with a PIDcontroller according to Figure 8. For accurate solutions, the stepsize has to besmall and an increase of the stepsize will increase the tool vibrations. A 3-stepBDF and 3 ms stepsize is adequate in this case. Similar results, both in terms ofaccuracy and computational time, were obtained for all systems (index 1, 2, and 3,respectively), provided that scaling of the algebraic equation and its derivativeswere performed. The scaling is extremely important and was chosen to (1/h)ν

∗−l ,where l is the number of differentiations for the specific equation, h is the stepsize,and ν∗ is the differential index of the non-differentiated DAE, i.e., ν∗ = 3. Indexreduction sometimes decreases the computational time but the best choice seemsto depend on the model and trajectory used. More details about this evaluationcan be found in Moberg and Hanssen (2009).

11The original inverse dynamics DAE (3) were also tried but numerical problems were encountered.

Page 236: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

216 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

0 0.1 0.2 0.3 0.4 0.5 0.6

−2

0

2

x 105

u1 [

Nm

]

0 0.1 0.2 0.3 0.4 0.5 0.6−10

−5

0

5

x 104

u2 [

Nm

]

Time [s]

Figure 7: Control signal for minimum phase system.

Figure 8: The inverse dynamics computes the desired motor position qrefm

and the torque feedforward uf f w from the desired trajectory θref . The PIDcontroller computes a torque adjustment from the measured motor positionqm and the desired motor position.

Page 237: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Simulation Study 217

0 0.5 1 1.5 2

−0.5

0

0.5

1

X [m]

Z [

m]

Reference Path

Figure 9: Snapshots from an animation of the movement. The reference pathis shown as a dotted line with the direction is indicated by the solid arrow.The motor angular positions (transformed to the arm side) are indicated bydashed lines.

Some snapshots from a simulation are shown in Figure 9. The elastic deflectionis very large which can be explained by the fact that, although the model hasrealistic parameters, the acceleration is very high, 500 m/s2. A more reasonableacceleration for an industrial manipulator of this size would be 10 m/s2. Thecontinuous system was linearized and analyzed along the solution trajectory. Asexpected, the system was minimum phase at all points. If the model parametersare changed so that the linearized system is non-minimum phase, the inversedynamics solution is unbounded as expected. In general, a stable zero dynamics(minimum phase) of the linearized system gives (locally) a stable zero dynamicsfor the nonlinear system, see, e.g., Isidori (1995). Note that the discretized systemcan be non-minimum phase, even though the continuous system is minimumphase, due to zeros introduced by the discretization.

5.3 Simulation of Non-Minimum Phase System

The 5-DOF model from Section 2.2 is used with physical parameters values ac-cording to Table 2. The model parameters yield a NMP system for the configura-tions used. The example movement is a straight line, 25 mm in both directions(x and z), with an acceleration of 40 m/s2, reaching a speed of 1 m/s. The resultis shown in Figures 10–11. Note that the torque is applied before the trajectorystart (at t = 0.1 s), in order to create the necessary initial deflection. A suitable∆t to allow a non-causal solution, seems to be 2–3 times the time constants of theslowest NMP zero. The linearized system has a NMP zero around 27 Hz and the

Page 238: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

218 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

m ξ l j k d JmJoint 1 and 2 100 0.5 1 5 5 · 105 500 100

Joint 3 200 0.7 1.4 50 5 · 105 500 -

Table 2: Parameters of the 5 DOF model (non-minimum phase dynamics).

0 0.05 0.1 0.15 0.2 0.25 0.3

3190

3200

3210

X [

mm

]

ReferenceSimulated

0 0.05 0.1 0.15 0.2 0.25 0.3−960

−950

−940

Z [

mm

]

Time [s]

ReferenceSimulated

Figure 10: Tool position for non-minimum phase system.

0 0.05 0.1 0.15 0.2 0.25 0.3

−5000

0

5000

u1 [

Nm

]

0 0.05 0.1 0.15 0.2 0.25 0.3−4000

−2000

0

2000

4000

u2 [

Nm

]

Time [s]

Figure 11: Control signal for non-minimum phase system.

Page 239: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Simulation Study 219

2320 2340 2360 2380 2400 2420 2440 24601000

1050

1100

1150

1200

1250

X [mm]

Z [

mm

]

Figure 12: The complex path used for evaluating the NMP-solver based oncollocation.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

−1

−0.5

0

0.5

1

x 104

u1 [

Nm

]

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

−5000

0

5000

u2 [

Nm

]

Time [s]

Figure 13: The control signals for the complex path.

Page 240: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

220 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

lowest eigenfrequency around 5 Hz. The stepsize is 2 ms which gives 151 timesteps in this simulation, and a 6-step BDF is used. Using the solver describedin Section 4.2 and the index-1 system (11), we get an optimization problem with1812 variables and 1812 equations. The solver described in Section 4.2 was usedon the same movement (using a series expansion with M = 1 and R = 20) andcollocation points separated by 5 ms. This resulted in an optimization problemwith 210 variables and 305 equations which was solved 30 times faster than us-ing the alternative solver. The maximum path error was the same in both cases(0.05 mm), although small oscillations could be seen in the motor torque for thesecond solver. To reduce these, the value of R can be increased (number of termsin the Fourier series). The computational time could be reduced further by com-puting an approximate solution and use as the initial value of µ. This could, e.g.,be done by computing the series expansion for the rigid solution, i.e., motor andactuated joint angular positions are equal and non-actuated joint positions arezero. Another alternative would be to compute the algebraic (flat) inverse dy-namic solution for the flexible joint approximation, omitting the non-actuatedjoint. The number of necessary terms in the Fourier series can be approximatedby Fourier analysis of an approximate solution. The solvers are implemented inMatlab (using lsqnonlin).

To show that the collocation approach can be used for more complex trajectories,a trajectory containing straight lines, circular segments and corner zones wasused. This trajectory is used by robot manufacturers and customers for perfor-mance evaluation. The trajectory acceleration was 50 m/s2, giving a speed of upto 1.5 m/s. The resulting position and torque are shown in Figures 12–13. The pa-rameters were chosen as M = 1, R = 84, and h = 10 ms, which yield a maximumpath error of 0.3 mm. To solve the inverse dynamics for non-minimum phase sys-tems, using the suggested collocation method, reduces the optimization problemand seems very promising. As a final remark it could be added that trajectoriesfor a manipulator model with 12 DOF have been tested, using the same method.Accurate solutions were found, although the computational time was quite long.

6 Controllability and Solvability

Analysis of controllability and inverse dynamics solvability for the nonlinear sys-tem (3) is outside the scope of this work. This section briefly discusses theseaspects and reports some results for the linearized system.

Here, the definitions in Skogestad and Postlethwaite (1996) are used to distin-guish three useful concepts of controllability for linear systems. Functional con-trollability requires that the system transfer function matrix has full row rank.For systems having at least the same number of control signals as controlled out-put variables, this means that the minimum singular value of the transfer func-tion matrix must not be identically zero. If the minimum singular value is smallin a frequency region where the reference has a significant energy, the inversedynamics will result in large control signals that might not be available. This

Page 241: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 Controllability and Solvability 221

is an example of a quantitative aspect of controllability, included in the conceptof input-output controllability. The third controllability concept is state con-trollability12, normally denoted controllability (Kalman, 1960). A nonlinear sys-tem can be analyzed by evaluating the state controllability of the linearized sys-tem. For linearization around a stationary operating point, state controllability ofthe linearized system implies local state controllability of the nonlinear system(Nijmeijer and van der Schaft, 1990). Local state controllability around a refer-ence trajectory can also be analyzed by linearizing the nonlinear system aroundthe nominal trajectory (Hermes, 1974). The local state controllability conditionaround a stationary operating point (x0, u0) for a nonlinear system with n states

x = f (x, u), (21)

is that

rank[B AB . . . An−1B

]= n,

where

A =∂f (x, u)∂x

(x0, u0), B =∂f (x, u)∂u

(x0, u0).

The method above can be numerically sensitive. An alternative method is tocompute the controllability staircase form (MathWorks, 2010). The local statecontrollability condition around a nominal trajectory (x0(t), u0(t)) for (21) at timet1 is that

rank[B(t1) (Γ B)(t1) . . . (Γ kB)(t1)

]= n,

for any positive integer k, where

A(t) =∂f (x, u)∂x

(x0(t), u0(t)), B(t) =∂f (x, u)∂u

(x0(t), u0(t)), Γ = d/dt − A(t).

Hence, for the systems studied in this work, an analysis of the local state control-lability around a nominal trajectory can be quite complex.

The issues of existence and uniqueness of an inverse dynamics solution is outsidethe scope of this work. In general, the existence and uniqueness of a nonlin-ear DAE solution can be analyzed with the methods described in (Kunkel andMehrmann, 2006, Theorem 4.13). For a linear analysis, if

x = Ax + Bu, (22)

y = Cx, (23)

is a linearization of (3), the inverse dynamics can be expressed as a linear DAE inx and u:

E ˙x = Ax + y, (24)

12A functionally controllable system might not be state controllable (e.g., if the uncontrollablestates are stable and of no practical importance), and a state controllable system might not be input-output controllable, i.e., controllable in a practical sense (Skogestad and Postlethwaite, 1996).

Page 242: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

222 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

100

101

−130

−120

−110

−100

−90

−80

Frequency [Hz]

Gai

n [d

B]

σmax

σmin

Figure 14: The minimum and maximum gain (singular values) of the lin-earized 5-DOF model in one particular configuration. Stiffness and dampingsomewhat adjusted compared to Section 5.2.

where

E =[I 00 0

], A =

[A BC 0

], x =

[xu

], y =

[0−y

].

If p(λ) = det(λE − A) is not identically zero, where λ is a complex variable, then(24) has a unique solution if the initial conditions are consistent (Brenan et al.,1996; Kunkel and Mehrmann, 2006).

The 5-DOF extended flexible joint model described in Section 2.2 with parametervalues from Sections 5.2–5.3 has functional- and state controllability, if linearizedaround a stationary operating point (checked with a reasonable configurationgrid). Hence, the nonlinear system has local state controllability around thesestationary operating points. A more complex (and realistic) 12 DOF extendedflexible joint model also has the same properties when analyzed. The linearizedinverse dynamics (24) for the same systems as above, has unique solutions, exceptwhen approaching the singularities.

An input-output analysis of the 5-DOF extended flexible joint model for vari-ous parameter settings, showed that the system gain, described by the singularvalues, can be low in some directions and frequency regions. One example iswhen approaching a singularity and another example is when an anti-resonanceis present in the transfer function (see Fig. 14). This type of analysis is importantfor robot design but also for trajectory generation.

7 Experimental Evaluation

The method presented in Section 3 and 4 was evaluated on an industrial robotfrom the ABB IRB6640 series where three axes were used for inverse dynamics(feedforward) control. Joint 2 and 3 were used as actuated joints and joint 5 wasused as a non-actuated joint, see Figure 15. Joint 2, 3, and 5 were practically de-coupled from the other joints by positioning these in zero position. The payloadwas 200 kg and an experimental controller was used to allow off-line generated

Page 243: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

7 Experimental Evaluation 223

Figure 15: The IRB6640 from ABB. In the experimental evaluation, joint B(2) and C (3) are the actuated joints, and joint E (5) is the non-actuated joint.

reference- and feedforward signals. A simple PID-controller was used as feed-back controller for all joints except joint 5 where a PD-controller was used. Inthis way, the elasticity (stiffness and damping) of the non-actuated joint could becontrolled by software. The PD controller (with zero reference) will be in serieswith the gearbox elasticity of joint 5. By choosing a PD stiffness much smallerthan the joint 5 gearbox stiffness, a planar 5 DOF model similar to the one pre-sented in Section 2.2 can be used for the inverse dynamics, although the modelhad to be modified to a complete 2-D planar 5 DOF model in order to describethe dynamics and kinematics of the robot used in the experiment. The motorinertia of joint 5 also had to be included in the model. The rigid body param-eters of the model were known from CAD-data, and the elasticity parameterswere identified by using a gray-box frequency domain identification method, see,Wernholt and Moberg (2008) and Wernholt and Moberg (2010). Note that the5 DOF model might not be sufficient for an accurate description of the manip-ulator, although only three joints are used in a decoupled position, see Moberget al. (2010). This motivated setting the PD-controlled non-actuated elasticity tobe very elastic, thus being the dominating elasticity of the system. The resonancefrequency of the non-actuated joint was therefore chosen to be lower than 2 Hz.One complication with this setup is that there is a non-linear friction located afterthe non-actuated joint (in joint 5 gearbox). This was compensated by applying a40 Hz dithering (Armstrong-Hélouvry, 1991) torque to the PD-controller torqueof joint 5. In this way, a very elastic non-actuated joint could be simulated on astandard industrial robot manipulator. A system analysis showed that the systemis minimum phase and the inverse dynamics method from Section 4.1 could beused. The tool position, at the far end of the payload, was measured using a Leicalaser tracker (Leica, 2007).

The result is shown in Figure 16. As a comparison, the result when applying theflexible joint inverse dynamics (and thus ignoring the non-actuated joint) is alsoshown. The path error is shown in Figure 17. Clearly, most of the path errorcaused by the non-actuated joint is handled by the algorithm. The maximum er-

Page 244: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

224 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

1580 1600 1620 1640 1660 1680 1700 1720 1740 1760 17800

50

100

150

200

250

X [mm]

Z [

mm

]

Figure 16: Result of experimental evaluation. Path reference (solid thin),path when using extended flexible joint inverse dynamics (solid thick), andpath when using flexible joint inverse dynamics (dashed).

1 2 3 4 5 6

5

10

15

20

25

30

Time [s]

Pat

h E

rro

r [m

m]

Extended Flexible Joint Inverse DynamicsFlexible Joint Inverse Dynamics

Figure 17: Path error in experimental evaluation.

Page 245: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

8 Conclusion, Discussion, and Future Work 225

1600 1650 1700 17500

50

100

150

200

250

X [mm]

Z [

mm

]

Figure 18: Simulation of path. Reference (solid thin), extended flexible jointinverse dynamics (solid thin), i.e., almost identical to the reference, extendedflexible joint inverse dynamics with 10% error in stiffness parameters (solidthick), and flexible joint inverse dynamics (dashed).

ror for extended flexible joint feedforward is 4.7 mm compared to 30.5 mm forthe flexible joint feedforward. The acceleration of the trajectory is 3 m/s2 andthe speed is maximum 0.8 m/s. A standard industrial manipulator with high pre-cision motion control would have a maximum error of about 1 mm on a similarpath. The reason for the relatively large error in this experiment is likely causedby uncompensated friction, small errors in the stiffness parameters of the model,a simplified model structure, and of course the low-stiffness non-actuated joint.Note that no friction model has been used in any simulations or in the inversedynamics of the experimental evaluation, as the purpose of this work is to studythe effect and handling of elasticity in robot manipulators. Nevertheless, the ex-periment proves that the inverse dynamics algorithm works. Figure 18 shows theresult of a simulation, using the same trajectory and the same identified model.For the extended flexible joint feedforward, a stiffness error of 10% was intro-duced in the inverse dynamics model. The result is in good agreement with theexperimental result.

8 Conclusion, Discussion, and Future Work

The inverse dynamics of the extended flexible joint model can be computed asthe solution to a DAE. For minimum phase systems, the DAE can be solved asan initial-value problem using a constant-stepsize constant-order BDF. Solution

Page 246: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

226 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

of the non-differentiated high-index system is attractive since differentiations ofthe constraint equations are then avoided. In this case, scaling of the equationsis necessary to improve the numerical conditioning. However, the system is nu-merically sensitive and index reduction can in some cases be used to improve thesolvability. For non-minimum phase systems, a non-causal solution of the DAEcan be obtained by optimization of the (BDF) discretized system over the com-plete trajectory or by a collocation method. The solvers have been evaluated bysimulation, using a 5 DOF manipulator model. The suggested concept for inversedynamics has been experimentally evaluated using an industrial robot manipu-lator. An identified model was used for the inverse dynamics. The result wasthat the suggested inverse dynamics method, using the extended flexible jointmodel, can improve the accuracy for manipulators with significant elasticities,that cannot be described by the flexible joint model. Simulations using the sameidentified model were in good agreement with the experimental results.

Improvement of the scaling (equations and variables), and the use of more effi-cient equation solvers and optimizers, utilizing analytic gradients, are areas forfuture research. Evaluation of the algorithms, using a more complex manipu-lator model, e.g., a six-axes model with transmission nonlinearities, controllingthe natural non-actuated joint (due to, e.g., bearing and link elasticity) is an-other important future work. Generally, a practical manipulator controller mustbe computed on-line as the future trajectory can be, at least partly, unknown,e.g., if sensor input affects the trajectory. This makes the optimization approachunfeasible and will set hard real-time requirements on the initial-value solver.However, for some applications, an off-line feedforward computation could beacceptable. Of course, there are a number of problems to be solved in order tomake this approach feasible, e.g., smooth trajectory generation with constrainedcontrol signals and handling of manipulator singularities and alternative config-urations. However, the main motivation for this work is that a method for perfectfeedforward control is valuable for evaluating the limit of control performance,and for developing approximate control algorithms for on-line computation.

Page 247: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 227

Bibliography

A.P. Aguiar, J.P. Hespanha, and P.V. Kokotivic. Path-following for nonminimumphase systems removes performance limitations. IEEE Transactions on Auto-matic Control, 50(2):234–239, 2005.

B. Armstrong-Hélouvry. Control of Machines with Friction. Kluwer AcademicPublishers, Norwell, Massachusetts, USA, 1991.

M. Björkman, T. Brogårdh, S. Hanssen, S.-E. Lindström, S. Moberg, and M. Nor-rlöf. A new concept for motion control of industrial robots. In Proceedings of17th IFAC World Congress, 2008, Seoul, Korea, July 2008.

W. Blajer and K. Kolodziejczyk. A geometric approach to solving problems ofcontrol constraints: Theory and a dae framework. Multibody System Dynamics,11(4):341–350, May 2004.

W. Book and K. Obergfell. Practical models for practical flexible arms. In Proc.2000 IEEE International Conference on Robotics and Automation, pages 835–842, San Fransisco, CA, 2000.

K. E. Brenan, S. L. Campbell, and L.R. Petzold. Numerical Solution of Initial-Value Problems in Differential-Algebraic Equations. Society for Industrial andApplied Mathematics, Philadelphia, PA, USA, 1996. ISBN 0-89871-353-6.

T. Brogårdh. Present and future robot control development—an industrial per-spective. Annual Reviews in Control, 31(1):69–79, 2007.

T. Brogårdh. Robot control overview: An industrial perspective. Modeling, Iden-tification and Control MIC, 30(3):167–180, 2009.

A. De Luca. Feedforward/feedback laws for the control of flexible robots. InProceedings of the 2000 IEEE International Conference on Robotics and Au-tomation, pages 233–240, San Francisco, CA, April 2000.

A. De Luca and G. Di Giovanni. Rest-to-rest motion of a one-link flexible arm. In2001 IEEE/ASME International Conference on Advanced Intelligent Mecha-tronics Proceedings, pages 923–928, Como, Italy, 2001.

A. De Luca and B. Siciliano. Closed-form dynamic model of planar multilinklightweight robots. IEEE Transactions on Systems, Man, and Cybernetics, 21(4):826–839, 1991.

A. De Luca, S. Panzieri, and G. Ulivi. Stable inversion control for flexible linkmanipulators. In Proc. 1998 IEEE International Conference on Robotics andAutomation, pages 799–804, Leuven, Belgium, May 1998.

A. Devasia, D. Chen, and B. Paden. Nonlinear inversion-based output tracking.IEEE Transactions on Automatic Control, 41(7):930–942, 1996.

Dymola. Multi-engineering modeling and simulation. www.dymola.com, 2010.

Page 248: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

228 Paper D Inverse Dynamics of Robot Manipulators Using EFJ Models

P. Fritzon. Principles of Object-Oriented Modeling and Simulation with Modelica2.1. John Wiley & Sons, New York, 2004.

H. Hermes. On local and global controllability. SIAM Journal of Control, 12(2):252–261, May 1974.

A. Isidori. Nonlinear Control Systems. Springer-Verlag, London, Great Britain,1995.

K.P. Jankowski and H. Van Brussel. An approach to discrete inverse dynamicscontrol of flexible-joint robots. IEEE Transactions on Robotics and Automation,8(5):651–658, October 1992.

R.E. Kalman. Contributions to the theory of optimal control. Boletin de la So-ciedad Matematica Mexicana, 5:102–119, 1960.

T. R. Kane and D. A. Levinson. Dynamics: Theory and Applications. McGraw-Hill Publishing Company, 1985.

P. Kunkel and V. Mehrmann. Index reduction for differential-algebraic equationsby minimal extension. Z. Angew. Math. Mech., 84:579–597, 2004.

P. Kunkel and V. Mehrmann. Differential-Algebraic Equations: Analysis and Nu-merical Solution. European Mathematical Society, 2006.

D.-S. Kwon and W.J. Book. An inverse dynamic method yielding flexible manip-ulator state trajectories. In Proceedings of the 1990 American Control Confer-ence, vol 1, pages 186–193, San Diego, CA, USA, 1990.

Leica. Leica geosystems laser trackers. www.leica-geosystems.com, 2007.

P. Lötstedt and L. R. Petzold. Numerical solution of nonlinear differential equa-tions with algebraic constraints. i: Convergence results for backwards differen-tiation formulas. Mathematics of Computation, 46(174):491–516, April 1986.

MathWorks. Control System Toolbox Users Guide. The MathWorks Inc., Natic,Ma., 2010.

S.-E. Mattson and G. Söderlind. Index reduction in differential-algebraic equa-tions using dummy derivatives. SIAM Journal of Scientific Computing, 14:677–692, 1993.

S. Moberg and S. Hanssen. A DAE approach to feedforward control of flexiblemanipulators. In Proc. 2007 IEEE International Conference on Robotics andAutomation, pages 3439–3444, Roma, Italy, April 2007.

S. Moberg and S. Hanssen. Inverse dynamics of flexible manipulators. In Multi-body Dynamics 2009, Warsaw, Poland, July 2009.

S. Moberg and S. Hanssen. Inverse dynamics of robot manipulators using ex-tended flexible joint models. 2010. Submitted to IEEE Transactions on Robotics(under revision).

Page 249: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 229

S. Moberg, E. Wernholt, S. Hanssen, and T. Brogårdh. Modeling and parameterestimation of robot manipulators using extended flexible joint models. 2010.Submitted to Journal of Dynamic Systems Measurement and Control, Transac-tions of the ASME.

H. Nijmeijer and A. van der Schaft. Nonlinear Dynamical Control Systems.Springer-Verlag, New York, 1990.

J. Öhr, S. Moberg, E. Wernholt, S. Hanssen, J. Pettersson, S. Persson, and S. Sander-Tavallaey. Identification of flexibility parameters of 6-axis industrial manipula-tor models. In Proc. ISMA2006 International Conference on Noise and Vibra-tion Engineering, pages 3305–3314, Leuven, Belgium, September 2006.

L. R. Petzold and P. Lötstedt. Numerical solution of nonlinear differential equa-tions with algebraic constraints ii: Practical implications. SIAM Journal ofScientific and Statistical Computing, 7(3):720–733, July 1986.

P. Rouchon, M. Fliess, J. Lévine, and P. Martin. Flatness, motion planning andtrailer systems. In Proceedings of the 32nd Conference on Decision and Con-trol, pages 2700–2705, San Antonio, Texas, December 1993.

A.A. Shabana. Dynamics of Multibody Systems. Cambridge University Press,Cambridge, United Kingdom, 1998.

S. Skogestad and I. Postlethwaite. Multivariable Feedback Control. Wiley, NewYork, 1996.

M. Spong, S. Hutchinson, and M. Vidyasagar. Robot Modeling and Control. Wiley,2006.

M. W. Spong. Modeling and control of elastic joint robots. Journal of DynamicSystems, Measurement, and Control, 109:310–319, December 1987.

L. M. Sweet and M. C. Good. Redefinition of the robot motion-control problem.IEEE Control Systems Magazine, 5(3):18–25, 1985.

M. Thümmel, M. Otter, and J. Bals. Control of robots with elastic joints based onautomatic generation of inverse dynamic models. In Proceedings of the 2001IEEE/RSJ International Conference in Intelligent Robots and Systems, pages925–930, Maui, Hawaii, USA, October 2001.

T.D. Tuttle and W.P. Seering. A nonlinear model of a harmonic drive gear trans-mission. IEEE Transactions on Robotics and Automation, 12(3):368–374, 1996.

E. Wernholt and S. Moberg. Frequency-domain gray-box identification of indus-trial robots. In 17th IFAC World Congress, pages 15372–15380, Seoul, Korea,July 2008.

E. Wernholt and S. Moberg. Nonlinear gray-box identification using local modelsapplied to industrial robots. Automatica, 2010. Accepted for publication.

Page 250: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 251: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Paper EOn Feedback Linearization for Robust

Tracking Control of Flexible JointRobots

Authors: Stig Moberg and Sven Hanssen

Edited version of the paper:

S. Moberg and S. Hanssen. On feedback linearization for robust track-ing control of flexible joint robots. In Proc. 17th IFAC World Congress,Seoul, Korea, July 2008.

Page 252: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 253: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

On Feedback Linearization for RobustTracking Control of Flexible Joint Robots

Stig Moberg∗ ,† and Sven Hanssen∗∗ ,†

∗Dept. of Electrical Engineering,Linköping University,

SE–581 83 Linköping, [email protected]

†ABB AB,Robotics,

SE-721 68 Västerås, [email protected]

∗∗Department of Solid Mechanics,Royal Institute of Technology,SE-100 44 Stockholm, Sweden

[email protected]

Abstract

Feedback linearization is one of the major academic approaches forcontrolling flexible joint robots. This contribution investigates thediscrete-time implementation of the feedback linearization approachfor a realistic three-axis robot model. A simulation study of highspeed tracking with model uncertainty is performed. It is assumedthat full state measurements of the linearizing states are available.The feedback linearization approach is compared to a feedforwardapproach.

1 Introduction

High accuracy control of industrial robot manipulators is a challenging task,which has been studied by academic and industrial researchers since the 1970’s.The first approaches of linearizing a nonlinear system by nonlinear feedback canbe found in the robotics literature from that decade. Control methods for rigid di-rect drive robots are, e.g., described in An et al. (1988). The two main approachesare feedforward control and feedback linearization, and both are based on a rigiddynamic model, combined with a diagonal PD or PID controller. Experimen-tal evaluations are described in, e.g., Santibanez and Kelly (2001) and An et al.(1988). The conclusion in these is that feedforward control gives the same track-ing performance as feedback linearization and that feedforward control is thepreferred choice.

In Spong (1987) it is shown that flexible joint robots, i.e., elastic gear transmis-sions and rigid links, can be described by the so called simplified flexible joint

233

Page 254: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

234 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

model where the inertial coupling between the links and the motors are neglected.This approximation is valid for a reasonable high gear ratio. Furthermore, the vis-cous damping is also neglected in the simplified model. In the same article it isshown that the simplified flexible joint model can be linearized and decoupledby static feedback linearization, see also Spong et al. (2006).

In De Luca (1988) and De Luca and Lucibello (1998) it is shown that the completeflexible joint model can be linearized and decoupled by dynamic state feedback.A simulation study of feedback linearization using both the simplified and thecomplete flexible joint model is described in Nicosia and Tomei (1988), where it isclaimed that the simplified model can cause large error in some operating condi-tions, although the gear ratio is high. The feedforward approach for flexible jointrobots is described in, e.g., De Luca (2000). Experimental evaluations of controlmethods for flexible joint robots are described in, e.g., Caccavale and Chiacchio(1994) (feedforward based on a rigid model), Jankowski and Van Brussel (1992)(discusses problems with feedback linearization due to its complexity and sampletime requirement, suggests a simplified discrete-time predictive DAE approachwith partial state feedback, based on a flexible joint model), Albu-Schäffer andHirzinger (2000) (full-state feedback with gravity compensation based on a flex-ible joint model, concludes that feedback linearization is not possible to imple-ment in available systems due to its complexity but also due to the requirementson model accuracy) and Thümmel et al. (2001) (feedforward based on a flexiblejoint model). In conclusion, the complete flexible joint feedback linearization isnot implemented in any of these evaluations. No rigorous comparative simula-tion or experimental study of tracking with strict industrial requirements, usingdiscrete-time implementations of feedback linearization and feedforward control,for the flexible joint model, has been published to the authors’ knowledge. How-ever, simulation studies with reasonable realistic models are possible to perform.

This study is intended to help bridging the gap between theoretical nonlinearrobot control and robot control practise. Many control methods suggested by re-searchers are seldom implemented in real systems and, on the other hand, manyimportant control problems in the real world are not addressed in the academicresearch. The existence of such a gap in general control science is widely ac-knowledged and the need for a balance between theory and practise is expressedin, e.g., Åström (1994). From Bernstein (1999) we quote "I personally believethat the gap on the whole is large and warrants serious introspection by the re-search community". The same article also points out that the control practitionersmust articulate their needs to the research community, and that motivating theresearchers with problems from real applications "can have a significant impacton increasing the relevance of academic research to engineering practise". Theproblem is somewhat provocatively described in Ridgely and McFarland (1999)as, freely quoted, "what the industry in most cases do not want is stability proofs,guarantees of convergence and other purely analytical developments based onidealized and unrealistic assumptions".

In our simulation study, the real world is substituted with a simplified model,

Page 255: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

2 Flexible Joint Robot Model 235

i.e., the (simplified) flexible joint model. Moreover, perfect state measurementsare assumed. In a real implementation, some of the states would probably beestimated by means of an observer or simply by differentiation and low-pass fil-tering, disturbances and joint nonlinearities would be significant, and the realworld elasticity would be much more complex than in our model, see, e.g., Wern-holt and Moberg (2008). What we do assume, however, are important detailssuch as a discrete implementation, continuous anti-alias filters, a reasonable re-quirement specification, realistic model parameters and small model parametererrors in our otherwise ideal model structure. Our rationale for this approachis that, if the chosen/evaluated control method does not prove its worth underthese ideal circumstances, then the chances are small that a real implementationwould give a different result. On the other hand, if the results are promising, thenthe next step would be to to increase the realism in the robot and sensor model,or to perform an experimental investigation.

2 Flexible Joint Robot Model

In this section, a serial link flexible joint robot model is described. The modelconsists of a serial kinematic chain of N rigid bodies. Rigid body rbi is describedby its length l i , massmi , center of mass ξ i , and inertia tensor w.r.t. center of massJ i . The rigid body rbi is connected to rbi−1 by a torsional spring. The motors areplaced on the preceding body and the inertial couplings between the motors andthe rigid bodies are neglected under the assumption of high gear ratio, see, e.g.,Spong (1987). The total system has 2N DOF (i.e., the number of independentcoordinates necessary to specify its configuration). The torque control of the mo-tors are assumed to be ideal, so the N input signals u of the system are the motortorques. The equations of motion are derived by computing the linear and an-gular momentum and their time derivatives. By using Kane’s method (Kane andLevinson, 1985; Lesser, 2000) the projected equations of motion are derived toyield a system of ordinary differential equations (ODE) with minimum numberof DOF. The model equations can be described as a system of second order ODE’s

Ma(qa)qa + n(qa, qa) + K(qa − qm) = 0, (1a)

Mmqm + K(qm − qa) = u, (1b)

where x denotes dx/dt. Ma(qa) ∈ RN×N is the inertia matrix for the links and

n(qa, qa) = c(qa, qa) + g(qa), where c(qa, qa) ∈ RN and g(qa) ∈ R

N describes theCoriolis, centrifugal and gravity torques. Mm ∈ R

N×N is the diagonal inertiamatrix of the motors. The link and motor angular positions are denoted qa ∈ RNand qm ∈ R

N respectively. Note that the gear ratio matrix, r, is not explicitlyshown in the equations. All equations are expressed on the link side and Mm =rTMm

m r, where Mmm is the motor inertia matrix on the motor side.

For a complete model including the position and orientation of the tool, Z, theforward kinematic model of the robot is needed. The kinematic model is a map-

Page 256: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

236 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

Figure 1: A three axis flexible joint model.

ping of qa ∈ RN to Z ∈ R6. The complete model of the robot is then described by(1) and

Z = Γ (qa). (2)

Z is the controlled output variable. The forward kinematics (2) is practically in-vertible, i.e., there are methods for handling singularities and multiple solutions(Sciavicco and Siciliano, 2000) to get the inverse kinematics

qa = Γ −1(Z, C), (3)

where C is a set of configuration parameters or other type of information, used toselect a feasible solution. The link angular positions qa can thus be regarded asalternative output variables. A robot with N = 3 is used in the simulation studyto follow. This robot is illustrated in Figure 1.

3 Feedback Linearization and Feedforward Control ofa Flexible Joint Robot

The flexible joint robot is an example of a differentially flat system (Rouchon et al.,1993) which can be defined as a system where all state variables and controlinputs can be expressed as an algebraic function of the desired trajectory for aflat output, and its derivatives up to a certain order. Feedback linearization bystatic or dynamic state feedback is equivalent to differential flatness (Nieuwstadtand Murray, 1998). By solving (1a) for qm and differentiating twice we get theexpression for qm as

qm = qa + K−1[Ma(qa)q[4]a + 2Ma(qa, qa)q

[3]a +

Ma(qa, qa, qa)qa + n(qa, qa, qa, q[3]a )], (4)

Page 257: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 Feedback Linearization and Feedforward Control of a Flexible Joint Robot 237

where x[i] denotes d ix/dti . Adding (1a) to (1b) yields

u = Ma(qa)qa + n(qa, qa) + Mmqm. (5)

Inserting (4) in (5) gives

u = τ(qa, qa, qa, q[3]a , q

[4]a ), (6)

which shows that the flexible joint model is a flat system with the flat output qa.By choosing the states

x =

qaqaqaq

[3]a

=

x1x2x3x4

, (7)

the system can be expressed in the following state-space form by the use of (4) -(6)

x1 = x2, (8a)

x2 = x3, (8b)

x3 = x4, (8c)

x4 = f (x) + g(x)u, (8d)

y = x1, (8e)

where

f (x) = −M−1a (x1)KM−1

m (Ma(x1)x3 + n(x1, x2))−M−1a (x1)(K + Ma(x1, x2, x3))x3−

2M−1a (x1)Ma(x1, x2)x4−

M−1a (x1)n(x1, x2, x3, x4), (9a)

g(x) = M−1a (x1)KM−1

m . (9b)

It is clear that four differentiations of each component of the output y are needed

in order for y[4]i to depend directly on u, i.e., the relative degree νi = 4. Now,

Σνi = 4N so the system has full relative degree and no zero dynamics associatedwith output y (Isidori, 1995; Slotine and Li, 1991). Thus the system is fully lin-earizable by a static feedback control law that can be derived from the controllercanonical form (8) as

u = g−1(xm)(v − f (xm)), (10)

where v is a new control signal for the linearized and decoupled system q[4]a = v

consisting of N independent chains of four integrators. For tracking control, vcan be chosen as

v = q[4]a,r + L(xr − xm), (11)

where L ∈ RN×4N is a linear feedback gain matrix, xr are the reference states,

and xm are the measurements of the states x. The fourth derivative of the refer-

Page 258: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

238 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

ence trajectory must be defined and is denoted q[4]a,r . This control law can also be

derived by inserting the measured states xm and v in (6) to yield

u = τ(x1m, x2m, x3m, x4m, q[4]a,r + L1(xr − xm)). (12)

The derived control law is a combination of feedback and feedforward where thefeedback part is dominating and is from now on denoted FL.

A feedforward dominant control law can be expressed as

u = τ(x1r , x2r , x3r , x4r , q[4]a,r ) + L2(xr − xm), (13)

where, ideally in the case of a perfect model, all torque needed for the desired tra-jectory is computed by feedforward. This control law is denoted FF. Note that forboth controllers, in a real implementation, an integral term would be needed tohandle model errors and disturbances. For simplicity the integral term is omittedin this study.

The control law (12) gives constant bandwidth of the linearized closed loop forall robot configurations. For constant bandwidth there would be no need for gainscheduling. Gain scheduling is on the other hand probably needed in (13). Thiscan be accomplished by observing that the closed loop dynamics for (12) is givenby (8) with x4 = −L1x and that L2 is given by setting −L1x = f (x) + g(x)[−L2x].If the system is linearized for zero gravity, zero speed we get the configurationdependant feedback gain

L2 = MmK−1Ma(x1r )L1 −

[0 0 Ma(x1r ) + Mm 0

]. (14)

In this way we get approximately the same linear feedback for both control lawswhich will facilitate the comparison.

The two control laws are illustrated in Figures 2 - 3. The control signal u can bedescribed as

u = ud,nc + uffw + ufdb, (15)

where ud,nc is the torque for decoupling and nonlinear cancellation, uffw is thefeedforward torque and ufdb is the torque from the linear feedback controller.For FF, ud,nc = 0.

4 Simulation Study

The robot model described in Section 2 is simulated with the controller structuresfrom Section 3. The model parameters used are typical for the three first axes ofa large industrial robot with a payload capacity of 150 kg. One example of such arobot is shown in Figure 4 and the frequency response function of the linearizedmodel in one configuration is shown in Figure 5. For simplicity, the gravitationalconstant is set to zero.

The requirement specification illustrates a typical requirement for a dispensingapplication, e.g., gluing inside a car body, and is stated as follows:

Page 259: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Simulation Study 239

Figure 2: Feedback Linearization Control Law (FL).

Figure 3: Feedforward Control Law (FF).

Figure 4: IRB6600 from ABB equipped with a spot welding gun.

Page 260: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

240 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

100

101

102

−200

−100

0

100

101

102

−300

−200

−100

100

101

102

−300

−200

−100

100

101

102

−300

−200

−100

100

101

102

−200

−100

0

100

101

102

−400

−200

0

100

101

102

−300

−200

−100

100

101

102

−400

−200

0

100

101

102

−200

−100

0

Figure 5: The frequency response function from motor torque to motorspeed. Magnitude in [dB] and frequency in [Hz].

• The programmed path should be followed by an accuracy of 1 mm (maxi-mum deviation) at an acceleration of 8 m/s2 and a speed of 0.5 m/s.

• The specification above must be fulfilled for model errors in the user loadmass by ±20 % and errors in the gear-box stiffness of ±20 %.

• The test path is a circular path with radius 25 mm.

The smooth cartesian trajectory reference Zr (θ(t)) is compared to the obtainedrobot trajectory Z(η(t)), where θ and η are time dependant scalar path parame-ters. Instead of using the tracking error |Zr (t) − Z(t)|, the path accuracy is mea-sured by the path-following error. The tracking error will indicate error for, e.g.,a small time delay between Zr and Z. Therefore, the path-following error is pre-ferred as an accuracy measure and is also used in ISO (1998). The maximumpath-following error is here computed as

e = maxη∈Z

(minθ∈Zr

(|Zr (θ) − Z(η)|)). (16)

The circle computed in polar coordinates, radius r, angle Q, by discrete integra-tion of Q[5](t) and thus the path is C4 as shown in Figure 6. The link angle refer-ence qr is then computed using inverse kinematics and the required derivativesare calculated without delay.

4.1 Nominal Performance

In this section, the performance of feedback linearization and feedforward con-trol is evaluated for the nominal case, i.e., no model errors. The discrete imple-mentation is straightforward as the control laws, including all model derivatives(Ma, Ma, and n), are expressed as algebraic equations. The robot model is sim-ulated as a continuous system with a zero-order hold at the output. Figure 7shows an example of a simulated path with a path error of 4 mm. Simulationswere performed for the nominal system with different sample times and differ-ent bandwidths of the linearized closed loop. Two methods for computing the

Page 261: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Simulation Study 241

0 0.1 0.2 0.3 0.4 0.5 0.605

0 0.1 0.2 0.3 0.4 0.5 0.60

1020

0 0.1 0.2 0.3 0.4 0.5 0.6−100

0100

0 0.1 0.2 0.3 0.4 0.5 0.6−1000

01000

0 0.1 0.2 0.3 0.4 0.5 0.6−2

02

x 104

Figure 6: The circular angle Q and its derivatives.

2750 2760 2770 2780 2790 2800

−20

−15

−10

−5

0

5

10

15

20

x [mm]

y [m

m]

Figure 7: An example of the circular reference path (dashed) and robot path(solid).

Page 262: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

242 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

10−1

100

0

5

10

15

20

25

Sample Time [ms]

Max

Err

or

[mm

]

FF BW=1FF BW=5FL BW=1FL BW=5

Figure 8: Path error vs. sample time for feedback linearization (FL) andfeedforward (FF) using an LQ linear controller. Bandwidth (BW) of the lin-earized closed loop is 1 Hz and 5 Hz.

feedback gain matrix L1 were used, LQ optimal control (Anderson and Moore,1990) and pole placement. For feedforward control, L2 is then computed fromL1 according to (14). The controller is implemented with a fixed sample rate.The measured variables were filtered with a second order continuous anti-aliasfilter of Butterworth type, with a bandwidth equal to the Nyquist frequency. Thebandwidth of of the linearized closed loop is indicated by the absolute value ofdominant closed loop poles. Figures 8 - 9 show the path errors at different sampletimes and at two different bandwidths. The linear LQ-controller clearly causesproblems when feedback linearization is used. Hence, in the remaining simula-tions, pole placement is used for the linear controller design. The design of thelinear controller has not been further analyzed since the objective of this work isto compare the nonlinear controller concepts. Figure 10 shows the path errorsfor feedback linearization when different nominal motor inertias are used. Thenominal motor inertias in all other simulations are 200 kgm2, expressed on thelink side. The performance of feedback linearization clearly depends on the mo-tor inertia. Other simulations also show that the path error increases for feedbacklinearization if the anti-alias filtering of the measured variables is increased, i.e.,the bandwidth is decreased or the order of the filter is increased. Feedforwardcontrol does not show the same sensitivity in this respect.

4.2 Robust Performance

The uncertain system, according to the requirement specification, was then simu-lated with a set of 20 models. The models were a combination of extreme valuesfor the uncertain parameters and some random systems inside the uncertaintydescription. The result for one simulation example is shown in Figure 11 and anexample of the resulting path error is shown in Figure 12. All simulations aresummarized Table 1.

4.3 Discussion

From the simulation results, the following conclusions are drawn:

Page 263: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Simulation Study 243

10−1

100

0

0.5

1

Sample Time [ms]

Max

Err

or

[mm

]

FF BW=1FF BW=5FL BW=1FL BW=5

Figure 9: Path error vs. sample time for feedback linearization (FL) andfeedforward (FF) using a pole placement linear controller. Bandwidth (BW)of the linearized closed loop is 1 Hz and 5 Hz.

500 1000 1500 20000

2

4

6

Motor Inertia [kg m2]

Max

Err

or

[mm

]

h = 1 msh = 5 ms

Figure 10: Path error vs. motor inertia for feedback linearization (FL) usinga pole placement linear controller. Bandwidth of the linearized closed loopis 1 Hz. Two different sample times (h) are used. Feedforward control (notshown) yields an error less than 0.2 mm in all cases.

Figure 11: Simulation of uncertain systems for feedback linearization con-trol. Sample time is 1 ms and linearized closed loop bandwidth is 1 Hz.

Page 264: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

244 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

Figure 12: Path error of uncertain systems for feedback linearization control.Sample time is 1 ms and linearized closed loop bandwidth is 5 Hz.

Table 1: Summary of simulation results for circular path (radius 25 mm) andthe uncertain system.

Sample Time [ms] Bandwidth [Hz] Method Error [mm]1 1 FF 0.561 1 FL 0.701 5 FF 0.141 5 FL 0.175 5 FF 0.245 5 FL 1.10

• FL requires higher sample rate than FF.

• Low sample rate can to some extent be compensated by high bandwidth ofthe linearized closed loop.

• If these requirements are fulfilled, the nominal and robust performance ofFL is similar to FF. However, in this simulation study, FF always yields abetter result.

• The value of the motor inertia is critical for FL.

• Measurement filtering, and hence time delay, reduces the performance morefor FL than for FF.

• The design of the linear feedback controller is critical for good performance.FL is more sensitive in this respect.

To understand these results, it is helpful to consider the different torque compo-nents in (15). The result can now be explained as follows, the nonlinear cancella-tion and decoupling performed by FL in an ideal continuous world does not workin the same way for discrete time. Thus, the inevitable delay of ud,nc, caused bythe discrete implementation, causes path errors if the sample time is too high.Increasing the bandwidth of the linearized closed loop will compensate for thedelay in ud,nc by a correcting torque in ufdb. For FF and small model errors, uffwis dominating and the errors are small even for a moderate sample rate and mea-

Page 265: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Summary 245

surement filtering. In FL, the amount of torque in ud,nc and uffw depends onthe numerical values of the model parameters. This explains why an increase inmotor inertia decreases the error. From Figure 2 it is seen that increased motorinertia increases uffw relative to ud,nc.

In feedback linearization of a rigid manipulator, i.e., the classical computed torquealgorithm, ud,nc consists of the slow varying gravity torque and the speed depen-dent torques. The fastest varying torque is the acceleration dependant torquewhich is included in uffw. In this case the problems described above should beconsiderably smaller than in the case of a flexible joint robot where ud,nc alsodepends on the fast varying acceleration and jerk. To understand the differentbehavior of feedback linearization for different systems, consider the algorithmapplied to a rigid one-axis manipulator with no friction or gravity, i.e., a doubleintegrator. If the model inertia is correct, all required torque will be included inuffw and ud,nc is zero. FL and FF is the same in this case.

To summarize, time delays caused by discrete implementation and filtering causesthe linearization and decoupling to be only partial. The incomplete decouplingcan, e.g., be analyzed by linearizing the system around position qa0, and apply-ing the feedback linearization (including measurement filtering) to the linearizedand discretized system. The system is then decoupled by using

u = (Ma(qa0) + Mm)qa + MmK−1Ma(qa0)v. (17)

This deviation from the ideal decoupled system must be handled by the linearcontroller, which therefore is critical for the resulting performance. Of coursethere is a limit of the achievable feedback bandwidth. Unmodeled dynamics,model errors, measurement noise and the fact that perfect complete state mea-surements are unachievable also limit the bandwidth. State estimation, noise fil-tering, and computational delay also add to the total delay. The sample rate andtime delays can theoretically be very small but in practise there are limitations.The requirement on computational power would be enormous for a six-axes ma-nipulator. Computation of model derivatives by numerical differentiation wouldreduce the number of operations, but would on the other hand also increase thedelay.

5 Summary

In this paper, the discrete implementation of feedback linearization for flexiblejoint robots has been investigated in a simulation study concerning high speedtracking. Feedback linearization has been compared with feedforward control.Perfect state measurements have been assumed. With this assumption, the resultis that typical industrial robot requirements can be fulfilled with both concepts.Another result is that feedforward control gives better performance and puts lessrequirements on the controller and sensor hardware. The design of the linearcontroller is found to be critical for the resulting performance. The feedbackcontroller is needed for robustness, stabilization and disturbance rejection. The

Page 266: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

246 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

partial linearization and decoupling, caused by the discrete implementation, in-creases the requirements on the feedback controller. Of course, there are moreways to combine feedback and feedforward than the two concepts studied in thisarticle. Given the flat expression of the control signal (6) there are many waysto insert the measured states, the references states and the amplified state errorsinto the equation. Thus, how the optimal feedforward/feedback controller for anelastic robot manipulator should be designed is still an open question.

Page 267: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 247

Bibliography

A. Albu-Schäffer and G. Hirzinger. State feedback controller for flexible jointrobots: A globally stable approach implemented on DLR’s light-weight robots.In Proceedings of the 2000 IEEE/RSJ International Conference on IntelligentRobots and Systems, pages 1087–1093, Takamatsu, Japan, October 2000.

C.H. An, C.G Atkeson, and J.M. Hollerbach. Model-Based Control of a RobotManipulator. The MIT press, Cambridge, Massachusetts, 1988.

B. Anderson and J.B. Moore. Optimal Control: Linear Quadratic Methods.Prentice-Hall, Englewood Cliffs, NJ, USA, 1990.

K.J. Åström. The future of control. Modeling, Identification and Control, 15(3):127–134, 1994.

D.S. Bernstein. On bridging the theory/practise gap. IEEE Control Systems Mag-azine, 19(6):64–70, 1999.

F. Caccavale and P. Chiacchio. Identification of dynamic parameters and feedfor-ward control for a conventional industrial manipulator. Control Eng. Practice,2(6):1039–1050, 1994.

A. De Luca. Feedforward/feedback laws for the control of flexible robots. InProceedings of the 2000 IEEE International Conference on Robotics and Au-tomation, pages 233–240, San Francisco, CA, April 2000.

A. De Luca. Dynamic control of robots with joint elasticity. In Proceedings ofthe 1988 IEEE International Conference on Robotics and Automation, pages152–158, Philadelphia, PA, 1988.

A. De Luca and P. Lucibello. A general algorithm for dynamic feedback lineariza-tion of robots with elastic joints. In Proceedings of the 1998 IEEE Interna-tional Conference on Robotics and Automation, pages 504–510, Leuven, Bel-gium, May 1998.

A. Isidori. Nonlinear Control Systems. Springer-Verlag, London, Great Britain,1995.

ISO. ISO 9283:1998, manipulating industrial robots - performance criteria andrelated test methods. http://www.iso.org, 1998.

K.P. Jankowski and H. Van Brussel. An approach to discrete inverse dynamicscontrol of flexible-joint robots. IEEE Transactions on Robotics and Automation,8(5):651–658, October 1992.

T. R. Kane and D. A. Levinson. Dynamics: Theory and Applications. McGraw-Hill Publishing Company, 1985.

M. Lesser. The Analysis of Complex Nonlinear Mechanical Systems: A ComputerAlgebra assisted approach. World Scientific Publishing Co Pte Ltd, Singapore,2000.

Page 268: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

248 Paper E On Feedback Linearization for Tracking Control of Flexible Joint Robots

S. Moberg and S. Hanssen. On feedback linearization for robust tracking controlof flexible joint robots. In Proc. 17th IFAC World Congress, Seoul, Korea, July2008.

S. Nicosia and P. Tomei. On the feedback linearization of robots with elasticjoints. In Proceedings of the 27nd Conference on Decision and Control, pages180–185, Austin, Texas, December 1988.

M.J. Van Nieuwstadt and R.M. Murray. Real-time trajectory generation for differ-entially flat systems. International Journal of Robust and Nonlinear Control, 8(11):995–1020, 1998.

D.B. Ridgely and M.B. McFarland. Tailoring theory to practise in tactical missilecontrol. IEEE Control Systems Magazine, 19(6):49–55, 1999.

P. Rouchon, M. Fliess, J. Lévine, and P. Martin. Flatness, motion planning andtrailer systems. In Proceedings of the 32nd Conference on Decision and Con-trol, pages 2700–2705, San Antonio, Texas, December 1993.

V. Santibanez and R. Kelly. PD control with feedforward compensation for robotmanipulators: analysis and experimentation. Robotica, 19:11–19, 2001.

L. Sciavicco and B. Siciliano. Modeling and Control of Robotic Manipulators.Springer, London, Great Britain, 2000.

J.-J. Slotine and W. Li. Applied Nonlinear Control. Prentice Hall, EnglewoodCliffs, New Jersey, USA, 1991.

M. Spong, S. Hutchinson, and M. Vidyasagar. Robot Modeling and Control. Wiley,2006.

M. W. Spong. Modeling and control of elastic joint robots. Journal of DynamicSystems, Measurement, and Control, 109:310–319, December 1987.

M. Thümmel, M. Otter, and J. Bals. Control of robots with elastic joints based onautomatic generation of inverse dynamic models. In Proceedings of the 2001IEEE/RSJ International Conference in Intelligent Robots and Systems, pages925–930, Maui, Hawaii, USA, October 2001.

E. Wernholt and S. Moberg. Frequency-domain gray-box identification of indus-trial robots. In 17th IFAC World Congress, pages 15372–15380, Seoul, Korea,July 2008.

Page 269: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Paper FA Benchmark Problem for Robust

Feedback Control of a FlexibleManipulator

Authors: Stig Moberg , Jonas Öhr, and Svante Gunnarsson

Edited version of the paper:

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for ro-bust feedback control of a flexible manipulator. IEEE Transactions onControl Systems Technology, 17(6):1398–1405, November 2009.

Page 270: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 271: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

A Benchmark Problem for Robust FeedbackControl of a Flexible Manipulator

Stig Moberg∗ ,†, Jonas Öhr∗∗, and Svante Gunnarsson∗

∗Dept. of Electrical Engineering,Linköping University,

SE–581 83 Linköping, Sweden{stig,svante}@isy.liu.se

†ABB AB,Robotics,

SE-721 68 Västerås, [email protected]

∗∗ABB AB,Crane Systems,

SE-721 59 Västerås, [email protected]

Abstract

A benchmark problem for robust feedback control of a flexible ma-nipulator is presented. The system to be controlled is a four-masssystem subject to input saturation, nonlinear gear elasticity, modeluncertainties, and load disturbances affecting both the motor and thearm. The system should be controlled by a discrete-time controllerthat optimizes performance for given robustness requirements. Foursuggested solutions are presented, and even though the solutions arebased on different design methods, they give comparable results.

1 Introduction

Experiments are essential in control technology research. A method that has beendeveloped by means of realistic experiments has a larger potential to work in re-ality compared to methods that have not. Benchmark problems, often given inthe form of mathematical equations embodied as software simulators togetherwith performance specifications, can serve as substitute for real control experi-ments. A benchmark problem should be sufficiently realistic and complete butalso avoid unmotivated complexity. This paper presents an industrial benchmarkproblem with the intention to stimulate research in the area of robust control offlexible industrial manipulators (robots). Some proposed solutions to this bench-mark problem will also be presented and discussed. The authors hope that thedegree of authenticity is just right and that researchers will take on the problemand eventually propose solutions and methods. An example of a similar (at leastin some parts) benchmark problem is the flexible transmission system presented

251

Page 272: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

252 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

Figure 1: IRB6600ID from ABB equipped with a spot welding gun.

by Landau et al. (1995). Another benchmark problem for controller design isGraebe (1994) where the true system was supplied in the form of scrambled sim-ulation code. However, in the area of robot manipulator control, it is believedthat a realistic and relevant industrial benchmark problem is needed for reasonsstated earlier. This paper is organized as follows. Section 2 presents the originalcontrol problem, and in Section 3, the benchmark problem is presented. An ex-perimental model validation is presented in Section 4. The control design task isdescribed in Section 5, and some suggested solutions are presented in Section 6.

2 Original Control Problem

The most common type of industrial manipulator has six serially mounted links,all controlled by electrical motors via gears. An example of a serial industrial ma-nipulator is shown in Figure 1. The dynamics of the manipulator change rapidlyas the robot links move fast within its working range, and the dynamic couplingsbetween the links are strong. Moreover, the structure is elastic, and the gearshave nonlinearities such as nonlinear elasticity, friction, and backlash. From acontrol engineering perspective, a manipulator can be described as a nonlinearmultivariable dynamical system having six motor currents as inputs and six mea-surable motor angles as outputs. The goal of motion control is to control theorientation and the position of the tool when moving the tool along a certaindesired path.

3 The Benchmark Control Problem

The aim is to formulate a benchmark problem that is sufficiently realistic andcomplete but not too complex. In order to fulfill this aim, some assumptions havebeen made in the formulation of the problem. The most important assumptionsare the following.

Page 273: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 The Benchmark Control Problem 253

Figure 2: Schematic description of the benchmark model.

1. The benchmark problem concerns only the so-called regulator problem,where a feedback controller should be designed such that the actual toolposition is close to the desired reference, in the presence of motor torquedisturbances and disturbances acting on the tool.

2. Only the first axis of a horizontally mounted manipulator will be consid-ered here. The remaining axes are positioned in a fixed configuration suchthat the influence of the nonlinear rigid body dynamics associated with thechange of configuration (operating point), as well as gravity, centripetal,and Coriolis torques, can be neglected. Moreover, the remaining axes arepositioned to minimize the couplings to the first axis. In this way, thecontrol problem concerning the first axis can be approximated as a single-input-single-output (SISO) control problem. A corresponding multivari-able benchmark problem has been formulated and is presented in Moberget al. (2008).

3. The dynamics of the first axis of the robot, including both the actuator andthe arm structure, will be modeled as a four-mass model according to Fig-ure 2, where the moment of inertia of the arm is split up into the threecomponents Ja1, Ja2 and Ja3, and the moment of inertia of the motor is Jm.The assumption that a four-mass model is adequate will be justified in Sec-tion 4. The variables qa1, qa2, and qa3 are angles of the three masses, andtogether, they define the position of the tool. The angles in this model are,however, expressed on the high-speed side of the gear, so to get the real armangles, one must divide the model angles by the gear ratio. The manipula-tor dynamics can hence be described by the set of equations

Jmqm = um + w − fmqm− τgear − d1(qm − qa1), (1)

Ja1qa1 = −fa1qa1 + τgear + d1(qm − qa1)

− k2(qa1 − qa2) − d2(qa1 − qa2), (2)

Ja2qa2 = −fa2qq2 + k2(qa1 − qa2) + d2(qa1 − qa2)

− k3(qa2 − qa3) − d3(qa2 − qa3), (3)

Ja3qa3 = v − fa3qa3+ k3(qa2 − qa3) + d3(qa2 − qa3), (4)

Page 274: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

254 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

−0.08 −0.06 −0.04 −0.02 0 0.02 0.04 0.06 0.08−5

0

5

Delta Position [rad]

Tor

que

[Nm

]

Figure 3: Description of the nonlinear elasticity of the first spring, i.e., be-tween Jm and Ja1. See Figure 2. The spring torque τgear is a nonlinear func-tion of the deflection qm − qa1.

where the spring torque τgear is a nonlinear function of the deflection qm −qa1.

4. The tool position z, which is the controlled variable, can, for small varia-tions around a given working point, be calculated as

z =(l1qa1 + l2qa2 + l3qa3)

r(5)

where r is the gear-ratio and l1, l2, and l3 are distances between the (fictive)masses and the tool.

5. The motor current and torque control is assumed to be ideal so that themotor torque becomes the model input um. This assumption is known tobe reasonable for a modern industrial robot controller. The motor torqueis limited to ±20 Nm, and the torque is applied to the manipulator via azero-order sample-and-hold circuit.

6. The rotating masses are connected via spring-damper pairs. The first spring-damper pair, corresponding to the gear, has linear damping d1 but nonlin-ear elasticity represented by τgear . A typical relationship between deflec-tion and torque is shown in Figure 3. In the simulation model, the non-linear gear elasticity is approximated by a piecewise linear function havingfive segments. The second and third spring-damper pairs are both assumedto be linear and represented by d2, k2, d3, and k3. Note that these spring-damper pairs represent the elasticities of the links and bearings and not ofthe actuated joint.

7. The parameters fm, fa1, fa2, and fa3 represent viscous frictions in the motorand the arm structure, respectively. The gearbox and motor friction effectsare assumed here to be approximately linear. In reality, the friction nor-mally exhibits nonlinear behavior, but, as illustrated in the model valida-tion, the model gives a realistic description of the real system, even thoughthe friction is assumed to be linear. In the multivariable benchmark prob-

Page 275: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Model Validation 255

Table 1: Nominal parameter valuesParameter Value Unit Parameter Value UnitJm 5 · 10−3 kg ·m2 Ja1 2 · 10−3 kg ·m2

Ja2 0.02 kg ·m2 Ja3 0.02 kg ·m2

k1,high 100 Nm/rad k1,low 16.7 Nm/radk1,pos 0.064 rad k2 110 Nm/radk3 80 Nm/rad d1 0.08 Nm · s/radd2 0.06 Nm · s/rad d3 0.08 Nm · s/radfm 6 · 10−3 Nm · s/rad fa1 1 · 10−3 Nm · s/radfa2 1 · 10−3 Nm · s/rad fa3 1 · 10−3 Nm · s/radr 220 l1 20 mml2 600 mm l3 1530 mmTd 0.5 · 10−3 s

lem presented in Moberg et al. (2008), a more complex nonlinear frictionmodel is included.

8. The disturbance torques acting on the motor and tool are denoted by w andv, respectively. The properties of the disturbances will be further discussedin Section 5.1.

9. The measured variable y is the sampled motor angle qm, and this is theonly signal available for the feedback controller (see also Figure 7). Themeasured variable is affected by measurement noise n and one sample timedelay. The discrete-time measured signal is hence given by

y(kT ) = qm(kT − T ) + n(kT ), (6)

where T denotes the sampling interval. The properties of the measurementdisturbance and the time delay are discussed in Sections 5.1 and 5.5, respec-tively. The benchmark problem in this paper does not include the discretiza-tion effects in the A/D and D/A conversions, but these effects are includedin the MIMO benchmark problem presented in Moberg et al. (2008).

The parameter values of the nominal model, which will be denoted by Mnom,are defined in Table 1. For the piecewise linear spring elasticity, only the firstsegment, k1,low, the last segment, k1,high, and the position difference where thelast segment begins, k1,pos, are given.

4 Model Validation

The benchmark model described in Section 3 is based on some simplifying as-sumptions. In order to illustrate that it still is a realistic and relevant model forthe purpose here, some validation experiments will be presented.

Page 276: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

256 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

101

0

10

20

30

40

50

Frequency [Hz]

Mag

nit

ud

e [d

B]

Figure 4: Frequency response function (FRF), from motor torque to motoracceleration, of the (solid) linear model and the (dashed) real robot.

4.1 Frequency Response Estimation And Parameter Tuning

The model has been validated using measurements from the first axis of a robotfrom the ABB IRB6600 series (see Figure 1) using an experimental controller.More details of the procedure are given in Öhr et al. (2006). The validation pro-cedure consists of three main steps. In the first step, a suitable model structureis selected, and here, the model structure is of gray box type, where some of theparameters were known in advance, e.g., motor inertia, total axis inertia, andnonlinear gearbox elasticity. In the second step, the FRF of the real robot was es-timated using experimental data. The frequency response estimate was obtainedby applying a multisine reference to a speed controller of PI type for the firstaxis and measuring the motor position and motor torque. The excitation energywas distributed from 3 to 30 Hz. The FRF was then computed. See, for example,the computation of ETFE in Ljung (1999). In the third step, the remaining un-known parameters were identified by fitting the measured frequency responseof the first robot axis to the frequency response of a linearized version of themodel presented in Section 3 while adjusting the parameters. Examples of pa-rameters identified in this step are the dampers, the remaining springs, and thedistribution of link inertia. Finally, the distribution of the axis length parameterswas adjusted to yield a similar time-domain response for the tool position whenstep disturbances were applied to the system during closed-loop control. Theresulting parameters of the validation model are close to the parameters of thebenchmark model in Table 1. The positions of the second and third robot linkswere chosen to place the tool in the middle of the working area, and the positionsof the last three axes were chosen to minimize the coupling with the first axis.The FRFs of the real robot and the linear model are shown in Figure 4, and it canbe seen that the agreement is good.

Page 277: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 Model Validation 257

0.5 1 1.5 2 2.5−1.5

−1

−0.5

0

0.5

1

1.5

Time [s]

Y P

ositi

on [m

m]

Figure 5: Tool position for a tool step disturbance. (Solid) Nonlinear bench-mark model and (dashed) real robot.

4.2 Disturbance Tests

The benchmark model was also validated by comparing the outputs from themodel with experimental data from the real robot in the presence of disturbances.In the experiments, the first axis of the robot was controlled by using a reasonablytuned PID controller of the same type as the default controller in this benchmarkproblem. All links were controlled with similar controllers. Torque disturbanceswere applied, and the tool position was measured using a Leica laser measure-ment system LTD600 from Leica Geosystems. In the simulation, the benchmarkmodel was simulated in closed loop with the same controller and disturbanceinput as in the real robot system. Figure 5 shows the tool positions of the bench-mark model and the real robot when a tool load is instantaneously released. Thesmall difference between the two output signals is probably due to phenomenasuch as nonlinear damping and friction. The tool position response to a step inmotor torque is shown in Figure 6. Note that some backlash is seen for the realrobot.

4.3 Stability Tests

Finally, the gain margins of the feedback control systems were investigated forboth the real control system and the simulated control system. The gain of thecontroller in the real control system was increased until the stability limit wasreached and the amplitude margin could be determined. A similar experimentwas carried out using the simulated control system, and the amplitude marginof the simulated system was in good correspondence with that of the real system.The conclusion of this, and the previous experiments, is that the suggested modelstructure is valid for its use in this benchmark problem.

Page 278: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

258 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

0.5 1 1.5 2 2.5 30

0.5

1

1.5

2

2.5

Time [s]

Y P

osi

tio

n [

mm

]

Figure 6: Tool position for a motor step disturbance. (Solid) Nonlinearbenchmark model and (dashed) real robot.

Robot

Regulator

w,v,n z

u y

Figure 7: Control system.

5 The Control Design Task

The control problem can schematically be described as in Figure 7, and the taskis to reject the influence of load disturbances as much as possible, and at the sametime avoid too large input signal, and be able to handle variations in the systemdynamics.

5.1 Load And Measurement Disturbances

In reality, an industrial robot is affected by various disturbances. One distur-bance source is the electrical motor itself which generates torque ripple. In thispaper, the ripple is modeled as a load disturbance w acting on the motor, whichmeans the first mass in the model. Other disturbances that can be modeled asinput disturbances on the motor are torque disturbances generated in the geartransmission and possibly also in the torque and current control of the system.Another disturbance source is the external forces that affect the tool during, for

Page 279: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 The Control Design Task 259

0 5 10 15 20 25 30 35 40 45 50

−5

0

5

10

Time [s]

Tor

que

[Nm

]

Figure 8: Torque disturbances on (dashed) motor and (solid) tool.

example, material processing, the release of a load, or forces due to impact invarious types of spot welding. These types of disturbance are modeled as a loaddisturbance v affecting the last mass in the model. In order to capture the var-ious types of disturbances, a specially designed sequence of disturbances willbe used. It consists of torque disturbances acting on the motor and on the toolaccording to Figure 8, and it is a combination of steps, pulses, and sweeping si-nusoids (chirps). These disturbances are meant to be generalizations of variousreal-application-dependent disturbances in order to achieve a general-purposetuning. Finally, the measurement disturbance n is modeled as a band-limited ran-dom noise. Figure 9 shows the tool position when the disturbance sequence inFigure 8 acts on the nominal system and a PID-type controller is used. Figure 10shows the input signal (motor torque) under the same conditions, and here, theinfluence of the measurement disturbance is also evident. The various notationsin Figures 9 and 10 will be used in Section 5.4, where a performance measure isformulated.

5.2 Parameter Variations And Model Sets

The performance of the control systems will be evaluated for both the nominalmodel Mnom, presented in Section 3, and for two sets of models which will bedenoted by M1 and M2, respectively. Figure 11 shows the amplitude curve, fromtorque to angular acceleration, of the FRF of a linearization of the nominal modelMnom. The solid line and dashed lines correspond to the cases when the model islinearized in the stiffest and least stiff region of τgear , respectively. The sets M1and M2 contain ten models each. The set M1 represents relatively small varia-tions of the physical parameters, and the set M2 represents relatively large vari-ations. Figures 12 and 13 show the absolute value of the FRFs of the modelsm ∈ M1 and m ∈ M2, respectively, when they are linearized in the stiffest regionof τgear . Note, however, that, in the simulation model, M1 andM2 also are subjectto the nonlinear gear elasticity τgear . The uncertainty described by M1 can bemotivated by at least five sources of uncertainty, as described in the following.

1. Model structure selection: The real robot is of infinite order, and the choiceof model order always introduces errors. Nonmodeled or incompletelymodeled nonlinearities such as friction and stiffness are other examples.

Page 280: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

260 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

0 5 10 15 20 25 30 35 40 45 50−6

−4

−2

0

2

4

6

Time [s]

Too

l pos

ition

[mm

]e

1

e2

e3

e4

e5

e6

e7

e8

Ts1 T

s2 T

s3 T

s4

Figure 9: Tool position when using PID-control. The parameters e1, . . . , e8denote the peak-to-peak errors, and T 1

s , . . . , T4S denote the settling times used

to form the performance measure in Section 5.4.

0 10 20 30 40 50−10

−5

0

5

Time [s]

Tor

que

[Nm

]

TMAX

TNOISE

Figure 10: Motor torque when using PID control.

Page 281: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 The Control Design Task 261

100

101

102

−20

0

20

40

60

80

Frequency [Hz]

Mag

nitu

de [d

B]

Figure 11: FRF of a linearization of Mnom. (Solid) Stiff region. (Dashed)Least stiff region.

100

101

102

−20

0

20

40

60

80

Frequency [Hz]

Mag

nitu

de [d

B]

Figure 12: FRFs of linearization of the models in the set M1.

100

101

102

−20

0

20

40

60

80

Frequency [Hz]

Mag

nitu

de [d

B]

Figure 13: FRFs of linarizations of the models in the set M2.

Page 282: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

262 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

2. Accuracy of nominal model parameters: Model parameters can be ob-tained by identification or by other types of measurements, and their valuesalways have limited accuracy.

3. Variation of model parameters for individual robots: Friction and stiff-ness are examples of parameters that can differ significantly from one robotindividual to another. Parameters depending on temperature and agingalso belong to this group.

4. Robot installation: The stiffness of the foundation where the robot is moun-ted and the user definition of tool and payload, for example, mass and cen-ter of mass, introduces uncertainty of this type. Elasticity in the tool orpayload increases the uncertainty further.

5. Controller implementation In a real implementation, the controller wouldprobably be time varying by, for example, gain scheduling. Errors due togain scheduling of controllers for different operating points also add to thetotal uncertainty.

The uncertainty described by M2 can be motivated by the fact that a real con-trol system must be stable even for relatively large deviations between the modeland the real manipulator dynamics. It is important to understand that the uncer-tainty is partly a design choice and depends of the actual implementation of therobot control system. One extreme is that the feedback controller has constantparameters for all configurations and all loads, and the other is that an extremelyaccurate model of the robot is implemented in the robot control system. Thismodel can then be used for gain scheduling or directly used in the feedback con-troller. The first extreme would have a considerably larger model set M1 and thesecond extreme would have a smaller set.

5.3 The Design Task

The task of this benchmark problem is to minimize a performance measure by de-signing one or two discrete-time controllers for the systems described previously.The performance measure is described in Section 5.4, and the general require-ments and some implementation constraints are described in Section 5.5. One ofthe controllers must be capable of controlling all the modelsm ∈ Mnom∪M1∪M2whereas the other controller should be able to control Mnom alone. The con-trollers can be linear or nonlinear. In order to investigate how well a controllercan perform when really good models are available, it is recommended to designtwo different controllers, where one is optimized for the control of Mnom only.This controller will, in the sequel, be denoted by C1, and the other will be de-noted by C2. Note that C1 and C2 can be identical, can have the same structure,and differ only by different tuning or can have completely different structure andtuning parameters. The control requirements put on the systems in M1 can bemotivated by the fact that robust performance is required for this level of uncer-tainty. The use of the model set M2 is motivated by robust stability, as describedabove in the previous section.

Page 283: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 The Control Design Task 263

5.4 Performance Measures

From an industrial viewpoint, time-domain performance measures are preferredwhen evaluating the control system. It is then a task for the control designer totranslate these requirements to a form that suits the design method chosen, like,for example, frequency domain norms for H∞ design. Figures 9 and 10 showall the individual performance measures that will be weighted together into onecost function. The measures referring to the controlled output variable, i.e., toolposition, are as follows:

1. peak-to-peak error (e1, . . . , e8);

2. settling times (T 1S , . . . , T

4S ).

Moreover, the measures related to the input signal, i.e., torque, are as follows:

1. maximum value TMAX ;

2. adjusted rms value TRMS ;

3. torque "noise" (peak-to-peak) TNOISE .

Note that TNOISE , which can be caused by measurement noise and/or chatter-ing caused by a discontinuous controller, is measured by the simulation routineswhen the system is at rest but that a good controller would keep the chatter-ing/noise on a decent level also when it operates actively. For the nominal systemMnom, using controller C1, a cost function Vnom is defined as

Vnom =15∑i=1

αiei . (7)

Here, e1, . . . , e8 are the position errors defined in Figure 9, e9, . . . , e12 are the set-tling times T 1

S , . . . , T4S , e13 = TMAX , e14 = TRMS , and e15 = TNOISE . See also

Figure 10. The parameters αi are weights used to stress the relative importanceof the different error components. The values of αi are determined based on in-dustrial experience, and the numerical values used in the benchmark are givenin Table 2. For the set M1, using controller C2, the maximum errors from thesimulations are used, and the cost functions V1 is given by

V1 =15∑i=1

αi maxm∈M1

(ei). (8)

Finally, for the set M2, using controller C2, the maximum errors from the simula-tions are used, and the cost functions V2 is hence defined as

V2 =15∑i=1

αi maxm∈M2

(ei). (9)

Page 284: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

264 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

Figure 14: The Simulink model.

In order to include both the nominal performance and robustness, a total costfunction V is defined as

V = βnomVnom + β1V1 + β2V2, (10)

where the weight βnom and βi are chosen based on industrial experience in orderto obtain a tradeoff between performance and robustness. The numerical valuesused are given in Table 3. It is unavoidable that this type of performance mea-sures will be subjective, but they have been found to be relevant for a generalpurpose robot from an application viewpoint.

5.5 Implementation and Specifications

To evaluate a proposed control design, a set of files has been developed. A controlsystem in the form of a Simulink model has been developed, and it is shown inFigure 14. In the implementation, the following conditions hold:

1. sampling time of 0.5 ms and time delay Td of 0.5 ms;

2. torque saturation limits of ±20 Nm (the saturation in the controller blockshould not be removed).

The control task is formulated as minimizing the overall cost function V in (10)subject to the following conditions:

1. settling times for Mnom (C1) and M1 (C2): T s1,2,3,4 < 3 s and error band±0.1 mm;

2. settling times for M2 (C2): T s1,2,3,4 < 4 s and error band ±0.3 mm

3. torque noise TNOISE < 5 Nm for all systems;

4. stability1 for all systems;

1The stability requirement also includes that limit cycles larger than 10 µm peak-to-peak are notallowed.

Page 285: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 Suggested Solutions 265

5. stability for Mnom when increasing the loop gain by a factor 2.5 for C1 andC2;

6. stability for Mnom when increasing the delay Td from 0.5 ms to 2 ms for C1and C2.

In addition, some conditions, as listed in the following, concerning the imple-mentation have to be considered:

1. Only the controller blocks and the corresponding m-files are allowed to bechanged.

2. No continuous-time blocks are allowed be added.

3. No knowledge of deterministic nature about the noise and disturbances isallowed to be used in the controller.

4. The controller C2 must have the same initial states and parameter valuesfor all the simulations of m ∈ Mnom ∪M1 ∪M2.

The control system and the models are described in detail by the files availablefor download in Moberg (2004). The system comes with a simple PID controller.The Matlab products used are described in, e.g., MathWorks (2003).

6 Suggested Solutions

This benchmark problem was initially presented as the "Swedish Open Champi-onship in Robot Control" and later published in Moberg and Öhr (2005). Onrequest, the benchmark problem was spread outside Sweden. The four most in-teresting solutions were as follows:

A) a QFT controller proposed by P.-O. Gutman, Technion–Israel Institute ofTechnology, Israel;

B) a QFT controller of order 13 proposed by O. Roberto, Uppsala University,Uppsala, Sweden;

C) a polynomial controller proposed by F. Sikström and A.-K. Christiansson,University West, Sweden;

D) a so-called linear sliding mode controller proposed by W.-H. Zhu, CanadianSpace Agency, Saint-Hubert, QC, Canada.

The participants were only asked to deliver the controllers, and no documenta-tion was required. The main point here is not the details of the particular designmethods but the resulting performance and properties of the suggested solution.For solutions A), C), and D), the orders of the controllers are between 3 and 7.The QFT approach and the linear sliding-mode approach are generally describedin Nordin and Gutman (1995) and Zhu et al. (1992), respectively. The polyno-mial controller is optimized for the given cost function, and the optimizationprocedures used are described in MathWorks (1999). The frequency responses

Page 286: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

266 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

10−1

100

101

102

103

30

40

50

60

70

Frequency [Hz]

Ma

gn

itu

de

[d

B]

ABCD

Figure 15: Absolute value of the frequency response of the controllers C2.

10−1

100

101

102

103

−100

−50

0

50

100

150

Frequency [Hz]

Ph

ase

[d

eg

]

A

B

C

D

Figure 16: Argument of the frequency response of the controllers C2.

of the controllers are shown in Figures 15 and 16, and the cost function V1 andthe generalized errors for model set M1 are shown in Table 2. Table 3 shows asummary of the results. The final performance measure, defined by (10), con-tains weights which allow some freedom in the interpretation of the results. Theweights used for computing the performance measure in Table 3 were selected inorder to reflect good performance with respect to the original industrial problem.

The overall shape of the frequency functions of all solutions are similar with aclear lead-lag (PID) character. Solution A differs due to the peak in the magnitudecurve around 10 Hz and the essentially higher high-frequency (above 100 Hz)gain. Tables 2 and 3 show that no solution is, in general, better than all othersolutions. Some differences can be noted, and for example, solution A gives betterperformance measured via several of quantities e1–e8 but higher values for theother measures. The high frequency gain of solution A is also reflected in therelatively high value of TNOISE . The design is clearly a tradeoff between highloop gain to minimize the max error for disturbances on the measured object (the

Page 287: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 Suggested Solutions 267

Table 2: Numerical result for model set M1

Solution A B C D αie1 [mm] 8.22 8.57 9.75 9.11 0.7e2 [mm] 2.56 2.43 3.41 3.22 1.4e3 [mm] 5.39 5.56 5.34 5.28 1.4e4 [mm] 1.58 1.74 2.12 1.77 2.8e5 [mm] 7.78 8.22 9.37 8.64 0.7e6 [mm] 2.82 2.82 4.02 3.68 1.4e7 [mm] 4.88 5.13 4.20 4.59 1.4e8 [mm] 1.40 1.56 1.90 1.57 2.8T s1 [s] 2.04 2.13 1.79 1.68 2.8T s2 [s] 1.25 1.47 1.52 1.05 2.8T s3 [s] 1.04 0.77 0.71 0.77 2.8T s4 [s] 0.95 0.55 0.69 0.71 2.8TNOISE [Nm] 2.67 1.05 1.85 1.66 1.4TMAX [Nm] 12.1 12.0 11.0 11.3 1.4TRMS [Nm] 1.53 1.52 1.43 1.46 3.5V1 82.5 80.8 84.8 80.5

Table 3: Summary of total resultSolution A B C D βVnom 64.6 58.8 64.8 62.0 0.6V1 82.5 80.8 84.8 80.5 1.0V2 82.6 84.2 84.1 81.6 0.3V 146.0 141.4 148.9 142.2

Page 288: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

268 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

10−1

100

101

102

103

30

40

50

60

Frequency [Hz]

Mag

nitu

de [d

B]

10−1

100

101

102

103

−50

0

50

Frequency [Hz]

Pha

se [d

eg]

PIDController D

PIDController D

Figure 17: Frequency response of the original controller D and its PID real-ization.

motor) and a lower loop gain to increase the damping of the lowest mechanicalresonance. Although a high loop gain can minimize the maximum error for atool pulse disturbance, the settling times and the tool chirp disturbance errors areincreased by a high-gain design. This can be seen if solutions A and B (which havethe highest gains in the important frequency interval of 1–10 Hz) are comparedto solutions C and D. The differences in integral gain (affects gain for frequencieslower than 1 Hz) are harder to interpret. One possible interpretation is that highintegral gain does not improve the result significantly since the settling time ismore dependent on the residual mechanical resonance vibrations. Solution B hasthe lowest noise sensitivity, as expected from the high frequency gain.

Inspection of the frequency response of controller D suggests a realization by aPID controller with derivative filter, which means the same structure as the de-fault controller of the benchmark problem. In Figure 17, the frequency responseof a manually tuned PID controller is compared with controller D. The perfor-mance of the PID controller is 143.4. One interesting observation is that thisPID controller has complex zeros and must thus be realized as a parallel PID con-troller (noninteracting). See, for example, Åström and Hägglund (2006). It seemshard to improve the performance further and to reach a performance index below140 by using motor position feedback only. One possibility is to use additionalor improved sensors on the motor side, such as speed sensors or position sensorswith decreased measurement noise. Another possibility is to use additional sen-sors on the arm side measuring acceleration or position sensors for the arm or thetool. In Nordström (2006), a performance index of 105 was reached by using toolacceleration feedback.

Page 289: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

7 Conclusions 269

7 Conclusions

A benchmark problem for robust control has been presented with the purpose offormulating a problem that is industrially relevant in terms of both the systemdescription and the performance requirements. The problem has been based ona model of a four-mass system subject to input saturation, nonlinear gear elastic-ity, model uncertainties, and load disturbances affecting both the motor and thearm. The experiments have shown that the model provides a realistic descriptionof a real industrial manipulator. Four proposed solutions, using different designmethods, have been presented. Although the solutions use different approaches,the resulting performance from all four solutions end up on approximately thesame level. All solutions have a clear PID (lead-lag) character. It is also shownthat a good value of the performance measure (comparable to the suggested solu-tions) can be achieved by a PID controller.

8 Acknowledgments

The authors would like to thank T. Brogårdh, S. Elfving, S. Hanssen, and A. Isaks-son for the valuable support. The authors would also like to thank those whohave contributed to the solutions of the benchmark problem. This work was sup-ported by the Swedish Research Council (VR).

Page 290: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

270 Paper F A Benchmark Problem for Robust Control of a Flexible Manipulator

Bibliography

K.J. Åström and T. Hägglund. Advanced PID Control. ISA - The Instrumentation,Systems and Automation Society, Research Triangle Park, NC, USA, 2006. ISBN1-55617-942-1.

S.F. Graebe. Robust and adaptive control of an unknown plant: A benchmark ofnew format. Automatica, 30(4):567–575, 1994.

I.D. Landau, D. Ray, A. Karimi, A. Voda, and A. Franco. A flexible transmissionsystem as a benchmark for robust digital control. European Journal of Control,1(2):77–96, 1995.

L. Ljung. System Identification: Theory for the User. Prentice Hall, Upper SaddleRiver, New Jersey, USA, 2nd edition, 1999.

MathWorks. MATLAB and Simulink Users Guide. The MathWorks Inc., Natic,Massachusetts, USA, 2003.

MathWorks. MATLAB Optimization Toolbox Users Guide. The MathWorks Inc.,Natic, Mass., 1999.

S. Moberg. Swedish open championships in robot control. www.robustcontrol.org, 2004.

S. Moberg and J. Öhr. Robust control of a flexible manipulator arm: A benchmarkproblem. Prague, Czech Republic, 2005. 16th IFAC World Congress.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust controlof a multivariable nonlinear flexible manipulator. In Proc. 17th IFAC WorldCongress, Seoul, Korea, July 2008.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust feed-back control of a flexible manipulator. IEEE Transactions on Control SystemsTechnology, 17(6):1398–1405, November 2009.

M. Nordin and P.-O. Gutman. Digital QFT design for the benchmark problem.European Journal of Control, 1(2):97–103, 1995.

A. Nordström. Identifiering och reglering av industrirobot med hjälp av ac-celerometer. Master thesis (in swedish), Linköping University, 2006.

J. Öhr, S. Moberg, E. Wernholt, S. Hanssen, J. Pettersson, S. Persson, and S. Sander-Tavallaey. Identification of flexibility parameters of 6-axis industrial manipula-tor models. In Proc. ISMA2006 International Conference on Noise and Vibra-tion Engineering, pages 3305–3314, Leuven, Belgium, September 2006.

W.-H. Zhu, H.-T. Chen, and Z.-J. Zhang. A variable structure robot control algo-rithm with an observer. IEEE Transactions on Robotics and Automation, 8(4):486–492, 1992.

Page 291: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Paper GA Benchmark Problem for Robust

Control of a Multivariable NonlinearFlexible Manipulator

Authors: Stig Moberg , Jonas Öhr, and Svante Gunnarsson

Edited version of the paper:

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robustcontrol of a multivariable nonlinear flexible manipulator. In Proc. 17thIFAC World Congress, Seoul, Korea, July 2008.

Page 292: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering
Page 293: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

A Benchmark Problem for Robust Control ofa Multivariable Nonlinear Flexible

Manipulator

Stig Moberg∗ ,†, Jonas Öhr∗∗, and Svante Gunnarsson∗

∗Dept. of Electrical Engineering,Linköping University,

SE–581 83 Linköping, Sweden{stig,svante}@isy.liu.se

†ABB AB,Robotics,

SE-721 68 Västerås, [email protected]

∗∗ABB AB,Crane Systems,

SE-721 59 Västerås, [email protected]

Abstract

A benchmark problem for robust feedback control of a manipulator ispresented. The system to be controlled is an uncertain nonlinear twolink manipulator with elastic gear transmissions. The gear transmis-sion is described by nonlinear friction and elasticity. The system isuncertain according to a parametric uncertainty description and dueto uncertain disturbances affecting both the motors and the tool. Thesystem should be controlled by a discrete-time controller that opti-mizes performance for given robustness requirements. The controlproblem concerns only disturbance rejection. The proposed model isvalidated by experiments on a real industrial manipulator.

1 Introduction

There exists a gap between control theory and control practise, i.e., many controlmethods suggested by researchers are seldom implemented in real systems and,on the other hand, many important industrial control problems are not studied inthe academic research. This is recognized in, e.g., Åström (1994) where the needfor a balance between theory and practise is expressed. From Bernstein (1999) wequote "I personally believe that the gap on the whole is large and warrants seriousintrospection by the research community". The same article also points out thatthe control practitioners must articulate their needs to the research community,and that motivating the researchers with problems from real applications "can

273

Page 294: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

274 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

have a significant impact on increasing the relevance of academic research toengineering practise".

This paper presents an industrial benchmark problem with the intention to stimu-late research in the area of robust control of flexible industrial manipulators andthus bridging the gap between control theory and practice. The MIMO bench-mark problem presented in this article is an extension of a similar SISO problempresented in Moberg and Öhr (2005). The SISO benchmark model is experimen-tally validated and further described together with an analysis of some suggestedsolutions in Moberg et al. (2007). In summary, the SISO problem can be solvedwith a PID controller and it is in fact hard to improve the performance furtherno matter which controller is used. This is quite a surprising result and now theinvestigation continues. The main difference of the new problem is that the real-ism is increased one step further, not only by making the problem multivariable,but also by adding some nonlinearities ignored in the previous benchmark.

The paper is organized as follows. Section 2 presents the control problem, andSection 3 presents the nonlinear manipulator model. Section 4 describes the com-plete benchmark system, and the proposed model structure is validated by exper-iments on a real industrial manipulator in Section 5. Finally, the control designtask is presented in Section 6.

2 Problem Description

The most common type of industrial manipulator has six serially mounted links,all controlled by electrical motors via gears. An example of a serial industrial ma-nipulator is shown in Figure 1. The dynamics of the manipulator change rapidlywhen the robot links move fast within the manipulator workspace, and the dy-namic couplings between the links are in general strong. Moreover, the structureis elastic and the gears have nonlinearities such as hysteresis, backlash, frictionand nonlinear elasticity. From a control engineering perspective a manipulatorcan be described as a nonlinear multivariable dynamical system having the sixmotor currents as the inputs and the six motor angles as measurable outputs.The main objective of the motion control is, however, to control the orientationand the position of the tool when moving the tool along a certain desired path.

The benchmark problem described in this paper concerns only the so-called regu-lator problem, where a feedback controller should be designed such that the toolposition is close to the desired reference, in the presence of motor torque distur-bances, e.g., motor torque ripple, and force disturbances acting on the tool, e.g.,during material processing. Only the second and third links of the manipulatorwill be included in the benchmark model. These links are chosen in order toget a strong dynamic coupling. The model will include the nonlinear rigid bodydynamics associated with the change of configuration (link positions) as well asgravity, centripetal and Coriolis torques. Moreover, the nonlinear elasticity andfriction of the gear transmissions will be included in the model.

Page 295: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 The Manipulator Model 275

Figure 1: IRB6600 from ABB equipped with a spot welding gun.

The rationale behind the different choices in the problem design is that a bench-mark problem should be sufficiently realistic and complete to act as a substitutefor real control experiments. However, the number of researchers who will havetime and resources to take on the problem and propose solutions and methods,will certainly decrease with increased problem complexity. If reference trackingwas included in the problem specification and/or if all links of an industrial ma-nipulator were included in the model, both the realism and the complexity of theproblem would increase. The suggested benchmark problem is hopefully a goodtrade-off.

3 The Manipulator Model

The two link manipulator is a model of link 2 and 3 for a typical large industrialrobot, see Figure 1. The model is planar, i.e., all movements are constrained tothe x,z plane. The model is illustrated in Figure 2. In the following, the links aredenoted as link 1 and link 2. Each link has the following rigid body attributes:

• mass m1 and m2

• link length l1 and l2

• center of mass ξ1 and ξ2 (distances from the centers of rotation)

• inertia w.r.t. center of mass j1 and j2

The links are actuated by electrical motors, connected to the links via elasticjoints. The joints (gear transmissions) are described by the nonlinear spring

Page 296: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

276 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

Figure 2: A two link robot model.

torque τs(q), the linear damping matrix D, the friction torque f (q), and the gearratios (n1 and n2). The motors are described by their inertias jm1 and jm2. Thereare two degrees of freedom (DOF) for each axis described by the motor angularpositions qm1, qm2 and link angular positions qa1, qa2. The control signals are themotor torques um1 and um2, which are subject to saturation. The motor torquecontrol is modeled as a gain uncertainty γ and a time delay Td1. The only mea-sured output signals are the motor angular positions, and these are subject tomeasurement noise and a time delay Td2. This time delay is motivated by thecomputational and communication delay. Two sources of disturbance are actingon the system. A force F is applied at the tool center point (TCP) at angle φF anda motor torque disturbance is applied as input disturbance signals ud1 and ud2.The angular positions and the model inputs are described by

q =

qa1qa2

qm1/n1qm2/n2

, u =

ua1ua2

(um1 + ud1)n1(um2 + ud2)n2

. (1)

The manipulator is described by its dynamics

u = M(q)q + C(q, q) + G(q) + Dq + τs(q) + f (q). (2)

The inertial coupling between the motor and link rotation is neglected due tothe high gear ratio, see, e.g., Spong (1987). The inertia matrix M, gravity vectorG and vector of speed dependent torques (Coriolis and centripetal) C can then

Page 297: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

3 The Manipulator Model 277

easily be derived as (see, e.g., Sciavicco and Siciliano (2000))

M(q) =

J11(q) J12(q) 0 0J21(q) J22(q) 0 0

0 0 jm1n21 0

0 0 0 jm2n22

, (3a)

J11(q) = j1 + m1ξ21 + j2 + m2(l21 + ξ2

2 − 2l1ξ2 sin qa2), (3b)

J12(q) = J21(q) = j2 + m2(ξ22 − l1ξ2 sin qa2), (3c)

J22(q) = j2 + m2ξ22 , (3d)

and

G(q) =[g1(q) g2(q) 0 0

]T, (4a)

g1(q) = −g(m1ξ1 sin(qa1)+

m2(l1 sin(qa1) + ξ2 cos(qa1 + qa2))), (4b)

g2(q) = −m2ξ2g cos(qa1 + qa2), (4c)

C(q, q) =

−m2l1ξ2 cos(qa2)(2qa1qa2 + q2

a2)m2l1ξ2 cos(qa2)q2

a100

, (4d)

where g is the gravitational constant. The nonlinear spring torque is given by

τs(q) =

τs1(∆q1)τs2(∆q2)τs1(−∆q1)τs2(−∆q2)

, (5a)

∆qi = qai − qmi /ni , i = 1 . . . 2. (5b)

with

τsi = ki1∆qi + ki3∆3qi , |∆qi | ≤ ψi , (6a)

τsi = sign(∆qi)(mi0 + mi1(|∆qi | − ψi)), |∆qi | > ψi , (6b)

ki1 = klowi , (6c)

ki3 = (khighi − klowi )/(3ψ2i ), (6d)

mi0 = ki1ψi + ki3ψ3i , (6e)

mi1 = khighi . (6f)

The nonlinear stiffness (elasticity) is then specified by the lowest stiffness klowi ,

the highest stiffness khighi , and the breakpoint deflection ψi , see Figure 3. The

Page 298: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

278 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5

−600

−400

−200

0

200

400

600

Delta Position [arcmin]

Tor

que

[Nm

]k

ilow

kihigh

ψi

−ψi

Figure 3: Example of nonlinear stiffness (elasticity).

−100 −50 0 50 100−2

0

2

Speed [rad/s]

Fri

ctio

n T

orq

ue

[Nm

]

Figure 4: Example of nonlinear friction torque (on motor side, i.e., fi(q)/ni).

linear damping matrix is

D =

d1 0 −d1 00 d2 0 −d2−d1 0 d1 0

0 −d2 0 d2

. (7)

The nonlinear friction torque, see Figure 4, is approximated as acting on the mo-tor only and is given by the following equation

f (q) =[0 0 f1(q) f2(q)

]T, (8)

where

fi(q) = ni(fvi qmi + fci(µki + (1 − µki) ·

cosh−1(βi qmi)) tanh(αi qmi)), i = 1 . . . 2. (9)

This smooth friction model is suggested in Feeny and Moon (1994) and avoids dis-continuities to simplify numerical integration. The TCP position X is described

Page 299: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

4 The Benchmark System 279

Figure 5: A block diagram of the benchmark system.

by the kinematics

X = Γ (q) =[x(q)z(q)

]=

[l1 sin(qa1) + l2 cos(qa1 + qa2)l1 cos(qa1) − l2 sin(qa1 + qa2)

]. (10)

The relation between the disturbance force F and joint torques ua is given by thevelocity Jacobian J(qa) as

ua = JT (qa)F, ua =[ua1ua2

], F =

[F cos(φF)F sin(φF)

], (11)

J(qa) =[∂Γ (qa)∂qa

]=

[l1 cos(qa1) − l2 sin(qa1 + qa2) −l2 sin(qa1 + qa2)−l1 sin(qa1) − l2 cos(qa1 + qa2) −l2 cos(qa1 + qa2)

]. (12)

4 The Benchmark System

The benchmark system consists of the manipulator model P described in Section3 and a feedback controller G as illustrated in Figure 5. The model uncertaintydescription is parametric and expressed as uncertainty in some of the physicalparameters. The friction and stiffness uncertainties are motivated by modelingerrors and differences between the gearbox individuals. The mass uncertainty isdue to errors in the definition of the user loads attached to the manipulator andthe gain error reflects to the accuracy of the torque control.

The discrete-time controller G is implemented with sample time Ts, time delayTd and a control signal limitation umaxm . The time delay includes both the delayof the torque control and the computational and communication delay describedin Section 3, i.e., Td = Td1 + Td2. The DA and AD conversions are modeled by a12 bit quantization of the output torque and a 16 bit quantization of the motorposition.

The system is influenced by the following uncertain disturbances: a measurementnoise n with power Pn, a disturbance force F in direction φF applied at t1 and re-leased at t2 and finally a motor torque disturbance ud applied from t3 to t4. F canbe applied in any direction and the torque disturbance ud is a chirp with ampli-

Page 300: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

280 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

tude Ac, start frequency fcs and end frequency fce. The motor torque disturbanceis motivated by internally generated ripple disturbances due to the design of themotors and the gear boxes. These disturbances have frequency components pro-portional to the motor speed and can cause significant position errors in somefrequency regions. The force disturbance is motivated by various externally gen-erated disturbances, e.g., the release of a load, forces due to material processing,or forces due to the impact at spot-welding. The force disturbance pulse servesas a generalization of all real application-specific disturbances. The manipulatormodel parameters are listed in Table 1, and the controller- and disturbance pa-rameters, are listed in Table 2. The uncertainty descriptions are included in theTables. The parameters with no axis index are the same for both axes althoughthe uncertainty is independent for each parameter. The parameter values andthe uncertainties are known (by experience) to be realistic, although the exactcombination of parameters used do not correspond to a specific industrial robot.

The benchmark system, available for download, has a discrete-time diagonal PIDcontroller with derivative filter described by the transfer function

Gpid(z) =[g11(z) 0

0 g22(z)

], (13)

where

gii(z) = K ip + K idz − 1Tsz

(1 − zip)z

z − zip+K ii Tsz

z − 1. (14)

The PID controller should only be seen as an example of a controller yielding astable system and does not represent an optimal design.

5 Model Validation

In this section the model proposed in Section 3 is validated by experiments madeon the second and third links of an industrial robot from ABB, using an experi-mental controller. All model parameters, except the α parameters of the frictionmodel (9) and the damping D in (7), were known with sufficient accuracy. Theconfiguration of the wrist, i.e., axis 4 - 6, was chosen to minimize the couplingbetween the modeled links and the wrist. The robot links were controlled witha diagonal PID controller of the same type as the default controller of the bench-mark system.

In the first experiment a tool load was instantaneous released, i.e., a step distur-bance force was applied. The tool response was measured using a laser measure-ment system LTD600 described in Leica (2007). The elasticity of the model wasthen tuned w.r.t. the transient response. The resulting elasticity was somewhatlower than the known elasticity of the gear boxes. This was expected since amodern industrial robot cannot be fully modeled by the so-called flexible jointapproach, see, e.g., Moberg and Hanssen (2007). The damping was set to a rea-sonable value, in fact, the response of the controlled system is quite insensitive

Page 301: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

5 Model Validation 281

Table 1: Manipulator Model Parameters.

Parameter Value Unit Uncertaintyjm1 0.004 kg ·m2

jm2 0.001 kg ·m2

j1 5 kg ·m2

j2 50 kg ·m2

m1 50 kg ±10 %m2 150 kg ±10 %l1 1.0 ml2 1.5 mξ1 0.5 mξ2 0.8 mn 200klow1 0.5 · 106 Nm/rad ±20 %

khigh1 1.5 · 106 Nm/rad ±20 %ψ1 2 arcmin ±20 %klow2 0.2 · 106 Nm/rad ±20 %

khigh2 0.6 · 106 Nm/rad ±20 %ψ2 3 arcmin ±20 %d1 600 Nm · s/rad ±20 %d2 200 Nm · s/rad ±20 %fv1 0.006 Nm · s/rad ±80 %fc1 1.5 Nm ±80 %fv2 0.003 Nm · s/rad ±80 %fc2 1.0 Nm ±80 %µ 0.5 ±50 %β 0.4 ±50 %α 5g 9.81 m/s2

Page 302: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

282 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

Table 2: Controller- and Disturbance Parameters.

Parameter Value Unit Uncertaintyγ 1 ±10 %Pn 3 · 10−12

F 500 NφF π rad ±πt1 10 st2 10.5 sAc1 1 NmAc2 −1 Nmt3 0.5 s ±0.5 st4 8 sfcs 0 or 15 Hz random choicefce 0 or 15 Hz random choiceTs 0.25 · 10−3 sTd 0.25 · 10−3 sumaxm1 35 Nmumaxm2 20 NmK1p 45

K1i 30

K1d 1.5

K2p 15

K2i 10

K2d 0.5

zp 0.95

Page 303: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 The Design Task: Performance Specification and Cost Function 283

4 4.5 5 5.5 60

0.5

1

1.5

2

Time [s]

To

tal P

osi

tio

n E

rro

r [m

m]

Simulation ModelReal Robot

Figure 6: The tool position error for a tool step force disturbance.

to the damping. The remaining unknown model parameter, α, was tuned w.r.t.the measured response. Note that the factor tanh(αqm) in (9) approximates thediscontinuous friction behavior at zero speed and cannot be directly measured.The result is shown in Figure 6. The experiment was repeated for a number ofcontroller tunings with good correspondence between simulation model and realrobot.

In the second experiment, a chirp torque disturbance ud was added to the controlsignal while the manipulator was moving at a low speed. This is motivated bythe fact that internally generated torque disturbances are present only when therobot is moving and that the nonlinear friction at zero speed otherwise wouldreduce the effect of the disturbance, e.g., no movement would be generated if thedisturbance level was below the Coulomb friction level. Moving the manipulatorat a low speed thus linearizes the system w.r.t. friction and the robot responsecan thus be compared with the model response when the nonlinear friction, fc,is set to zero. This comparison is shown in Figure 7 and the correspondence isgood. In the benchmark problem, the chirp disturbance is applied at zero speed.This choice was made to avoid introduction of a reference signal and is justifiedby the fact that the relative disturbance rejection at zero speed also reflects thedisturbance rejection when moving.

The third validation experiment concerned the stability margin of the model. Theloop gain of the robot system was increased for one channel at a time until thestability limit was reached. The experimentally determined amplitude marginwas in good agreement with the one of the simulated system.

6 The Design Task: Performance Specification andCost Function

Design a discrete-time controller to control the manipulator in the entire manip-ulator workspace defined by qa1 ∈ [−90◦ . . . 180◦] and qa2 ∈ [−180◦ . . . 80◦]. The

Page 304: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

284 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

5 6 7 8 9 10 11 120

0.2

0.4

0.6

Time [s]

To

tal P

osi

tio

n E

rro

r [m

m]

Figure 7: The tool position error for a motor torque disturbance of chirptype.

controller can be of any kind, e.g., linear or non-linear, diagonal or full-matrix,time-invariant or gain scheduled. The controller inputs are the measured motorpositions and constant motor position references. The motor position referencesqrefm and the initial gravity torques may be used for initializing the controller. The

motor position given as reference represents a steady-state solution at the desiredlink position, i.e., the differences between the motor and link initial state is equalto the gravity deflection.

The designed controller should replace the default PID controller, but the sys-tem described in Section 4 must otherwise be unchanged. For all configurationsinside the workspace, for all systems and disturbances in the uncertainty descrip-tion, the following requirements concerning stability must be fulfilled:

• A1: The system must remain stable for a loop gain increase of a factor of 2.5(one channel at a time).

• A2: The system must remain stable for a delay increase of 1.5 ms (one chan-nel at a time).

• A3: Maximum limit cycle peak amplitude in TCP position must be lowerthan 10 µm for all test cases including the stability tests A1 and A2.

The following requirements are to be regarded as target values for the design:

• B1: Maximum motor torque due to measurement noise axis 1: 0.7 Nm

• B2: Maximum motor torque due to measurement noise axis 2: 0.4 Nm

• B3: Maximum motor torque axis 1: 35 Nm

• B4: Maximum motor torque axis 2: 20 Nm

• B5: Max TCP position error due to force disturbance: 7 mm

• B6: Max TCP settling time, i.e., error < 0.1 mm, after end of force distur-bance pulse: 3 s

Page 305: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 The Design Task: Performance Specification and Cost Function 285

• B7: Max TCP position error due to motor torque disturbance: 0.5 mm

Note that the dynamics of the manipulator varies with the tool position and alsodue to the uncertainty of the manipulator model. Furthermore, the disturbancesare also uncertain, the force can have any direction and the motor torque ripplecan also change direction.

At each configuration Qk =[qa1 qa2

]T, the following cost function is defined

Vk =7∑i=1

wi maxP ,D

(bi), (15)

where P is a set containing all manipulator models obtained from the uncertaintydescription and D is the corresponding set for the disturbances. The relativefulfillment of specification Bi is denoted bi , e.g., a settling time of 2 s gives b6 =2/3. The weights wi are

[3 3 2 2 25 40 25

], i.e., a controller which fulfils

all requirements exactly, has a cost function V = 100. The design should aim atminimizing the average cost function

V =1NQ

NQ∑k=1

Vk , (16)

where the performance is evaluated for a suitable grid ofNQ configurations in themanipulator work space. The problem of computing the average (w.r.t. workspace)worst case (w.r.t. uncertainty) performance for a non-linear system might seemhard from a theoretical point of view. However, a wisely chosen grid of configura-tions and a set of assumed worst case uncertainties in combination with some ran-dom uncertainties yields a reasonable approximation of the average worst caseperformance.

The simulation model including the default PID controller is available for down-load at Moberg (2007) where some additional information about this benchmarkproblem also can be found. The simulation model is implemented in MatlabTM

and SimulinkTM. The approximate average worst case performance for the pro-posed controller is computed by the model. This computation is based on a pre-defined set of uncertainties and configurations. Solutions to the problem can besent to one of the authors for further evaluation. Our plan is that the proposedsolutions shall be presented and discussed at, e.g., an invited session at someappropriate future conference.

The target requirements due to force disturbances are illustrated in Figure 8. InFigures 9 - 10, the TCP position errors are shown for the nominal manipulatormodel controlled by the default PID controller when one example disturbanceis applied. The result for 20 uncertain systems, i.e., 20 sets of model and dis-turbance uncertainties, in one specific position, is shown in Figures 11 - 12.

As an example of computation of the average worst case performance, the bench-

Page 306: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

286 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

−10 0 10

−5

0

5

x [mm]z

[mm

]

Figure 8: Target for disturbance rejection w.r.t. tool force disturbance. TCPshall always be inside the large circle, and be inside the small circle aftertarget settling time. Note that the small circle in this figure is enlarged forillustration purposes. The actual radius is 0.1 mm.

10 11 12 13 140

2

4

6

8

Time [s]

Err

or

[mm

]

Figure 9: Example of TCP position error due to force disturbance.

0 2 4 6 8 100

0.5

1

Time [s]

Err

or

[mm

]

Figure 10: Example of TCP position error due to motor torque disturbance.

Page 307: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

6 The Design Task: Performance Specification and Cost Function 287

Figure 11: Example of TCP position error for uncertain system due to forcedisturbance.

Figure 12: Example of TCP position error for uncertain system due to motortorque disturbance.

Page 308: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

288 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

Table 3: Average worst case performance of default PID controller.

Item Result for PID Desired ValueB1 0.17 0.7B2 0.06 0.4B3 9.6 35B4 9.1 20B5 10.2 7B6 3.5 3B7 1.1 0.5V 141 100

mark system, controlled by the default PID controller, was simulated over a gridof 18 configurations. At each configuration, 3 uncertain systems were evaluated.The target values concerning disturbance rejection, B5 - B7, are in general notfulfilled. The performance is summarized in Table 3.

7 Summary

A benchmark problem treating disturbance rejection for a nonlinear flexible two-link manipulator has been presented. The system is uncertain due to a paramet-ric uncertainty description and uncertain disturbances affecting both the motorsand the tool. The proposed model was validated on a real industrial manipulator.The system should be controlled by a discrete-time controller that optimizes per-formance for given robustness requirements. Our ambition and hope is that someresearchers will be stimulated to work with this benchmark problem using theirfavorite controller design method. The proposed solutions will be presented atsome appropriate future event.

8 Acknowledgements

The authors would like to thank Sven Hanssen and Sören Quick at ABB Roboticsfor valuable help and support.

Page 309: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

Bibliography 289

Bibliography

K.J. Åström. The future of control. Modeling, Identification and Control, 15(3):127–134, 1994.

D.S. Bernstein. On bridging the theory/practise gap. IEEE Control Systems Mag-azine, 19(6):64–70, 1999.

B. Feeny and F.C. Moon. Chaos in a forced dry-friction oscillator: Experimentsand numerical modelling. Journal of Sound and Vibration, 170(3):303–323,1994.

Leica. Leica geosystems laser trackers. www.leica-geosystems.com, 2007.

S. Moberg. Robust control of a multivariable nonlinear flexible manipulator - abenchmark problem. www.robustcontrol.org, 2007.

S. Moberg and S. Hanssen. A DAE approach to feedforward control of flexiblemanipulators. In Proc. 2007 IEEE International Conference on Robotics andAutomation, pages 3439–3444, Roma, Italy, April 2007.

S. Moberg and J. Öhr. Robust control of a flexible manipulator arm: A benchmarkproblem. Prague, Czech Republic, 2005. 16th IFAC World Congress.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust feedbackcontrol of a flexible manipulator. Technical Report LiTH-ISY-R-2820, Depart-ment of Electrical Engineering, Linköping University, SE-581 83 Linköping,Sweden, 2007. Submitted to IEEE Transactions on Control Systems Technol-ogy.

S. Moberg, J. Öhr, and S. Gunnarsson. A benchmark problem for robust controlof a multivariable nonlinear flexible manipulator. In Proc. 17th IFAC WorldCongress, Seoul, Korea, July 2008.

L. Sciavicco and B. Siciliano. Modeling and Control of Robotic Manipulators.Springer, London, Great Britain, 2000.

M. W. Spong. Modeling and control of elastic joint robots. Journal of DynamicSystems, Measurement, and Control, 109:310–319, December 1987.

Page 310: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

290 Paper G A Benchmark Problem for Robust Control of a Multivariable Manipulator

Page 311: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

PhD DissertationsDivision of Automatic Control

Linköping University

M. Millnert: Identification and control of systems subject to abrupt changes. ThesisNo. 82, 1982. ISBN 91-7372-542-0.A. J. M. van Overbeek: On-line structure selection for the identification of multivariablesystems. Thesis No. 86, 1982. ISBN 91-7372-586-2.B. Bengtsson: On some control problems for queues. Thesis No. 87, 1982. ISBN 91-7372-593-5.S. Ljung: Fast algorithms for integral equations and least squares identification problems.Thesis No. 93, 1983. ISBN 91-7372-641-9.H. Jonson: A Newton method for solving non-linear optimal control problems with gen-eral constraints. Thesis No. 104, 1983. ISBN 91-7372-718-0.E. Trulsson: Adaptive control based on explicit criterion minimization. Thesis No. 106,1983. ISBN 91-7372-728-8.K. Nordström: Uncertainty, robustness and sensitivity reduction in the design of singleinput control systems. Thesis No. 162, 1987. ISBN 91-7870-170-8.B. Wahlberg: On the identification and approximation of linear systems. Thesis No. 163,1987. ISBN 91-7870-175-9.S. Gunnarsson: Frequency domain aspects of modeling and control in adaptive systems.Thesis No. 194, 1988. ISBN 91-7870-380-8.A. Isaksson: On system identification in one and two dimensions with signal processingapplications. Thesis No. 196, 1988. ISBN 91-7870-383-2.M. Viberg: Subspace fitting concepts in sensor array processing. Thesis No. 217, 1989.ISBN 91-7870-529-0.K. Forsman: Constructive commutative algebra in nonlinear control theory. ThesisNo. 261, 1991. ISBN 91-7870-827-3.F. Gustafsson: Estimation of discrete parameters in linear systems. Thesis No. 271, 1992.ISBN 91-7870-876-1.P. Nagy: Tools for knowledge-based signal processing with applications to system identi-fication. Thesis No. 280, 1992. ISBN 91-7870-962-8.T. Svensson: Mathematical tools and software for analysis and design of nonlinear controlsystems. Thesis No. 285, 1992. ISBN 91-7870-989-X.S. Andersson: On dimension reduction in sensor array signal processing. Thesis No. 290,1992. ISBN 91-7871-015-4.H. Hjalmarsson: Aspects on incomplete modeling in system identification. Thesis No. 298,1993. ISBN 91-7871-070-7.I. Klein: Automatic synthesis of sequential control schemes. Thesis No. 305, 1993.ISBN 91-7871-090-1.J.-E. Strömberg: A mode switching modelling philosophy. Thesis No. 353, 1994. ISBN 91-7871-430-3.K. Wang Chen: Transformation and symbolic calculations in filtering and control. ThesisNo. 361, 1994. ISBN 91-7871-467-2.T. McKelvey: Identification of state-space models from time and frequency data. ThesisNo. 380, 1995. ISBN 91-7871-531-8.J. Sjöberg: Non-linear system identification with neural networks. Thesis No. 381, 1995.ISBN 91-7871-534-2.R. Germundsson: Symbolic systems – theory, computation and applications. ThesisNo. 389, 1995. ISBN 91-7871-578-4.

Page 312: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

P. Pucar: Modeling and segmentation using multiple models. Thesis No. 405, 1995.ISBN 91-7871-627-6.H. Fortell: Algebraic approaches to normal forms and zero dynamics. Thesis No. 407,1995. ISBN 91-7871-629-2.A. Helmersson: Methods for robust gain scheduling. Thesis No. 406, 1995. ISBN 91-7871-628-4.P. Lindskog: Methods, algorithms and tools for system identification based on priorknowledge. Thesis No. 436, 1996. ISBN 91-7871-424-8.J. Gunnarsson: Symbolic methods and tools for discrete event dynamic systems. ThesisNo. 477, 1997. ISBN 91-7871-917-8.M. Jirstrand: Constructive methods for inequality constraints in control. Thesis No. 527,1998. ISBN 91-7219-187-2.U. Forssell: Closed-loop identification: Methods, theory, and applications. Thesis No. 566,1999. ISBN 91-7219-432-4.A. Stenman: Model on demand: Algorithms, analysis and applications. Thesis No. 571,1999. ISBN 91-7219-450-2.N. Bergman: Recursive Bayesian estimation: Navigation and tracking applications. ThesisNo. 579, 1999. ISBN 91-7219-473-1.K. Edström: Switched bond graphs: Simulation and analysis. Thesis No. 586, 1999.ISBN 91-7219-493-6.M. Larsson: Behavioral and structural model based approaches to discrete diagnosis. The-sis No. 608, 1999. ISBN 91-7219-615-5.F. Gunnarsson: Power control in cellular radio systems: Analysis, design and estimation.Thesis No. 623, 2000. ISBN 91-7219-689-0.V. Einarsson: Model checking methods for mode switching systems. Thesis No. 652, 2000.ISBN 91-7219-836-2.M. Norrlöf: Iterative learning control: Analysis, design, and experiments. Thesis No. 653,2000. ISBN 91-7219-837-0.F. Tjärnström: Variance expressions and model reduction in system identification. ThesisNo. 730, 2002. ISBN 91-7373-253-2.J. Löfberg: Minimax approaches to robust model predictive control. Thesis No. 812, 2003.ISBN 91-7373-622-8.J. Roll: Local and piecewise affine approaches to system identification. Thesis No. 802,2003. ISBN 91-7373-608-2.J. Elbornsson: Analysis, estimation and compensation of mismatch effects in A/D convert-ers. Thesis No. 811, 2003. ISBN 91-7373-621-X.O. Härkegård: Backstepping and control allocation with applications to flight control.Thesis No. 820, 2003. ISBN 91-7373-647-3.R. Wallin: Optimization algorithms for system analysis and identification. Thesis No. 919,2004. ISBN 91-85297-19-4.D. Lindgren: Projection methods for classification and identification. Thesis No. 915,2005. ISBN 91-85297-06-2.R. Karlsson: Particle Filtering for Positioning and Tracking Applications. Thesis No. 924,2005. ISBN 91-85297-34-8.J. Jansson: Collision Avoidance Theory with Applications to Automotive Collision Mitiga-tion. Thesis No. 950, 2005. ISBN 91-85299-45-6.E. Geijer Lundin: Uplink Load in CDMA Cellular Radio Systems. Thesis No. 977, 2005.ISBN 91-85457-49-3.M. Enqvist: Linear Models of Nonlinear Systems. Thesis No. 985, 2005. ISBN 91-85457-64-7.T. B. Schön: Estimation of Nonlinear Dynamic Systems — Theory and Applications. The-sis No. 998, 2006. ISBN 91-85497-03-7.

Page 313: Modeling and Control of Flexible Manipulators...Modeling and Control of Flexible Manipulators Stig Moberg stig@isy.liu.se Division of Automatic Control Department of Electrical Engineering

I. Lind: Regressor and Structure Selection — Uses of ANOVA in System Identification.Thesis No. 1012, 2006. ISBN 91-85523-98-4.J. Gillberg: Frequency Domain Identification of Continuous-Time Systems Reconstruc-tion and Robustness. Thesis No. 1031, 2006. ISBN 91-85523-34-8.M. Gerdin: Identification and Estimation for Models Described by Differential-AlgebraicEquations. Thesis No. 1046, 2006. ISBN 91-85643-87-4.C. Grönwall: Ground Object Recognition using Laser Radar Data – Geometric Fitting,Performance Analysis, and Applications. Thesis No. 1055, 2006. ISBN 91-85643-53-X.A. Eidehall: Tracking and threat assessment for automotive collision avoidance. ThesisNo. 1066, 2007. ISBN 91-85643-10-6.F. Eng: Non-Uniform Sampling in Statistical Signal Processing. Thesis No. 1082, 2007.ISBN 978-91-85715-49-7.E. Wernholt: Multivariable Frequency-Domain Identification of Industrial Robots. ThesisNo. 1138, 2007. ISBN 978-91-85895-72-4.D. Axehill: Integer Quadratic Programming for Control and Communication. ThesisNo. 1158, 2008. ISBN 978-91-85523-03-0.G. Hendeby: Performance and Implementation Aspects of Nonlinear Filtering. ThesisNo. 1161, 2008. ISBN 978-91-7393-979-9.J. Sjöberg: Optimal Control and Model Reduction of Nonlinear DAE Models. ThesisNo. 1166, 2008. ISBN 978-91-7393-964-5.D. Törnqvist: Estimation and Detection with Applications to Navigation. Thesis No. 1216,2008. ISBN 978-91-7393-785-6.P-J. Nordlund: Efficient Estimation and Detection Methods for Airborne Applications.Thesis No. 1231, 2008. ISBN 978-91-7393-720-7.H. Tidefelt: Differential-algebraic equations and matrix-valued singular perturbation.Thesis No. 1292, 2009. ISBN 978-91-7393-479-4.H. Ohlsson: Regularization for Sparseness and Smoothness — Applications in SystemIdentification and Signal Processing. Thesis No. 1351, 2010. ISBN 978-91-7393-287-5.