UNIVERSIT ` A DEGLI STUDI DI BOLOGNA FACOLT ` A DI INGEGNERIA

UNIVERSIT ` A DEGLI STUDI DI BOLOGNA FACOLT ` A DI INGEGNERIA
UNIVERSITÀ DEGLI STUDI DI BOLOGNA
FACOLTÀ DI INGEGNERIA
Dottorato di Ricerca in Ingegneria dei Sistemi
XIV Ciclo
Sede Amministrativa: Università di Bologna
Sedi Consorziate: Università di Firenze, Padova e Siena
CONTROL OF HAPTIC AND
ROBOTIC TELEMANIPULATION
SYSTEMS
Ph.D. Thesis
Paolo Arcara
Coordinatore
Prof. Giovanni Marro
Tutore
Prof. Claudio Melchiorri
Anni Accademici 1998–2001
i
Acknowledgements
The author thanks the Department of Electronics, Computer Science and Systems (DEIS) of the Faculty
of Engineer of the University of Bologna for the received support and the staff of the Laboratory of
Automation and Robotics (LAR) for the help in the experimental part of the thesis.
A special thank to professor Claudio Melchiorri, the author is grateful to him for the patience and
the encouragement shown during these years.
ii
Contents
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
i
List of Figures
ix
List of Tables
xi
1 Introduction
1.1 Presentation of the Work
1.2 Definitions . . . . . . . . .
1.3 Control Problems . . . . .
1.4 Contents of the Thesis . .
1.5 Original Contributions . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 Control of Haptic Devices
2.1 Haptic Systems . . . . . . . . . .
2.2 Wire Haptic Devices in Brief . .
2.3 Control of a Wire Haptic System
2.4 Force Projection . . . . . . . . .
2.5 Further Considerations . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 Telemanipulation Systems
3.1 Presentation . . . . . . . . . . . . . . . . . . . . .
3.2 Definitions . . . . . . . . . . . . . . . . . . . . . .
3.3 Goals . . . . . . . . . . . . . . . . . . . . . . . .
3.4 Control Schemes . . . . . . . . . . . . . . . . . .
3.4.1 Force Reflection (FR) . . . . . . . . . . .
3.4.2 Position Error (PE) . . . . . . . . . . . .
3.4.3 Shared Compliance Control (SCC) . . . .
3.4.4 Force Reflection with Passivity (FRP) . .
3.4.5 Intrinsically Passive Controller (IPC) . . .
3.4.6 Four Channels (4C) . . . . . . . . . . . .
3.4.7 Adaptive Motion/Force Control (AMFC)
3.4.8 Sliding-Mode Controller (SMC) . . . . . .
3.4.9 Predictive Control (PC) . . . . . . . . . .
3.4.10 Predictive Control with Passivity (PCP) .
iii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
1
2
2
3
.
.
.
.
.
5
5
7
7
9
10
.
.
.
.
.
.
.
.
.
.
.
.
.
.
11
11
12
13
14
15
16
16
17
18
19
20
20
20
21
iv
CONTENTS
4 Stability and Performances
4.1 Introduction . . . . . . . . . . . . . . . .
4.2 Case Study . . . . . . . . . . . . . . . .
4.3 Stability . . . . . . . . . . . . . . . . . .
4.4 Performances . . . . . . . . . . . . . . .
4.4.1 Inertia and Damping . . . . . . .
4.4.2 Tracking . . . . . . . . . . . . . .
4.4.3 Stiffness . . . . . . . . . . . . . .
4.4.4 Drift . . . . . . . . . . . . . . . .
4.5 Results . . . . . . . . . . . . . . . . . . .
4.6 Parameters Tuning . . . . . . . . . . . .
4.6.1 Force Reflection . . . . . . . . .
4.6.2 Position Error . . . . . . . . . .
4.6.3 Shared Compliance Control . . .
4.6.4 Force Reflection with Passivity .
4.6.5 Intrinsically Passive Controller .
4.6.6 Four Channels . . . . . . . . . .
4.6.7 Adaptive Motion/Force Control .
4.6.8 Sliding-Mode Controller . . . . .
4.6.9 Predictive Control . . . . . . . .
4.6.10 Predictive Control with Passivity
4.7 Comparison and Comments . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
23
23
24
25
26
26
26
27
27
27
29
29
32
33
35
35
35
35
35
36
38
38
5 Intrinsically Passive Controller
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . .
5.2 Definitions . . . . . . . . . . . . . . . . . . . . . . .
5.2.1 Passivity . . . . . . . . . . . . . . . . . . .
5.2.2 Scattering Variables . . . . . . . . . . . . .
5.2.3 Spatial Compliance and Damping Families
5.3 The IPC Telemanipulation Scheme . . . . . . . . .
5.3.1 The IPC Definition . . . . . . . . . . . . . .
5.4 Case Study . . . . . . . . . . . . . . . . . . . . . .
5.4.1 Master and Slave Manipulators . . . . . . .
5.4.2 Master and Slave IPC . . . . . . . . . . . .
5.4.3 Scattering Variables . . . . . . . . . . . . .
5.5 Simulations and Results . . . . . . . . . . . . . . .
5.6 Position Drift in a Passivity Based Approach . . .
5.6.1 IPC Telemanipulation Scheme . . . . . . .
5.6.2 Problem Statement . . . . . . . . . . . . . .
5.6.3 Variable Rest Length Springs . . . . . . . .
5.6.4 Proposed Solution . . . . . . . . . . . . . .
5.6.5 Passivity Considerations . . . . . . . . . . .
5.6.6 Obtained Results . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
41
41
41
42
42
43
43
44
45
46
47
47
48
49
52
52
55
56
59
60
6 Experiments
6.1 Introduction . . . . . . . . . . . . .
6.2 The ViDeT Device . . . . . . . . .
6.2.1 The Three-Wires Prototype
6.2.2 Real-Time Data Exchange .
6.2.3 The Three-Wires Results .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
65
65
65
67
69
70
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
CONTENTS
v
.
.
.
.
.
.
.
.
71
76
79
81
83
83
83
85
7 Conclusions
7.1 Final Observations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
89
90
6.3
6.2.4 The One-Wire Prototype . . . .
6.2.5 Sensors and Signal Conditioning
6.2.6 The One-Wire Results . . . . . .
6.2.7 Conclusions . . . . . . . . . . . .
The Telemanipulation Device . . . . . .
6.3.1 Hardware Setup . . . . . . . . .
6.3.2 Control Algorithms . . . . . . . .
6.3.3 Experimental Results . . . . . .
A Nomenclature
A.1 General Nomenclature . . . . .
A.2 Control of Haptic Devices . . .
A.3 Telemanipulation Systems . . .
A.4 Stability and Performances . .
A.5 Intrinsically Passive Controller
A.6 Experiments . . . . . . . . . . .
Bibliography
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
93
. 93
. 93
. 94
. 97
. 98
. 103
107
vi
CONTENTS
List of Figures
2.1
2.2
2.3
2.4
Scheme of a haptic system. . . . . . . . . . . . . .
Range of possible forces with three tendons/wires.
Geometric considerations on a wire haptic device. .
Different examples of force projection. . . . . . . .
.
.
.
.
6
7
9
10
3.1
3.2
3.3
3.4
3.5
3.6
The telemanipulation control scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Force Reflection scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Position Error scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Shared Compliance Control scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Force Reflection with Passivity scheme. . . . . . . . . . . . . . . . . . . . . . . . . . .
Conceptual scheme of the master IPC: energy is exchanged through port 1 and port 2 with
the robot (left) and the transmission channel (right). . . . . . . . . . . . . . . . . . . . . .
Scattering transformation at the master and slave side. . . . . . . . . . . . . . . . . . . . .
12
16
16
17
18
3.7
4.1
4.2
4.3
4.4
4.5
4.6
4.7
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Schematic representation of the primary master side of the telemanipulation scheme. . . .
Schematic representation of the remote slave side of the telemanipulation scheme. . . . . .
Maximum time delay allowed for the FR scheme as a function of the parameter kc [logarithmic scale]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stability (left) and position drift (right) properties of the PE scheme on varying of parameter kc [logarithmic scale]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stiffness perception keq on varying of the environment stiffness ke for two values of parameter: kc = 5 (left), kc = 100 (right). The ideal stiffness (keq = ke ) is shown with dashed
lines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stability properties of the SMC scheme as a function of parameters ke and be . . . . . . . .
Stability properties of the PC scheme as a function of parameters ke and be . . . . . . . . .
IPC telemanipulation scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Physical interpretation of an intrinsically passive controller (master and slave IPC). . . .
The planar three-dof manipulator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Scattering transformation at the master side. . . . . . . . . . . . . . . . . . . . . . . . . .
Free space: master (solid) and slave (dashed) displacements along x-direction. . . . . . . .
Interaction with an obstacle (Px = 1.3): master (solid) and slave (dashed) displacements
along x-direction and force applied to the environment at the slave side. . . . . . . . . . .
[Task 1] Screwing a bolt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
[Task 2] Turning a grip handle along a circular path (with the last link of the manipulator
perpendicular to the trajectory). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Screwing a bolt (Px = 1, Py = 0): master (solid) and slave (dashed) motion and endeffector orientation Pθ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii
18
19
25
25
33
34
34
37
37
44
45
46
48
49
49
50
50
51
viii
LIST OF FIGURES
5.10 Turning a grip handle ((x − 1)2 + y 2 = 0.32 , with the last link perpendicular to the
trajectory): master and slave motion and orientation. . . . . . . . . . . . . . . . . . . . .
5.11 Master (solid) and Slave (dashed) displacements in the case of no environment interaction.
5.12 Master (solid) and Slave (dashed) displacements in the case of stiff environment interaction.
5.13 Master (solid) and Slave (dashed) displacements in the case of viscous environment interaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.14 Springs with variable rest length: case xl > 0 (upper part) and case xl < 0 (lower part). .
5.15 Bond graph model of a spring with variable rest length. . . . . . . . . . . . . . . . . . . .
5.16 One side of the telemanipulation scheme with supervisor control inserted. . . . . . . . . .
5.17 Telemanipulation scheme with passive supervisor control inserted (bond graph representation). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.18 Master (solid) and Slave (dashed) displacements in the case of no environment interaction.
5.19 Master (solid) and Slave (dashed) displacements in the case of stiff environment interaction.
5.20 Master (solid) and Slave (dashed) displacements in the case of viscous environment interaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.21 Master (solid) and Slave (dashed) displacements in the case of no environment interaction
[passive approach]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.22 Master (solid) and Slave (dashed) displacements in the case of stiff environment interaction
[passive approach]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.23 Master (solid) and Slave (dashed) displacements in the case of viscous environment interaction [passive approach]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
6.11
6.12
6.13
6.14
6.15
6.16
6.17
6.18
6.19
6.20
The ViDeT wire haptic device. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The three-wires prototype. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Details of one motor, of his pulleys and of the beam supporting the wire. . . . . . . . . .
Tasks organization of the control system. . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Videt Stereo Algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Example of an image taken from the stereo cameras. . . . . . . . . . . . . . . . . . . . . .
Example of a disparity/depth map and the corresponding 3D rotated view with a VRML
model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exploration of a reconstructed virtual surface. . . . . . . . . . . . . . . . . . . . . . . . . .
The one-wire prototype. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Details of the force sensors applied to the beam. . . . . . . . . . . . . . . . . . . . . . . .
Variables for the one-wire device. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(a) One wire interacting with a virtual surface; (b) Different values for the actuated force
F [1 - Orthogonal projection (I1 ); 2 - Constant stiffness (I2 ); 3 - Constant module (I3 )]. .
Module of the actuated forces F as a function of the angle α (|Fe (t)| = 1). . . . . . . . . .
Kinematic configuration of the one-wire device. . . . . . . . . . . . . . . . . . . . . . . . .
Measured tensions as function of angle β (tr = 1.3, 2.3, 3.3 N ) and interpolation with
straight lines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Measured angle βm (dotted lines) as function of the real angle βr and interpolation with
two straight lines (solid line). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Results of compensation of measured tension tm (tr = 1.3, 2.3, 3.3 N ) dashed = measured,
solid = compensated results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Motion with increasing and decreasing βr with range [0o , 45o ]. . . . . . . . . . . . . . . . .
Motion with increasing length of the wire (βr = 45o ), straight line represents the ideal
trajectory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reconstruction of a 3D motion along a cross trajectory with a fixed distance from the origin.
51
54
54
55
56
57
59
60
61
61
62
63
63
64
66
68
68
70
70
71
72
72
73
74
74
75
76
77
78
78
79
80
80
81
LIST OF FIGURES
6.21 Results obtained with the three projection methods and a surface with a steep slope (in
the left figures the thimble moves from left to right, in the right figures it moves from right
to left). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.22 Results obtained with the three projection methods and a surface with a lower slope (in
the left figures the thimble moves from left to right, in the right figures it moves from right
to left). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.23 The telemanipulation device. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.24 Control law for the motor input torque. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.25 Structure of the encoder measurements filter. . . . . . . . . . . . . . . . . . . . . . . . . .
6.26 Speed and position estimations obtained from the encoder measurements. . . . . . . . . .
6.27 Master and slave angular positions with master constant speed 0.2rad/sec and dead-zone
τmin1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.28 Master and slave angular positions with master constant speed 0.2rad/sec and dead-zone
τmin2 = 5τmin1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.29 Master and slave angular positions with master constant speed 0.2rad/sec and dead-zone
τmin3 = 8τmin1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.30 Master and slave angular positions as a result of changes in the master position reference
(dynamic associated to proportional controllers). . . . . . . . . . . . . . . . . . . . . . . .
6.31 Master and slave angular positions as a result of changes in the master speed reference
(dynamic associated to proportional controllers). . . . . . . . . . . . . . . . . . . . . . . .
ix
82
82
83
84
84
85
86
86
87
88
88
x
LIST OF FIGURES
List of Tables
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
Stability analysis. . .
Inertia analysis. . . .
Damping analysis. .
Tracking analysis. . .
Stiffness analysis. . .
Drift analysis. . . . .
Maximum admissible
Maximum admissible
Maximum admissible
Maximum admissible
Maximum admissible
Maximum admissible
.
.
.
.
.
.
.
.
.
.
.
.
28
28
29
30
31
32
32
33
36
36
38
38
5.1
Denavit-Hartemberg and dynamic parameters of the master and slave three-dof planar
manipulators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IPC parameters for both the master and slave controllers. . . . . . . . . . . . . . . . . . .
46
47
5.2
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
communication
communication
communication
communication
communication
communication
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
delay in the
delay in the
delay in the
delay in the
delay in the
delay in the
xi
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
FR scheme . . . . . . .
PE scheme . . . . . . .
SMC scheme (be = 0.5)
SMC scheme (ke = 1) .
PC scheme (be = 0.5) .
PC scheme (ke = 1) . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Chapter 1
Introduction
1.1
Presentation of the Work
Haptic systems and robotic telemanipulators have been spreading out during the last years and many
applications have been developed all over the world with the aid of telerobotics.
This thesis is inserted in this telerobotic field presenting both a theoretical part and a practical
experimental part. Haptic and telemanipulation systems have been presented and detailed focusing in
particular on their control algorithms; different control methods taken from the already existing literature
have been presented and, after the definition of a set of indexes related to stability and performances, a
comparison has been carried out leading to the underlining of the pros and cons of each presented scheme.
The experimental part is also presented for the validation of the theoretical results and it has been
carried out in the Laboratory of Automation and Robotics of the University of Bologna.
1.2
Definitions
The word “haptic” does not have a rigorous definition and it means something related with the kinestetic
and tactile human perception with the use of the hand. Haptic devices have to be in contact with
the human operator giving him sensations as similar as possible to those he could perceive from the
interaction, due to handling or grasping, with an object. Sometime, a visual or acoustic feedback,
through appropriate displays, is added to the device to give a more complete and detailed perception to
the user.
The good rendering that a person can perceive from a haptic system are mainly due to three concomitant factors: the simulator of the virtual reality, the control of the haptic device and the hardware interface
of the same device. These factors contribute in an equal and important way to the good rendering of the
task being simulated.
Telemanipulation schemes are bilateral systems which include both a local primarily side, or master,
and a remote one said slave. The human operator interacts with the master manipulator with a double
possibility, first to drive the remote side in the completing of the task and second to receive from the
slave the correct force feedback of what exactly happening. Master and slave manipulators are governed
by two local controllers and exchange their respective information with the opposite side through the
communication channel. The communication channel has its proper bandwidth and delay, depending on
the kind of transmission implemented.
From the above descriptions, one can easily comprehend that the only difference between haptic and
telerobotics systems is just due to the remote side to be rendered to the user; in the first case, the
haptic case, the remote side is not physically existing but it is simulated via software; in the second case,
1
2
CHAPTER 1. INTRODUCTION
the telemanipulation one, the remote side is composed by a manipulator with its controller and by the
environment with which it is interacting. So the delays in the two systems are of different nature: they
are due to the simulation computation time in the haptic case and to the transmission channel between
local and remote side in the telemanipulation case.
Haptic systems have been mainly developed to give to the user a certain kind of perception, as realistic
as possible, of what is going on in a simulated virtual scene. These kind of systems are mainly used for the
training in the carrying out of specific complex tasks, for which it is too difficult or too expensive a direct
training in the real operation; fields of application are for example virtual surgery, medical rehabilitation,
flight simulators and so on; haptic devices are also used in the military and in the entertainment business
to give to the persons a partial, or total, “immersion” in a virtual world being created artificially. Finally,
haptic devices, once that they are built and tested, can be used, with great success, as principal or master
manipulators in a telemanipulation scheme, giving to the user a good control and feedback on the remote
task being carried out.
As far as telerobotics is involved, possible telemanipulation systems include the following applications:
dangerous environments for the human being, such as nuclear plants, underwater tasks, space operations
and so on, in which it is not safe to operate directly for a person; differently scaled tasks, such as microsurgery, high dimension or high load tasks, in which the user feels great difficulty due to the very different
scale of the environment with respect to him; and finally, the “simple” possibility to operate remotely
without being physically present in the real scene.
1.3
Control Problems
Main aim of this section is to briefly describe the problems related to the topics of the present work. Such
problems, here just introduced, are successively exploited and possible solutions to them are presented
within this thesis.
Haptic systems have their crucial points in:
• the hardware building of the device, which has to contain a good interface for the human operator
carrying out the virtual task and has to give him a sense of virtual presence as real as possible;
• the control of the device, which is in charge, together with the here mentioned hardware setup, for
the good rendering to the operator of the virtual scene; in fact, due to the particular chosen set
of haptic devices, i.e. the ones with wires or tendons, further problems arise in the control and
application of the correct force feedback to perceived from the user;
• the software simulator, which has to describe with high fidelity the complex reality being simulated,
without heavily overload the whole system with high computation times, i.e. high delays.
Telemanipulation systems add to the previous hardware and control problems in the manipulators,
at both primary and remote sides, the delays in the communication channel, both from master to slave
and viceversa. In fact, these delays play a decisive role in the stability and in the performances of the
whole telemanipulation system.
The telemanipulation control systems are taken from the literature and they are here recalled and put
into comparison. Main aspects have been the definitions of some valid criteria for the comparison and of
a common simple benchmark example useful for every kind of proposed scheme.
1.4
Contents of the Thesis
A brief description of the chapters of this thesis is now presented, the work have been structured in the
following way:
1.5. ORIGINAL CONTRIBUTIONS
3
• Chapter 2 contains the basic definitions for haptic systems with special focus on their control
aspects, in particular this chapter deals with tendons/wires actuated devices and the aspects strictly
connected to their peculiar structure.
• Chapter 3 presents the definition of the elements of a complete telemanipulation scheme, the main
properties and the ideal transparency aim and, finally, a detailed and organic presentation of all
the principal control algorithms presented in the literature on this topic.
• Chapter 4 defines stability and performances properties for a telemanipulation scheme and it proposes four different performance indexes in order to compare the algorithms previously presented
in the benchmark example of two simple one degree-of-freedom (dof) linear manipulators.
• Chapter 5 contains simulations and studies of a specific telemanipulation scheme, i.e. the intrinsically passive one; it holds with three dof manipulators, multiple input multiple output case, and
enhances their performances using passivity definitions and concepts; this chapter contains also a
passive approach for further performance enhancements in terms of position drift between manipulators.
• Chapter 6 deals with two experiments carried out during the Ph.D. studies: the ViDet device, a
particular haptic device actuated by tendons presented with its two different prototypes, and the
telemanipulation device, built in order to test what above shortly described.
• Chapter 7 contains some conclusions related to this work and it presents possible future work to be
done.
• Appendix A, finally, resumes the nomenclature of all the variables used in the mentioned chapters
of this thesis.
1.5
Original Contributions
This work contains some original contributions that can be so presented, in order of appearance in the
text:
• synthesis and uniform theoretic presentation of the principal telemanipulation schemes proposed in
the literature (Section 3.4);
• definition of four indexes of performances, to be added to the stability property, for a quantitative
measure of the transparency of a telemanipulation scheme (Section 4.4);
• detailed comparison of the proposed schemes with the aid of the proposed criteria through the
tuning of the parameters of each of the scheme (Section 4.6);
• definition and validation, through different simulated tasks, of an IPC controller in a multiple input
multiple output (MIMO) case (Section 5.4);
• presentation of a passivity based approach for the reduction of the position drift between manipulators in an IPC telemanipulation scheme (Section 5.6);
• hardware and software realization of the devices for the experimental part, with particular focus on
the control algorithms (Chapter 6).
4
CHAPTER 1. INTRODUCTION
Chapter 2
Control of Haptic Devices
2.1
Haptic Systems
A haptic device is a particular system able to let the human operator to interact with a virtual reality;
the controller, which gives commands to the haptic device, is in charge of the rendering of such a reality
to the user who is wearing the device. For details on haptic systems see the Haptics community web
page [171] and the Haptic-e [172], the first haptic electronic journal; a valid survey on the field of virtual
reality is contained [30].
Position/velocity and force information are exchanged between the user and the device as in the real
operation that one is trying to simulate.
A haptic system is mainly composed by four different elements: the human operator, the haptic device,
the controller of the device and the simulation software of the virtual reality to be realized. Figure 2.1
shows the components of a haptic system and the information exchanged among these elements.
• The human operator interacts with the simulated virtual reality handling the haptic device and
receiving force feedback and, eventually, visual feedback from it; he is the final user of the whole
system and everything is built in strictly accordance to the tasks he has to carry out.
• The haptic device implement for the user the virtual (software) model of the reality; main property
of the haptic device is his transparency, that is his capability of good rendering of the reality being
reproduced.
• The controller is in charge of linking, in some way, the haptic device and the simulator since it
applies forces or torques computed via simulation to the device, it sends the exchanged interaction
with the user to the simulator and, basically, it is responsible of the correct perception of the user.
The control of the forces applied to the device is a crucial part of the scheme, since it has to let
such a device follow the software simulation of the virtual reality to be implemented and so let the
user perceive correctly the virtual environment.
• The simulator receives data of the user interaction with the virtual model and it updates the internal
model of the virtual reality giving to the controller new commands for governing the haptic device.
Each component of the global scheme proposed in Figure 2.1 can be analyzed from different points of
view and here below some specifications for each part are briefly presented.
As far as the human operator is concerned one can study his intrinsic behaviour from a physiological
point of view in order to let him have the right perception of the virtual reality to be rendered; many
works have been presented in the literature on related topics, in order to model human physical skills,
see e.g. [80, 109, 128, 149, 152].
5
6
CHAPTER 2. CONTROL OF HAPTIC DEVICES
Haptic Display
Human
Operator
Haptic
Device
Haptic
Controller
Virtual
Reality
Simulator
Figure 2.1: Scheme of a haptic system.
The haptic device can be realized in different ways in order to be handled from the user. One has
to take into account the task to be performed during the part of the device project concerning actuator
dimensions, performances and so on. A lot of different haptic devices have been proposed for different
aims: see [3, 138, 165, 166] as examples of 3-dof planar device, [108] as a 4-dof system, [131, 142] as 6-dof
systems, [27, 160, 161] as haptic 6-dof devices with visual feedback, [40] on the use of manipulator Puma
560 for haptic purposes, [60] for an application in minimal invasive surgery, [154] for the state-of-the-art
in the telerobotics applications. Considerations on the way to choose the dimensions of the haptic display
can be found e.g. in [28, 29, 44, 47, 48, 106]. In particular, this chapter focus on a particular kind of
haptic devices, i.e. the ones actuated by means of tendons/wires; see [158] as an overview on this specific
devices. This kind of actuators is really different from the other ones, because of the possibility of exerting
forces only in the fixed direction (and verse) directly related with the spatial orientation of the wires and
not in other directions.
Different controllers have been proposed in the literature in order to achieve a more perfect transparency of the whole system; different aspects have been analyzed and solutions for improving performances have been introduced. Examples of proposed controllers in the literature can be found in [31, 35],
problems connected with the stability of the haptic devices [1, 2, 4] and of the interaction of different
systems [42, 43, 45, 46] have also been studied, while other works, see e.g. [32], are related to the control
of multiple player simulations, i.e. situations in which the virtual environment is shared among different
users.
The software or virtual reality simulation element has also been widely studied, see [53] as a good
survey on virtual environments. As concern specific aspects, in [129, 169] one can find an approach with
a “virtual proxy” or “god-object” in the rendering part of the algorithm; [24, 62, 125, 157] deal with the
creation of a virtual environment; in e.g. [79, 87, 118] one can find consideration on how to model specific
situations or tasks; specific consideration on distance computation between modeled objects can be found
e.g. in [77, 78, 119, 153]; [61] deals with multibody dynamics modeling; [54, 76] contain considerations on
numerical methods; [107] deals with the environment delay and, finally, in [37, 94] performances related
to the sampling rate of the model are treated.
2.2. WIRE HAPTIC DEVICES IN BRIEF
2.2
7
Wire Haptic Devices in Brief
The choice of operating with a wire haptic device, due to the particular condition briefly described in the
previous Section 2.1, creates some problems in the correct implementation of the desired forces. In fact,
a correct computation of the number of wires in the device is needed; the wires are often put together in
order to exert forces in both the verses of the all possible directions, in order to achieve a perfect control
of the movements of the whole device; when the number of tendons is not sufficient to cover the whole
range of possible forces, the device is said under-actuated and a perfect transparency can be no more
achieved. See e.g. [67, 68, 74, 88, 134, 135] for further details on these arguments.
In fact, the force exerted at the end-effector of the haptic device (the object handled from the user)
is in this case the sum of the tensions of each of the tendon/wire. Figure 2.2 presents this basic concept
with three wires, possible results of the sum of the tensions in always included in the tetrahedron virtually
composed by the three wires.
Haptic
Device
Wire 1
Wire 3
Wire 2
Figure 2.2: Range of possible forces with three tendons/wires.
Main task of the device controller is to compute and to put into effect the right tension on each of the
wires in order to let the user perceive the correct interaction forces with the implemented virtual reality.
In the case of under-actuated devices, because of the limitation of the range of the possible exerted forces,
the controller has to approximate the force values computed via the simulation with values compatible
with the positive tensions applied on the wires.
2.3
Control of a Wire Haptic System
The haptic device controller is in charge to let the operator correctly interact with the device according
to the software simulation of the virtual reality to be modeled. The controller sends to the simulator the
user exerted force, the simulator calculates the force feedback to be replied to the user and, finally, such
a force is applied to the haptic device. One of the main aspect of the controller definition is in this case
the computation of the tensions to be applied on each wire in order to achieve transparency exerting the
correct force on each wire, i.e. the desired force has to be correctly spanned on the different wires.
Main feature of this haptic device is that each wire can exert forces only along its direction and, very
often, such a direction depends on the position of the end-effector of the device; one can observe that
this concept underline also the importance of a correct position measurement in a wire haptic device.
8
CHAPTER 2. CONTROL OF HAPTIC DEVICES
Assuming to assign a fixed position Pi to one of the extremity of the generic i-th wire and to connect
the other side of all the wires to the same time varying device end-effector position Pe (t), one can easily
obtain the following expression for the whole force F (t) exerted by the n different wires:
F (t) =
n
X
i=1
ti (t)
Pi − Pe (t)
|Pi − Pe (t)|
(2.1)
where ti (t) represents the generic tension on the i-th wire in a certain moment and the term (Pi −
Pe (t))/|Pi − Pe (t)| expresses the unit vector describing the direction of the i-th wire; such tension values
can be measured by apposite force sensors and they are imposed by n different motors, one for each of
the wires, governed by the controller action.
In brief, the spatial position Pe (t) and velocity Ṗe (t) of the haptic device is sent to the simulator; it
calculates the force Fe (t) that has to be perceived by the operator through the device, such a force is
elaborated by the control algorithm that produces a new value F (t), slightly different from the previous
one and, at the end, it is applied via the actuators. F (t) is computed with one of the possible projection
methods of the force on the wires and, differently from Fe (t), it can be immediately translated into the
different tensions of the wires.
Many actuators, a brushless motor for each of the wire, govern the tensions of each wire and are
controlled via apposite feedback loops based on the desired tension values, computed by the controller,
on the correspondent wires. Motor torques are so based on the different tension errors.
Spatial displacement Pe (t) of the end-effector of the haptic device can be easily computed via geometric
considerations based on the length of all the wires. In fact, wires are free to slide in and out, i.e. to
change their lengths li (t), according to the movement of the motors. Assuming that the wires have
positive tension and that the device is not under-actuated, i.e. that there is a sufficient number of wires
in the system, there is a unique way to determine Pe (t) from li (t) information; in the case of underactuation one can compute many admissible values for Pe (t) and supplementary sensor data are required.
Equations to be solved to compute Pe (t) are thus the following:
|Pi − Pe (t)| = li (t), ∀i = 1, . . . , n
(2.2)
where such a problem can be posed as a problem of mapping between the joint space variables li (t) and
the work space variables1 Pei (t) studied in robotics via the so called Jacobian matrix, see e.g. [102, 141].
The key part of the control algorithm is the computation of the the desired tensions ti (t), to be applied
on each wire through the motors, based on the projection of the feedback force Fe (t), computed via the
virtual reality simulation software, along each wire. Such a computation is based on equations similar to
the previous ones:
n
X
Pi − Pe (t)
= Fe (t)
ti (t)
|Pi − Pe (t)|
i=1
again such a problem can be conceived as a problem of translation between the joint space forces ti (t) and
the work space forces2 Fei (t). In the case of under-actuation, it is necessary to approximate Fe (t) with
a more generic F (t), since it is often impossible to realize Fe (t) via the wire tensions ti (t) that can act
only along the directions given by the vectors Pi − Pe (t) that represent the wires; general force equation
is so expressed as in Eq. 2.1.
Being the vector T (t) = [t1 (t), t2 (t), . . .]T composed with the tensions of each wire, Eq. 2.1 can be
rewritten with a matrix formulation:
(2.3)
T (t) = J[Pe (t)]T F (t)
where J[·] is the Jacobian matrix of the device, strictly depending from the end-effector position.
1P
ei (t)
2 F (t)
ei
represents the i-th component of the end-effector position vector Pe (t).
represents the i-th component of the force vector Fe (t).
2.4. FORCE PROJECTION
9
Geometric considerations can be better understood with the aid of the Figure 2.3 that put into
evidence the previously defined values.
P
1
l1
P
2
l
f
2
1
Pe
f
2
f
3
l
3
P3
Figure 2.3: Geometric considerations on a wire haptic device.
2.4
Force Projection
Force projection is, as above detailed, a necessary computation to be carried out by the controller in the
case of an under-actuated device. Several methods have been presented in order to solve this problem,
see e.g. [103, 105], here it is presented the most intuitive one based on the application of the force F (t)
with minimum distance from the ideal one Fe (t).
In fact, the set F(t) of all the admissible forces that can be, at a certain time t, applied to the device
is described by the following equation:
)
( ¯
n
¯
X
Pi − Pe (t)
¯
, zi ≥ 0, ∀i = 1, . . . , n
zi
(2.4)
F(t) = F ¯ F =
¯
|Pi − Pe (t)|
i=1
where zi values appearing in the linear combination are positive, that means that wires have always to
maintain a positive tension on them. The set F expressed as in Eq. 2.4 is represented by a tetrahedron
formed by the unit vectors that indicate the directions of the wires.
The computed force F (t) can be the best approximation, in this case in the sense of minimum distance
but in general others force spanning are conceivable, of the force Fe (t) within the set F and it can be so
expressed:
F (t) = argF ∈F (t) min |F − Fe (t)|
and the implemented force F (t) is equal to the desired one Fe (t) only in the case that Fe (t) lies within
the tetrahedron representing the set F.
Figure 2.4 shows the minimum distance approximations of four different values of Fe (t): Fe−1 (t) leads
to F (t) = 0 because it is in the opposite direction with respect to the tetrahedron and it is not possible
to realize such kind of force with the three shown wires, Fe−2 (t) and Fe−3 (t) are projected within the
depicted tetrahedron and, finally, Fe−4 (t) can be directly realized with the wires since it is in the set F.
10
CHAPTER 2. CONTROL OF HAPTIC DEVICES
P
F
1
e−2
P2
Fe−1
P
e
Fe−4
Fe−3
P3
Figure 2.4: Different examples of force projection.
2.5
Further Considerations
In this chapter the main details concerning the definition and the control of a wire haptic interface have
been presented. Section 6.2, presented within the chapter containing the experimental part of this work,
collects further details on the building and control of a specific wire haptic interface with which different
experiments have been carried out.
Section 6.2 contains also, for example, many different position measuring and force projection considerations connected to two different wire haptic device prototypes. Problems arising with the practical
implementation of the concepts here presented are there detailed and discussed. One can refer to that
section for the specific considerations on the main topics presented in this one.
Chapter 3
Telemanipulation Systems
3.1
Presentation
Telemanipulation, teleoperation and telerobotics are terms that indicate the capability of carrying out
manipulations/operations in a remote environment; in fact, the user of this peculiar interfaces is able
to interact with remote objects or, in general, remote environments and to execute tasks, without being
physically in proximity of it.
Telemanipulation systems, see [136] for a review of the historical developments in this field, are very
useful and widely spread since they permit the interaction with environments that are dangerous or
scarcely accessible for the human being, e.g. space telerobotics, see [124, 137] as reviews, and undersea applications, or with objects or situations with a different scale with respect to the human typical
dimensions, as for example in the case of micro-surgery, see [110] as a survey on the use of telerobotics
in the health care.
Basically, the operator interacts with an interface and he drives it with the desired command in order
to govern the remote counterpart, on the opposite side another interface is in charge to directly implement
commands received from the operator on the remote environment. A telemanipulation scheme is said
bilateral if the remote environment gives some pieces of information as feedback to the user, i.e. if the
information flows in both the directions of the whole scheme. In the sequel of this work this particular
kind of schemes are discussed and dealt with.
Figure 3.1 shows the typical bilateral telemanipulation control scheme with all its components.
First consideration to be developed is that teleoperation and haptic interfaces are not so different in
their control aspects, see e.g. [130] as an overview of the main control issues of these two kind of approach.
In fact, the haptic systems can be considered as particular cases of teleoperation systems in which the
interaction at the remote or slave part is just implemented via software with a virtual reality simulator
and not physically happening in the reality at the remote side. As far as time delays are concerned, in
the telemanipulation schemes delays are mainly due to the communication channel between the local and
remote manipulators, in the haptic systems they are only due to the software simulator; time-delay is
one of the main obstacles in the good rendering of the telepresence and time delay systems have been
widely studied in the literature, see e.g. [127] as a survey on this topic.
Another important difference with respect to haptic systems is that telemanipulation introduces interactions between the remote manipulator and the environment and this requires a specific control.
In realizing certain tasks an impedance control can be useful instead of just position or force control,
see [69, 70, 71, 72] for the definition of such kind of control; adaptive parameters for such kind of control
have also been studied e.g. [34, 82, 113, 121], see [132] for a detailed presentation on adaptive control;
[83] presents another unified approach for motion and force control; in [95] is presented the point of view
11
12
CHAPTER 3. TELEMANIPULATION SYSTEMS
Primary/Local Side
Human
Operator
fh
xm
Master
Manipulator
fmc
xm
fe
fsc
Remote
Slave
Environment
Manipulator
xs
xs
Master
Controller
Communication
Channel
(delay T)
Slave
Controller
Remote Side
Figure 3.1: The telemanipulation control scheme.
of the robust control, see e.g. [52] for a survey on the topic. Among different control schemes there is
also the variable structure control with sliding mode, see [73] for a survey on this argument.
In the more recent years, the Internet has given a big impulse to the development of telerobotics,
since it can be used as a communication channel for the whole world to put into communication different
systems geographically located all over the globe. See [36, 117, 159] as examples of synchronization and
control in telerobotics using the Internet, also with the predictive control aid [19, 126].
In this chapter a focus on the main typical parts joined together into a telemanipulation scheme is
provided, as well as a detailed and complete presentation of the main control schemes proposed in the
literature.
3.2
Definitions
The main components of a telemanipulation scheme, already presented in the Figure 3.1, are here detailed:
• Human operator - the user is in charge to carry out the remote task through the whole telemanipulation system and he receives as aids from the system a force-feedback perception of what is
happening at the remote side and, eventually, a visual-feedback with a monitor.
• Remote environment - it is composed by the various objects one has to interact with; very often
the specific task necessitate the object manipulation by means of the slave robot; the remote
environment can be “a priori” known (structured), at least with a certain level of knowledge, or
unknown.
• Master manipulator - it is the robot or haptic display able to give the right perception of the
interaction with the remote environment and it has to be directly handled from the final user;
in brief, the user manipulates directly the robot instead of the remote objects that compose the
environment.
• Master controller - this is the software that computes the correct force to be applied to the master
manipulator in order to give to the person the right sensation of the interaction with the remote
3.3. GOALS
13
environment; it is a crucial part of the whole scheme and it can be implemented in several different
ways as detailed in the following.
• Slave manipulator - it is the robot in charge to replicate the user behaviour at the remote side, it
physically carries out the required task acting directly on the environment; its end-effector have to
be strictly related to the objects to be handled.
• Slave controller - this is again a software part of the telemanipulation scheme, it calculates the forces
to be applied to the remote manipulator necessary to let it follow the desired trajectory imposed
by the user and constrained from the environment. It should also have a certain level of autonomy
in his actions in order to compensate possible problems in the whole systems and to guarantee a
safety works in every possible working conditions, even in the case of faults, such as for example
an increasing time-delay in the communication channel, no information available at all from the
primary side or “bad interaction” of the slave manipulator with its remote environment.
• Communication channel - this last component exchanges information between the opposite master
and slave side, this exchange can be done via cable, radio or satellite, etc. transmission, it depends
on the physical location of the two parts and it is related to the required transmission delay and
bandwidth for the performances optimization; the communication channel sends the variables of
interest at the opposite side of the telemanipulation scheme.
In general each part of the scheme have to be created according both to the task to be carried out and
to the performances to be obtained. In particular, human operator and remote environment are strictly
related to the specific task to be completed, master and slave manipulators have to be projected and
built “ad hoc” for a correct interaction with operator and environment and, finally, device controllers
and communication channel depend strictly on the performances to be obtained from the whole system.
The necessary sensors have to be properly defined and dislocated to measure manipulators or interactions variables, in order to capture both the user movements or “intentions” to be replicated at the slave
side and the slave manipulator interaction with the remote environment to be perceived at the primary
side.
The main choices in the master and slave controllers project are the received and transmitted information on the communication channel and the definition of the necessary computations to be done on
the available signals.
3.3
Goals
Main desired aims of a telemanipulation scheme are, first of all, the stability of the overall system and
the transparency of the same.
The stability for a telemanipulation system means that bounded values in the input variables, typically
the forces exerted by the operator or by the remote environment, lead to bounded values in the output
variables, i.e. displacements of the two manipulators and internal variables of the local controllers.
Parameters of the two master and slave controllers and time-delays in the communication channel are
often a crucial factor for the stability. The stability has always to be guaranteed, for example through
the imposition of an upper bound in the transmission delay.
Another very important desired property is the so called transparency, it means that the overall system
has to be as “transparent” as possible for the final user, in the sense that the operator should have, if
possible, the same sensations as he would interact directly and physically on the remote environment,
carrying out the specific task to be performed. In synthesis the whole telemanipulation scheme should
be as hidden as possible for the human operator.
In practice, transparency can be detailed in many different requirements to be imposed to the whole
system, such requirements describe the necessary properties that the telemanipulation control scheme
14
CHAPTER 3. TELEMANIPULATION SYSTEMS
should have in order to reply with high fidelity, at the primary side, the interactions exchanged with the
remote environment.
The next Chapter 4 shows a detailed presentation of the stability and the performances of a telemanipulation scheme, with particular attention to the main characteristic of the control schemes proposed
in the following section.
3.4
Control Schemes
In the literature a number of different control schemes has been proposed for telemanipulation systems,
since the possibility of interacting with remote environments by means of telecontrolled systems has always
been considered of relevant interest in robotics. Such systems are based on several different criteria such
as passivity, compliance, predictive or adaptive control, etc. This section define and evaluate the main
features and properties of some of the most common control schemes proposed in the literature; such
schemes are then compared under different points of view in the next chapter, firstly presenting the criteria
adopted for the comparative study, then discussing the tuning of the parameters for the maximizing of
the performances and, finally, illustrating the results of the comparison with pros and cons of each control
scheme.
This section provides the basic definitions of the main control schemes for telemanipulation systems.
The control schemes below detailed are here briefly described:
• Force reflection - perhaps the first control scheme appeared in the literature and the most intuitive
one for its simplicity; it sends position information from master to slave and it receives the forcefeedback from slave according to the remote interaction.
• Position error - it is a fully symmetric control scheme, forces applied on both sides are proportional
to the position difference between the two manipulators; necessary position information flows on
both ways of the communication channel.
• Shared compliance control - this scheme is very similar to the firstly presented force reflection
scheme, the only difference is due to a compliance term inserted in the controller at the remote side
to modify the behaviour of the slave manipulator according to the interaction with the environment.
• Force reflection with passivity - the previously described position error control scheme can be
integrated with one or more dissipative elements in order to guarantee the passivity, this procedure
is commonly indicated in the literature as damping injection.
• Intrinsically passive controller - this scheme is directly based on concepts of the passivity theory;
the controller is entirely built with passive elements and the scattering variables are transmitted in
the communication channel in order to interconnect only passive terms.
• Four channels - both velocity and force are sent to the other side in both directions, thus obtaining
four channel; as the controllers are concerned, they used both the local available information on
force and velocity and the remote information with a linear combination.
• Adaptive motion/force control - as in the previous four channels scheme, velocity and force are
exchanged in the communication line; each manipulator has its own local adaptive position/force
control, where the parameters of the manipulator are locally estimated.
• Sliding-mode controller - a variable structure control is defined at the slave side in order to achieve
a perfect tracking of the received master delayed position.
3.4. CONTROL SCHEMES
15
• Predictive control - this scheme uses “a priori” knowledge of the slave dynamics in the master
controller in order to predict the slave behaviour at the master side and to improve the performances
of the whole telemanipulation system.
• Predictive control with passivity - this method combines the Smith’s predictor and the wave, or
scattering, variables in order to achieve both the benefits of the performances and stability, this in
particular due to the overall passivity.
The main choices of each of the controller are the different ways to compute the forces to be applied to
the two manipulators, master and slave, and the different definitions of the information to be transmitted
in the communication channel in both directions, from master to slave and, viceversa, from slave to
master.
Other important factors to be carefully taken into account for each control scheme are: sensors
required to measure the values of the variables needed by the controllers, computational load for the
implementation of the control, required bandwidth on the transmission channel to send the necessary
data from one side of the scheme to the other and viceversa.
The main concepts of each scheme are reported, as well as the detailed definitions of the forces to be
applied to the manipulators and the data to be transmitted on the transmission channel.
The detailed definitions of the variables used in the following subsections can be found in the Section A.3 of the appendix containing the nomenclature used in the text. Such variables are however
congruent with the ones shown in the previous Figure 3.1. Only two preliminary useful equations are
reported:
½
fm = fh − fmc
fs = fe + fsc
where fh , fe represent the human operator and the remote environment exerted forces, fmc , fsc are the
master and slave controller forces, fm , fs are the total forces exerted on the two manipulators. These
simply equations state that the forces exerted on the master and slave devices depend on both the external
(user or environment) components and the internal (controller) ones.
In the equations presented here below the time variable (t) and the Laplace variable (s) have been
omitted for simplicity. In the communication channel equations the Laplace domain term e−sT appears
in order to represent the constant time delay T in the transmission of the information.
3.4.1
Force Reflection (FR)
In the classical force reflection control scheme, the position information is sent from master to slave and
the remote force information is sent back in the opposite direction from slave to master, see e.g. [58, 59].
The control equations are:
½
fmc = gc fsd
(3.1)
fsc = kc (xmd − xs )
where gc , kc are the control variables. Subscript d indicates the variables related to the delayed information transmitted into the channel between the two sides:
xmd = e−sT xm ,
fsd = e−sT fsc
(3.2)
where e−sT represents the Laplace transformation of the constant delay T on the transmission channel.
Figure 3.2 synthesizes this control showing both the controllers for master and slave force computation
and the variables transmitted on both directions of the communication channel.
16
CHAPTER 3. TELEMANIPULATION SYSTEMS
xm
+
k
fsc
c
Master
fmc
Slave
-
T
xs
g
c
Figure 3.2: The Force Reflection scheme.
3.4.2
Position Error (PE)
In the position error scheme, the forces applied to the manipulators are proportional to the difference
(error) between local position and received (delayed) remote position. In this scheme only position
information is thus exchanged in the transmission channel from master to slave and vice-versa, see [85].
As can be easily seen from Figure 3.3 this control scheme is fully symmetric. The control equations
become:
½
fmc = gc kc (xm − xsd )
(3.3)
fsc = kc (xmd − xs )
where gc , kc are control parameters. As the information transmitted between the two sides is concerned,
one obtains:
xsd = e−sT xs
xmd = e−sT xm ,
xm
+
gckc
T
kc
fsc
xs
-
fmc
+
Figure 3.3: The Position Error scheme.
3.4.3
Shared Compliance Control (SCC)
In this scheme, a compliance term is inserted in the slave controller in order to change the desired
displacement received from the master side accordingly to the local interaction with the remote environ-
3.4. CONTROL SCHEMES
17
ment, [84, 86]. The control equations become:
½
fmc = gc fsd
fsc = kc (xmd − xs + Gf (s)fe )
(3.4)
k
where gc , kc are control parameters and Gf (s) = 1+τf s represents the transfer function of a low-pass filter
with parameters kf , τ . The information transmitted between the two sides is identical to the FR case:
xmd = e−sT xm ,
fsd = e−sT fsc
From Figure 3.4 one can appreciate the difference with respect to the FR scheme due to the inserted
compliance term, i.e. a filtering action based on the force fe of the remote environment.
Gf (s)
+
xm
+
k
fe
fsc
c
T
fmc
xs
g
c
Figure 3.4: The Shared Compliance Control scheme.
3.4.4
Force Reflection with Passivity (FRP)
The force reflection scheme described by Eq. 3.1 can be modified through the adding of damping injection
terms in order to guarantee passivity, see e.g. [114]. The control equations become:

fsd + bi vm
 fmc = gcµ
¶
vmd − fsc /bi
− xs
 fsc = kc
s
where vm = sxm represents the velocity of the master and kc , gc , bi are parameters of the control system.
The transmitted variables in the channel are:
vmd = e−sT vm ,
fsd = e−sT fsc
Figure 3.5 evidences the two inserted dissipative terms with constant coefficient bi .
18
CHAPTER 3. TELEMANIPULATION SYSTEMS
1/bi
-
vm
+
+
1/s
k
fsc
c
bi
+
T
x
gc
s
+
fmc
Figure 3.5: The Force Reflection with Passivity scheme.
3.4.5
Intrinsically Passive Controller (IPC)
This control scheme is based on passivity concepts and in its implementations can be interpreted in terms
of passive physical components such as masses, dampers and springs, see [15, 145, 147] for details. One
of these possible forms is the following:

fmc − fmi = (mmc s2 + bmc s)xmc




fmc = kmc (xm − xmc )



fmi = (kmi + bmi s)(xmc − vmi /s)
(3.5)
fsi − fsc = (msc s2 + bsc s)xsc




fsc = ksc (xsc − xs )



fsi = (ksi + bsi s)(vsi /s − xsc )
where mmc , bmc , kmc , kmi , bmi , msc , bsc , ksc , ksi , bsi are the parameters of the controller; xmc , xsc are the
positions of the virtual masses implemented in the controllers; fmi , vmi , fsi , vsi are forces and velocities
exchanged between master and slave. The physical interpretation of the control law in Eq. 3.5 is shown
in Figure 3.6, at least for the master manipulator.
K mi
K mc
Port 1
Port 2
Mmc
B mi
B mc
Figure 3.6: Conceptual scheme of the master IPC: energy is exchanged through port 1 and port 2 with
the robot (left) and the transmission channel (right).
In order to guarantee passivity, such forces and velocities are transformed in scattering, or wave,
3.4. CONTROL SCHEMES
variables:
½
19
√
+
= (fmi + bi vmi )/√2bi
Sm
−
Sm
= (fmi − bi vmi )/ 2bi
½
√
Ss+ = (fsi + bi vsi )/√2bi
Ss− = (fsi − bi vsi )/ 2bi
(3.6)
where bi represents the impedance of the channel. As transmitted variables are concerned, one obtains
+
,
Ss+ = e−sT Sm
−
Sm
= e−sT Ss−
Then, by taking into account the causality requirements on the IPC and on the transmission line, one
can rewrite Eq. 3.6 to put into evidence the input and output variables in the following manner:
½ − p
½ + p
−
− Sm
Ss+
Ss = 2/bi fsi −
Sm = 2/bi fmip
p
(3.7)
−
vmi = fmi /bi − 2/bi Sm
vsi = −fsi /bi + 2/bi Ss+
This definition of input/output variables for the scattering transformation is shown in Figure 3.7.
Fmi
vmi
¾
Scatt. trans.
Master side
¾
S+
-m
Ss+
−
Sm
Ss−
¾
-
v
- si
Scatt. trans.
Slave side
¾
Fsi
Figure 3.7: Scattering transformation at the master and slave side.
3.4.6
Four Channels (4C)
This is a generic telemanipulation control scheme in which both velocity and force information are exchanged between master and slave in both directions, see [91]. The control is defined as:
½
fmc = −c6 fh + cm vm + fsd + vsd
(3.8)
fsc = c5 fe − cs vs + fmd + vmd
where vm = sxm , vs = sxs are velocities; c5 , c6 are feedforward and cm , cs feedback control parameters.
As concerns the transmitted information, one obtains four different channels
vmd = c1 e−sT vm ,
fmd = c3 e−sT fm ,
fsd = c2 e−sT fs
vsd = c4 e−sT vs
(3.9)
where c1 , c2 , c3 , c4 are parameters of the communication line.
In order to simplify the control scheme, one can reduce the number of parameters by setting
c4 = −(mm s + bm + cm )
c1 = ms s + bs + cs ,
c6 = c2 − 1
c5 = c3 − 1 ,
(3.10)
where some of the parameters are defined as dynamic systems in order to achieve perfect transparency,
see [65] for further details, and mm , ms , bm , bs represent the masses and the damping coefficients of the
master and slave manipulators respectively.
This four-channels scheme can be simplified, by properly defining the control parameters, obtaining a
three-channels scheme as shown in [65]. In particular, the following control scheme can be obtained from
Eq. 3.8, 3.9 and 3.10) by setting C2 = 0. The control equations are
½
fmc = fh + cm vm + vsd
fsc = (c3 − 1)fe − cs vs + fmd + vmd
20
CHAPTER 3. TELEMANIPULATION SYSTEMS
where feedforward actions on fh , fe are used. Information is transmitted using three different channels:
= c1 e−sT vm
fm ,
vsd = c4 e−sT vs
vmd
−sT
fmd = c3 e
where c1 , c3 , c4 are free parameters. One can set c1 and c4 as specified in Eq. 3.10.
3.4.7
Adaptive Motion/Force Control (AMFC)
This control scheme has been proposed in [167, 168]. Each manipulator has its own local adaptive position/force controller and in the transmission channel position and force tracking commands are exchanged
between master and slave. The master and slave controllers are so defined:
½
ac
Gm (s)fh + (Cm (s) + λs Gm (s))vm − fsd − vsd
fmc = − s+c
(3.11)
ac
fsc = s+c Gs (s)fe − (Cs (s) + λs Gs (s))vs + fmd + vmd
where a, c, λ are constant parameters; Gi (s) = m̂i s + b̂i + ki + ki1 /s, Ci (s) = ki + ki1 /s, with i = m, s,
are the feedforward and feedback controllers (ki , ki1 are PI feedback gains). m̂i , b̂i are the estimated
values of the mass and damping parameters of the manipulators (computed on-line). As concerns the
transmitted information, there are four different channels:
vmd =
fmd =
3.4.8
c(s+λ)
−sT
vm
s(s+c) Gs (s)e
ac
−sT
fh ,
s+c Gs (s)e
,
ac
−sT
fe
s+c Gm (s)e
c(s+λ)
−sT
vs
s(s+c) Gm (s)e
fsd =
vsd =
Sliding-Mode Controller (SMC)
The variable structure control approach has been translated also within the telerobotics literature. In
fact, sliding-mode control has been successfully applied to some telemanipulation schemes. It offers
robustness against uncertainties and, moreover, it can be used to deal with problems arising with time
delay.
In [123], a sliding-mode controller is defined at the slave side in order to achieve a perfect tracking in
finite time of the delayed master position; at the master manipulator an impedance controller is instead
used. The corresponding equations are:
(
m
fmc = fh − bm vm + m
mc (bc vm + kc xm − fh − fed )
³ ´
S
s
fsc = −fe + bs vs − m
mc (bc vmd + kc xmd − fhd − fedd ) − ms λė − kg sat φ
where mc , bc , and kc are the impedance controller parameters; λ and kg are the sliding-mode controller
parameters; e = xs − xmd is the position error computed at the slave; S = ė + λe is the sliding surface
to be reached in finite time; sat(·) represents the saturation function and, finally, subscript d indicates
delayed transmitted variables. Four variables are sent from master to slave, and one variable (fe ) is sent
back in the opposite direction on the communication channel:
vmd = e−sT vm
xmd = e−sT xm ,
−sT
fhd = e
fh ,
fedd = e−sT fed
−sT
fed = e
fe
3.4.9
Predictive Control (PC)
Predictive control methods use the approximate model of one system in order to predict its future
behaviour once known its input values. In the control methods described above, information from the
3.4. CONTROL SCHEMES
21
slave side is used as feedback to the master, but in reality no knowledge about the slave dynamics
was required in the design of the master controller. Conversely, it is possible to considers explicitly
the remote dynamics into the local controller in order to predict the slave behaviour, see [114, 137].
The following algorithm for telemanipulation systems, in particular, is based on the well known Smith
predictor scheme [17, 140].
Smith predictor is used at the master side in order to anticipate computation of the delayed information
from the slave, whereas a simple PD controller is implemented at the slave. This telemanipulation scheme
is very similar to the FR one, being the force reflected at the master computed by means of both the
predictor and the force feedback from the slave. The controllers are

·
¸
(ms s2 + bs s)(bc s + kc )

−2sT
(1
−
e
)x
+
f
fmc = gc
m
sd
(3.12)
ms s2 + (bs + bc )s + kc

fsc = (bc s + kc )(xmd − xs )
The prediction term is evident in the first expression (master control law). gc , bc and kc are control
parameters. The transmitted information is the same as in the FR scheme:
xmd = e−sT xm ,
3.4.10
fsd = e−sT fsc
Predictive Control with Passivity (PCP)
Recently, a prediction method combined with wave variables has been presented in the literature, see [112].
This method improves the performances with a Smith predictor and, at the same time, maintains passivity
by joining together prediction and scattering variables.
Let fmc , vm , fsc , vsr be forces and velocities exchanged between master and slave. In order to
guarantee passivity, these forces and velocities are transformed in wave variables:
½
½
√
√
Us = (fsc + bi vsr )/√ 2bi
Um = (fmc + bi vm )/√ 2bi
Vm = (fmc − bi vm )/ 2bi
Vs = (fsc − bi vsr )/ 2bi
where bi represents the impedance of the channel. Note that this transformation is the same as in Eq. 3.6.
As transmitted variables are concerned, one obtains
Us = e−sT Um ,
Va = e−sT Vs
where the signal Vs from the slave becomes the input Va of the Smith predictor at the master that
calculates the wave variable Vm as
Vm = Regulator[Gp (s)(1 − e−2sT )Um + Va ]
(3.13)
Gp (s) = Vs /Us represents the transfer function of the entire slave side1 , i.e. the slave manipulator, the
PD controller, and the wave transformation; the regulator, see [112] for details, is inserted in order to
guarantee passivity; in particular, passivity definition is satisfied since the energy associated with the
returning wave Vm is always not greater than the energy associated with the outgoing wave Um .
The PD controller implemented at the slave is
µ
¶
vsr − vs
(3.14)
fsc = (bc s + kc )
s
where bc and kc are parameters.
1 The
transfer function of the slave manipulator with the associated PD controller is defined as Gs (s) =
Vs
Gs (s) − bi
(ms s + bs )(bc s + kc )
that, considering the wave transformation, leads to Gp (s) =
=
.
ms s2 + (bs + bc )s + kc
Us
Gs (s) + bi
fsc
=
vsr
22
CHAPTER 3. TELEMANIPULATION SYSTEMS
Chapter 4
Stability and Performances
4.1
Introduction
Main goal of a telemanipulation scheme is to let the human operator execute a specific task in a remote
environment, i.e. to perceive the sense of telepresence as if the user is in direct interaction with such an
environment. In fact, the major objective is the so called “transparency”, i.e. the ideal limit situation of
direct action of the operator on the remote environment, see [91].
Bilateral teleoperations suppose a two-way information transfer between the primary and secondary,
or remote, robotics systems. In fact, the human operator perceives the remote environment and control
the tasks execution via the force feedback received from the slave. Unfortunately, the force feedback may
destabilize the overall system if proper control schemes are not adopted. A direct consequence of this
fact is that there is a sort of natural trade-off in telemanipulation between stability and transparency,
see e.g. [63, 66, 91]. Several telemanipulation control schemes have been proposed in the literature and
many of them have been detailed in the previous chapter, see [12, 13, 56] as overviews on various control
approaches.
As one focus on stability aspects, the passivity theory is widely used in order to guarantee stability,
assuming that the environment does not inject energy in the system, see e.g. [6, 7, 8, 9, 114], while [90]
contains some performance testing in the case of passive communication; as transparency is instead
concerned, different approaches have been presented in the literature to let the human operator perceive
the same impedance seen at the the slave system in the interaction with the external environment, see
e.g. [41, 64, 65, 93, 164]. For example, an H∞ control approach is contained in [81] and the Smith’s
principle is used in [92]
This chapter, after the rigorous definition of one study case, presents some possible criteria, represented
in a mathematical way, in order to compare under different aspects, representing the ideal objectives,
the telemanipulation schemes proposed in the previous section. Such criteria are expressed in terms of
parameters that can be extracted from specific Laplace transfer functions within the telemanipulation
schemes and an easy computation of the whole results is guaranteed by this kind of approach.
Criteria here presented concerns with transparency which can be decomposed in both stability and
performances and, in particular, performances are here analyzed under four different point of view:
the perceived inertia by the operator, the tracking properties, the stiffness perception of the remote
environment and the position drift between master and slave manipulators.
Each one of the previous goals is detailed below, the analysis of the previously defined schemes from
the different point of view is carried out and a summary of the performances of all the studied schemes
is presented.
The last part of the present chapter dealt with the definition of the free parameters of the proposed
23
24
CHAPTER 4. STABILITY AND PERFORMANCES
control schemes. In fact, each parameter is discussed and properly set in order to optimize the performances of its scheme. In general it can be shown that the value to be assigned to each parameter is often
the result of a sort of trade-off, very often between conflict goals such as stability and performances.
Summarizing, Section 4.2 presents the definition of the case study, Sections 4.3–4.4 contain the definition of the different points of view for the comparison, Section 4.5 presents the results of the comparison
and introduces to the parameters tuning of Section 4.6 and finally, Section 4.7 gives some concluding
comments.
4.2
Case Study
The case study is described is this section. Operator, remote environment, manipulators and transmission
channel are here below detailed. In fact, results presented in this section have been obtained in a
simple case where the manipulators are one degree-of-freedom device and their dynamics are considered
linear; a constant transmission delay T is considered in the communication channel and a spring/damper
environment is considered when necessary.
Master and slave manipulators with one dof have been considered and, for the sake of conciseness
in the obtained results, identical manipulators have been chosen on both sides; their dynamics have
been considered linear or linearized by a suitable local controller, e.g. the inverse dynamic one. These
assumptions have been made since here the main aim is to compare the different control scheme and their
proposed controller in a normal situation in order to highlight their peculiar features and not to focus on
the possible different manipulators. These are rather strong assumptions on systems that are in general
multi-dof, with different dimensions and dynamic properties. However, as written before, this clear and
simple case study leads to interesting consideration in the telemanipulation schemes comparison.
The manipulators dynamics are described by the following Laplace domain equations:
fm
fs
=
=
(mm s2 + bm s)xm
(ms s2 + bs s)xs
(4.1)
where mi and bi are the inertia and damping coefficients, while fi and xi are the applied forces and the
displacements (i = m, s indicates the master m or slave s manipulator). As said before, for the sake of
simplicity, equal values for master and slave inertia and damping have been considered, i.e. mm = ms
and bm = bs have been assumed.
The forces fm and fs applied to the manipulators are both the external forces, due to the human
operator and the external environment, and the controller forces computed by the control scheme, as
briefly written in the previous chapter. In general they can be defined as:
fm
fs
= fh − fmc
= fe + fsc
(4.2)
where fh , fe are the forces imposed by the human operator and by the environment respectively, while
fmc , fsc are the forces computed by the control algorithms, as shown in the previous section for the
different schemes.
The assumption made on the communication channel is the constant time delay T in the transmission
of the information flowing in it. Such a system is so modeled as linear time-delay system with the
associated transfer function e−sT .
As the remote environment is concerned, it is considered for simplicity as an object with some a
certain stiffness coefficient ke and damping coefficient be . The correspondent equation in the Laplace
domain is the following:
(4.3)
fe = −(be s + ke )xs
where the force fe exerted by the remote environment depends on both the stiffness and the damping
terms according to the slave manipulator displacement.
4.3. STABILITY
25
The following figures synthetically represent the described equations for both the primary side, Figure 4.1, and the remote side, Figure 4.2. Such subsystems defined for this case study have to be combined
with each of the different control schemes presented in the previous chapter to complete the telemanipulation system.
fh
HUMAN
OPERAT OR
+
-
1/(
m m 2s m+b
x
fmc
MA STER
CONTRO LLER
s)
x
m
m
Figure 4.1: Schematic representation of the primary master side of the telemanipulation scheme.
fsc
SLAVE
CONTROLLER
+
+
fe
1/(mss2 +bss)
xs
REM OTE
ENV IRON M ENT
bes+ke
xs
-
+ xe
Figure 4.2: Schematic representation of the remote slave side of the telemanipulation scheme.
4.3
Stability
Stability is the capability of a system to respond with bounded outputs to generic bounded input signals.
It is the main property of a system and, in particular, it is obviously necessary in a telemanipulation
scheme. In fact, without this property the system could explode or going out of control with its variables.
First factor affecting stability is the time-delay due to the transmission channel; in fact, very often
delays can compromise stability property also for very small values. Other factors that could compromise
stability are the particular choices made in the manipulators controllers. As time-delay is concerned with
the stability aspects, different works have been presented in the literature on this topic, see e.g. [38, 39,
150, 148].
The ideal telemanipulation scheme is the one stable for each value of the transmission delay T and
for each choice of the parameters of the controllers; practically, it often happens that the whole system
is stable only for T ≤ Tmax for some controllers parameters.
Synthesizing, one can enumerate two main distinct cases to describe the stability of a telemanipulation
scheme:
1. Intrinsically stable (IS) scheme - that is a scheme for which stability is guaranteed independently
of the time delay T and of the choice of the parameters.
26
CHAPTER 4. STABILITY AND PERFORMANCES
2. Possibly stable (PS) scheme - i.e. a scheme that is stable for any time delay T for some choices
of the controller’s parameters, or stable for T ≤ Tmax , being Tmax dependent on the choice of
parameters.
4.4
Performances
Ideal performances of a telemanipulation scheme can be described with the concepts of “transparency”,
that is direct action of the human operator on the remote environment without the mediation of the
whole master/slave system. Such an ideal situation is translated into four different specifications already
mentioned above: user perceived inertia in the case of no interaction at the slave side, tracking properties
of the slave manipulator based on the displacements of the master one, stiffness perception of the user
in case of interaction with a structured remote environment and positioning error between manipulators
always in the case of environment interactions.
This choice is not general and one can think to define other parameters for future observations on
telerobotics. These comparison criteria represent a valid starting point.
4.4.1
Inertia and Damping
The user perceived inertia and damping represent the feeling of the human operator in moving around
the master manipulator in the case of no interaction with an external environment at the remote side.
Ideal perception should be zero, i.e. free movement allowed by the master controller when no force
feedback is received from the slave controller through the communication channel.
Such a real perceived inertia can be measured via the following transfer function:
Ã
!−1
¯
xm ¯¯
G1 (s) ≡
(4.4)
fh ¯fe =0
where fe = 0 indicates the absence of any interaction at the remote part of the telemanipulation scheme.
One can rewrite Eq. 4.4 as
(4.5)
G1 (s) = meq s2 + beq s + G∗1 (s)
where the shown terms meq , beq represent the equivalent inertia and damping perceived at the master
and G∗1 (s) contains negligible terms at low frequencies, i.e. terms of the third order and above, and it
satisfies lims→0 G∗1 (s)/s2 = 0.
4.4.2
Tracking
Tracking represents the capability of the slave manipulator to accurately follow the master variations in
displacement in the case of no interaction with any kind of environment. The ideal tracking error between
manipulators displacements should be zero.
If the remote interaction is not present, i.e. fe = 0, the tracking at the slave side of the movement
imposed at the master side can be properly measured by the following transfer function
¯
xm − xs ¯¯
G2 (s) ≡
fh ¯fe =0
In this case, one can put into evidence a main constant term δ, that represents the steady-state error
between the master and slave manipulators positions as a consequence of the application of a constant
unit value in the force fh :
G2 (s) = δ G∗2 (s)
where G∗2 (s) satisfies lims→0 G∗2 (s) = 1.
4.5. RESULTS
4.4.3
27
Stiffness
Another important property is that the human operator should ideally perceive at the master side the
right stiffness of the remote environment that the slave manipulator is interacting with.
Although more complex models for the interaction could be adopted, here the environment has been
considered modeled by a stiffness ke and a damping be as described in Eq. 4.3 and this leads to conclude
that the perceived stiffness should be as similar as possible to ke .
A measure of the stiffness perceived at the master side can be given by means of the following transfer
function:
Ã
!−1
¯
xm ¯¯
G3 (s) ≡
fh ¯
fe =−(be s+ke )xs
Again, one can try to identify a main constant term keq which represents the stiffness perceived at
the master:
G3 (s) = keq G∗3 (s)
where G∗3 (s) satisfies lims→0 G∗3 (s) = 1 and the equivalent perceived stiffness keq should be as similar as
possible to the environment stiffness ke .
4.4.4
Drift
Drift here considered is very similar to the tracking property above expressed and the only difference is
that the position error is computed in the case of interaction with a particular environment described in
Eq. 4.3.
Ideal drift should obviously be zero, i.e. no difference between manipulators displacements in perceiving the interaction with a remote environment.
The following transfer function can be defined to evaluate the position drift:
¯
xm − xs ¯¯
G4 (s) ≡
fh ¯fe =−(be s+ke )xs
and one can again define a main constant term ∆ which represents the position drift at low frequencies
due both to the application of a unit constant force fh and to the interaction with the remote environment
G4 (s) = ∆ G∗4 (s)
where G∗4 (s) satisfies lims→0 G∗4 (s) = 1.
4.5
Results
The proposed criteria are studied for the telemanipulation control schemes presented in Section 3.4 and
applied in the case study shown in Section 4.2; the obtained results, in terms of stability and performances,
are reported in the sequel.
Table 4.1 shows the results concerning stability of the different control schemes. The two possible
cases of intrinsically stable schemes (IS) and possibly stable schemes (PS) are reported. In particular,
one should note that the four channel scheme (4C) is usually of PS type, but, by choosing some of the
control parameters as in Eq. 3.10, IS is achieved with respect to the remaining parameters. More details
and explanations about stability of the different telemanipulation schemes on varying of the different
parameters are given in the following section. For a more detailed discussion concerning the stability of
some of the telemanipulation schemes see e.g. [55, 99].
28
CHAPTER 4. STABILITY AND PERFORMANCES
IS
PS
FR
PE
SCC
•
•
•
FRP
•
IPC
•
4C
AMFC
SMC
PC
•
•
•
•
PCP
•
Table 4.1: Stability analysis.
The expressions of the inertia meq and damping beq perceived from the user for the different control
schemes are reported in Tables 4.2 and 4.3. Note that, in the SMC scheme, also a stiffness perception
appears in the function G1 (s), i.e. a constant term kc is present in Eq. 4.5 due to the impedance controller.
Scheme
FR
PE
SCC
FRP
IPC
4C
AMFC
SMC
PC
PCP
Inertia (meq )
¶
µ
bm
(1 + gc )mm − gc bm
+ 2T
kc
b2
2(mm − bm T − kc T 2 ) − m
kc
¶
µ
bm
(1 + gc )mm − gc bm
+ 2T
kc
µ
¶
2gc bi bm T
gc b2i b2m
gc b2i
−
−
1+
m
m
(bm + bi )2
bm + bi
(bm + bi )2 kc
(bm + bmc )2 T
2(mm + mmc ) + bi T −
+ ...
bi
2
2b (2kmi + kmc ) + 2bm (kmi + kmc )(bm + 2bmc )
... − mc
kmi kmc
2T (bm + cm )
c2 + c3
2akm1 (1 + cT ) + λ(−1 − cT + akm1 T )
2a2 ckm1
mc
(1 + gc )mm −
2mm −
gc b2m
kc
b2m
kc
Table 4.2: Inertia analysis.
Tracking performance results are reported in Table 4.4 in terms of the value δ, which indicates the
position error obtained applying a unit constant force fh at the master manipulator. Note that, in the
bm
; therefore, the tracking
FRP case, one obtains the velocity tracking error δv = 2
bi + b2m + bi bm (2 + gc )
mm + bi T
. Moreover, for the SMC, in case
position error is limited only if bm = 0, and its value is δ =
b2i
the parameter kc is set to zero (choice that improves the perceived stiffness, as shown below) one obtains
T
δ= .
bc
4.6. PARAMETERS TUNING
29
Scheme
FR
PE
SCC
FRP
IPC
4C
Damping (beq )
(1 + gc )bm
2(bm + kc T )
(1 + gc )bm
gc bi bm
bm + bi
2(bm + bmc )
bm + bi +
0
SMC
λ(1 + cT )
ac
bc
PC
(1 + gc )bm
AMFC
PCP
2bm
Table 4.3: Damping analysis.
Stiffness perception is shown in Table 4.5 that reports the obtained results for each of the telemanipulation scheme. One can remind that good results are for keq ' ke . Note that in the FRP case one
perceives no stiffness (keq = 0) and a damping term with value bi + bm + bi gc .
Table 4.6 shows the different values ∆ of the position drift introduced by a unit constant force in
the case of the studied remote environment. In the FRP scheme one obtains the velocity drift error
1
, that leads to an unlimited position drift.
∆v =
bi + bm + bi gc
4.6
Parameters Tuning
One can now proceed to the tuning of the parameters presented in each of the proposed schemes, trying
to obtain the ideal results in terms of performances/transparency.
First requirement is obviously the stability of the overall telemanipulation scheme that gives some
constrains on the controller parameters; then one has to take count of the ideal transparency that needs
zero or low perceived inertia, zero tracking error in the case of no interaction on the remote side, correct
stiffness perception with respect to the one ke of the external environment and zero or low position drift
when interacting with a structured environment.
On the basis of the results obtained in the previous section and showed into the Tables 4.1–4.6,
one can derive the considerations on the parameters tuning for each scheme as detailed in the following
subsections.
4.6.1
Force Reflection
Seeing Tables 4.2–4.6, one can conclude that ideal values for the FR control scheme parameters in Eq. 3.1
are kc À 0, gc = 1. In fact, this choice leads to: 1) double values of the inertia and damping perceived
at the master with respect to the single manipulator case (at least in the case of small transmission
30
CHAPTER 4. STABILITY AND PERFORMANCES
Scheme
FR
PE
SCC
FRP
IPC
4C
AMFC
SMC
PC
PCP
Tracking (δ)
bm + kc T
bm kc (1 + gc )
1
2gc kc
bm + kc T
bm kc (1 + gc )
∞
2bi (kmi + kmc ) + kmi kmc T
2bi kmi kmc
c2 − c3
2(bm + cm )
0
0
bm + kc T
bm kc (1 + gc )
bm + kc T
2bm kc
Table 4.4: Tracking analysis.
delay T ¿ 1); 2) a tracking error δ = T /(2bm ) depending on the delay; 3) a correct stiffness perception
(almost the same as the environment); 4) negligible position drift. However, as one can argue, problems
arise in the study of the stability of this scheme. The fact is that, the maximum admissible delay
Tmax for which stability is achieved decreases as kc increases. Therefore, kc has to be tuned as a trade
off between stability and the above mentioned performance requirements. This compromise gives, in
practical examples, results worse than the ideal ones. The characteristic equation of the whole FR
scheme is obtained from Eq. 3.1–3.2 and Eq. 4.1–4.2; it becomes
G(s, T ) = mm s2 + bm s + kc + gc kc e−2sT
(4.6)
In order to study the stability of the system described by Eq. 4.6, one can apply e.g. the analytic stability
test presented in [150], obtaining the following equation
G̃(s, T̃ )
= kc + gc kc + (bm + 2kc T̃ − 2gc kc T̃ )s+
+(mm + 2bm T̃ + kc T̃ 2 + gc kc T̃ 2 )s2 +
+(2mm T̃ + bm T̃ 2 )s3 + mm T̃ 2 s4
(4.7)
where the maximum admissible communication delay Tmax , necessary to guarantee the stability of the
whole scheme, is intrinsically related to the values of the variables ω, T̃ associated with the imaginary
roots s = jω of Eq. 4.7 via the following equation
Ã
!
¯
¯
1
¯
[arg(1 + jω0 T0 ) − arg(1 − jω0 T0 )]¯
Tmax = min
ω0 ,T0 >0
ω0
G̃(jω0 ,T0 )=0
where ω0 and T0 express the values of the solutions of G̃(jω, T̃ ) = 0. In fact, one can easily consider that
for T̃ = 0 all the roots of Eq. 4.7 have negative real part and assuming that a T0 exists such that one of
4.6. PARAMETERS TUNING
Scheme
FR
PE
SCC
FRP
IPC
4C
AMFC
SMC
31
Stiffness (keq )
ke gc kc
ke + kc
ke gc kc
ke + kc
ke gc kc
ke + kc + ke kf kc
0
ke bi kmi kmc
bi (kmi kmc + 2ke (kmi + kmc )) + ke kmi kmc T
ke (c2 + c3 )(bm + cm )
(c2 + c3 )(bm + cm ) + 2ke c2 c3 T
ke
ke + kc
ke gc kc
ke + kc
ke kc (bi + bm )
(ke + kc )(bi + bm ) + 2ke kc T
PC
PCP
Table 4.5: Stiffness analysis.
the roots of Eq. 4.7 becomes unstable (with positive real part), then T0 can be determined by the Routh
criterion checking when an element of the associated column array becomes negative. In this specific case
all the entries of the Routh column array are positive with the exception of the fourth one that, after
simple algebraic manipulations, reduces to
r4 (T̃ )
=
2(b3m T̃ 2 + 2b2m T̃ (mm + (1 − gc )kc T̃ 2 )+
−4gc kc mm T̃ (mm − (1 − gc )kc T̃ 2 )+
+bm (m2m + 2(1 − 2gc )kc mm T̃ 2 + (1 − gc2 )kc2 T̃ 4 ))
Therefore, by testing the condition r4 (T̃ ) = 0 one obtains T0 . Then, by using Eq. 4.7 again, one
determines the frequency ω0 of the corresponding imaginary solution to be used in computing Tmax .
As concern numerical values for the parameter kc , setting gc = 1 and considering, as a benchmark
in this paper, mm = ms = 10 and bm = bs = 1 in Eq. 4.1, one can obtain the following characteristic
equation
(4.8)
G(s, T ) = 10s2 + s + kc + kc e−2sT
Studying the stability of Eq. 4.8, one can obtain the maximum admissible delay Tmax in the transmission channel, as a function of parameter kc . The results are presented in Fig. 4.3 and synthesized in
Table 4.7. Note that these values for Tmax have been obtained with fe = 0: larger values could have been
obtained by considering interactions with an external passive environment (with its proper parameters
be and ke ).
If a small value for parameter kc is chosen, due to the mentioned stability requirements, it could easily
happen that the environment stiffness ke is larger than kc . In such a case, a bad perception of the remote
stiffness is obtained, since perceived stiffness is, in this scheme: keq = (ke gc kc )/(ke + kc ) 6= ke .
32
CHAPTER 4. STABILITY AND PERFORMANCES
Scheme
Drift (∆)
1
gc kc
1
gc kc
1 + kf kc
gc kc
∞
FR
PE
SCC
FRP
IPC
4C
AMFC
2bi (kmi + kmc ) + kmi kmc T
bi kmi kmc
2c2 c3 T
(c2 + c3 )(bm + cm )
0
SMC
0
1
gc kc
bi + bm + 2kc T
(bi + bm )kc
PC
PCP
Table 4.6: Drift analysis.
kc
Tmax
< 0.05
∞
0.1
7.854
1
0.517
10
0.050
100
0.005
Table 4.7: Maximum admissible communication delay in the FR scheme
4.6.2
Position Error
Performances enhancement leads to define the parameters gc , kc in Eq. 3.3 in the following manner: gc = 1
for the symmetry of the master and slave controllers, and kc as large as possible (kc À 0) according to
the value of T , for possible inertia and damping perception problems; with this particular choices one
obtains: 1) values of perceived inertia and damping doubled with respect to the inertia and damping of
the master manipulator; 2) a very low tracking error; 3) an almost correct stiffness perception ke ; 4) a
negligible position drift.
Main problem is once again related to the stability of the whole scheme, since as the control parameter
kc increases stability is no more guaranteed. In fact, one can compute also in this case the maximum
admissible delay Tmax in the transmission channel in order to maintain the stability. By choosing gc = 1
and setting, as in the previous FR case, mm = ms = 10 and bm = bs = 1 in Eq. 4.1, one obtains the
following characteristic equation:
G(s, T ) = (10s2 + s + kc )2 − kc2 e−2sT
(4.9)
By applying the previously shown stability test to Eq. 4.9, one obtains the delay Tmax reported in
Table 4.8 as function of the parameter kc . One can observe that for kc < 0.05 the system described by
Eq. 4.9 is stable independently of time delay T .
4.6. PARAMETERS TUNING
33
STABILITY
5
4.5
4
Tmax (sec)
3.5
3
2.5
2
1.5
1
0.5
0 −1
10
0
1
10
2
10
10
Kc
Figure 4.3: Maximum time delay allowed for the FR scheme as a function of the parameter kc [logarithmic
scale].
kc
Tmax
< 0.05
∞
0.1
15.708
1
1.035
10
0.100
100
0.010
1000
0.001
Table 4.8: Maximum admissible communication delay in the PE scheme
According to the obtained results on time-delay Tmax , because of stability, low values of kc have to
be selected, thus leading to unacceptable results in terms of tracking, stiffness and drift. The following
figures show the tradeoff between stability and performances. From Fig. 4.4, one can observe that the
minimization of both 1/Tmax (left) and ∆ (right) leads to incompatible values of kc ; in fact, acceptable
values for both transmission delay (Tmax > 200 ÷ 300 msec) and position drift (∆ < 1 ÷ 10 mm) lead
to disjoint ranges for kc . Fig. 4.5 shows different stiffness perception (keq ), in the two cases kc = 5 (left)
and kc = 100 (right), as a function of the environment properties (i.e. ke ). As stated above for the FR
scheme, also in this case the values of the admissible time delay Tmax (computed with fe = 0) increase
in case of interaction with an external structured environment (be and ke ).
4.6.3
Shared Compliance Control
Ideal values for parameters in Eq. 3.4 are the following: gc = 1, kc À 0, kf = 0; and one should note that
using the local compliance control the perceived stiffness is modified and a position drift is introduced.
The following performances are obtained: 1) perceived inertia and damping doubled with respect to
the master one for T ¿ 1; 2) tracking error depending on the delay δ = T /(2bm ); 3) correct stiffness
perception; 4) no position drift. In reality, by choosing kf 6= 0, a correct stiffness perception cannot be
obtained anymore, since the remote compliance control modifies the perception of the environment.
As detailed in [86], this control system can improve stability in two possible manners: 1) the filter
34
CHAPTER 4. STABILITY AND PERFORMANCES
STABILITY
DRIFT
10
0.1
0.09
8
0.08
7
0.07
6
0.06
Drift (m)
1/T
max
(1/sec)
9
5
4
0.05
0.04
3
0.03
2
0.02
1
0.01
0 −2
10
−1
0
10
0 1
10
1
10
10
2
3
10
Kc
10
K
c
Figure 4.4: Stability (left) and position drift (right) properties of the PE scheme on varying of parameter
kc [logarithmic scale].
STIFFNESS (Kc=5)
STIFFNESS (Kc=100)
5
100
4.5
90
80
3.5
70
3
60
(N/m)
2
50
eq
2.5
K
Keq (N/m)
4
40
1.5
30
1
20
0.5
10
0
0
10
20
30
Ke (N/m)
40
50
0
0
100
200
300
400
500
Ke (N/m)
Figure 4.5: Stiffness perception keq on varying of the environment stiffness ke for two values of parameter:
kc = 5 (left), kc = 100 (right). The ideal stiffness (keq = ke ) is shown with dashed lines.
4.6. PARAMETERS TUNING
35
Gf (s) can be modeled in order to slightly increase kc , with respect to the FR scheme and with a desired
Tmax , thus increasing the tracking performances; 2) gc can be set to zero (no force feedback to the
operator), in order to avoid instability, in the case that transmission delay T is too high, maintaining
good tracking (mainly due to some kind of visual feedback for the operator) and good interaction with
the environment at the slave side because of the compliance control.
4.6.4
Force Reflection with Passivity
This scheme guarantees passivity, and therefore stability, for any value of its parameters. Unfortunately,
it has very poor efficiency in terms of performances. It happens that, due to the damping injection term
bi , unavoidable position tracking error and drift error are introduced and also a stiffness perception is
not allowed with this particular telemanipulation scheme.
4.6.5
Intrinsically Passive Controller
The choices kmc = ksc À 0, kmi = ksi À 0 for symmetry and bmi = bi to avoid wave reflections, in
Eq. 3.5 parameters, lead to obtain: 1) a double perceived inertia increased by the virtual inertia of the
controller and analogous damping term, for T ¿ 1; 2) a tracking error δ = T /(2bi ) depending on time
delay; 3) a stiffness perception similar to the environment stiffness and also depending on delay; 4) a
position drift ∆ = T /bi .
Stability is no more a problem in this case because of the passivity of the whole telemanipulation
control scheme, so the above parameters can be set without any constraint due to this requirement.
4.6.6
Four Channels
The parameters c1 , c2 , c3 , c4 , c5 , c6 , cm , cs presented in Eq. 3.8–3.9 are considered as dynamic systems
and not as simple scalar values, they can be set in order to achieve perfect transparency in the case of
zero time delay T , e.g. with cm = kc /s, as detailed in [91]. For this scheme one can obtain: 1) zero
perceived inertia and zero damping at the master side; 2) a zero tracking error; 3) a stiffness perception
equal to the environment stiffness; 4) no position drift. In fact, problems arise as time delay is involved,
perfect transparency is no more guaranteed if T 6= 0, and only a trade off between different performance
requirements can be achieved. For example, the parameter cm should be limited or set to zero due to the
inertia perception at the master side.
4.6.7
Adaptive Motion/Force Control
This telemanipulation scheme achieves perfect transparency, as shown in [168], and one can obtain: 1)
small perceived inertia and damping at the master side; 2) a zero tracking error; 3) a stiffness perception
equal to the environment stiffness; 4) no position drift. As in the previous scheme, problems arise when
a time delay T 6= 0 is present. In fact, stability is no more “a priori” guaranteed in this case.
In [168] it has been shown that stability is always achieved in case of free motion fe = 0 and,
furthermore, that small values of a and large values of c in Eq. 3.11 maintain stability, for every time
delay T , for a certain range of the damping and stiffness (be , ke ) of the external environment. Parameters
m̂i , b̂i , ki , ki1 should be set equal for the two manipulators (i = m, s) for the symmetry of the scheme;
further more, an algorithm for the on-line estimation of m̂i , b̂i must be implemented in the controllers.
4.6.8
Sliding-Mode Controller
The parameters mc , bc , and kc of the master controller can be set to achieve the desired impedance. By
setting kc = 0 (i.e. the perceived stiffness is the one of the environment) and tuning λ and φ, choosing
36
CHAPTER 4. STABILITY AND PERFORMANCES
the dynamics of the tracking error and the boundary layer of the sliding-mode, one obtains: 1) a desired
perceived inertia mc and damping bc ; 2) a tracking error T /bi , depending on the transmission delay; 3) a
correct stiffness perception; 4) a zero position drift. Further more, in order to compare this scheme with
the previous ones, it has been chosen mc = mm , bc = bm , and kc = 0 at the master controller.
This sliding-mode controller guarantees an ideal delayed tracking between master and slave positions,
but in the presence of structured environments (fe as a function of xs , vs ), it easily turns out to be
unstable. In fact, this scheme is intrinsically stable for fe = 0, otherwise it becomes very similar to the
FR, with the following characteristic equation
G(s, T ) = mc s2 + bc s + kc + (be s + ke )e−2sT
Using the previous benchmark (mc = mm = 10, bc = bm = 1 and kc = 0) this control leads to a
master manipulator identical to the one considered in both the FR and PE schemes. Moreover, if Tmax
is the maximum time delay to maintain stability, the following considerations hold: 1) Tmax decreases as
ke increases with a fixed be ; 2) Tmax initially increases and then decreases as be increases with a fixed ke .
Tables 4.9–4.10 show some values for Tmax as a function of ke and be , with respectively be constant
and ke constant. Fig. 4.6 shows Tmax as a function of both ke and be .
ke
Tmax
1
0.750
10
0.075
100
0.007
Table 4.9: Maximum admissible communication delay in the SMC scheme (be = 0.5)
be
Tmax
0.01
0.513
0.1
0.558
1
0.969
10
0.785
100
0.079
1000
0.008
Table 4.10: Maximum admissible communication delay in the SMC scheme (ke = 1)
4.6.9
Predictive Control
This telemanipulation system is rather similar to the FR scheme, being the main difference the presence of
the Smith predictor that calculates the force feedback in advance by using the available master position.
Ideal parameters in Eq. 3.12 are kc À 0, gc = 1, which lead to identical results with respect to the FR
scheme: 1) a double perceived inertia and damping; 2) a tracking error depending on delay T /(2bm ); 3)
a correct stiffness perception (the same as the environment); 4) no position drift.
As stability is concerned, two main problems have to be analyzed: 1) the possible time-delay error in
the Smith predictor, in fact, such a predictor requires the exact knowledge of the time-delay T ; 2) the
external forces acting at the slave. As a matter of fact, gc ¿ 1 is necessary to guarantee stability of the
closed loop function due to possible errors in the knowledge of the time delay T , see [122] for details,
thus reducing benefits of an high kc in correct stiffness perception and position drift. Furthermore, the
possible interaction with the environment and the presence of the force fe , that depends on both xs
and vs , introduce a delayed term in the closed loop function that cannot be compensated by the Smith
predictor, and this leads to a limited time delay Tmax in order to guarantee stability.
For example, by using mm = 10, bm = 1 as in the previous schemes, and kc = 100, bc = 10, gc = 1
for the controller’s parameters and assuming perfect knowledge of the time-delay T , the results shown
in Fig. 4.7 are obtained. These results are given in function of the stiffness ke and damping be in the
external environment force fe . Tables 4.11–4.12 summarize results for, respectively, be constant and ke
constant.
4.6. PARAMETERS TUNING
37
STABILITY
2
Tmax (sec)
1.5
1
0.5
0
−1
0
1
2
2
3
−1
0
1
−2
Log Be (Ns/m)
Log Ke (N/m)
Figure 4.6: Stability properties of the SMC scheme as a function of parameters ke and be .
STABILITY
2
(sec)
1.5
T
max
1
0.5
0
−1
0
1
2
Log Ke (N/m)
3
2
1
0
−1
−2
Log Be (Ns/m)
Figure 4.7: Stability properties of the PC scheme as a function of parameters ke and be .
38
CHAPTER 4. STABILITY AND PERFORMANCES
ke
Tmax
1
1.270
10
0.120
100
0.016
Table 4.11: Maximum admissible communication delay in the PC scheme (be = 0.5)
be
Tmax
0.01
1.034
0.1
1.078
1
1.493
10
1.473
100
0.054
1000
0.024
Table 4.12: Maximum admissible communication delay in the PC scheme (ke = 1)
4.6.10
Predictive Control with Passivity
Ideal slave controller parameters, shown in Eq. 3.14, are kc À 0 to achieve good performance and bc = bi
to avoid wave reflections. The following results, very similar to the IPC scheme ones, can be obtained:
1) a double perceived inertia and damping; 2) a tracking error depending on delay T /(2bm ); 3) a stiffness
perception also depending on delay; 4) a position drift which tends to 2T /(bi + bm ).
This scheme guarantees passivity, and thus stability, because of the choice of transmitting the wave
variables on the communication channel. Main limit of this control system is the impossibility to transmit
power from environment to the master manipulator, via the slave. In fact, power transmission is only
allowed from the operator to the environment and not vice versa, due to the particular regulator defined
in Eq. 3.13; the defined scheme is not fully bilateral.
4.7
Comparison and Comments
First of all, one can focus on stability via the observation that only the schemes based on the passivity
theory intrinsically guarantee the stability. Regarding the other schemes, as shown in the previous section,
the FR, PE and SCC schemes can be rendered stable with a proper choice of the control parameters
providing that T < Tmax , i.e. only for limited values of time delay. Moreover, in general the maximum
admissible delay Tmax increases from FR to PE and SCC schemes, that is the SCC scheme offers better
robustness in terms of stability. As underlined, the stability of the AMFC and SMC schemes strongly
depends on the external structured environment. PC stability is mainly related to a good knowledge of
the remote slave manipulator and of the transmission delay T , because of the use of the Smith predictor
within its control system.
As mentioned above, each telemanipulation scheme has both positive and negative aspects, and therefore it is hopefully possible to select the control scheme more suitable for the application that one has
to consider. Here below the main aspects concerning the choice of a teleoperation scheme are briefly
recalled.
The first aspect to be considered is the available information on the transmission time delay T . In fact,
the entity of the delay could be small (few milliseconds), medium (some tenth of second) or high (some
seconds or more). Further more, the delay could be constant or variable (with a certain distribution),
known or unknown, and, finally, it could be limited (with a certain maximum value Tmax ) or not. This
knowledge of the delay information permits to select some telemanipulation schemes and refuse others
because of the stability aspects.
The second main aspect to be taken into account is inherent to the desired performances, in terms of
tracking properties at the slave manipulator and perception of the environment (correct force feedback).
Some specifications have to be defined and taken into account during the project of the control scheme.
A third question is related to the aspects concerning the implementation and the necessary equipment
4.7. COMPARISON AND COMMENTS
39
for the development of the telemanipulation controller. Available resources in terms of sensors, computing
power, transmission bandwidth and so on are often crucial and they must be considered in the choice of
a simple or a more sophisticated control scheme.
Another important final aspect is the knowledge of the environment structure and of the task to be
carried out. In fact, the remote environment could be dissipative with no possibility of injecting power,
could have certain damping or stiffness properties, could have a maximum value for the exerted external
force or, as extreme case, an operator exerting unpredictable forces could even be connected to the slave
manipulator (fully symmetric telemanipulation scheme).
Only by paying attention to all these and other aspects one can choose a suitable telemanipulation
scheme for the necessities at hand and, at least, eliminate those that cannot satisfy the defined requirements.
40
CHAPTER 4. STABILITY AND PERFORMANCES
Chapter 5
Intrinsically Passive Controller
5.1
Introduction
Many different and interesting telemanipulation schemes, presented in the literature, have been shown in
Chapter 3 and compared in Chapter 4 after the definition of some performance indexes.
Because of the possibly large (and often time-varying) time-delay T , due to the communication channel, e.g. Internet, stability still remains a crucial point in every telemanipulation scheme. For this reason,
passivity theory has been largely used in order to achieve stability of the overall teleoperation system. In
this chapter, after a brief recall of the basics in passivity theory, the application to this telerobotics context of a control scheme based on the equivalence with passive physical systems is studied. This scheme
allows to achieve stability and good performances also in those cases where the time-delay is not constant.
Moreover, the multi-dimensional case is here explicitly taken into account, through the considerations of
tasks in which not only linear movements/forces are present but also rotations and torques. Simulation
results are then presented and discussed.
The controller is based on the so-called Intrinsically Passive Control (IPC), see e.g. [101, 144, 146],
and it is applied to a multiple input/multiple output (MIMO) case that considers both translational and
rotational variables. In particular, since multi-dimensional springs and damping elements are required in
the definition of an IPC for this case, the approach originally presented in [57] and re-formulated in [144]
is adopted for the problem at hand.
This chapter is organized as follows. The next section briefly recalls the main definitions about
passivity, scattering variables and families of spatial compliance and damping; the control scheme based
on the IPC concepts is then presented; some simulation results with two 3-dof planar manipulators are
reported and discussed. Finally, the last section of this chapter is dedicated to the presentation of a new
passivity based approach for the enhancement of the performances focusing on the position drift between
manipulators.
5.2
Definitions
This section briefly presents the definitions of some topics useful for the remain of the chapter. Such
arguments are: passivity theory, scattering variables theory and spatial compliance and damping families,
widely used in the following sections.
41
42
5.2.1
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
Passivity
Passivity theory has always been considered as a priority way for the control of physical systems, since
it is based on energy and power flow concepts and it guarantees stability of an overall inter-connection
of more systems. See e.g. [33, 96, 120, 133, 156] as detailed presentations on this topic.
A multi-dimensional mechanical system with velocity column vector V and force vector F is said
“passive” if the following equation holds
Z t1
e(t1 ) ≤ e(t0 ) +
F T (τ )V (τ )dτ
(5.1)
t0
where e(·) ≥ 0 represents the so called “energy” stored in the system, F T V = p(·) is the supplied
“power” and t0 < t1 are different time samples. This equation states that internal creation of energy is
not admissible for passive systems.
Eq. 5.1 can be written in a differential form as
de(t)
= p(t) − pdiss (t)
dt
(5.2)
where pdiss (·) ≥ 0 represents the dissipated power.
The energy is related to the state of the system and since a passive system is characterized by an
energy function bounded from below, the system is always marginally stable. Furthermore, if dissipation
elements are present everywhere, there are always asymptotically stable equilibrium positions. Finally,
by “shaping”, via a certain control system, the internal energy of the system, it is possible to change
these stable positions to some desired one.
A very important property of passive systems is that every kind of inter-connection of passive systems
leads to a passive system.
5.2.2
Scattering Variables
In a teleoperation scheme, because of delays in communication, the signals to be transmitted in the
communication channel have to be properly defined in order to guarantee stability for the whole system;
in fact, as widely known, time delays are often a cause of instability.
Scattering variables, see e.g. [114], represent a powerful way to maintain passivity (and therefore
stability) in a communication channel, independently on the time delay in the data transmission.
The basic idea besides this concept is to transmit a proper combination of velocities and forces instead
of the velocity and force signals V and F . At each side of the channel, one can compute the value to
be transmitted with a two input/two output algebraic system: inputs are the scattering variable coming
from the opposite side and the local velocity, outputs are the scattering variable to be sent to the opposite
side and the local force.
At each side of the bilateral telemanipulation system, the scattering variables are defined as
S+ =
F +b V
√
2b
S− =
F −b V
√
2b
(5.3)
where b represents the characteristic impedance of the communication line. Note that S + usually represent
the transmitted scattering variable, while S − is the received one.
An important result associated to scattering variables is that the total power flow can be expressed
as an algebraic sum of two “powers” depending only on the two scattering variables:
p = FTV =
1 + 2 1 − 2
||S || − ||S ||
2
2
(5.4)
5.3. THE IPC TELEMANIPULATION SCHEME
5.2.3
43
Spatial Compliance and Damping Families
In dealing with systems with multiple degrees of freedom, it is useful to introduce, as shown in [57], two
“spatially affine impedance families” with compliance and damping properties. These families represent,
in fact, passive systems and will be used in the telemanipulation control scheme. Using the notation
presented in [57], one can define:
• Spatial Compliance Family
·
GC =
Rr M̃o
0∗
Kt ∆P
0
¸
∈ R4×4
(5.5)
with ∆P = Pr −Pv , M̃o = Λo RvT Rr −RrT Rv Λo , Kt = Rt Γt RtT , where P and R respectively represent
position vectors and orientation matrices; subscripts r and v indicate the robot end effector and
the virtual equilibrium (reference). Terms Rt , Pv , Rv , Γt and Λo are the proper parameters of the
family.
• Spatial Damping Family
·
GD =
Rr M̃o0
0∗
Bt ∆Ṗ
0
¸
∈ R4×4
where ∆Ṗ = Rr Vr − Rv Vv (V represents velocities in the local frame), M̃o0 = (Ω̃r − Ω̃v )Λ̂o + Λ̂o (Ω̃r −
Ω̃v ) (Ω̃ is a skew-symmetric matrix defined with angular velocity Ω), Bt = R̂t Γ̂t R̂tT . The terms R̂t ,
Vv , Ω̃v , Rv , Γ̂t and Λ̂o are the parameters of the family.
As discussed in [57], it is possible to define wrenches W (forces and torques) with the following
correspondences:
·
· T
¸
¸
Rr Kt ∆P
Rr M̃o Kt ∆P
→ WC =
(5.6)
GC =
Mo
0
0∗
·
· T
¸
¸
Rr M̃o0 Bt ∆Ṗ
Rr Bt ∆Ṗ
=
→
W
(5.7)
GD =
D
0
0∗
Mo0
where Mo , Mo0 are vectors containing the elements of the skew-symmetric matrices M̃o , M̃o0 .
5.3
The IPC Telemanipulation Scheme
The intrinsically passive controller (IPC) telemanipulation scheme already introduced in Subsection 3.4.5
is here presented again with a multi-dimensional approach.
The key idea is to interconnect the two robots of a bilateral telemanipulation scheme with a control
system that guarantees passivity. This is obtained by using two IPCs, that can be interpreted as composed
by physical objects (such as springs, masses and damping elements, guaranteeing physical dissipation)
and scattering variables for the passive transmission on the communication channel. In such a way, all
the elements that compose this peculiar scheme (the manipulators, the controllers and the transmission
channel, as well as the human operator and the remote environment) are passive, guaranteeing the
overall stability. Fig. 5.1 shows this bilateral telemanipulation scheme. This problem has been recently
considered in [147] also in the general framework of port-controlled Hamiltonian systems.
Main difference between the approach here below presented and others is the considered number of
degrees of freedom. The main problem in this case is the coupling between the different degrees of freedom
that must be kept into account.
44
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
SLA V E
M A STER
Com m unication
channel
Environment
H uman
operator
Figure 5.1: IPC telemanipulation scheme.
5.3.1
The IPC Definition
As Fig. 5.1 has already put into evidence, an IPC for both the master and the slave robots is necessary
and has to be defined. Each controller has the structure illustrated in Fig. 5.2, where it is represented
by “physical” mechanical elements Mc , Kc , Kv , Bc , Bv , corresponding to a virtual inertia, two springs
and two damping elements respectively. The scheme of Fig. 5.2 is a physical interpretation of the control
algorithm, that exchanges force/velocity signals with the manipulator and the communication line at the
port 1 and at the port 2. The basic idea is that the dynamics of the inertia Mc is simulated in the control
algorithm, subject to the forces of the springs and damping terms; then, the control action is applied
to both the master and slave side through the ports 1 and 2. The only difference with respect to the
IPC telemanipulation scheme proposed in the Subsection 3.4.5 is the number of degree-of-freedom. It
is worth noticing also that this control scheme is an extension to the telemanipulation case of similar
control structures already successfully applied in the field of robotics manipulation, see e.g. [101, 146].
As already mentioned, both translational and rotational movements are simultaneously considered
and therefore springs Kc , Kv and dissipative elements Bc , Bv must be defined consequently, as discussed
in the previous definitions, see Eq. 5.6–5.7.
In particular, since a relatively simple case study with two 3-dof planar manipulators is considered in
the following section, Eq. 5.6 (spatial spring) simplifies to:
·
¸ 

·
¸
Pax − Pbx
Fxy
K

(5.8)
=  t Pay − Pby
WC =
mθ
λo sin(Paθ − Pbθ )
where Fxy is the force on the plane, mθ represents the scalar torque, Kt , λo are parameters and subscripts
a, b indicate the two reference frames connected by the spring. The sine function has been obtained from
5.4. CASE STUDY
45
M
c
Kv
Kc
Robot
End
Eff
ector
(Port1)
Scattering
Varia
bles
(Port2)
V irtual
Ine
rtia
Bv
Bc
Figure 5.2: Physical interpretation of an intrinsically passive controller (master and slave IPC).
the general definition of M̃o as in Eq. 5.5. Note that the above equation describes both the springs Kc
and Kv .
As far as damping are concerned, from Eq. 5.7 one obtains:
·
¸ 

·
¸
Ṗax − Ṗbx
B
Fxy
t

(5.9)
=
WD =
Ṗay − Ṗby
mθ
λ̂o (Ṗaθ − Ṗbθ )
where Bt , λ̂o are parameters. Eq. 5.9 represents both the damping terms Bc and Bv .
With reference to Fig. 5.2, the port 1 is directly connected to the robot end-effector (master or,
respectively, slave) and the spring Kc determines the control wrench output WIP C of the IPC to be
applied to the manipulator; on the other side, the port 2 is indirectly connected to the opposite robot
(slave or, respectively, master) via the scattering variables in the communication channel, and spring Kv
is associated with the force to be transmitted via this port. Damper Bv is important for the impedance
matching with the characteristic impedance of the communication channel b, see e.g. [147], while Bc is
used for the so called damping injection, see [143].
Finally, the control torques Ψm and Ψs that the two IPC applies to the master and slave manipulators
are computed from the wrench WIP C generated by the spring Kc in the virtual model of the two controller:
Ψm
T
= J T (Q)WIP C = Jm
(Q)WC (Kc )
·

¸ 
Prx − PM x
K
(K
)
t
c

Pry − PM y
= J T (Q) 
λo (Kc ) sin(Prθ − PM θ )
(5.10)
where J(Q) is the Jacobian matrix of the master (slave) manipulator, WC (Kc ), Kt (Kc ), λo (Kc ) represent
the wrench and the parameters associated with spring Kc . Subscripts r and M indicate the master (slave)
end effector and the virtual mass Mc . In a similar way, one can define the control torque Ψs for the slave
manipulator.
5.4
Case Study
The parameters definition for the two master and slave manipulators, the two IPC controllers and the
scattering variables are now introduced, together with the description of the simulations carried out,
which results are detailed in the next section.
46
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
5.4.1
Master and Slave Manipulators
A fully symmetric bilateral telemanipulation scheme has been simulated, based on two 3-dof planar
robots. In Table 5.1, the Denavit-Hartemberg and the dynamic parameters of the robots, expressed in
the International Units (kg, m, s), are reported; Rxyz represents the position of the center of mass, m
and i are the mass and the inertia of each link respectively. Figure 5.3 shows the structure of the chosen
manipulator with its end-effector.
Link
1/2/3
α
0
a
1
θ
0
d
0
m
1
Rx
-0.5
Ry
0
Rz
0
i
0.0833
Table 5.1: Denavit-Hartemberg and dynamic parameters of the master and slave three-dof planar manipulators.
Link 2
Link 3
Link 1
End-effec
Figure 5.3: The planar three-dof manipulator.
The dynamic model of the manipulator can be written in the usual matrix form
M (Q)Q̈ + C(Q, Q̇)Q̇ = Ψ + J T (Q)Fext
(5.11)
where Q = [θ1 , θ2 , θ3 ]T is the joint position vector, M (·) is the inertia matrix, C(·, ·) contains the Coriolis
and centrifugal terms, Ψ is the input torque vector, J(·) is the Jacobian matrix and Fext is the force
applied to the robot by the human operator or by the environment. The gravitational term G(Q) is not
present since the manipulators are considered in an horizontal plane. The control torque vector Ψ is
computed as in Eq. 5.10.
The equations of the forward kinematics of the manipulator are:

 Prx
Pry

Prθ
= a1 c1 + a2 c12 + a3 c123
= a1 s1 + a2 s12 + a3 s123
= θ1 + θ2 + θ3
that represent the spatial displacement (Prx , Pry ) and the orientation Prθ of the manipulator end-effector,
where cij = cos(θi + θj ) and sij = sin(θi + θj ).
5.4. CASE STUDY
5.4.2
47
Master and Slave IPC
Due to the symmetry of the telemanipulation system, also the IPCs at the master and slave sides have
been configured with the same structure, see Fig. 5.2, and with the same values, reported in Table 5.2.
Due to the above mentioned impedance matching problem one has to choose Bv equal to the characteristic
impedance of the transmission line b = 10 shown here below.
Parameters
Mass
Value
Mc
Inertia
0.1
Parameters
Value
0.1
Kc
Kt
500
0
0
500
Bc
Bt
10 0
0 10
Kv
Kt
500
0
0 500
λo
500
λo
500
Bv
λ̂o
10
Bt
10 0
0 10
λ̂o
10
Table 5.2: IPC parameters for both the master and slave controllers.
5.4.3
Scattering Variables
The scattering transformation at the master side can be written as

r

2

+
 Sm =
Fm − S −
b r m

2 −
Fm

 Vm =
−
S
b
b m
(5.12)
−
(t) = Ss+ (t−T ) is the output scattering variable at the slave side delayed
where the input wave variable Sm
with time T , Fm is the force vector at the communication port 2 with the master IPC, and b = 10 is the
+
(t)
characteristic impedance of the line; the outputs of the transformation are the scattering variable Sm
sent to the slave and the master IPC velocity vector Vm . In fact, as this particular example is concerned,
velocities and forces are replaced with generalized twists and wrenches. This scattering transformation
is shown in Fig. 5.4.
Similarly, the equations for the slave side are

r

2

 Ss+ = −
Fs − Ss−
br
(5.13)

2 −
Fs

 Vs =
+
S
b
b s
+
(t − T ), Fs is the force vector at the communication port 2 with the slave manipulator
where Ss− (t) = Sm
IPC and the differences in the signs of the terms of Eq. 5.12 and Eq. 5.13 are due to the fact that one
has to consider Vm → −Vs and Fm → −Fs in this telemanipulation scheme.
Summarizing, Fm , Vm and Fs , Vs are the power variables exchanged at the port 2 between the IPC
and the communication channel (at the master and slave controller respectively).
As shown in [114], the impedance matching is necessary in order to avoid wave reflections in the
communication channel. This means that the damper Bv of the IPC, see Fig. 5.2, must be equal to the
parameter b of the scattering transformations presented in Eq. 5.12–5.13.
48
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
Fm
+
+
Sm
2/b
-
Master
IPC
Comm unic
channel
1/b
Vm
Sm
+
-
2/b
Figure 5.4: Scattering transformation at the master side.
5.5
Simulations and Results
Two different kinds of simulations, detailed in this section, have been carried out:
1. a desired trajectory is imposed at the master by the human operator without interaction with any
environment (free space movement)
2. a motion is imposed at the master by the user while an interaction with an obstacle takes place at
the slave side (structured environment perception)
Such situations are typical in telerobotics and they are very useful to test: 1) trajectory tracking
capabilities at the slave side; 2) force feedback at the master side in order to correctly perceive the
remote environment. The simulations have been carried out with a constant time delay of T = 0.2
seconds.
A first simulation has been carried out applying a constant force Fx = 10 N along the x-direction
for 2 sec. at the master manipulator, with and without the presence of an obstacle at the remote side.
Figures 5.5–5.6 show the results in both the two cases of free space movement and interaction with a wall.
As one can appreciate in Fig. 5.5, considering the time-delay T , the tracking capability in the free space
of the slave manipulator is satisfactory. When an obstacle is encountered at the remote side, see Fig. 5.6,
the master manipulator obviously initially passes over the slave position; then, it stops in a configuration
that depends both on the force applied by the operator and on the compliance of the springs and finally,
when the operator stops to apply any force, there is a convergence on a symmetric configuration of the
two manipulators.
Two other simulations connected to specific tasks have been also studied, considering both translational and rotational displacements:
1. the screw of a bolt in a fixed position (Prx , Pry fixed; Prθ varying) as shown in Figure 5.7
2. the turn of a grip handle along a circular path (constraint on Prx , Pry , Prθ ) as shown in Figure 5.8
Figures 5.9–5.10 shows the results obtained in these two more complex tasks. In the screwing case,
the operator applies a constant torque Mθ = 10 N m for 2 seconds. The master end-effector has a limited
displacement along the x and y directions, during screwing, due to transmission delays and manipulator
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
49
2
1.8
prx (m)
1.6
1.4
1.2
1
0
0.5
1
1.5
2
2.5
time (s)
3
3.5
4
4.5
5
Figure 5.5: Free space: master (solid) and slave (dashed) displacements along x-direction.
1.8
1.4
rx
p (m)
1.6
1.2
1
0
0.5
1
1.5
2
2.5
time (s)
3
3.5
4
4.5
5
0
0.5
1
1.5
2
2.5
time (s)
3
3.5
4
4.5
5
0
fx (N)
−5
−10
−15
−20
Figure 5.6: Interaction with an obstacle (Px = 1.3): master (solid) and slave (dashed) displacements
along x-direction and force applied to the environment at the slave side.
controller. In the second task with the grip handle, the operator imposes a circular trajectory (with
planar equation (x − 1)2 + y 2 = 0.32 and with the third slave manipulator link constrained to remain
perpendicular to such a trajectory) in the counter-clockwise direction and perceives the correct orientation
from the grip handle at the slave during his path.
Both these specific tasks have shown very satisfactory results; in fact, the human operator imposes,
through the master manipulator, the desired movements on the external objects (the bolt and the grip
handle) and receives from them the correct perception of the physical constrains that limit the translation
and the rotation of the two objects at the remote side.
5.6
Position Drift in a Passivity Based Approach
This ending section of the chapter focus on the problem of position drift attenuation with a passivity
based approach in a simple one-dof telemanipulation scheme.
Position drift has been introduced in Subsection 4.4.4 within the description of the performances of
50
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
Screw ing a bol
t
Figure 5.7: [Task 1] Screwing a bolt.
Turning a
grip handle
Figure 5.8: [Task 2] Turning a grip handle along a circular path (with the last link of the manipulator
perpendicular to the trajectory).
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
51
1
0.8
pry (m)
0.6
0.4
0.2
0
−1
−0.5
0
prx (m)
0.5
1
1.5
−0.2
−0.4
θ (rad)
−0.6
−0.8
−1
−1.2
−1.4
−1.6
0
0.5
1
1.5
time (s)
2
2.5
3
Figure 5.9: Screwing a bolt (Px = 1, Py = 0): master (solid) and slave (dashed) motion and end-effector
orientation Pθ .
1
ry
p (m)
0.5
0
−0.5
−3
−2
−1
0
prx (m)
1
2
3
θ (rad)
0
−0.5
−1
−1.5
0
0.2
0.4
0.6
0.8
1
time (s)
1.2
1.4
1.6
1.8
2
Figure 5.10: Turning a grip handle ((x−1)2 +y 2 = 0.32 , with the last link perpendicular to the trajectory):
master and slave motion and orientation.
52
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
a telemanipulation scheme. In this section, after a short description of the considered telemanipulation
scheme with intrinsically passive controller, the position drift problem statement is presented, a solution
in passivity terms in introduced and, finally, the results in a benchmark example are presented and
commented. Further details will appear in [14]. This topic has been also recently studied in the literature,
see e.g. [115, 116, 162, 163].
5.6.1
IPC Telemanipulation Scheme
The telemanipulation scheme here considered is the one of the case study presented in Section 4.2 joined
with the intrinsically passive controller introduced in Subsection 3.4.5.
Equations are here briefly reported, with a slightly different sign convention, without any comment;
see the mentioned sections for details. The manipulators dynamics are the same and are described by
fm
fs
=
=
(ms2 + bs)xm
(ms2 + bs)xs
and the external forces exerted by the human operator and the external environment can be so represented:
fm
fs
= fh − fmc
= fe − fsc
The equations of the two intrinsically passive controllers are
fmc − fmi
fmc
fmi
fsc − fsi
fsc
fsi
= (mc s2 + bc s)xmc
= kc (xm − xmc )
= (kv + bv s)(xmc − vmi /s)
= (mc s2 + bc s)xsc
= kc (xs − xsc )
= (kv + bv s)(xsc − vsi /s)
the scattering transformations are represented by the following
√
+
= (fmi + bi vmi )/√2bi
Sm
−
Sm
= (fmi − bi vmi )/ √2bi
Ss+ = −(fsi + bi vsi )/√2bi
Ss− = −(fsi − bi vsi )/ 2bi
and, finally, the communication channel can be described with the next two equations in the Laplace
domain:
+
Ss− = e−sT Sm
−
−sT +
Sm = e
Ss
5.6.2
Problem Statement
Position drift, as already explained, can been considered as a parameter for evaluating the performances
of a telemanipulation scheme. In fact, on carrying out complex tasks, it is important to obtain high
fidelity display of positions and forces to let the operator feeling immerse into the remote environment,
i.e. to obtain transparency between master and slave manipulators.
One can define the position drift ∆(t) between master and slave manipulator displacements, at a
certain time t, as:
∆(t) = xm (t) − xs (t)
where xm (t), xs (t) are respectively the master and slave positions.
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
53
One of the main problems for position drift, as discussed in the following, is connected to the transmission delay (T ) in the communication channel between the two manipulators; other important factors
affecting position drift are the dynamics of both the manipulators and both the passive controllers.
Section 4.5 and Table 4.6 have already shown the obtainable position drift in the current case; results
are now formulated in the case of constant force fh (t) = f¯h applied by the operator, for the telemanipulation scheme which equations have been presented in the previous subsection, in the three following
cases:
A. No environment interaction (no force at the slave)
B. Stiff environment (force proportional to position at the slave)
C. Viscous environment (force proportional to velocity at the slave)
A. No Environment
In case no force is exerted at the slave fe (t) = 0, one can compute the following steady-state position
drift:
¯ A = 2bi (kc + kv ) + T kc kv f¯h = δ̄ f¯h
∆
2bi kc kv
where the constant term
2bi (kc + kv ) + T kc kv
δ̄ =
2bi kc kv
depends on the parameters bi , kc , kv and on the time delay T .
Fig. 5.11 shows master and slave positions in a simulation with no environment interaction. Obviously,
as a consequence of a constant force, one obtains a constant velocity on both sides because of the
dissipative elements (dampers) in the telemanipulation scheme.
B. Stiff Environment
Interaction with a stiff environment (modeled as fe (t) = −ke (xs (t) − xe )) at the slave side produces a
zero velocity steady-state condition, with the following position drift:
¯ B = 2bi (kc + kv ) + T kc kv f¯h = 2δ̄ f¯h
∆
bi kc kv
where one can observe that it does not depend on the stiffness coefficient ke of the environment.
Fig. 5.12 shows master and slave positions in a simulation with stiff environment interaction. After a
transient period, one obtains a zero velocity on both sides because of the stiffness of the environment at
the slave.
C. Viscous Environment
A viscous environment is represented with the equation fe (t) = −be ẋs (t), where be represents the viscous
coefficient; interaction with such an environment at the slave produces a constant velocity steady-state
condition, with the following position drift:
¯ C = (b + bc + be )(2bi (kc + kv ) + T kc kv ) f¯h
∆
(2b + 2bc + be )bi kc kv
¯ C can be rewritten as:
and therefore, using the constant term δ̄, ∆
¯ C = 2(b + bc + be ) δ̄ f¯h
∆
2(b + bc ) + be
(5.14)
54
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
Master/Slave positions, Position Drift
5
position (m)
4
3
2
1
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
0.14
position drift (m)
0.12
0.1
0.08
0.06
0.04
0.02
0
Figure 5.11: Master (solid) and Slave (dashed) displacements in the case of no environment interaction.
Master/Slave positions, Position Drift
2.5
position (m)
2
1.5
1
0.5
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
0.25
position drift (m)
0.2
0.15
0.1
0.05
0
Figure 5.12: Master (solid) and Slave (dashed) displacements in the case of stiff environment interaction.
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
55
Master/Slave positions, Position Drift
3
position (m)
2.5
2
1.5
1
0.5
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
position drift (m)
0.2
0.15
0.1
0.05
0
Figure 5.13: Master (solid) and Slave (dashed) displacements in the case of viscous environment interaction.
Fig. 5.13 shows master and slave positions in a simulation with viscous environment interaction.
As one can easily verify the two previous cases A and B, i.e. with no environment interaction and
stiff environment, are particular representations of case C with, respectively, be = 0 and be = +∞.
Results, concerning this implementation, shown in the Figures 5.11, 5.12 and 5.13 have been obtained
with the following parameters: m = 10, b = 1, mc = 1, bc = 20, kc = 500, kv = 500, bv = 20, bi = 20,
with time delay T = 0.2, external force f¯h = 10, stiffness coefficient ke = 1000000, position xe = 2 and
viscous coefficient be = 100.
5.6.3
Variable Rest Length Springs
The key idea is to partially (or even totally) compensate position drift, analyzed in the previous subsection,
introducing further passive terms in both master and slave controllers. At this aim, springs with variable
rest length are considered.
The variations in the rest lengths of the springs are developed as a method to reduce or avoid position
drifts and to achieve good transparency properties. This method guarantees also passivity, as shown in
the following, and can be easily implemented by adding an energetic port for each spring varying his rest
length.
The typical equation for a linear spring is
f = k(x1 − x2 )
where the resulting force f depends on a stiffness coefficient k and on the difference between the positions
x1 , x2 of the objects linked by the spring.
To keep into account a varying rest length in the spring, one can write
f = k(x1 − x2 + xl )
56
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
where xl represents the spring’s rest length.
One can consider a further energetic port associated to the springs with variable rest length in such
a way
½
fl = k(x1 − x2 + xl )
vl = ẋl
where fl , vl represent respectively force and velocity associated to the new energetic port.
The related spring potential energy is
ep =
k
(x1 − x2 + xl )2
2
and the overall power exchange is
ptot = f1 v1 − f2 v2 + fl vl =
d
ep
dt
which shows a three ports system, with two ports associated to the power exchanges with the two objects
connected to the spring and the last port associated with the variations of the rest length; v1 , v2 represents
velocities of the linked objects (i.e. of the two ends of the spring), f1 = f , f2 = f are forces exerted on
the two objects. The above equation states that the system is lossless or, equivalently, passive without
any power dissipation.
Figure 5.14 shows two springs with variable rest length and Figure 5.15 shows the bond graph equivalent
representation of such kind of springs.
k
xl
x1
x2
k
x1
xl
x2
Figure 5.14: Springs with variable rest length: case xl > 0 (upper part) and case xl < 0 (lower part).
5.6.4
Proposed Solution
The control system proposed in this subsection compensate the difference between the positions of the
two manipulators varying properly the rest lengths on master and slave controller’s springs.
A “supervisor” is created in order to compute the rest lengths to be imposed to the strings, in this way
one obtains an adaptive controller, which varies his parameters according to the different environment
one has to interact with.
Main goal of the supervisor is to measure or to compute the human operator applied force (fh ) and
the impedance of the environment (be ) in order to know the necessary compensation of the position drift.
The supervisor is based on both position and force measurements and it has to know the time delay
T too. In fact, as above described, position drift depends on these factors as well as on the parameters
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
57
C:k
v1 - v2 + vl
f
v1 : Sf
f
v1
f
v2
0
f
Sf : v2
vl
vl : Sf
Figure 5.15: Bond graph model of a spring with variable rest length.
of the same controllers. Force measures and known time delay are assumptions, not necessary in general
in the previous IPC telemanipulation schemes, that will be object of future researches.
Key idea of both the master and slave supervisor is to compute and, possibly, compensate half of the
position drift ∆(t), defined as in Eq. 5.14, on the two side of the telemanipulation scheme; drift to be
compensated on each side becomes:
˜
∆(t)
=
b + bc + b̃e (t) ˜
δ̄ fh (t)
2(b + bc ) + b̃e (t)
(5.15)
where the symbol tilde (˜) indicates that some variables have to be estimated, since they could be not
available on both side of the scheme.
Supervisor acts according to the following steps:
1) Identification of the applied external force (f˜h (t))
2) Identification of the environment impedance (b̃e (t))
˜ based on the formula presented in Eq. 5.15
3) Computation of half of the position drift (∆)
4) Local compensation of the position drift via proper spring’s rest length setting
Previous steps can be solved differently on each side of the scheme, i.e. the master and the slave.
Since our telemanipulation system is perfectly symmetric, one can define as the master the side of the
scheme in which power is inserted from the human operator and, on the converse, the slave is the side in
which power is extracted from the external environment; these two cases can be simply discriminated by
observing the sign of the product f (t)ẋ(t).
Master
Supervisor works on the following variables: external force (fh ), manipulator velocity (ẋm ), time delay
(T ) and is based on the controller parameters. Previous steps becomes in this case:
58
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
1) Applied external force is
f˜h (t) = fh (t)
2) ẋm (t) is compared with a threshold velocity v ∗ ' 0
2.1) If |ẋm (t)| ≤ v ∗ then
b̃e (t) = +∞
2.2) If |ẋm (t)| > v ∗ then
b̃e (t) = max(fh (t)/ẋm (t) − 2b − 2bc , 0)
in fact, the perceived impedance at the positive power side is be + 2b + 2bc , because of the
manipulators and dampers in the two IPCs
3) Computation of half of the position drift leads to
˜ m (t) = δ̄fh (t)
∆
(5.16)
in the case 2.1; while, in the case 2.2, it leads to
˜ m (t) = δ̄ max(fh (t) − (b + bc )ẋm (t), fh (t)/2)
∆
(5.17)
˜ m (t) and this leads to the following
4) The master controller spring rest length is set to xml (t) = ∆
controller force:
˜ m (t))
(5.18)
fmc (t) = kc (xm (t) − xmc (t) + ∆
Slave
Supervisor works on the following variables: external environment force (fe ), manipulator velocity (ẋs ),
time delay (T ) and is based on the controller parameters. Previous steps becomes in this case:
1) Applied external force is
f˜h (t) = fe (t) − 2bẋs (t) − 2bc ẋs (t)
in fact, perceived force at the negative power side is fh − 2bv − 2bc v, because of part of the applied
external force is compensated by the dampers in the two IPCs
2) ẋs (t) is compared with a threshold velocity v ∗ ' 0
2.1) If |ẋs (t)| ≤ v ∗ then
b̃e (t) = +∞
2.2) If |ẋs (t)| > v ∗ then
b̃e (t) = −fe (t)/ẋs (t)
3) Computation of half of the position drift leads to
˜ s (t) = δ̄fe (t)
∆
(5.19)
in the case 2.1; while, in the case 2.2, it leads to
˜ s (t) = δ̄(fe (t) − (b + bc )ẋs (t))
∆
(5.20)
˜ s (t)) and this leads to the following
4) The slave controller spring rest length is set to (xsl (t) = ∆
controller force:
˜ s (t))
(5.21)
fsc (t) = kc (xs (t) − xsc (t) + ∆
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
59
The following two final observations can be made: 1) one can easily verify that the parameter b of
both manipulators isn’t strictly necessary in computations, by setting b = 0 in the master and slave
supervisors equations, manipulators viscous term b would be seen as part of the environment impedance
b̃e (t) leading automatically to a correct position drift compensation; 2) position drift compensation via
springs rest lengths has been expressed in this subsection as a linear function of force and velocity terms
˜ s (t) = c1 fe (t) + c2 ẋs (t).
˜ m (t) = c1 fh (t) + c2 ẋm (t) and ∆
with coefficients properly defined, i.e. ∆
5.6.5
Passivity Considerations
Main aim of this subsection is to consider the passivity aspects of the proposed solution. In fact, as one
can easily put into evidence the above proposed adaptive control with variation of the springs rest lengths
does not maintain passivity property.
The obtained system can be modeled as in Figure 5.16, the supervisor could inject power into the
whole system thus leading to a no more passive system.
Supervisor
External fh
force xm
fmc
Manipulator
xm
fml
xml
Intrin
sicall
y f
mi
Passive
vmi
Controll
er
Figure 5.16: One side of the telemanipulation scheme with supervisor control inserted.
This fact can also be pointed out by considering the following equations, in the state-space representation, of the master side of the telemanipulation scheme:
 




ẋm
xm
0
1
0


 

ẍm  =  −kc /m −(b + kc c2 )/m kc /m   ẋm  + ...




ẋmc
xmc
0


 0
0


·
¸
0
0


fh


... +  (1 − kc c1 )/m 0 

−ẋmc
0
 −1 


¸
·
¸
·
xm


0
1
0
ẋm


 ẋm  + ...
=


fmc
kc kc c2 −kc


xmc ¸


¸·
·


f
0
0

h

... +

−ẋmc
kc c1 0
The inner product between the two vectors [ẋm fmc ]T and [fh − ẋmc ]T represents the power injected
into this system and, considering the matrix that expresses the direct connection between these two
vectors
·
¸
0
0
D=
kc c1 0
one can observe that D + DT is not positively defined, thus one can assert that the analyzed system is
not passive (q.e.d.); see e.g. [25, 26, 155] for general considerations on Linear Matrix Inequalities (LMI).
60
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
In order to achieve passivity in the proposed controller another approach is now proposed, again based
on the previous observations and by taking into account passivity requirements.
Key idea of this new method is that energy storage in the spring rest length can be allowed only if
external power supplied from the human operator is injected, otherwise one could create energy into the
system thus leading to a no more passive system.
This fact can be well explained via a bond graph scheme, as shown in Figure 5.17.
C:k
c
.
.
.
' x - x
fmc
m
mc + xml
M A ST E R
fmc
.
xm
'
fmc
.
x
1
0
m
.
'' x m
fmc
'
fmc
.
xmc
IPC
.
' x
fmc
ml
M TF
Figure 5.17: Telemanipulation scheme with passive supervisor control inserted (bond graph representation).
Equations of this new master and slave passive controllers become:
½
fmc (t) = kc (xm (t) − xmc (t) + xml (t))(1 + ẋml (t)/ẋm (t))
fsc (t) = kc (xs (t) − xsc (t) + xsl (t))(1 + ẋsl (t)/ẋs (t))
(5.22)
where the new variables ẋil (t) with i = m, s (variation of the springs rest length) have to be properly
defined in order to achieve the major position drift compensation compatible with passivity constrains.
˜ i at each time instant; practically, one can use a proportional
In fact, one should have ideally xil = ∆
˜
controller to define the value ẋil = kp (∆i − xil ).
In order to mitigate effects of term ẋil /ẋi , with i = m, s, that appears into both master and slave
controllers, one can define ẋil (t) as a function of ẋi (t) in order to avoid inverse proportionality in the
manipulator velocity term. One can choose:
½
˜ m (t) − xml (t))ẋ2 (t)
ẋml (t) = kp (∆
m
(5.23)
˜ s (t) − xsl (t))ẋ2s (t)
ẋsl (t) = kp (∆
0
(t) in the case that
where the square terms ẋ2i (t) have been used in order to achieve fic (t) = fic
manipulator velocities are zero.
5.6.6
Obtained Results
In order to test the presented solutions, the three kinds of simulations presented in Subsection 5.6.2 have
been carried out with the new adaptive supervisor controllers defined as above.
Results concerning these implementations are shown in the Figures 5.18–5.20 for the first controller
proposed in Equations 5.16–5.21.
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
61
Master/Slave positions, Position Drift
5
position (m)
4
3
2
1
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
0.12
position drift (m)
0.1
0.08
0.06
0.04
0.02
0
Figure 5.18: Master (solid) and Slave (dashed) displacements in the case of no environment interaction.
Master/Slave positions, Position Drift
2.5
position (m)
2
1.5
1
0.5
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
position drift (m)
0.15
0.1
0.05
0
−0.05
Figure 5.19: Master (solid) and Slave (dashed) displacements in the case of stiff environment interaction.
62
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
Master/Slave positions, Position Drift
3
position (m)
2.5
2
1.5
1
0.5
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
0.12
position drift (m)
0.1
0.08
0.06
0.04
0.02
0
−0.02
Figure 5.20: Master (solid) and Slave (dashed) displacements in the case of viscous environment interaction.
As one can easily verify, position drift has been completely removed in all the cases analyzed with
the first proposed controller. Transient periods depend on the parameters of the IPC and they can be
further improved.
Simulations confirm theoretical results of perfect compensation of the drift between master and slave
manipulators, with the application of a varying rest length the virtual springs of the controllers.
In the passive approach, with proportional controller parameter kp = 500, the new supervisor energetic port injects or extracts a finite amount of energy in the whole telemanipulation system according
to the different working situations, in order to obtain low position drift; the whole telemanipulation
scheme still remains passive. Achieved performances are worse than the previous ones, but passivity
is conserved in this second case; drift is not completely canceled and transient periods are longer than
the correspondent previous ones. Performances have been otherwise improved with respect to the initial
analyzed telemanipulation scheme. Figures 5.21–5.23 show the results for the passive controller described
with Equations 5.22–5.23
5.6. POSITION DRIFT IN A PASSIVITY BASED APPROACH
63
Master/Slave positions, Position Drift
5
position (m)
4
3
2
1
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
0.1
position drift (m)
0.08
0.06
0.04
0.02
0
−0.02
Figure 5.21: Master (solid) and Slave (dashed) displacements in the case of no environment interaction
[passive approach].
Master/Slave positions, Position Drift
2.5
position (m)
2
1.5
1
0.5
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
position drift (m)
0.15
0.1
0.05
0
−0.05
Figure 5.22: Master (solid) and Slave (dashed) displacements in the case of stiff environment interaction
[passive approach].
64
CHAPTER 5. INTRINSICALLY PASSIVE CONTROLLER
Master/Slave positions, Position Drift
3
position (m)
2.5
2
1.5
1
0.5
0
0
2
4
6
8
10
time (s)
12
14
16
18
20
0
2
4
6
8
10
time (s)
12
14
16
18
20
0.1
position drift (m)
0.08
0.06
0.04
0.02
0
−0.02
Figure 5.23: Master (solid) and Slave (dashed) displacements in the case of viscous environment interaction [passive approach].
Chapter 6
Experiments
6.1
Introduction
This chapter contains the experimental parts of this thesis, corresponding to two possible applications of
the theory detailed in the previous chapters.
Both applications here explained have been built in the Laboratory of Automation and Robotics
(LAR), see [173], of the Department of Electronics, Computer Science and Systems (DEIS) of the University of Bologna.
The first application has been carried out within the ViDeT project, an interdisciplinary project which
has involved different departments of the University of Bologna. It consists in a particular haptic display
based on wires or tendons. Section 6.2 concerns with details on this device.
The second experimental part has been developed within the “Progetto Giovani Ricercatori” (Young
Researchers Project) of the University of Bologna. A telemanipulation setup has been created in order
to validate the already presented theoretical results and to propose new solutions in the studied control
schemes. Section 6.3 shows the preliminary work on this two dof robotics device.
6.2
The ViDeT Device
The ViDeT device has been projected and realized within the three years ViDeT (VIsual DEcoder by
Touch) project [174] supported by the University of Bologna, the ASI (Italian Space Agency) and the
CNR (National Council of Researches).
The ViDeT project is an interdisciplinary project which has involved three different departments of
the University of Bologna: the above mentioned one of electronics (DEIS), the Department of Mechanics
(DIEM) and the Department of Mathematics (DM).
The main aim of the project is to design an haptic device, with three/one wire actuator(s), able to
convert depth information in a real visual scene into tactile information for a blind person. In fact,
many interfaces helping blind people have been presented in the literature during these last years, see
e.g. [5, 23, 89, 111]. The stereo-vision system extracts, in real-time, the depth-map (i.e. the distances of
the objects being presented in the reality) associated with the part of the scene viewed by the cameras;
this extraction is done with the comparison of the two different left and right images taken from the two
stereo cameras. Disparity values, i.e. pixels distances between the same points in the left and right images,
are encoded with 255 possible depth levels. Then, the spatially-sampled depth pixel data computed by
the stereo system are scaled, in a reduced range of some centimeters, in front of the user (a distance
reduction of the real scene is realized in order to let the blind person “virtually touch”, with his finger
inserted into a thimble and connected to the wires, the objects in front of him) and interpolated with
65
66
CHAPTER 6. EXPERIMENTS
triangular patches in order to build a continuous “bas-relief” model of the observed scene. This scaled
model is explored by the user through a tactile sensation provided by the wire-actuated haptic device,
based on the force feedback realized with three motors connected with each wire. The control system
allows to constrain the motion of the user finger according to the shape of the model. A tension set point
is computed for each wire on the basis of the comparison between the position of the thimble and the one
of the virtual bas-relief surface, and the goal of the controller is to impose such a desired force/tension
on each wire. The user is so able to touch virtual objects, computed by the simulation software with the
information received from the stereo vision system, via this force feedback; he perceives reacting forces
at the thimble as similar as possible to the ones he would perceive by touching real objects.
Figure 6.1 contains a picture of the scheme of the whole haptic device.
Figure 6.1: The ViDeT wire haptic device.
This conversion of the real scene into a virtual one is done with different steps:
1. A stereo camera system is used in order to acquire information of the scene; such cameras are
mounted on the shoulders of the user
2. An algorithm is used to extract depth information on the reality from the camera’s data and to
build a virtual bas-relief surface to be perceived with the haptic device
3. This surfaces is scaled in front of the user and is explored by the user finger, inserted into a thimble,
governed by wire actuators; wires force feedback control is in charge of the correct perception of
the obtained virtual reality
Bas-relief surfaces have been chosen for two main reasons: 1) two stereo cameras can perceive the
objects’ distances from the user but not the back side form of the same objects; 2) the three wires represent
6.2. THE VIDET DEVICE
67
an under-actuated device and it is not possible for this device to exert forces necessary to guarantee the
back side perception.
As can be seen from the different necessary steps, the project is of interdisciplinary nature; main
research activities involved with this project are:
• Stereo camera acquisition
• Objects depth computation
• TCP/IP internet-intranet network to exchange data between depth computation and virtual surface
construction
• Bas-relief surface interpolation and scaling
• Mechanical parts of the device
• Motors and sensor acquisition boards
• Control algorithms
• Colour rendering via tactile additive information
• Experimental activity to validate the device
In the bibliography many papers related with the various activities of the project can be found,
see [10, 11, 16, 21, 22, 49, 50, 51, 97, 100, 103, 104, 105].
The research activity directly carried out within the ViDeT project has concerned with the control
algorithm for the implementation of the virtual reality with the haptic device.
6.2.1
The Three-Wires Prototype
Figure 6.2 shows the three wires prototype of the ViDeT project. Basically, it is composed by a backpack
containing the electronics with an acquisition board for the sensors and the actuator boards for the
motors, three tension controlled cables related to different motors via pulleys, a thimble to which are
connected all the wires. Figure 6.3 zoom on details of the motor and his pulleys and of the beam through
which flows the wire.
The main aim of the control system of the haptic device is to impose a certain force feedback Fe (t),
through the wires, to the user; the values of the feedback is computed by the simulation algorithm
according to the device end-effector position (taken from the wire lengths sensors) and the virtual surface
location. Usually, the force feedback is perpendicular to the surface being explored and proportional
to the penetration into the virtual surface via a stiffness constant. Chapter 2 has presented general
consideration on the topic.
By defining the fixed points of the three wires as P1 = [0, 0, 0]T , P2 = [P2x , 0, 0]T and P3 =
[P3x , P3y , 0]T , without leading the generality, Eq. 2.2 can be re-formulated for the inverse kinematics
as:
p

 l1 (t) = pPex (t)2 + Pey (t)2 + Pez (t)2
(6.1)
l (t) = p(Pex (t) − P2x )2 + Pey (t)2 + Pez (t)2
 2
l3 (t) = (Pex (t) − P3x )2 + (Pey (t) − P3y )2 + Pez (t)2
where Pe (t) = [Pex (t), Pey (t), Pez (t)]T represents the spatial position of the thimble that connects the
extremities of the three wires and l1 (t), l2 (t) and l3 (t) are the three lengths of the wires. Manipulating
68
CHAPTER 6. EXPERIMENTS
Figure 6.2: The three-wires prototype.
Figure 6.3: Details of one motor, of his pulleys and of the beam supporting the wire.
6.2. THE VIDET DEVICE
69
the previous equations one can formulate the direct kinematics as:

2
l12 (t) − l22 (t) + P2x


(t)
=
P

ex

2P2x

2
2
l12 (t) − l32 (t) + P3x
+ P3y
− 2P3x Pex (t)
P
(t)
=

ey


2P3y

p

Pez (t) = l12 (t) − Pex (t)2 − Pey (t)2
(6.2)
where each equation has to be solved in the correct order shown above through the substitution of the
already obtained results.
The device end-effector position Pe (t) can be used by the virtual environment simulator in order to
compute the force feedback Fe (t) to be perceived by the human operator. Such a force Fe (t) can be
correctly generated by the haptic device, through its controller, only if it lies inside the tetrahedron
composed by the three wires, i.e. if it lies in the set F(t) defined in Eq. 2.4; otherwise, it has to be
approximated within the tetrahedron with a certain kind of projection, such as the minimum distance
one already exploited in the Section 2.4 or with other methods presented further below.
The user exploration is carried out by means of a thimble and it is a one point exploration. This
device permits a good dynamic exploration of the virtual environment and a static rest in a single point
Pe (t) is admissible only in the case that the correspondent force Fe (t) can be exactly realized by means of
the wires. In [100], it has been shown that the addition of a constant “force field” Ff (t) to the computed
value Fe (t) does not alterate too much the perception of the virtual surface and, at the same time, it
permits to have a major number of possibilities to drive the force to be implemented within the set F(t)
of the admissible forces at a certain time.
6.2.2
Real-Time Data Exchange
A very crucial part of the whole project is the data exchange and integration between two very different
elements: the image manipulation system with the depth extractor connected to the stereo vision cameras
and the virtual reality simulator with the control system connected to the haptic device. In a previous
step of the ViDeT project the two elements were distributed on different machines and not linked together
for real-time operations, this meant that the static depth-map representing the reality was stored in a
file and only successively explored by the haptic device.
A two-way communication system has then been built under the Real-Time Linux (RTL) operative
system, to enable real-time dynamic data exchange, see [18, 20] for details in the definition of two different
versions of the RTL operative system. The vision system sends, with a certain frequency of around 15
frames per second, the depth map of the reality sawn by the two stereo cameras to the control system
and this one sends back to the other the information of position regarding the object being perceived for
receiving details and zoom of the zone being explored.
The connection between the two machines running the tasks is organized with a classical client/server
data exchange that uses the UDP protocol from the standard TCP/IP stack; [16] contains detailed
explanations of the implemented communication within the ViDeT project.
Figure 6.4 synthetizes the sub-tasks being executed in the control system machine which is connected
to the vision machine through the Internet and to the haptic device through I/O boards.
In the future the aim is to embed all the different sub-parts of the whole system (stereo cameras,
image acquisition board, depth extractor, surface simulator, control system, actuators and so on) within
a light backpack to be carried on the shoulder of the person that uses the haptic device to explore the
surroundings.
70
CHAPTER 6. EXPERIMENTS
Linux user space
FIFO channels
RT-Linux (RTAI) kernel space
Command
trace thread
command task
Status
control flags
UI thread
Depth-map
control task
Trace
map receiver thread
motor’s torgue
set-points
sensor reads
start/stop request
depth-map data
Haptic Device
TCP/IP Network link
Figure 6.4: Tasks organization of the control system.
6.2.3
The Three-Wires Results
The first step of the computation is carried out by the Videt Stereo Algorithm (VSA), see [50]; it extracts
the depth map of the reality being observed by the two stereo vision cameras. This process is briefly
described in Figure 6.5 and it uses box-filtering techniques [98] to optimize the computations and minimize
the number of operations per pixel. Further explanations can be found in [10].
Figure 6.5: The Videt Stereo Algorithm.
Figure 6.6 shows a typical example of an image being stored by the one of the two cameras; such
an image, together with its corresponding stereo counterpart, contributes to the creation of the disparity/depth map depicted in Figure 6.7 (left part). Once the depth map is obtained, it can be textured with
the real image and manipulated as a 3D object, for example with the VRML software, see e.g. Figure 6.7
6.2. THE VIDET DEVICE
71
(right part). Other experimental results on the stereo vision system can be found in [170].
Figure 6.6: Example of an image taken from the stereo cameras.
The simulation software builds, starting from the depth map, the virtual scene and the haptic device
let the user to interact with the virtual objects through the thimble via the control system.
An example of user exploration can be seen in the Figure 6.8, such a perceived virtual surface is
related to the image and to the depth map quoted above. The virtual model includes the head and the
top part of the trunk of the person in the scene, with the left and right part flipped with respect to the
starting image.
Correct perception means in this case a good possibility to accurately follow the virtual surface while
it does not include the recognition of the shape of the objects being explored. Further experiments on
shape recognition, distance perception and complex environment have been carried out separately with
simple artificial objects, showing good results; for these and other experiments see [97].
As far as dynamic scenes are involved, the haptic device let the blind person perceive the modification
of the surrounding environment. Experiments with moving objects and persons have been carried out
leading to very good real-time results. As concern the showing of this kind of experiments, some short
MPEG movies can be seen and downloaded at the web page of the ViDeT project [174].
6.2.4
The One-Wire Prototype
A minimal version of this haptic device with only one wire has been studied and realized in order to
demonstrate that a suitable control strategy can compensate the effects of under-actuation. Figure 6.9
shows this particular prototype.
One can obtain also in this case a good dynamic perception, sliding on the surface with the thimble
connected to the single wire. It is not possible to remain in a fixed point on the surface since the
perpendicular force necessary to do this can almost never be applied. Despite of this problem the
exploration is still very good and some results are here shown in order to demonstrate this fact.
The main problem that affects this kind of solution is the end-effector position computation; in fact,
the only wire length is no more sufficient in the one wire case to recover a 3D spatial position and one
72
CHAPTER 6. EXPERIMENTS
Figure 6.7: Example of a disparity/depth map and the corresponding 3D rotated view with a VRML
model.
−0.1
−0.05
0
0.45
z
0.4
0.35
0.05
0.3
0.1
0.1
0.05
0
−0.05
−0.1
x
Figure 6.8: Exploration of a reconstructed virtual surface.
y
6.2. THE VIDET DEVICE
73
Figure 6.9: The one-wire prototype.
has to introduce new different sensors in order to reach this goal. In the sequel, the solution proposed in
the ViDeT project is presented and discussed. Figure 6.10 shows details of the two new sensors.
The actuator is in this case a single electrical brushless motor, the sensor equipment is composed by
the motor encoder for measuring the wire length l and by three force sensors based on strain gauges that
measure the tension t of the wire and the force components along x and y directions. See Figure 6.11 for
the definition of the different components and variables.
Sensors measure the values of l(t), t(t) = |F (t)|, Fx (t) and Fy (t); on the base of these measures,
through simple computations, one can obtain the z component of the force:
q
Fz (t) = t2 (t) − Fx2 (t) − Fy2 (t)
and then, the whole force F (t) = [Fx (t), Fy (t), Fz (t)]T and the 3D position of the thimble:
Pe (t) = P + l(t)F (t)/t(t) = P + l(t)V (t)
(6.3)
where P is the fixed point representing the end term of the beam that contains the wire and V (t) =
F (t)/t(t) is the unit vector that describes the spatial direction of the wire, since the measured force is
strictly related to the direction of the wire with positive tension on it.
The set F of forces that can be exerted by this device is so easily defined by the following equation:
F(t) = {F |F = −zV (t), z ≥ 0}
(6.4)
where this equation means that forces can be directed, at each time, only along the direction of the wire
(represented by the force unit vector V (t)). It remains to be defined the way to approximate desired
force feedback Fe (t) within the set F.
74
CHAPTER 6. EXPERIMENTS
Figure 6.10: Details of the force sensors applied to the beam.
x
Pe
Fx
z
beam
F
F
y
y
Figure 6.11: Variables for the one-wire device.
6.2. THE VIDET DEVICE
75
Three different projection techniques, for the rendering of the desired force feedback Fe (t), have
been proposed and analyzed. These techniques are related to the achieving of various goals that can be
expressed through the minimization of different indexes of performances. The applied force F is chosen
within the forces in the set F(t) with the aim of minimizing one of the here below defined indexes.
The first index I1 is so defined:
I1 = |F − Fe (t)|2 = (F − Fe (t))T (F − Fe (t))
and its minimization with an F ∈ F(t) leads to the minimum distance solution between the implemented
F and the ideal Fe (t).
The second index I2 tends to define with the value |Fe (t)| the component of F along the unit vector
perpendicular to the virtual surface (N (t) = Fe (t)/|Fe (t)|):
I2 = (Fe (t)T (F − Fe (t)))2
i.e. the projection of the force F ∈ F(t) along the direction of the unit vector N (t) is Fe (t).
The third index I3 tends to define the module of F with the value |Fe (t)|:
I3 = (|F | − |Fe (t)|)2
that leads to choose within the set F(t) the force vector F = −|Fe (t)|V (t) which has the same module
of Fe (t).
Obviously, depending on the angle α between the force Fe (t), or its unit vector N (t), and the admissible
force unit vector −V (t), see Eq. 6.4, three different values for F are computed by minimizing the different
indexes I1 , I2 and I3 . Figure 6.12 shows the different values of projection of the desired force Fe (t) in a
case with a generic virtual surface (Fu represents the force exerted by the user).
Fun
Fu
(b)
(a)
Fe
Fe
α
1
F
3
Fn
F
Virtual
Wall
2
Figure 6.12: (a) One wire interacting with a virtual surface; (b) Different values for the actuated force F
[1 - Orthogonal projection (I1 ); 2 - Constant stiffness (I2 ); 3 - Constant module (I3 )].
As the explicit computation of the force F = −zV (t) (z ≥ 0) within the admissible set defined in
Eq. 6.4 is concerned, the first index, as a function of the angular parameter α, becomes
I1 = |F |2 + |Fe (t)|2 − 2|F ||Fe (t)| cos(α) = z 2 − 2|Fe (t)| cos(α)z + |Fe (t)|2
and its minimization in the parameter z is performed passing through the expression:
dI1 (z)
= 2z − 2|Fe (t)| cos(α) = 0
dz
76
CHAPTER 6. EXPERIMENTS
which leads to z = |F | = |Fe (t)| cos(α) for positive values of the term cos(α) and to z = 0 otherwise.
As the second index I2 is concerned, one obtains:
I2 = (|F ||Fe (t)| cos(α) − |Fe (t)|2 )2 = |Fe (t)|2 (cos2 (α)z 2 − 2|Fe (t)| cos(α)z + |Fe (t)|2 )
which minimization in z drives to z = |F | = |Fe (t)|/ cos(α) for cos(α) > 0 and to z = 0 otherwise.
Finally, the third index becomes:
I3 = (|F | − |Fe (t)|)2 = z 2 − 2|Fe (t)|z + |Fe (t)|2
and it leads to z = |F | = |Fe (t)|.
Resuming the obtained values, one have: the orthogonal projection in the first case; a constant stiffness
perception (based on the component perpendicular to the surface) in the second case; a constant module
of the force in the last case.
Figure 6.13 shows the values of the module of F in the three different kind of projection on varying
of the angle α in the range between −90o and +90o . One can further observe that values of α that lie
outside of the previous range mean force feedback Fe (t) in the opposite direction with respect to the set
of the admissible forces F(t).
10
9
8
actuated force fw
7
6
2
5
4
3
2
3
1
1
0
−80
−60
−40
−20
0
angle (deg)
20
40
60
80
Figure 6.13: Module of the actuated forces F as a function of the angle α (|Fe (t)| = 1).
6.2.5
Sensors and Signal Conditioning
The sensors system is here presented and detailed, trying to underline the main problems hidden behind
the choice of the force sensors to measure the spatial position of the device, see also [11].
Four measures are taken as written above: the length l and the tension t of the wire, the component
along x and y axis of the tension; in particular, force sensors are partially coupled and they need to
be calibrated via a proper calibration matrix C. In fact, being Sm = [Fxm , Fym , tm ]T the vector of the
measures of the three sensors and Sr = [Fxr , Fyr , tr ]T the real values of the forces, one can write in a
linear formulation:
Sr = CSm
6.2. THE VIDET DEVICE
77
and, by substituting the previous vectors 3 × 1 with matrices 3 × n to contain the multiple measures for
the correct calibration, one obtains via a matrix pseudo-inversion:
+
C = Sr Sm
Another factor to be taken into account is the decreasing of the measured tension tm with the increasing of the angle β shown in Figure 6.14, i.e. the angle between the unit vector of the beam and the unit
vector of the wire, due to the friction between the wire and the hole at the tip of the beam. Such an effect
increases also with the module of the really applied tension tr as can be appreciated from Figure 6.15.
One can compute the angular coefficients a of the interpolation lines in Figure 6.15 as -0.0039, -0.0075
and -0.0112 N/deg for respectively tr =1.3, 2.3 and 3.3 N; the interpolation of these angular coefficients
leads to a generic angular coefficient a as a function of the real tension tr :
a(tr ) = −0.0037tr + 0.0009
(6.5)
x
Fx
Pe
F
V
l
β
Fz
z
Fy
y
Figure 6.14: Kinematic configuration of the one-wire device.
Since the measured tension tm decreases with angle β, one has to estimate this angular value starting
from the measured angle βm based on the measured sensors values. The measured angle βm between the
vector Pe − P and the axis z can be computed, based on the sensors measures, in the previously detailed
manner, see Eq. 6.3.
In Figure 6.16, the angle βm computed from the measures is related to the real angle βr via several
experiments. The relationship can be approximated as:
½
βm
if βm < 36.9o
βr =
0.4498 βm + 20.8227
if βm > 36.9o
Once obtained the real angle βr in this manner, one can compute the tension tr by adding a proper
quantity to the measured tm . The relationship between real and measured tension is:
tm = a(tr ) βr + tr
where a(tr ) is the angular coefficient of the approximating straight line seen in Figure 6.15 that can be
expressed as shown in Eq. 6.5. Manipulating previous equation one obtains:
tm = (1 − 0.0037βr )tr + 0.0009βr
78
CHAPTER 6. EXPERIMENTS
3.5
3
tension (N)
2.5
2
1.5
1
0
10
20
30
angle (deg)
40
50
60
Figure 6.15: Measured tensions as function of angle β (tr = 1.3, 2.3, 3.3 N ) and interpolation with straight
lines.
90
80
70
measured angle (deg)
60
50
40
30
20
10
0
0
10
20
30
real angle (deg)
40
50
60
Figure 6.16: Measured angle βm (dotted lines) as function of the real angle βr and interpolation with
two straight lines (solid line).
6.2. THE VIDET DEVICE
79
and, since βr has already been computed, one can determine tr by inversion of the previous formula:
tr =
tm − 0.0009βr
1 − 0.0037βr
In Figure 6.17 the final result at the end of the compensation computations is presented and it shows a
satisfactory performance. Since these plots have been obtained with different constant applied tensions,
the ideal results would have been three constant straight line.
3.5
3
tension (N)
2.5
2
1.5
1
0
10
20
30
angle (deg)
40
50
60
Figure 6.17: Results of compensation of measured tension tm (tr = 1.3, 2.3, 3.3 N ) dashed = measured,
solid = compensated results.
Two main experiments have been proposed to validate the proposed signal conditioning: the first
with a constant length of the wire and a variable angle βr and the second with a fixed angle βr and a
variable length in the wire. The obtained results are depicted in the two Figures 6.18 and 6.19. Results
are good but a certain quantity of noise can further be appreciated in the computation of the correct
angle, especially for large values of βr .
For further experiments with this device a new sensors system has been projected and it will be built
in the next future. The two force sensors will be substituted with two new angular position sensors based
on hall effect for a better measure of the thimble position; see [51] for further details.
6.2.6
The One-Wire Results
Experimental results obtained with the one-wire interface are here presented, see [105] for further details.
The first point to be exploited is the correct spatial position measure of the device end-effector, since
in this case noisier (force) sensors have been introduced with the aim of measuring such a value, in
substitution of the three encoders of the previous prototype.
The first of the carried out experiments, with lengths expressed in centimeters, has been describing
a cross trajectory approximately placed in the x/z and y/z planes with a fixed wire length (with correspondent possible movements on a sphere), the results of the reconstruction of the whole motion are
presented in Figure 6.20.
80
CHAPTER 6. EXPERIMENTS
Angle of the trajectory (with respect to the z axis)
Angle of the trajectory (with respect to the z axis)
45
45
40
40
35
35
30
angle [deg]
angle [deg]
30
25
20
25
20
15
15
10
10
5
5
0
0
100
200
300
400
time [msec]
500
600
0
700
0
100
200
300
time [msec]
400
500
Figure 6.18: Motion with increasing and decreasing βr with range [0o , 45o ].
Actual trajectory
35
30
z
25
20
15
1−1
0
y
15
20
25
30
35
x
Figure 6.19: Motion with increasing length of the wire (βr = 45o ), straight line represents the ideal
trajectory.
600
6.2. THE VIDET DEVICE
81
Thimble posiiton [cm]
20
Z
15
10
5
0
20
10
20
0
10
0
−10
−10
Y
−20
−20
X
Figure 6.20: Reconstruction of a 3D motion along a cross trajectory with a fixed distance from the origin.
Following experiments have been carried out in order to test the correct perception of the surfaces. A
dynamic interaction is here studied and the thimble slides, in the plane x/z, along a particular surfaces
in which a discontinuity (step) is presented with two possible different slopes.
The dynamic perception can be analyzed from the results presented in the following Figures 6.21
and 6.22. The three rows of the plots represent respectively the first, second and third method of force
projection related to the three above detailed indexes I1 , I2 and I3 ; the first column of the plots represents
a movement from left to right with a decreasing depth perception and, viceversa, the second one represents
a movement from right to left with an increasing depth in the surface.
The thimble slides along the surface and it stays at a certain depth inside the virtual surfaces depending
on the stiffness of the modeled virtual object. As can be seen in the first row of both the Figures 6.21
and 6.22 the first method of projection based on the minimization of the index I1 gives the worst results
in terms of correct perception of the surface; this fact is shown by the high penetration within the surface,
as the slope of the same surface increases, due to the decreasing in the actuated forces on the increasing
of angle α. Better results have been obtained with the second and third method; in both these cases the
distance between the thimble and the virtual object remains small and the overshoots at the end of the
changing of slope are lower than the previous ones.
6.2.7
Conclusions
A three-wire haptic device and a one-wire prototype have been here presented and detailed with all their
particularizations. Obtained experimental results have been presented too.
As can be seen from the figures presented in this section, kinematically defective or under-actuated
system can be used with good results for the recognition and perception of virtual environments. A
dynamic exploration has been proposed and studied with special regards to the one-wire device.
This interface permits obstacle avoidance and guide for blind people, since it let know to the user the
depth of the different objects in front of him and it is of great interest because of its simplicity. Further
work of validation of the two prototypes with real scenes has still to be done, but first results seem to be
comforting.
82
CHAPTER 6. EXPERIMENTS
0.5
0.5
1
0.45
asse z
asse z
1
0.4
0.35
−0.1
−0.05
0
0.05
0.45
0.4
0.35
−0.1
0.1
0.5
−0.05
0
0.05
2
asse z
asse z
2
0.45
0.4
0.35
−0.1
−0.05
0
0.05
0.45
0.4
0.35
−0.1
0.1
0.5
−0.05
0
0.05
3
3
asse z
asse z
0.1
0.5
0.45
0.4
0.35
−0.1
0.1
0.5
−0.05
0
asse x
0.05
0.45
0.4
0.35
−0.1
0.1
−0.05
0
asse x
0.05
0.1
Figure 6.21: Results obtained with the three projection methods and a surface with a steep slope (in the
left figures the thimble moves from left to right, in the right figures it moves from right to left).
0.5
0.5
1
0.45
asse z
asse z
1
0.4
0.35
−0.1
−0.05
0
0.05
0.45
0.4
0.35
−0.1
0.1
0.5
−0.05
0
0.05
0.5
2
0.45
asse z
asse z
2
0.4
0.35
−0.1
−0.05
0
0.05
0.45
0.4
0.35
−0.1
0.1
0.5
−0.05
0
0.05
3
0.45
asse z
asse z
0.1
0.5
3
0.4
0.35
−0.1
0.1
−0.05
0
asse x
0.05
0.1
0.45
0.4
0.35
−0.1
−0.05
0
asse x
0.05
0.1
Figure 6.22: Results obtained with the three projection methods and a surface with a lower slope (in the
left figures the thimble moves from left to right, in the right figures it moves from right to left).
6.3. THE TELEMANIPULATION DEVICE
6.3
83
The Telemanipulation Device
The telemanipulation device has been built within the project “Controllo di sistemi con ritardo” (Control
of Time-Delay Systems) supported by the “Progetto Giovani Ricercatori” (Young Researchers Project)
of the University of Bologna.
Such a mentioned project has obtained most of the theoretical results presented in the Chapters 3–5. In
the first period it has studied the telemanipulation schemes already presented in the literature presenting
possible comparisons based on different points of view and leading to the definition of comparison criteria;
the attention has been successively focus on the passivity based control schemes with a multi-dof approach
and their performance improving with position drift reduction; in the final part, an hardware setup has
been implemented to carry out the experiments on telemanipulation.
6.3.1
Hardware Setup
The setup has two degrees-of-freedom, it is composed by two metallic bars connected with brushless
motors, which drivers are controlled by a DSP board mounted on the PC ISA bus; two encoders give the
position of the motors and they are acquired through the same board. The setup can be used as a two-dof
master device in a telemanipulation scheme, for example as a gripper for virtual grasping, or as one-dof
master and slave devices for an autonomous telemanipulation scheme in which the communication delay
is realized via software. The sampling time of the DSP board has been set to 200µsec.
Figure 6.23 contains a picture of the realized telemanipulation setup.
Figure 6.23: The telemanipulation device.
6.3.2
Control Algorithms
The control system has to compute the torque to be applied to the motors in order to govern the
displacement of the two bars, according to the desired task.
First observation to be done is the consideration of both the dead-zone and the saturation in the
motor dynamics; in fact, the motors require a certain minimal torque τmin in order to start moving the
linked metallic bars and have a maximum applicable torque τmax . In the controller, this dead-zone can
be reduced, or completely avoided in the case of exact knowledge of the mentioned τmin , with the use
of a proper control law such as the one indicated in Figure 6.24; such a figure keep into account also
the maximum torque. The desired torque τd is augmented with a constant value for both positive and
84
CHAPTER 6. EXPERIMENTS
negative values; in general the minimal and maximal torque to be applied can be different for the two
positive and negative directions.
Torque control law
18
τ
max
15
12
9
Applied torque τ
6
τ
3
min
0
−τ
−3
min
−6
−9
−12
−15
− τmax
−18
−15
−12
−9
−6
−3
0
3
Desired torque τd
6
9
12
15
Figure 6.24: Control law for the motor input torque.
As encoder measures are involved, one can successfully use the angular position and speed estimator
presented in [151] and here briefly recalled. In fact, a special filter has been applied to the encoder
measures with the aim of reducing the noise affecting the signals. The general structure of the filter is
presented in Figure 6.25.
θ
differentiator
+
low-pass filter
ω est
θ est
regulator
integrator
Figure 6.25: Structure of the encoder measurements filter.
The chosen estimator, based on the above mentioned structure, can be found in Figure 6.26. The
transfer function Gs (z) represents the discretization, with the Tustin method, of the ideal continuous
6.3. THE TELEMANIPULATION DEVICE
85
differentiator combined with a first order filter:
¯
s ¯¯
z−1
=
Gs (z) =
1 + sτf ¯s= 2 z−1
(τf + T /2)z − (τf − T /2)
T z+1
where T represents the sampling time and τf is the filter time-constant; the blocks T /2 and T /(z − 1)
describes the integrator obtained whit the backward derivative method in order to avoid algebraic loops
and K is a gain parameter. See [151] for further details on this position and speed estimator.
ωest
Θ
ω slow
Gs(z)
ω
K
fast
T/2
T
z-1
Θ est
Figure 6.26: Speed and position estimations obtained from the encoder measurements.
6.3.3
Experimental Results
The early experimental results obtained with the telemanipulation device are now presented and summarized in the following figures. Further improvements are already under development, including the
insertion of strain-gauge sensors to measure the external forces acting on the metallic bars.
The device has been used as a one-dof telemanipulation setup in which master and slave manipulators
are implemented by a single metallic bar, eventual time-delay is created via software.
The first experiments are dedicated to the tuning of the dead-zone and saturation parameters in the
control algorithm. The master manipulator moves with a constant angular speed of 0.2rad/sec, while on
the slave manipulator is applied a torque that is proportional to the error between the angular position of
the two manipulators, such a error is treated by the control law presented in the previous subsection and
depicted into the Figure 6.24. Figures 6.27–6.29 show the results obtained with three different increasing
dead-zone values; as one can appreciate from the figures, performances in terms of slave tracking increase
with the increasing of the dead-zone parameters.
In the second kind of experiments a time-delay of 0.1sec. in the data exchange between master and
slave control algorithms has been introduced via software. Instantaneous changes in the position or
speed references of the master displacement have been introduced and the slave manipulator follows the
master ones after the communication time-delay. The following figures underline the different dynamics
associated to the control presented at both master and slave sides; in particular, Figure 6.30 is related
86
CHAPTER 6. EXPERIMENTS
Manipulators Displacement
2
1.8
angular position (rad.)
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0
1
2
3
4
5
6
7
8
9
10
time (sec.)
Figure 6.27: Master and slave angular positions with master constant speed 0.2rad/sec and dead-zone
τmin1 .
Manipulators Displacement
2
1.8
angular position (rad.)
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0
1
2
3
4
5
6
7
8
9
10
time (sec.)
Figure 6.28: Master and slave angular positions with master constant speed 0.2rad/sec and dead-zone
τmin2 = 5τmin1 .
6.3. THE TELEMANIPULATION DEVICE
87
Manipulators Displacement
2
1.8
angular position (rad.)
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0
1
2
3
4
5
6
7
8
9
10
time (sec.)
Figure 6.29: Master and slave angular positions with master constant speed 0.2rad/sec and dead-zone
τmin3 = 8τmin1 .
to the use of a simple proportional control between the master and its reference and between the master
and the slave displacements and it contains results for changes in the master position reference, while
Figure 6.31 shows the results in the case of changes in the master speed reference.
88
CHAPTER 6. EXPERIMENTS
Manipulators Displacement
2
angular position (rad.)
1.5
1
0.5
0
−0.5
−1
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
5.5
6
time (sec.)
Figure 6.30: Master and slave angular positions as a result of changes in the master position reference
(dynamic associated to proportional controllers).
Manipulators Displacement
3
angular position (rad.)
2
1
0
−1
−2
−3
0
1
2
3
4
5
6
7
time (sec.)
Figure 6.31: Master and slave angular positions as a result of changes in the master speed reference
(dynamic associated to proportional controllers).
Chapter 7
Conclusions
7.1
Final Observations
This thesis has dealt with the control of haptic systems, with particular attention to the ones being
actuated by means of wires, and the control of robotic telemanipulation systems, with a special focus on
the passivity based control approach.
Wire actuated haptic systems have been studied with special attention on the control problems, in
particular to those related to the force feedback projection along the different wires. A complex haptic
interface has been built, with its virtual model directly taken from the reality through two stereo cameras
and implemented real-time on the device. This haptic display can be useful for visually impaired people.
A comparative study of several telemanipulation control schemes has been presented. These control
schemes have been chosen within the literature on telerobotics and have been reported and commented.
The study has been carried out considering different points of view. Both stability and performances
have been analyzed, with specific attention in particular to the perceived inertia, the tracking error, the
perceived stiffness and the position drift; for each of this performance analysis results have been obtained
for the previous schemes. Different parameters of each telemanipulation scheme have been discussed and
defined and the overall performances have been evaluated.
After the general presentation of the different schemes, the focus has been put on the intrinsically
passive controllers, i.e. the control systems that use the passivity approach to govern the whole telemanipulation system. A multi-dof teleoperation system has been introduced together with special multidimensional spring and damping families useful for the intrinsically passive controllers, such a system has
been controlled and simulation results has been presented. In particular, two specific interesting tasks
have been simulated with structured interactions at the remote side that are driven from the human
operator at the primary (master) side which receives force feedback information from the slave; these
tasks have given good results in terms of transparency.
A passivity based approach for the position drift reduction or avoidance has successively been presented leading to early interesting results still to be further deepened in the future. Position drift is mainly
due to the communication time-delays and to the manipulators and controllers dynamics. Springs with
variable rest length have been used in order to transfer the energy storage between the different elements
that compose the whole telemanipulation system. The proposed solution is based on the variation of the
rest length of the virtual springs of the IPCs, a theoretical approach is briefly presented and a solution
in terms of an adaptive supervisor control is proposed and validated with good simulation results.
The experimental parts of this work have been joined together in a unique chapter in which both
the haptic and telemanipulation devices have been described with plenty of details. Two prototypes
of a haptic display have been built within the ViDeT project and a telemanipulation setup have been
89
90
CHAPTER 7. CONCLUSIONS
developed within the context of the project with title “Control of Time-Delay Systems”. In such a way
each theoretical consideration has been always accompanied and validated by the practical part consisting
of software simulations or experiments.
A useful appendix is written here in the following to describe the nomenclature of all the variables
used in the text, a short description is associated to each variable which are presented in the alphabetical
order.
The bibliography collects a wide number of books, papers and web references that are useful for the
presented work. Each bibliographic reference has been cited once or more times within the text and one
can directly refer to each section in order to find the related publications.
The original contributions of the thesis have been described in the last part of the introduction chapter
and are distributed in the various sections of the work.
7.2
Future Work
This final section is dedicated to the presentation of some possible future works that could be carried out
in relation with what presented in this thesis.
As one is interested in wires actuated haptic devices, new defective (under-actuated) haptic displays
can be developed on the basis of the experience done in this work; in fact, it has been shown with
experiments on the one wire prototype of the ViDeT project device that only one or few wires are really
necessary in a haptic device for a good perception of a virtual reality. A well defined control system can
exceed the lack of degrees-of-freedom in the system with an appropriate force projection method.
Other telemanipulation control schemes can be studied, in addiction to those here presented, under
the different presented points of view or, alternatively, other useful criteria can be introduced in order
to evidence new transparency properties. In particular, few attentions have been put in this work to
the predictive control approaches, with exception of the presented Smith’s predictor usage, that could be
useful especially for large time-delay systems, e.g. in the space telerobotics applications.
In the theoretical aspects, further work remains to be done in the case of nonlinear and multi-dof
manipulators dynamics and in the case of transmission time-varying delays introduced in the telemanipulation scheme. In fact, the analysis has often been carried out under simplified assumptions of linearity
or linearization. See [75, 139] as introductions to the control of nonlinear systems.
Simulations can be further developed with the insertion of new significant tasks in order to validate
the proposed intrinsically passive controllers or to analyze different manipulators dynamics, eventually
nonlinear.
Experimental activities on telemanipulation with multiple degrees-of-freedom have to be planned and
carried out in our laboratory. In fact, multi-dof manipulators are already at our disposal and they have
to be put into communication with each other.
As concern the new passive approach presented for the reduction of the position drift, interesting
work to be carried out is related to the possible “auto-configuration” of the rest length of the springs
without any additive information, e.g. measured external force or transmission time delay; in fact, such
information, not necessary in the general passive approach, could be recovered from the internal state of
the same controller; furthermore, the springs rest lengths information could be also exchanged between
master and slave controllers via a special scattering port leading to more accurate results; main difficulty
of this future researches is to maintain passivity in implementing such proposed modifications in the
controllers; in fact, as shown in the text, in general passivity is lost due to internal creation of energy in
the applied controllers. Finally, a time-varying transmission delay should be considered explicitly.
Further work will also be mainly related to the enhancement of other transparency properties of the
whole telemanipulation scheme via the same method herein proposed for the manipulators position drift,
for example one can achieve a desired perceived stiffness at the master side via the variation of the rest
7.2. FUTURE WORK
91
lengths of the springs. This work on springs rest lengths is still to be defined and carried out on systems
with multiple degrees of freedom.
92
CHAPTER 7. CONCLUSIONS
Appendix A
Nomenclature
A.1
General Nomenclature
This appendix shows the nomenclature or variables definition used in the whole text of the thesis.
In general, upper case letters have been used for column vectors (e.g. F , V , etc.), matrices, transfer
functions or scattering variables; lower case letters stay for real, or scalar, values.
(·)T is used for the transpose of a column vector (i.e. a row vector) or for the transpose of a matrix.
In a similar way, (·)+ is used for the pseudo-inverse of a matrix.
R is the set of the real numbers.
Each of the following sections contains the definitions of the variables used in the different chapters
of this work.
A.2
Control of Haptic Devices
F (t) force exerted by the haptic display through its wires
F(t) set of admissible forces that the device can exert
Fe (t) desired force to be exerted by the haptic display
Fe−1 (t) first example of force to be exerted by the haptic display
Fe−2 (t) second example of force to be exerted by the haptic display
Fe−3 (t) third example of force to be exerted by the haptic display
Fe−4 (t) fourth example of force to be exerted by the haptic display
Fei (t) i-th component of Fe (t)
J Jacobian matrix of the haptic device
li (t) length of the i-th wire
Pi fixed position of one of the extremity of the i-th wire
Pe (t) haptic device end-effector displacement
Pei (t) i-th component of Pe (t)
93
94
APPENDIX A. NOMENCLATURE
Ṗe (t) haptic device end-effector velocity
T (t) wire tensions vector
ti (t) tension on the i-th wire
zi generic positive i-th value of a linear combination
A.3
Telemanipulation Systems
a constant parameter
bc damping in the impedance controller
bi constant coefficient for the damping term
bm damping of the master manipulator
b̂m estimate damping value of the master manipulator
bmc virtual damping in the master controller
bmi virtual damping in the master controller connected with the scattering variables
bs damping of the slave manipulator
b̂s estimate damping value of the slave manipulator
bsc virtual damping in the slave controller
bsi virtual damping in the slave controller connected with the scattering variables
c constant parameter
c1 dynamic system for the master velocity transmission
c2 dynamic system for the slave force transmission
c3 dynamic system for the master force transmission
c4 dynamic system for the slave velocity transmission
c5 feed-forward slave controller parameter
c6 feed-forward master controller parameter
cm feedback master controller parameter
Cm (s) transfer function of a feedback master controller
cs feedback slave controller parameter
Cs (s) transfer function of a feedback slave controller
e position error between manipulator displacements for the sliding-mode controller
fe force exerted by the remote environment
fed force exerted by the remote environment available at the master controller after a time delay T
A.3. TELEMANIPULATION SYSTEMS
fedd force exerted by the remote environment available at the slave controller after a time delay 2T
fh force exerted by the human operator
fhd force exerted by the human operator available at the slave controller after a time delay T
fm total force applied to the master manipulator
fmc force applied to the master manipulator by the master controller
fmd force applied to the master manipulator available at the slave controller after a time delay T
fmi internal force of the master controller exchanged with the aim of the scattering variables
fs total force applied to the slave manipulator
fsc force applied to the slave manipulator by the slave controller
fsd force applied to the slave manipulator available at the master controller after a time delay T
fsi internal force of the slave controller exchanged with the aim of the scattering variables
gc constant coefficient for the force feedback term
Gf (s) transfer function of a low pass filter
Gm (s) transfer function of a feed-forward master controller
Gp (s) transfer function of the entire slave side
Gs (s) transfer function of a feed-forward slave controller
kc constant coefficient for the position error term or stiffness in the impedance controller
kf constant coefficient for a low pass filter
kg constant coefficient for a sliding-mode controller
km proportional feedback gain in the master controller
km1 integral feedback gain in the master controller
kmc virtual spring in the master controller
kmi virtual spring in the master controller connected with the scattering variables
ks proportional feedback gain in the slave controller
ks1 integral feedback gain in the slave controller
ksc virtual spring in the slave controller
ksi virtual spring in the slave controller connected with the scattering variables
mc mass in the impedance controller
mm mass of the master manipulator
m̂m estimate mass value of the master manipulator
95
96
APPENDIX A. NOMENCLATURE
mmc virtual mass in the master controller
ms mass of the slave manipulator
m̂s estimate mass value of the slave manipulator
msc virtual mass in the slave controller
S sliding surface for the sliding-mode controller
−
in-going scattering variable at the master controller
Sm
+
out-going scattering variable at the master controller
Sm
Ss− out-going scattering variable at the slave controller
Ss+ in-going scattering variable at the slave controller
T constant time delay on the communication channel
Um out-going scattering variable at the master controller
Us in-going scattering variable at the slave controller
Va in-going variable at the master controller used in the scattering variable computation
vm velocity of the master manipulator
Vm scattering variable at the master controller computed with a regulator
vmd velocity of the master manipulator available at the slave controller after a time delay T
vmi virtual velocity in the master controller connected with the scattering variables
vs velocity of the slave manipulator
Vs out-going scattering variable at the slave controller
vsd velocity of the slave manipulator available at the master controller after a time delay T
vsi virtual velocity in the slave controller connected with the scattering variables
vsr velocity in the slave controller connected with the scattering variables
xm displacement of the master manipulator
xmc displacement of the virtual mass in the master controller
xmd displacement of the master manipulator available at the slave controller after a time delay T
xs displacement of the slave manipulator
xsc displacement of the virtual mass in the slave controller
xsd displacement of the slave manipulator available at the master controller after a time delay T
λ constant parameter
τ constant parameter of a low pass filter
A.4. STABILITY AND PERFORMANCES
A.4
97
Stability and Performances
Many of the variables of the correspondent chapter are the same of the previously detailed ones. In this
section are reported only the new variable definitions.
be damping term of the remote environment
beq damping perceived by the human operator
G(s, T ) characteristic equation of a telemanipulation scheme useful for the study of the stability
G̃(s, T̃ ) polynomial characteristic equation of a telemanipulation scheme useful for the application of an
analytic stability test
G1 (s) transfer function for the inertia and damping measures
G∗1 (s) negligible terms of the transfer function G1 (s)
G2 (s) transfer function for the tracking measures
G∗2 (s) negligible terms of the transfer function G2 (s)
G3 (s) transfer function for the stiffness measures
G∗3 (s) negligible terms of the transfer function G3 (s)
G4 (s) transfer function for the drift measures
G∗4 (s) negligible terms of the transfer function G4 (s)
ke stiffness term of the remote environment
keq stiffness perceived by the human operator
meq inertia perceived by the human operator
r4 (T̃ ) fourth entry in of the Routh column array useful for the application of the Routh criterion
T0 value associated to the imaginary roots s = jω of G̃(s, T̃ ) = 0
Tmax maximum admissible time delay on the communication channel to guarantee the stability of the
overall telemanipulation scheme
δ position tracking error without any environment at the remote side
δv velocity tracking error without any environment at the remote side
∆ position drift error in the case of interaction with a remote environment
∆v velocity drift error in the case of interaction with a remote environment
ω0 value associated to the imaginary roots s = jω of G̃(s, T̃ ) = 0
98
APPENDIX A. NOMENCLATURE
A.5
Intrinsically Passive Controller
0∗ 1 × 3 vector with zeros as elements [0, 0, 0]
a Denavit-Hartemberg parameter of the manipulator links
a1 Denavit-Hartemberg parameter of the first link
a2 Denavit-Hartemberg parameter of the second link
a3 Denavit-Hartemberg parameter of the third link
b characteristic impedance of the communication line or damping of the manipulators
bc damping in the controllers
Bc virtual damping in the IPC definition
be viscous term of the remote environment
b̃e (t) estimated viscous term of the remote environment
bi constant coefficient for the damping term
Bt translational part of the damping family
bv virtual damping in the master controller connected with the scattering variables
Bv virtual damping connected with the scattering variables in the IPC definition
cij cosine of a sum of joint angles cos(θi + θj )
C(·, ·) Coriolis matrix of the manipulator dynamics
c1 coefficient for the force term
c2 coefficient for the velocity term
d Denavit-Hartemberg parameter of the manipulator links
D matrix with the direct connections between forces and velocities
e(t) energy stored in a system
ep potential energy of a spring
f force exerted by a spring
F force column vector
f1 force associated to the energetic port of the first point of a spring
f2 force associated to the energetic port of the second point of a spring
fe force exerted by the external environment
Fext force applied by the human operator/environment to the manipulator
fh force exerted by the human operator
A.5. INTRINSICALLY PASSIVE CONTROLLER
f¯h constant force exerted by the human operator
f˜h (t) estimated force exerted by the human operator
fl force associated to the energetic port of the rest length of a spring
fm total force applied to the master manipulator
Fm master IPC force used in the scattering variables definition
fmc force applied to the master manipulator by the master controller
fmi internal force of the master controller exchanged with the aim of the scattering variables
fs total force applied to the slave manipulator
Fs slave IPC force used in the scattering variables definition
fsc force applied to the slave manipulator by the slave controller
fsi internal force of the slave controller exchanged with the aim of the scattering variables
Fx x-component of the force applied by the human operator
Fxy force associated to wrench of the spatial compliance/damping family
G(·) gravitational vector of the manipulator dynamics
GC spatial compliance family matrix
GD spatial damping family matrix
i inertia of the manipulator links
J(·) Jacobian matrix of the master/slave manipulator
k stiffness coefficient of a spring
kc virtual spring in the master controller
Kc virtual spring in the IPC definition
ke stiffness term of the remote environment
kp coefficient of a proportional controller
Kt translational part of the compliance family
kv virtual spring in the master controller connected with the scattering variables
Kv virtual spring connected with the scattering variables in the IPC definition
m mass of the manipulators or of the manipulator links
M (·) inertia matrix of the manipulator
mc virtual mass in the controllers
Mc virtual inertia in the IPC definition
99
100
APPENDIX A. NOMENCLATURE
Mo rotational part of the compliance family
M̃o skew-symmetric rotational part of the compliance family
Mo0 rotational part of the damping family
M̃o0 skew-symmetric rotational part of the damping family
mθ torque associated to wrench of the spatial compliance/damping family
Mθ torque (θ-)component of the force applied by the human operator
p(t) power supplied to a system
Pax x-position of the first reference connected by the spring/damping
Ṗax x-velocity of the first reference connected by the spring/damping
Pay y-position of the first reference connected by the spring/damping
Ṗay y-velocity of the first reference connected by the spring/damping
Paθ θ-position of the first reference connected by the spring/damping
Ṗaθ θ-velocity of the first reference connected by the spring/damping
Pbx x-position of the second reference connected by the spring/damping
Ṗbx x-velocity of the second reference connected by the spring/damping
Pby y-position of the second reference connected by the spring/damping
Ṗby y-velocity of the second reference connected by the spring/damping
Pbθ θ-position of the second reference connected by the spring/damping
Ṗbθ θ-velocity of the second reference connected by the spring/damping
pdiss (t) power dissipated into a system
Pr position of the robot end-effector
Prx x-position of the manipulator end-effector
Pry y-position of the manipulator end-effector
Prθ θ-position of the manipulator end-effector
ptot total power exchanged by a spring
Pv position of the virtual equilibrium reference
Px x-displacement of the object/obstacle presented at the remote side
Py y-displacement of the object/obstacle presented at the remote side
Pθ θ-displacement of the object/obstacle presented at the remote side
Q manipulator joint position vector
A.5. INTRINSICALLY PASSIVE CONTROLLER
Q̇ manipulator joint velocity vector
Q̈ manipulator joint acceleration vector
Rr orientation of the robot end-effector
Rt orientation parameter of the compliance family
R̂t orientation parameter of the damping family
Rv orientation of the virtual equilibrium reference
Rx x-position of the center of mass of the manipulator links
Ry y-position of the center of mass of the manipulator links
Rz z-position of the center of mass of the manipulator links
S − received scattering variable
S + transmitted scattering variable
sij sine of a sum of joint angles sin(θi + θj )
−
input scattering variable at the master IPC
Sm
+
output scattering variable at the master IPC
Sm
Ss− input scattering variable at the slave IPC
Ss+ output scattering variable at the slave IPC
T constant time delay on the communication channel
V velocity column vector
v ∗ threshold velocity near to zero
v1 velocity associated to the energetic port of the first point of a spring
v2 velocity associated to the energetic port of the second point of a spring
vl velocity associated to the energetic port of the rest length of a spring
Vm master IPC velocity used in the scattering variables definition
vmi virtual velocity in the master controller connected with the scattering variables
Vr velocity of the robot end-effector in the local frame
Vs slave IPC velocity used in the scattering variables definition
vsi virtual velocity in the slave controller connected with the scattering variables
Vv velocity of the virtual equilibrium reference in the local frame
WC wrench associated to the spatial compliance family
WD wrench associated to the spatial damping family
101
102
APPENDIX A. NOMENCLATURE
WIP C wrench computed by the IPC and to be applied to the manipulator
x1 position of the first end-point of a spring
x2 position of the second end-point of a spring
xe position term of the remote environment
xl rest length of a spring
xm displacement of the master manipulator
xmc displacement of the virtual mass in the master controller
xml rest length of the spring in the master controller
xs displacement of the slave manipulator
xsc displacement of the virtual mass in the slave controller
xsl rest length of the spring in the slave controller
α Denavit-Hartemberg parameter of the manipulator links
Γt parameter of the translational part of the compliance family
Γ̂t parameter of the translational part of the damping family
δ̄ constant value depending on the parameters of the IPC
∆(t) position drift between master and slave manipulator displacements
˜
∆(t)
estimated position drift between master and slave manipulator displacements
¯ A steady-state position drift in the case of no interaction at the remote side
∆
¯ B steady-state position drift in the case of stiff environment interaction
∆
¯ C steady-state position drift in the case of viscous environment interaction
∆
˜ m (t) estimated position drift to be compensated at the master side
∆
˜ s (t) estimated position drift to be compensated at the slave side
∆
∆P position difference between the robot end-effector and the virtual equilibrium reference
∆Ṗ velocity difference between the robot end-effector and the virtual equilibrium reference
θ Denavit-Hartemberg parameter of the manipulator links
θ1 manipulator joint position first element
θ2 manipulator joint position second element
θ3 manipulator joint position third element
λo parameter associated to the torque of the compliance family
λ̂o parameter associated to the torque of the damping family
A.6. EXPERIMENTS
Λo parameter of the rotational part of the compliance family
Λ̂o parameter of the rotational part of the damping family
Ψ manipulator input torque vector
Ψm torque vector computed through the IPC and to be applied to the master manipulator
Ψs torque vector computed through the IPC and to be applied to the slave manipulator
Ω angular velocity vector
Ω̃r skew-symmetric matrix containing the angular velocity of the robot end-effector
Ω̃v skew-symmetric matrix containing the angular velocity of the virtual equilibrium reference
A.6
Experiments
a angular coefficient for the linear interpolation of the data
C calibration matrix for the sensor measures
F generic admissible force
F (t) force vector associated to the single wire
F(t) set of the admissible forces that can be generated by the haptic device
Fe (t) desired force feedback to be exerted by the haptic device
Ff (t) force field to be added to the desired feedback force to be exerted by the haptic device
Fu force exerted by the human operator
Fx (t) x-component of the force vector associated to the single wire
Fxm measured x-component of the force vector associated to the single wire
Fxr real value of the x-component of the force vector associated to the single wire
Fy (t) y-component of the force vector associated to the single wire
Fym measured y-component of the force vector associated to the single wire
Fyr real value of the y-component of the force vector associated to the single wire
Fz (t) z-component of the force vector associated to the single wire
Gs (z) ideal continuous differentiator and first order filter discretized with the Tustin method
I1 first index of performance associated to the force projection
I2 second index of performance associated to the force projection
I3 third index of performance associated to the force projection
K constant parameter in the angular position and speed estimations
l(t) length of the single wire
103
104
APPENDIX A. NOMENCLATURE
l1 (t) length of the first wire
l2 (t) length of the second wire
l3 (t) length of the third wire
N (t) unit vector describing the force feedback perpendicular to the virtual surface
P fixed point representing the end term of the beam and the starting point of the single wire
P1 fixed point representing the starting point of the first wire
P2 fixed point representing the starting point of the second wire
P2x x-component of the fixed point representing the starting point of the second wire
P3 fixed point representing the starting point of the third wire
P3x x-component of the fixed point representing the starting point of the third wire
P3y y-component of the fixed point representing the starting point of the third wire
Pe (t) haptic device end-effector displacement
Pex (t) x-component of the haptic device end-effector displacement
Pey (t) y-component of the haptic device end-effector displacement
Pez (t) z-component of the haptic device end-effector displacement
Sm sensor measures vector
Sr real values vector corresponding to one being measured by the sensors
t(t) tension on the single wire
T sampling time in the discretization
tm measured tension on the single wire
tr real value of the tension on the single wire
V (t) unit vector describing the spatial direction of the single wire
z generic positive value in the definition of the admissible forces set
α angle between the force feedback vector and the unit vector describing the admissible forces
β angle between the unit vector of the beam and the unit vector of the wire
βm estimate of the angle between the unit vector of the beam and the unit vector of the wire on the
base of the sensor measures
βr real value of the angle between the unit vector of the beam and the unit vector of the wire
θ encoder measure of the motor angular position
θest motor angular position estimation
τ motor input torque really applied by the motor driver
A.6. EXPERIMENTS
τd motor input torque computed by the device controller
τf time-constant of the first order filter
τmax maximum applicable motor torque
τmin dead-zone value in the motor torque
ωest motor angular speed estimation
105
106
APPENDIX A. NOMENCLATURE
Bibliography
[1] R.J. Adams, B. Hannaford, “A Two-Port Framework for the Design of Unconditionally Stable Haptic
Interfaces,” IEEE Int. Conf. on Intell. Rob. and Sys., May, 1998.
[2] R.J. Adams, B. Hannaford, “Stable Haptic Interaction with Virtual Environments,” IEEE Trans.
on Rob. and Autom., vol. 15, n. 3, June 1999, pp. 465-474.
[3] R.J. Adams, D. Klowden, B. Hannaford, “Stable Haptic Interaction Using the Excalibur Force
Display,” IEEE Int. Conf. on Rob. and Autom., San Francisco, CA, April 2000, pp. 770-775.
[4] R.J. Adams, M.R. Moreyra, B. Hannaford, “Stability and performance of haptic displays: theory
and experiments,” Proc. of the ASME Winter Annual Meeting Haptics Workshop, Nov., 1998.
[5] P. Aigner, B. McCarragher, “Shared Control Framework applied to a Robotic Aid for the Blind,”
IEEE Int. Conf. on Rob. and Autom., Leuven, B, May 1998, pp. 717-722.
[6] S. Aiguo, Z. Qingjun, H. Weiyi, “Identification and Control of Bilateral Telerobot with Time Delay,”
IEEE Int. Conf. on Intell. Rob. and Sys., 1996, pp. 1353-1358.
[7] R.J. Anderson, M.W. Spong, “Bilateral Control of Teleoperators with Time Delay,” IEEE Trans.
on Aut. Con., vol. 34, n. 5, May 1989, pp. 494-501.
[8] R.J. Anderson, M.W. Spong, “Asymptotic Stability for Force Reflecting Teleoperators with Time
Delay,” Int. J. of Rob. Res., vol. 11, n. 2, Apr. 1992, pp. 135-149.
[9] C. Andriot, R. Fournier, J. Vuillemey, “On the Bilateral Control of Teleoperators with Flexible
Joints and Time Delay by the Passive Approach,” 5th Int. Conf. on Adv. Rob., 1991, pp. 231-236.
[10] P. Arcara, L. Di Stefano, S. Mattoccia, C. Melchiorri, G. Vassura, “Perception of depth information
by means of a wire-actuated haptic interface,” 2000 IEEE Int. Conf. on Rob. and Autom., San
Francisco, CA, April 24-28, 2000.
[11] P. Arcara, C. Melchiorri, “3D Position Measurement Based on Force Sensors for a One-Wire Haptic
Interface,” 16th IEEE Instr. and Meas. Tech. Conf., Venice, I, May 24-26, 1999.
[12] P. Arcara, C. Melchiorri, “A Comparison of Control Schemes for Teleoperation with Time Delay,”
Proc. of the 1st IFAC Conf. on Telem. Appl. in Aut. and Rob., Weingarten, Germ., July 24-26, 2001,
pp. 505–510.
[13] P. Arcara, C. Melchiorri, “Control Schemes for Teleoperation with Time Delay: A Comparative
Study,” Rob. and Aut. Sys., vol. 38, n. 1, 2002, pp. 49–64.
[14] P. Arcara, C. Melchiorri, “Position Drift Compensation for a Passivity-Based Telemanipulation
Control Scheme,” Int. Conf. Mechatr., Enschede NL, June 2002, accepted for the publication.
107
108
BIBLIOGRAPHY
[15] P. Arcara, C. Melchiorri, S. Stramigioli, “Intrinsically Passive Control in Bilateral Teleoperation
MIMO Systems,” Proc. of the Eur. Con. Conf., Porto, P, Sept. 4-7, 2001, pp. 1180–1185.
[16] D. Arduini, P. Arcara, C. Melchiorri, “Real-Time Linux in Robotics and Control Systems Research:
A Pratical Experience in the VIDET Project,” Real Time Linux Workshop, Vienna, Austria, Dec.
13-15, 1999.
[17] K.J. Aström, B. Wittenmark, Computer-Controlled Systems, Prentice Hall, Englewood Cliffs, NJ,
1984.
[18] M. Barbanov, “A Linux-based Real-Time Operating System,” Master’s thesis, New Mexico Inst. of
Mining and Tech., Socorro (NM), USA, 1997.
[19] A. Bemporad, “Predictive Control of Teleoperated Constrained Systems with Unbounded Communication Delays,” Proc. of Conf. on Dec. and Con., Tampa, Florida, Dec. 1998, pp. 2133-2138.
[20] E. Bianchi, L. Dozio, P. Mantegazza, D. Martini, “Applications of a New Variant of RT-Linux in
Digital Control of Dynamic Systems,” Dept. of Aerospace Eng., Politecnico di Milano, Italy, 1999.
[21] C. Bonivento, L. Di Stefano, M. Ferri, C. Melchiorri, G. Vassura, “The VIDET Project: Basic Ideas
and Early Results,” 8th Int. Conf. on Adv. Rob., Monterey, CA, July 7-9, 1997.
[22] C. Bonivento, A. Eusebi, C. Melchiorri, M. Montanari, G. Vassura, “WireMan: A Portable Wire
Manipulator for Touch-Rendering of Bas-Relief Virtual Surfaces,” 8th Int. Conf. on Adv. Rob.,
Monterey, CA, July 7-9, 1997.
[23] J. Borenstein, I. Ulrich, “The Guide-Cane, a Computerized Travel Aid for the Active Guidance of
Blind Pedrestians, IEEE Int. Conf. on Rob. and Autom., Albuquerque, NM, April 1997.
[24] E. Bourque, G. Dudek, P. Ciaravola, “Robotic Sightseeing - A Method for Automatically Creating
Virtual Environments,” IEEE Int. Conf. on Rob. and Autom., Leuven, B, May 1998, pp. 3186-3191.
[25] S. Boyd, V. Balakrishnan, E. Feron, L. El Ghaoui, “Control System Analysis and Synthesis via
Linear Matrix Inequalities,” Proc. of the Amer. Con. Conf., San Francisco, CA, June 1993, pp.
2147-2154.
[26] S. Boyd, L. El Ghaoui, E. Feron, V. Balakrishnan, “Linear Matrix Inequalities in System and Control
Theory,” SIAM, 1994.
[27] F.P. Brooks Jr., M. Ouh-young, J.J. Batter, P.J. Kilpatrick, “Project GROPE - Haptic Displays for
Scientific Visualization,” ACM Comp. Graph., vol. 24, n. 4, 1990, pp. 177-185.
[28] J.M. Brown, J.E. Colgate, “Passive implementation of multibody simulations for haptic display,”
Proc. of the ASME Int. Mech. Eng. Congress and Exhibition, vol. DSC-61, 1997, pp. 85-92.
[29] J.M. Brown, J.E. Colgate, “Minimum mass for haptic display simulations,” Proc. of the ASME Int.
Mech. Eng. Congress and Exhibition, 1998.
[30] G.C. Burdea, “Force and Touch Feedback for Virtual Reality,” John Wiley & Sons, Inc., 1996.
[31] P. Buttolo, D. Kung, B. Hannaford, “Manipulation in Real, Virtual and Remote Environments,”
Proc. IEEE Conf. on Sys., Man and Cybern., vol. 5, Vancuver, BC, Oct. 1995.
[32] P. Buttolo, R. Oboe, B. Hannaford, B. McNeely, “Force Feedback in Shared Virtual Simulations,”
Proc. MICAD, Paris, F, 1996.
BIBLIOGRAPHY
109
[33] C.I. Byrnes, A. Isidori, J.C. Willems, “Passivity, Feedback Equivalence, and the Global Stabilization
of Minimum Phase Nonlinear Systems,” IEEE Trans. on Aut. Con., vol. 36, n. 11, Nov. 1991, pp.
1228-1240.
[34] R. Carelli, R. Kelly, “An Adaptive Impedance/Force Controller for Robot Manipulators,” IEEE
Trans. on Aut. Con., vol. 36, n. 8, Aug. 1991, pp. 967-971.
[35] C.R. Carignan, K.R. Cleary, “Closed-Loop Force Control for Haptic Simulation of Virtual Environments,” Haptics-e, http://www.haptics-e.org/, vol. 1, n. 2, Febr. 2000.
[36] A. Casavola, E. Mosca, M. Papini, “Teleoperation of Constrained Dynamical Systems via the Internet,” IFAC Workshop on Lin. Time Delay Sys., LTDS’00, Ancona, I, Sept. 2000, pp. 258-263.
[37] M.C. Cavusoglu, F. Tendick, “Multirate Simulation for High Fidelity Haptic Interaction with Deformable Objects in Virtual Environments,” IEEE Int. Conf. on Rob. and Autom., San Francisco,
CA, April 2000, pp. 2458-2465.
[38] J. Chen, “On Computing the Maximal Delay Intervals for Stability of Linear Delay Systems,” IEEE
Trans. on Aut. Con., vol. 40, n. 6, June 1995, pp. 1087-1093.
[39] J. Chen, “Corrections to “On Computing the Maximal Delay Intervals for Stability of Linear Delay
Systems”,” IEEE Trans. on Aut. Con., vol. 45, n. 11, Nov. 2000, p. 2198.
[40] C.L. Clover, G.R. Luecke, J.J. Troy, W.A. McNeely, “Dynamic Simulation of Virtual Mechanisms
with Haptic Feedback Using Industrial Robotics Equipment,” IEEE Int. Conf. on Rob. and Autom.,
Albuquerque, New Mexico, April 1997, pp. 724-730.
[41] J.E. Colgate, “Robust Impedance Shaping Telemanipulation,” IEEE Trans. on Rob. and Aut., vol.
9, n. 4, Aug. 1993, pp. 374-384.
[42] J.E. Colgate, “Coupled Stability of Multiport Systems - Theory and Experiments,” J. of Dyn. Sys.,
Measur. and Con., vol. 116, Sept. 1994, pp. 419-428.
[43] J.E. Colgate, “Coordinate Transformations and Logical Operations for Minimizing Conservativeness
in Coupled Stability Criteria,” J. of Dyn. Sys., Measur. and Con., vol. 116, Dec. 1994, pp. 643-649.
[44] J.E. Colgate, J.M. Brown, “Factors Affecting the Z-Width of a Haptic Display,” IEEE Int. Conf. on
Rob. and Autom., San Diego, CA, 1994.
[45] J.E. Colgate, N. Hogan, “Robust control of dynamically interacting systems,” Int. J. Control, vol.
48, n. 1, 1988, pp. 65-88.
[46] J.E. Colgate, N. Hogan, “An analysis of contact instability in terms of passive physical equivalents,”
Proc. of the IEEE Rob. and Autom. Conf., Scottsdale, AZ, 1989, pp. 404-409.
[47] J.E. Colgate, G.G. Schenkel, “Passivity of a Class of Sampled-Data Systems: Applications to Haptic
Interfaces,” American Con. Conf., Baltimore, 1994.
[48] J.E. Colgate, M.C. Stanley, J.M. Brown, “Issues in the Haptic Display of Tool Use,” IEEE/RSJ Int.
Conf. on Intell. Rob. and Sys., vol. 3, Pittsburgh, 1995, pp. 140-145.
[49] L. Di Stefano, A. Eusebi, M. Ferri, C. Melchiorri, M. Montanari, G. Vassura, “A robotic system for
visually impaired people based on stereo-vision and force-feedback,” Proc. IARP Int. Workshop on
Medical Rob., Vienna, Oct. 1-2, 1996.
110
BIBLIOGRAPHY
[50] L. Di Stefano, S. Mattoccia, “The Videt Stereo Algorithm (VSA),” LAR-DEIS Technical Report,
1999.
[51] L. Di Stefano, C. Melchiorri, G. Vassura, “Haptic Interfaces as Aids for Visually Impaired Persons,”
8th Int. Workshop on Rob. and Human Interaction, Pisa, I, Sept. 27-29, 1999.
[52] J.C. Doyle, K. Glover, P.P. Khargonekar, B.A. Francis, “State-Space Solutions to Standard H2 and
H∞ Control Problems,” IEEE Trans. on Aut. Con., vol. 34, n. 8, Aug. 1989, pp. 831-847.
[53] S.R. Ellis, “Virtual Environments and Environmental Instruments,” Simulated and Virtual Realities,
K. Carr and R. England, eds. Taylor & Francis, London, 1996, pp. 11-51.
[54] R.E. Ellis, N. Sarkar, M.A. Jenkins, “Numerical Methods for the Force Reflection of Contact,” ASME
J. Dyn. Sys., Meas., Con., 119(4), 1997, pp. 768-774.
[55] A. Eusebi, “Sistemi di teleoperazione bilaterale di posizione e forza in presenza di ritardi,” Ph.D.
Thesis in Systems Engineer, University of Bologna, 1995.
[56] A. Eusebi, C. Melchiorri, “Force Reflecting Telemanipulators with Time-Delay: Stability Analysis
and Control Design,” IEEE Trans. on Rob. and Aut., vol. 14, n. 4, Aug. 1998, pp. 635-640.
[57] E.D. Fasse, J.F. Broenink, “A Spatial Impedance Controller for Robotic Manipulation,” IEEE Trans.
on Rob. and Aut., vol. 13, n. 4, Aug. 1997, pp. 546-556.
[58] W.R. Ferrell, “Remote manipulation with transmission delay,” IEEE Trans. on Human Factors
Electron., vol. 6, 1965, pp. 24-32.
[59] W.R. Ferrell, “Delayed force feedback,” IEEE Trans. on Human Factors Electron., vol. 8, Oct. 1966,
pp. 449-455.
[60] H. Fischer, R. Trapp, L. Schüle, B. Hoffmann, “Actuator Array for Use in Minimally Invasive
Surgery,” Eur. Symp. on Martensitic Transform., ESOMAT’97, Enschede, The Netherlands, July
1-5, 1997.
[61] R.B. Gillespie, J.E. Colgate, “A survey of multibody dynamics for virtual environments,” Int. Mech.
Eng. Congress and Exposition, Dallas, TX, 1997.
[62] R.B. Gillespie, M.R. Cutkosky, “Stable user-specific haptic rendering of the virtual wall,” Int. Mech.
Eng. Congress and Exposition, Atlanta, GA, 1996.
[63] B. Hannaford, “Stability and Performance Tradeoffs in Bi-Lateral Telemanipulation,” IEEE Int.
Conf. on Rob. and Aut., Scottsdale, AZ, May 1989, pp. 1764-1767.
[64] B. Hannaford, “A Design Framework for Teleoperators with Kinesthetic Feedback,” IEEE Trans. on
Rob. and Aut., vol. 5, n. 4, Aug. 1989, pp. 426-434.
[65] K. Hashtrudi-Zaad, S.E. Salcudean, “On the Use of Local Force Feedback for Transparent Teleoperation,” IEEE Int. Conf. on Rob. and Aut., Detroit, MI, May 1999, pp. 1863-1869.
[66] K. Hashtrudi-Zaad, S.E. Salcudean, “Analysis and Evaluation of Stability and Performance Robustness for Teleoperation Control Architectures,” IEEE Int. Conf. on Rob. and Aut., San Francisco,
CA, Apr. 2000, pp. 3107-3113.
[67] V. Hayward, O.R. Astley, “Performance Measures for Haptic Interfaces,” Int. Rob. Research: The
7th Int. Symposium, G. Giralt, G. Hirzinger (Eds.), Springer Verlag, 1996, pp. 195-207.
BIBLIOGRAPHY
111
[68] V. Hayward, J.M. Cruz-Hernandez, “Parameter Sensitivity Analysis for Design and Control of Tendon Transmissions,” Lecture Notes in Con. and Inform. Sciences 223, Experimental Robotics IV,
O. Khatib, J.K. Salisbury (Eds.), 1997, pp. 241-252.
[69] N. Hogan, “Impedance Control: An Approach to Manipulation: Part I - Theory,” J. of Dyn. Sys.,
Measur. and Con., vol. 107, March 1985, pp. 1-7.
[70] N. Hogan, “Impedance Control: An Approach to Manipulation: Part II - Implementation,” J. of
Dyn. Sys., Measur. and Con., vol. 107, March 1985, pp. 8-16.
[71] N. Hogan, “Impedance Control: An Approach to Manipulation: Part III - Applications,” J. of Dyn.
Sys., Measur. and Con., vol. 107, March 1985, pp. 17-24.
[72] N. Hogan, “On the Stability of Manipulators Performing Contact Tasks,” IEEE J. of Rob. and
Autom., vol. 4, n. 6, Dec. 1988, pp. 677-686.
[73] J.Y. Hung, W. Gao, J.C. Hung, “Variable Structure Control: A Survey,” IEEE Trans. on Industr.
Electr., vol. 40, n. 1, Febr. 1993, pp. 2-22.
[74] M. Ishii, M. Sato, “A 3D Spatial Interface Device Using Tensed Strings,” Presence, vol. 3, n. 1, 1994,
pp. 81-86.
[75] A. Isidori, “Nonlinear Control Systems,” Springer, 1995.
[76] K. Itabashi, K. Hayakama, T. Suzuki, S. Okuma, F. Fujiwara, “Modeling of the Peg-in-Hole Task
Based on Impedance Parameters and HMM,” IEEE Int. Conf. on Intell. Rob. and Sys., 1997, pp.
451-457.
[77] D.E. Johnson, E. Cohen, “Minimum Distance Queries For Polygonal And Parametric Models,”
Technical Report UUCS-97-003, University of Utah, Dept. of Computer Science, Feb. 26, 1997.
[78] D.E. Johnson, E. Cohen, “A Framework For Efficient Minimum Distance Computations,” IEEE Int.
Conf. on Rob. and Autom., Leuven, B, May 1998, pp. 3678-3684.
[79] A. Joukhadar, A. Deguet, C. Laugier, “A Collision Model for Rigid and Deformable Bodies,” IEEE
Int. Conf. on Rob. and Autom., Leuven, B, May 1998, pp. 982-988.
[80] H. Kazerooni, M.G. Her, “The Dynamics and Control of a Haptic Interface Device,” IEEE Trans.
on Rob. and Aut., vol. 10, n. 4, Aug. 1994, pp. 453-464.
[81] H. Kazerooni, T.I. Tsay, K. Hollerbach, “A Controller Design Framework for Telerobotic Systems,”
IEEE Trans. on Con. Sys. Tech., vol. 1, n. 1, March 1993, pp. 50-62.
[82] R. Kelly, R. Carelli, M. Amestegui, R. Ortega, “On Adaptive Impedance Control of Robot Manipulators,” IEEE J. of Rob. and Autom., vol. 4, n. 3, 1989, pp. 572-577.
[83] O. Khatib, “A Unified Approach for Motion and Force Control of Robot Manipulators: The Operational Space Formulation,” IEEE J. of Rob. and Autom., vol. RA-3, n. 1, Febr. 1987, pp. 43-53.
[84] W.S. Kim, “Shared Compliant Control: a Stability Analysis and Experiments,” IEEE Conf. on Sys.,
Man, and Cyber., Los Angeles, CA, Nov. 1990, pp. 620-623.
[85] W.S. Kim, “Developments of New Force Reflecting Control Schemes and an Application to a Teleoperation Training Simulator,” IEEE Int. Conf. on Rob. and Aut., Nice, France, May 1992, pp.
1412-1419.
112
BIBLIOGRAPHY
[86] W.S. Kim, B. Hannaford, A.K. Bejczy, “Force-Reflection and Shared Compliant Control in Operating
Telemanipulators with Time Delay,” IEEE Trans. on Rob. and Aut., vol. 8, n. 2, April 1992, pp.
176-185.
[87] P.R. Kraus, V. Kumar, P. Dupont, “Analysis of frictional contact models for dynamic simulation,”
IEEE Int. Conf. on Rob. and Autom., Leuven, B, May 1998, pp. 976-981.
[88] R. Kurtz, V. Hayward, “Dexterity measures with unilateral actuation constraints: the n + 1 case,”
Adv. Rob., vol. 9, n. 5, 1995, pp. 561-577.
[89] G. Lacey, K.M. Dawson-Howe, “The Application of Robotics to a Mobility Aid for the Elderly
Blind”, J. of Rob. and Aut. Sys., Vol. 23, No.4, 245-252, 1998.
[90] C.A. Lawn, B. Hannaford, “Performance Testing of Passive Communication and Control in Teleoperation with Time Delay,” IEEE Int. Conf. on Rob. and Aut., Atlanta, GA, May 1993, pp. 776-783.
[91] D.A. Lawrence, “Stability and Transparency in Bilateral Teleoperation,” IEEE Trans. on Rob. and
Aut., vol. 9, n. 5, Oct. 1993, pp. 624-637.
[92] S. Lee, H.S. Lee, “Design of Optimal Time Delayed Teleoperator Control System,” IEEE Int. Conf.
on Rob. and Aut., San Diego, CA, 1994, pp. 3252-3258.
[93] G.M. Leung, B.A. Francis, J. Apkarian, “Bilateral Controller for Teleoperators with Time Delay via
µ-Synthesis,” IEEE Trans. on Rob. and Aut., vol. 11, n. 1, Febr. 1995, pp. 105-116.
[94] G.M. Leung, T.P. Perry, B.A. Francis, “Performance Analysis of Sampled-data Control Systems,”
Automatica, vol. 27, n. 4, 1991, pp. 699-704.
[95] F. Lin, R.D. Brandt, “An Optimal Control Approach to Robust Control of Robot Manipulators,”
IEEE Trans. on Rob. and Autom., vol. 14, n. 1, Febr. 1998, pp. 69-77.
[96] R. Lozano, B. Brogliato, O. Egeland, B. Maschke, “Dissipative Systems Analysis and Control,”
Springer, 2000.
[97] A. Macchelli, C. Melchiorri, D. Arduini, “Real-time Linux Control of a Haptic Interface for Visually
Impaired Persons,” 6th Int. IFAC Symposium on Rob. Con., SYROCO’00, Vienna, Austria, Sept.
21-23, 2000.
[98] M.J. Mc Donnell, “Box-Filtering Techniques,” Comp. Graph. and Image Process., vol. 17, 1981, pp.
65-70.
[99] C. Melchiorri, A. Eusebi, “Telemanipulation: System Aspects and Control Issues,” Int. Summer Sch.
on Modelling and Con. of Mechanisms and Robots, C. Melchiorri and A. Tornambè (Eds.), World
Sc., 1996, pp. 149-183.
[100] C. Melchiorri, M. Montanari, G. Vassura, “Control Strategies for a Defective, Wire-Based, Haptic
Interface,” Int. Conf. on Intell. Rob. and Sys., Grenoble, F, Sept. 8-12, 1997.
[101] C. Melchiorri, S. Stramigioli, S. Andreotti, “Using Damping Injection and Passivity in Robotic
Manipulation,” Proc. of the IEEE-ASME Int. Conf. on Adv. Intell. Mechatronics, Atlanta, USA,
1999.
[102] C. Melchiorri, A. Tornambè, “Modelling and Control of Mechanisms and Robots,” World Scientific,
1996.
BIBLIOGRAPHY
113
[103] C. Melchiorri, G. Vassura, “A Performance Index for Defective, Multi-Wire, Haptic Interfaces,”
IEEE Int. Conf. on Rob. and Autom., Leuven, B, May 16-21, 1998.
[104] C. Melchiorri, G. Vassura, “Development and Application of Wire-Actuated Haptic Interfaces,”
Int. J. of Intell. and Rob. Sys., Special Issue on “Humanoid Robotics and Biorobotics,” J. Lenarcic
Ed., Jan. 2000.
[105] C. Melchiorri, G. Vassura, P. Arcara, “What Kind of Haptic Perception Can We Get With a
One-Wire Interface?,” 1999 IEEE Int. Conf. on Rob. and Autom., Detroit, MI, May 10-15, 1999.
[106] B.E. Miller, J.E. Colgate, R.A. Freeman, “Passive Implementation for a Class of Static Nonlinear
Environments in Haptic Display,” IEEE Int. Conf. on Rob. and Autom., Detroit, MI, May, 1999.
[107] B.E. Miller, J.E. Colgate, R.A. Freeman, “Environment Delay in Haptic Systems,” IEEE Int. Conf.
on Rob. and Aut., San Francisco, CA, Apr. 2000, pp. 2434-2439.
[108] P.A. Millman, J.E. Colgate, “Design of a four degree-of-freedom force-reflecting manipulandum
with a specified force/torque workspace,” IEEE Int. Conf. on Rob. and Autom., Sacramento, CA,
April 1991, pp. 1488-1493.
[109] M. Minsky, M. Ouh-young, O. Steele, F.P. Brooks Jr., M. Behensky, “Feeling and Seeing: Issues in
Force Display,” ACM Comp. Graph., vol. 24, n. 2, 1990, pp. 235-243.
[110] J. Moline, “Virtual Reality for Health Care: a survey,” Virtual Reality in Neuro-Psycho-Physiol. Cognit., clinic. and methodolog. issues in assessment and rehabil., Ed. G. Riva, IOS Press, 1997.
[111] Molton N., Se S., Brady J.M., Lee D., and Probert P., “A Stereo Vision-Based Aid for the VisuallyImpaired”, Special Ed. of the Image and Vision Comp. J., 1997.
[112] S. Munir, “Internet-Based Teleoperation,” PhD Thesis, George W. Woodruff Sch. of Mech. Eng.,
Georgia Inst. of Tech., Feb. 2001.
[113] G. Niemeyer, J.E. Slotine, “Performance in Adaptive Manipulator Control,” Proc. of the Conf. on
Dec. and Con., Austin, Texas, Dec. 1988, pp. 1585-1591.
[114] G. Niemeyer, J.E. Slotine, “Stable Adaptive Teleoperation,” Int. J. of Oceanic Eng., vol. 16, n. 1,
Jan. 1991, pp. 152-162.
[115] G. Niemeyer, J.E. Slotine, “Designing Force Reflecting Teleoperators with Large Time Delays to
Appear as Virtual Tools,” IEEE Int. Conf. on Rob. and Aut., Albuquerque, NM, Apr. 1997, pp.
2212-2218.
[116] G. Niemeyer, J.E. Slotine, “Towards Force-Reflecting Teleoperation Over the Internet,” IEEE Int.
Conf. on Rob. and Aut., Leuven, Belgium, May 1998, pp. 1909-1915.
[117] R. Oboe, P. Fiorini, “A Design and Control Environment for Internet-Based Telerobotics,” Int. J.
of Rob. Res., vol. 17, n. 4, Apr. 1998, pp. 433-449.
[118] A.M. Okamura, M.R. Cutkosky, “Haptic Exploration of Fine Surface Features,” IEEE Int. Conf.
on Rob. and Autom., Detroit, MI, May 1999, pp. 2930-2936.
[119] C.J. Ong, E. Huang, “An incremental version of growth distance,” IEEE Int. Conf. on Rob. and
Autom., Leuven, B, May 1998, pp. 3671-3677.
[120] R. Ortega, A. Loria, P.J. Nicklasson, H. Sira-Ramirez, “Passivity-based Control of Euler-Lagrange
Systems,” Springer, Series in Mech., Electr. and Electromech. Appl., 1998.
114
BIBLIOGRAPHY
[121] R. Ortega, M.W. Spong, “Adaptive Motion Control of Rigid Robots: a Tutorial,” Automatica, vol.
25, n. 6, 1989, pp. 877-888.
[122] Z. Palmor, “Stability properties of Smith dead-time compensator controllers,” Int. J. of Con., vol.
32, n. 6, 1980, pp. 937-949.
[123] J.H. Park, H.C. Cho, “Sliding-Mode Controller for Bilateral Teleoperation with Varying Time
Delay,” IEEE Int. Conf. on Adv. Intell. Mechatronics, Atlanta, GA, Sept. 1999, pp. 311-316.
[124] L.F. Peñin, “Teleoperation with time delay - A survey and its use in space robotics,” 6th ESA
Workshop on Adv. Space Tech. for Rob. and Aut., Noordwijk, NL, Dec. 2000.
[125] D.O. Popa, S.K. Singh, “Creating Realistic Force Sensations in a Virtual Environment: Experimental System, Fundamental Issues and Results,” IEEE Int. Conf. on Rob. and Autom., Leuven, B,
May 1998, pp. 59-64.
[126] P.A. Prokopiou, S.G. Tzafestas, W.S. Harwin, “Towards Variable-Time-Delays-Robust Telemanipulation Through Master State Prediction,” IEEE Int. Conf. on Adv. Intell. Mechatr., AIM’99,
Atlanta, GA, Sept. 1999, pp. 305-310.
[127] J.P. Richard, “Some Trends and Tools for the Study of Time Delay Systems,” Proc. IEEE Conf.
Computat. Eng. in Sys. Appl., Nabeul, Tunisia, April 1-4, 1998.
[128] L.B. Rosenberg, B.D. Adelstein, “Perceptual Decomposition of Virtual Haptic Surfaces,” Proc.
IEEE Symp. on Res. Frontiers in Virtual Reality, San Jose, CA, Oct. 1993, pp. 46-53.
[129] D.C. Ruspini, K. Kolarov, O. Khatib, “Haptic Interaction in Virtual Environments,” IEEE Int.
Conf. on Intell. Rob. and Sys., 1997, pp. 128-133.
[130] S.E. Salcudean, “Control for Teleoperation and Haptic Interfaces,” Control Problems in Rob. and
Autom., B. Siciliano and K.P. Valavanis (Eds.), Springer-Verlag Lecture Notes in Con. and Inform.
Sc., vol. 230, Dec. 1997, pp. 51-66.
[131] S.E. Salcudean, T.D. Vlaar, “On the Emulation of Stiff Walls and Static Friction with a Magnetically Levitated Input/Output Device,” J. of Dyn. Sys., n. 119, pp. 127-132, March 1997.
[132] S. Sastry, M. Bodson, “Adaptive Control - Stability, Convergence, and Robustness,” Prentice-Hall
Inf. and Sys. Sc. Series, 1989.
[133] R. Sepulchre, M. Jankovic, P.V. Kokotovic, “Passivity Concepts as Design Tools,” Constructive
Nonlinear Control, Springer-Verlag, Series in Communic. and Con. Eng., 1997, pp. 25-69.
[134] Y. Shen, H. Osumi, T. Arai, “Set of Manipulating Forces in Wire Driven Systems,” IEEE Int.
Conf. on Intell. Rob. and Sys., vol. 3, Munich, Germany, 1994, pp. 1626-1631.
[135] Y. Shen, H. Osumi, T. Arai, “Manipulability Measures for Multi-wire Driven Parallel Mechanisms,”
IEEE Int. Conf. on Ind. Tech., Guangzhou, China, Dec. 1994, pp. 550-554.
[136] T.B. Sheridan, “Telerobotics,” Automatica, vol. 25, n. 4, 1989, pp. 487-507.
[137] T.B. Sheridan, “Space Teleoperation Through Time Delay: Review and Prognosis,” IEEE Trans.
on Rob. and Aut., vol. 9, n. 5, Oct. 1993, pp. 592-606.
[138] M.R. Sirouspour, S.P. DiMaio, S.E. Salcudean, P. Abolmaesumi, C. Jones, “Haptic Interface Control – Design Issues and Experiments with a Planar Device,” IEEE Int. Conf. on Rob. and Autom.,
San Francisco, CA, April 2000, pp. 789-794.
BIBLIOGRAPHY
115
[139] J.E. Slotine, W. Li, “Applied Nonlinear Control,” Prentice-Hall Int. Ed., 1991.
[140] O.J.M. Smith, “Closer Control of Loops with Dead Time,” Chemical Eng. Progr., vol. 53, n. 5,
May 1957, pp. 217-219.
[141] M.W. Spong, M. Vidyasagar, “Robot dynamics and control,” John Wiley and Sons, Inc., 1989.
[142] L. Stocco, S.E. Salcudean, “A Coarse-Fine Approach to Force-Reflecting Hand Controller Design,”
IEEE Int. Conf. on Rob. and Autom., Minneapolis, Minnesota, April 22-28, 1996.
[143] S. Stramigioli, “Creating artificial damping by means of damping injection,” Proc. of the ASME
IMECE meeting, Atlanta (GA), Nov. 1996.
[144] S. Stramigioli, “From Differentiable Manifolds to Interactive Robot Control,” PhD Thesis, Delft
Univ. of Tech., Dec. 1998.
[145] S. Stramigioli, “Modeling and IPC Control of Interactive Mechanical Systems - A Coodinate-Free
Approach,” Lecture Notes in Con. and Inform. Sc., Springer-Verlag, 2001.
[146] S. Stramigioli, C. Melchiorri, S. Andreotti, “A Passivity-Based Control Scheme for Robotic Grasping
and Manipulation,” Proc. of the Conf. on Dec. and Con., Phoenix, USA, 1999.
[147] S. Stramigioli, A. van der Schaft, B. Maschke, S. Andreotti, C. Melchiorri, “Geometric Scattering
in Tele-manipulation of Port Controlled Hamiltonian Systems,” Proc. of Conf. on Dec. and Con.,
Sydney, Australia, Dec. 2000.
[148] J.H. Su, I.K. Fong, C.L. Tseng, “Stability Analysis of Linear Systems with Time Delay,” IEEE
Trans. on Aut. Con., vol. 39, n. 6, June 1994, pp. 1341-1344.
[149] H.Z. Tan, M.A. Srinivasan, B. Eberman, B. Cheng, “Human factors for the design of force-reflecting
haptic interfaces,” ASME Dyn. Sys. and Con., vol. 55, n. 1, 1994, pp. 353-359.
[150] A. Thowsen, “An Analytic Stability Test for a Class of Time-Delay Systems,” IEEE Trans. on Aut.
Con., vol. 26, n. 3, June 1981, pp. 735-736.
[151] A. Tilli, M. Montanari, “A low-noise estimator of angular speed and acceleration from shaft encoder
measurements,” 9th Mediterr. Conf. on Con. and Autom., Dubrovnik, June 2001.
[152] Y. Tsumaki, H. Naruse, D.N. Nenchev, M. Ukiyama, “On Force Control in Human Physical Skill,”
IEEE Int. Conf. on Intell. Rob. and Sys., 1997, pp. 458-463.
[153] C. Turnbull, S. Cameron, “Computing Distances Between NURBS-defined Convex Objects,” IEEE
Int. Conf. on Rob. and Autom., Leuven, B, May 1998, pp. 3685-3690.
[154] S.G. Tzafestas, C.S. Tzafestas, “Virtual Reality in Telerobotics: The state-of-the-art,” IEEE Int.
Symp. on Ind. Electr., 1999, pp. 280-286.
[155] L. Vandenberghe, S. Boyd, “Semidefinite Programming,” SIAM Review, vol. 38, n. 1, 1996, pp.
49-95.
[156] A. van der Schaft, “L2 -Gain and Passivity Techniques in Nonlinear Control,” Springer, Series in
Communic. and Con. Eng., 2000.
[157] J.G. Wang, Y.F. Li, “3D Object Modeling Using a Binocular Vision System,” IEEE Instrum. and
Measur. Tech. Conf., Venice, I, May 24-26, 1999.
116
BIBLIOGRAPHY
[158] R.L. Williams II, “Cable-Suspended Haptic Interface,” Int. J. of Virtual Reality, vol. 3, n. 3, 1998,
pp. 13-21.
[159] N. Xi, T.J. Tarn, “Action Synchronization and Control of Internet Based Telerobotic Systems,”
IEEE Int. Conf. on Rob. and Autom., Detroit, MI, May, 1999.
[160] Y.Y. Yokokohji, R.L. Hollis, T. Kanade, “What you can see is what you can feel - Development of
a visual/haptic interface to virtual environment,” IEEE Virtual Reality Annual Int. Symp., MarchApril 1996, pp. 46-53.
[161] Y.Y. Yokokohji, R.L. Hollis, T. Kanade, K. Henmi, T. Yoshikawa, “Toward Machine Mediated
Training of Motor Skills - Skill Transfer from Human to Human via Virtual Environment,” 5th IEEE
Int. Workshop on Rob. and Human Communic., Tsukuba, Japan, Nov. 11-14, 1996, pp. 32-37.
[162] Y. Yokokohji, T. Imaida, T. Yoshikawa, “Bilateral Teleoperation under Time-Varying Communication Delay,” IEEE Int. Conf. on Intell. Rob. and Sys., Kyongju, Korea, Oct. 1999, pp. 1854-1859.
[163] Y. Yokokohji, T. Imaida, T. Yoshikawa, “Bilateral Control with Energy Balance Monitoring Under
Time-Varying Communication Delay,” IEEE Int. Conf. on Rob. and Aut., San Francisco, CA, Apr.
2000, pp. 2684-2689.
[164] Y. Yokokohji, T. Yoshikawa, “Bilateral Control of Master-Slave Manipulators for Ideal Kinesthetic
Coupling – Formulation and Experiment,” IEEE Trans. on Rob. and Aut., vol. 10, n. 5, Oct. 1994,
pp. 605-620.
[165] T. Yoshikawa, A. Nagura, “A Three-Dimensional Touch/Force Dysplay System for Haptic Interface,” IEEE Int. Conf. on Rob. and Autom., Detroit, MI, May 1999, pp. 2943-2951.
[166] T. Yoshikawa, K. Yoshimoto, “Haptic Simulation of Assembly Operation in Virtual Environment,”
IEEE Int. Conf. on Rob. and Autom., Detroit, MI, May 1999.
[167] W.H. Zhu, S.E. Salcudean, “Teleoperation with Adaptive Motion/Force Control,” IEEE Int. Conf.
on Rob. and Aut., Detroit, MI, May 1999, pp. 231-237.
[168] W.H. Zhu, S.E. Salcudean, “Stability Guaranteed Teleoperation: An Adaptive Motion/Force Control Approach,” IEEE Trans. on Aut. Con., vol. 45, n. 11, Nov. 2000, pp. 1951-1969.
[169] C.B. Zilles, J.K. Salisbury, “A Constraint-based God-object Method For Haptic Display,” ASME
Dyn. Sys. and Con., vol. 1, Chicago, IL, 1994, pp. 146-150.
Web references:
[170] http://labvisione.deis.unibo.it/˜smattoccia/stereovision.html, Experimental results on the Videt
Stereo Algorithm.
[171] http://haptic.mech.northwestern.edu, Haptics Community Web Page.
[172] http://www.haptics-e.org, Haptics-e, The Electronic Journal of Haptics Research.
[173] http://www-lar.deis.unibo.it, Laboratory of Automation and Robotics.
[174] http://www-lar.deis.unibo.it/activities/videt/index.html, Videt Project.
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement