You are on page 1of 184

Modelling and Simulation Techniques

for Advanced Robotic Systems

UNIVERSITA’ DEGLI STUDI


DI GENOVA

Mariapaola D’Imperio

Advanced Robotics Department


Istituto Italiano di Tecnologia - University of Genoa

This dissertation is submitted for the degree of


Doctor of Philosophy

Istituto Italiano di Tecnologia April 2016


Thesis supervisors

• Dr. Luca Carbonari


Post Doc
Department of Industrial Engineering and Mathematical Sciences
Faculty of Engineering
Università Politecnica delle Marche

• Dr. Carlo Canali


Post Doc
Advanced Industrial Automation Lab
Advanced Robotics Department
Istituto Italiano di Tecnologia (IIT)

• Prof. Gustavo Medrano A. Cerda


Senior Researcher
Advanced Robotics Department
Istituto Italiano di Tecnologia (IIT)

• Dr. Ferdinando Cannella


Header
Advanced Industrial Automation Lab
Advanced Robotics Department
Istituto Italiano di Tecnologia (IIT)

• Prof. Darwin G. Caldwell


Director
Advanced Robotics Department
Istituto Italiano di Tecnologia (IIT)
Alla mia famiglia, fonte inesauribile di energia.
Acknowledgements

There are a lot of people to whom I want to express my gratitude for their constant presence in
my life during these years. Immeasurable appreciation and deepest gratitude for the help and
support are extended to the following persons who in one way or another have contributed in
making this dream come true.
My dad, my mum and my brother for their love and their unlimited patience. They were,
and they are my constant source of encouragement and enthusiasm.
Prof. Darwin G. Caldwell for having given to me the possibility of being a student at the
Istituto Italiano di Tecnologia.
Dr. Ferdinando Cannella for letting me jump on board of the most interesting, crazy,
complex experience of my life, thrusting in me since the first moment we worked together.
All the AIAL teem members for being friends more than colleagues, specially for
supporting me during stressful and difficult moments and for sharing a lot of happy times
together.
Dr. Luca Carbonari, Prof. Gustavo M. Cerda and Eng. Daniele Catelani for the accuracy
in supervising my job and for the unconditional support given every time I’ve asked for. Dr.
Claudio Semini and to all the HyQ guys for the help provided for any experimental test.
My friend and "long term" roommate for being part of this dream, with her care and
presence, since the very beginning.
All the members of the RST group at the Tecnhical University of Dortmund, specially
Prof. Torsten Bertram and Eng. Myrel Alsayegh, for giving to me a great opportunity in
being one of their member during my intern ship period.
All the researches, technicians and administrative peoples belonging to the Advanced
Robotics Department for the assistance given to me along these three years.
At last, but not the least, I would to say thanks to all the friends and relatives that shared
with me this important step of my life.
Abstract

Nowadays robotic design field witnessed an increasing interest towards the realization of
highly dynamic machines. The success of those platforms, capable of attaining highly
dynamic performances, must be pursued through an effective cooperation of several tech-
nological aspects, such as mechanics, control and electronics. The integration of these
subsystems represents a challenging issue which is even exacerbated by extreme dynamic
working conditions that robots are expected to achieve. For these reasons, research is needed
for developing various strategies, novel design methods and reliable tools to assist designers
in the simulation of complex mechatronic systems.
A rising solution is represented by developing Virtual Prototype Models (VPMs) able
to reproduce the systems behaviour for the purposes of both system design and controller
development. The work presented in this thesis aims to follow this strategy. However,
building a good VPM could be very difficult due to the simultaneous presence both of
complex physical phenomena and control laws; moreover modelling a high level model could
be very risky and, maybe, not always useful for control purposes. To overcome this risk,
this thesis proposes a step-wise method involving parametric identification procedures and a
hierarchical modelling development.
A proper parametric identification guarantees the model reliability and as a consequence
the allowance to use it for further investigation and improvement of the robot. The possibility
of having a hierarchical model, from the other side, has a double advantage: in the direction
of the complexity increasing, it allows working with a reduced number of parameters to
identify step by step; then, when the most complex model is achieved and validated, it is
possible to go back and simplify it in order to achieve simulation times compatible with the
real time operation required from the control architecture.
Following this approach several modelling methodologies and approaches have been
evaluated and applied in this thesis. Among the outcomes, there are two that can be considered
the major ones: the non-linear Maxwell model of an hydraulic actuation system and a flexible
model of a 2 DOFs robot based on the screw theory approach. Both of the models produced
good results as is it possible to notice from the agreement between numerical and experimental
results estimated by an analysis on the residual.
viii

As a future investigation can be considered the simplification of the flexible link formula-
tion in order to approach the real-time control requirements; the development of develop new
links, in terms of material and geometry, with the purpose of linearising the behaviour in
impulsive conditions as running or hammering ones; the design of a new test rig for testing
the hydraulic cylinder with the aim of overpassing some of the deficiency encountered with
the actual experimental data.
Table of contents

List of figures xiii

List of tables xv

1 Introduction 1
1.1 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Rigid Multi-Body Modelling 7


2.1 State of Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Kinematic Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.1 Coordinates Reference Frames . . . . . . . . . . . . . . . . . . . . 9
2.2.2 Rigid Joints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.3 Position Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.4 Velocity Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.5 Singularity Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.6 Acceleration Kinematics . . . . . . . . . . . . . . . . . . . . . . . 21
2.3 Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.4.1 Applications 1: Kompact Actuated modulaR Limb . . . . . . . . . 27
2.4.2 Applications 2: Hydraulic Quadruped Leg . . . . . . . . . . . . . . 37

3 Flexible Multi-Body Modelling 49


3.1 State of Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.2 Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2.1 Inertial reference approach . . . . . . . . . . . . . . . . . . . . . . 52
3.2.2 Local reference approach . . . . . . . . . . . . . . . . . . . . . . . 53
3.3 Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
x Table of contents

3.4.1 Application 1: Lumped Flexible Robotic Leg . . . . . . . . . . . . 62


3.4.2 Application 2: Distributed Flexible Robotic Arm . . . . . . . . . . 69

4 Robotic Actuation 81
4.1 State of Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.2 Hydraulic Actuation Systems . . . . . . . . . . . . . . . . . . . . . . . . . 84
4.3 Hydraulic Actuators Modelling . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.1 Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.2 Hydraulic Force . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.3 Mass conservation principle . . . . . . . . . . . . . . . . . . . . . 87
4.3.4 Mass conservation principle: integral form . . . . . . . . . . . . . 87
4.3.5 Mass conservation principle: derivative form . . . . . . . . . . . . 91

5 Parametric Identification 93
5.1 State of Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.2 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.2.1 Application 1: Structural Parameters Identification via Least Square
Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.2.2 Application 2: Hydraulic Parameters Identification exploiting hys-
teretic phenomena analysing the whole Robotic System . . . . . . . 106
5.2.3 Application 3: Hydraulic Parameters Identification via Least Square
Method by analysing the whole Robotic System . . . . . . . . . . . 108
5.2.4 Application 4: Hydraulic Parameters Identification via Grey Box
Method by analysing a stand alone actuator . . . . . . . . . . . . . 111
5.2.5 Application 5: Hydraulic Parameters Identification via NARX Method
by analysing the whole Robotic System . . . . . . . . . . . . . . . 115

6 Conclusions and Future Works 131


6.1 Future Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

References 133

Appendix A Grey box identification for hydraulic piston 145

Appendix B Virtual prototype models not in robotics 153


B.1 Finite Element Model of knee prosthesis . . . . . . . . . . . . . . . . . . . 153
B.1.1 Model description . . . . . . . . . . . . . . . . . . . . . . . . . . 154
B.1.2 Experimental test . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Table of contents xi

B.1.3 Model validation . . . . . . . . . . . . . . . . . . . . . . . . . . . 157


B.1.4 Main achievements . . . . . . . . . . . . . . . . . . . . . . . . . . 158
B.2 Finite Element Model of human finger . . . . . . . . . . . . . . . . . . . . 158
B.2.1 Model description . . . . . . . . . . . . . . . . . . . . . . . . . . 159
B.2.2 Experimental test . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
B.2.3 Model validation . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
B.2.4 Main achievements . . . . . . . . . . . . . . . . . . . . . . . . . . 161
B.3 Multi-body model of a reconfigurable origami carton with flexible panels . 163
B.3.1 Model description . . . . . . . . . . . . . . . . . . . . . . . . . . 163
B.3.2 Experimental test and Model validation . . . . . . . . . . . . . . . 165
B.3.3 Main achievements . . . . . . . . . . . . . . . . . . . . . . . . . . 166
List of figures

1.1 Integrated Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2.1 Robotic multibody system schema . . . . . . . . . . . . . . . . . . . . . . 8


2.2 Denavit–Hartenberg Parameters . . . . . . . . . . . . . . . . . . . . . . . 10
2.3 Point-Line and Point-Body structures . . . . . . . . . . . . . . . . . . . . 13
2.4 Line-Line and Line-Body structures . . . . . . . . . . . . . . . . . . . . . 15
2.5 Newton Euler Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.6 KARL Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.7 Karl dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.8 KARL kinematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.9 KARL Experimental Tests . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.10 HyQ robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.11 HyQ leg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.12 Least Square Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

3.1 Flexible Robotsmodel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50


3.2 References system schema . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.3 Lumped flexible model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.4 Hydraulic Leg set-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.5 Flexible Joint vs Rigid Joints Results Forces . . . . . . . . . . . . . . . . . 67
3.6 Flexible Joint vs Rigid Joints Results Angles Variation . . . . . . . . . . . 68
3.7 TUDOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.8 Bezier Curve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.9 TUDOR Flexible Model Graphical Comparison . . . . . . . . . . . . . . . 76
3.10 Experimental tests with TUDOR . . . . . . . . . . . . . . . . . . . . . . . 76
3.11 TUDOR Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.12 TUDOR Flexible Model Graphical Comparison . . . . . . . . . . . . . . . 79

4.1 Robotic actuation system examples . . . . . . . . . . . . . . . . . . . . . . 83


xiv List of figures

4.2 Hydraulic actuation system schema . . . . . . . . . . . . . . . . . . . . . . 84


4.3 MOOG servovalve and Hydraulic Actuator . . . . . . . . . . . . . . . . . 85
4.4 Asymmetric cylinder scheme . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.5 Influence of the entrained air on the bulk modulus values. . . . . . . . . . . 90
4.6 Cylinder chamber subsystem . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.1 Parametric Identification Procedure . . . . . . . . . . . . . . . . . . . . . 94


5.2 Least Square Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.3 Stiffness and Damping Coefficient Identification . . . . . . . . . . . . . . . 101
5.4 Analytical-Experimental test comparison . . . . . . . . . . . . . . . . . . . 104
5.5 Experimental data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5.6 fc1d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
5.7 Expe Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.8 a) Proposed simplified Maxwell-Model; b) scheme of implementation for
the NARX model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
5.9 Tests used for identification of the NARX model: actuator strokes, valve
control signals and exerted forces for a dynamic motion and a static test. . . 118
5.10 Measured and estimated values of s0 and k0 for a static test: the measured
values are computed as in the paragraph Use of static tests. . . . . . . . . . 121
5.11 Measured and estimated values of c1 and k1 for a dynamic test: the measured
values are computed as described in the paragraph Use of dynamic tests. . . 124
5.12 Narx model output of both Hip and Knee actuators for a dynamic test used
for calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5.13 Ressiduals analysis for comparison with Hip test. . . . . . . . . . . . . . . 127
5.14 Ressiduals analysis for comparison with Knee test. . . . . . . . . . . . . . 128
5.15 Narx model output of both Hip and Knee actuators for a combined motion. 129

B.1 Knee Prostheses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154


B.2 Knee Prostheses Loading Conditions . . . . . . . . . . . . . . . . . . . . . 156
B.3 Knee Prostheses Loading Conditions . . . . . . . . . . . . . . . . . . . . . 157
B.4 TSA and VPM section results . . . . . . . . . . . . . . . . . . . . . . . . . 158
B.5 3D Human Finger Virtual Model . . . . . . . . . . . . . . . . . . . . . . . 159
B.6 Experimental Test Rig for Detecting Human Tectile Properties . . . . . . . 161
B.7 Origami Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
B.8 Rigid and Flexible Origami Carton Mechanism . . . . . . . . . . . . . . . 165
B.9 Flexible Origami Carton Deformations . . . . . . . . . . . . . . . . . . . . 166
B.10 Comparison Origami Carton Models . . . . . . . . . . . . . . . . . . . . . 166
List of tables

2.1 Definition of the six lower pairs joints properties. . . . . . . . . . . . . . . 11

3.1 Definition of the six lower pairs joints properties. . . . . . . . . . . . . . . 78


3.2 TUDOR Flexible Model Numerical Comparison . . . . . . . . . . . . . . . 78

5.1 Masses and inertias of leg bodies: CAD model vs identification results. . . 105
5.2 Stiffness and Damping Estimated Coefficients. Low gain (150 [Nmrad −1 ])
and High gain (300 [Nmrad −1 ]). σ is the standard deviation. . . . . . . . . 107
5.3 Stiffness and Damping Estimated Coefficients . . . . . . . . . . . . . . . . 111
5.4 Hydraulic parameters estimated by Grey Box modelling . . . . . . . . . . . 115
5.5 Available variables for computation of the NARX model at step k. . . . . . 117

B.1 Materials mechanical properties. . . . . . . . . . . . . . . . . . . . . . . . 155


B.2 Mechanical properties of the linear elastic materials. . . . . . . . . . . . . 160
B.3 Force Values at 1 mm, 2 mm and 3 mm of indentation and 1 mm/s of velocity:
average and standard deviation. . . . . . . . . . . . . . . . . . . . . . . . . 162
B.4 Experimental and Numerical Area Values [mm2 ] comparison for different
level of pressure distribution. . . . . . . . . . . . . . . . . . . . . . . . . . 162
B.5 Materials mechanical properties. . . . . . . . . . . . . . . . . . . . . . . . 165
Chapter 1

Introduction

Robotics is the branch of mechanical engineering, electrical engineering and computer


science that deals with the design, construction, operation and application of robots [29].
Even if the first automatic machines can be traced back to Leonardo da Vinci and several
attempts have been done during the following centuries, robotics can be defined a quite
recent discipline due to the fact that its first "official" apparition was in 1942 when Isaac
Asimov wrote the Three Laws of Robotics [23] followed by the principles of cybernetics
written by Norbert Wiener in the 1948 [135]. The first programmable robot appeared in 1961,
it is called Ultimate and it was designed to manipulate hot metal components [85]. Jumping
over the decades, the robotic world has made incredible progresses: an example of how far
it has been moved from the first steps was brought on stage in the last of Darpa robotics
challenges, hosted in May 2015 [67]. Moreover, according to the NASDAQ index values,
robotics nowadays is one of the most promising fields of investments.
Robots can be built both for industrial and for research purposes. The differentiation is
related to the fact that in one case, time, costs and robustness of the solution are considered
as the main aspects in the development process, while the second one aims at building the
most advanced and challenging solutions [90]. For the remaining aspects, the two branches
are much similar then it is possible to imagine, so that, in the rest of the thesis, we will refer
to robotics disregarding the aforementioned classification.
There are many different subcategories afferent to robotics, their classification depends
on the target field, as for example: biomedical robotics, humanoids robotics, field robotics,
legged systems robotics. Each of them requires a perfect integration among electronics,
mechanics and control to achieve the best results ever. In particular, while remaining
important the role played by electronics, as soon as the robots dimension or the complexity
of the interaction with the external world increases, the integration between mechanics and
control becomes more and more important since the early stage of its development process.
2 Introduction

CONCEPT CONCEPT

MECHANICAL CONTROL MECHANICAL CONTROL

DESIGN DESIGN DESIGN DESIGN

des Σ CONTROL ROBOT des Σ CONTROL ROBOT

PHYSICAL PHYSICAL
PROTOTYPE PROTOTYPE

Fig. 1.1 Design process for legged robots. (a) Traditional approach: few correlations be-
tween the mechanical and control. (b) Proposed approach: integration between mechanics
and control since the early stages of the development process of a robotic system.

Massive and bulky robots generate high forces in the interaction with the external envi-
ronment that can damage their structures or can create unwanted feedback for the control
system [103]. Those actions increase with the rise of the dynamic capabilities of such
machines, in fact for example, in a running legged robot, the ground reaction force registered
on the limbs can reach 2.5 times its total weight [75]. In the other side, thinking to the
biomedical robots or the manipulators that have to interact with humans, the forces exerted
from the interaction can damage the counterpart. Watching closer at this human robotic
interaction, it has to be considered that in the near future the humans that interact with robots
are not only the trained workers of an assembly line but also common people, not trained,
which will use a robot at their home [86].
If those robots are conceived as flexible, their structure becomes lighter and more compli-
ant, that results in faster and safer robotic systems. When the structural flexibility is taken
into account, in fact, the aforementioned integrated approach permits not only to deeply
consider the relationship between structural capabilities and control algorithm requests, but
also to exploit the optimal solutions in terms of energy consumption. However, one of the
main drawbacks of adding flexibility is the arising of unwanted vibrations, that must be
1.1 Motivations 3

taken in account by the control algorithm to prevent resonance phenomena and to guarantees
precision in task performing.
By tradition the aforementioned integration, especially in the development process of
high dynamic capabilities robots, is based on the trade-off between active and passive
compliance [35]: the former is obtained by tuning the robot stiffness and damping properties
via feedback control using the actuators to absorb the energy due to the reaction forces with
the external environment [12, 19]; the latter one, instead, directly acts on the mechanical
properties of the robot [70] through springs or shock absorbers to prevent the structure from
damages. The first solution affects the system controllability at certain speed while the
second one add additional mass and modifies the system natural frequencies. For these
reasons, researches look forward a valid trade-off between the two solutions.
The schema in Fig.1.1.a describes the current state of art of that trade-off. Following
the robot specifications, both the mechanical designer and the control designer work for the
same concept producing two different models with the aim of developing the robot from the
scratch to its physical set-up. The model produced by the mechanical designer is focused
on the geometric properties definitions, on the materials choice, on the robot operational
requirements diagnosis and on the construction/manufacturing feasibility [98]. At the same
time, the control designer develops the specific algorithm according to the tasks that the robot
has to perform. When the structural model is ready, the rigid bodies inertia properties are
used for creating the robot multi-body model in order to test the control algorithm. This is
generally done by using software as Gazebo, V-Rep, Webots, SL, Robotran, etc [63] thanks
to the fact that they permit to use the same script to control both the virtual model and the
physical robot.
The aforementioned solution guarantees a fast physical prototype development but it as
some drawbacks as the high time and costs required for the improvements. Moreover it tends
to be conservative in the choice of the tasks that the robot has to perform.

1.1 Motivations
The solution proposed in this thesis aims to overpass the aforementioned limits looking
forward a strategy based on a full integration between mechanics and control since the
beginning of the development process. Some of the technologies here mentioned are used in
industry since a couple of decades [88, 1, 114, 10]. The novelty of the present work consists
in the application of some well known techniques to complex robotic architectures as legged
robots. The idea here illustrated aims to develop Virtual Prototype Models (VPMs) able
to reproduce the systems behaviour for the purposes of both system design and controller
4 Introduction

development. Figure 1.1.b describes the proposed method: the VPM is connected strictly
both with the CAD to exchange the geometrical and mechanical properties and, moreover, it
is integrated in the control algorithm to guarantee better controllability. Then when the best
design, both from mechanical and from the control side is chosen, and the whole physical
prototype is built and assembled, the VPM results can be compared with experimental test
ones.

According to the idea proposed here, the risk of having a control law designed for
the wrong mechanical system will be strongly reduced. Moreover, there are several other
advantages in using such a model, as for example the possibility to study the robot under
extreme performance conditions, while considering time-cost reductions in simulation and
control application. In extreme conditions, like the impact ones, in fact, it is difficult to have
an effective force control since the contact time is too short. A numerical model can overpass
this issue because its results does not depend on the measurement instruments response time.
Every improvement, both from the structural and from the control side, can be immediately
simulated within a global analysis.

However, building a good VPM could be very difficult due to the simultaneous presence
both of complex physical phenomena and control laws. Modelling a high level model could
be very risky and, maybe, not always useful for control purposes. From one side, if not
all the parameters involved in the simulation are well known, it easy to get wrong and
misleading results; from the other side, instead, in the control tuning, it is required to have a
real-time operation, that cannot be achieved with a very complex VPM. For these reasons,
the strategy adopted in this thesis is focused both on parametric identification procedures and
on a hierarchical modelling development [98].

A proper parametric identification guarantees the model reliability and as a consequence


the allowance to use it for further investigation and improvement of the robot. Since the time
for one simulation is shorter than the time needed for machining a modified prototype or for
arranging an experimental test, working with a validated VPM, guarantees the possibility to
test an higher number of design and conditions in a shorter time [144]. The possibility of
having a hierarchical model, from the other side, has a double advantage: in the direction of
the complexity increasing, it allows to work with a reduced number of parameters to identify
step by step; then, when the most complex model is achieved and validated, it is possible to
go back and simplify it in order to reach a model that has simulation times compatible with
the real time operation required from the control architecture.
1.2 Thesis Outline 5

1.2 Thesis Outline


The thesis is organized in four chapters focused on the main aspects regarding the developing
process of a reliable VPM. Each of them contains an introductory section regarding the
modelling theory followed by some applications. More in detail:

• Chapter 2 is focused on the robotics multi-body systems composed by rigid bodies


interconnected by rigid joints. The kinematic and dynamic analysis is addressed both
in R3 and in R6 and the chapter contains two applications. The first one regards the
development process of a compact actuated anthropomorphic limb: starting from the
position kinematics of the multi-body model till the construction of the experimental
set-up, passing through dynamics and singularity analysis. The second one, instead,
is focused on the dynamic analysis of one of the legs of an Hydraulically Quadruped
robot. In this case a strategy of simplification of the VPM it is analysed: thanks to a
proper dynamic analysis it is possible to estimate which is the role played from the
different components of the motion equation to the overall system dynamics.

• Chapter 3 deals with the kinematic and dynamic modelling of flexible robotic systems
and flexible connections. Following the same schema illustrated for the previous
chapter, even in this case the kinematics and dynamics analysis are presented both
for in R3 and in R6 . One of the two applications described in this chapter regards
again the leg of an Hydraulic Quadruped robot. In this case a sensitivity analysis
of the flexible connections is studied. The second applications instead, refers to the
Technische Universität Dortmund Omnielastic robot with the purpose of creating a
VPM of a flexible robot exploitable for control purposes.

• Chapter 4 is a descriptive chapter focused on the investigation of the different types


of actuation systems available for robotic application. After a general introduction to
the theme, a more deep discussion regards the hydraulic systems since it is the one
mainly investigated in this thesis even for identification purposes.

• Chapter 5 concludes the core of the thesis, addressing one the key point of the entire
modelling process: the identification of the parameters. Among the many possibilities
offered from the identification field, a detailed description is provided for the methods
used here. The applications of this chapter are five, all of them use as physical set-up
one leg of an Hydraulic Quadruped robot. More in detail, the first application regard
the structural parameters identification procedure, while the remaining four are focused
on the analysis of the actuation system.
6 Introduction

• Chapter 6 address conclusions and future work that should be done as a consequence
of this work.

• Application I contains the Matlab codes used in one of the identification procedure of
Chapter 5.

• Application II regards several applications focused on the development process of


VPMs not integrated with control systems and that, for this reason, are treated sepa-
rately from the rest of the thesis.
Chapter 2

Rigid Multi-Body Modelling

In this section the kinematic and dynamic analysis of a robotic multibody sistem is presented,
with particular reference to rigid bodies and rigid connections. The chapter starts with
the discussion about some theoretical aspects regarding the aforementioned analyses and
then ends with a couple of applications. The first one is related to the Kompact Actuated
modulaR Limb (KARL), developed at the Advanced Industrial Automation Lab-IIT, designed
to investigate the influences of having a compact actuation in an anthropomorphic limb;
while the second one, regards one leg of the Hydraulically Quadruped robot, developed at
the Dynamic Legged System Lab-IIT with the purpose of investigating the dynamics of an
articulated mechatroni

2.1 State of Art


A multibody system is an assembly of rigid and/or flexible bodies, reciprocally connected by
elements, which allow or constrain certain types of motions as shown in Fig. 2.1. A robotic
multibody system (RMBS) can be classified on the basis of the type of motion performed,
according to the ratio between the number of the actuators respect to the Degrees of Freedoms
(DOFs) that it has, by its kinematic structure, considering its joints characteristics, analysing
its driving technology, etc. [130].
The motion capabilities of a RMBS can be various, for instance the RMBSs that perform
2D motion are called planar, instead the ones able to perform generic 3D movement are
defined spatial. The ratio between the actuators number (A) and the DOFs needed to perform
a specific task lets to consider a RMBS as redundant in case of A > DOFs or underactuated
if A < DOFs. The kinematic chain peculiarities classifies the RMBS as serial if they have an
open loop structure, parallel in case of having closed loop chain and hybrid if they present
a combination of the aforementioned two ones, moreover the RMBS connections could be
8 Rigid Multi-Body Modelling

rigid or flexible. The rigid ones are based on a distance equation between points belonging to
the two connected bodies, while, the flexible ones are based on a force transmission between
the same points.
A RMBS can be actuated by electric, hydraulic, pneumatic motion system or by one of
their possible combination, i.e. electro-hydraulic [113]. A detailed discussion on this topic is
illustrated in Chapter 4.
As happens for each robotic system, the complete behaviour of these mechanisms are
analysed by means of kinematic and dynamic analysis [26]. In this chapter the kinematic
and dynamic analysis of a RMBS with rigid bodies, connected by rigid joints and having a
serial kinematic chain is presented.

J3
B0 B3 J4

B4
J1 J7
B6 J5
B1 J2 J6
B2 B5

Fig. 2.1 Robotic multibody system schema. The left side (composed by the bodies B0 , B1 , B2
and by the joints J1 , J2 , J3 ) shows a typical open loop chain; while the right side (composed
by the bodies B3 , B4 , B5 , B6 and by the joints J4 , J5 , J6 , J7 ) is representative of a closed loop
chain.

2.2 Kinematic Analysis


The kinematic analysis aims at determining the position, velocity and acceleration of the
bodies disregarding the forces that generate the movement. This analysis is purely geometric
and it does not consider the body’s inertial properties as masses, moments of inertia, centres
of mass position, etc.
The typical kinematic problem consists in determining the positions of each point of
the robotic system depending on a given set of actuator displacements. In this case, the
analysis is called direct kinematic analysis. On the other hand, the problem can be faced in
the opposite direction in order to determine the actuation displacements/rotations necessary
2.2 Kinematic Analysis 9

to reach a particular position in the robot workspace [36]. In this second case it is called
inverse kinematic analysis.
In case of a serial RMBS, the direct kinematic analysis is straight forward and much
easier than for the parallel ones; the opposite happens for the inverse kinematic analysis. The
direct kinematic analysis for serial RMBS it is easier due to the fact that, when the joints
variables values are known, the end effector position is unequivocally determined. The same
does not happen for parallel RMBS, where generally it is needed to solve highly coupled
nonlinear equations with few closed form solutions available. As mentioned, the inverse
kinematic analysis, instead, presents exactly the opposite problems for the two classes. For
serial RMBS sometimes there is no unique relation between the end effector position and
its joints variables; while for the parallel ones, the actuator displacement can be computed
independently starting from the end effector position [109].

2.2.1 Coordinates Reference Frames


In order to perform a kinematic analysis, the choice of a proper set of coordinates system is
required. This is a group of parameters that is needed to describe, unequivocally, positions,
velocities and accelerations of the RMBS. Their choice depends on the nature and topology
of the mechanism to study. In fact, even if they have the same purpose, which is to describe
position and motion of the system, then such choice will affect the analysis performances, the
computational efficiency, etc. Generally speaking, the available coordinates reference system
can be grouped in three main categories: relative coordinates, reference point coordinates
and natural coordinates [26].
The relative coordinates describe the position and orientation of a body with regard to
the position and orientation of another body. Thanks to their nature, they are more suitable
for open loop chains than closed loop ones and preferably indicated when a motor is directly
attached to a joint, since they permit to control directly the corresponding degree of freedom.
The use of this coordinates system guarantees, from one side, a numerical efficiency and
a minimum number of parameters involved; at the opposite, the bigger disadvantage of
this choice is due to the fact that, in case of closed loop chain, they generate full matrices
generally expensive to compute. This coordinate reference system can be used both for
planar and for spatial mechanisms.
The Denavit–Hartenberg (DH) convention fully represents this family of coordinates [131].
According to the DH method, each body belonging to the RMBS is "equipped" with its own
reference system having the following characteristics:

• the zi axis is aligned with the j(i+1) joint axis, with an arbitrary positive rotations;
10 Rigid Multi-Body Modelling

Fig. 2.2 The four Denavit–Hartenberg Parameters: θ is the angle about the previous z, from
old x to the new x axis; α is the angle about the common normal, from old z to the new z
axis; d is the distance along the previous z axis to the common normal; a is the length of the
common normal. Courtesy of Prof. C. S. George Lee

• the xi lies on the common normal between the i and (i + 1) axis;

• the yi is located according to the right hand rule.

The base reference system and the end effector one don’t follow the aforementioned rule,
in particular the former one has the zi axis parallel to the first joint axis while the last one has
the xn on the normal to the last joint. Each reference system can be described with respect to
the previous one by using four parameters, instead of six: three of them are associated to the
RMBS geometry, while the forth one is referred to the body motions. Figure 2.2 reports a
detailed description of all the available parameters.
The reference point coordinates tend to eliminate some disadvantages of the previous
set, because the position of each element belonging to the RMBS is described by absolute
coordinates. For planar RMBS this description results in two Cartesian coordinates and one
angle, while, in case of spatial RMBS it is given by three Cartesian coordinates and the
angular orientation of the reference frame. All of them are referred to an inertial reference
system. The choice of this coordinate system conduces to a larger number of parameters than
the previous choice, but also to sparse matrices that are easier to compute.
2.2 Kinematic Analysis 11

Table 2.1 Definition of the six lower pairs joints properties.

Relative displacement Relative rotation


Joint type d1 d2 d3 θ1 θ2 θ3
Revolute 0 0 0 0 0 = 0
Prismatic 0 0 = 0 0 0 0
Screw 0 0 pθ3 0 0 = 0
Cylindrical 0 0 = 0 0 0 = 0
Planar = 0 = 0 0 0 0 = 0
Spherical 0 0 0 = 0 = 0 = 0

The Euler angles fully represents this family of coordinates [30]. It consists in three
parameters useful to describe the orientation of a rigid body in a three dimensional space.
A generic rotation around the three axis x,y,z respectively of three angles ψ, θ , φ can be
described by the Euler vector

u = [ψ, θ , φ ]T (2.1)

or by its corresponding matrix

R i, j,k (ψ, θ , φ ) = R i (ψ)R


R j (θ )R
Rk (φ ) (2.2)

where i, j, k represent the x, y, z axes respectively.


The natural coordinates approach is based on a "system of dependent coordinates that
uses the Cartesian coordinate of a point and the Cartesian component of unitary vector in
order to describe the position and the motion of the system" [27]. That allows the reduction
of the number of the coordinates, i.e. angular coordinates are not required, thanks to the fact
that the position is unequivocally determined by using the Cartesian coordinates.

2.2.2 Rigid Joints


The connection among the elements which compose a RMBS are called joints. As already
aforementioned, these can be rigid or flexible. The rigid connections are also called pairs
and, more in detail lower pair if the two elements are in contact trough a surface while higher
pair in case of contact established between lines or points [60] . The lower pair family is
composed by the revolute, the prismatic, the cylindrical, the planar and the spherical joints as
detailed in Tab. 3.1. The higher pair, instead, contains gears and/or cams.
12 Rigid Multi-Body Modelling

2.2.3 Position Kinematics


The second step in performing a kinematic analysis is the position kinematic (PK) study.
It consists in determining the position of all the bodies belonging to a RMBS by knowing
the fixed body position, the input of the actuated joints and the set of the coordinates which
describes the mechanism.
The PK analysis is then obtained by solving the system of equation in Eq. (2.3), [126]

φ (q,t) = 0 (2.3)

where q is the vector containing all the system coordinates.


A closed form solution for the Eq.(2.3) is easy to find only in case of simple RMBS. This
problem has been investigated since 1972 looking forward solutions for more complex mech-
anisms time to time. The first documented solution is inherent to a serial manipulator studied
by means of 4 × 4 matrices [102]; then the position kinematics of a 7R manipulator was
studied by Crane [37] by vanishing the determinant of a 16 × 16 matrix with quadratic coeffi-
cients; more recently, in literature, there are investigations regarding redundant manipulators
analysed by Neural Networks [77] and Fuzzy logic [2].
In this section we are going to describe three main approaches used in the PK analysis of
serial manipulators and exploited in this thesis, from analitical to numerical solutions: the
polinomial, the Denavit-Hartenberg and the Newton-Raphson methods.

Position Kinematic Method 1: Polynomial approach

The polynomial approach is based on a hierarchical analysis of the RMBS which consists in
subdividing the mechanism in elementary substructures easy to analyse, in order to reduce
the number of the unknown [62]. According to Keung [71], there are four main substructures
in every RMBS: Point-Line (P-L), Point-Body (P-B), Line-Line (L-L) and Line-Body (L-B).

• Point-Line structure. In this structure (Fig. 2.3.a) there is only one movable coordinate
system, the one located in B(x, y). Its position can be determined as

x = L1 cos(θ1 ) or x = L2 cos(θ2 )
(2.4)
y = L1 sin(θ1 ) or y = L2 sin(θ2 )

From the previous relations is clear that only a couple of parameters is needed to
describe the position of point B in the local reference coordinates system (S0 ), respec-
tively (L1 , θ1 ) or (L2 , θ2 ). Being the structure in Fig. 2.3.a a planar structure, both
the sine (Eq. 2.5) and the cosine laws (Eq. 2.6, 2.7, 2.8) can be applied to find the
2.2 Kinematic Analysis 13

B1(x,y) B1(x,y)

θ3 z0
L1
y0
L2 λ1
β1 a13
y θ
A3(a,a3)
β1 P
A1(0,0) B1(x,y) Q
θ1 θ2 a12 β3 a23
x
A1(0,0) A2(a2,0)
x0
A2(a,0)
a b

Fig. 2.3 a) Point-Line structure; b) Point-Body structure.

reciprocal relationships. For each angle and length choosen, there are two possibile
configurations of point B referred to S0 , both of them are mirrored respect to the line
passing trough (A1 , A2 , A3 ).

sin(θ1 ) sin(θ2 ) sin(θ3 )


= = (2.5)
L2 L1 a2

L2 2 = a22 + L12 − 2a2 L1 cos(θ1 ) (2.6)

L1 2 = L22 + a22 − 2a2 L2 cos(θ2 ) (2.7)

a2 2 = L12 + L22 − 2L1 L2 cos(θ3 ) (2.8)

• Point-Body structure. In this structure (Fig. 2.3.b) there are two geometric entities to
consider: point B1 and the body identified by points (A1 , A2 , A3 ). This represents a
classical tetrahedral structure whose triangles are governed by the cosine law and only
the position of the point B1 (x, y, z) needs to be determined. With the same procedure
applied for the P-L case, it is possible to estimate point B location with respect to S0 .
Even in this case, for each angle and length, there will be two possible positions for B,
mirrored respect to the plane passing through (A1 , A2 , A3 ).
14 Rigid Multi-Body Modelling

• Line-Line structure. In this schema (Fig. 2.4.a) the analysis must be conduced on two
lines, more in detail it is needed to describe the position of the line B1 B4 respect to the
A1 A4 . The position of the i-th point of the B1 B4 line, referred to S0 is given by

B 0i = L 1 A B + b i k (2.9)

where
L 2i = (B
B0i − A i )(B
B0i − A i ) (2.10)

by substituting the Eq. (2.9) in the Eq. (2.10) is then obtained

⎡ ⎤⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤⎡ ⎤
r l r ai l ai
⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ 1 2
L 1 b i ⎣0⎦ ⎣m ⎦ − L 1 ⎣0⎦ ⎣ 0 ⎦ − b i ⎣m ⎦ ⎣ 0 ⎦ = (Li − L12 − b2i − a2i ) (2.11)
2
t n t 0 n 0

after several manipulations it becomes

L 1 b i (ll r + nt ) − L 1 a i r − a i b i l = d i (2.12)

that represents a set of (j-1) equations and where di is the distance we are looking for.
In order to solve the system, a couple of condition is still needed. Those are

r2 + t 2 = 1
(2.13)
l +m +n = 1
2 2 2

Once the expression for r, t, l, m, n is found, the location of the line respect to S0 is
determined.

• Line-Body structure. In this structure (Fig. 2.4.b) the two geometric entities to consider
are a line and a body identified by the points (A1 , A2 , A3 , A4 , A5 ). With the same
procedure applied for the L-L case, it is possible to determine the position of point B
with respect to S0 .
Since all the equations for the aforementioned substructures are referred to a local
reference system S p , it is needed to refer those positions to a global reference system
by means of rotation and translation matrices. This generally results in a system of
non-linear equations with more than two unknown. In order to find a solution, it is
necessary then, to reduce the number of the unknown by means of proper substitution
2.2 Kinematic Analysis 15

xp B4(b4) B5( 5)
b xp
zp B3(b3,0,0)
B4(b4,0,0)
B3(b3)
B2(b2)
B2(b2,0,0) B1(b1)
B1(0,0,0)
L1 L3 L5
L1 L3 L4
L4 L2
z0 L2 z0
y0 y0 A5(ax,ay,0)
x0 x0
A4(ax,ay,0)
A1(0,0,0) A2(ax,0,0)
A2(a2,0,0) A4(a4,0,0)
A1(0,0,0) A3(a3,0,0) A3(ax,ay,0)
a b

Fig. 2.4 a) Line-Line structure; b) Line-Body structure.

as for example the cosine and sine functions of some angles. Once the substitution has
been done, the function will be analysed by means of proper matrices as the Sylvester
one as detailed in the Application 1.

Position Kinematic Method 2: Denavit–Hartenberg method

The solution based on the DH method consists in writing the loop closure equation and
in simplifying it according to some geometrical rmsb characteristics. The procedure
starts by describing the position of each point belonging to the mechanism by means
of homogeneous transformations from one reference system to the next one. There are
four main allowed transformations according to the DH method which are

– Rotation T (z, θ ) around and translation T (z, d) along the z axis, respectively
⎡ ⎤ ⎡ ⎤
cos(θ ) −sin(θ ) 0 0 1 0 0 0
⎢ sin(θ ) cos(θ ) ⎥ ⎢ 0⎥
⎢ 0 0⎥ ⎢0 1 0 ⎥
T (z, θ ) = ⎢ ⎥ T (z, d) = ⎢ ⎥ (2.14)
⎣ 0 0 1 0⎦ ⎣0 0 d 0⎦
0 0 0 1 0 0 0 1

– Rotation T (x, α) around and translation T (x, a) along the x axis, respectively
⎡ ⎤ ⎡ ⎤
1 0 0 0 1 0 0 a
⎢0 cos(α) −sin(α) 0⎥ ⎢0 0⎥
⎢ ⎥ ⎢ 1 0 ⎥
T (x, α) = ⎢ ⎥ T (x, a) = ⎢ ⎥ (2.15)
⎣0 sin(α) cos(α) 0⎦ ⎣0 0 1 0⎦
0 0 0 1 0 0 0 1
16 Rigid Multi-Body Modelling

According to this method, the position of a generic point of the mechanism can be
found with

pn =0 A n p (2.16)

where 0 A n is the transformation matrix which consider all the translations and rotations
needed to describe the path from the base to the end effector (at the opposite n A 0 =0 A −1
n
is the matrix needed to follow the inverse path). More in detail

0
A n =0 A 11 A 2 ...i−1 A n−1
i An (2.17)

where

n−1
A i = T (z, θ )T
T (z, d)T
T (x, α)T
T (x, a) (2.18)

for each transformation among reference systems.


The DH solution consists in simplifying the Eq. (2.17) pre or post multiplying it, by
one or more inverse transformation matrices (n−1 A −1 i ), in order to reduce the number
of unknown when specific geometric condition arise i.e. the presence, in the kinematic
chain, of three parallel or intersecting joints. This procedure conduces to a decoupled
solution thanks to the fact that the same unknown appears in both sides of the equations.

Position Kinematic Method 3: Newton-Raphson method

The solution of the Eq. (2.3) via Newton-Raphson method consists in the system
linearization through Taylor series, as in Eq. (2.19), around an approximated value of
the desired solution qi .

φ (q,t)  φq (qi )(qq − qi ) = 0 (2.19)

where φq is the Jacobian matrix and it is a linear transformation that maps the joint
space in the workspace, Eq. (2.20).

⎡ δ φ1 δ φ1 ⎤
δ q1 ... δ qn
⎢ ⎥
φq = ⎣ ... ... ... ⎦ (2.20)
δ φm δ φm
δ q1 ... δ qn
2.2 Kinematic Analysis 17

The Eq. (2.19) gives as results the vector q, which is an approximation of the solution.
From another point of view, usign the Eq. (2.19) instead of Eq. (2.3) means to
approximate the solution space with its tangent in a specific point. The results of this
method are much more accurate as much as the approximation is close to the real
solution; said in other words, that means closer is the approximated value chosen,
easier and faster is the solution convergence [26].

2.2.4 Velocity Kinematics

The second step in performing a kinematic analysis is the study of the mechanism
velocities by means of the so called velocity analysis, performed with a twofold reason:
investigation and diagnoses of the mechanism velocity space. The first one is needed
for all of those RMBS working under determinate speed conditions, i.e. spray machines,
laser or cutter, welding robots, etc; while, the second one, is necessary for each type of
RMBS, because it permits to determine the workspace space characteristics.

In order to perform a velocity analysis, it is neceasary to define two important concepts:


the linear and the angular velocity respectively:

– the linear velocity represents the body position variation and it is given by Eq.
(2.21).

dp
v= (2.21)
dt
where p is the position of the body respect to a fixed or moving reference frame.

– the angular velocity ⎡ ⎤


Ωx
⎢ ⎥
Ω = ⎣Ωy ⎦ (2.22)
Ωz
that describes the body orientation variation and it can be expressed in different
forms: by Euler angles, by the composition of the three elementary rotations or
by the analysis of the rotation matrix.

• Euler Angles. Considering φ , θ and ψ as the three Euler angles, the angular
velocity is then obtained by means of their differentiation with respect the
18 Rigid Multi-Body Modelling

time, as in Eq. (2.23). ⎡ ⎤


φ̇
⎢ ⎥
Ω = ⎣ θ̇ ⎦ (2.23)
ψ̇
.
• Main Rotations. Considering φ , θ and ψ as the three main rotations respect
to the three principal axes, their composition results in the angular velocity
according to Eq. (2.24)
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
0 −sin(φ ) cos(ψ)sin(θ )
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
Ω = φ̇ ⎣0⎦ + θ̇ ⎣ cos(ψ) ⎦ + ψ̇ ⎣ sin(ψ)sin(θ ) ⎦ (2.24)
1 0 cos(θ )
.
• Rotation Matrix. Once the rotation matrix of a body is known, the angular
velocity is then determined by the Eq. (2.25).

RR T
Ω = Ṙ (2.25)

The velocity analysis for RMBS can be solved both in R3 and in R6 : in the first case
the linear and angular velocity vectors are considered separately one from the others,
while in the second one, they are grouped in one single vector called screw.

The screw is a representation of a finite or infinitesimal displacement of a body, by a


combination of translations along one axis and rotations around the same axis, [145, 41].
The ratio between translation and rotation is called pitch λ = θd . Since the screws are
six dimensional elements, they need a specific coordinate system to be described, the
so called Pluker coordinates. These are a way to define a line, in fact: p be a point
on a given line; let q be the direction vector; let q 0 be the moment vector; then (qq,qq0 )
represents the Pluker coordinates.

More in detail, the unit screw is given by

⎡ ⎤
$1
⎢ ⎥

⎢$2 ⎥
⎢ ⎥
s ⎢$3 ⎥

$= =⎢ ⎥ (2.26)
so × s + λ s ⎢$ ⎥
⎢ 4⎥
⎢ ⎥
⎣$5 ⎦
$6
2.2 Kinematic Analysis 19

where s represent a unit vector lying on the screw axis; so is the distance between the
studied point respect to the screw axis. The first three elements describes the angular
velocity of a body, while the last three are the translational ones.
For a revoulte joint, since d = 0, the screw becomes

 s
$= (2.27)
so × s

while for a prismatic joint, the screw is represented by


 0
$= (2.28)
s

In order to determine the displacement, however, it is needed to define the motion


intensity

$ = q̇
$ (2.29)

where q̇ = θ̇ for a revolute joint and q̇ = d˙ for a prismatic one.


The dual space of screws is occupied by wrenches (W), which are elements belonging
to R6 containing at the first three positions the torques around the three main axes
while in last positions they have the forces along the same axis and expressed by Eq.
3.22

⎡ ⎤
Mx
⎢ ⎥
⎢My ⎥
⎢ ⎥
⎢Mz ⎥
W =⎢
⎢F ⎥
⎥ (2.30)
⎢ x⎥
⎢ ⎥
⎣ Fy ⎦
Fz

Once the concepts of the linear velocity and angular velocity of a body are known,
and, having defined the screw-based approach, it is time to derive the RMBS velocity
equations [18, 106] for a serial manipulator.
Generally speaking, for the R3 case, those are obtained by differentiating respect to
the time the Eq. (2.3), that becomes
20 Rigid Multi-Body Modelling

φq (q,t)q̇ + φt = 0 (2.31)

where φq is the Jacobian matrix, q̇ is the vector of the dependent velocities and φt is the
constraint equations partial derivative. For simplicity of writing, from now ongoing,
the Jacobian matrix will be represent by the letter J. This one in R3 is described as
conventional Jacobian and its formula is

⎡ f1 f1 ⎤
δ q1 ... δ qn
⎢ ⎥
J = ⎣ ... ... ... ⎦ (2.32)
fm fm
δ q1 ... δ qn

For the R6 , instead, the velocity equations is written as

n
$n = ∑ q̇
$i (2.33)
i=1

where
Js =  $2 ... 
$1  $n (2.34)

is called the screw-based Jacobian.

2.2.5 Singularity Analysis

The singularity analysis is the one that permits to determine the RMBS workspace
limitations by the identification of all the configuration in which the Jacobian matrix
looses its full rank.
According to Donelan [36], it is important to study the RMBS singularities several
reasons as for example: the analysis of the loss of freedom conditions or the ones that
determine the loss of control, the study of the mechanical advantages acquired from
the system in such conditions, etc.
If, in a determined configuration, the Jacobian matrix becomes singular, the mechanism
will loose one or more degrees of freedom or the control system fails, because the
velocity and acceleration values become higher and higher. Close to a singularity
configuration, furthermore, large movement in the joint space produce in a small or
negligible movement in the end effector space.
2.2 Kinematic Analysis 21

The determination of the singular configurations is done by setting the Jacobian


determinant to zero. For serial RMBS, the singularity depends on the conditions of the
intermediate joints and those can be: boundary or interior. The boundary singularities
arise when the end effector reaches the workspace limits (fully stretched or fully
retracted position for a serial robot), while the interior singularities happen when two
or more internal joints are aligned on a straight line.

2.2.6 Acceleration Kinematics

The third and last step in performing a kinematic analysis regards the acceleration
study. Following the same concepts of the velocity one, there are both the linear and
the angular acceleration.

The first one is a vectorial quantity and it is the time rate of change of the linear velocity,
obtained by means of

dv
a= (2.35)
dt

while the second one is a scalar quantity and represents the time rate changes of the
angular velocity. The angular acceleration can be calculated by


α= (2.36)
dt

In R3 , the acceleration kinematics equation is obtained by differentiating the Eq. (2.31)


respect to the time as shown in Eq. (2.37).

φq (q,t)q̈ − φ˙q q̇ − φ̇t = 0 (2.37)

while in R6 , the Eq. (2.33), [42] becomes

n
$̇ = ∑ $i q̈ + ∑ q̇i q˙j $i × $ j (2.38)
i=1 i< j

However, the acceleration analysis of a mechanism is generally obtained by means of


dynamic analysis, as described in the following sections.
22 Rigid Multi-Body Modelling

Fig. 2.5 Newton Euler approach actions scheme [4].

2.3 Dynamics

The dynamic analysis aims to determine the motion equations of the bodies due to the
presence of external forces [43]. This type of analysis requires an a priori knowledge
of the bodies positions, velocities and above all the inertial properties of the system.
The dynamical analysis could be both direct and inverse. The first one permits to
estimate the end effector position given in input a desired torque/force values or a
kinematic controlled angles/displacements. It provides as output a non-linear coupled
set of equations called "motion equations". The second one, at the opposite, is focused
on the identification of the driving torques/forces values and of the joints reaction
needed to obtain a specific motion. It generally reaches a closed form formulation and
it is useful for the robots control.

The equations of motions can be derived by means of several approaches depending


on the system characteristics and analysis purposes [26]. In this thesis there were
investigated mainly three of those formulations: Newton-Euler, Virtual Work Principle
and Lagrange respectively.

– Newton Euler. The Newton Euler approach [112, 120] is based on the dynamical
equations of each body that composes the RMBS. Once these ones are written,
by coupling them, it is possible to reach the explicit form of the system dynamic
2.3 Dynamics 23

equation. Considering the generic body belonging to the RMBS, the dynamic
equilibrium equation respect to the translation is given by

fi−1,i − fi,i+1 + mi g = mi v̇Ci (2.39)

where f is the force acting on a specific joint, as shown in Fig. 2.5, g is the
gravity acceleration, mi represents the i-th mass and v̇Ci is the i-th center of mass
translational acceleration.
The dynamic equilibrium respect to the rotation, instead, is written as

d
(Ii ωi ) = Ii ω̇i + ωi ∧ (Ii ωi ) (2.40)
dt
which, after several manipulations becomes

Ni−1,i − Ni,i+1 − (ri−1,i + ri,i+1 ) ∧ fi−1,i + (−ri,Ci ) ∧ (fi,i+1 ) = Ii ω̇i + ωi ∧ (Ii ωi )


(2.41)
The aforementioned sets of equations need to be manipulated to reach a direct
input/output relationships between torque/forces and relative displacements. It is
obtained by imposing the displacement congruence between consequent joints.

– Virtual Work Principle. The Virtual Work Principle [111, 92] states that a
RMBS is in equilibrium, both static and dynamic, if the virtual work (W ) generated
by a system of generic forces ( fi ) acting on the system, Eq. (2.42) is null:

N
δW = ∑ fi · δ ri (2.42)
i=1

where δ ri is the virtual displacement, i.e. an ideal displacement allowed by the


RMBS constraints caused from fi .

– Lagrange. The Lagrangian equations can be derived by following two main


pathways [13, 120, 21]: the undetermined multipliers method or the generalized
coordinates one. The first one is based on the d’Alambert and Bernoulli’s princi-
ples [129, 134], while the second one derives from the Hamilton’s principle of
least action.

• Undetermined Multipliers. This method starts from the N-E equations for a
RMBS which states that
24 Rigid Multi-Body Modelling

mi a i = F i + R i (2.43)

where mi and ai are the mass and the acceleration of the (i − th) particle,
while F i and R i are the total external and total reaction force respectively.
By multiplying the Eq. (2.43) by a virtual displacement δ ri , it will be
n n n
∑ miaiδ r i = ∑ F iδ r i + ∑ Riδ r i (2.44)
i=1 i=1 i=1

Where, assuming to have ideal constraints, the therm


n
∑ Riδ r i (2.45)
i=1

For a constrained RMBS, the δ r i depends on the constraint equations and, if


the system is holonomic1 we have to consider that

∂ fi
δ ri = 0 (2.46)
∂ ri
while if the system is non-holonomic2 , we have to consider

A ji · δ r i = 0 (2.47)

where A ji is a function of the non-holonomic contraints.


By multiplying the Eq. (2.46) by scalar multipliers (λ1 , λ2 , ..., λs ), the Eq.
(2.47) by scalar multipliers (μ1 , μ2 , ..., μs ) and by substituting those modified
equations in the Eq. (2.45) is then obtained
n s
∂ fi m
∑ (RRi − ∑ λk − ∑ μ j A ji )δ r i = 0
∂ x k j=1
(2.48)
i=1 k=1

Explicity the Eq. (2.48) in components, it will be

n s
∂ fi m n n
∑ (RRi,x − ∑ λk − ∑ μ j (A
∂ x k j=1
A ji )x )δ x i + ∑ [Y ]i δ yi + ∑ [Z]i δ zi = 0
i=1 k=1 i=1 i=1
(2.49)

1A holonomic constraint is defined by a function g(t, q) = 0, where t represents the time while q is the
vector containing the system coordinates, [132]
2 A non-holonomic constraint is defined by a function g(t, q, q̇) = 0, where includes the system veloci-

ties, [132]
2.3 Dynamics 25

It is possible to choose (s + m) Lagrange multipliers such that all the virtual


displacement coefficients [X]i [Y ]i [Z]i vanish in order to have
s
∂ fi m
Ri = ∑ λk ∂ x k + ∑ μ j (AA ji)x )δ x i (2.50)
k=1 j=1

Collecting all the informations from the previous equations, it is possible to


claim that the motion equations are obtained by solving

∂ fi m
mi ai = Fi + λk + ∑ μ j (A
A ji ) (2.51)
∂ rk j=1

together with the constraint equations

fi (r1 , ...rn ,t) = 0 (2.52)

and

N
∑ A i j · v j + A it = 0 (2.53)
j=1

• Generalized coordinates. This approach is based on the knowledge of


the system Kinetic and Potential energy. According to it, the Lagrangian
equations for a n DOFs RMBS, are given by

d ∂L ∂L
( )− = Qk (2.54)
dt ∂ q˙k ∂ qk
where L(qk , q̇k ) = T (qk , q̇k ) −V (qk ) is the so called Lagrangian, qk are the
system generalized coordinates while Qk are the non-conservative forces.
The Kinetic energy for a RMBS is expressed as

1 n (i)T (i) (i)T (i)


T= ∑
2 k−1
[mi q̇qT J L J L q̇q + q̇qT J A J A q̇q] (2.55)

where J L is the linear velocity Jacobian and J A is the angular velocity


Jacobian.
The Potential energy, is obtained by
n
V = ∑ mi g To rCi (2.56)
i−1

where rCi is the center of mass position respect to a global reference system.
26 Rigid Multi-Body Modelling

The expression of the generalized forces, instead, derives from the virtual
displacement principles. A virtual displacement, δ pi , is an ideal displace-
ment, allowed by the RMBS constraints, caused from a generic force Fi that
acts on the system. It is estimated by using the following relation
n
∂ pi
δ pi = ∑ ∂ qk ∂ qk (2.57)
k−1

the work done by Fi while performing this general displacement qk can be


calculated by
r n
∂ pi
δL = ∑ Fi ∑ ∂ qk ∂ qk (2.58)
k−1 k−1

where qk is the RMBS generalized coordinate.


Since the qk are arbitrary, it is allowed to assume that q j = 0 when j = k and
q j = 0 when j = k. For these reasons,
r
∂ pi
n
δ Lk = ∑ Fi ∑ ∂ qk = Qk δ qk (2.59)
k−1 k−1 ∂ qk

because
r
∂ pi
n
Qk = ∑ Fi ∑ = Fi τi,k (2.60)
k−1 k−1 ∂ qk

Starting from the Eq. (2.54) and substituting in it the Eq. (2.55, 2.56, 2.60) a
new formulation for the Lagrangian is then obtained. By manipulating it, it
is possible to reach the equations of the motion.

2.4 Applications

The two applications of this chapter regards the Kompact Actuated modulaR Limb
(KARL) and one of the leg of the HyQ robot. The first one contains a global kinematic
analysis of a new conceived RMBS starting from a position analysis carried out with a
polynomial approach and reaching the singularities investigation. The work presents
even some device performances thanks to some experimental tests done with a physical
prototype. The HyQ study is more focused on the dynamic aspects investigated by the
virtual works principle. However a kinematic analysis is also required. In this case it is
based on the DH method.
2.4 Applications 27

Medial Medial

Distal

c. p. Distal c. p.

a b

Fig. 2.6 KARL Mechanism: a) Physical set-up; b) Multibody Model. The connection points
(c.p.) illustrates the position where the mechanism is linked to the external frame, that in this
case is represented from the blue environment.

2.4.1 Applications 1: Kompact Actuated modulaR Limb

Mechanism Description

KARL is a general purpose limb whose design strategy is focused on two goals:
modularity and inertia reduction [33, 34]. The robot main body modularity must be
interpreted both in terms of the multiple usages of the same object and in terms of easy
implementation by means of a simplified 2R chain schema with reduced number of
connection points (c.p.) within the robot main body. A suitable arrangement of the
actuators, which are close to the global rotation axis of the structure, allows a reduction
of the inertial effects due to the mass of such components.
The mechanism consists of two main bodies called Medial and Distal mutually con-
nected by a revolute joint. The Medial is directly attached to the external frame and it
carries the whole actuation system; the Distal, joined to the Medial, has only the aim
of supporting the end effector (gripper or ankle). For these reasons, the dimension of
the Medial section is bigger compared to the Distal one as shown in Fig. 2.6.
The actuation system is composed of two linear stepper motors, with maximum thrusts
of, respectively, 300[N] and 600[N] which are hinged to the c.p. and whose strokes
are parallel to each other as shown in Fig. 2.7. The Actuator 1 (S1), related to q1 ,
is responsible of the Medial rotation with respect to the fixed frame, it weights 0.65
kg and it maximum speed is 70[mms−1 ]. Actuator 2 (S2), is responsible of q2 and it
allows the Distal rotation with respect to the Medial frame, it weights 0.20[kg] and its
maximum speed is 55[mms−1 ] as shown in Fig. 2.8. The rotational workspace devoid of
singularities reachable with such actuation are: −25o < q1 < 75o and 31o < q2 < 154o .
The device modularity also extends to the electronics in order to make easy reproduc-
tion and coordination of several devices. An RS485 bus connects the drivers allowing
28 Rigid Multi-Body Modelling

C
DEVICE DIMENSIONS [mm]
0
A=[0 0 0]T

L2
1B=[300 50 0]T
1
S1=[20 40 0]T D
1S -20 0]T l1 B
2=[-20
2 S1 P1
P3=[-50 0 0]T
P3
l1=230
l2
l2=150 A
P2
L1=304.1 L1
S2
L2=300 O

Fig. 2.7 KARL principal geometrical dimensions.

synchronous operation of all the motors. In this prototype the motors are controlled
in position, by use of a SMCI36 compact and high-performance stepper motor and
BLDC motor output stage from Nanotec. This set-up allows a precision positioning up
to 0.1[mm] and a linear speed of 100[mms−1 ] .

The development process which led to the prototype sizing of actuators and structures
has been based on a Multibody Model of the mechanism that exploits the capabilities
of such RMBS Fig. 2.6.

Position Kinematics

The kinematics of the robotic device has been conceived to realize a modular limb
feasible for being used in different applications. To this aim, a specific design has
been studied with the main target of leaving the limb as much as possible independent
from the frame to which it is connected. The linear actuators, which solidly move with
the medial body, actuate the two DOFs through properly shaped closed kinematics
linkages. The two DOFs of the device are independent and can operate separately.
Thus, the Direct and Inverse Kinematic Problems (DKP and IKP respectively) can
be tackled separately for the two rotations q1 and q2 . In this analysis, the polynomial
approach has been used because it was retained the most suitable for describing a serial
modular mechanism.
2.4 Applications 29

q2

^` x
y
^` B
P1
yS G P3
y 1 P
^` G 2 q1
x
A x
S2
O

Fig. 2.8 KARL kinematics schema.

– Direct Kinematic Problem. For the first link, the kinematics is fully described by
the equation:
0 T 0 
P1 − 0O P 1 − 0 O = l12 (2.61)

where 0 O is the origin of reference frame {0} and 0 P 1 is the connection point
among the screw of Actuator 1; the length l1 is a constant parameter depending
on the geometry of the mechanism. The position of point 0 P 1 is related to the
rotation of the first revolute joint q1 :



0P
1
1P
1 R z (q1 ) 0 3×1 1P
1
= 0T 1 = (2.62)
1 1 0 1×3 1 1

where R z (q1 ) is a rotation around the x axis of angle q1 and 1 P 1 expresses the
position of the point with respect to reference frame

T
{1} : 1 P 1 = δ1 cos α + 1 S1,x δ1 sin α + 1 S1,y 0 (2.63)

with δ1 stroke of Actuator 1 and 1 S 1 position of Actuator 1 with respect to


frame {1}. The angle α is a constant geometric parameter which describes the
orientation of the actuators with respect to the Medial body.
The kinematics relation hereby presented can be expressed in terms of polyno-
mials by introducing the variables c1 = cos q1 and s1 = sin q1 , which are related
30 Rigid Multi-Body Modelling

by c21 + s21 = 1. Thus, solution of equation (2.61), i.e. the solution of the DKP, is
given by the vanishing set of polynomials:
T 0 
Π1 : 0 P 1 − 0 O P 1 − 0 O − l12
(2.64)
Π2 : c21 + s21 − 1

with unknowns c1 and s1 . The polynomials (B.3) can be rewritten as:

Π1 : 1 π ci s j
∑ i, j 1 1
i, j = 0..2
i+ j ≤ 2
2 π ci s j
(2.65)
Π2 : ∑ i, j 1 1
i, j = 0..2
i+ j ≤ 2

where 1 πi, j and 2 πi, j are functions of both the geometrical parameters and the
stroke δ1 . The vanishing set of Eq. (2.65) can be now be rebuilt in terms of
the Sylvester matrix of the system by keeping one of the two unknowns as a
parameter, for example s1 :
⎡ ⎤
2 1
1π s j 1π j 1π

⎢ j=0 0, j 1 ∑ 1, j s1 2,0 0 ⎥
⎢ j=0 ⎥ ⎡ 0⎤
⎢ 2 1 ⎥ c
⎢ j
∑ 1 π0, j s1
j
∑ 1 π1, j s1 1π ⎥ ⎢ 1⎥
⎢ 0 2,0 ⎥ ⎢ 1 ⎥
⎢ j=0 j=0 ⎥ ⎢c1 ⎥
⎢ 2 ⎥ ⎢ 2⎥ = 0 (2.66)
⎢ 2 1 ⎥
j
⎢ ∑ π0, j s1
j
∑ 2 π1, j s1 1π
2,0 0 ⎥ ⎣c1 ⎦
⎢ j=0 ⎥ c3
⎢ j=0
⎥ 1
⎣ 1π ⎦
2 1
j j
0 ∑ 2 π0, j s1 ∑ 2 π1, j s1 2,0
j=0 j=0

Thus, the variety of polynomials Π1 and Π2 must belong to the kernel of the
matrix appearing in (2.66), hereby called M 1 . In order to have a non-trivial
solution, M 1 must be singular, therefore det M 1 = 0. Such condition provides
a univariate polynomial of degree 2 in s1 , whose zeros represent the assembly
modes [20] of the DKP. Back-substitutions of the values of s1 in (2.66) yields to
the solution of the DKP.
An analogous process can be used for rotation q2 , starting from the equation:
1 T 1 
P2 − 1P3 P 2 − 1 P 3 = l22 (2.67)

where 1 P 2 expresses the position of the point with respect to reference frame

T
{1} : 1P
2 = δ2 cos α + 1 S 2,x δ2 sin α + 1 S2,y 0 (2.68)
2.4 Applications 31

with δ2 stroke of Actuator 2 and 1 S 2 position of Actuator 2 with respect to frame


{1}. The expression of point 1 P 3 depends on the rotation q2 as follows:



1P
3
2P
3 Rz (q2 ) 03×1 2P
3
= 1T 2 = (2.69)
1 1 0 1×3 1 1

with 2 P 3 constant position of the attachment point with respect to frame

T
{2} : 2 P 3 = 2P
3,x 0 0 (2.70)

The rotation matrix in this last equation can be written in terms of c2 = cos q2 and
s2 = sin q2 so as to obtain, together with the relation c22 + s22 = 1, two polynomials
Π3 and Π4 of degree 2:
T 1 
Π3 : 1 P2 − 1 P3 P2 − 1 P3 − l22
(2.71)
Π4 : c22 + s22 − 1

whose vanishing set provides the solution to the DKP of the linkage system
attached to Actuator 2 by relating the stroke of the second actuator δ2 to the
rotation q2 of the Distal body of the mechanism. The solution is obtained
following the same procedure applied for q1 .
In conclusion, for every couple of strokes δ1 and δ2 four different configurations
can be found for the device, corresponding to all the combinations of the obtained
values of q1 and q2 . Such four poses correspond to many positions of the end-
effector of the device that could be located, for example, at point C .
– Inverse Kinematic Problem. This brief section is dedicated to the solution of the
IKP of the mechanism, i.e. the relation subsisting among a given position of the
end-effector and the strokes of the two actuators. For such task, the polynomials
Π1 and Π3 can be used again considering unknown the strokes δ1 and δ2 and as
parameters the variables c1 , s1 , c2 and s2 . Under these hypotheses, both Π1 and
Π3 are univariate polynomials of degree 2 in the respective unknown stroke. For
each of them two assembly modes are found corresponding to the zeros of the
respective polynomial for a total amount of four possible combinations of δ1 and
δ2 . In conclusion, for a given position of the end-effector eight possible sets of
strokes are found for the device, four for each set of rotations q1 and q2 .
– Velocity Kinematics. In this section the velocity kinematics of the proposed
mechanism is analysed. To this aim, the coordinates of the point C on plane x − y
32 Rigid Multi-Body Modelling

with respect to frame {0} are taken into consideration:


L1 c1 + L2 (c1 c2 − s1 s2 )
0
C= (2.72)
L1 s1 + L2 (s1 c1 + c1 s2 )

Velocity of point C can be obtained, as aforementioned, differentiating its position


coordinates. In matrix form they are:

−L1 s1 − L2 (c1 s2 + s1 c2 ) −L2 (c1 s2 + s1 c2 ) q̇1


0
C=
Ċ (2.73)
L1 c1 + L2 (c1 c2 − s1 s2 ) L2 (c1 c2 − s1 s2 ) q̇2

The determinant of the Jacobian matrix in the last equation vanishes when (q2 =
0, π). Such configurations are external to the workspace of the limb and therefore
they are not relevant singularities for the mechanism.
On the other hand, it is worth studying the behaviour of the two actuation linkages,
which could fall into singular configurations. The derivatives of the four constraint
polynomials Π1 , Π2 , Π3 , Π4 are used to this purpose. For example, the velocities
of the bodies of the first linkage are ruled by:


∂ Π1 ∂ Π1 ∂ Π1
∂ c1 ∂ s1 ċ1
∂ Π2 ∂ Π2 = − ∂∂Πδ12 δ̇1 (2.74)
∂ c1 ∂ s1 ṡ1 ∂δ 1

or in a more intelligible shape:


ċ1
Ψ = Γ δ̇1 (2.75)
ṡ1

Inversion of system (2.75) allows obtaining a constraint matrix which relates the
stroke rate of the first actuator to the angular velocity q̇1 through the rates of the
two variables c1 and s1 :

ċ1
= Ψ−1 Γδ̇1 (2.76)
ṡ1
Singularities of the matrix Ψ de facto represent the singular configurations to
whom the first linkage is subject:
 
det Ψ = 4 A0,y c1 − A0,x s1 δ1 cos α + 1 S1,x +
  (2.77)
−4 A0,x c1 + A0,y s1 δ1 sin α + 1 S1,y

Substitution of the solutions of the DKP (2.66) into (2.77) allows finding the
values of the actuation parameter δ1 which makes the determinant det Ψ vanished.
2.4 Applications 33

The following stroke values are found for the chosen set of geometrical parameters
of the device: δ1 = 0.2534, −0.2797, 0.1720, −0.1983 m. From a geometrical
point of view, such condition correspond to particular cases for which it occurs
the alignment either of points A -OO-P
P1 or of points S 1 -O
O-PP1 . Such four values
bound the device workspace. In the present case study it is valid the range the
range 0.1720 ≤ δ1 ≤ 0.2534 m.
Similarly, the singularities of the actuation linkage connected to the second
actuator can be found. To this aim, it is possible to consider the matrix:

∂ Π3 ∂ Π3
∂ c1 ∂ s1
Ω= ∂ Π3 ∂ Π4 (2.78)
∂ c1 ∂ s1

whose determinant is:


 
det Ω = 42 P3,x L1 − δ2 cos α − 1 S2,x s2 +
  (2.79)
+ δ2 sin α + 1 S2,y c2

Also in this case, the solutions of the DKP can be substituted into vanishing
set of equation (2.79) to find the singular configurations of the second actuation
linkage, which are for the given geometry: δ2 = 0.3848, 0.2481, 0.5026, 0.1302
m corresponding to the four alignment conditions of points B -PP2 -P
P3 .
The present prototype exploits the range of strokes included in 0.1302 ≤ δ2 ≤ 0.2481 m,
to whom it corresponds the angular range 31o < q2 < 154o .

Device Performance

The knowledge of the differential kinematics allows the estimation of the per-
formance of the device. In order to have a more affordable relation between
velocities and forces exerted by the actuators as well as rotation rates and torques
in the joint space, some mathematical manipulation of the differential kinematics
is still needed. To this aim, the equations defining parameters ci and si are consid-
ered: ci = cos qi and si = sin qi . Derivation with respect to time of such equations
provides:

ċi −si
= q̇i (2.80)
ṡi ci
T
The vector −si ci is hereby called Ψ i . Considering the first actuator, rela-
tion (2.80) can be substituted into equation (2.75) to obtain the needed relation
34 Rigid Multi-Body Modelling

between δ̇1 and q̇1 :


Ψ Φ1 q̇1 = Γ δ̇1 (2.81)

∂ Π2 ∂ Π2
The second row of this system is identically null, being Ψ 1 ∈ ker ∂ c1 ∂s
.
1
Thus, equation (2.81) yields:

∂ Π1
∂ δ1
q̇1 = δ̇1 (2.82)
s1 ∂∂Πc 1 − c1 ∂∂Πs 1
1 1

or q̇1 = λ1 δ̇1 , where λ1 is the coefficient appearing in equation (2.82). A similar


expression can be extrapolated for the second actuator, so as:

∂ Π3
∂ δ2
q̇2 = δ̇2 (2.83)
s2 ∂∂Πc 3 − c2 ∂∂Πs 3
2 2

or, as done before for the first linkage, q̇2 = λ2 δ̇2 . These last two equations can
be collected in matrix form to obtain a matrix Λ that relates the vector of strokes
rates δ̇i to the vector of rotation rates q̇i :


q̇1 λ1 0 δ̇1
= −→ q̇q = Λ δ̇δ (2.84)
q̇2 0 λ2 δ̇2

The matrix Λ gives information about the capability of the actuation linkages to
transform the linear velocities of the two strokes into angular velocities of the
Medial and Distal bodies. Moreover, Λ can be usefully exploited, as far as a
Jacobian matrix, to evaluate the torques exerted in the space of rotations q1 and
q2 by two forces applied by the two actuators: τ = Λ −T F , where τ is the vector
of the torques in the space of rotations q1 and q2 and F is a vector collecting the
forces exerted by the two actuators in the direction of the two strokes δ1 and δ2 .

Experimental Tests

This section shows the the outcomes from a set of experiments conducted on the
device prototype. The main aim is to investigate the behaviour of the mechanism
in two different operative conditions. The limb has been tested in a vertical
arrangement, with gravity acceleration acting in direction of the y axis of reference
frame {0} and in a horizontal arrangement, with gravity acceleration acting on
2.4 Applications 35

g g

G motors strokes G motors strokes


q joints angular velocity q joints angular velocity
F actuation forces F actuation forces
W provided torques W provided torques

VERTICAL ARRANGEMENT - TEST #1 HORIZONTAL ARRANGEMENT - TEST #1


G [mm]
q [rad s-1]
F [N]
W [Nm]

Time [s] Time [s]


VERTICAL ARRANGEMENT - TEST #2 HORIZONTAL ARRANGEMENT - TEST #2
G [mm]
q [rad s-1]
F [N]
W [Nm]

Time [s] Time [s]

Fig. 2.9 Experimental results at different velocities for both vertical and horizontal arrange-
ment of the device; curves are shown for given actuators trajectories in terms of rates of
the revolute joints (q̇1 and q̇2 ), force exerted by the actuators (F1 and F2 ) and the equivalent
torques τ1 and τ2 at joints q1 and q2 .
36 Rigid Multi-Body Modelling

a direction perpendicular to the leg plane (z axis of reference frame {0} for
example).
For each condition, different velocities have been tested, starting from low speed
(Actuator 1 speed = 2.2[mms−1 ] and Actuator 2 speed = 2.6[mms−1 ] ) to high
speed (Actuator 1 speed = 9.0[mms−1 ] and Actuator 2 speed = 10.6[mms−1 ]). The
experimental quantities have been measured in terms of forces strokes detected by
2 loadcells mounted in series with each motor (Burster 8417) and displacement
were estimated from the actuators strokes.
Two sets of values are reported in Fig. 2.9 for each one of the investigated
arrangements. Besides the forces F1 and F2 exerted by the two actuators, the
curves also show the behaviour of the mechanism in terms of angular velocities
and torques ranges of the two revolute joints q1 and q2 . Such information are
obtained by means of the matrix Λ .
As well expected, the strokes of the two linear motors are much higher when the
limb is arranged in vertical configuration. Moreover it is possible to observe a
low frequency oscillation in the curves corresponding to horizontal arrangement.
This undesired effect is mostly due to the low quality of the materials used for
prototypation of KARL. It is authors’ opinion that such inconvenient can be
overcome by a more reliable physical model, which is at this time object of
design seen the interesting results obtained. This conclusion is due to the fact that
most part of the bodies of the device has been realized by means of 3D printing
techniques. The coupling of these components with those having a much higher
density (such as the stepper actuators) causes a disproportionate ratio between
the masses of the actuators and the cross sections of many bodies. This fact also
makes not possible to envisage more interesting tests with loads coming from
tasks of locomotion or manipulation of heavy objects. For sake of truth it is
important to remark that the present prototype has been built only to proof the
kinematic feasibility of the proposed mechanism, a more complete prototype for
testing the aforementioned performances, is at present object of study.

Main Achievements

The major contribution offered by KARL development to the robotic commu-


nity is given by its optimized shape suitable for various robotic demands. The
kinematic and experimental studies of the mechanism suggested that the device
can be adapted to be used as limb as well as a general manipulator: its peculiar
2.4 Applications 37

structure makes it particularly feasible for modular applications. In particular, the


device can be promising in the fields of prosthetics of arms and even fingers with
different sets of links dimensions due to the compactness of actuation and of the
connection to a frame.

2.4.2 Applications 2: Hydraulic Quadruped Leg

Robot description

The robotic platform which has inspired the model presented in this section is the
Hydraulically Quadruped robot (HyQ, see Fig. 2.10, [117]. It weights 70 [kg], it
is 1 [m] long and each of its four legs has three degrees of freedom each: two in
the sagittal plane (hip and knee flexion/extension) and one in the transversal one
(hip adduction/abduction). The torso doesn’t influence the system mobility, it has
only to carry the instruments and acts like a support for the four legs.
HyQ is designed to perform high dynamic tasks like jumping, running, climbing,
etc. Cause of these dynamic capabilities are challenging to deal with, therefore,
it is necessary to integrate a perfect combination between structural aspects and
control. The solution proposed in this thesis is based on the Virtual Prototyping
approach: it consists of developing a Multibody Model (MBM) in a proper
software environment, which is able to perform dynamical and structural analysis
integrated with the control.
However, building a good MBM could be very difficult due to the simultaneous
presence of both complex physical phenomena and control laws. On the other
hand, if all the parameters involved in the simulation are not well known, it is
easy to achieve wrong or misleading results. For these reasons, a parametric
identification for both the structural and the hydraulic parameters it is required.
The first step to achieve this aim is to investigate the system dynamics as will
be discussed in the next paragraphs. Once the dynamics is well known, the
identification can take place, as presented in Chapter 5.
This work focuses on the modelling of one of the robot legs and represents a
preliminary step to product of a complete MBM of the HyQ. The main goal
is identifying some of the robot physical parameters with the aim of produc-
ing a more reliable model which could be validated by experimental results.
Since the legs hold the biggest contribution to the mobility of that machine, the
identification process must have been started by their analysis first.
38 Rigid Multi-Body Modelling

Fig. 2.10 The Hydraulically Quadruped Robot HyQ on the left side and one of its leg on the
right.

Kinematics

In order to provide a complete dynamic description of the robotic leg, firstly its
kinematics should be understood. In the following, the mathematical relations
which describe the position and the velocities of each body of the mechanism are
explained, [31].

• Position Kinematics. The actuation of the robotic leg is provided by the


strokes of the two hydraulic pistons H1 -H2 and K1 -K2 (see Fig. 2.11.a),
whose displacements are hereby called respectively s1 and s2 . Nevertheless,
it is useful to describe the kinematics of the whole mechanism by means of
the two rotations q1 and q2 only. This can be exploited because the direct
correlation between the displacement of each piston and the rotation of the
respective revolute joint is already determined. As a matter of fact that, the
resulting system is equivalent to the one based on the use of the strokes
positions, moreover it owns some interesting advantages such as the ease
of solution for the DKP and a chance of writing the direction of the two
actuators as:
 
0 ŝs
1 = 1 0
s1 H 2 − 0H 1 0 ŝs
2 = 1 0
s2 K 2 − 0K 1 (2.85)

where 0 H 1 = 0 T 1 1 H 1 , 0 H 2 = 0 T 1 1 T 2 2 H 2 , 0 K 1 = 0 T 1 1 T 2 2 K 1 and 0 K 2 =
0 T 1 T 2 T 3 K are the transformation matrices, which are detailed later,
1 2 3 2
2.4 Applications 39

while the vectors 1 H 1 , 2 H 2 , 2 K 1 , 3 K 2 represent the connection points of the


actuators and they are pre-settled by the structural design of the leg itself
(represented as blue vectors in Fig. 2.11.B). This choice allows to solve the
complexities related to the two present closed kinematics loops in a very
simple way. Using the absolute position of the connection points, the strokes
of the actuators are:

T
s1 = (0 H 2 − 0 H 1 ) (0 H 2 − 0 H 1 )
 (2.86)
T 0
s2 = ( 2 − 1 ) ( 2 − 1 )
0 K 0 K K 0 K

In the leg plane, the position kinematics can be fully described through the
loop closure equation a + b + c + d = 0 (red vectors in Fig. 2.11.B) whose
expansion yields to:

yA = LUL cos q1 + LLL cos (q1 + q2 )


(2.87)
xC = LUL sin q1 + LLL sin (q1 + q2 )

where LUL and LLL respectively describe the length of the upper leg A-BB and
C.
the lower leg B -C
The solution of the DKP allows writing the position vector of point 0 A as
T
a function of the two rotations q1 and q2 : 0 A = 0 yA . By using this
starting point and relative coordinates, the position and the orientation of
each body along the main kinematic chain can be computed as well as the
position of their centers of gravity:

0cg
1 = 0T 1cg
1 1
0cg
2 = 0T 1T 2cg
1 2 2 (2.88)
0cg
3 = 0T 1T 2T 3cg
1 2 3 3

where the matrices i T j are the homogeneous transformation matrices existing


among two reference frames {i} and { j}. As defined in Fig. 2.11.C, the
40 Rigid Multi-Body Modelling

transformation matrices are:


I 3×3 0A
0T
1 =
0 1×3 1

R z (θ1 + 3/2π) 0 3×1


1T
2 = (2.89)
0 1×3 1

R z (θ2 ) B
2
2T
3 =
0 1×3 1

where R z (α) indicates the rotation matrix around the vertical axis z =
T
0 0 1 of an angle α. It should be noticed that the vectors 1 c g 1 , 2 c g 2 ,
3cg are constants depending on the design geometry of the robot bodies.
3
As already the orientation of the hydraulic actuators mentioned in Eq. (2.85),
the coordinates of their centers of gravity are obtained through:

0cg
4 = 0T 4cg
4 4
0cg
6 = 0T 6cg
6 6
(2.90)
0cg
5 = 0T 5cg
5 5
0cg
7 = 0T 7cg
7 7

where the transformation matrices are obtained by exploiting the formulation


of 0 ŝs1 and 0 ŝs2 which have given previously.

0 ŝs
1 z ∧ 0 ŝs1 z 0H
1
0 ŝs
2 z ∧ 0 ŝs2 z 0K
1
0T
4 = 0T
6 =
0 1×3 1 0 1×3 1

−0 ŝs1 −zz ∧ 0 ŝs1 z 0H


2 −0 ŝs2 −zz ∧ 0 ŝs2 z 0K
2
0T
5 = 0T
7 =
0 1×3 1 0 1×3 1
(2.91)
Also in this case the position vectors of the centers of gravity, namely 4 c g 4 ,
5 c g , 6 c g and 7 c g , are constant values depending on their individual body
5 6 7
geometry respectively.

• Velocity Kinematics. In this section, the velocity kinematics of the robotic


leg is faced. To obtain an analytical dynamics formulation, the angular
velocity and the linear velocity of the respective center of gravity of each
body should have been estimated first.
The velocity kinematics is also carried out according to the previous as-
sumption of representing the system by two rotary joint variables in A and
B only, Fig. 2.11.a. Nonetheless, it turns quite comfortable in terms of
2.4 Applications 41

y y {2}
1
H2
cg1 x
H1 4
cg4 H1 {1} H1
2
H2 1 cg 1 5cg5 y
H2 x y {5} x
A A cg4 A y
cg5 x {4} y
2
K1 H2 H2
LU K1 2
cg2 {6}
K1 K1 x
L
6cg cg2
6 b
q1 cg6 B q1 x
B cg7 x
K2 y
7
cgBK K2 3K
2
{7} K2 {3}
y q2 y
LL

a cg3
L

3
cg3
c
C y {0}
x d x
O O C O x C
(A) (B) (C)

Fig. 2.11 The HyQ Robotic Leg: (a) Geometry, (b) Position of the reference frames (c)
Position vectors of relevant points.

computational burden to consider an augmented joint velocity vector such


T
as q̄q˙ = q̇1 q̇2 ṡ1 ṡ1 . The vector q̄q˙ can be then related to the rotation

rates of the revolute joints q̇q = q̇1 q̇2 thanks to a constraint matrix built
as follows: ⎡ ⎤ ⎡ ⎤
q̇1 1 0
⎢q̇ ⎥ ⎢ ⎥

⎢ 2⎥ ⎢ ⎢ 0 1 ⎥ q̇1
⎢ ⎥ = ⎢ ∂ s1 ∂ s1 ⎥ ⇒ q̄q˙ = Ψ q̇q (2.92)
⎣ ṡ1 ⎦ ⎣ ∂ q1 ∂ q2 ⎥ ⎦ q̇2
∂ s2 ∂ s2
ṡ2 ∂q ∂q 1 2

The velocities of the centers of mass can be found by simply deriving the
direct kinematics equations as expressed in Eq. (2.88) and (2.90). As an
example, differentiation of 0 c g1 yields:
⎡ ⎤
1 cg
S,x
⎢1 ⎥
0 c˙g
1 = ⎣ cgS,y + LUL cos q1 + LLL cos (q1 + q2 )⎦ =
d
dt
0
⎡ ⎤ (2.93)
0
⎢ ⎥
= ⎣−LUL q̇1 sin q1 − LLL (q̇1 + q̇2 ) sin (q1 + q2 )⎦
0

Besides the linear velocity of the center of gravity, the angular velocity of
each member must be found. To achieve this aim, the well known skew
42 Rigid Multi-Body Modelling

symmetric angular velocity matrix Ω = Ṙ RR T has been exploited to reach


a general formulation of the rotational kinematics. That means a probable
simpler future implementation of the model for a more complete non-planar
mobility. For each body, the angular velocity is computed as:
⎡ ⎤ ⎡ ⎤
0 −0 ωz,i 0 ωy,i 0ω
i,x
⎢ ⎥ ⎢ ⎥
0
Ri 0 R Ti = ⎣ 0 ωz,i
Ω i = 0 Ṙ 0 −0 ωx,i ⎦ ⇒ 0 ωi = ⎣0 ωi,y ⎦ (2.94)
−0 ωy,i 0 ωx,i 0 0ω
i,z

where i is the number of the reference frame attached to the respective body,
i.e. frame {1} for the slider, frame {2} for the upper leg, frame {3} for the
lower leg, frame {4} for the hip cylinder, frame {5} for the hip beam, frame
{6} for the knee cylinder and frame {7} for the knee beam.
Linear and angular velocities can be collected in a matrix form with the
classical Jacobian formulation. For the ith body it is:
⎡ ∂ 0 ∂ 0 ∂ 0 ∂ 0

∂ q1 ωi,x ∂ q2 ωi,x ∂ s1 ωi,x ∂ s2 ωi,x
⎢ ∂ 0 ∂ 0 ∂ 0 ∂ 0 ⎥⎡ ⎤
⎢ ω ∂ q2 ωi,y ∂ s1 ωi,y

∂ s2 ωi,y ⎥ q̇1

⎢ ∂ q1 i,y
⎢ ∂ 0ω ∂ 0 ∂ 0 ∂ 0 ⎥⎢ ⎥
∂ q2 ωi,z ∂ s1 ωi,z ∂ s2 ωi,z ⎥ ⎢q̇2 ⎥

⎢ i,z
= ⎢ ∂∂q10
i
∂ 0 ∂ 0 ∂ 0 ⎥⎢ ⎥ (2.95)
0 c˙g ⎢ ⎥⎣ ⎦
i ⎢ ∂ q1 cgi,x ∂ q2 cgi,x ∂ s1 cgi,x ∂ s2 cgi,x ⎥ ṡ1
⎢ ∂ 0 cg ∂ 0 ∂ 0 ∂ 0 ⎥ ṡ
⎣ ∂ q1 i,y ∂ q2 cgi,y ∂ s1 cgi,y ∂ s2 cgi,y ⎦ 2
∂ 0 ∂ 0 ∂ 0 ∂ 0
∂ q1 cgi,z ∂ q2 cgi,z ∂ s1 cgi,z ∂ s2 cgi,z

Equation (2.95) is the typical formulation ẋxi = J i q̄q˙ where J S is the Jacobian
matrix of the i-body. Substitution of Eq. (2.92) eliminates the two actuation
rates ṡ1 and ṡ2 from velocity equations:

ẋxi = J i ψ q̇ (2.96)

• Acceleration Kinematics. The acceleration kinematics of the leg mem-


bers can be achieved by simply differentiating the equations of velocity.
Therefore, it is sufficient to derive Eq. (2.96). Thus, for each body it is:

d 
ẍxi = (JJ i ψ q̇) = J i ψ q̈q + J̇J i ψ + J i ψ̇ q̇q (2.97)
dt
2.4 Applications 43

Dynamics

This section proposes the dynamics modelling of the robotic leg, worked out
using the virtual work principle approach [31]. The motion equations are here
determined by means of the virtual work principle. It requires the definition of
the 6 dimensional wrenches whose components collect resultants of active and
inertial forces and torques acting on each body, computed with respect to the
respective center of mass. Such vector can be written as:

ni −0 ϒi 0 ω̇i − 0 ωi ∧ 0 ϒi 0 ωi + n e,i
Wi = = (2.98)
Fi mi (gg − ẍxi ) + f e,i

where 0 ϒi is the inertia tensor of the ith body expressed with respect to the
fixed reference frame {0} and mi is its mass; n e,i and f e,i are two external
actions acting the body. The vector g is the gravity acceleration vector g =
T
0 −9.81 0 m/s2 . The wrench W i can be rewritten in a more computable
form by defining the two mass matrices:

0ϒ 03×3 0Ω 0ϒ 03×3
i i i
mi = γi = (2.99)
0 3×3 mi I 3×3 0 3×3 0 3×3

After few manipulations, Eq. (2.98) becomes:



mi J i ψ q̈q − m i J̇J i ψ + J i ψ̇ q̇q
W i = −m

0 3×1 (2.100)
+m
mi − γi J i ψ q̇q +WW e,i
g

T
where W e,i = f Te,i n Te,i
is the vector of external actions on the body i. The
principle of virtual works states then:

7
δ q T τ + ∑ δ x Ti W i = 0 (2.101)
i=1

where δ q is the vector of finite virtual displacements of the actuated joints,


namely the 2 revolute joints in the equivalent model, and τ is the vector of
torques applied to the same joints; the vectors δ xi represent the finite virtual
rotation/displacement of the ith body. As mentione before, the vectors δ q and δ x i
must be congruent with the kinematics of the articulated system. Such condition
44 Rigid Multi-Body Modelling

is respected when δ x i = J i ψδ q . Substitution of this relation into Eq. (2.101)


yields:  
7
δ q τ + ψ ∑ Ji W i
T T T
=0 (2.102)
i=1

For non-null virtual displacements Eq. (2.102) simplifies in:

7
τ +ψ T
∑ J Ti W i = 0 (2.103)
i=1

This last equation describe the dynamics of the articulated leg by relating the
kinematics of the mechanism to the equivalent torques exerted by the actuators
on the two revolute joints. By substituting the Eq. (2.100) in the Eq. (2.103), and
after several manipulation is possible to reach the typical formulation

τ + M (qq) q̈q +V
V (qq, q̇q) + G (qq) + F e = 0 (2.104)

where the contribution given by inertial effects, Coriolis and centrifugal accelera-
tions, gravity acceleration and external actions are collected as here detailed:

- M (qq) is the mass matrix of the mechanical system and, thanks to expansion
in Eq. (2.104) can be collected as:
 
7
M (qq) = −ψ T ∑ J Ti m iJ i ψ (2.105)
i=1

- V (qq, q̇q) collects the efforts due to Coriolis and centripetal accelerations and
it is:
 
7 
V (qq, q̇q) = −ψ T ∑ J Ti m i J̇J i + Γ i J i ψ + m i J i ψ̇ q̇q (2.106)
i=1

- G (qq) is the effect of gravity acceleration on motors torques. This vector


represents the efforts that the actuators should exert to keep the system in a
steady static condition:
 

7
0 3×1
G (qq) = ψ T ∑ J Ti mi g
(2.107)
i=1
2.4 Applications 45

- F e is the projection of the external actions on the actuated degrees of free-


dom: 

7
n e,i
F e = ψ T ∑ J Ti (2.108)
i=1 f e,i

Dynamics Analysis. In this section, the different contributions to the leg


dynamics of some term of the aforementioned equation is analysed [32]. The
aim is to demonstrate the substantial negligibility of some of them according
to the different working conditions.
As already aforementioned, the forces exerted by the actuator during the
motion of the robotic leg can be split to identify the influence of each part
of the model on the whole dynamic behaviour. To achieve this aim, three
indices have been defined as follows:

T T Mq
μM = q̈q M
 τT τ
T
μV = Vτ T Vτ (2.109)

T
μG = Gτ T G τ

The three indices represent the roles played by the mass matrix (μM ), the
Coriolis vector (μV ) and the gravity vector (μG ) on the torques that the
motors exert during a given motion (qq,q̇q,q̈q). It is worth remarking that such
percentages do not reflect the global efforts of the motors because they are
not affected by the signs of the torques as seen in Eq. (2.109) . Nevertheless
they still give information about the contribution of each part of the model.
Therefore, the indices μM , μV and μG have been computed for different
values of velocity and acceleration of the revolute joints, in the whole
workspace of the leg (−40o ≤ q1 ≤ 60o , −140o ≤ q2 ≤ −20o ). Three dif-
ferent ranges of velocity and acceleration have been chosen, corresponding
to three different working conditions: a low duty (LD) range of opera-
tive conditions (comparable with velocities obtained for a HyQ walking,
 
−2.5 ≤ q̇i ≤ 2.5 [rad/s], −1.25 ≤ q̈i ≤ 1.25 rad/s2 ), a medium duty (MD)
range (for tasks such as fast walking of the HyQ robot, −5 ≤ q̇i ≤ 5 [rad/s],
 
−2.5 ≤ q̈i ≤ 2.5 rad/s2 ) and a high duty (HD) (squat jump, −10 ≤ q̇i ≤
 
10 [rad/s], −5 ≤ q̈i ≤ 5 rad/s2 ).
Many points have been analysed within the 6-dimensional space of q, q̇q, q̈q
for the three given working conditions. For each point of the workspace, the
higher values of μM , μV and μG have been recorded. Results are shown in
46 Rigid Multi-Body Modelling

Fig. 2.12. As well visible, the gravity effect represents the most relevant
contribution to the dynamic of the leg in all the LD, MD and HD work
conditions (average values: for LD μG = 99.17%, for MD μG = 97.28%, for
HD μG = 90.90%). The mass matrix grows his effect with the acceleration
of the revolute joints, but it still remains marginal with respect to the effect
of gravity accelerations (average values: for LD μM = 6.57%, for MD
μM = 12.09%, for HD μM = 20.34%). Not even the Coriolis vector can be
neglected in every achievable working condition, because of the variability
of its effect in the different conditions (average values: for LD μV = 34.93%,
for MD μV = 65.57%, for HD μV = 87.30%).

Main Achievements

This work contributed to the field of legged robotic systems by setting a procedure
that permits to highlight which is the role played by the different components of
the motion equation on the overall system dynamics. The procedure is general,
and it can be extended to any RMBS and it permits the simplification of the
dynamics model in specific working conditions. In the case analysed here, for
instance, the out coming results suggest to neglect the contribution of the mass
matrix, M (qq), in the less severe working conditions.
2.4 Applications 47

PG PM PV
í í í
í í í
í í í
q2 [deg]

q2 [deg]

q2 [deg]
LOW DUTY í í í
-2.5 < qi < 2.5
[rad s-1] í í í
-1.25 < qi < 1.25 í í í
[rad s-2]
í í í
í í 0 20  60 í í 0 20  60 í í 0 20  60
q1 [deg] q1 [deg] q1 [deg]
í í í
í í í
í í í
q2 [deg]

q2 [deg]

q2 [deg]
MEDIUM DUTY
-5 < qi < 5 í í í
[rad s-1] í í í
-2.5 < qi < 2.5
[rad s-2] í í í
í í í
í í 0 20  60 í í 0 20  60 í í 0 20  60
q1 [deg] q1 [deg] q1 [deg]
í í í
í í í

HIGH DUTY í í í


q2 [deg]

q2 [deg]

q2 [deg]

-10 < qi < 10 í í í


[rad s-1]
-5 < qi < 5 í í í
[rad s-2] í í í
í í í
í í 0 20  60 í í 0 20  60 í í 0 20  60
q1 [deg] q1 [deg] q1 [deg]

80% 90% 100% 0% 17.5% 35% 0% 50% 100%

Fig. 2.12 Influence of dynamic components for three different working conditions.
Chapter 3

Flexible Multi-Body Modelling

This chapter is focused on the analysis of flexible robotic mechanisms and flexible
connections. Adding flexibility to the RMBS permits to reduce the robots total
weight, to increase the safety within the human-robotic interaction and, moreover,
to prevent structural damages due to the energy absorption guaranteed by the
deformations. The first part of this chapter contains a description of flexible
robots examples and an introduction on the methods used to study the kinematics
and dynamics of those structures; while in the second part, two applications
are illustrated. The first one regards the sensitivity analysis on the joints of one
leg of the Hydraullically Quadruped robot; while, the second one, presents the
modelling of the Technische Universität Dortmund Omnielastic Robot with the
purpose of develop a structural model to integrate with the control algorithm.

3.1 State of Art


Since the early stage of multibody analysis studies, the RMBS were considered
composed by rigid bodies interconnected by rigid joints. However, as soon as
the mechanisms complexity grew up, it became evident that there were situations
where also the structural flexibility has to be taken into account: those are
all the cases undergoing to large rotations and displacements that lead to high
inertial forces on the systems, or where the structural deformations determine
the external forces values acting on the system. The best example to explain
this phenomena are the helicopters rotors whose dynamics influences the blades
flexibility that, in turn, play a role on the aerodynamic loads. Besides these
extreme applications, generally speaking, among the errors encountered without
50 Flexible Multi-Body Modelling

aa b

c d

Fig. 3.1 Flexible robot examples: a) IST robot, b) SSRMS remote manipulator, c)TUDOR
and d) Cheetah MIT

considering the structural flexibility there are two that can be considered as the
main ones: a non proper evaluation of the torque requirements for the motors
and a non precise estimation of the end effector position [38]. For these reasons,
the flexibility started to be considered in the RMBS analysis: by some pioneer
examples, where the bodies were treated as black box elements depending on
the DOFs of the two edges, to more complicated solutions represented by the
non-linear finite elements [47].
The panorama of flexible robotics is wide and it goes from manipulators to
legged robots, from pure research to industrial applications. Many advantages
can be brought by taking into consideration the flexibility of the RMBS, i.e. the
optimization of the energy consumption, the improvement of their industrial
productivity, the more safe human-robotic interaction, the possibility to reach
high speed movement and so on. The design of a flexible robot might bring to a
weight reduction and, due to that, a lower need in terms of energy is guaranteed.
3.2 Kinematics 51

If the robot is lighter, it can reach higher speeds and better manoeuvrability in
the same working conditions of its rigid counterpart [38]. The human-robotic
interaction is not always possible if the robot is bulky and massive, but it will be
for sure safer in case the dimension and the rigidity of it will decrease [73].
Some examples of flexible RMBS are the IST manipulator developed at the Techni-
cal University of Lisbon (Fig. 3.1.a), the space station remote manipulator system
(SSRMS) (Fig. 3.1.b), the aerospace dual arm flexible manipulator (ADAM)
designed from Tohou University, the flexible leg developed at Delph University
or the one designed from the Beihang University, the cheetah robot developed
at MIT (Fig. 3.1.d), the TUDOR robot from the TU-Dortmund Uiversity (Fig.
3.1.c) and many others. The flexibility in the IST manipulator is exploited by
positioning its flexible links in order to have the higher flexibility in horizontal
direction with respect to the other ones. It is used for the investigation of force
control strategies [89]. The SSRMS is a 7 DOF RMBS having an high payload
to manipulator mass ratio, required since it is a space robot, and its workspace
dimension has a diameter of 17.6 [m] when it is fully stretched [123]. The flexible
legs have the purpose of reproducing the muscle functions as energy store and
return [8, 82]. The flexible spine of the MIT Cheetah robot is designed with
the purpose of achieving high speed running capabilities [119]. TUDOR robot,
developed at TU Dortmund with the same philosophy of the IST one, it is studied
for control algorithm purposes [87].
Having highlighted which are the advantages of adding flexibility to a robotic
system and having evaluated some performances of existing flexible robot, it is
possible to address the motivation of this chapter: modelling the aforementioned
structural capabilities with the aim of integrating them in a control algorithm
for achieving a global development process since the early stage of the design,
specially for robots with high dynamic performances.

3.2 Kinematics
The kinematics of flexible bodies is based on a key point: the elastic displacement
presence. Those can be estimated by means of a global or a local reference
system [121, 128]. If the body displacements are described by a global reference
approach, the flexible behaviour is treated by means of mathematical formulations
able to describe large rotations and displacements. These ones, generally speakin,
are based on complex beam theories which give in output high non-linear equa-
52 Flexible Multi-Body Modelling

,Y n
E2

On
no
Xp
xp
e 2,Y k
n
3 ,Z

up
E

Ok
E1 , X
e 3,Z k Yp n

t
rn

e 1,X
Yn

k
n
rp
YI On
Zn

Xn
ZI OI XI

Fig. 3.2 Global reference system represented in yellow, body reference system highlighted in
green, section reference frame drawn in blue while point position represented by red arrows.
Courtesy of J. Sa da Costa

tions. At the opposite, if the displacement are treated by a body reference frame,
everything is based on small displacements approach. It results in a coupled
motions PDEs equations since it commonly uses the structure shape functions.
This second approach is closed to the formulation used in the control theory.

3.2.1 Inertial reference approach

The body configuration, according to the global reference approach, is given once
the position vector of its extremity nodes, x p and x q is known [11]. These are
respectively expressed by means of two orthonormal reference triads [eexp , eyp , ezp ]
q q q
and [eex , e y , e z ], which, in turns, depend both from the rotation given by the rigid
body motion, and here described by the rotation matrix Re and from the rotation
due to the deformation and estimated by means of Rq and R p respectively, as in
Eq. (3.1).

q q q
[eexp , e yp , e zp ] = R p Re [eex , e y , e z ] [eex , e y , e z ] = Rq Re [eex , e y , e z ] (3.1)
3.2 Kinematics 53

where [eex , e y , e z ] is the inertial reference frame. The two rotation matrices related
to the deformation can be parametrized with Euler parameters [68, 55] λ =
[λ0 , λ1 , λ2 , λ3 ]T as

⎡ ⎤
λ02 + λ12 − λ22 − λ32 2(λ1 λ2 − λ0 λ3 ) 2(λ1 λ3 + λ0 λ2 )
⎢ ⎥
Ri = ⎣ 2(λ1 λ3 + λ0 λ2 ) λ02 − λ12 + λ22 − λ32 2(λ2 λ3 − λ0 λ1 ) ⎦ (3.2)
2(λ1 λ3 + λ0 λ2 ) 2(λ2 λ3 − λ0 λ1 ) λ02 − λ12 − λ22 + λ32

At the end, the nodal coordinates vector can be written as function of both the
reference frame location and orientation as expressed in
T T T T

x = r p , λ p , rq , λ q (3.3)

and, as a consequence, its velocity is estimated by means of


 
pT qT
ẋx = ṙr pT
λ
, λ̇ , ṙr pT
λ
, λ̇ (3.4)

Once the positions and the velocities have been estimated, the remaining inter-
esting quantity to take in account, to calculate the body potential energy and to
compute the motion equation of the system, is the body deformation ε .

ε = D(xx) (3.5)

where


⎪ ε1 = l − l0




q q
ε2 = l0 (eezp · e y − e yp · e z )/2


⎨ ε = −l e · e p
3 0 l z
(3.6)


q
ε4 = l0 e l · e z



⎪ ε5 = l0 e l · e yp


⎩ q
ε6 = −l0 e l · e y

where l = rr q − r p and e l = (rr q − r p )/l, [11].

3.2.2 Local reference approach


The use of a local reference system allows sharing the body elastic deformation
from the body motion. The body deformation theories mostly rely on the Timo-
54 Flexible Multi-Body Modelling

shenko beam approach. This one considers both bending and shear deformation
and moreover, it assumes that the plane beam cross sections before deformation
remain plane after it. Since, the stiffness of a RMBS in its longitudinal direction
is much larger than the one in its transversal plane, it is reasonable to consider
the beam natural fibre as inextensible and assume that the beam natural axis is a
straight line in the undeformed configuration. In order to remain in the first order
theory, then, the strains need to be considered small. This approximation is co-
herent with the choice of the most common materials used in robotic application:
their linear behaviour corresponds to small strains.
A synthesis of all the previous hypotheses conduces to the formulation of the
flexible body movement as a composition of a rigid rotation, from the inertia ref-
erence system OI , XI ,YI , KI (Fig. 3.3) to the body reference system On , Xn ,Yn , Kn
and a subsequent elastic deformation, estimated by means of the relative position
between the cross section reference frame Ok , Xk ,Yk , Kk (Fig. 3.3) and the body
one On , Xn ,Yn , Kn (Fig. 3.3) [128].
The position of the k-th cross section with respect to the body reference system is
given by X p ; the position of a generic point p, that belongs to the aforementioned
cross section, with respect to the k-th reference system is given by he vector Yp
(Fig. 3.3); the p position analyzed by the inertial reference fremae, instead, is
giben by the r p (Fig. 3.3) and, at the end, the p position expressed with respect
to the inertial reference frame is represented by rn (Fig. 3.3). Having these
informations, the kinematics equations of of point pare given by

r p = r n + Rnx p (3.7)

r p = r n + R n (xxk + R ek Y p ) (3.8)

r p = r n + Rn (X
X k + uk + Rek Y p ) (3.9)

where uk describes the neutral axis displacement vector, Rn = [E1 , E2 , E3 ] ex-


presses the rotation between the inertial reference system and the local one while
Rek = [e1 , e2 , e3 ] represents the cross section rotation matrix.
The beam deformation, according to this method is described by means of two
quantities: the strain G , Eq. (3.10), and the displacement gradient measure of
deformation D , Eq. (3.11). The first one is a measure of the deformation in a
3.2 Kinematics 55

continuous three-dimensional space, while the second is used to simplify the


beam kinematics.
 
1 duu p duuTp duuTp duu p
G (X
X p) + + (3.10)
2 X p dX
dX X p dX X p dXXp

Xp
dxx p dX
X p ) = R Tek
D (X − (3.11)
dX1 dX1

Deflection Screw

In this thesis, it was chosen to use the local reference approach which makes use
of the geometric quantity called deflection screw (s(μ,t)) [115], whose aim is to
represent the Timoshenko beam from the screw theory point of view. This choice
guarantees concise symbolic equations for both kinemtics and dynamics, easy
to manipulate. As widely discussed in relevant past works [115, 116, 108, 83],
s(μ,t) can be treated according the Lie algebra, so that the deflections are assumed
to be small. The position and orientation of each point of the beam respect to its
undeformed position are then represented by
⎡ ⎤
θx (μ)
⎢ ⎥

⎢ θy (μ)⎥
⎢ ⎥
θ ⎢θz (μ)⎥
s (μ) = =⎢
⎢ v (μ) ⎥
⎥ (3.12)
v ⎢ x ⎥
⎢ ⎥
⎣ vy (μ) ⎦
vz (μ)

where θ represent the small rotations of the axes while v is the translational vector
in the body stressed state. Assuming that the undeformed beam has the center
on the z-axis and that is represented by a straight line according to Timoshenko
approach, the transformation from the global reference system to the generic
position is expressed by means of the H transformation matrix

R 0
H= (3.13)
TR R

where T is the anti-symmetric matrix describing the translation T x = t × x while


R take in account the rotations.
Considering a pure translation along the beam axis, the Eq. (3.13) becomes
56 Flexible Multi-Body Modelling

I3 0
H= (3.14)
I3 T I3

with
⎡ ⎤
0 −1 0
⎢ ⎥
T = ⎣1 0 0⎦ (3.15)
0 0 0

According to the screw theory, if a screw s T = [θθ T , v T ] acts on a point q 0 , the


new position of such a point is given by q = θ × q0 + v. Assuming that the
aforementioned point belongs to the beam centreline p (μ), its position can be
expressed by p (μ) = v since p 0 = 0 because this last one is expressed in the local
coordinate reference system. This assumption lets to consider the translational
part of the deflection screw as the centreline curve of the beam.
The deflection screw derivative is then given by

d
s
= s + Bss (3.16)

where the matrix B is a Lie algebra element expressed as B = H dμ


d
H −1 . With the
previous simplification and, after several manipulation, the Eq. (3.16) becomes
⎤ ⎡
θx

⎢ ⎥

⎢ θy

⎢ ⎥
θ
⎢ θz

s =
=⎢
⎢v
− θ ⎥
⎥ (3.17)
v +k ×θ ⎢ x y⎥


⎣vy + θx ⎦
v
z

while the second derivative, is given by


(3.18)
v + 2kk × θ

A detailed analysis of the Eq. (3.17) allows relating the deflection screw derivative
to the beam properties. In fact, according to the De Saint Venant principle [49]

Fz Mz Mx My
d
dμ pz = EA ; dμ θz
d
= GJ ; dμ θx
d
= EJx ; dμ θy
d
= EJy (3.19)
3.2 Kinematics 57

and, being valid the Timoshenko approximation, the centre line gradient can be
replaced by the bending angles plus the loss of slope due to the shear factor, so
that

Fy
p
x − θy = Fx
ax GA ; p
y + θx = ay GA (3.20)

By substituting the Eq. (3.19) and Eq.(3.20) in the Eq. (3.17) it then obtained
⎡ ⎤
Mx
⎢ EJ
My ⎥
x
⎢ EJ ⎥
⎢ y ⎥
⎢ Mz ⎥
⎢ ⎥
s
= ⎢ GJ ⎥ (3.21)
x ⎥
⎢ a FGA
⎢ xF ⎥
⎢ y ⎥
⎣ ay GA ⎦
Fz
EA

By extrapolating the wrench (W) from the Eq. (3.21)

⎤ ⎡
Mx
⎢ ⎥
⎢My ⎥
⎢ ⎥
⎢Mz ⎥
W =⎢
⎢F ⎥
⎥ (3.22)
⎢ x⎥
⎢ ⎥
⎣ Fy ⎦
Fz

it is possible to rewrite the Eq. (3.21) as


s
= diag EJx , EJy , GJ , ax GA , ay GA , EA
1 1 1 1 1 1
W (3.23)

where


EJx , EJy , GJ , ax GA , ay GA , EA
1 1 1 1 1 1
c = diag (3.24)

is defined as the deam compliance density.


Summarizing all the previous information, the deflection screw can be interpreted
as a general Hooke’s law as expressed by Eq. (3.25)

s
= cW (3.25)
58 Flexible Multi-Body Modelling

In the aforementioned formulas E is the material young modulus, G is the shear


factor, A is the cross section area and Ji are the inertia moments.

3.3 Dynamics
There are several approaches in literature for the dynamic analysis of a flexible
RMBS, many of those are derived by energetic principle thanks to the fact that a
flexible RMBS stores potential energy in the links, joints and eventually actuators.
Generally speaking, dealing with a flexible body modelled as a continuous
dynamical system having infinitive DOFs, it means work with non-linear coupled
both ODEs and PDEs equations. This approach, then, requires long time for
computations and, moreover it usually does not bring to an exact solution and it
also imposes strict constraints on the control development as well [38].
Among the many possibilities described in literature for the dynamic analysis of
the flexible RMBS, in this thesis four groups are mainly investigated: namely the
modal formulation, the finite elements approach, the lumped parameters model
and the screw theory method [38].
- In the modal formulation the beam deflection is described by means of a
truncated modal series given by a spatial mode eigen function Ψi (η) and a
time dependent mode amplitude ξi (t) of mode eigen function [127, 17, 69,
99]. That, in the three main directions are expressed by
⎧ nj

⎨ u j (η,t) = ∑i=1 Ψi (η) ξi (t)
uj uj
nj
v j (η,t) = ∑i=1 Ψi (η)v j ξi (t)v j (3.26)

⎩ nj
w j (η,t) = ∑i=1 Ψi (η)w j ξi (t)w j
where j indicates the link, s represents the spatial coordinate, l j is the
link length, η = lsj and η j is the modes numbers used to describe the link
deflection.
The aforementioned mode eigen function Ψi (η) comes from the Euler-
Bernulli beam theory of the bending vibrations and depends on the bound-
ary conditions coming from the constraints; while the time dependent
mode amplitude ξi (t) lays on the initial condition of the system. The Ci
are coefficient needed to normalize the mode eigen function according to
1
0 [Ψi (η)] dη = 1.
2

Provided that, the opening question is related on the number of modes to


consider before the truncation. In general, the exact number of modes to
3.3 Dynamics 59

include depends on the system natural frequencies: if for example the robot
cannot operate on the higher range of values cause of the constraints imposed
by the actuators, it is no needed to take in account the mode-shape related to
the high frequency. Once the displacement in the three main directions are
known, is it possible to estimate both the kinetic and the potential energy, to
calculate the Lagrangian and afterwards write down the motion equations as
shown in the previous chapter. However, the main limitation of this approach
is the difficulty to describe the mode-shape in case of non constant cross
sections.

- The finite element method [14, 100, 89] concept is based on the assumption
that one body is represented by a domain of several elements interconnected
by means of constraint equations. Each element is located in the 3D dimen-
sion, thanks to the position and by the specific relationship between two
nodes (i.e. it could be a spring, a spring-damper, a beam element, etc) of its
nodes. Those elements can be linear or having 2 or 3 dimensions.
The dynamics written according to this theory follows a similar principle
respect to the modal formulation: the displacement of a point belonging to
the structure is expressed by means of a shape function, φi j , that multiplies
the system nodal coordinates u2i j−2+k . The shape function, according to this
formulation, are Hermitian and those are expressed by:

x2 x3
φ1 (xi j ) = 1 − 3 l 2i j + 2 l 2i j ;
ij ij
x2 x3
φ2 (xi j ) = xi j − 2 l 2i j + l 2i j ;
ij ij
xi3j
(3.27)
φ3 (xi j ) = 3xi j − 2 l 3 ;
2
ij
x2 xi3j
φ4 (xi j ) = − liijj + li2j
;

Having said that, the beam deflection is given by

4
yi j (xi j ,t) = ∑ φk (xi j )u2i j−2+k (3.28)
k=1

The total displacement, r i j , of the generic point belonging to the structure


is then obtained by considering both the rigid(rr i j,r ) and the flexible (→
−r
i j, f )
displacement, as represented in Eq. (3.29)
60 Flexible Multi-Body Modelling

( j − 1)l i + x i j
r i j = r i j,r + r i j, f = r O,i + TOi (3.29)
yi j
These can be described even as a rigid displacement respect to the global
reference system, r O,i plus a local deflection expressed in terms of global
reference system by means of the rotational matrix T iO . The local deflection,
at the end, is given by the position along the x axis (( j − 1)li + x i j ) and the
one along the y axis (yyi j ).
As happens for the modal formulation, even in this case, given the body posi-
tion it is possible to calculate the Lagrangian and then the motion equations.

- In the lumped model formulation, the structural flexibility is represented


by concentrated springs [142, 72, 93]. It is the easiest way for the analysis
of those structures, but it is, at the same time, the less accurate one. Since
the flexibility is taken into account by using springs, their contribute in the
motion equation is considered in the stiffness matrix as expressed by

M(q)q̈ +C(q, q̇)q̇ + g(q) + K(q − θ ) = 0;
(3.30)
Bθ̈ + K(θ − q) = τ
where the term (θ − q) represent the position of the body modified thanks to
the joint flexibility, as is it well explained in Fig. (3.3).

- The dynamic equations of the deflection screw method can be obtained by


means of both the Lagrangian and the Virtual Works Principle approach.
The first of these approaches is detailed in the next paragraph, while the
second one it is addressed in the Application 2 of this chapter. As described
in the previously, the Lagrangian is obtained by an opportune combination of
Inertial and Potential energy of the system. In this case, the Potential Energy
is given by
 l
1
Ep = W T s
d mu (3.31)
2 0
where, by applying the Eq. (3.25) it is possible to write
 l
1
Ep = s
T kss
d mu (3.32)
2 0

with k = c−1 defined as the stiffness density.


The Kinetic Energy, instead, is formulated as
3.3 Dynamics 61

m2, I2

K2
θ2 q2
Jm2
m1, I1 r2
Jm1 K1
θ m2
θ1 q1
r1
m1
θ

Fig. 3.3 Lumped flexible scheme. Courtesy of Prof. Alessandro De Luca

 l
1
Ek = ṡsT nṡsd mu (3.33)
2 0
where n is the inertia density described as

n = ρdiag(Jx , Jy , J, A, A, A) (3.34)

By summing the contribution of both the Potential and the Kinetic Energy, it
is possible to define the so called Lagrangian density

1
L = (ṡsT nṡs − s
T kss
) (3.35)
2
and, by the integration of the Eq. (3.35) the Lagrangian function is then
obtained
 l
L= L d mu (3.36)
0
Having said that, the motion equations are derived by manipulating this
expression
   
∂L ∂ ∂L ∂ ∂L
− − =0 (3.37)
∂φ ∂ μ ∂φ
∂t ∂ φ
62 Flexible Multi-Body Modelling

absolute encoder slider hip spring

hip cylinder

hip beam SU
knee cylinder cilindrical connections
load
cells translational connections
knee beam UL

normal contact
upperleg force tangential contact
force

a b c d
force plate lowerleg knee spring

Fig. 3.4 a) Instrumented HyL; b) Virtual model with rigid bodies; c) Hip and knee spring-
damper systems plus HyL 2 DOFs: SU represents the angle between the vertical to the
upperleg axis while UL is the relative angle between upperleg and lowerleg; d) HyL internal
and external connection plus contact forces.

3.4 Applications
The applications of this chapter regard two of the methods aforementioned:
the lumped mass model and the deflection screw one. The first method
is applied to one of the HyQ legs in order to analyse the joint flexibility
influence on the leg behaviour while the second one regards the modelling of
the TUDOR robot with the aim of creating a model exploitable for control
purposes.

3.4.1 Application 1: Lumped Flexible Robotic Leg


Mechanism description

The robotic mechanism studied in this application is one of the Hydraulic leg
(HyL) of the legs of the HyQ robot, completely detailed in the Application 2
of chapter 2.

Model

The HyL virtual prototype model (VPM) (Fig. 3.4.b) is developed by MSC
ADAMS and Simulink software respectively and it is aimed to deal with all
the dynamic issues of the multi-body model.
The VPM system is composed by five main assemblies: Slider, Upperleg,
Lowerleg, Hip piston and Knee piston. Each of them has been modelled
3.4 Applications 63

as a rigid body with distributed inertia. Two different HyL VPMs are built
starting from the aforementioned bodies: the first one is the Rigid Connected
Model (RCM) while the second is the Flexible Connected Model (FCM).
RCM. The connections in the RCM are based on the surface contact, usually
defined as lower pairs. Considering two bodies A and B and the vectors
that describe the position and rotation of each of them, the constraint law is
represented by Eq. (3.38) both for translations and for rotations.

x Ai · (uuA − u B ) − di = 0;
(3.38)
cos(θi (xxi · xk )) − sin(θi (xxk · xk )) = 0
A B A B

where xA represents A position and orientation; xB is B position and orien-


tation; di is the relative displacement between two bodies along i direction
while θi describes the relative rotation between two bodies around i axes.
The HyL RCM internal constraints are represented by cylindrical connec-
tions, while its external joints are translational and planar. The first one
ensures the leg vertical movement, the second one simulates the ground Fig.
3.4.d.
The connections in the FCM were modelled by using the bushing element
which represents one of the flexible connections choices offered by MSC
ADAMS. The bushings apply an action force on the reaction body that could
be expressed by Eq. (3.39).

Fj = −Fj ;
(3.39)
T j = −Ti − δ · Fi
where Fi is the translational force components acting on A; Fk is the transla-
tional force components acting on B; Ti is the torque component acting on A;
Tk is the torque component acting on B; K i j is a stiffness matrix elements; δ
is the Fi arm while C i j is a damping matrix elements.
64 Flexible Multi-Body Modelling

The constitutive law for each connection is described by Eq. (3.40).


⎡ A ⎤ ⎡ ⎤⎡ ⎤
Fx K11 0 0 0 0 0 x
⎢ A ⎥ ⎢ ⎥⎢ ⎥
⎢ Fy ⎥ ⎢ 0 K22 0 0 0 0 ⎥⎢ y ⎥
⎢ A ⎥ ⎢ ⎥⎢ ⎥
⎢ Fz ⎥ ⎢ 0 K33 0 0 ⎥ ⎢ ⎥
⎢ ⎥ = −⎢ 0 0 ⎥⎢ z ⎥ (3.40)
⎢ TA ⎥ ⎢ 0 0 ⎥ ⎢ ⎥
⎢ x ⎥ ⎢ 0 0 K44 0 ⎥⎢ a ⎥
⎢ A ⎥ ⎢ ⎥⎢ ⎥
⎣ Ty ⎦ ⎣ 0 0 0 0 K55 0 ⎦ ⎣ b ⎦
TzA 0 0 0 0 0 K66 c
⎡ ⎤⎡ ⎤ ⎡ ⎤
C11 0 0 0 0 0 Vx Vx
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎢ 0 C22 0 0 0 0 ⎥ ⎢ Vy ⎥ ⎢ Vy ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎢ 0 0 C 0 0 0 ⎥ ⎢ Vz ⎥ ⎢ Vz ⎥
+⎢ ⎥⎢ ⎥ ⎢ ⎥
33
⎢ 0 ⎥⎢ ω ⎥+⎢ ω ⎥
⎢ 0 0 C44 0 0 ⎥⎢ x ⎥ ⎢ x ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣ 0 0 0 0 C55 0 ⎦ ⎣ ωy ⎦ ⎣ ωy ⎦
0 0 0 0 0 C66 ωz ωz
For a complex modelling it is possible to use a field connection that has all
the terms K i j and C i j = 0. That choice involves the deep knowledge of the
bearings this aspect is beyond the scope of work.
The interaction with the external environment is represented by a contact
law. It is established both by a normal and a tangential force. The normal
force (Vertical blue arrow in Fig.3.4.d) one has been modelled according to
the Hertzian law (3.41)

Fn = kc δ n + cc δ̇ (3.41)

where kc is the stiffness, δ represent the penetration depth, n is an exponent


and cc is the damping of contact force. The tangential force (Horizontal
green arrow in Fig.3.4.d) has been modelled by a velocity-based on friction
model (3.42) ⎧
⎨μ W
s
Ft = (3.42)
⎩μd W

According to the relative speed between bodies, this model determines the
value of that force by applying a proper coefficient (μs for the static condition
and μd for the dynamic one) to the value of the weight of the structure W .
All these parameters depend on the nature of the bodies that collide. In the
work presented here the empirical values for the aforementioned parameters
are kc = 2855Nmm−1 , δ = 0.1mm, n = 1.1, cc = 1Nmm−1 s−1 , μs = 0.7,
μd = 0.55.
3.4 Applications 65

The VPM sensors are reproduced by angle, position, velocity and accelera-
tion measurements in the VPM.
The VPM actuation system is modelled with two spring-dampers as shown
in Fig.3.4.c. Each spring-damper is characterized by its own stiffness k and
damping c coefficients(their estimation can be found in the Application 2 of
Chapter 5).
The VPM control algorithm estimates the errors between the current posi-
tion (measured from the dynamics in MSC ADAMS) and the desired position
(coming from the experimental tests) and send back to MSC ADAMS the
torque proper value to apply for the next step.

Experimental Tests

The experimental tests required for this analysis have the aim of harvesting
data useful both for the modelling and the validation stage of the HyL MBM.
Three different tests are performed, namely: static, quasi static and drop
tests. Static tests results are useful to check the mass distribution of MBM;
quasi static tests and drop tests output measurements, instead, are useful
both for modelling the actuators and for validating the MBM, in low speed
conditions and impulsive ones respectively.
The HyL motion behaviour is governed by a PD control system. It has
the aim to modify the stiffness and the damping of the whole hydraulic
system by adjusting the P and D gain values. All the tests are carried out
in two different conditions: low stiffness and high stiffness. In the first case
P = 150 [Nmrad −1 ], in the second one P = 300 [Nmrad −1 ] while D is kept
constant all the time D = 6 [Nmrad −1 s−1 ].
In this campaign of experiments the leg is instrumented with two angular en-
coders (Avago AEDA3300 BE1, up to 80000 counts per revolution, resolution
0.0045deg) place on hip and knee joints; one displacement sensor (Absolute
Encoder austriamicrosystem AS5045, signal 12Bit, resolution 0.0879deg)
installed on the slider, two load cells (Burster 8417, force range 0-5 kN, ac-
curacy 0.5 %) installed on the actuators strokes and a force plate (KISTLER
9260AA6, force range 2.5[kN] for Fx , Fy and 0 − 5[kN] for Fz ) which act as
the ground where the leg stands or drop on. The vertical movement of the
structure during all the tests is ensured by a sleeve attached to the slider and
moving on a vertical bar (Fig.3.4.a).
66 Flexible Multi-Body Modelling

Static test. The static tests are carried out starting from the initial position
of the HyL, that depends on the chosen gain value. Afterwards a group of
three different payloads are applied on it: 0 kg, 3 kg and 7 kg. The results
of the first stage of the test, when no load is applied, are useful to measure
the internal reaction forces due to the robot own weight. The measured
quantities are the force on the hip and knee pistons,the SU and UL rotations,
Fig. (3.4.c) and the Grounr Reaction Force (GRF).
Quasi static test. The quasi static experimental tests starts with the HyL leg
standing in its equilibrium position on the ground. Afterwards it is pulled
up and pushed down several times, following a sinusoidal movement. The
measured quantities are the same of the static test.
Drop test. During the drop tests the HyL leg is left up to reach 5cm above
the gruond, then it is released and dropped. The outputs were the same of
the previous tests.
Half of the data coming from both the Quasi Static and the Drop Test are
used to identify the k and c parameters for both the actuators, in low speed
and impulsive conditions respectively, as described in the Application 2
of Chapter 5. The remaining data, instead, have been used to validate the
numerical model.

Comparison

Three different groups of analysis are carried out using HyL MBM. In the
first two RCM and FCM models are simulated without control laws, while
in the third one FCM is tested with control law. For each of them the MBM
performs three different tests namely static, quasi static and drop test in order
to reproduce the same behaviour of the experimental campaign. The bushing
mechanical characteristics are taken from bearing commercial datasheets.
The control law used in the presented model is a closed loop PD control with
the same gain values applied during the experimental tests.
The input of the first two groups of simulations are the measured displace-
ment laws of SU and UL joints (Fig. 3.4.d) as well as the estimated coefficient
k and c (this study can be found in the Application 2 of Chapter 5). The
main outputs are the forces registered by both the hip and knee springs with
the aim of validating the aforementioned coefficients and to perform a joint
sensitivity analysis.
3.4 Applications 67

Fig. 3.5 Flexible Joint vs Rigid Joints Results ⇒ Forces


68 Flexible Multi-Body Modelling

Fig. 3.6 Flexible Joint vs Rigid Joints Results ⇒ Angles Variation

The third group of simulations, instead, is the closest to the physical tests,
thanks to the fact that the joints rotations are governed by control laws and
not by ideal motions like for the other simulations. The input data are the
vertical movements of the slider and once the k and c coefficients for the
springs. The output are the SU and UL numerical angles.
The results of the first two group of simulations have the aim to validate
the estimation of the k and c coefficients used for modelling the numerical
springs and to evaluate the influence of using flexible joints instead of rigid
connections in the development of this MBM. In Fig. 3.5 is it possible to
verify that the numerical curves are both qualitatively and quantitatively near
to the experimental ones. As expected, the FCM results are closer than the
RCM ones. Figure 3.6 addresses the results of the third group of simulations.
As an example, here it is reported the only the FCM Quasi Static numerical
results, because they represent as well the other simulations. These tests in
fact involve a wide range for angle variation respect to the static and drop
tests. The agreement between experimental and numerical results shows that
the MBM is able to predict the behaviour of the physical leg.

Main Achievements

In this work a simplified MBM for one leg of an hydraulic quadruped robot
has been developed and tested. That model represents the first stage of the
3.4 Applications 69

hierarchical building process for a complete MBM with distributed flexibility.


Even if it is a simplified model, it is a reliable representation of the physical
one. It has been demonstrated the efficiency of such model owed to the
agreement between the numerical and experimental results. The model could
be used by the designer during the process of the bushings selection and also
from the Control Systems Engineer to have an overall scheme before going
into detail of the control design.

3.4.2 Application 2: Distributed Flexible Robotic Arm


Mechanism description

The physical set-up analysed in this application is a 3 DOFs robot, called


TUDOR Fig. 3.1 whose schema is illustrated in Fig. 3.7, developed a the
TU-Dortmund that as a main characteristic has two out of three links flexible.
Each joint is actuated by means of a brushless DC motor with planetary
ceramic gear. The first joint q1 is responsible of the connection between the
robot and the ground and it is located with the axis parallel to the gravity
vector direction. The other two joints, respectively q2 , q3 are mounted with
the axis aligned with the horizontal plane and they move the flexible links.
These last ones are made of steel and they are oriented in such a way to
maximize the structural oscillation: the moment of inertia parallel to the
joint axis is the smaller one as shown in Fig. 3.11.c.

Model

The TUDOR robot is modelled by means of the deflection screws approach


as aforementioned in the theoretical part of this chapter. Since it is a local
reference system approach, it is necessary to define a parametric curve able to
represent the beam centreline. Generally speaking it is required that the curve
needs to be continuous and differentiable so that it describes the physics of
the system under investigation. In the case here presented a Bezier [107]
curve with modified Frenet parameters has been chosen.
A typical Bezier curve is fully described by
 
n
n
∑ i Pi(1 − s)n−1si s ∈ [0, 1] (3.43)
i=0
70 Flexible Multi-Body Modelling

l2 l1

2
E
E
y 3
3
y 2
y
x x x
E 3
z z 1
2
z
z
1
x
1
y l0
l0= 0,65 m;
l1= 0,44 m;
l2= 0,41 m.

Fig. 3.7 Technische Universität Dortmund Omnielastic Robot schema. Curtesy of Dr. Eng.
Jorn Mahlzan.

P1
P1 P2

P0 P2 P0 P3
a b

Fig. 3.8 a) Quadratic Bezier Curve; b) Cubic Bezier Curve


3.4 Applications 71

where Pi are the point required to give an orientation to the curve, Fig. 3.8,
si is the parameter that describes the beam axis while i represent the number
of the bodies belonging to the RMBS that, in this case are two.
In the study here presented a cubic curve has been chosen to describe the
beam deflection in since it is able to detect the third modeshape, thanks to the
capabilities of such polynomial of detecting a concavity change. However,
this choice requires an high computational effort even for testing one single
link, so that the opportunity of using a second order curve has been evaluated.
Thanks to the the good agreement with the results coming from the third
order polynomial due to the fact that the the experimental tests performed
at this stage are able to excite mostly the first frequency of the system, the
choice of a second order polynomial curve has been done.
As aforementioned, the Bezier curve is parametrized by means of a modified
Frenet frame. More in detail, the Frenet frame [143] is represented by a triad
T , N , B where T is the tangent to the curve, N is the normal vector while B
is the bi-normal vector. These are expressed by



T
dT
ds = κN
N;
N
dN
= −κTT + τB; (3.44)


ds
B
dB
ds = τN
N
where κ is the curvature while τ is the tangent. If the analysed curve has a
vanishing second derivative, a different parametrization can be chosen. For
example the Bishop representation could be suitable, where the triad is given
by T, N1 , N2 and that is obtained by



T
ds =
dT
κ 1 N 1 + κ2 N 2 ;
N1
dN
ds = κ1 T + τB; (3.45)

⎩ N2
dN
ds = κ2 T
where κ1 , κ2 are the two curvature.
In the case here illustrated, however, those two approaches are not totally
suitable because they generate a discontinuity passing by the global to the
local reference system. For these reasons, the reference frame chosen for
this study has the first element of the triad equal to the Frenet one, while the
others two respect the rule of the minimum rotation for going to one point of
the curve to the next one. This last choice allows the Lie algebra application
to this formulation.
72 Flexible Multi-Body Modelling

The system dynamics is then obtained by means of a Virtual Works Principle


formulation and it is solved by a S-function developed in Matlab/Simulink
environment. This function gives in output the values of a proper vector
called space state vector X and formulated by

X = [xx, ẋx] (3.46)

with

x = [q1 , ..., qn , p1x j , p1y j , p1z j , ...pT x j , pTy j , pT z j ] (3.47)

and

ẋx = [q˙1 , ..., q̇n , ṗ1x j , ṗ1y j , ṗ1z j , ... ṗT x j , ṗTy j , ṗT z j ] (3.48)

where qi are the rigid rotation of the system, p are the points coordinates
that describe the centreline position, n represents the system DOFs, T is
the number of the links belonging to the RMBS while the other terms are
referred to the derivative of those aforementioned variables.
For computational reasons, it is needed to add at this formulation, an aug-
mented vector called Y that contains the system generalized coordinates and
the frame reference system parameters x ∗ , expressed by

x
Y= ∗ (3.49)
x
The relationship between Y and the system coordinates is given by

∂Y
Y dxx
Y=
Ẏ = Ψẋx (3.50)
∂ x dt
where Ψ indicates the constraint matrix. The relationship between x ∗ and
the generalized coordinates derivative, instead, is given by

∂ x ∗ dY
Y
ẋx∗ == Ji Ψẋx (3.51)
∂YY dt
This Jacobian J i expresses the variation of the frame direction during the
deflection and, for these reasons it can be used to determine the deflection
screw. Since the analysis respects the Lie algebra conditions, the deflection
screw ξ can be determined by
3.4 Applications 73

ξ = J iδ θ (3.52)

where δ θ is the variation between two subsequent tangent to the curve and,
more in detail

ti − t(i−1)
δθ = (3.53)
ds
Once all the aforementioned quantities are determined, is it possible to write
the Virtual Works Principle in the form

ni −0 ϒi 0 ẍi∗ − 0 ẋi∗ ∧ 0 ϒi 0 ẋi∗ + ne,i


Wi = =  (3.54)
Fi mi g − ẍ∗i + fe,i

where 0 ϒi is the inertia tensor of the ith body expressed with respect to the
fixed reference frame {0} and mi is its mass; ne,i and fe,i are two external
actions acting the body. The vector g is the gravity acceleration vector
T
g = 0 −9.81 0 m/s2 . The wrench Wi can be rewritten in a more
computable form by defining the two mass matrices:

0ϒ 03×3 0Ω 0ϒ 03×3
i i i
mi = γi = (3.55)
03×3 mi I3×3 03×3 03×3

By substituing the Eq. (3.55) in Eq. (3.54) it is possible to obtain


0
Wi = −mi 0 ẍi∗ − γi 0 ẋi∗ + mi +We (3.56)
g

where 0 ẋi∗ is given by the Eq. (3.51) while

0 ∗
ẍi = JΨ
˙ ẋ + J Ψ̇ẋ + JΨẍ (3.57)

By substituting the Eq. (3.51) and the Eq. (3.57) in the Eq. (3.56) it is
possible to write

˙ ẋ + J Ψ̇ẋ + JΨẍ) − γi Ji Ψẋ + mi 0 +We


Wi = −mi (JΨ (3.58)
g
where We is the wrench generated by the elastic link component, and in this
case, from the deflection screw according to
74 Flexible Multi-Body Modelling

ξ = cWe ⇒ We = c−1 ξ ⇒ We = Kξ (3.59)

whith K as the link stiffness matrix.


The Virtual Works Principles, as aforementioned in Chapter 2, states that

2
δ xT τ + ∑ δ x∗ Ti Wi = 0 (3.60)
i=1

and, considering that δ x∗ = JΨδ x, it is possible to rewrite the previous


equation as
 
2
δ xT τ + ΨT ∑ JT W i =0 (3.61)
i=1

The Eq. (3.61) in components becomes

˙ ẋ + J Ψ̇ẋ + JΨẍ) − γi Ji Ψẋ + mi 0 + Kξ = 0


τ − mi ΨT J T (JΨ (3.62)
g

or in matrix format is expressed by

τ = M(ẍ) + B(x, ẋ) + G(x) + Kξ (3.63)

Since the S-function has the aim to integrate the ẍ in order to determine the
X, it is convenient to write the dynamics equation in its inverse formulation
as

ẍ = M −1 (τ − B(x, ẋ) − K − G(x)) (3.64)

where

- M (x) is the mass matrix of the mechanical system and, thanks to expan-
sion in Eq. (3.62) can be collected as:
 
2
M (x) = −ψ T ∑ JTi miJi ψ (3.65)
i=1
3.4 Applications 75

- V (x, ẋ) collects the efforts due to Coriolis and centripetal accelerations
and it is:
 
2 
B (x, ẋ) = −ψ T ∑ JTi mi J̇i + Γ i Ji ψ + mi Ji ψ̇ ẋ (3.66)
i=1

- G (x) is the effect of gravity acceleration on motors torques. This vector


represents the efforts that the actuators should exert to keep the system
in a steady static condition:
 

2
03×1
G (x) = ψ T ∑ JTi mi g
(3.67)
i=1

- Kξ is the elastic force generated from the deflection screw:


 
2
Kξ = ψ T
∑ JTde f KJde f (3.68)
i=1

∂ξ
where Jde f = ∂x
The dynamic here presented has been implemented in Matlab/Simulink
environment by means of an S-function integrated by using an ode15s. The
simulation parameters are 0.004 as a timing step while total time is 24s in
order to reproduce two oscillations as in the experimental tests. The function
receives in input the torque exerted by the two actuators and provide in output
the Y (Eq. (3.49)). The torques are obtained by a PD control algorithm
that has as a desired position the ones coming from the experimental tests
(discussed in next section) and as a current position the output from the
simulation. Each link is represented by an adequate number of elements able
to describe the physical set-up behaviour.

Experimental Tests

An extended campaign of experimental tests has been conceived and per-


formed using TUDOR physical set-up, Fig. 3.9. It is instrumented by four
couple of strain gauges (FAE-12S-35-S6E-P, gage resistance 350deg ± 0.2%
) to detect the links deformations three encoders embedded in the motors
to measure the joints rotations. Four type of motions have been chosen for
this first campaign of experiments: joint 1 is kept fixed while joints 2 and
76 Flexible Multi-Body Modelling

a b

Fig. 3.9 a) TUDOR experimental test; b) TUDOR Flexible Model.

a b c

d e f

Fig. 3.10 TUDOR experimental tests: a) same sinusoidal input and same low speed for both
joints, b) same sinusoidal input actuator 2 speed higher than actuator 1 speed, c) opposite
condition of case b, d) same same sinusoidal input and same high speed for both joints, e)
opposite sinusoidal input at the same low speed for both the actuators, f) opposite sinusoidal
input but same high speed for both the motors.
3.4 Applications 77

3 are moved with a sinusoidal movement as described in Fig. 3.10. The


data coming from this campaign of experiments have a double purpose:
flexible model validation and trajectory optimization. The former one will
be detailed in next section while the latter one is described in the Future
Works section of Chapter 6 since it is an ongoing work not yet concluded.

Model Validation

The flexible model validation is carried out by comparing the output results
from the model with the same physical quantity measured during the exper-
imental tests. More in detail, in this study, the comparison is based on the
strain measurements (ε) (Fig. 3.11). The experimental value is obtained by
the gauges measurements, while the one coming from the model is estimated
by means of the plane bending formula (Eq. (3.6)) [40]

dx
dφ = ε (3.69)
z
where, according to the theory here used, dφ is the angular variation calcu-
lated by the screw, while ds represents the element length. As is it possible
to notice, the model output are closer both qualitatively and quantitatively to
the experimental data as it is possible to evaluate in Fig. 3.12 and Fig. 3.2.

Main Achievements

In this work a structural model for a flexible robot is presented. That model
is developed according to the screw theory and, more in detail, it is based
on the screw theory approach since it is conceived to be used and exploited
for control algorithm development purposes. The screw theory, in fact, it
is widely used in robotics because it permits to simplify the kinematic and
dynamic analysis thanks to the use of six-dimensional vectors. The model
here presented is able to reproduce the behaviour of the physical test rig, to
which it is inspired, while it is performing planar motions. That is guaranteed
by the comparison between the experimental and numerical strains. Since
the strains are one of the most complex characteristic to detect, it is possible
to claim that if those coincide, even the other quantities as position, speed
and accelerations agree. Further investigations regards the model validation
while it is performing 3D motions and its integration in the control algorithm
schema for studying optimized trajectory.
78 Flexible Multi-Body Modelling

i-th element
L2 belonging to L2

L1 i-th element
belonging to L1 strain gauge 2
location

a b
y z strain gauge 1
location
a<b

b a
c
x

Fig. 3.11 TUDOR Scheme: a) flexible links schematic representation; b) numerical model
and strain gauges locations; c) flexible link section orientation.

Table 3.1 Definition of the six lower pairs joints properties.

Experimental Numerical Comparison


strain gauge 1 strain gauge 2 elem 4 elem 4 - -
first link second link - -
amplitude 3.70e − 04 1.28e − 05 4.10e − 04 1.08e − 05 11% −11%
mean value 1.47e − 03 6.67e − 05 1.43e − 03 6.39e − 05 3% 4%
Table 3.2 TUDOR Flexible Model Numerical Comparison.
3.4 Applications 79

-3
2 x 10
-3
2 x 10

1.8 1.8

1.6 1.6

1.4 1.4
Strain [-]

Strain [-]

1.2 1.2

1 1

0.8 0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 5 10 15 20 25 0 5 10 15 20 25
Time [s] a Time [s] b

Fig. 3.12 TUDOR Flexible Model Validation: a) Comparison numerical experimental strain-
gauge 1; b) Comparison numerical experimental strain-gauge 2. Green lines represent the
experimental values, while the blue ones are the numerical data.
Chapter 4

Robotic Actuation

In this section an introduction of the typical robotic actuation systems is


provided. After a general description of the principal existing solutions, the
discussion will be centred on the hydraulic actuation system since it is the
one investigated for parametric identification purposes, as described in the
following chapter.

4.1 State of Art


The actuation system of a robotic device could be purely electric, hydraulic,
pneumatic or a combination of them called hybrid. An actuator is the
component responsible to convert energy in motion, under the guidance of a
proper control input.
- The electric actuators [78, 59] are based on the commutation of an
electromagnetic field to a force on a rotational element called rotor. The
force that provokes the motion, even called torque, is obtained by the
interaction between the magnetic field generated from the rotor and the
stator that represents the motor fixed part. There are different types of
electric motors, as for example the so called DC and AC motors, the
stepper and the servo-motors. DC and AC motors require a continue or
alternating current, respectively, to charge the coil on the stator and then
to work [137]. The stepper motors rotate in discrete steps, that means
that for each input unit, the motor rotates of a fixed angle. They are
usually preferred in open loop controller thanks to the precise value of
torque or speed reached at each rotation [76]. Servo-motors guarantee
82 Robotic Actuation

a precise control of position, speed and acceleration intended to reach.


To this aim, those motors, are composed by an electrical motor coupled
with a controller that gives the position feedback [28]. The panorama
of electrical actuated robot is wide both in the legged robot and in
the industrial application, Fig. 4.1. The most recent applications in
the legged robotic word have been shown in the last Darpa robotic
challenge: Walk-man robot is an example of the electrical actuation in
the development process of an humanoid robot Fig. 4.1.a; while the
ones from the industrial applications are the robotic dual arms, as shown
in Fig. 4.1.b used in the assembly lines thanks to their precision and
reliability of movement.
- The hydraulic actuators are detailed in the next paragraphs since those
are the ones investigated in this thesis for identification purposes and,
for this reason, their mathematical formulation needs to be detailed.
Generally speaking, this type of actuation is chosen when there are
many motion axes that can be actuated by using one single electric
motor and a series of hydraulic pipe [53]. There are many examples of
hydraulic actuation systems in robotics both in legged robotic system
(as for example HyQ2Max, Fig. 4.1.c) or ATLAS Fig. 4.1.d) and in
industrial application where it is necessary to exploit high forces, Fig.
4.1.e.
- The pneumatic actuators convert the energy coming from the com-
pressed air into mechanical motion [91]. The most common actuator
from this family is the pneumatic cylinder able to generate a linear mo-
tion. The force exerted from this actuator is given by the fluid pressure
of one chamber and the transversal piston area. Details as the fluid com-
pressibility or the fluid flow are the same one of the hydraulic system
later described in the text. Pneumatic actuation nowadays is widely
exploited both for legged robotic systems (Fig. 4.1.f) and for industrial
applications Fig. 4.1.g), thanks to their flexibility they are also used in
dangerous environments.
By comparing the properties and characteristics of all the aforementioned
actuation systems, it is possible to say that electric motors are limited by
the magnetic field saturation to 1.5 [MPa] , pneumatic actuators are able
to reach 7 [MPa] while the hydraulic ones can generate torques up to 60
[MPa] [136]. Moreover, generally speaking, the hydraulic motors have a
4.1 State of Art 83

b
a

c d e

f g
Fig. 4.1 Robotic actuation system examples. Electric actuation: a) Walkman [39] and
b) ABB industrial robot [39]. Hydraulic actuation: c) HyQ2max quadruped robot [118],
d)ATLAS humanoid robot [39] and e)Harvester lift [133]. Pneumatic actuation: f) Air
Hopper Grasshopper Robot [22] and g) Bionic Handling Assistant [51].
84 Robotic Actuation

Accumulator Check Valve Symmetrical Sliding


Actuator Mass
Controller Velocity
Feedback

M
Electric
Motor

Bidirectional Differential
Gear Pump Pressure
Relief Valve Transducer
Position Feedback

Fig. 4.2 Hydraulic actuation system schema. Courtesy of ASME [39]

good ratio between force exerted and volume occupied and, thanks to the
larger operation bandwidth they are classified as more responsive then the
other families. At the opposite, the electric motors are not incline to fast
acceleration cause of the greater inertia proper of their manufacture. The
pneumatic actuation system, instead, is less efficient and it exhibits a time
delay in responding to the input than the hydraulic one due to the fluid
compressibility [3]. Another difference between the fluid based on and the
electrical actuators regards the heat dissipation capacities: in the former one,
thanks to the fluid circulation, the heat is easily dissipated; while the second
one can dissipate the heat only by means of convective air motions generated
in close proximity to robots [9].

4.2 Hydraulic Actuation Systems


The hydraulic actuation system is mainly composed by four groups of ele-
ments: the power supply, the element required for the flow control plus the
actuations elements and, in the last group it possible to collect all the other
parts as pipeline that link the power source with the actuators or with the
measurement devices needed to check out the system functionality as shown
in Fig. 4.2.
The power supply is generally represented by a pump that converts the
electrical or mechanical power into a flow to contrast the pressure generated
by the loads. There are several configurations for these suppliers as the
variable-displacement pump with stroke regulator, the switch off pump,
4.2 Hydraulic Actuation Systems 85

a b

Fig. 4.3 a) MOOG servovalve; b) HOERBIGER Hydraulic Actuator

the fixed displacement pump with speed controller mover or the ones with
pressure relief valve [46]. Commonly those pumps are actuated by an
electric motor for indoor applications because it does not produce gases,
while internal combustion engines are mostly used in outdoor applications.
The hydraulic flow is governed by servovalves. Those can be: pressure valves,
like the ones in charge of determining the actuator pressure operational level;
check valves that allow the fluid flow only in one direction; flow valves if
they control the flow rate and, as a consequence, they limit the actuators
maximum speed; the directional valves that switch the flow from one side
to another [65]. The one used in this work is manufactured by MOOG
Inc. 2003 and it has the following characteristics: weight 92 [g], bandwidth
≥ 250 [Hz], flow capability 7.5 [ min
l
], Fig. 4.3.a.
The dynamics of this valve is totally described by

Kspool
Δxv (s) = Δu(s) (4.1)
1 2
ωv2
s + 2D
ωv s + 1
v 2

where Kspool is the parameter that transforms the input current to the spool
position in a steady-state, ωv is the valve spool angular frequency, Dv is the
valve spool damping. More in detail the valve spool is an internal movable
part located in the valve housing which opens or closes the valve channels
and governs the flow direction and magnitude. The spool natural frequencies
indicate how fast the valve can move. Since it is difficult to measure directly
the spool position, it is useful to reverse the aforementioned formula and to
express it in terms of valve input u
86 Robotic Actuation

1 1
Δuv (s) = Δu(s) = Δxv (s) (4.2)
1 2
ωv2
s + 2D
ωv s + 1
v 2 Kspool

The actuators have the purpose of converting the energy coming from the
valves into mechanical energy used to move the system [65]. The type of
actuator mainly investigated in this thesis is the hydraulic cylinder, whose
geometry and dynamics are detailed later in the text. Regarding the charac-
teristics of the physical setup used in the experimental tests, it is possible to
say that it is an asymmetric cylinder produced by HOERBIGER and having
a stroke length of 80mm.

4.3 Hydraulic Actuators Modelling


The hydraulic actuators can be both cylinders and motors. In this thesis the
attention is mainly given to the hydraulic cylinders and more in detail to the
asymmetric ones.

4.3.1 Geometry
An asymmetric cylinder (Fig. 4.4) is composed by a hollow cylindrical body
and by a stroke which separates the internal volume in two chambers having
different transversal section, respectively there are the piston area (A p ) and
the annular area (αA p ). The α coefficient represents the ratio between these
two chambers.

4.3.2 Hydraulic Force


The force exerted from an hydraulic cylinder depends on the difference of
pressure between the two chambers, as described by the Eq. (4.3), [65, 56]

F = A p pa − αA p pb (4.3)

where, as aforementioned, A p is the transversal area of the bigger chamber, α


is the ratio between the two chambers areas, while pa and pb are the pressure
of those chambers respectively.
4.3 Hydraulic Actuators Modelling 87

4.3.3 Mass conservation principle

The pressure in each chamber is obtained from the application of the mass
conservation principle [44, 96]. The law of conservation of mass states
that for any system closed to all transfers of matter and energy, the mass
of the system must remain constant over time. The integral form of the
aforementioned law can be summarized in Eq. (4.4); the differential form,
instead, is represented by the Eq. (4.5).

d(ρV )
qin − qout = (4.4)
dt

δρ
+ ∇ · ρ( v) = 0 (4.5)
δt
where ρ is the oil density while qin , qout and V are the input and output flows
and the volume of each chamber respectively.

4.3.4 Mass conservation principle: integral form

After some manipulations, the Eq. (4.4) becomes

dρ dV
qin − qout = V+ ρ (4.6)
dt dt
where

dρ ∂ρ ∂P
= (4.7)
dt ∂ P ∂t
while

∂ρ β
= (4.8)
∂P ρ
The term β appearing in previous equation is the oil bulk modulus: since it
plays a fundamental role in the whole hydraulic dynamics (next paragraph is
dedicated to its details).
Coming back to the flow equation, by substituting the Eq. (4.7) and Eq. (4.8)
in Eq. (4.6) is then obtained

ρ dP dV
qin − qout = V+ ρ (4.9)
β dt dt
88 Robotic Actuation

Thus in "chamber a", assuming that there is no internal leakage so that


qin = qa , qout = 0 and by substituting V = va , dP
dt = p˙a , dt = v̇a , the Eq. (4.9)
dV

becomes

ρ
qa = ṗa va + v̇a ρ (4.10)
β
where, considering the chamber volume obtained by multiplying the chamber
transversal section area by the stroke position and assuming that "chamber
a" is the biggest one: va = A p x p while v̇a = A p x˙p , since A p = const. By
manipulating the Eq. (4.10), it is then possible to determine the formula for
the "chamber a" pressure variation, as shown in Eq. (4.11)

βe
ṗa = (qa − A p ẋ p ) (4.11)
va
and, using the same mathematical steps and hypothesis but opposite flow
direction, the same result for "chamber b"

βe
ṗb = (−qb − αA p ẋ p ) (4.12)
vb
The two chambers volumes could be described by Eq. (4.13) and Eq. (4.14)

va = Vpl + A p x p (4.13)

vb = Vpl + α(Lc − x p )A p (4.14)

where Vpl is the pipeline volume while Lc is the stroke lenght.


When the geometry if the actuator is well defined, the pressure in each
chamber depends only by fluid flow.

Bulk modulus

The term β that appears in Eq. (4.8) is the oil bulk modulus and it significantly
influences the hydraulic dynamics [66, 74]. For mineral oils, analysed in a
range of temperatures (-40,+120) [degC] and pressures ≤ 450[bar], assume
values in this range (1400-160 [MPa]). The aforementioned values drop
dramatically in case of air presence in the oil. This change can be estimated
by the following equation [65]
4.3 Hydraulic Actuators Modelling 89

chamber a DAp

Ap
va,pa
vb,pb F

chamber b
qa qb

uv = 1 uv =-1 0
ps pt

Fig. 4.4 Asymmetric cylinder scheme

1 + rv
βe = βisen  1 (4.15)
rv κβp
p0 κ
1+ p

where βisen is the isentropic bulk modulus of the oil without entrained air;
rv = VVG0
L0
is the ratio between the volume of the gas at the atmospheric pressure
compared to the liquid volume at the same pressure; p0 is the atmospheric
pressure while p is the oil pressure; κ represents an isoentropic coefficient
and, generally speaking its value is 1.4.

Fluid Flow

The fluid transmission from the pump to the actuators is regulated by valves,
that can be solenoid valves or servovalves. As mentioned before, this thesis is
mainly focused on the analysis of servovalves whose behaviour is governed
by the spool displacement: it establishes the flow direction and magnitude.
The fluid motion in input or in output from the two chambers is totally
modelled by the formula of the flow through an orifice Eq. (4.16). It depends
not only from the dimension and characteristic of the orifice, but also from
the difference of pressure across it, like described by Eq. (4.16).
90 Robotic Actuation

Fig. 4.5 Influence of the entrained air on the bulk modulus values [65]

! ! √
2p 2p Cd W 2 " "
q = Cd α(uv ) = Cd Wuv = √ uv p = Kv uv p
ρ ρ ρ
(4.16)
where Cd is the discharge coefficient (Cd ≈ 0.6 is often assumed), α(uv ) =
Wuv , W is the area gradient, ρ represents the oil density, Kv is the valve gain,
u represents the input current to the valve.
In "chamber a", the flow is described by Eq. ( 4.17)
 √
Kv u pr − pa , u>0
qa = √ (4.17)
Kv u pa − pt , u≤0

while in "chamber b", it is given by Eq. (4.18)


 √
Kv uv pb − pt , u>0
qb = √ (4.18)
Kv uv pr − pb , u≤0

where pr is the reservoir pressure while pt is the pressure to the tank.

Force

Summarizing all the previous informations and considering that the closed
form solution for the pressure formula is known in terms of derivative; by
4.3 Hydraulic Actuators Modelling 91

substituting the Eqq. (4.9 - 4.18) in Eq. (4.3) is then possible to achieve the
hydraulic force variation formula.

A pβ e A pβ e
Ḟh = (qa − A p x˙p ) − α (−qb + A p ẋ p ) (4.19)
va vb
   
1 α2 qa αqb
Ḟh = −β eA2p + x˙p + β eA p + (4.20)
va vb va vb

⎧   √ √ 

⎪ 1 α2 pr − pa α pb − pt

⎨ − β eA p v + v x˙p + β eA p Kv u
2
+ , u>0
a b va vb
Ḟh =   √ √ 

⎪ 1 α2 pa − pt α pr − pb

⎩ − β eA p
2
+ x˙p + β eA p Kv u + , u≤0
va vb va vb
(4.21)
Following that procedure it is possible to obtain the derivative expression
for the force, knowing the stroke displacement and the pressure in each
chamber.

4.3.5 Mass conservation principle: derivative form

Equation (4.5), as mentioned before, represents the mass conservation prin-


ciple in its derivative form. It permits to describe a three dimensional flow,
however, in case of the asymmetric cylinder described in this thesis, the flow
is mainly mono dimensional, then the mass conservation principle equation
becomes the advection equation

δρ δρ
+a =0 (4.22)
δt δx
where a = 0 represents the wave propagation speed.
The problem statement requires the identification of the IC (initial conditions)
and the BC (boundary conditions) [7]. To fix them, it is useful to get the link
between the density and volume of a fluid

ρ(x,t) V (x,t)
=− (4.23)
ρ0 V0
where ρ0 is the fluid initial density, V0 is the fluid initial volume and x is the
fluid direction.
92 Robotic Actuation

Fig. 4.6 Chamber a sub-system

The aforementioned equation is valid only in equilibrium conditions. Thus


considering the sub-system of the "chamber a" (Fig. 4.6), the red line is
the force that acts on the cylinder due to the fluid, the green one, instead
represents the reaction by the cylinder. At the equilibrium, the statement of
the problem is into 4.24


⎪ δρ δρ

⎪ +a =0

⎨ δt δx
IC : ρ(x, 0) = ρ0 (4.24)



⎪ Vmax

⎩ IC : ρ(0,t) = ρ0 ; ρ(L,t) = − ρ0 ,
V0
Once the relation ρ(x,t) is known, thanks to the Eq. (4.8) it is possible to
derive the pressure expression. This expression will be substitute in the Eq.
(4.3) in order to have the integral value of the hydraulic force. However,
since te cylinder chambers volume are too small to register a significant
density or speed wave propagation, the preferred approach in this thesis is
the one based on the integral form of the mass conservation principle.
Chapter 5

Parametric Identification

In this section one of the key steps for building a RMBS model will be
analyzed: namely the parametric identification. The major role played from
it is due to the importance that a proper choice of parameters has for the
model validation. In fact, having good estimated parameters results in a
reliable RMBS model that is useful both for the analysis of the current
physical test rig and for planning future development. There are many
different methods in literature used for the parametric identifications; they
could be linear [50, 80] or non-linear [52, 101], continuous or discrete time
based on; etc. The methods studied and applied during this research will be
described in this chapter. As happens for the other chapters, after a theoretical
introduction of those methods, a set of applications is then presented.

5.1 State of Art


The building process of a RMBS model requires, in parallel to the kinematic
and dynamic analysis, a proper choice and identification of a set of param-
eters. According to Schiehlen [110], in fact, "the parametric identification
of multibody system model has a high priority due to the physically moti-
vated approach in multibody system dynamics. Using the right parameters,
multibody system models are accurate and efficient". The selection becomes
more and more important in case of model based control and, above all, in
all those robotic fields that require high precision and repeatability [138].
Those parameters could be both geometric and dynamic; they are identifiable
by means of a kinematic and dynamic analysis respectively. This thesis is
94 Parametric Identification

K nowle dge
Kinematic and Model

A priori
Geometric Accuracy
Information Specification

Modeling

Experiment
R obot Ide ntific a tion P roc e dure

Design

Data
Acquisition

Signal Choose Parameter


Processing Estimation Algorithm

Parameter
Estimation

Validate Not Satisfied


Model
Satisfied
R e s ult

Accurate Model Accurate Torque


Parameters Prediction

Fig. 5.1 Parametric Identification Procedure [125].

mainly centred on the analysis of the second family, for these reasons the
geometrical ones will be not treated anymore in the following sections.
The dynamical parameters estimation require a process that can be summa-
rized in five main steps: Modelling, Design of Experiments, Data Recording
and Data Analysis, Parameters Estimation and Model Validation [125], Fig.
5.1.
The Modelling phase consists of writing the RMBS dynamical equations, as
described both in Rigid Multi-Body Modelling and in Flexible Multi-Body
Modelling chapters, highlighting the parameters influence in those formulas.
The equations of motion for a RMBS are commonly highly non-linear, due to
the presence of large displacements, however they are linear with respect to
5.1 State of Art 95

the parameters [110]. This peculiarity lets to extract from the direct dynamic
equation

M (qq) q̈q +V
V (qq, q̇q) + G (qq) = τ (5.1)

the vector p , that is the one containing all the RMBS dynamic parameters, as
shown in Eq. (5.2)

M (qq, p ) q̈q +V
V (qq, q̇q, p ) + G (qq, p ) = τ (5.2)

that can be then manipulated with the aim of reaching a system of equations
of the unknown parameters p , as expressed by the inverse dynamic model of
the RMBS in Eq. (5.3)

y (τ, θ̇ ) = φ (θ , θ̇ , θ̈ )pp (5.3)

Once the model is ready is then possible to proceed with the Design of Exper-
iment stage, that consists in selecting an input signal able to properly excitate
the system with the aim of recording valuable output data that guarantee an
accurate parameter estimation. Afterwards, during the experimental tests,
the output Data will be Recorded and then Processed in order to reach the
Parametric Identification required. The Model Validation Phase that con-
cludes the cycle, consists in giving in input to the RMBS the aforementioned
estimated parameters and verifying if the corresponding outputs are similar
to the ones coming from the physical set-up.
After its validation, the RMBS model permits to exploit the robot capabil-
ities under extreme performance conditions, while considering time-cost
reductions in simulation and control application. In some conditions, like
the extreme ones, it is difficult to have an effective force control since the
contact time is too short. Using the model permits to overpass this issue
because its results do not depend on the measurement instruments response
time. Every improvement, both from the structural and from the control
side, can be immediately simulated within a global analysis. The time for
one simulation is shorter than the time needed for machining a modified
prototype or for arranging an experimental test. At last, since it is a virtual
model, it is possible to run different simulations at the same time. Thanks
to the higher number of design considered, the quality of the robot could
increase exponentially [144].
96 Parametric Identification

y y=ax+b

(x6,y6)
en
(x4,y4) e6
(xn,yn)

e4 e5

(x2,y2) (x5,y5)

e2 e3

(x3,y3)
e1 x
(x1,y1)

Fig. 5.2 Generic dataset and their approximation by means of a linear regression.

In the literature, the identification stage is represented by two main families:


the on-line and the off-line procedures. The on-line procedures are typical
of all the cases where an adaptive control algorithm is present or where a
control based on a neural network is used [57, 61]. Those require reduced
computational time since they deal with real time operations. The off-line
methods, instead, are commonly used in most of the remaining cases. Based
on an a priori data collection, they do not have any time limitation [138].
In this thesis several identification methods have been investigated, namely:
the least squares, the grey box and the NARX model plus a couple of
solutions adopted for the analysis of the hysteretic phenomena.
· The least squares method (LS) was developed between the end of 1700
and the early 1800 by three famous matematician as Gauss, Legendre
and Adrian, [54] [124]. This method aims to determine the best fitting
curve y that describe a dataset (xn , yn ). More in detail, given a set of
functions f1 , ..., fk , the solution consist in finding a set of coefficients
a1 , ..., ak , b such that the linear combination

y = a1 f1 (x) + ... + ak fk (x) + b (5.4)

represents the best approximation to the (xn , yn ) [97] (Fig. 5.2). This
goal is achieved by reducing, as much as possible, the "distance" between
the dataset and its approximated function. For the linear regression
5.1 State of Art 97

shown in Fig. 5.2 it is needed to determine find a set of values (a, b) that
minimize the error function, shown in Eq. (5.5)

N
E(a, b) = ∑ (yn − (axn + b)))2 (5.5)
n=1

which minimum is obtained by setting to zero the partial derivatives of


E calculated with respect to a and b respectively Eq. (5.6)

∂E ∂E
= 0, =0 (5.6)
∂a ∂b
that are

∂E
∂a = ∑N
n=1 2(yn − (axn + b)))(−xn );
∂E (5.7)
∂b = ∑N
n=1 2(yn − (axn + b))).

then, by extracting the two parameters the equations became



(∑N
n=1 xn )a + (∑n=1 xn )b = ∑n=1 xn yn ;
2 N N
(5.8)
(∑N
n=1 xn )a + (∑n=1 1)b =
N
n=1 yn .
∑N
Writing the Eq. (5.8) in vectorial form allows to estimate the two
parameters, as expressed in Eq. (5.9)


−1

N 2 N N
a ∑n=1 n ∑n=1 n
x x ∑n=1 n n
x y
= (5.9)
b ∑n=1 xn (∑n=1 1
N N
∑N
n=1 yn

The solution of the Eq. (5.9) is a necessary condition to minimize the


error, but it is not sufficient. To do that it is needed to estimate the
second order derivative of E(a, b) called H (Eq. (5.10)) and prove that
it is positive definite.

∂ 2E ∂ 2E
∂ a2 ∂ a∂ b ∑N 2 N
n=1 2xn ∑n=1 2xn
H= ∂ 2E ∂ 2E
⇒ (5.10)
∂ a∂ b ∂ b2
∑N
n=1 2xn −2
If the H eigenvalues (α) assumes all positive values, the aforementioned
matrix is positive definite and the solution we are looking for effectively
minimize the error, Eq. (5.11).

H − I α) = 0 ⇒ α > 2(xn2 + 1)
det(H (5.11)
98 Parametric Identification

As is it possible to notice from the Eq.(5.9), this method (LS) is appli-


cable only if the matrix containing the dataset values is invertible. This
imposes some conditions on xn [97], for example that the summation of
xn is different from the summation of xn2 .

· The Grey Box identification method is based partially on the knowl-


edge of the first principles based on physical laws describing the system
(i.e. Newton’s law) and in some measure on the information derived
from experimental data. It is classified in between of solutions totally
based on the first principles (called White Box method) and solutions
completely relying on the input/output data coming from experimental
set-up (defined Black Box Models) [81]. This method can be used for
linear, non-linear, continuous-time and discrete-time systems.
The aim of the Grey Box Method is to estimate a predictor function

y(t) = f (θ , φ (t)) + e(t) (5.12)

that will describe the dataset, where

φ (t) = h(Z t−1 , u(t)) (5.13)

while Z represents the data collection, u is the system input, t denotes


the time, θ is the parameters set and e(t) is the error.
More in detail, the dataset is represented by

Z t = y(1), u(1), ..., y(t), u(t) (5.14)

The predictor function ( f ) goes from Rn to R p where n is the dimension


of φ (t) while p denotes the number of the outputs. In literature there are
many examples for the mentioned function. One of the commonly used
is the one suggested by Juditsky [122] who proposed

d
f (θ , φ ) = ∑ ak κ(βk (φ − γk )) (5.15)
k=1

where

θ = αk , βk , γk k = 1, ..., d (5.16)
5.1 State of Art 99

In the Eq. (5.15), κ is a function that can be determined by a neural


network approach, by fuzzy-logic one, etc.
The one step ahead [81] prediction is then obtained by the function

y(t|θ ) = f (θ , φ (t)) (5.17)

starting from the known past input-output data Z t−1 . Once this function
is known, is then possible to estimate the prediction error by means of

y(t) − y(t|θ ) (5.18)

and then to minimize it

θ# (t|θ ))2
N = argminθ (y(t) − y (5.19)

In this thesis, the predictor function was built according to the System
Identifaction Toolbox provided by Matlab [81]. It is based on ODE
equations and it can deal with both frequency domain and time domain
input data. It can generate both single and multiple output data. The core
of this modelling consists in writing the state space matrix as a function
of a selected parameters. This matrix is generated from the following
systems of equations respectively in

· linear continuous time




⎨ ẋ(t) = A x(t) + B u(t) + K e(t);
y(t) = C x(t) + D u(t) + e(t); (5.20)


x(0) = X 0 .
· linear discrete time


⎨ x(k + 1) = A x(k) + B u(k) + K e(t);
y(k) = C x(k) + D u(k) + e(t); (5.21)


x(0) = X 0.

where x is the state variables, y represent the output function, A, B,C, D


are the parametrized matrices, K is the noise matrix while x0 repre-
sents the initial state vector. These two last quantities are not generally
parametrized by the model parameters, but they can be estimated by
means of proper option specified in the modelling.
100 Parametric Identification

In case of non-linear systems the set of equation to be used in a grey box


identification are



⎨ ẋ(t) = F(t, x(t), u(t), par1, par2, ....parN);
y(k) = H(t, x(t), u(t), par1, par2, ....parN) + e(t); (5.22)


x(0) = x0 .

where ẋ(t) = dx(t)


dt is used for continuous representations while ẋ(t) =
x(t + Ts ) for discrete time representations.

· The Non-linear AutoRegressive with eXogenous inputs (NARX model)


is based on non-linear differential equations, it is used to analyse non-
linear time-discrete phenomena and it has a reasonable computational
cost [5].
This approach is based on the one-step ahead predictor defined as

y(t|θ ) = F(ψ(t)) (5.23)

where ψ(t) is the model memory and is given by

ψ(t) = [y(t − 1), ..., y(t − n), u(t − 1), ..., u(t − m)] (5.24)

while F(·) is a general non-linear function s.t. F(·) : Rn+m −→ R. This


function is represented by means of polynomial NARX model as
ntheta
F(ψ(t)) ∼
= ∑ θiφi(t) (5.25)
i=1

where θ = [θ1 , ..., θnθ ]T is the vector containing all the parameters while
φ (t) = [φ1 (t), ..., φn (t)] is the regressor. In the NARX modelling, the
θ
key role is played by the regressor structure, since the predictions are
linear in the parameters, as will be described in the Application 4 of this
chapter.

· The procedure for extracting parameters from hysteretic phenomena


used in this thesis are mainly two: the first one comes from the formula
that estimates the energy losses (ΔEcyc ) by a Single Degree of Freedom
system; while the second one derives from the momentum conservation
principle. These two procedures were employed for the estimation of
5.1 State of Art 101

force [N]

force [N]
stroke displacement [m] stroke displacement [m]
a b

Fig. 5.3 Stiffness and Damping Coefficient Identification: a) from a hysteretic phenomena, b)
from an impulsive phenomena.

the damping coefficient (c) of a spring damper system in slow motion


and in impulsive conditions respectively.
The damping represents the predisposition of a body to the vibrations
absorption. The coefficients for the low speed tests come from the
hysteretic diagram plotted in the force-stroke displacement work space
(Fig. 5.3.a). Using the Eq. 5.26 [104], it is possible to estimate the
aforementioned coefficients.
  2π/ω
ΔEcyc = cyc F(t)dx = 0 F(t)ẋdt
(5.26)
= mωn A |H(ω)|π sin(ϕ) = cπωX 2
2 2

where F(t) is the force that moves the piston, c is the damping coefficient,
ω represents the force frequency and X is the maximum displacement
amplitude.
The c coefficients for the high speed tests are estimated starting from the
same measurement of the low speed tests by analyzing the momentum
conservation as in Eq.5.27 [94].

2π 2 2
mv2i = c Δl (5.27)
ΔT max

where mv2i represents the kinetic energy of the body during the dropping,
ΔT is the time of the drop, Δlmax is the compression of the element that
absorbs the impact energy and in our case is represented by the piston
length. The kinetic energy has to consider the F(t)imp on the ground and
the potential energy due to the weight of the leg (mgΔT ), as shown in
102 Parametric Identification

Eq. 5.28.
 ΔT
mvi = −mgΔT + F(t)imp dt (5.28)
0
That choice is due to the fact that the impulsive phenomena, registered
in this work, not always present a perfectly closed hysteresis loop as
shown in (Fig. 5.3.b).

5.2 Applications

In this section several applications of the above described methods will


be considered in detail, both the structural and the actuation parameters
identification, of one of the HyQ legs (namely Hydraulic Leg), will be
presented. As shown in the following paragraphs, there is one example
regarding the structural parameters, while there are several examples related
to the actuation system. This is due to the choice of analysing the actuation
system according to a hierarchical approach.
At the first stage, the actuators were modelled as a spring-damper system
acting in parallel with the mechanical structures. It will be shown that this
approach yields good results that provide good match between numerical
simulations and the experimental data. However, this approach was not
suitable for improving the control systems for the Hydraulic Leg since it
depends on the gains chosen for achieving a specific task. Thus, a more
detailed investigation was carried out, by analysing the hydraulic equations
of each single piston. In this case, the results coming from the parametric
identification were not so good because of the experimental test rig and
some of the control characteristics (i.e. the sampling time) were far from
the ideal conditions requested from the analytical formulation. For these
reason, the solution was found in a Maxwell model for the hydraulic pistons
which permitted to integrate the results coming from the actuation dynamic
with the dynamic of the whole leg and, moreover, it permitted to investigate
the actuation properties in their real working conditions without requiring
building a specific test rig.
5.2 Applications 103

5.2.1 Application 1: Structural Parameters Identification


via Least Square Method
Model

The dynamical model used for this application is the one regarding the Hy-
draulic Leg (HyL) and described in the Application 2 of the Rigid Multi-Body
Modelling chapter. The parameters investigated are respectively masses and
inertias of the HyL mechanical components.

Experiments and data acquisition

The experiments carried out for this identification process aimed to inves-
tigate the leg behaviour during low speed motions. To this aim, the static
settling of HyL has been analysed. The test consists of recording the leg
behaviours when it is disturbed from its equilibrium configuration. More in
detail, the disturbance was produced by the application of an additional mass
of 3 [kg]. The actuators were controlled by means of a simple proportional
law, with a settling point equal to the starting configuration. The experi-
mental set-up used in these tests is the instrumented leg aforementioned in
Application 1 of Chapter 3.

Signal processing

The output data from the mentioned campaign of experiments are then pro-
cessed. Figure 5.4.a, 5.4.b, 5.4.c show the data collected from one of the tests.
As visible, the rates of the two revolute joints do not exceed the maximum
value of ∼ 0.1 [rad/s] with a very small angular displacements, which is
well ascribable to a low duty work condition. With such measurements, the
recorded torques have been used for identification of system parameters.

Parameters estimation

The parameters are estimated by applying the Eq. (5.3) to a sufficient point
of dataset till reaching a overdetermined system of equation in p, Eq. (5.29)

Y (τ, θ̇ ) = Φ (θ , θ̇ , θ̈ )pp + ρ (5.29)


104 Parametric Identification

2
1
0
−1
a
−2
0.2
0.1
0
-0.1
−0.2 b
0.5
0.25
0
-0.25
−0.5 c
40
30
20
10
0 d
0 1 2 3 4 5 6 7 8 9 10
time [s]

Fig. 5.4 Comparison among analytical model and experimental measurements.


5.2 Applications 105

Table 5.1 Masses and inertias of leg bodies: CAD model vs identification results.

Component CAD Model Value Identified Value


Slider Mass 7.360 7.122 kg
Slider Inertia 0.000 0.000 kg m−2
Upperleg Mass 0.885 1.223 kg
Upperleg Inertia 2.750E-3 2.750E-3 kg m−2
Lowerleg Mass 0.876 1.176 kg
Lowerleg Inertia 0.325E-3 0.325E-3 kg m−2
Hyp Cylinder Mass 1.216 0.994 kg
Hyp Beam Mass 0.215 0.222 kg
Hyp Actuator Inertia 0.338E-3 0.015E-3 kg m−2
Knee Cylinder Mass 1.214 1.080 kg
Knee Beam Mass 0.215 0.217 kg
Knee Actuator Inertia 0.769E-3 0.015E-3 kg m−2

where Φ is the parameters Jacobian matrix while ρ is the residual error


vector. The minimization of such vector ρ allows the parameters estimation.
This is due by solving the

ρ = (Φ ΦT τ
ΦT Φ )Φ (5.30)

The results of this identification are shown in Tab. 5.1, where the inertia
of the two bodies of each actuator has been computed as a whole, being
the two members subjected to an identical angular velocity. The values
reported denote a misleading identification some of the body properties,
probably due to a poor set of configurations taken into consideration, as
happens for the τ1 in Fig. 5.4.d. Anyhow, the results look promising and it
is worth considering as a future development of this research to perform a
more accurate experimental campaign specifically aimed at the identification
process.

Model validation

The newly identified parameters are then given in input to the analytical
model in order to proceed with its validation, that is obtained by comparing
the output torque coming from both the analytical and experimental set-up
as shown in Fig. 5.4. As it is understandable from the results analysis,
this kind of experiment is not sufficient to give a satisfactory answer to the
106 Parametric Identification

parameter identification problems. That means, it is necessary to perform


more complete investigations by considering both different payloads and
more importantly by maximize the ranges of displacement and velocity.
Moreover, with the present experimental rig, it is possible to identify just
one of the components of the inertia matrices of the bodies. This is due to
the fact that a planar motion only involves one of the elements of the inertial
matrix.

Main Achievements

The work here presented is a preliminary identification of the physical


parameters of an articulated robotic leg. The results obtained are satisfactory
only for some if those parameters due to the small amount of available data.
Nevertheless, these look promising for future investigations that involve of
many others static conditions (i.e. several different load applied) and also
extend the analysis to the dynamic ones.

5.2.2 Application 2: Hydraulic Parameters Identification


exploiting hysteretic phenomena analysing the whole Robotic
System

Model

The model used for the application here presented is the HyL multibody
model (MBM) already introduced in Chapter 3, Application 1. As afore-
mentioned, in this RMBS model, the two pistons are modelled as spring
damper elements, reason for why there are two main parameters to investi-
gate, namely the stiffness (k) and the damping (c) coefficients for both of
them.

Experiments and data acquisition

The experimental tests carried out for the present application are the same
ones presented in the Application 1 of the Capter 3 of this thesis.
5.2 Applications 107

Table 5.2 Stiffness and Damping Estimated Coefficients. Low gain (150 [Nmrad −1 ]) and
High gain (300 [Nmrad −1 ]). σ is the standard deviation.

Hip Stiffness Hip Damping Knee Stiffness Knee Damping


k [N/m] c [Ns/m] k [N/m] c [Ns/m]
Low 8.30E4 4.50E5 4.40E4 1.93E5
QUASI σ 1.0% 22% 8.0% 22%
STATIC High 1.84E5 2.1E6 1.16E5 3.8E5
TEST σ 8.0% 22% 4.0% 19%
Low 8.81E4 2.2E6 4.77E4 5.70E5
DROP σ 5.0% 21% 2.0% 25%
TEST High 1.75E5 2.55E5 8.75E4 1.50E5
σ 8.0% 22% 4.0% 19%

Signal processing and parameters estimation

Afterwards, when the experimental campaign is completed, the dataset (Fig.


5.5.a) are processed (Fig. 5.5.b) in order to estimate the parameters needed.
More in detail the k are estimated once the force and stroke displacement for
each actuator are known. The first of these last physical quantities derives
from the load cell measurements while the second one can be calculated
by the HyL kinematics. Generally speaking the stiffness is proportional to
the force (F(t)) applied on a body and to its related displacement (δ (t)) as
explained in Eq. (5.31).

F = kδ (5.31)

According to the Eq. 5.31, k coefficients are estimated from the the slope of
the best approximation line of the force-displacement curves obtained both
for the low speed and impact as shown in Fig. 5.3. While the c parameters
are estimated by means of the Eq. (5.26) and Eq. (5.27).
The coefficient estimated for both the low and high speed conditions are
summarized in Tab.5.2. The results for the stiffness coefficient are much
more accurate then the damping ones, due to the fact that the c coefficients
estimation strictly depends on the not always well defined hysteresis areas.
However, thanks to statistical analysis carried out on the experimental data,
it is possible to affirm that the estimated c and k coefficients have a Gaussian
distribution. The 95% confidence intervals on the means are performed for
these parameters in each condition, using the t-distribution with four degrees
108 Parametric Identification

3000 320 1500

2500 315
1000

Knee piston force [mm]


2000 310
Knee piston force [N]

Knee piston force [N]


500
1500 305
0
1000 300

500 295 -500

0 290 -1000
0 2 4 6 8 10 290 295 300 305 310 315 320
Time [s] a Stroke displacement [mm] b

Fig. 5.5 a) Experimental data for a quasi static test; b) Signal processing

of freedom. Results show that each measured value is included in its relative
interval, in this way measurement reliability is assured. For all the statistical
analyses R software [105] was used.

Model Validation

At last stage of this procedure there is the model validation. The estimated
parameters are used to model the two actuators of the HyL VPM and the
results obtained from this numerical model are compared with the ones
coming from a proper set of experimental test as detailed in Application 1 of
Chapter 3. The agreement between numerical and physical results allows
to declare the model validation and its capability to represents the physical
set-up.

5.2.3 Application 3: Hydraulic Parameters Identification


via Least Square Method by analysing the whole Robotic
System
Model

This model is based on the investigation of the piston dynamics described by


5.2 Applications 109

⎧   √ √ 

⎪ 1 α2 pr − pa α pb − pt

⎨ − β A p v + v ẋ p + β A p Kv u
2
+ , u>0
a b va vb
Ḟh =  2 √ √ 

⎪ 1 α p − p α p − p

⎩ − β Ap
2
+ ẋ p + β A p Kv u
a t
+
r b
, u≤0
va vb va vb
(5.32)
where there are two parameters to estimate; namely oil bulk modulus β and
the valve coefficient Kv . The remaining ones, instead, are all geometrical
quantities that, for this case study, are completely known.
The total hydraulic force is represented by
   
+ 1 + sign(u) − 1 − sign(u)
Ḟh = Ḟh + Ḟh (5.33)
2 2
where Ḟh is the hydraulic force; Ḟh+ express the hydraulic force when the
current u has positive values while, at the opposite Ḟh− is measured when u
assumes negative values. All the other terms are detailed in Chapter 4.

Experiments and data acquisition

The experiments are carried out by using the instrumented HyL, completely
described in the Application 2 of the Rigid Multy-Body Modelling chapter. In
addition to the already described instruments, in this case there were added
two pressure sensors for each actuator, able to measure both the reservoir
Pr and tank Pt pressures. In order to investigate the behaviour of each
single piston, during the experimental tests the actuation for the two DOF
was decoupled. A series of sinusoidal movement were given in input with
different amplitudes (0.1 < θ < 0.6 [rad] hip piston; 0.33 < θ < 0.99 [rad]
knee piston) and frequencies (0.6 < f req < 1.8 [Hz] for both the actuators).
The difference in the chosen amplitude for the two joints depends on their
kinematics capabilities.

Signal processing and Parameters estimation

The parametric identification here presented start from the two parameters are
estimated by the application of the Least Squares Method by manipulating
the Eq. (5.33) in order to obtain the following linear system

AX = B (5.34)
110 Parametric Identification

where X represents the parameters vector


1
X= β (5.35)
Kv
A is the regression matrix defined as

A = Ḟ(t) z (5.36)

where
√ √ 
pr − pa α pb − pt
z = −A p u + (5.37)
va vb
and B is given by
 
A21 A22
B = −ẋ p + (5.38)
va vb
⎡  2 ⎤
⎡ ⎤ A1 A22
−ẋ p (1) (1) +
Ḟ(1) z(1) ⎢  a2
v v b (1) ⎥
⎢ ⎥
⎢ A1 A22 ⎥
⎢Ḟ(2) z(2) ⎥ 1 ⎢−ẋ p (2) v (1) + v (2) ⎥
⎢ ⎥ β ⎢ a b ⎥
⎢ . . .⎥ = ⎢ . ⎥ (5.39)
⎢ ⎥ K ⎢ ⎥
⎢ ⎥ v ⎢ ⎥
⎣ . . .⎦ ⎢ . ⎥
⎣  2 ⎦
Ḟ(n) z(n) A A2
−ẋ (n) p
1
+ 2 va (n) vb (n)

AT A)−1 A)B
X = ((A B (5.40)

The x p is estimated by the leg kinematics while ẋ p and Ḟh are obtained by a
differentiation of x p and Fh signals respectively. The two chamber pressures
Pa , Pb , instead, are calculated starting from the supply and tank pressure
values pr , Pt , according to the Eq. (5.41)

Pa0 = P2s0 ; Pb0 = P2s0
(5.41)
Pa + Pb = pr + Pt

Model Validation

The results of this identification are shown in Tab. (5.3). It is noticed that
there is a big fluctuation when the frequency increases and moreover the
results are not consistent with the reference datasheets values. The first issue
most probably depends on the not proper sampling rate of the actual control
5.2 Applications 111

Table 5.3 Stiffness and Damping Estimated Coefficients

Hip Actuator Knee Actuator


Frequency [Hz] β [MPa] Kv [-] β [MPa] Kv [-]
0.6 1.14E9 7.28E-8E 2.09E9 9.06E-11
1.2 9.44E7 8.72E-8 7.94E8 3.76E-10
1.8 3.36E7 8.66E-7 2.78E8 8.41E-10
Nominal values β = 1.2e9[MPa]; Kv 0.01[−]

system: its steps are too large to capture the high frequency variation of the
state variables. The inconsistency with the nominal values, instead, is mainly
due to the non-linearities which affect the test-rig and which are in most of
the cases non predictable, those can be summarized in:
- presence of the air bubble in the oil: it induces the variation of the
bulk modulus magnitude of several percentage points, from 50% in low
pressure conditions to 1 − 2% in high pressure conditions, [58];
- pressures signals not constant: most of the theoretical methods require a
steady pressure while in the set-up used for this study, it is not possible
to have that specific signal [64];
- low sampling frequency: in order to detect a high frequency behaviour,
proper of an hydraulic system, it is needed a sampling rate higher than
1[kHz], [64].
For these reasons a different modelling procedure was tested as detailed in
the following Application.

5.2.4 Application 4: Hydraulic Parameters Identification


via Grey Box Method by analysing a stand alone actuator
Model

The model used in this application is based on the cylinders dynamics


formula fully detailed in the Chapter 4 of this thesis and recalled in the
Application 3 of this chapter. As happens for the previous case, even this
study tends to estimate the bulk modulus β and valve coefficient Kv values.
However, differently from the previous one, in this section the complete hy-
draulic dynamics is taken in account: starting from the spool valve dynamics
to the hydraulic forces, passing throw the pressure and flows equations.
112 Parametric Identification

SLIDER ACTUATOR LOAD CELL

PRESSURE SENSORS

Fig. 5.6 fc1d test rig picture.

Experiments and data acquisition

The physical set-up used for the presented experiments is a test rig properly
created for investigating the behaviour of one single actuator. It is called
force controller one dimension (fc1d) and it is represented in Fig. 5.6. As it
is possible to notice from the picture, the cylinder chambers are fixed to the
ground by means of an external case rigidly connected to the bench table;
while the stroke is able to move along the longitudinal axes of the piston.
That is guaranteed by a connection with two parallel road which also act
as support for an external mass needed to exploit the actuator dynamical
capabilities. Without this mass applied, in fact, there is no reaction from the
environment on the cylinder and as a consequence it not possible to estimate
the hydraulic force exerted.
The set-up is governed by an open loop control system and the input used
are mainly two: the chirp signal and the random gaussian (rgs) one, five
times for each signal. The chirp signal is a "sinusoidal with a gradually
increasing frequency ωk " [45]

u(k) = uo + a · sin(ωk kT0 ) 1 ≤ k ≤ N (5.42)

where
5.2 Applications 113

30  65  50 

60
20 0.5 0.5 0.5
55
xp [mm]

xp [mm]

xp [mm]
u [-]

u [-]
u [-]
 0 50 0 0 0

45
0 - 0.5 - 0.5 - 0.5
40

í  35  í 
0  2000 3000 4000 5000 0  200 300 400 500 0  200 300 400 500
Time [ms] Time [ms]
Time [ms]
  
  
  
Pt and Ps [bar]

Pt and Ps [bar]
Pt and Ps [bar]

  


80 80 80
60 60 60
40 40 40
20 20 20
0 0 0
í í í
0  2000 3000 4000 5000 0  200 300 400 500 0  200 300 400 500
Time [ms] a Time [ms] b Time [ms] c

Fig. 5.7 Experimental data used in Application number 4.

k
ωk = ωstart +
(ωend − ωstart ) (5.43)
N
The rgs, instead is a discrete white noise with a flat spectrum. It generates a
much larger set of frequency in less time then the one required for the chirp
signal.
The fc1d is instrumented with a loadcell (Burster 8417, force range 0-5
kN, accuracy 0.5 %) mounted in axis with respect to the cylinder stroke
and used to measure the hydraulic force; a piezometric slider (Burster 8709,
displacement range 0-250 mm, accuracy 0.05 %) located parallely to the
cylinder stroke and used to detect the stroke displacement; two pressure
sensors (Trafag 8251 , pressure range 16 or 25 MPa, accuracy 0.5 %)
located on a manifold, rigidly connected with the cylinder chambers, and
able to measure the reservoir and tank pressure.

Signal processing and Parameters estimation

The parameters are estimated by means of the Grey Box modelling technique.
More in detail the Matlab System Identification toolbox has been used, as
114 Parametric Identification

shown from the script described in Appendix I. As aforementioned, the


identification of the two parameters is based on a detailed formulation of the
whole dynamic phenomena. The model gives in output three function, that
are the ones used for the error estimation, namely both chambers pressures
and the stroke position. Since it is a numerical solutions based on the error
estimation, to increase the convergence success, it was decided to normalize
all the values in a specific range (102 ). The magnitude of the involved
parameters, in fact, is too wide: the bulk modulus reaches 109 and, at the
same time the valve coefficient stays in the range of 10−5 .

Model Validation

The model presented in this section is firstly validated by means of simulated


data (Fig.5.7.c), then is tested by using chirp (Fig.5.7.a) and rgs (Fig.5.7.b)
signals respectively. As is it possible to notice, the length of the input
signal chosen is different cause of the fact that the rgs signal contains all
the interested frequency in a shorter time respect to the one requested for
excitate the fc1d by means of a chirp signal. Five tests for each signal
were repeated and the results are collected in Tab. (5.4). As is it possible
to notice the model works properly with simulated data, instead the same
does not happen with the experimental dataset. In conclusion it is apparent
that a mathematically based model cannot be used to reproduce the actual
system dynamics cause of the system additional nonlinearities and possibly
neglected dynamics. Some of these were mentioned in Application 3. Some
dynamics that were neglected are due to the valve flapper dynamics in the
pilot stage and moreover cause of a set-up assembled in different conditions
from the ones requested by the analytical formulation. For these reasons,
instead of working with a theory based on modelling it is reasonable to move
to an approach based on the system properties as the one described in the
last application of this chapter.
5.2 Applications 115

Table 5.4 Hydraulic parameters estimated by Grey Box modelling

TEST Chirp signal RGS signal


NR β 10E7 [Pa] Kv 10E − 5 [-] β 10E7 [Pa] Kv 10E − 5 [-]
1 9.99 (σ =4.39) 0.12 (σ =0.03) 0.13 (σ =0.07) 20.00 (σ =95.60)
2 5.76 (σ =1.86) 0.24 (σ =0.05) 0.13 (σ =0.07) 20.00 (σ =95.60)
3 10.00 (σ =5.11) 0.10 (σ =0.04) 3.16 (σ =2.52) 0.31 (σ =0.22)
4 10.00 (σ =23) 0.10 (σ =1.20) 9.98 (σ =24.99) 0.14 (σ =0.36)
5 10.00 (σ =5.41) 0.10 (σ =0.05) 7.39 (σ =1.08) 0.11 (σ =0.01)
Simulated data β = 11810E7(σ = 0.10)[Pa]; Kv 0.0110E − 5(σ = 0.10)[−]
Nominal values β = 1.2e9[Pa]; Kv 0.0110E − 5[−]

5.2.5 Application 5: Hydraulic Parameters Identification


via NARX Method by analysing the whole Robotic System
Model

The model used in this application is based on fractional calculus, due to


its peculiar ability to represent rheological systems [24, 140, 141]. Yusof et
al., in fact, recently proposed a comparison among a linear AutoRegressige
eXogenus (ARX) model and a Fractional-order model: their study, performed
for different derivation orders, showed that a fractional derivative model can
better overlap the actual behaviour of the hydraulic device.
The classical approach for modelling visco-elastic systems is based on the
assumption that the relation between force and displacement can be described
by an ordinary differential equation, whose shape can be expressed as:

N
d n F (t) M
d m x (t)
∑ an d tn
= ∑ d tm
bm (5.44)
n=0 m=0

where F (t) is the force generated by a variation of the length x (t). As


an example, the Maxwell model shown in Fig. 5.8.a is considered. For
such system, the relation among the force F applied to the system and the
displacement is expressed by:
 
c1 k0
F + Ḟ = k0 (s − s0 ) + c1 + 1 ṡ (5.45)
k1 k1

which represents a particular case of the former differential equation with n =


1 and m = 1. Also, such equation is similar to the derivative of the hydraulic
116 Parametric Identification

F u(k)
u(k-1)
NARX y(k+1)
k1 u(k-n+1)
k0
s
c1 y(k-m+1)

y(k-1)
y(k)
a b

Fig. 5.8 a) Proposed simplified Maxwell-Model; b) scheme of implementation for the NARX
model.

force when the expression of both pressures and fluxes (see Chapter 4)
are substituted with the main difference that the parameters appearing in
equation (5.45) determine the behaviour of the visco-elastic system but, in
general, are conceived to replicate an intrinsically dissipative phenomenon.
For this reason, the meaning given to such unknowns should be rearranged
to accomplish the purpose of fitting the behaviour of the hydraulic actuator.
To this aim, the model here proposed makes use of non-constant parameters,
depending on system inputs as described in the following section.
The Maxwell model described by Eq. (5.45) has been exploited to build a
discrete Nonlinear AutoRegressive eXogenous model (NARX model) able to
trace the behaviour of the hydraulic actuators for a given feeding pressure as
a function both of its inputs and of the previous states of the system itself, as
schematically represented in Fig.5.8.b.
In a very general way, the output of a NARX model at step k + 1 is expressed
by [65]:

ϕ , Θ)
y (k + 1) = f (ϕ
T (5.46)
ϕ (k) = y (k) , . . . , y (k − m + 1) , u (k) , . . . , u (k − n + 1)

where f is a non-linear function of the system inputs and outputs at previous


steps, collected in vector ϕ , and of the system parameters contained in vector
Θ . The number of steps, or regressors, m and n that are to be taken into
consideration for computation of the model typically is a controversial issue
which may strongly affect the quality of the model. Only few methods,
such as the Lipschitz quotients method [84], are available for an a priori
determination of the lag space and more often the problem is faced through
5.2 Applications 117

Table 5.5 Available variables for computation of the NARX model at step k.

past steps current step


k-m k
piston stroke, s from regressor (measurement) measured
control signal, u from regressor (input) input
piston thrust, F from regressor (prediction) from regressor (prediction)

observation of the model results and minimizing modelling errors between


the physical measurements and the selected model structure.
For the present implementation, the system output is represented by the force
F exerted by the actuator while the inputs are both the valve control signal
uv and the stroke of the piston s, as expressed in Eq. (5.47)

y (k) = F (k) u (k) = [uv (k) s (k)] (5.47)

Thus, according to equation (5.46) the NARX model is function of system


T
variables ϕ (k) = F (k) , uv (k) , s (k) . Such elements only depend on the
measurement made on the system and are not object of an identification
process.
Besides ϕ (k), the non-linear model is also function of the elements of vector
Θ which collects, for the present case, the parameters k0 , s0 , k1 and c1 of
the Maxwell equation as they appear in (5.45). Therefore, the vector of the
T
system parameters should be Θ = k0 s0 k1 c1 .
Nonetheless, as mentioned, such parameters have been conceived for this
application as dependent on the system state. Thus it is:

Θ∗ , ϕ )
Θ = h (Θ (5.48)

where h is a non-linear function of the elements of vector Θ ∗ , which collects


all the constant parameters needed for computation of Θ and, therefore, of
the model. In the current work, a polynomial fitting of the model parameters
is proposed through the analysis of a set of measurements performed on the
actuators. The identification process, described in detail in the following
sections, will consider both static and dynamic tests aimed at investigating
an as large as possible set of working conditions.
118 Parametric Identification

EXAMPLES OF MEASURED DATA DURING DYNAMIC AND STATIC TESTS


DYNAMIC TEST STATIC TEST
Stroke, s [m]

Stroke, s [m]
0.32
0.35
0.31
0.34
0.30
0.29
0.10 0.10
Valve control, uv

Valve control, uv

0.05 0.05
0.00 0.00
-0.05 -0.05
-0.10 -0.10
25 25
0 0
Force, F [N]

Force, F [N]

-25 -25
-50 -50
-75 -75
-100 -100
0 2 4 6 8 10 0 2 4 6 8 10
Time [s] Time [s]
HIP KNEE
Measured value

Fig. 5.9 Tests used for identification of the NARX model: actuator strokes, valve control
signals and exerted forces for a dynamic motion and a static test.
5.2 Applications 119

Considering an implementation scenario as close as possible to reality, the


model here proposed is used to predict the value of the thrust F at step k + 1
where k represents the computation step at present time. If the model is used
to predict the behaviour of an actual system, almost all the variables, except
the force itself, are measured from the system and recorded in the regression
vector, as indicated by Tab. 5.5. The output F (k + 1) must be computed by
means of the such information and to this aim the Maxwell model expressed
in continuous time by Eq. (5.45) must be rearranged as a discrete system:
 
c1 k0
F (k + 1) + Ḟ (k) = k0 (s (k) − s0 ) + c1 + 1 ṡ (k) (5.49)
k1 k1

While the piston stroke s and the control signal u are a known at the current
step k, as well as at their previous steps, the value F is not directly known
since it represents a value predicted by the model and not measured on the
actual system. To reduce the dependency of the model output on the present
value of the thrust, the time derivative Ḟ (k) is here numerically computed
by means of a central derivative:

F (k + 1) − F (k − 1)
Ḟ (k) = (5.50)
2δt
Equation (5.50) also allows relating the derivative of the force not only to
past values of F but also to the system output, i.e. to the value that the force
F is going to assume at step k + 1. This strategy is instead not required for
the time derivative of the piston stroke ṡ (k) which can be simply computed
as:
s (k) − s (k − 1)
ṡ (k) = (5.51)
δt
Equations (5.50) and (5.51) can then be substituted in the Maxwell model to
obtain an expression for F (k + 1):

1 c1 −1
F (k + 1) = 1 +2δt k1 [k0 (s (k) − s0 ) +
s(k)−s(k−1) (5.52)
+c1 k0
k1 +1 δt + ck11 F(k−1)
2δt

The identification of the parameters was performed through the analysis of a


large set of experimental data, collected in different working conditions of
the actuators. For the present work, two kinds of motion have been taken
into consideration, in both dynamic and static condition.
120 Parametric Identification

Experiments and data acquisition

The identification of the parameters was performed through the analysis of a


large set of experimental data, collected in different working conditions of
the actuators. For the present work, two kinds of motion have been taken
into consideration, in both dynamic and static condition.
For dynamic tests, a closed loop control was used to move the actuators
with sinusoidal laws of motion, one joint at a time. The pressure of the
feeding system was settled at 70[bar] and it is hereby considered constant.
The harmonic trajectory was repeated for different amplitudes and velocities
in order to cover to whole workspace in several working conditions. The
chosen frequency values were the same for both the actuators (from 0.5
Hz to 2.0 Hz) while for the amplitude this choice was not possible for the
different kinematic capabilities of the two joints (joint 1 from 0.1[rad] to
0.3[rad], joint 2 from 0.33[rad] to 0.99[rad]). As an example, one of the
used sinusoidal signal is represented in Fig.5.9 (left column).
During static tests the leg was controlled to maintain a constant configuration
in its workspace. Again, the feeding pressure has been settled at 70 bar. The
whole two dimensional workspace have been tested (joint 1 from −0.4[rad]
to 1.0 [rad], joint 2 from −2.2[rad] to −0.6[rad]). Figure 5.9 (right column)
reports also the measured data for one the used static tests. As visible, the
force collected for these tests show a behaviour fairly distant from the statics.
Such phenomenon, which also affects the position of the actuator with a
appreciable oscillation, is particularly evident for the Knee joint. To get rid
of this issue in the following sections the thrust provided by the actuator is
not considered constant (Ḟ = 0) not even in this kind of tests.

Signal processing and Parameters estimation

As mentioned, the parameters in Θ are supposed to be functions of the


system inputs. In particular, the behaviour of such parameters have been
interpolated by means of proper polynomial functions with general equation:
 
δ
Θi = ∑ i
ϑδ1 ,δ2 ,..δn+m ∏ ϕj j (5.53)
δ1 = 0, .., d1 j=1,2..n+m
δ2 = 0, .., d2
...
δn = 0, .., dn+m
5.2 Applications 121

b. INTERPOLATION VIA STATIC TESTS: PARAMETERS s0 AND k0


0.10

Stiffness, k0 [Nm-1] Valve control, uv


Stroke, s [m]
0.32 0.05
0.31 0.00
0.30 -0.05
0.29 -0.10
-2.75 22.5
Length, s0 [m]

-3.00 15.0
-3.25 7.5
-3.50 0.0
-3.75 -7.5
0 2 4 6 8 10 0 2 4 6 8 10
Time [s] Time [s]
HIP KNEE
Measured value
Estimated value

Fig. 5.10 Measured and estimated values of s0 and k0 for a static test: the measured values
are computed as in the paragraph Use of static tests.

where d1 , d2 , .., dn+m are the maximum degrees chosen for the n + m ele-
ments of the regressor vector ϕ ; the coefficients i ϑδ1 ,δ2 ,..δn+m are the system
parameters that must be identified and which compose the vector Θ ∗ . It is
worth remarking that the coefficients of the polynomials are identified to
copy the behaviour of the actual system even though they do not have a
direct correlation to it.
The number of parameters involved in the computation of the NARX model,
i.e. the number of elements in Θ∗ , are a function both of the number of regres-
sors to be used for computation and of the maximum degrees d1 , d2 , .., dn+m
of the fitting polynomials. The data collected with experimental tests has
been used for this purpose as described in the remainder of the section.
· Use of Static Tests.
The static experiments have been used first; for such tests the strokes of the
two actuators are controlled to a constant position, so that s (k) = s (k − 1) =
... = s (k − m + 1) and consequently ṡ (k) = 0. The same simplification
cannot be performed for Ḟ since, as visible Fig. 5.10, the measured force
presents a high variability also in static conditions.
Equation (5.52) is modified accordingly:
 −1  
1 c1 c1 F (k − 1)
F (k + 1) = 1 + k0 (s (k) − s0 ) + (5.54)
2δt k1 k1 2δt
122 Parametric Identification

This last relation can be rewritten in matrix form so as:


⎡  ⎤
1 c1 −1
⎢ k0 1 + 2δt k1  ⎥
F (k + 1) = s (k) , F(k−1)
, 1 ⎢ c1 1 + 1 c1 −1 ⎥ (5.55)
2δt ⎣ k1
2δt 1 c1 −1 ⎦
k1
−k0 s0 1 + 2δt k1

The expression (5.54) can be formulated for each collected point of the static
tests. Defining the matrix Ω s , as
⎡ ⎤
F(k−1)
s (k) , 2δt , 1
⎢ ⎥
⎢ s (k − 1) , F(k−2)
1⎥
Ωs = ⎢ 2δt , ⎥ (5.56)
⎢ ..., ..., ... ⎥
⎣ ⎦
F(k−m−1)
s (k − m) , 2δt , 1
a right pseudo inverse can be computed for each instant to obtain:
⎡  ⎤
1 c1 −1
k 1 + 2δt k1
⎢ c0 ⎥ 
⎢ 1 1 + 1 c1 −1 ⎥ = Ω Ts Ω s Ω Ts −1 F (k + 1) (5.57)
⎣ k1 2δt k1  ⎦
1 c1 −1
−k0 s0 1 + 2δt k1

where k represents all the regressors chosen for the identification procedure.
The system of equations can be solved in the unknowns k0 , s0 and ck11 for
each collected instant to obtain several values for such unknowns. Naming
T −1
α1 α2 α3 = Ω Ts Ω s Ω Ts F (k + 1) for each measured instant it is
obtained: 
α2 α2 −1
k0 (k) = α1 1 + 2δt 1 − 2δt
s0 (k) = − αα31 (5.58)
c1 α2 −1
k1 (k) = α2 1 − 2δt

At this point, the static tests have been used to trace the parameters k0 , s0
and ck11 under different conditions. Such behaviours can then be interpolated
with a proper polynomial. It is assumed here that the registered values of ck11
under static conditions are not reliable due to the fact that the spring k1 and
the damper c1 should not play any role in the Maxwell model under ideal
static conditions (ṡ = 0 and Ḟ = 0). Nonetheless, the force derivative cannot
be considered null as mentioned in the previous section and that implies
the presence of ck11 in the Eq. (5.57). Thus, being such estimation strictly
depending on an undesired phenomenon observed during static tests, the
5.2 Applications 123

evaluation of such parameters is demanded to the analysis of the dynamic


tests data.
The degree of the interpolating polynomial, as well as their dependency from
the regressor vector elements, has been tested and it has been chosen to
describe the parameters k0 and s0 with two polynomials of degree three both
dependent on the control signal u (k) and on the actuator stroke s (k), thus:

δ1
Θk0 = ∑ k0 ϑ
δ1 ,δ2 u (k) s (k)δ2
δ1 = 0, ..3
δ2 = 0, ..3
δ1 + δ2 ≤ 3
δ1 δ2 (5.59)
Θs0 = ∑ s0 ϑ
δ1 ,δ2 u (k) s (k)
δ1 = 0, ..3
δ2 = 0, ..3
δ1 + δ2 ≤ 3

The degree of these polynomials have been chosen after several attempts,
while looking for a proper compromise between effectiveness of the resulting
model and number of coefficients required for the computation.
The ten parameters k0 ϑδ1 ,δ2 and the ten s0 ϑδ1 ,δ2 can be computed through a
simple quadratic regression on the values of k0 (k) and s0 (k) as computed in
(5.58). The problem is formulated as follows:
T
k 0 = u 0 s 0 u 0 s 1 ... u 3 s 0 k0 ϑ0,0 k0 ϑ0,1 . . . k0 ϑ
3,0 (5.60)

where k 0 is the column vector containing all the collected values of k0 (k) ac-
cording to Eq. (5.58) and u δ1 s δ2 are the ten column vectors collecting
the val-
ues of the monomials u (k)δ1 ·s (k)δ2 . Defining the matrix ϒ = u0 s0 u0 s1 . . . u3 s0 ,
the coefficients can be computed through computation of the left pseudo
inverse of matrix ϒ :
T −1 T
k0 ϑ
0,0
k0 ϑ
0,1 ... k0 ϑ
3,0 = ϒT ϒ ϒ k0 (5.61)

With a similar strategy, also the values of the four s0 ϑδ can be achieved:
−1 T
s0 ϑ
0,0
s0 ϑ
0,1 ... s0 ϑ
3,0 = ϒT ϒ ϒ s0 (5.62)

where s 0 is the column vector collecting the values of s0 (k) as computed by


Eq. (5.58).
124 Parametric Identification

c. INTERPOLATION VIA DYNAMIC TESTS: PARAMETERS c1 AND k1


0.10

Stiffness, k1 [Nm-1] Valve control, uv


Stroke, s [m]

0.32 0.05
0.31 0.00
0.30 -0.05
0.29 -0.10
1.50 0.0
Damping, c1 [kgs-1]

0.75 -5.0
-10.0
0.00
-15.0
-0.75 -20.0
-1.50 -25.0
0 2 4 6 8 10 0 2 4 6 8 10
Time [s] Time [s]
HIP KNEE
Measured value
Estimated value

Fig. 5.11 Measured and estimated values of c1 and k1 for a dynamic test: the measured values
are computed as described in the paragraph Use of dynamic tests.

The graphs shown in Fig. 5.10 points out that the evaluated parameter s0
assumes a negative value for the presented static test for both the Hip and
the Knee joints. It is worth remarking that this value is not fixed since it
is computed as a polynomial of degree 3 of both the control signal u (k)
and the actuator stroke u (k). However, the present value is coherent with
the proposed measured force, which is negative, and the evaluated stiffness
k0 > 0.

· Use of Dynamic Tests.


The dynamic behaviour of the actuator can be now taken into account. The
coefficients obtained for computation of k0 (k) and s0 (k) describe a purely
elastic system where no dissipative effect is considered yet. By nature, the
hydraulic actuator is subject several dissipative phenomena which are worth
being considered. To this aim, equation (5.52) is rewritten in matrix form as
follows:
⎡  ⎤
1 c1 −1
⎢ 1 +
k1
2δt  ⎥
F (k + 1) = Fel , ṡ (k) , F(k−1) ⎢ c1 (k0 + k1 ) 1 + 1 c1 −1 ⎥ (5.63)
⎣ k k1 ⎦
c1 
2δt 1 2δt
1 c1 −1
k1 1 + 2δt k1
5.2 Applications 125


1 c1 −1
where Fel = 1 + 2δt k1 k0 (s (k) − s0 ). As previously done for the static
tests, equation (5.63) is solved for every instant k through the right pseudo
inverse of matrix Ω d
where
⎡ ⎤
F(k−1)
Fel , ṡ (k) ,
⎢ 2δt ⎥
⎢Fel , ṡ (k − 1) , F(k−2) ⎥
Ωd = ⎢⎢ ...
2δt ⎥
⎥ (5.64)
⎣ ... ... ⎦
F(k−m−1)
Fel , ṡ (k − m) , 2δt
⎡  ⎤
−1
1 + 2δt
1 c1
⎢c k1 1 c1 −1 ⎥ 
⎢ 1 (k0 + k1 ) 1 + ⎥ = Ω Td Ω d Ω Td −1 F (k + 1) (5.65)
⎣ k1 2δt k1 ⎦
c1 
1 c1 −1
k1 1 + 2δt k1

Such equation yields to the over constrained system:


⎡  ⎤ ⎡ ⎤
1 2δt 1 − β1
0
⎢ 1 ⎥ c1 (k) ⎢ ⎥
⎢1 β3 ⎥
⎣ − β1 ⎦ k (k) = ⎣ 0 ⎦ (5.66)
1 β2
0 1 β − k0 (k)
3

where β1 , β2 and β3 are obtained through inversion of matrix Ω d , namely


T −1
β1 β2 β3 = Ω Td Ω d Ω Td F (k + 1). The system of equations (5.66)
can be numerically solved for each step k and its solutions, collected in the
column vectors c 1 and k 1 can then be used for identification of the respective
polynomials Θc1 and Θk1 . Also in this case, the degrees of such polynomials
have been chosen through observation of the results provided by different
values. In particular, it has been observed that the degrees of the polynomials
Θc1 and Θk1 marginally affect the behaviour of the whole model. Due to that,
it has been chosen to set both the degrees at zero. As a consequence, the two
polynomials are actually represented by two constant values.
Figure 5.11 shows the behaviour of the interpolated parameters for the
dynamic tests. As visible, the identified damping parameters c1 assume
negative values very close to zero (c1,Hip = −0.016015[kgs]−1 , c1,Knee =
−0.00618[kgs]−1 ) which imply a very small effect on the whole model
behaviour. The negative values assumed by such parameters, and also by
stiffness parameter k1 (k1,Hip = −17.64575[N/m], k1,Hip = −6.09655[N/m])
126 Parametric Identification

COMPARISON WITH INTERPOLATION DATA


HIP TEST EXAMPLE KNEE TEST EXAMPLE
0.350 0.350
Stroke, s [m]

Stroke, s [m]
0.325 0.325
0.300 0.300
0.275 0.275
0.250 0.250
0.20 0.20
Valve control, uv

Valve control, uv
0.10 0.10
0.00 0.00
-0.10 -0.10
-0.20 -0.20
0 0
-20 Fo rce, F [N] -20
Force, F [N]

-40 -40
-60 -60
-80 -80
-100 -100
0 2 4 6 8 10 0 2 4 6 8 10
Time [s] Time [s]
HIP KNEE
Measured value
Estimated value

Fig. 5.12 Narx model output of both Hip and Knee actuators for a dynamic test used for
calibration.

is to be ascribed at the intrinsically dissipative nature of the Maxwell model,


which is used here to model an actuated servo-system.

Model Validation

The identified NARX model has been tested by comparison with measured
data collected with experimentation on the test rig. Figure 5.12 shows the
behaviour of the full model while compared with the sinusoidal tests used
for calibration of parameters. As well expected, this kind of comparison
provides a good result and the model overlaps the actual behaviour of the
hydraulic actuators.
A more significant evaluation of the model can be performed by comparison
with motions different from those used for the identification of the parameters.
To this aim, combined motions of the two actuators have been performed and
analysed. Figure 5.15 also shows the collected data. As visible, the actuators
have been controlled with harmonic laws of motion with different frequency
5.2 Applications 127

Crosscorrelation, RuH Autocorrelation, RHH


Knee residual, HK [N] Hip residual, HH [N]
50.0 1.0
25.0 0.5
0.0 0.0

-25.0 -0.5

-50.0 -1.0
0 5 10 15 20 25
50.0 1.0
25.0 0.5
0.0 0.0
-25.0 -0.5
-50.0 -1.0
0 2 4 6 8 10 -20 -10 0 10 20
Time [s] Lags [steps k]
HIP KNEE
Measured value

Fig. 5.13 Ressiduals analysis for comparison with Hip test.

and amplitude. The results provided by the model are compared with the
measured forces.
The validation tests show that the model is able to trace the overall trend
of the actual system even if it shows a low sensitivity to interaction with
external forces given, in the present case, by the presence of two links
connected in serial configuration. It must be said that the curves of Fig.
5.14 are computed in open loop and they are not part of a forward dynamics
simulations. Different results might be obtained with simulation of the whole
mechanical system with a closed loop control.
A numerical estimation of the model quality is also provided in Fig. 5.14.
The deviation among the computed NARX model and the collected data is
provided as σ = (|F| − |F ∗ |)/|F|, where F is the measured force and F ∗ is
the value predicted by the NARX model at each step.
The value of σ provides an indices which indicates the quality of the pro-
posed modelization. Even though such parameters owns peaks of about
40%, the average values of the errors are respectively σhip = 9.093% and
σknee = 7.754%.
In addition an analysis of residual has been carried out to verify the NARX
model. The procedure consists of determining the residual, as the difference
between the measured and estimated values, in our case the two pistons
forces, and to proceed with an Autocorrelation and Cross correlation between
the aforementioned value and a noise signal. The Autocorrelation permits
to compare a signal with itself while the Cross correlation, instead, permits
128 Parametric Identification

Crosscorrelation, RuH Autocorrelation, RHH


Knee residual, HK [N] Hip residual, HH [N]
50.0 1.0
25.0 0.5
0.0 0.0

-25.0 -0.5

-50.0 -1.0
0 5 10 15 20 25
50.0 1.0
25.0 0.5
0.0 0.0
-25.0 -0.5
-50.0 -1.0
0 2 4 6 8 10 -20 -10 0 10 20
Time [s] Lags [steps k]
HIP KNEE
Measured value

Fig. 5.14 Ressiduals analysis for comparison with Knee test.

to investigate how much two signal are similar each other. A signal is
autocorrelated with itself and cross correlated with a second one, if the
results of the aforementioned analysis is equal to zero1 .
As it is possible to notice in Fig. 5.13 the Hip actuators is very well identified
by using the Maxwell model, since the difference between the estimated
and measured force is null and Autocorrelation and Cross correlation results
tend to zero. The same does not happen for the Knee actuator, where, even
if the estimated force values give good results, the test on the identification
procedures is not satisfying. The Autocorrelation shows the presence of a
sinusoidal hidden signal and the Cross correlation does not tend to zero (Fig.
5.14). It might be caused from the coupled dynamic of the leg, that does
not permit to isolate the Knee behaviour. This is much evident in Fig. 5.15,
where the results of a combined motion test are shown.

Main Achievements

In the robotics field, the simulation of complicated systems is an extremely


important issue. The complexity of the machines themselves combined
with that of the tasks they are built to perform is often exacerbated by the
presence of highly non-linear subsystems such as elastic links and hydraulic
actuators. It is the case of the HyQ quadruped robot for which an hydraulic
1 With an exception for the first value of the Autocorrelation that must be equal to 1 because it compares the
signal with itself at the same t
5.2 Applications 129

0.350 50.0

Residual, HH [N]
Stroke, s [m]
0.325 25.0

0.300 0.0
-25.0
0.275
-50.0
0.250 0 2 4 6 8 10

Crosscorrelation, RuH Autocorrelation, RHH


0.20 Time [s]
Valve control, uv

0.10 1.0
0.5
0.00
0.0
-0.10 -0.5
-0.20 -1.0
0 0 5 10 15 20 25
1.0
Force, F [N]

-50 0.5
0.0
-100
-0.5
-150 -1.0
0 2 4 6 8 10 -20 -10 0 10 20
Time [s] Lags [steps k]
HIP KNEE
Measured value
Estimated value

Fig. 5.15 Narx model output of both Hip and Knee actuators for a combined motion.

actuation is exploited and whose tasks require highly dynamic capabilities.


It is straightforward that the possibility of testing the robot behaviour as far
as the control strategies performance before implementation might represent
an enormous advantage. Due to that, several experimental studies have
been conducted on its actuators with the aim of obtaining a model able to
reproduce the behaviour of the actuators with the main target of being used
in a multi-body environment.
Many different models have been investigated in this thesis: from the spring-
damper to the ones based on the hydraulic analytical formulation till reaching
the non-linear autoregressive model. Passing by one model to the other, both
the level complexity and also the accuracy in the detection of the dynami-
cal phenomena increase. The reasons of the deviation among the first two
identified model and the actual actuators are to be seek in those phenomena,
hard to be detected during tests, which affect the experimental set-up in a
rather stochastic way. In particular, the presence of air bubbles in the hy-
draulic circuit, the friction among mechanical parts, the leakage in hydraulic
130 Parametric Identification

pistons and at last the fluctuation of the feeding pressure are examples of
the issues which are hardly identifiable and affect the experimental test rig.
Despite the presence of such problems, the non-linear solution reaches a
good approximation of the phenomena as can be seen from the agreement
between numerical and experimental results and, moreover, from the residual
analysis.
Chapter 6

Conclusions and Future Works

This thesis has proposed a solution for the integrated approach required
for developing an high complex robotic systems. Nowadays in fact, the
panorama of robotic is wide and it has stressed the limit of the traditional
development process of those machines. The thesis contains a detailed
collection of methods and simulation techniques, to use in the development
process of reliable robotic virtual model to properly integrate with the control
algorithm, and several applications regarding both the development of new
robotic devices or the investigation of some existing ones.
Among all the models here presented, two can be selected as the main ones:
the first one regards the structural model of a flexible 2DOFs robot, while the
second one concerns the dynamic model of an hydraulic actuators. Both of
them reached great results as is it visible from the agreement with between
numerical and experimental results. More in detail the strains detected with
the structural model achieved an accuracy of 85% with respect to the data
coming from the experimental tests, while the errors between the numerical
hydraulic cylinder and its experimental counterpart are less than 10%.

6.1 Future Works


The works presented in this thesis represent the first steps in the development
process of a complete integrate reliable VPM. The future works that should
be done in order to move forward to this complete integration can be both in
the modelling area than in the one concerning the physical robot realization.
The enhancements of the modelling section are listed in the following:
132 Conclusions and Future Works

· reduce the complexity of the flexible model here presented in order


to achieve simulation times comparable with that one required in the
control algorithm;
· investigate new non-homogenous materials with stiffness and dumping
optimized according to the stress and strain; able both to absorb the
impulses and to have a linear behaviour.
· implement the aforementioned flexible model within the control al-
gorithm with the purpose of planning optimized trajectory based on
analysis of an optimal trajectory by exploiting the structural flexibility
with the aim of reducing the motors consumption. The optimization
can be evaluated by analysing several different aspects, as: with a given
task (i.e. pick and place for a robotic arm or walking for a legged robot),
it would be possible to optimize the structural elasticity; with the same
flexible structure, increase the task difficulty (i.e. a pick and place
operation done as fast as possible) and optimize the trajectory; with the
aim of reducing as much as possible the motors energy consumption,
maximize the structural acceleration (i.e. robotic arm able to use the
hammer or a jumping legged robot).
At the same time, building a flexible physical prototype based on the afore-
mentioned assumptions to test the expected improvements. For example,
the elasticity can be applied to a “falling robots” whose aim is learning by
demonstration: with flexible arms and lightweight structure, each fall does
not damage the humanoids robots; or to a hammering robot, to exploit the
links elasticity to prevent the system breaking.
Last, but not the least, realize a new test-rig for the hydraulic cylinder
with the aim of overpassing some of the issue encountered with the actual
experimental data
References

[1] ADAMS, M. and Documentation, C. (2005). Msc. Software Corpora-


tion.

[2] Aggogeri, F., Borboni, A., Adamini, R., and Faglia, R. (2015). A
fuzzy logic to solve the robotic inverse kinematic problem. In Applied
Mechanics and Materials, volume 772, pages 488–493. Trans Tech Publ.

[3] Andersen, B. W. and Binder, R. C. (1967). The analysis and design of


pneumatic systems. Journal of Applied Mechanics, 34:1055.

[4] Bai, S., Zhou, L., and Wu, G. (2013). Handbook of Manufacturing
Engineering and Technology, chapter Manipulator Dynamics. Springer
London.

[5] Basso, M., Giarre, L., Groppi, S., and Zappa, G. (2005). Narx models of
an industrial power plant gas turbine. Control Systems Technology, IEEE
Transactions on, 13(4):599–604.

[6] Battaglia, E., Bianchi, M., D’Angelo, M., D’Imperio, M., Cannella, F.,
Scilingo, E., and Bicchi, A. (2015). A finite element model of tactile flow
for softness perception. volume 2015-November, pages 2430–2433. cited
By 0.

[7] Beavers, G. S. and Joseph, D. D. (1967). Boundary conditions at a


naturally permeable wall. Journal of fluid mechanics, 30(01):197–207.

[8] Bi, S.-S., Zhou, X.-D., and Marghitu, D. B. (2012). Impact modelling
and analysis of the compliant legged robots. Proceedings of the Institution
of Mechanical Engineers, Part K: Journal of Multi-body Dynamics, page
1464419312441451.

[9] Blackburn, J. F. (1969). Fluid power control. Massachusetts Institute of


Technology, The MIT Press.

[10] Blomdell, A., Dressler, I., Nilsson, K., and Robertsson, A. (2010).
Flexible application development and high-performance motion control
based on external sensing and reconfiguration of abb industrial robot
controllers. In 2010 IEEE International Conference on Robotics and
Automation, pages 62–66.
134 References

[11] Boer, S., Aarts, R., Meijaard, J., Brouwer, D., and Jonker, J. (2014). A
nonlinear two-node superelement for use in flexible multibody systems.
Multibody system dynamics, 31(4):405–431.
[12] Bosworth, W., Kim, S., and Hogan, N. (2014). The effect of leg
impedance on stability and efficiency in quadrupedal trotting. pages
4895–4900.
[13] Boyer, F. and Porez, M. (2015). Multibody system dynamics for bio-
inspired locomotion: from geometric structures to computational aspects.
Bioinspiration & biomimetics, 10(2):025007.
[14] Bricout, J., Debus, J., and Micheau, P. (1990). A finite element model
for the dynamics of flexible manipulators. Mechanism and Machine
Theory, 25(1):119–128.
[15] Cannella, F., Dimperio, M., Canali, C., Rahman, N., Chen, F., Catelani,
D., Caldwell, D. G., and Dai, J. S. (2016). Origami carton folding analysis
using flexible panels. pages 95–106.
[16] Cannella, F., Garinei, A., D’Imperio, M., and Rossi, G. (2014). A
novel method for the design of prostheses based on thermoelastic stress
analysis and finite element aanalysis. Journal of Mechanics in Medicine
and Biology, 14(05):1450064.
[17] Cannon, R. H. and Schmitz, E. (1984). Initial experiments on the
end-point control of a flexible one-link robot. The International Journal
of Robotics Research, 3(3):62–75.
[18] Carbonari, L., Battistelli, M., Callegari, M., and Palpacelli, M. (2013).
Dynamic modelling of a 3-cpu parallel robot via screw theory. Mech. Sci,
4(1):185–197.
[19] Carbonari, L., Bruzzone, L., and Callegari, M. (2011). Impedance
control of a spherical parallel platform. International Journal of Intelligent
Mechatronics and Robotics, 1(1):40–60.
[20] Chablat, D. and Wenger, P. (1998). Working modes and aspects in fully
parallel manipulators. volume 3, pages 1964–1969.
[21] Cheli, F. and Pennestrì, E. (2006). Kinematics and dynamics of multi-
body systems. Casa Editrice Ambrosiana, Milano.
[22] Chung, M. (2010). Air hopper grasshopper robot. Available on line.
[23] Clarke, R. (1994). Asimov’s laws of robotics: Implications for infor-
mation technology. 2. Computer, 27(1):57–66.
[24] Corinaldi, D., Palpacelli, M.-C., Carbonari, L., Bruzzone, L., and
Palmieri, G. (2014). Experimental analysis of a fractional-order control
applied to a second order linear system. In Mechatronic and Embedded
Systems and Applications (MESA), 2014 IEEE/ASME 10th International
Conference on, pages 1–6. IEEE.
References 135

[25] D’Angelo, M., Cannella, F., Memeo, M., D’Imperio, M., and Bianchi,
M. (2015). Preliminary fingertip pressure area distribution via experimen-
tal test and numerical model. cited By 0.

[26] De Jalon, J. G. and Bayo, E. (2012). Kinematic and dynamic simula-


tion of multibody systems: the real-time challenge. Springer Science &
Business Media.

[27] De Jalon, J. G., Unda, J., and Avello, A. (1986). Natural coordinates
for the computer analysis of multibody systems. Computer Methods in
Applied Mechanics and Engineering, 56(3):309–327.

[28] De Straete, H. J., Degezelle, P., De Schutter, J., and Belmans, R. J.


(1998). Servo motor selection criterion for mechatronic applications.
Mechatronics, IEEE/ASME Transactions on, 3(1):43–50.

[29] Dictionary, O. E. (1989). Oxford: Oxford university press.

[30] Diebel, J. (2006). Representing attitude: Euler angles, unit quaternions,


and rotation vectors. Matrix, 58:15–16.

[31] D’Imperio, M., Cannella, F., Carbonari, L., Rahman, N., and Cald-
well, D. G. (2015a). Dynamic modelling and analysis of an articulated
robotic leg. In MESA 2015 - 11th IEEE/ASME International Conference
on Mechatronic and Embedded Systems and Applications, Conference
Proceedings.

[32] D’Imperio, M., Cannella, F., Chen, F., Catelani, D., Semini, C., and
Caldwell, D. G. (2014). Modelling legged robot multi-body dynamics
using hierarchical virtual prototype design. In Biomimetic and Biohybrid
Systems, pages 59–71. Springer.

[33] D’Imperio, M., Carbonari, L., Rahman, N., Canali, C., and Cannella, F.
(2015b). Karl: A new bio-inspired modular limb for robotic applications.
In Advanced Intelligent Mechatronics (AIM), 2015 IEEE International
Conference on, pages 183–188. IEEE.

[34] D’Imperio, M., Carbonari, L., Rahman, N., Canali, C., and Cannella,
F. (2015c). A novel parallely actuated bio-inspired modular limb. In
Intelligent Robots and Systems (IROS), 2015 IEEE/RSJ International
Conference on, pages 347–352.

[35] Ding, L., Gao, H., Deng, Z., Song, J., Liu, Y., Liu, G., and Iagnemma,
K. (2013). Foot–terrain interaction mechanics for legged robots: Model-
ing and experimental validation. The International Journal of Robotics
Research, 32(13):1585–1606.

[36] Donelan, P. (2007). Singularities of robot manipulators. Singularity


Theory, pages 189–217.
136 References

[37] Duffy, J. and Crane, C. (1980). A displacement analysis of the general


spatial 7-link, 7r mechanism. Mechanism and Machine Theory, 15(3):153–
169.
[38] Dwivedy, S. K. and Eberhard, P. (2006). Dynamic analysis of flexi-
ble manipulators, a literature review. Mechanism and machine theory,
41(7):749–777.
[39] El Sayed, M. A. and Habibi, S. (2012). Inner-loop control for electro-
hydraulic actuation systems. Journal of Dynamic Systems, Measurement,
and Control, 134(1):014501.
[40] Erdogan, F. and Sih, G. (1963). On the crack extension in plates
under plane loading and transverse shear. Journal of basic engineering,
85(4):519–525.
[41] Featherstone, R. (1983). The calculation of robot dynamics using
articulated-body inertias. The International Journal of Robotics Research,
2(1):13–30.
[42] Featherstone, R. (2001). The acceleration vector of a rigid body. The
International Journal of Robotics Research, 20(11):841–846.
[43] Featherstone, R. (2014). Rigid body dynamics algorithms. Springer.
[44] Ferziger, J. H. and Peric, M. (2012). Computational methods for fluid
dynamics. Springer Science & Business Media.
[45] Franklin, G. F., Powell, J. D., and Workman, M. L. (1998). Digital
control of dynamic systems, volume 3. Addison-wesley Menlo Park.
[46] Gebhardt, N., Herschel, D., Nollau, R., and Will, D. (2008). Hydraulik:
Grundlagen, Komponenten, Schaltungen. Springer.
[47] Geradin, M. and Cardona, A. (2001). Flexible multibody dynamics: a
finite element approach. Wiley.
[48] Gerling, G. J., Rivest, I. I., Lesniak, D. R., Scanlon, J. R., and Wan, L.
(2014). Validating a population model of tactile mechanotransduction of
slowly adapting type i afferents at levels of skin mechanics, single-unit
response and psychophysics. Haptics, IEEE Transactions on, 7(2):216–
228.
[49] Ghiba, I.-D. (2014). Saint-venant’s principle. In Encyclopedia of
Thermal Stresses, pages 4255–4264. Springer.
[50] Goodwin, G. C. and Payne, R. L. (1977). Dynamic system identifica-
tion: experiment design and data analysis.
[51] Grzesiak, A., Becker, R., and Verl, A. (2011). The bionic handling
assistant: a success story of additive manufacturing. Assembly Automation,
31(4):329–333.
References 137

[52] Haber, R. and Keviczky, L. (1999). Nonlinear system identification-


input-output modeling approach.
[53] Habibi, S. and Goldenberg, A. (1999). Design of a new high perfor-
mance electrohydraulic actuator. In Advanced Intelligent Mechatronics,
1999. Proceedings. 1999 IEEE/ASME International Conference on, pages
227–232. IEEE.
[54] Harter, H. L. (1975). The method of least squares and some alterna-
tives: Part iv. International Statistical Review/Revue Internationale de
Statistique, pages 125–190.
[55] Hautus, M. (1969). Controllability and observability conditions of
linear autonomous systems. PROCEEDINGS OF THE KONINKLI-
JKE NEDERLANDSE AKADEMIE VAN WETENSCHAPPEN SERIES
A-MATHEMATICAL SCIENCES, 72(5):443.
[56] Hera, P. M. L. and Morales, D. O. (2012). Modeling dynamics of an
electro-hydraulic servo actuated manipulator: A case study of a forestry
forwarder crane. In World Automation Congress (WAC), 2012, pages 1–6.
IEEE.
[57] Hirota, K. and Sugeno, M. (1995). Industrial applications of fuzzy
technology in the world, volume 2. World Scientific.
[58] Hoyt, D. F. and Taylor, C. R. (1981). Gait and the energetics of
locomotion in horses. Nature.
[59] Hughes, A. and Drury, B. (2013). Electric motors and drives: funda-
mentals, types and applications. Newnes.
[60] Hunt, K. H. (1990). Kinematic geometry of mechanisms. Clarendon
Press Oxford.
[61] Hunt, K. J., Irwin, G. R., and Warwick, K. (2012). Neural network
engineering in dynamic control systems. Springer Science & Business
Media.
[62] Innocenti, C. and Parenti-Castelli, V. (1991). A novel numerical ap-
proach to the closure of the 6-6 stewart platform mechanism. In Advanced
Robotics, 1991.’Robots in Unstructured Environments’, 91 ICAR., Fifth
International Conference on, pages 851–855. IEEE.
[63] Ivaldi, S., Padois, V., and Nori, F. (2014). Tools for dynamics sim-
ulation of robots: a survey based on user feedback. arXiv preprint
arXiv:1402.7050.
[64] Jelali, M. and Kroll, A. (2003). Hydraulic servo-systems: modelling,
identification and control. Springer Science & Business Media.
[65] Jelali, M. and Kroll, A. (2012). Hydraulic servo-systems: modelling,
identification and control. Springer Science & Business Media.
138 References

[66] Jinghong, Y., Zhaoneng, C., and Yuanzhang, L. (1994). The variation
of oil effective bulk modulus with pressure in hydraulic systems. Journal
of dynamic systems, measurement, and control, 116(1):146–150.

[67] Johnson, M., Shrewsbury, B., Bertrand, S., Wu, T., Duran, D., Floyd,
M., Abeles, P., Stephen, D., Mertins, N., Lesman, A., et al. (2015). Team
ihmc’s lessons learned from the darpa robotics challenge trials. Journal
of Field Robotics, 32(2):192–208.

[68] Jonker, B. (1989). A finite element dynamic analysis of spatial mecha-


nisms with flexible links. Computer Methods in Applied Mechanics and
Engineering, 76(1):17–40.

[69] Karray, F., Tafazolli, S., and Gueaieb, W. (1999). Robust tracking of a
lightweight manipulator system. Nonlinear Dynamics, 20(2):169–179.

[70] Kazemi, M., Valois, J.-S., Bagnell, J., and Pollard, N. (2014). Human-
inspired force compliant grasping primitives. Autonomous Robots,
37(2):209–225.

[71] Keung, L. (1995). Closed Form Direct Position Analysis of Stewart


Platform Type Parallel Manipulator. PhD thesis, The Chinese University
of Hong Kong.

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


with lumped elasticity. In Robotics and Automation, 2000. Proceedings.
ICRA’00. IEEE International Conference on, volume 4, pages 3964–3969.
IEEE.

[73] Khatib, O., Yokoi, K., Brock, O., Chang, K., and Casal, A. (1999).
Robots in human environments: Basic autonomous capabilities. The
International Journal of Robotics Research, 18(7):684–696.

[74] Kim, S. and Murrenhoff, H. (2012). Measurement of effective bulk


modulus for hydraulic oil at low pressure. Journal of Fluids Engineering,
134(2):021201.

[75] Kimura, H. and Fukuoka, Y. (2004). Biologically inspired adaptive dy-


namic walking in outdoor environment using a self-contained quadruped
robot:’tekken2’. In Intelligent Robots and Systems, 2004.(IROS 2004).
Proceedings. 2004 IEEE/RSJ International Conference on, volume 1,
pages 986–991. IEEE.

[76] Ko, M. C. and SOE, K. (2014). Design and construction of wireless


two stepper motors control system based pic microcontroller using rf
module.

[77] Köker, R. (2013). A genetic algorithm approach to a neural-network-


based inverse kinematics solution of robotic manipulators based on error
minimization. Information Sciences, 222:528–543.
References 139

[78] Krishnan, R. (2001). Electric Motor Drives, Modeling and Analysis.


Prentice Hall, Inc.
[79] Lavalle, M., D’Imperio, M., Carbonari, L., Cannella, F., Mentrasti,
L., Pupilli, M., and Dai, J. (2015). New test rig for creased paperboard
investigation to confectionery industry reconfigurable folders. volume
2015-October. cited By 0.
[80] Ljung, L. (1987). System identification: Theory for the user. PTR
Prentice Hall Information and System Sciences Series, 198.
[81] Ljung, L. (1995). System identification toolbox: user’s guide. Citeseer.
[82] Lopes, G., Zhang, F., et al. (2013). Design and sensing of a flexible
robot leg. In Intelligent Robots and Systems (IROS), 2013 IEEE/RSJ
International Conference on, pages 4072–4077. IEEE.
[83] Macchelli, A., Melchiorri, C., and Stramigioli, S. (2007). Port-based
modelling of a flexible link. IEEE transactions on robotics, 23(4):650–
660.
[84] Maleva, O. (2002). Lipschitz quotient mappings with good ratio of
constants. Mathematika, 49(1-2):159–165.
[85] Malone, R. (2004). Ultimate robot. DK Pub.
[86] Malzahn, J. (2014). Modeling and Control of Multi-elastic-link Robots
Under Gravity: From Oscillation Damping and Position Control to Physi-
cal Interaction. VDI-Verlag.
[87] Malzahn, J., Phung, A. S., and Bertram, T. (2012). A multi-link-flexible
robot arm catching thrown balls. In Robotics; Proceedings of ROBOTIK
2012; 7th German Conference on, pages 1–6. VDE.
[88] Manual, A. U. (1995). Theory manual. ANSYS revision, 5.
[89] Martins, J., Mohamed, Z., Tokhi, M., Da Costa, J. S., and Botto,
M. (2003). Approaches for dynamic modelling of flexible manipulator
systems. IEE Proceedings-Control Theory and Applications, 150(4):401–
411.
[90] Mason, M. T. and Salisbury Jr, J. K. (1985). Robot hands and the
mechanics of manipulation.
[91] McCloy, D. and Martin, H. R. (1980). Control of fluid power: analysis
and design. Chichester, Sussex, England, Ellis Horwood, Ltd.; New York,
Halsted Press, 1980. 505 p., 1.
[92] McPhee, J., Shi, P., and Piedbuf, J.-C. (2002). Dynamics of multibody
systems using virtual work and symbolic programming. Mathematical
and Computer Modelling of Dynamical Systems, 8(2):137–155.
140 References

[93] Megahed, S. M. and Hamza, K. (2004). Modeling and simulation of


planar flexible link manipulators with rigid tip connections to revolute
joints. Robotica, 22(03):285–300.

[94] Meirovitch, L. (1967). Analytical Methods in Vibrations. Macmillan.

[95] Mentrasti, L., Cannella, F., Pupilli, M., and Dai, J. S. (2013). Large
bending behavior of creased paperboard. i. experimental investigations.
International Journal of Solids and Structures, 50(20):3089–3096.

[96] Merritt, H. E. (1967). Hydraulic control systems. John Wiley & Sons.

[97] Miller, S. J. (2006). The method of least squares. Mathematics Depart-


ment Brown University, pages 1–7.

[98] M.L. Bucalem, K. B. (2011). The mechanics of solids and structures-


hierarchical modeling and the finite element solutions. Springer.

[99] Nagaraj, B., Nataraju, B., and Chandrasekhar, D. (2001). Nondi-


mensional parameters for the dynamics of a single flexible link. In
International Conference on Theoretical, Applied, Computational and
Experimental Mechanics (ICTACEM).

[100] Nagarajan, S. and Turcic, D. A. (1990). Lagrangian formulation of


the equations of motion for elastic mechanisms with mutual dependence
between rigid body and elastic motions: Part i—element level equations.
Journal of Dynamic Systems, Measurement, and Control, 112(2):203–214.

[101] Nelles, O. (2001). Nonlinear system identification: from classical


approaches to neural networks and fuzzy models. Springer Science &
Business Media.

[102] Piper, D. and Roth, B. (1969). The kinematics of manipulators under


computer control, zakopane [a]. In Zakopane Poland: Proc of the 2nd
International Congress on Theory of Machines and Mechanisms, volume
169.

[103] Pratt, G. A., Williamson, M. M., Dillworth, P., Pratt, J., and Wright,
A. (1997). Stiffness isn’t everything. In experimental robotics IV, pages
253–262. Springer.

[104] Priestley, M. and Grant, D. (2005). Viscous damping in seismic design


and analysis. Journal of Earthquake Engineering, 9(spec02):229–255.

[105] R Core Team (2013). R: A Language and Environment for Statistical


Computing. R Foundation for Statistical Computing, Vienna, Austria.

[106] Rico, J., Gallardo, J., and Duffy, J. (1999). Screw theory and higher
order kinematic analysis of open serial and closed chains. Mechanism
and Machine Theory, 34(4):559–586.
References 141

[107] Riškus, A. (2015). Approximation of a cubic bézier curve by circular


arcs and vice versa. Information technology and control, 35(4).
[108] Rucker, D. C., Webster, R. J., Chirikjian, G. S., and Cowan, N. J.
(2010). Equilibrium conformations of concentric-tube continuum robots.
The International journal of robotics research.
[109] Sadjadian, H. and Taghirad, H. D. (2005). Comparison of different
methods for computing the forward kinematics of a redundant parallel
manipulator. Journal of Intelligent and Robotic Systems, 44(3):225–246.
[110] Schiehlen, W. (1997). Multibody system dynamics: roots and per-
spectives. Multibody system dynamics, 1(2):149–188.
[111] Schiehlen, W. and Eberhard, P. (2014). Principles of mechanics. In
Applied Dynamics, pages 85–98. Springer.
[112] Schiehlen, W. O. (1990). Multibody systems handbook, volume 6.
Springer.
[113] Schilling, R. et al. (2013). Fundamentals of robotics.
[114] Schreiber, G., Stemmer, A., and Bischoff, R. (2010). The fast research
interface for the kuka lightweight robot. In IEEE Workshop on Innovative
Robot Control Architectures for Demanding (Research) Applications How
to Modify and Enhance Commercial Controllers (ICRA 2010), pages
15–21. Citeseer.
[115] Selig, J. and Ding, X. (2009). A screw theory of timoshenko beams.
Journal of Applied Mechanics, 76(3):031003.
[116] Selig, J. M. (2004). Geometric fundamentals of robotics. Springer
Science & Business Media.
[117] Semini, C. (2010). Hyq-design and development of a hydraulically
actuated quadruped robot. PD Thesis, University of Genoa, Italy.
[118] Semini, C., Goldsmith, J., Manfredi, D., Calignano, F., Ambrosio,
E. P., Pakkanen, J., and Caldwell, D. G. (2015). Additive manufacturing
for agile legged robots with hydraulic actuation. In Advanced Robotics
(ICAR), 2015 International Conference on, pages 123–129. IEEE.
[119] Seok, S., Wang, A., Chuah, M. Y., Otten, D., Lang, J., and Kim, S.
(2013). Design principles for highly efficient quadrupeds and implemen-
tation on the mit cheetah robot. In Robotics and Automation (ICRA), 2013
IEEE International Conference on, pages 3307–3312. IEEE.
[120] Shabana, A. A. (2013). Dynamics of multibody systems. Cambridge
university press.
[121] Simo, J. and Vu-Quoc, L. (1986). On the dynamics of flexible beams
under large overall motions—the plane case: Part ii. Journal of Applied
Mechanics, 53(4):855–863.
142 References

[122] Sjöberg, J., Zhang, Q., Ljung, L., Benveniste, A., Delyon, B., Gloren-
nec, P.-Y., Hjalmarsson, H., and Juditsky, A. (1995). Nonlinear black-
box modeling in system identification: a unified overview. Automatica,
31(12):1691–1724.
[123] Stieber, M. E., McKay, M., Vukovich, G., and Petriu, E. (1999).
Vision-based sensing and control for space robotics applications. Instru-
mentation and Measurement, IEEE Transactions on, 48(4):807–812.
[124] Stigler, S. M. (1978). Mathematical statistics in the early states. The
Annals of Statistics, pages 239–265.
[125] Swevers, J., Verdonck, W., and Schutter, J. D. (2007). Dynamic model
identification for industrial robots. Control Systems, IEEE, 27(5):58–71.
[126] Synge, J. L. (1960). Classical dynamics. In Principles of Classical
Mechanics and Field Theory/Prinzipien der Klassischen Mechanik und
Feldtheorie, pages 1–225. Springer.
[127] Theodore, R. J. and Ghosal, A. (1995). Comparison of the assumed
modes and finite element models for flexible multilink manipulators. The
International journal of robotics research, 14(2):91–111.
[128] Tokhi, M. O. and Azad, A. K. (2008). Flexible robot manipulators:
modelling, simulation and control, volume 68. Iet.
[129] Tolar, J. (1988). On a quantum mechanical d’alembert principle. In
Group theoretical methods in physics, pages 268–274. Springer.
[130] Tsai, L.-W. (1999). Robot analysis: the mechanics of serial and
parallel manipulators. John Wiley & Sons.
[131] Uicker, J., Denavit, J., and Hartenberg, R. (1964). An iterative method
for the displacement analysis of spatial mechanisms. Journal of Applied
Mechanics, 31(2):309–314.
[132] van Brunt, B. (2004). Holonomic and nonholonomic constraints. The
Calculus of Variations, pages 119–133.
[133] Verhaeghe, D. O. and Missotten, B. M. (2012). Lifting system for a
harvester. US Patent App. 14/233,557.
[134] Whittaker, E. T. (1970). A treatise on the analytical dynamics of
particles and rigid bodies: with an introduction to the problem of three
bodies. CUP Archive.
[135] Wiener, N. (1961). Cybernetics or Control and Communication in the
Animal and the Machine, volume 25. MIT press.
[136] Woods, R. L. and Lawrence, K. L. (1997). Modeling and simulation
of dynamic systems.
References 143

[137] Woodson, H. H. and Melcher, J. R. (1968). Electromechanical dy-


namics.
[138] Wu, J., Wang, J., and You, Z. (2010). An overview of dynamic
parameter identification of robots. Robotics and computer-integrated
manufacturing, 26(5):414–419.
[139] Wu, J. Z., Krajnak, K., Welcome, D. E., and Dong, R. G. (2008).
Three-dimensional finite element simulations of the dynamic response
of a fingertip to vibration. Journal of biomechanical engineering,
130(5):054501.
[140] Yusof, N. M., Ishak, N., Rahiman, M. H. F., Adnan, R., and Tajjudin,
M. (2015). Fractional-order model identification for electro-hydraulic
actuator. In Control Conference (ASCC), 2015 10th Asian, pages 1–5.
IEEE.
[141] Zhao, J., Wang, J., and Wang, S. (2013). Fractional order control to
the electro-hydraulic system in insulator fatigue test device. Mechatronics,
23(7):828–839.
[142] Zhu, G., Ge, S. S., and Lee, T. H. (1999). Simulation studies of tip
tracking control of a single-link flexible robot based on a lumped model.
Robotica, 17(01):71–78.
[143] Zhu, X. and Yoo, W.-S. (2015). Singularities of the frenet frame during
dynamic analyzing mooring cables based on lumped mass modeling. In
Proceedings of the 4th Korea-Japan Joint Symposium on Dynamics and
Control, pages 6–9.

[144] Žlajpah, L. (2008). Simulation in robotics. Mathematics and Comput-


ers in Simulation, 79(4):879–897.
[145] Zlatanov, D., Fenton, R., and Benhabib, B. (1998). Identification and
classification of the singular configurations of mechanisms. Mechanism
and Machine Theory, 33(6):743–760.
Appendix A

Grey box identification for


hydraulic piston

2 % Load data from test number d00186


3 load PISTON_dsp_hst_ps
4 load PISTON_dsp_hst_pt
5 load PISTON_dsp_hst_pa
6 load PISTON_dsp_hst_pb
7 load PISTON_dsp_hst_xp
8 load PISTON_dsp_hst_uv
9 load nominal_parameters
10

11 ts=0.001; %sampling time that the data is collected.


12 %----------------------------------------------
13

14 %Units of data in experimental logs


15 %Pressure in bars
16 %Piston position in mm
17 %Piston velocity in mm/s
18 %Force in N
19 %Piston center position is 40 mm
20

21 %converting pressure to Pa
22 PISTON_dsp_hst_ps= PISTON_dsp_hst_ps*1e5;
23 PISTON_dsp_hst_pt= PISTON_dsp_hst_pt*1e5;
24 PISTON_dsp_hst_pa= PISTON_dsp_hst_pa*1e5;
25 PISTON_dsp_hst_pb= PISTON_dsp_hst_pb*1e5;
26
146 Grey box identification for hydraulic piston

27 %converting positions to mm and making the center ...


position zero rather than 0.04 m
28 PISTON_dsp_hst_xp= PISTON_dsp_hst_xp*1e-3-0.04;
29

30 %converting input to current in Amperes


31 %PISTON_dsp_hst_uv=PISTON_dsp_hst_uv/100; ...
%valve current demand between -10 mA to 10 mA
32 PISTON_dsp_hst_uv= PISTON_dsp_hst_uv/1000; ...
%valve current demand between -1 mA to 1 mA
33 %----------------------------------------------
34

35

36 %scaling pressures by dividing by 1e6


37 kdata=1000; %number of data points to be used in ...
identification
38 z = iddata([PISTON_dsp_hst_pa(1:kdata)/1e6 ...
PISTON_dsp_hst_pb(1:kdata)/1e6 ...
PISTON_dsp_hst_xp(1:kdata)], ...
[PISTON_dsp_hst_uv(1:kdata) ...
PISTON_dsp_hst_ps(1:kdata) ...
PISTON_dsp_hst_pt(1:kdata)], ts, 'Name', ...
'HydPiston');
39 set(z, 'OutputName', {'Pressure_a';'Pressure_b';'Load ...
position'});
40 set(z, 'OutputUnit', {'Pa';'Pa';'m'});
41 set(z, 'InputUnit', {'A';'Pa';'Pa'});
42 set(z, 'Tstart', 0, 'TimeUnit', 's');
43

44 FileName = ...
'HydPiston_OpenLoop_CurDyn_NonLin_est_v3'; ...
% File describing the model structure.
45

46 Order = [3 3 6]; % Model orders ...


[ny nu nx].
47

48 % Parameters True values


49 Ps = par.Ps; %source pressure
50 Pt = par.Pt; %return pressure
51

52 % scaling Be dividing by 1e7


53 par.Be = par.Be/1e7;
54 Be = par.Be; %bulk modulus
55 Vpl= par.Vpl; %volume in pipes
56 L_cyl= par.L_cyl; %cylinder length
147

57

58 Ap= par.Ap; %piston area;


59 alfa= par.alfa; %(piston area - rod area)/Ap
60 Wv= par.Wv; %valve bandwidth rad/s
61 Dv= par.Dv; %valve damping ratio
62

63 ML= par.ML; %total load mass kg


64 BL= par.BL; %load damping Ns/m
65 KL= par.KL; %load stiffness N/m
66

67 par.Kvc = par.Kvc*100000;
68 Kvc= par.Kvc; %valve orifice coefficient ...
m^3/(As)
69 par.Cli=0;
70 Cli= par.Cli; %leakage in the piston
71

72 %Parameters_True_values = ...
[Be,L_cyl,Ap,alfa,Vpl,Wv,Dv,Kvc,ML,BL,KL,Cli]
73

74 %Parameters estimate Be,Kvc,ML,BL,KL, all others are ...


fixed
75

76 Parameters = ...
[1e8/1e7;L_cyl;Ap;alfa;Vpl;Wv;Dv;0.1;3;1;589.927;Cli]; ...
% Initial parameters ...
[Be,L_cyl,Ap,alfa,Vpl,Wv,Dv,Kvc,ML,BL,KL]
77

78 Pa0=(Ps+Pt)/2;
79 Pb0=(Ps+Pt)/(1+alfa);
80 Pa0=alfa*Pb0;
81

82 InitialStates = ...
[PISTON_dsp_hst_pa(1);PISTON_dsp_hst_pb(1);...
83 ...PISTON_dsp_hst_xp(1);0;0;0]; % ...
Initial initial states.
84

85 Ts = 0; % Time-continuous system.
86

87 nlgr = idnlgrey(FileName, Order, Parameters, ...


InitialStates, Ts, ...
88 'Name', 'HydPiston');
89

90 set(nlgr, 'OutputName', ...


{'Pressure_a';'Pressure_b';'Load position'}, ...
148 Grey box identification for hydraulic piston

91 'OutputUnit', {'Pa';'Pa';'m'}, ...


...
92 'TimeUnit', 's');
93

94

95 setinit(nlgr, 'Name', {'Pressure_a' 'Pressure_b' ...


'Load position' 'Load velocity' 'current' 'state'});
96 setinit(nlgr, 'Unit', {'Pa' 'Pa' 'm' 'm/s' 'A' ' '});
97

98 %[Ps,Pt,Be,L_cyl,Ap,alfa,Vpl,Wv,Dv,Kvc,ML,BL,KL,Cli]
99 setpar(nlgr, 'Name', {'Be' 'L_cyl' 'Ap' 'alfa' 'Vpl' ...
'Wv' 'Dv' 'Kvc' 'ML' 'BL' 'KL' 'Cli'});
100 setpar(nlgr, 'Minimum', {eps(0) eps(0) eps(0) eps(0) ...
eps(0) eps(0) eps(0) eps(0) eps(0) eps(0) eps(0) ...
0}); % All parameters > 0.
101 %%%MB max Kvc parameter, and max Be after scaling GAMC
102 setpar(nlgr, 'Maximum', {2e10/1e7 0.2 1e-2 2.0 1e-4 ...
2*pi*500 1.0 2e-4*100000 10 1e3 1e9 10}); % All ...
parameters > 0.
103 setpar(nlgr, 'Minimum', {1e5/1e7 eps(0) eps(0) eps(0) ...
eps(0) eps(0) eps(0) eps(0) 0.01 .10 100.0 0}); ...
% All parameters > 0.
104

105 %Model computed with adaptive Runge-Kutta 23tb ODE ...


solver.
106 nlgrrk23tb = nlgr;
107 nlgrrk23tb.Algorithm.SimulationOptions.Solver = ...
'ode23tb'; % Runge-Kutta 23tb.
108 %nlgrrk23tb.Algorithm.SimulationOptions.FixedStep = ...
0.0001; % Runge-Kutta 23tb.
109 nlgrrk23tb.Algorithm.MaxIter=30; %change the max ...
number of iterations
110 %-------------------------------------------------
111 % Algorithm search methods
112 %
113 % 'Auto' Automatically chooses from the ...
following methods.
114 % 'gn' Gauss-Newton method.
115 % 'gna' Adaptive Gauss-Newton method.
116 % 'grad' A gradient method.
117 % 'lm' Levenberg-Marquardt method.
118 % 'lsqnonlin' Nonlinear least-squares method.
119 %
120 % nlgrrk23tb.Algorithm.SearchMethod='Auto';
149

121 % nlgrrk23tb.Algorithm.SearchMethod='lsqnonlin';
122 nlgrrk23tb.Algorithm.SearchMethod='lm';
123 % nlgrrk23tb.Algorithm.SearchMethod='gn';
124 %nlgrrk23tb.Algorithm.Criterion='Det'; % Cost ...
function can be 'Det' or Trace of E'*E where E is ...
prediction error.
125 %--------------------------------------------
126

127 %[Ps,Pt,Be,L_cyl,Ap,alfa,Vpl,Wv,Dv,Kvc,ML,BL,KL,Cli]
128 %ORIG
129 setpar(nlgrrk23tb, 'Fixed', {false true true true ...
true true true false false false false false}); ...
%estimate Be,Kvc,ML,BL,KL,Cli
130 %setpar(nlgrrk23tb, 'Fixed', {false true true true ...
true true true false true true true true}); ...
%estimate Be,Kvc
131 %setpar(nlgrrk23tb, 'Fixed', {false true true true ...
true false false false false false false false}); ...
%estimate Be,Kvc,ML,BL,KL,Cli,Dv,Wv
132

133 trk23tb = clock;


134 disp('Identification data characteristic:')
135 present(z)
136 nlgrrk23tb = pem(z, nlgrrk23tb, 'Trace', 'Full'); % ...
Perform parameter estimation.
137 %nlgrrk23tb = pem(z, nlgrrk23tb, 'Display', 'Full'); ...
% Perform parameter estimation for new version ...
of Matlab
138 present(nlgrrk23tb)
139

140 figure, pe(z,nlgrrk23tb);

where the input script, HydPiston-OpenLoop-CurDyn-NonLin-est-v3, con-


tains the actuator dynamics and is here described

1 function [dy ...


yout]=HydPiston_OpenLoop_CurDyn_NonLin_est(t,y,...
2 ...input,Be,L_cyl,Ap,alfa,Vpl,Wv,Dv,Kvc,ML,BL,KL,...
3 ...Cli,varargin)
4

5 %par=struct('Be',Be,'L_cyl',L_cyl,'Ap',Ap,...
6 ...'alfa',alfa,'Vpl',Vpl,'Wv',Wv,'Dv',Dv,'Kvc',Kvc,...
7 ...'ML',ML,'BL',BL,'KL',KL,Cli,'f0',f0,'k',k,...
150 Grey box identification for hydraulic piston

8 ...'ucurrent',ucurrent);
9

10 incurrent=input(1);
11 Ps=input(2);
12 Pt=input(3);
13 %
14 %y(1)=pressure chamber Pa
15 %y(2)=pressure chamber Pb
16 %y(3)=piston position
17 %y(4)=piston velocity
18 %y(5)=valve dynamics current
19 %y(6)=valve dynamics
20

21 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
22 % Hydraulic Parameters %
23 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
24

25 % %Pressures
26 % Ps = par.Ps; %source pressure
27 % Pt = par.Pt; %return pressure
28 %
29 % Be = par.Be; %bulk modulus
30 % Vpl= par.Vpl; %volume in pipes
31 % L_cyl= par.L_cyl; %cylinder length
32 %
33 % Ap= par.Ap; %piston area;
34 % alfa= par.alfa; %(piston area - rod area)/Ap
35 % Wv= par.Wv; %valve bandwidth rad/s
36 % Dv= par.Dv; %valve damping ratio
37 %
38 % ML= par.ML; %total load mass kg
39 % BL= par.BL; %load damping Ns/m
40 % KL= par.KL; %load stiffness N/m
41 %
42 % Kvc= par.Kvc; %valve oriffice ...
coefficient m^3/(As)
43

44 %Cylinder leakage
45 %Cli = 1.7*10^-13; %m3/(s.Pa)
46 %Cli = 0; %m3/(s.Pa)
47

48 % ucurrent= par.ucurrent; %valve current command A


49

50 %checking position limits in the cylinder


151

51 L_cyla=L_cyl/2+y(3);
52 L_cylb=L_cyl/2-y(3);
53

54 if (L_cyla>L_cyl)
55 y(3)=L_cyl/2;
56 y(4)=0;
57 L_cyla=L_cyl/2+y(3);
58 L_cylb=L_cyl/2-y(3);
59 end
60 if (L_cylb>L_cyl)
61 y(3)=-L_cyl/2;
62 y(4)=0;
63 L_cyla=L_cyl/2+y(3);
64 L_cylb=L_cyl/2-y(3);
65 end
66

67 if (L_cyla<0)
68 y(3)=-L_cyl/2;
69 y(4)=0;
70 L_cyla=L_cyl/2+y(3);
71 L_cylb=L_cyl/2-y(3);
72 end
73

74 if (L_cylb<0)
75 y(3)=L_cyl/2;
76 y(4)=0;
77 L_cyla=L_cyl/2+y(3);
78 L_cylb=L_cyl/2-y(3);
79 end
80

81 %Volume
82 Va = Ap*(L_cyla);
83 Vb = alfa*Ap*(L_cylb);
84 Va0 = Vpl + Va;
85 Vb0 = Vpl + Vb;
86

87 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
88 % Valve Dynamics %
89 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
90

91

92 % IxI = tf([1],[(1/Wv^2) (2*Dv/Wv) 1]);


93

94 %hydraulic open Loop


152 Grey box identification for hydraulic piston

95 %might need to cater for possibility of radicand ...


becoming negative
96 qaa=sqrt((Ps-Pt)/2+sign(y(5))*((Ps+Pt)/2-y(1))); ...
%flow chamber a
97 qbb=sqrt((Ps-Pt)/2+sign(y(5))*(y(2)-(Ps+Pt)/2)); ...
%flow chamber b
98

99 %%%MB divide Kvc by 100000, added scaling for Be ...


divided by 1e7 GAMC
100 dy(1,1)=Be*1e7/Va0*(-Ap*y(4)+(Kvc/100000)*qaa*y(5)-...
101 ...Cli/1e6*(y(1)-y(2))); %diff pressure ...
chamber a
102 dy(2,1)=Be*1e7/Vb0*(alfa*Ap*y(4)-(Kvc/100000)*qbb*y(5)+...
103 ...Cli/1e6*(y(1)-y(2))); %diff pressure chamber b
104

105 %mechanical part


106 Fdist=10*0;
107 dy(3,1)=y(4);
108 dy(4,1)=1/ML*(Ap*(y(1)-alfa*y(2))-BL*y(4)-KL*y(3)-Fdist);
109

110 %valve dynamics


111 dy(5,1)=y(6,1);
112 dy(6,1)=Wv^2*(-2*Dv/Wv*y(6)-y(5)+incurrent);
113

114 %Ouput equation: added scaling for output pressures ...


by dividing by 1e6
115 yout=[y(1)/1e6;y(2)/1e6;y(3)]; %Pressure a, ...
Pressure b, Load position
Appendix B

Virtual prototype models not in


robotics

This appendix presents three applications on the use of Finite Element


Analysis and Multi-Body methods in fields other than specifically robotics.
Those models are not integrated with control algorithms and, for these
reasons, they are treated separately from the thesis main core.

B.1 Finite Element Model of knee prosthesis


This work regards the design of a prosthesis destined to the people of Senegal
and to the victims of mines that have been spread throughout the countries
involved in war. The purpose of this study is to design a new, low-cost
prosthesis using the materials produced in Senegal: teak wood and iron (AISI
304). In order to optimize the design of the new prosthesis, a methodology
was developed to evaluate stress patterns for different configurations [16]. A
commercial CAD and ANSYS Workbench were used to define prosthesis
geometry and to perform Finite Element Analysis by developing a proper
virtual prototype model (VPM). Load and constraints were defined according
to Regulation ISO10328-2006, and stress distribution was estimated using
the VPM. The fatigue due to the cycling load was taken into account. The two
materials currently used in western countries, titanium and steel (AISI 1020),
were compared to the iron and teak in order to determine the prosthesis’
lifespan based on the differences in structural behaviours. An experimental,
non-contact measurement technique based on the thermoelastic principle is
154 Virtual prototype models not in robotics

a b c

Fig. B.1 a) Physical model, b) CAD model and c) VPM

proposed here to validate the VPM. This technique permits the evaluation
of superficial stress patterns on the prosthesis subjected to a cyclic load. A
loading rig was built to test the prosthesis and, the results coming from this
experimental test campaign were compared with the VPM ones.

B.1.1 Model description


A solid model was generated from the prosthesis’ design (Fig. B.1.a), using
a commercial CAD (Fig. B.1.b). The VPM model, conversely, was built
using ANSYS Workbench software (Fig. B.1.c), due to its ability to work
with highly complex geometries [88]. The VPM was meshed by a 3-D
element with 20 nodes, 3 DOFs each, able to model a quadratic displacement
behaviour. Moreover this element supports plasticity, large deflections, large
strain capabilities, plasticity and support the mixed formulation with contact
elements.
All the chosen materials (titanium, steel, iron and teak), were modelled as
linear elastic with the properties collected in Tab. B.1, because the analysis
is conducted in the elastic field; in particular, the teak model was considered
isotropic because the anisotropic characteristic are out of the scope of the
linear analysis.
B.1 Finite Element Model of knee prosthesis 155

Table B.1 Materials mechanical properties.

Material Young modulus [GPa] Yield stress [MPa]


AISI 304 1.92E2 2.70E2
AISI 1020 2.00E2 3.30E2
Teak 1.17E1 6.50E1
Titanium 9.60E2 9.630E1

The loads applied on the VPM aimed to simulate the static and dynamic
most severe conditions requested by the ISO 10328-2006 as shown in Fig.
B.2.
The virtual leg is externally fixed to the ground and remotely loaded follow-
ing the alignment requested from the rules. The internal constraints, instead,
are mainly revolute joints and fixed ones. Those aims to reproduce the
existence, in the real prototype, of submechanisms reciprocally connected
by hinges.
A linear static analysis was performed as the structure must be able to work
within linear elastic conditions; thus the stresses values generated by the
loads applied in different positions according to the standards, had to be
lower than the yield stress.

B.1.2 Experimental test

The experimental tests were carried out by using the Thermoelastic Stress
Analysis (TSA). It is a measurement technique based on the increment
of temperature of an object when it is stressed. More in detail, when a
mechanical component is cyclically loaded, the superficial distribution of
temperature measured by a thermal camera can be used to evaluate the
superficial stress field on the component. The load frequency is important
because the mechanical component being tested should be in an adiabatic
condition during the cyclical loading; in this condition, the fluctuations of
superficial temperature are mainly due to the thermoelastic effect caused by
the load, and the differential thermal superficial map is proportional to the
sum of the principal stress on the surface. The Thermoelastic system adopted
here in is a Delta Therm 1560 manufactured by Stress Photonics composed
of a CCD IR focal plane array thermal camera and a lock-in amplifier,
156 Virtual prototype models not in robotics

a b

Fig. B.2 a) Prostheses standard load line offset keys: 1 - top reference plane, T, 2 - knee
reference plane, K, 3 - plane at any height u ¼ ux, 4 - ankle reference plane, A, 5 - bottom
reference plane, B. (b) Prostheses VPM with Condition 1 loads applied.

that allows for synchronization of the thermal-graphic acquisition with the


external load. A PC was used for data acquisition and post-processing.
All experiments were done using an electromagnetic Shaker (LDS V 650),
to apply an axial cyclic load on the prosthesis. The prosthesis was rigidly
attached at one end to an external rigid structure and at the other end, was
connected through the pre-charged load cell to the Shaker so as to replicate
the same configuration as the VPM. A signal generator (Hm 8030–5), through
the amplifier, drove the shaker with the frequency and amplitude required.
The applied load could not be measured by the signal provided by the signal
generator, as this was different because of the shaker and its connection
to the structure; therefore, a force transducer was necessary to take the
measurements. A load cell (TCLA-kA Tension/Compression Universal),
was thus used for the measurement of force; the load cell was hermetically
locked and it had an element that was sensitive to the strain with a very
simple structure. A Spectrum Analyser (Ono Sokki), was used to measure the
signals provided by the transducers and to analyse (magnitude and phases),
the applied load signal. Essentially, a Spectrum Analyser converts analogue
B.1 Finite Element Model of knee prosthesis 157

a b

Fig. B.3 (a) TSA and (b) VPM contour results (Von Mises stresses [MPa]) with steel and
titanium. The solid yellow line indicates the cross section where the stress is measured.

time domain signals into digital frequency information that can be processed
by a PC.
A dynamic 10[Hz] bimodal wave axial load with 1250[N] amplitude was
applied to the prosthesis. TSA was only used here to validate the VPM: a
human walking gait was not simulated during the experiments, so the method
of measurement did not incorporate the ground reaction force measurement
nor the motion analysis to assess the performance of the prosthesis at a walk-
ing gait. This permitted us to avoid the loading of frequencies characteristic
of the gait which are too low to obtain the adiabatic conditions required
for the application of TSA. During compression of the prosthesis, a Stress
Photonics camera was able to record the temperature in dynamic images due
to the dynamic system of the instrument. Post-processing was performed to
detect most stressed areas and thus to validate the VPM. Once this validation
takes place, the VPM can be used to test several different materials as teak,
that cannot be easily tested experimentally.

B.1.3 Model validation


TSA stress measurements were compared VPM results, as shown in Fig. B.3
stressed zones predicted by numerical model are evidently identified with
TSA: particularly clear is the detection of critical zones located in proximity
to the knee–joint. Figure B.4 confirms the good quantitative agreement
between experimental and numerical results.
158 Virtual prototype models not in robotics

Fig. B.4 TSA and VPM section results (Von Mises stresses [MPa]) along the cross sections
yellow line in Fig. B.3.a and Fig. B.3.b.

B.1.4 Main achievements


In this work, the integrated approach between a VPM and a novel measure-
ment techniques has been described. The VPM permits to investigate the
prostheses design requirements but, as aforementioned several times in this
thesis, it requires a proper validation: the use of TSA permits to achieve
this result. Having a validated model, is then possible to evaluate different
designs requirements as for example the use of an anisotropic material like
teak.

B.2 Finite Element Model of human finger


The model presented in this example was built with the aim of deeply in-
vestigate the mechanisms of human sensing, since the tactual perception
represents a challenging task in haptics and humanoid robotics. The work
here described regards a novel integrated measurement technique and experi-
mental set up for "in vivo" characterization of the mechanical properties of
human fingertip, in terms of contact area, deformation and pressure distribu-
tion. The here presented device compresses the participant fingertip against
a flat surface, while the aforementioned measurements are provided and ex-
perimental parameters such as velocity, finger orientation and displacement
(indentation) are controlled. Experimental outcomes are then compared and
integrated with the output of a 3D VPM of human fingertip, showing the
effectiveness of the here proposed approach [25, 6].
B.2 Finite Element Model of human finger 159

Fig. B.5 3D CAD Model of the right distal phalanx: (a) cross and longitudinal sections of the
distal phalanx with four layers of microstructures: epidermis, dermis, bone and subcutaneous
tissue, (b) mesh with glass plate (longitudinal view), (c) mesh with glass plate (cross section
view).

B.2.1 Model description


The VPM representing a human fingertip is built upon a 3D solid model
of a human distal phalanx already validated in literature [48] and, by using
the proportion rules, the thickness of the internal layers is estimated. For
what concerns the external dimensions, instead, those are aligned to the
measurement taken on the right-handed female participant who carried out
the experimental tests. The fingertip is assumed to be composed of two skin
layers (epidermis and dermis), subcutaneous tissue, bone and nail as shown
in Fig. B.5. According to the previous proportion rules, the thickness of the
epidermis and dermis is of 0.41[mm] and 0.93[mm] respectively, while the
thickness of the bone is 6.35[mm] as shown in Fig. B.5. All the layers, except
the subcutaneous tissue and dermis have been modelled as linear-elastic
material, while the remaining two have been modelled as a Mooney-Rivlin
one. The mechanical properties of these materials and the visco-elastic
formulation of the subcutaneous tissue are described in Tab. B.2 and in Eq.
(B.1) [48, 139].

W = ∑ ∑ Ci j (I1 − 3)3 (I2 − 3) j + D(J − 1)2 (B.1)


i j
160 Virtual prototype models not in robotics

Table B.2 Mechanical properties of the linear elastic materials.

Material Young modulus [MPa] Poisson ratio


epidermis 2.00 0.30
bone 17.00 0.30
nail 170 0.30

where W represents the mechanical strain energy, Ci j are invariant related


to the distortional response while D is a constant linked to the volumetric
response, I1 and I2 respectively are the first two deformation invariant.
The solid was meshed by using a 3D tetrahedral element that exhibits
quadratic displacement behavior, plasticity, large deflection and large strain
capabilities, see Figure 5. The mesh operation results in 31672 elements and
77829 DOF. The fingertip was modeled in contact with the rigid plate (Young
Modulus of 71.3 GPa and Poisson Ratio of 0.17), in order to reproduce the
experimental tests. All parts of the model were modeled as bonded contacts,
except for the contact between the finger and the plate which was simulated
as frictionless contact due to the nature of the real contact between the fin-
ger and the rigid plate. A Transient Structural simulation was performed
assuming the finger moving toward the plate fixed to the ground.

B.2.2 Experimental test


The experimental test are carried out by using an innovative and non-invasive
measurement test rig, conceived in this study and shown in Fig. B.6). The
participant finger nail is glued on a finger-holder and it was located in such
a way to have a fingerprint of 0.5[mm2 ] contact position: this means that a
small part of skin is in touch with the glass (zero position) and it is measured
by camera. Moreover, the “zero” initial force condition was set up at 0.02[N].
In other words, in order to repeat the same initial conditions, which we
heuristically chose as the incipient phase of the contact, at the beginning
of each experimental test we position the subject finger into the finger-
holder and matched the contact zero position and force values. A series of
experimental tests with one single level of displacement and velocity 1[ mm s ]
are carried out: the subject’s fingertip is indented against the flat surface from
0[mm] to 3[mm] and back to the initial position (zero position) and repeated it
for five trials, within the same experimental test. The test rig is instrumented
B.2 Finite Element Model of human finger 161

Fig. B.6 Test Rig with its main parts: (1) stepper linear actuator, (2) laser, (3) fingerholder
and rigid flat surface, (4) force sensor, (5) camera and lens.

with a stepper linear actuator that that drives the human fingertip against the
flat rigid surface, three load cells able to measure the contact force and an
high resolution camera that registers the images of fingertip contact area.

B.2.3 Model validation


The model validation process is conducted by comparing the results coming
from both the numerical and the experimental results. In Tab B.3 there are
the results in terms of force acquired during the experimental test. As it is
possible to notice there is a good repeatability between the five trials, at the
same value of indentation 1, 2 and 3[mm] and velocity 1[mm/s] while in Tab.
B.4 there is the comparison among the numerical and experimental contact
areas registered at 3[mm] of indentation. As is it possible to notice, there is a
good agreement between numerical and experimental results.

B.2.4 Main achievements


Thanks to the aforementioned agreement, it is possible to claim that the
VPM is able to represent the human finger behaviour. That allows to use the
162 Virtual prototype models not in robotics

Table B.3 Force Values at 1 mm, 2 mm and 3 mm of indentation and 1 mm/s of velocity:
average and standard deviation.

Force [N]
1 mm 2 mm 3 mm
Trial 1 0.129 0.825 4.761
Trial 2 0.111 0.811 4.759
Trial 3 0.118 0.867 4.669
Trial 4 0.114 0.874 4.672
Trial 5 0.103 0.829 4.761
Average±STD 0.115±0.01 0.841±0.03 4.724±0.04
Numerical 0.132 0.646 3.510
RMSE[%] 12.8 (-)23.1 (-)25.6

Table B.4 Experimental and Numerical Area Values [mm2 ] comparison for different level of
pressure distribution.

3 mm
Experimental Numerical RMSE[%]
5-10 [kPa] 10.2±0.80 7.75 (-)24.0
10-15[kPa] 9.32±2.41 7.55 (-)19.0
15-20[kPa] 8.02±3.10 10.5 23.6
20-25[kPa] 9.50±2.16 12.5 24.9
25-30[kPa] 11.5±1.42 13.5 14.8
30-35[kPa] 12.4±2.56 14.6 15.0
35-40[kPa] 15.2±3.56 17.5 13.4
40-45[kPa] 28.1±4.12 21.0 (-)25.0
B.3 Multi-body model of a reconfigurable origami carton with flexible panels 163

VPM for further investigations regarding the tactile flow, especially the ones
that cannot be detected with in vivo results.

B.3 Multi-body model of a reconfigurable origami


carton with flexible panels
This work aims to develop a VPM of an origami carton folding process
using flexible panels, conversely it frequently happens in the majority of the
studies regarding this argument where those panels are treated as rigid. More
in detail the study is focused on the analysis of the contact forces between
flexible panels and fingers and further also to explore different non-rigid
materials to be considered as a panel-body in future for different synchronous
carton folding applications. The physical mechanism on which the VPM is
based on is the Dexterous Reconfigurable Assembly and Packaging Systems
(D-RAPS) built with the purpose of reducing the operational time of a carton
folding process [79, 15].

B.3.1 Model description


Two different Multi Body Models (MBM) have been built, using MSC
ADAMS software and a a native geometry developed in an external CAD
environment, with the aim of investigating the influence of the panel flexi-
bility on the system behaviour. In the first one the carton panels are treated
as rigid bodies and it will be designated as rMBM, while in the second one
the carton panels are modelled with their proper flexibility and it is called
fMBM. The D-RAPS fingers are externally fixed while the internal connec-
tions are represented by revolute joints for the fingers and translational joints
for the horizontal actuators (see Q1 and Q2 in Fig. B.7). Every one of the
aforementioned connections is actuated by a motion law that reproduces the
movement of the real mechanism.
The carton boards are modelled as rigid and flexible depending on the
simulation. Then the material were different in order to investigate the
influence of the mechanical properties. In the rMBM (Fig. B.8.a) the carton
panels were modelled as rigid bodies. Their main properties were the masses
and the inertia. In the fMBM (Fig. B.8.b) two panels are modelled as
flexible bodies while the others remain rigid. In both of these models all
164 Virtual prototype models not in robotics

a b

Fig. B.7 Origami Mechanism: a) 2DOF finger; b) 3DOF finger

the masses and inertia properties are calculated considering that the carton
panels are made in paper while the actuators are made in steel (Tab. B.5).
The aforementioned flexible panels are meshed by using tetrahedral elements
having quadratic behaviour. The mesh results were 125 elements for each
panels. The carton constraints is named crease and it is represented by
torsional flexible connections which have a finite stiffness

Kc = 0.009375 ∗ cl (B.2)

where Kc [Nmm−1 ] is the stiffness crease while cl [mm] represents the crease
length, around the revolution axis and infinite stiffness around the other two.
This valued come from the experimental tests carried out on the cartonboard
and crease [95]. The choice of having flexible connection instead of rigid
one is necessary in order to overpass mechanisms singularities. The closing
operation is ensured thanks to the contact laws established between actuators
and panels. It is based on Hertzian Law

0 i f x > xl
F= (B.3)
k(x1 − x) − cẋ i f x ≤ x1
e

where x is the actual distance between the two objects (defined with a
displacement function), ẋ is the time rate of change of the variable x, x1
B.3 Multi-body model of a reconfigurable origami carton with flexible panels 165

Table B.5 Materials mechanical properties.

Material Young modulus [MPa] Poisson ratio density [kgm−3 ]


steel 2.00E11 0.49 7800
paper 0.10 0.49 9.70e-7

a b

Fig. B.8 a) Origami carton with rigid bodies (rMBM), b) Origami carton with flexible rigid
bodies (fMBM)

is the trigger distance used to determine when the contact force turns on
and off, k is the stiffness coefficient, e is the stiffness force exponent and
c is the damping coefficient. In this work we have used x1 = 0.1[mm], k =
1150[Nmm−1 ], e = 2, c = 0.680[Nsmm−1 ].

B.3.2 Experimental test and Model validation


The carton is folded up to 90deg and the computation and simulation outputs
are the contact forces (Fig. B.10) and the panels deformation (Fig. B.9).
These values have been computed via analytical and numerical approach.
Two comparisons are then carried out: between analytical and numerical
solution and between rigid and flexible bodies, as shown in Fig. B.10.
Analytical and numerical solution: the agreement between the two results
are good, because both the method got the behaviour of the carton. However
the numerical contact forces look jittery, because the iterations, but the trends
are clear. Moreover the analytical model is higher than the numerical one
as usual because it is built with lower degree of freedom. Rigid and flexible
bodies: is evident the difference between two models. The flexible bodies
show a lower values of the contact forces; that means that the compliance
166 Virtual prototype models not in robotics

Fig. B.9 Flexible Origami Carton Deformations

permits to the panels to adapt to the external forces, as shown in Fig. B.9.
Moreover the contact generates the oscillations; the flexible model shows
higher amplitude and lower frequencies, as expected for bodies with lower
stiffness.

B.3.3 Main achievements


This work studied the contribution of the flexible multibody dynamic model
to the investigation of the origami carton folding. A physical origami carton

Rear Panel
1,80
RIGID PANEL
1,60 FLEXIBLE PANEL
1,40
1,20
Contact Force [N]

1,00
0,80
0,60
0,40
0,20
0,00
0 10 20 30 40 50 60 70 80 90
Degree [°]

Fig. B.10 Comparison results among flexible, rigid panels and analytical solution.
B.3 Multi-body model of a reconfigurable origami carton with flexible panels 167

is modeled via analytical and numerical approach. Then the flexibility was
added to this model. At the end the comparison between the two model was
carried out. This results showed that the flexibility permits to have lower
forces, but higher amplitude during the oscillation due to the contact forces.

You might also like