Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the...

101
Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems by Dame Jankuloski A thesis submitted in conformity with the requirements for the degree of Master of Applied Science Graduate Department of Electrical and Computer Engineering University of Toronto c Copyright 2012 by Dame Jankuloski

Transcript of Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the...

Page 1: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Virtual Holonomic Constraints and the Synchronization of

Euler-Lagrange Control Systems

by

Dame Jankuloski

A thesis submitted in conformity with the requirementsfor the degree of Master of Applied Science

Graduate Department of Electrical and Computer Engineering

University of Toronto

c© Copyright 2012 by Dame Jankuloski

Page 2: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Abstract

Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control

Systems

Dame Jankuloski

Master of Applied Science

Graduate Department of Electrical and Computer Engineering

University of Toronto

2012

A virtual holonomic constraint (VHC) for an Euler-Lagrange Control System is a smooth

relation between the configuration variables that can be made invariant through appli-

cation of suitable feedback. In this thesis we investigate the role played by VHCs in the

synchronization of Euler-Lagrange systems. We focus on two problems. For N under-

actuated cart-pendulums, we design a smooth feedback that fully synchronizes the cart-

pendulums while simultaneously stabilizing a periodic orbit corresponding to a desired

oscillation for the pendulums. A by-product of our results is the ability to simultaneously

synchronize the pendulums and stabilize the unstable upright equilibrium. The second

synchronization problem investigated in this thesis is bilateral teleoperation, whereby a

master robot is operated by a human while a slave robot synchronizes to the master. For

two identical planar manipulators, we develop a methodology to achieve teleoperation in

the presence of a hard surface, with simultaneous force control.

ii

Page 3: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Acknowledgements

First and foremost, I would like to thank my mentor, Professor Manfredi Maggiore. His

love and passion for control systems have inspired me to pursue studies in this field. I

truly enjoyed learning from his teachings.

Thanks to Prof. Broucke and Prof. Pavel for being part of my thesis committee and

giving me feedback on this work. I also want to thank Prof. Francis for introducing me

to proper mathematical writing. Thanks to all my friends in the Systems Control Group

at University of Toronto for their help and support.

Finally, thank you to my parents and brother for their support in pursuing these

studies.

iii

Page 4: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Contents

1 Introduction 1

1.1 Literature review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1.1 Virtual holonomic constraints . . . . . . . . . . . . . . . . . . . . 4

1.1.2 Teleoperation systems . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2 Thesis organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.3 Statement of contributions . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.4 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Virtual Holonomic Constraints 9

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2 VHCs: Definition and regularity . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 Motion on the constraint manifold . . . . . . . . . . . . . . . . . . . . . . 18

2.4 Systems with degree of underactuation one . . . . . . . . . . . . . . . . . 26

2.4.1 Conditions for Euler-Lagrange reduced dynamics . . . . . . . . . 26

2.4.2 Qualitative properties of the reduced motion . . . . . . . . . . . . 29

2.4.3 Effects of dissipation . . . . . . . . . . . . . . . . . . . . . . . . . 32

2.4.4 Stabilization of closed orbits on the constrained manifold . . . . . 35

3 Synchronizing N Cart-Pendulums 43

3.1 System model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

3.2 Synchronization of oscillations problem (SOP) . . . . . . . . . . . . . . . 44

iv

Page 5: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

3.3 Solution of SOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

3.3.1 Design for the case N = 2 . . . . . . . . . . . . . . . . . . . . . . 46

3.3.2 Design for N cart-pendulums . . . . . . . . . . . . . . . . . . . . 55

3.4 Simulation results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

3.5 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

4 A Bilateral Teleoperation Problem 61

4.1 Teleoperation problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

4.2 Solution methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.3 Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4.3.1 Free motion phase . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4.3.2 Contact phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

4.3.3 Impact phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

4.3.4 Numerical simulation of impact . . . . . . . . . . . . . . . . . . . 71

4.4 Solution of the teleoperation problem . . . . . . . . . . . . . . . . . . . . 71

4.4.1 P1: Full synchronization during free motion phase . . . . . . . . . 71

4.4.2 P2: Constraining motion of the end effectors . . . . . . . . . . . . 72

4.4.3 P3: End effector synchronization during contact phase . . . . . . 75

4.4.4 P4: Human force estimation on local robot . . . . . . . . . . . . . 80

4.4.5 P5: Force control on remote robot . . . . . . . . . . . . . . . . . . 83

4.4.6 Summary of controller solving the teleoperation problem . . . . . 84

4.5 Simulation results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

5 Conclusions 88

Bibliography 90

v

Page 6: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

List of Figures

1.1 Courtship ritual of grebes. . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 An excerpt from a letter by Dutch physicist Christiaan Huygens concerning

the synchronization of two pendulum clocks mounted on the same wall beam. 2

1.3 Quanser’s pantograph robot, a three degrees-of-freedom haptic interface . 3

2.1 An illustration of the definition of the constraint manifold Γ for h(q) = 0 11

2.2 An underactuated planar manipulator. The control input is a force applied

to both links and directed along the vertical axis. Through appropriate

feedback, we wish to constrain the end effector to lie on the horizontal line

shown. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3 The three-link planar biped robot used in [10] to study asymptotically

stable walking via the enforcement of a VHC in parametric form. . . . . 18

2.4 The configurations of the biped robot when the VHC q1 = θd = π/15,

q2 = −q3 is enforced. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.5 The cart-pendulum system . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.6 The set h−1(0) and its parametrization. The equilibrium configurations

on h−1(0) and their stability types are marked with dots. . . . . . . . . . 28

2.7 The functions M(s) and V (s) (left) and the phase portrait of the reduced

dynamics (right). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

vi

Page 7: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

2.8 Phase portrait of the reduced motion of the cart-pendulum for the VHC’s

with φ(x) = −π3sin(1.5

πx). The shaded region contains oscillations of x

corresponding to the cart oscillating back and forth, while the pendulum

is oscillating in the upper half-plane due to the VHC. . . . . . . . . . . . 31

2.9 The potential function associated with the reduced dynamics of the cart-

pendulum system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.10 Phase portraits of the reduced dynamics of the cart-pendulum system with

dissipation when the VHC θ = −(π/3) sin(3x/(2π)) is enforced. On the

top figure, the components of the dissipation matrix are k11 = 1, k12 =

k21 = k22 = 0, and the equilibrium point (x, x) = (0, 0) is unstable. In the

bottom figure, the components of K are k11 = k22 = 1, k12 = k21 = 0.7,

and the equilibrium point is asymptotically stable. . . . . . . . . . . . . . 35

2.11 Reduced dynamics of the cart-pendulum system. The red curve is the

closed orbit we wish to stabilize. . . . . . . . . . . . . . . . . . . . . . . . 40

2.12 Stabilization of a desired closed orbit for the cart-pendulum: (x(t), x(t))

converges to the desired orbit. . . . . . . . . . . . . . . . . . . . . . . . . 41

2.13 Stabilization of a desired closed orbit for the cart-pendulum: the angle

θ(t) of the pendulum remains in the interval (−π/2, π/2) so the pendulum

does not fall over. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.14 Stabilization of a desired closed orbit for the cart-pendulum: θ(t)−φs(t)(x(t))

tends to zero, showing that the dynamic VHC is enforced. This is the key

feature that prevents the pendulum from falling over. . . . . . . . . . . . 42

3.1 A chain of N cart-pendulums . . . . . . . . . . . . . . . . . . . . . . . . 44

3.2 Use of a time-varying parameter s2 to introduce a driving force on the

slave cart-pendulum system to remain at a fixed distance from the master. 49

3.3 The average value of aE0(t), aE0 , increases with E0. . . . . . . . . . . . . 54

vii

Page 8: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

3.4 Full synchronization of 3 cart-pendulums without energy stabilization: an-

gle of each pendulum (top) and cart position (bottom). Note that during

transient the three pendulums remain in the upper half-plane. . . . . . . 58

3.5 Full synchronization of 3 cart-pendulums with simultaneous energy level

stabilization for the master cart-pendulum. Here we are stabilizing the

energy level E0 = 0, which corresponds to stabilizing the upright equi-

librium position of the pendulums. Note that during transient the three

pendulums remain in the upper half-plane. . . . . . . . . . . . . . . . . . 59

4.1 Two identical fully actuated two-link planar manipulators. The manipu-

lator on the left-hand side (local robot) is operated by the human, who

applies a force Fh on the end effector. The manipulator on the right-hand

side (remote robot) is facing a surface at a distance r from its base. . . . 62

4.2 Phase portrait of system (4.12). The thick line represents the impact. . . 74

4.3 The workspace of the remote robot while the end effector remains in con-

tact with the surface (shaded area). . . . . . . . . . . . . . . . . . . . . . 77

4.4 Elbow up and elbow down configurations when the end effector lies on S,

and the corresponding coordinate charts of the VHC h2(qi) = 0, i ∈ l, r. 77

4.5 Motion of the local (left) and remote (right) end effector relative to y = 1.5 86

4.6 Estimate of force applied by human on the local end effector . . . . . . . 87

4.7 Synchronization error between the local and remote first link (left) and

second link (right) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

viii

Page 9: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1

Introduction

The theme of this thesis is the control of synchronization in mechanical systems. Syn-

chronization is a pervasive phenomenon in natural and artificial systems. Neurons in

the heart fire up synchronously, causing the heart to contract and expand periodically.

Synchronization among neurons in the brain has been associated with memory processes.

Legged locomotion involves the synchronization of movements of individual legs either in

phase or out of phase. Courtship rituals in birds often involve synchronous movements

such as head bobbing, or spectacular synchronized swims, such as those of Western

Grebes walking on water, see Figure 1.1. It is not surprising that researchers have been

fascinated by synchronization phenomena for a long time.

One of the earliest investigations of synchronization is due to the Dutch physicist

Christiaan Huygens. In a 1665 letter to the Royal Society of London, he observed that

Figure 1.1: Courtship ritual of grebes.

1

Page 10: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1. Introduction 2

Figure 1.2: An excerpt from a letter by Dutch physicist Christiaan Huygens concerningthe synchronization of two pendulum clocks mounted on the same wall beam.

two pendulum clocks mounted on a wall beam have a natural tendency to synchronize by

oscillating at the same frequency. He observed that the synchronizing mechanism was a

minute oscillation of the wall beam that would effectively couple the pendulum dynamics

in a beneficial way. Figure 1.2 contains an excerpt from a letter Huygens wrote to his

father on this subject. Modern physicists have taken inspiration from Huygens’ work

in their study of coupled oscillators, using the methods of dynamical systems theory.

Coupled oscillators are used as a model for many natural synchronization phenomena,

such as the synchronous firing of neurons. Control engineers take a different point of

view to synchronization, one driven by design. Rather than analyzing the occurrence of

synchronization, the objective is to enforce synchronization via feedback.

In this thesis, we investigate two specific synchronization examples that are represen-

tative of two classes of control problems in engineering systems. In the first example,

we consider a series of pendulums, each mounted on a cart. Motors actuate the carts,

while the pendulums are not actuated. The objective is to design feedbacks that fully

synchronize the pendulums while simultaneously stabilizing a desired oscillatory motion.

The challenge is the presence of multiple control specifications that must be simultane-

ously met despite the fact that the individual systems are underactuated. This example

Page 11: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1. Introduction 3

Figure 1.3: Quanser’s pantograph robot, a three degrees-of-freedom haptic interface

is an instance of the more general synchronization problem for underactuated mechanical

systems.

The second example presented in this thesis is a teleoperation problem from the area

of Robotics. Consider two robots, a master and a slave. The master robot is a haptic

interface operated by a human, such as the pantograph depicted in Figure 1.3. The slave

robot interfaces with the environment, and must perform a manipulation task guided

by the human. Through its interaction with the master robot, the human must “feel”

the presence of a manipulation surface which is actually present in the task space of

the slave robot. Besides feeling the surface, the human must be able to make the slave

robot reproduce the force that the human imparts on the haptic interface. In addition

to the specifications above, the slave robot must synchronize its end effector to that of

the master robot. This thesis proposes a solution to this teleoperation problem when the

two robots are planar and have two links.

The underlying tool in our solution of the examples above is the notion of virtual holo-

nomic constraint, a relation between the configuration variables that can be enforced via

feedback. For synchronization, the virtual holonomic constraint could be the requirement

that the states of different systems be equal. Additional virtual holonomic constraint

could then be imposed to meet other control specifications, such as the stabilization

of oscillatory motions. Returning to Huygens’ original investigation, the synchronizing

Page 12: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1. Introduction 4

mechanism in the coupled clocks is their common support. From a mechanical viewpoint,

this support is a holonomic constraint, not virtual, but one that is physically present.

It seems therefore natural to adopt an approach to synchronization of control systems

based on virtual holonomic constraints.

1.1 Literature review

In this section we provide a brief review on the work of virtual holonomic constraints

and teleoperation systems. For a more detailed overview of some of the results in the

literature on virtual holonomic constraints, the reader is referred to Chapter 2.

1.1.1 Virtual holonomic constraints

The concept of virtual holonomic constraint (VHC) was first introduced in Mechanics

in the early 1900s by Paul Appell (see [2]) and in the PhD thesis [3] of Henri Beghin in

1922, where a “servo-constraint” was considered to be enforced through the application of

external forces. The interest in this concept in control applications has grown due to the

technological development of fast microprocessors. About ten years ago, Jessy Grizzle

and his collaborators began the development of a systematic theory of control design for

biped locomotion [5, 10, 21, 29, 30]. One of the key ingredients of Grizzle’s approach was

the description of walking gaits using VHCs:

(Excerpt from [30]) “The control designs involved the judicious choice of a set of

holonomic constraints that were asymptotically imposed on the robot via feedback

control. (...) In these control designs, it was observed that various parameters

appearing in the holonomic constraints would affect the walking speed, the torques

required to achieve walking, etc. (...)”

Grizzle’s approach represents a radical departure from the traditional approach to

motion control in Robotics. Instead of producing timed reference signals using motion

Page 13: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1. Introduction 5

planning algorithms, and then designing tracking controllers to make the robot joints

follow the reference signals, Grizzle’s approach involves the stabilization of relations be-

tween the configurations variables corresponding to sets in the state space of the robot.

Following Grizzle’s work, a number of researchers have adopted the VHC paradigm. In

this literature, the work of Anton Shiriaev and colleagues emerges prominently [9,25–27].

In this work, VHCs are used primarily to find periodic orbits corresponding to desired

oscillatory motions (such as walking gaits). To stabilize the periodic orbits, Shiriaev

and colleagues use the concept of transverse linearization, which involves linearizing the

control system around the closed orbit and applying a time periodic feedback to stabilize

said linearization. The feedback in question is designed solving a Riccati equation for a

linear periodic system. In [9,26], VHCs are used to select and stabilize desired oscillations

of the Furuta pendulum and the pendubot.

In recent work [6,18], Manfredi Maggiore and Luca Consolini laid the foundations of

a general theory of VHCs for Euler-Lagrange systems. This thesis follows in the footsteps

of that work. One of the contributions in [6, 18] is the development of conditions under

which a given relation is a feasible VHC, as well as the requirement that the VHC give

rise to an invariant set in the closed-loop system, the so-called constraint manifold. This

theory will be reviewed in detail in Chapter 2. In [6,7] virtual holonomic constraints are

used for the swing-up of the pendubot and the control of a bicycle.

1.1.2 Teleoperation systems

A teleoperation system is a system allowing a human (the operator) to perform a task in

a remote environment without direct interaction. The goal in teleoperation is to project

the human sensing and manipulation abilities in the remote environment. Teleoperation

systems have found applications in space robotics (e.g., the Mars rovers), underwater

vehicles, surgical robots, and a variety of tasks in hazardous environments.

The architecture of a teleoperation system comprises a local robot, a communication

Page 14: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1. Introduction 6

channel, and a remote robot. The operator interacts with the local robot so as to make

the remote robot interact with the environment. In turn, the interaction between the

remote robot and the environment is to be reflected back to the local robot so that the

operator can feel the environment. The performance of the overall system is dictated by

how well the operator can interact with the environment.

The first teleoperation system was built by Raymond Goertz in 1945. This was a

purely mechanical teleoperator used to handle radioactive material. Since then, a variety

of more complex teleoperation systems have been built. An excellent survey on the work

that has taken place in this field from the control theoretic point of view is given by

Hokayem and Spong in [13]. The two main control specifications for a teleoperation

system are that of stability and transparency. The former specification requires the

robots to maintain stability irrespective of the behavior of the operator, while the latter

specification requires the local robot to impart on the operator the force feedback from

the environment, obtained through force sensors placed on the remote robot.

In the literature, these two objectives are deemed conflicting. Indeed, as early as 1966

Ferrell [8] showed experimentally that force feedback in the presence of time delays of

the order of 0.1 seconds can cause instability. This observation has resulted in a signifi-

cant amount of research on methods to eliminate the instability phenomena, with major

emphasis being placed on the communication channel. In 1989, Anderson and Spong [1]

proposed to use the formalism of network theory, passive systems, and scattering opera-

tors as a means to overcome the instability phenomenon due to time delay. Since then,

this framework has become the dominant approach to teleoperation. For a review on

some of these schemes the reader is directed to [20]. Here the authors have unified the

analysis of the different control schemes with the idea of a general Lyapunov-like function

candidate. The work of Hannaford and Ryu in [12, 22] is also notable.

Page 15: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1. Introduction 7

1.2 Thesis organization

The thesis is organized as follows. In Chapter 2 we review the basic theory of virtual holo-

nomic constraints developed by Maggiore-Consolini in [6,18], and extend some of the key

results. In Chapter 3 we present a control methodology to synchronize N underactuated

cart-pendulums, while simultaneously stabilizing a desired oscillatory behavior around

their unstable upright equilibrium. In Chapter 4 we investigate a bilateral teleoperation

problem. Besides synchronizing the local and remote robots, we make the remote robot

replicate the force that the human imparts on the local robot without using force sensors.

1.3 Statement of contributions

The following is a list of original contributions made in this thesis.

1. Proposition 2.2.6 on page 14. Necessary and sufficient condition for a given relation

to be a regular VHC. This result is a generalization to Proposition 3.2 in [18].

2. Proposition 2.3.1 on page 19. A generalization of the reduced dynamics presented

in [18] to the case of systems with arbitrary degree of underactuation and general

VHCs in implicit form.

3. Proposition 2.4.8 on page 33. This result is an extension of Proposition 4.7 in [18]

to describe the effect of dissipation (e.g., friction) on the stability of the equilibrium

points for the reduced dynamics.

4. Proposition 3.3.3 on page 54 and Proposition 3.3.4 on page 56. These results provide

a solution to the synchronization of oscillation problem for N underactuated cart-

pendulums. They also show that the control design for the general case of N

systems is no more difficult than the N = 2 case.

5. Propositions 4.4.1, 4.4.3, 4.4.5, 4.4.6, and 4.4.7 on pages 73-80. These results solve

the teleoperation problem.

Page 16: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 1. Introduction 8

1.4 Notation

The table below summarizes the notation used in this thesis.

Symbol Description

R Set of real numbers

[x]T x modulo T

[R]T The set [xT ] : x ∈ R

S1 [R]2π

M Smooth manifold

TpM Tangent space of M at p

dhp : TpM → Th(p)N The differential at p of the map h :M → N

Q Configuration space

q, q Configuration variable, velocity respectively

‖(q, q)‖Γ Point to set distance

A\B Set A without elements in set B

h−1(0)The zero level set of the relation h(q),

i.e. ∀q ∈ Q : h(q) = 0

B⊥ Left-annihilator of B, i.e. B⊥B = 0

A† Pseudo-inverse of A

Im(A), ker(A) Image and Kernel space of A respectively

dim(X) The dimension of the vector space X

u⋔, uq Control input transversal/tangential to constraint manifold

(W,ψ)Denotes a coordinate chart on M , with W ⊂M and

ψ : W → Rm (m := dim(M)) is a bijection

diag(a, b) Diagonal matrix with entries a, b on the diagonal

Page 17: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2

Virtual Holonomic Constraints

2.1 Introduction

The two synchronization problems investigated in this thesis rely on the notion of vir-

tual holonomic constraint (VHC). Roughly speaking, a VHC is a relation involving the

configuration variables of a mechanical system which can be enforced via feedback. This

chapter reviews the basic theory of VHCs needed in this thesis. Many of the results

are taken from [6, 18], but some of the material is presented in extended form. Such

extensions are original contributions of this thesis and were published in [15].

We begin in Section 2.2 with the formal definition of a VHC and of the notion of

regularity of VHCs. We also present necessary and sufficient conditions for regularity

of VHCs. In Section 2.3 we investigate the reduced dynamics describing the motion

of the control system when the VHC has been enforced. In Section 2.4, we focus our

attention on the class of mechanical systems with degree of underactuation one. For

these, in Section 2.4.1 we present conditions under which the reduced dynamics are

Euler-Lagrange. In Section 2.4.2 we discuss the qualitative properties of the reduced

dynamics. In Section 2.4.3 we discuss the effects of dissipation (e.g., friction) on the

reduced dynamics. Finally, in Section 2.4.4 we present a control design technique to

9

Page 18: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 10

stabilize closed orbits of the reduced dynamics. This gives a useful way to control the

oscillations of the system while simultaneously enforcing a VHC.

2.2 VHCs: Definition and regularity

In this chapter we consider mechanical systems with n configuration variables q =

(q1, . . . , qn) ∈ Q and m controls τ = (τ1, . . . , τm) ∈ Rm. We assume that each configu-

ration variable is either a displacement in R or an angle in S1 (the set of real numbers

modulo 2π, which is diffeomorphic to the unit circle). This way, the set Q, called the

configuration manifold of the mechanical system, is a generalized cylinder. We con-

sider the class of Euler-Lagrange Control Systems modelled by the Euler-Lagrange

equation

d

dt

∂L

∂q− ∂L

∂q= B(q)τ. (2.1)

In the above, B : Q → Rn×m has full rank m for all q and the Lagrangian function

L(q, q) : Q × Rn → R is smooth, and it is assumed to have the special form L(q, q) =

(1/2)q⊤D(q)q−P (q), where D(q), the inertia matrix, is symmetric and positive definite

for all q and P (q), the potential energy function, is smooth. When the Lagrangian has

this special form, the Euler-Lagrange Control System is referred to as a simple mechanical

system, and it can be rewritten in the standard form

D(q)q + C(q, q)q +∇P (q) = B(q)τ, (2.2)

where the matrix C(q, q) is formed using the so-called Christoffel symbols of D [19, 28].

When m = n, system (2.2) is said to be fully actuated. When m < n, system (2.2) is

said to have degree of underactuation n−m. In this case, we will assume that there

exists a left-annihilator of B on Q, i.e., a smooth function B⊥ : Q → Rn−m×n such that

B⊥(q)B(q) = 0 on Q and rankB⊥(q) = n−m.

Page 19: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 11

Definition 2.2.1. A virtual holonomic constraint (VHC) of order k ≤ m for

system (2.2) is a relation h(q) = 0, where h : Q → Rk is smooth, rank dhq = k for all

q ∈ h−1(0), and the set

Γ = (q, q) : h(q) = 0, dhq q = 0, (2.3)

is controlled invariant. That is, there exists a smooth feedback τ(q, q) defined on Γ

such that Γ is positively invariant for the closed-loop system. The set Γ is called the

constraint manifold associated with the VHC h(q) = 0. A VHC is stabilizable if

there exists a smooth feedback τ(q, q) that asymptotically stabilizes Γ, and in this case

τ(q, q) is said to enforce the VHC h(q) = 0.

h(q) = 0

q

Γ

q

Figure 2.1: An illustration of the definition of the constraint manifold Γ for h(q) = 0

The condition that rank dhq = k for all q ∈ h−1(0) guarantees that h−1(0) has a

nice geometric structure. Namely, it is an embedded submanifold of Q. The constraint

manifold Γ in (2.3) is the subset in the state space of (2.2) where the configuration

variables satisfy the VHC h(q) = 0 and their velocities q are tangent to h−1(0). This

is illustrated in Figure 2.1. The requirement of controlled invariance of Γ means that if

(q(0), q(0)) ∈ Γ, then the resulting configuration trajectory q(t) can be made to satisfy

the VHC for all t ≥ 0 through appropriate feedback. This way the system will behave

as if though it has a physical holonomic constraint. Intuitively, for Γ to be controlled

invariant there must exist a feedback that cancels out all accelerations of (2.2) transversal

to h−1(0). The next example illustrates Definition 2.2.1.

Page 20: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 12

Example 2.2.2. Consider a point-mass in the xy-plane, with gravity pointing in the

negative y-direction. The control input τ ∈ R is the intensity of the applied force, with

direction specified by B ∈ R2, which is a constant vector. For this system we have

q = (x, y) ∈ R2. Let M denote the mass and g the gravitational constant, then we have

M 0

0 M

q +

0

Mg

= Bτ

where D(q) = diag(M,M), C(q, q) is the zero-matrix and P (q) =Mgy.

Consider the relation h(q) = y − 1, whose enforcement corresponds to keeping the

point mass at y = 1. If B = [1 0]⊤, so that the applied force acts along the x axis

(therefore tangent to the line y = 1) it is obvious that the point-mass cannot be kept

at y = 1 by any feedback, because gravity will cause it to leave this line. Therefore,

h(q) = y − 1 is not a VHC. On the other hand, if B = [0 1]⊤, so that the applied force

acts along the y axis, then we can use the control input to cancel out the acceleration

due to gravity. As a matter of fact, the control τ = mg gives y = 0, and turns Γ =

(x, y, x, y) : y = 1, y = 0 into an invariant set. We conclude that y = 1 is a VHC when

B = [0 1]⊤. More generally, if B is transversal to the x axis, then y = 1 is a VHC.

As the example shows, checking whether a given relation h(q) = 0 is a VHC is linked

to the effect of the control input on the dynamics of the system and the relation h, and

specifically to the possibility to cancel out the accelerations of the system transversal to

the set h(q) = 0. If we let e = h(q), then one has that

e = µ(q, q) + dhqD−1(q)B(q)τ,

where µ(q, q) is a suitable smooth function. If the matrix dhqD−1(q)B(q) has full rank k,

then system (2.2) with input τ and output e = h(q) has vector relative degree 2, . . . , 2,

and there exists a smooth feedback τ(q, q) such that e = 0. Since Γ is precisely the set

Page 21: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 13

where e = e = 0, making e = 0 corresponds to making Γ invariant. In conclusion, if

dhqD−1(q)B(q) has full rank k, then the relation h(q) = 0 is a VHC. Constraints enjoying

this rank condition are the focus of our interest, and they are defined next.

Definition 2.2.3. A relation h(q) = 0, with h : Q → Rk a smooth function and k ≤ m,

is said to be a regular VHC of order k if system (2.2) with output e = h(q) has a well-

defined vector relative degree 2, . . . , 2 everywhere on Γ = (q, q) : h(q) = 0, dhqq = 0,

i.e., if the k ×m matrix dhqD−1(q)B(q) has full rank k for all q ∈ h−1(0).

As we discussed, regular VHCs are indeed VHCs in that the constraint manifold is

controlled invariant, and as a matter of fact Γ is the zero dynamics manifold of sys-

tem (2.2) associated with the output e = h(q). Another important feature of regular

VHCs is that under a mild technical condition they are stabilizable by means of an

input-output linearizing feedback, as the next lemma shows.

Lemma 2.2.4. Let h(q) = 0 be a regular VHC of order k for system (2.2). If there exist a

strictly increasing functions α, β : [0, r), r > 0 such that the map H : (q, q) 7→ (h(q), dhqq)

is bounded as α(‖(q, q)‖Γ) ≤ ‖H(q, q)‖ ≤ β(‖(q, q)‖Γ), then for any k1, k2 > 0, the

feedback

τ(q, q) = A†(q)

−(

d

dtdhq

)

q + dhqD−1(q) (C(q, q)q +∇P (q))− k1h(q)− k2dhq q

,

(2.4)

where A†(q) is a right-inverse of A(q) = dhqD−1(q)B(q) and d(dhq)/dt is the time deriva-

tive of dhq along (2.2), asymptotically stabilizes Γ, provided that the closed-loop system

does not have finite escape times.

Proof. Letting e = h(q), feedback (2.4) gives e = −k1e − k2e, so that the equilibrium

(e, e) = (0, 0) is asymptotically stable. Since Γ is the set where (e, e) = (0, 0), the

Page 22: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 14

inequality α(·) ≤ ‖H(q, q)‖ ≤ β(·) guarantees that

‖(e, e)‖ bounded =⇒ ‖(q, q)‖Γ bounded ,

‖(e(t), e(t))‖ → 0 =⇒ ‖(q(t), q(t))‖Γ → 0,

and so Γ is asymptotically stable, provided there are no finite escape times in (q, q)

coordinates.

Remark 2.2.5. The condition that there exist a strictly increasing functions α, β :

[0, r), r > 0 such that the map H : (q, q) 7→ (h(q), dhqq) is bounded as α(‖(q, q)‖Γ) ≤

‖H(q, q)‖ ≤ β(‖(q, q)‖Γ) is merely a technical requirement. As we shall argue later, it is

automatically satisfied for the important class of parametric VHCs.

The next proposition, which is a generalization of Proposition 3.2 in [18] where k = m,

gives necessary and sufficient conditions for regularity.

Proposition 2.2.6. Let h : Q → Rk be smooth, with k ≤ m, and that rank dhq = k

for all q ∈ h−1(0). Then, h(q) = 0 is a regular VHC of order k if and only if one of the

following equivalent conditions holds:

(a) For all q ∈ h−1(0), rank dhqD−1(q)B(q) = k.

(b) For all q ∈ h−1(0), dim[Tqh−1(0) ∩ Im(D−1(q)B(q))] = m− k.

(c) For all q ∈ h−1(0), if (W,ψ) is a coordinate chart of h−1(0) with q ∈ W , then

rank(

B⊥(q)D(q)(dψ−1)ψ(q))

= n−m.

Proof. Part (a) of the proposition is the definition of regular VHC. Using the identity

rank(AB) = rank(B)− dim(Im(B) ∩ ker(A)) (2.5)

we get that

rank(dhqD−1(q)B(q)) = rank(D−1(q)B(q))− dim[Im(D−1(q)B(q)) ∩ ker(dhq)].

Page 23: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 15

Now, since B has full rank m for all q, we get that rank(D−1(q)B(q)) = m. To get

rank(dhqD−1(q)B(q)) = k it must be that dim[Im(D−1(q)B(q)) ∩ ker(dhq)] = m − k.

Finally, since ker(dhq) = Tqh−1(0) we arrive at condition (b) of the proposition.

Next, if (W,ψ) is a coordinate chart of h−1(0) with q ∈ W , then Tqh−1(0) = ker dhq =

Im(dψ−1)ψ(q), and the condition dim[Im(D−1(q)B(q))∩ker(dhq)] = m−k is equivalent to

dim[ImB(q)∩Im(

D(q)(dψ−1)ψ(q))

] = m−k. In turn, since ImB(q) = kerB⊥(q), in light

of identity (2.5) the latter condition is equivalent to condition (c) in the proposition.

Remark 2.2.7. The condition for regularity above has a simple intuitive explanation.

For the relation h(q) = 0 to be a regular VHC, it is necessary and sufficient that at

each q ∈ h−1(0), k of the m acceleration directions imparted by the control input be

transversal to the tangent space of h−1(0) at q.

Remark 2.2.8. If system (2.2) is fully actuated, i.e., m = n, then Im(D−1(q)B(q)) =

TqQ and the condition of Proposition 2.2.6 is automatically satisfied. Thus, for fully

actuated systems, any relation h(q) = 0 such that h is smooth and 0 is a regular value

of h, is a regular VHC.

Example 2.2.9. We now return to the point-mass system of Example 2.2.2. In this

case, n = 2, m = k = 1, so Proposition 2.2.6 states that a VHC of order 1 is regular if

and only if dim[Im(D−1(q)B(q)) ∩ ker(dhq)] = 0. For h(q) = y − 1 we have dhq = [0 1]

and ker(dhq) = span([1 0]⊤). Since D(q) is diagonal and B is constant, for h(q) = 0 to

be a regular VHC it must be that B 6= [b 0]⊤, b ∈ R when y = 1. Physically, this means

that the applied force should be transversal (not necessarily orthogonal) to the x-axis in

order for the point-mass to stay at y = 1. This is precisely the intuitive condition that

was discussed in Example 2.2.2.

Example 2.2.10. Consider the planar manipulator in Figure 2.2. For this system we

have q = (q1, q2) ∈ S1 × S1. Assuming that all kinematic and dynamic parameters are

Page 24: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 16

q1q2

r

11

g

Figure 2.2: An underactuated planar manipulator. The control input is a force appliedto both links and directed along the vertical axis. Through appropriate feedback, wewish to constrain the end effector to lie on the horizontal line shown.

unitary, we have P (q) = 2g cos q1 + g cos q2, and

D(q) =

2 cos(q1 − q2)

cos(q1 − q2) 1

, C(q, q) =

0 sin(q1 − q2)q2

− sin(q1 − q2)q1 0

.

The control input is a force applied to both links and directed along the vertical axis,

so that B(q) = [sin q1 sin q2]⊤. Suppose we wish to enforce the relation h(q) = cos q1 +

cos q2 − r, where r = 1.5, which corresponds to constraining by feedback the end effector

of the manipulator to lie on a horizontal line situated above the robot base at a distance

r from the base. In this case it holds that

dhqD−1(q)B(q) = − cos2 q2/(cos

2(q1 − q2)− 2)− 1,

and this function vanishes when q1 = q2 = [0]2π, which is not on h−1(0). Therefore, in

light of Proposition 2.2.6 the relation h(q) above is a regular VHC for the underactuated

manipulator. Moreover, it is easy to show that there exist increasing functions α, β

satisfying the inequality of Lemma 2.2.4, so that the VHC h(q) = 0 can be enforced via

the feedback (2.4).

The VHC presented in Example 2.2.10 is an implicit function of the configuration

Page 25: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 17

variables. Consider now VHCs in which k of the n configuration variables are expressed

in terms of the remaining n − k variables. Specifically, we say that if q = [q1 . . . qk]⊤

and q = [qk+1 . . . qn]⊤ then the relation

q = φ(q),

is a VHC of order k in parametric form. In this case, we have h(q) = q − φ(q).

The parametric form is of particular interest because on h−1(0), q can be expressed in

terms of q and so the dynamics on the constraint manifold Γ are entirely characterized

by the evolution of q and ˙q on this set. Specifically, letting φ(q) := [φ(q)⊤ q⊤]⊤, then

the parametrization in question is q = φ(q). The necessary and sufficient condition for

regularity in part (c) of Proposition 2.2.6 becomes

(∀q) rank[

B⊥(φ(q))D(φ(q))dφq

]

= n−m.

The hypothesis of Lemma 2.2.4 is always satisfied for regular VHCs in parametric form,

and as a result the input-output linearizing feedback given by (2.4) can be used to enforce

such VHCs. Additionally, VHCs in parametric form are useful in applications, as the

next example illustrates.

Example 2.2.11. In one of the earliest works of J. Grizzle and collaborators on bipedal

locomotion, [10], the authors consider the planar three-link biped robot of Figure 2.3.

Walking gaits are induced by imposing a second-order VHC in parametric form. During

the swing phase of the robot, the torso is reduced to remain at a constant angle, q1 = θd,

and the swinging leg is reduced to have an opposite angle to the standing leg, q2 = −q3.

The parametrizing variable is the angle q3 of the standing leg. Figure 2.4 displays the

configuration of the robot as the angle q3 of the standing leg is varied between −π/5 and

π/5. The authors in [10] show that the enforcement of this VHC induces asymptotically

stable walking. Since the parametrizing variable is an angle, the enforcement of the VHC

Page 26: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 18

gives rise to the repetitive behavior corresponding to walking.

q1

−q2q3

Figure 2.3: The three-link planar biped robot used in [10] to study asymptotically stablewalking via the enforcement of a VHC in parametric form.

Standing LegSwinging LegTorso

Figure 2.4: The configurations of the biped robot when the VHC q1 = θd = π/15,q2 = −q3 is enforced.

2.3 Motion on the constraint manifold

In this section, we discuss what happens to the dynamics of system (2.2) when a regular

VHC is enforced, i.e., when the state (q, q) evolves on the constraint manifold Γ. The

motion on Γ will be referred to as the reduced dynamics. Let A(q) := dhqD−1(q)B(q).

By definition, if h(q) = 0 is a regular VHC then this k × m matrix has full rank k for

all q ∈ h−1(0). The next proposition shows that for a regular VHC of order k, one

Page 27: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 19

can define a regular feedback transformation partitioning the m control inputs into two

components transversal and tangential to h−1(0), in such a way that k control inputs can

be used to enforce the VHC, while the remaining m − k control inputs can be used to

affect the dynamics on the constraint manifold. In particular, the motion of the system

on the constraint manifold is described by a well-defined reduced-order control system

with n − k states and m − k control inputs. The significance of this result is that only

k of the m inputs are required to enforce the VHC of order k and the remaining m− k

control inputs can be used to meet other control specifications. This result will be used

in Chapter 4 to address a problem of bilateral teleoperation.

Proposition 2.3.1. Let h(q) = 0 be a regular VHC of order k < m for system (2.2),

and suppose there exists a smooth function N : Q → Rm×m−k such that Im(N(q)) =

ker(A(q)) for all q ∈ h−1(0). Let A†(q) be a right-inverse of A(q) (e.g., A†(q) =

A(q)⊤(A(q)A(q)⊤)−1), and consider the feedback transformation

τ = A†(q)u⋔ +N(q)uq, (2.6)

where (u⋔, uq) ∈ Rk × R

m−k are new control inputs. Then, the relation h(q) = 0 is a

regular VHC of order k for system (2.2), (2.6) with input u⋔. Moreover, the motion on

Γ is governed by a well-defined control system with input uq. Specifically, if (W,ψ) is a

coordinate chart of h−1(0), then in local coordinates (s, s) = (ψ(q), dψq q) ∈ Rn−k×R

n−k

the motion on Γ has the form

D(s)s+ C(s, s)s+ g(s) =

0(n−m)×1

uq

, (2.7)

Page 28: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 20

where, letting σ := ψ−1,

D(s) =

B⊥

N †B†

D∣

q=σ(s)dσs,

C(s, s) =

B⊥

N †B†

(

Cdσs +D[(d/dt)dσs])

s

q=σ(s)

,

g(s) =

B⊥

N †B†

∇P

q=σ(s),

N † and B† are left inverses of N and B, and D(s) is everywhere invertible.

Remark 2.3.2. When k = m the smooth function N is the empty matrix, which corre-

sponds to having no control input appearing in 2.7.

Remark 2.3.3. Note that although system (2.7) “looks like” system (2.2), it is not

written in a canonical form, in that D(s) is not symmetric, and C(s, s) does not con-

tain the Christoffel symbols of D. More importantly, (2.7) is not necessarily Euler-

Lagrange (see [7] for an example).

Remark 2.3.4. If system (2.2) is fully actuated, then n−m = 0, and the reduced motion

in (2.7) is feedback equivalent to the trivial Euler-Lagrange system s = 0. The feedback

transformation in question is given by uq = C(s, s)s+ g(s).

Proof. Since h(q) = 0 is a regular VHC, system (2.2) with output e = h(q) has vector

relative degree 2, . . . , 2, so that

e = µ(q, q) + A(q)τ = µ(q, q) + A(q)A†(q)u⋔ + A(q)N(q)uq = µ(q, q) + u⋔.

Hence, system (2.2), (2.6) with input u⋔ and output e = h(q) has vector relative degree

2, · · · , 2, proving that the VHC h(q) = 0 is regular also for the system with k inputs

Page 29: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 21

u⋔. Next, multiplying (2.2) on the left by B⊥(q), we get

B⊥Dq + B⊥(Cq +∇P ) = 0(n−m)×1. (2.8)

Feedback transformation (2.6) is regular because rank[A† N ] = m since ImN = kerA.

Substituting (2.6) into (2.2) and premultiplying both sides of the equation by N †B†, we

obtain

N †B†Dq +N †B†(Cq +∇P ) = N †B†Bu

= N †(A†u⋔ +Nuq)

= uq.

(2.9)

The last equality follows from the property AN = 0 which implies that N †A† = 0.

Since h(q) = 0 is a regular VHC, it follows that dhq has full rank k for all q ∈ h−1(0),

and thus h−1(0) is an embedded submanifold of Q. Let (W,ψ) be a coordinate chart

of h−1(0) and let s = ψ(q), s ∈ Rn−k. Letting σ := ψ−1, we have that, on W , q can

be parametrized as q = σ(s), so that q = dσss, and q = dσss + [(d/dt)dσs]s. After

substituting these expressions in (2.8) and (2.9), we obtain system (2.7). If we show

that the matrix D is nonsingular at all s ∈ ψ(W ), then (2.7) is a well-defined control

system on ψ(W )× Rn−k ⊂ R

2(n−k) characterizing the motion of (s, s), and therefore the

motion of (q, q) on Γ∩ (q, q) : q ∈ W. To prove that D is invertible, we will show that

Im(Ddσs)∩ker(col(B⊥, N †B†)) = 0. To this end, suppose v ∈ Rn−k is such that B⊥v = 0

and N †B†v = 0. The first identity implies that v ∈ Im(B), or v = Bv′. Substituting this

in the second identity, we obtain N †v′ = 0. Now suppose also that v = Bv′ ∈ Im(Ddσs),

so that D−1Bv′ ∈ Im(dσs) = Tσ(s)h−1(0) = ker(dhσ(s)). Thus, dhσ(s)D

−1Bv′ = 0, or

A(σ(s))v′ = 0. By definition of N , kerA = Im(N), so Av′ = 0 implies v′ = Nv′′. We

have obtained that N †v′ = 0 and v′ = Nv′′, so N †Nv′′ = 0, implying that v′′, and hence

v′ and v, are zero.

Remark 2.3.5. When the VHC takes on a parametric form, q = φ(q), after feedback

Page 30: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 22

transformation (2.6), the motion on Γ is described by system (2.7) with s = q and

ψ−1(s) = φ(q). In this case, (2.7) describes the reduced motion globally on Γ, rather

than just on a coordinate chart.

Next, we will consider two examples to illustrate the results above. First, we will use

a planar point-mass example where the two forces acting on the mass can be controlled

independently with the goal to make the mass move in a circle. This is an example of

fully actuated Euler-Lagrange system and the computations of the reduced dynamics will

be illustrated. Second, a cart-pendulum system that is actuated by a force acting on the

cart is considered. This is an example of an underactuated system. Here we will consider

a VHC in parametric form and compute the reduced dynamics.

Example 2.3.6. Recall the point-mass system of Example 2.2.2 with configuration q =

(x, y). Here, we assume that the system is fully actuated, with B the identity matrix

2× 2, and τ ∈ R2 the applied force. The system can be written as

Dq +∇P (q) = τ,

where D = diag(M,M) and P (q) = Mgy. Consider the task of making the point mass

move on the unit circle. This corresponds to enforcing the relation h(q) = x2 + y2 − 1.

Since we have a fully actuated system this relation is a regular VHC. The set h−1(0) can

be covered by two coordinate charts. Consider the coordinate chart (W,ψ) of h−1(0),

where W = (x, y) : x2+ y2 = 1\(−1, 0), and ψ(x, y) is the angle of the vector [x y]⊤

in the interval (−π, π). With this choice, we have σ(s) := ψ−1(s) = [cos(s) sin(s)]⊤. The

matrix A in Proposition 2.3.1 reads as

A(q) = dhqD−1(q)B(q) = [2x 2y]

1M

0

0 1M

1 0

0 1

=

1

M[2x 2y],

which is of rank 1 for all (x, y) ∈ h−1(0). A right-inverse of A(q) is A†(q) = M2(x2+y2)

[x y]⊤.

Page 31: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 23

One smooth function N(q) that satisfies Im(N(q)) = ker(A(q)) is N(q) = [y − x]⊤.

Following Proposition 2.3.1, we define the feedback transformation

τ =M

2(x2 + y2)

x

y

u⋔ +

y

−x

uq.

that partitions the original control input into two components u⋔ to enforce the VHC,

and uq to affect the motion on Γ. As one would expect, the control input u⋔ enforcing the

VHC acts in the radial direction, which makes sense physically since we want the point

mass to remain on the circle. Moreover, the control input uq acts in a direction tangent

to the circle, which is natural since uq affects the motion of the system on the circle.

Next, we carry out the computations for the motion on Γ in local coordinates.

First, for the N(q) considered we have N †(q) = 1x2+y2

[−y x] and B is invertible,

which means that B⊥ is the empty matrix. Also, for the coordinate chart considered

σ(s) = [cos(s) sin(s)]⊤ and dσs = [− sin(s) cos(s)]⊤. Recalling that q = (x, y), we have

D(s) =

B⊥

N †B†

D

q=σ(s)

dσs =M

C(s, s) =

B⊥

N †B†

(

Cdσs +D[(d/dt)dσs])

s

q=σ(s)

= 0

g(s) =

B⊥

N †B†

∇P

q=σ(s)=Mg cos(s).

So the reduced motion in local coordinates (s, s) with s ∈ (−π, π) is given by

Ms+Mg cos(s) = uq. (2.10)

This is a fully-actuated Euler-Lagrange control system, in fact it is an actuated pendu-

Page 32: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 24

lum, with energy E(s, s) = 1/2Ms2 +Mg sin s. The maxima/minima of the potential

P (s) :=Mg sin(s) correspond to unstable/stable equilibrium points. So (s, s) = (π/2, 0)

(corresponding to the north pole of the circle, (x, y) = (0, 1)) is unstable and (s, s) =

(−π/2, 0) (corresponding to the south pole of the circle, (x, y) = (0,−1)) is stable. The

control input uq can be used to achieve any desired control specification on the unit circle.

For instance, stabilizing the position of the point-mass on the circle would correspond to

stabilizing an equilibrium (s, s) = (s, 0), while controlling its speed would correspond to

stabilizing s to a desired value.

The next example involves the enforcement of a VHC in parametric form.

Example 2.3.7. Consider a cart-pendulum system depicted in Figure 2.5. The control

input is the force applied on the cart. The configuration vector is q = (θ, x) ∈ S1 × R.

In this example, n = 2, m = 1, and the system has degree of underactuation one. The

θmp

M

l

x

u

g

Figure 2.5: The cart-pendulum system

model can be written in the standard form (2.2) with

D(q) =

mpl2 mpl cos θ

mpl cos θ M +mp

, C(q, q) =

0 0

−mpl sin θ θ 0

,

P (q) = mpgl cos θ, B(q) = [0 1]⊤.

(2.11)

Suppose we wish to constrain the pendulum to lie at a constant angle θd, and consider

the relation θ = θd, or h(q) = θ − θd. Letting φ(x) = θd, and φ(x) = [φ(x) x]⊤, the

Page 33: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 25

relation can be written in parametric form as q = φ(x). To check whether the above is a

regular VHC, we use part (c) of Proposition 2.2.6, i.e., we check whether

(∀x) rank[

B⊥(φ(x))D(φ(x))dφx

]

= 1,

which requires that B⊥(φ(x))D(φ(x))dφx 6= 0. Using B⊥ = [0 1], we get the condition

cos θd 6= 0. Thus, as one would expect, it is possible to keep the pendulum at a constant

angle as long as this angle is not equal to ±π/2. The next natural question to ask is

what are the dynamics of the cart as the pendulum is kept at the desired constant angle.

Since A(q) = dhqD−1(q)B(q) is a nonzero scalar, its null space has dimension zero, and

hence the matrix N(q) is empty. Consequently, Proposition 2.3.1 gives

D(x) = mpl cos θd, C(x, x) = 0, g(x) = −mpgl sin θd,

so that the motion on Γ is described globally by

x = g tan θd.

As one would expect, the reduced dynamics tell us that in order to keep the pendulum

at a constant angle which is not 0 or π, the cart needs to accelerate in the direction of

inclination. Again we see that the reduced dynamics are Euler-Lagrange, but this time

with no control input.

The two examples above illustrate how the reduced dynamics can be computed using

Proposition 2.3.1. In both cases we observed that the reduced dynamics were Euler-

Lagrange. The question is whether this observation is true in general. That is, given the

Euler-Lagrange system (2.2), under what conditions will the reduced dynamics be Euler-

Lagrange as well? This in general is a difficult question, but for the case m = k = n− 1

it has been addressed in [18]. In the next section, we provide an adapted result from this

Page 34: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 26

work.

2.4 Systems with degree of underactuation one

In this section we specialize the result of Proposition 2.3.1 to the case of systems with de-

gree of underactuation one, and we present sufficient conditions in order that the reduced

dynamics are Euler-Lagrange. Systems with degree of underactuation one are prevalent

in the literature because they represent a vast array of applications, such as planar biped

robots, brachiation robots, acrobot and pendubot, as discussed in [11]. For a system

with degree of underactuation one, the highest order of VHC that can be enforced is

k = n − 1. In this case, the set h−1(0) is a one-dimensional embedded submanifold

of Q, i.e., a collection of regular curves without self-intersections. Each curve is either

closed, i.e., diffeomorphic to S1, or diffeomorphic to R. By Proposition 2.3.1 the reduced

dynamics have no control input and are represented by a single second-order differential

equation. In Section 2.4.1 we give conditions under which the reduced dynamics are

Euler-Lagrange. In Section 2.4.2 we leverage these conditions to characterize the quali-

tative properties of the reduced dynamics. In Section 2.4.3 we investigate the effects of

dissipation on the reduced dynamics. Finally, in Section 2.4.4 we present a methodology

to stabilize closed orbits of the reduced dynamics.

2.4.1 Conditions for Euler-Lagrange reduced dynamics

For systems with degree of underactuation one, it is always possible to find a global

description of the reduced dynamics associated with a VHC of order n−1. Moreover, the

problem of determining when the reduced dynamics are Euler-Lagrange has essentially

been solved.

Proposition 2.4.1. Let h(q) = 0 be a regular VHC of order n − 1 for system (2.2).

Assume that m = n − 1 and that h−1(0) is a connected set. Let σ : Θ → Q, with Θ

Page 35: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 27

either R or [R]T , be a regular parametrization of h−1(0). Then, the reduced dynamics on

the set Γ in (2.3) are globally described by

s = Ψ1(s) + Ψ2(s)s2. (2.12)

where

Ψ1(s) = −B⊥∇P

B⊥Dσ′

q=σ(s)

Ψ2(s) = −B⊥Dσ′′ +

∑ni=1B

⊥i σ

′⊤Qiσ′

B⊥Dσ′

q=σ(s)

,

(2.13)

and where B⊥i is the i-th component of B⊥ and (Qi)jk = (1/2)

(

∂qkDij+∂qjDik−∂qiDkj

)

.

If h−1(0) ≃ R, then the reduced dynamics are always Euler-Lagrange with Lagrangian

L(s, s) = (1/2)M(s)s2 − V (s), where

M(s) = exp

− 2

∫ s

0

Ψ2(τ)dτ

V (s) = −∫ s

0

Ψ1(µ)M(µ)dµ.

(2.14)

If h−1(0) ≃ S1, then the reduced dynamics are Euler-Lagrange if there exists a regular

parametrization of h−1(0), σ : [R]T → Q such that M(s) and V (s) in (2.14) are T -

periodic.

Proof. Let σ : Θ → Q be a regular parametrization of h−1(0) so that σ : Θ → h−1(0)

is a diffeomorphism. Using this parametrization, the fact that the motion on Γ has the

form (2.12) follows from (2.7), the fact that m−k = 0, and the definition of C. If Θ = R,

one can readily check that the function L(s, s) : R×R → R, L(s, s) = (1/2)M(s)s2−V (s)

is a Lagrangian for system (2.12), so that (2.12) is Euler-Lagrange. On the other hand,

if Θ = [R]T for some T > 0, then L(s, s) is a well-defined function [R]T × R → R if and

only if the functions M(s), V (s) in (2.14) are T -periodic.

Remark 2.4.2. The above proposition is a straightforward adaptation of the analysis

Page 36: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 28

in [18] concerning VHC’s in parametric form. Following a result in [18, Proposition 4.4],

when h−1(0) ≃ S1 a sufficient condition for M(s) and V (s) in (2.14) to be T -periodic is

that σ(s) is an odd function, while D(q), P (q), and B(q) in (2.2) are even functions.

Remark 2.4.3. In the special case of VHCs of order n−1 in parametric form q = φ(qn),

in Proposition 2.4.1 one can let s = qn and σ = φ, so that the reduced dynamics are

given by

qn = Ψ1(qn) + Ψ2(qn)q2n.

−π/2−π/2

π/2

π/2q1

q2s

stablestable

unstable

unstable

Figure 2.6: The set h−1(0) and its parametrization. The equilibrium configurations onh−1(0) and their stability types are marked with dots.

Example 2.4.4. We return to the underactuated manipulator of Example 2.2.10 with

regular VHC h(q) = cos q1 + cos q2 − r, with r = 1.5. The set h−1(0) is a closed curve,

displayed in Figure 2.6. We see from the figure that h−1(0) can be parametrized by the

argument of the complex number q1 + iq2. In other words, we can let σ : [R]2π → Q be

defined as σ(s) = ρ(s)[

cos s sin s]⊤, for a suitable smooth function ρ : [R]2π → (0,∞).

With this parametrization, and letting B⊥ = [− sin q2 sin q1], we obtain functions M(s)

and V (s), displayed in Figure 2.7, that are 2π-periodic. The figure also displays the phase

portrait of the reduced dynamics. As expected, the reduced motion is Euler-Lagrange.

We see that there are two stable equilibria at s = 0 and s = π, and two unstable equilibria

at s = ±π/2. The stable equilibria correspond to the configurations when the end effector

Page 37: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 29

0

0.5

1

1.5

2

2.5

−1

0

1

2

3

4

5

s

s

M(s)

V (s)

0

0

π/2

π/2

π

π

−π/2

−π/2

−π

−π

−6

−4

−2

0

2

4

6

s

s

0 π/2 π−π/2

Figure 2.7: The functions M(s) and V (s) (left) and the phase portrait of the reduceddynamics (right).

of the manipulator is on the horizontal line of Figure 2.2 and the second link is vertical,

i.e., q2 = 0. The unstable equilibria correspond to the situation when the first link is

vertical, i.e., q1 = 0. All non-equilibrium solutions of the reduced dynamics are closed

curves, and we can distinguish two distinct types. There are closed curves in which s

oscillates around an equilibrium without performing full revolutions. These correspond

to low levels of the energy function E = 1/2M(s)s2 + V (s), and will be referred to as

oscillations of s. There are also closed curves in which s perform full revolutions. These

correspond to high energy levels, and will be called rotations of s.

2.4.2 Qualitative properties of the reduced motion

In this section we consider again systems with degree of underactuation one (m = n−1),

and consider regular VHCs h(q) = 0 of order n − 1 such that the set h−1(0) is a curve

with regular parametrization σ : Θ → Q, with Θ = R or Θ = [R]T . Our objective in

this section is to generalize the observations made in Example 2.4.4 by characterizing the

qualitative properties of the reduced motion (2.12). Namely, the equilibria, their stability

type, and the closed orbits. We begin by defining two types of closed orbits already seen

in Example 2.4.4.

Page 38: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 30

Definition 2.4.5. Consider the reduced dynamics (2.12), and suppose that h−1(0) is a

curve with regular parametrization σ : Θ → Q. A closed orbit γ of the reduced dynamics

is said to be an oscillation of s if it is homeomorphic to a circle (s, s) ∈ Θ × R :

s2 + s2 = constant via a homeomorphism of the form (s, s) 7→ (s, T (s)s); if Θ = [R]T ,

i.e., if h−1(0) is a closed curve, then γ is a rotation of s if it is homeomorphic to a circle

(s, s) ∈ [R]T × R : s = constant via a homeomorphism of the form (s, s) 7→ (s, T (s)s).

Oscillations of s correspond to rocking motions. Rotations of s correspond to full

revolutions of s, and they are only defined when s is an angular variable in [R]T .

Proposition 2.4.6. Under the assumptions of Proposition 2.3.1, the equilibrium con-

figurations of (2.12) are the extrema of V (s), i.e., points (s⋆, 0) such that Ψ1(s⋆) = 0,

or equivalently ∇P (σ(s⋆)) ∈ ImB(σ(s⋆)). Minima of V correspond to stable equilibria,

while maxima of V correspond to unstable equilibria. Equivalently, the stability type is

characterized by the sign of [B⊥Dσ′(d/ds)(B⊥∇P )]σ(s⋆) (positive =⇒ stable, negative

=⇒ unstable). Letting V = mins∈[R]T V (s) and V = maxs∈[R]T V (s), almost all (in the

Lebesgue sense) phase curves in the set (s, s) ∈ [R]T ×R : V < 1/2M(s)s2+V (s) < V

are oscillations of s. Moreover, if h−1(0) is a closed curve then all phase curves of (2.12)

in the set (s, s) ∈ [R]T × R : 1/2M(s)s2 + V (s) > V are rotations of s.

The proof of this proposition is found in [18].

Example 2.4.7. We return to the cart-pendulum system of Example 2.3.7 with the

length of the pendulum being one. Consider the parametric VHC θ = φ(x). Applying

Proposition 2.2.6 we obtain that

∀x ∈ R, φ′(x) + cosφ(x) 6= 0. (2.15)

If the pendulum is to oscillate between ±θl, where |θl| < π/2, as the cart translates one

can consider φ(x) = −θl sin(ax), where the minus is needed to ensure that oscillations of

Page 39: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 31

−6 −4 −2 0 2 4 6−40

−30

−20

−10

0

10

20

30

40

x

x

Figure 2.8: Phase portrait of the reduced motion of the cart-pendulum for the VHC’swith φ(x) = −π

3sin(1.5

πx). The shaded region contains oscillations of x corresponding

to the cart oscillating back and forth, while the pendulum is oscillating in the upperhalf-plane due to the VHC.

−8 −6 −4 −2 0 2 4 6 80

100

200

300

400

500

600

700

800

x

V

Figure 2.9: The potential function associated with the reduced dynamics of the cart-pendulum system.

the cart about x = 0 can be achieved while the pendulum is ocillating about θ = 0 and

a is chosen such that equation (2.15) is satisfied. If a = cos θl/θl, then it can be shown

that

∀x ∈ R, cosφ(x) > φ′(x).

As a result the relation

θ = φ(x) := −θl sin(

cos θlθl

x

)

, (2.16)

where θl ∈ (0, π/2) is a design parameter, is a regular VHC in parametric form. By design

this VHC forces the pendulum to remain in the upper half-plane as the cart translates.

Page 40: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 32

The reduced dynamics read as

x =g sinφ(x)

φ′(x) + cosφ(x)− φ′′(x)

φ′(x) + cosφ(x)x2.

Since the function φ(x) is odd and D(q), P (q), B are even functions, in light of Re-

mark 2.4.2 the reduced dynamics are Euler-Lagrange. Their phase portrait when θl = π/3

is depicted in Figure 2.8. Due to the periodicity of φ(x), the phase portrait is periodic in

x; the figure displays one period. As it can be seen, the equilibrium point (x, x) = (0, 0)

is stable for the reduced dynamics. Since φ(0) = 0, at this equilibrium the pendulum is in

the inverted configuration. So even though the inverted configuration is an unstable equi-

librium for the open-loop system, it becomes a stable equilibrium when the VHC (2.16)

is enforced. Applying Proposition 2.4.6 to check the stability of the equilibrium point

(x, x) = (0, 0) gives

[1 0]

1 cosφ(x)

cosφ(x) 2

φ′(x)

1

d

dx

[1 0]

−g sin φ(x)

0

x=0

=

= −g(1− cos θl) cos θl > 0

implying that (x, x) = (0, 0) is a stable equilibrium, as expected. The potential function

V (x) is depicted in Figure 2.9. We see that V has a global maximum V and a global

minimum 0. The region V (x) ∈ [0, V ], depicted in Figure 2.8, is filled with oscillations

of x, as predicted by Proposition 2.4.6.

2.4.3 Effects of dissipation

The results in the previous section are valid in the absence of dissipation. In this section

we analyze the reduced dynamics when system (2.2) is affected by dissipation as follows

D(q)q + C(q, q)q +K(q)q +∇P (q) = B(q)τ. (2.17)

Page 41: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 33

In the above equation, K(q) = K(q)⊤ is the dissipation matrix, assumed to be positive

semidefinite for all q ∈ Q. The dissipation has no effect on the regularity of the VHC.

However, it has an impact on the nature of the reduced dynamics. As we will see, the

dissipation has implications that are rather surprising.

Proposition 2.4.8. Consider system (2.17) and a regular VHC h(q) = 0 with a param-

eterization σ : Θ → Q satisfying the assumptions of Proposition 2.4.1 and such that the

reduced dynamics when K(q) = 0 are Euler-Lagrange. Then, the reduced dynamics in

the presence of dissipation have the form

s = Ψ1(s) + Ψ2(s)s2 +Ψ3(s)s, (2.18)

where Ψ1(s), Ψ2(s) are given in (2.13) and

Ψ3(s) = −B⊥Kσ′

B⊥Dσ′

q=σ(s).

Let (s, s) = (s⋆, 0) be an isolated stable equilibrium of the system without dissipation.

If Ψ3(s⋆) < 0 then (s, s) = (s⋆, 0) is an asymptotically stable equilibrium of (2.17). If

Ψ3(s⋆) > 0 then (s, s) = (s⋆, 0) is unstable.

Proof. The form of the reduced dynamics (2.18) is the result of a straightforward com-

putation. Let (s, s) = (s⋆, 0) be an isolated stable equilibrium of the reduced system

without dissipation. The linearization of (2.18) at this equilibrium has system matrix

0 1

−Ψ′1(s

⋆) Ψ3(s⋆)

.

Since (s⋆, 0) is a stable equilibrium without dissipation, Ψ′1(s

⋆) > 0. It follows that if

Ψ3(s⋆) < 0 then the equilibrium becomes asymptotically stable, while if Ψ3(s

⋆) > 0 then

the equilibrium becomes unstable.

Page 42: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 34

Although the result above is elementary, it is somewhat surprising and contrary to

intuition: the addition of dissipation in an Euler-Lagrange system may turn a stable

equilibrium into one that is unstable when a VHC is enforced. We now illustrate this

result using the cart-pendulum example.

Example 2.4.9. Consider the cart-pendulum system of Example 2.3.7, with configura-

tion vector q = (θ, x) and the regular VHC

θ = φ(x) = −θl sin(

cos θlθl

x

)

.

It was shown in Example 2.4.7 that the equilibrium point (x, x) = (0, 0) is stable for the

reduced dynamics. In the presence of dissipation, the reduced dynamics take on the form

x = Ψ1(x) + Ψ2(x)x2 +Ψ3(x)x,

where

Ψ1(x) =g sinφ(x)

φ′(x) + cosφ(x), Ψ2(x) = − φ′′(x)

φ′(x) + cos φ(x), Ψ3(x) = − k11φ

′(x) + k12φ′(x) + cosφ(x)

,

with k11, k12 being the first row entries of K. Note first that if the dissipation only

affects the cart, i.e., if the first row of K is zero, then Ψ3(0) = 0, and the stability of

the equilibrium (x, x) = (0, 0) is not affected by the dissipation. Now suppose that the

pendulum is affected by friction, so that k11 > 0. One can check that φ′(0)+cos φ(0) > 0,

and φ′(0) = − cos θl < 0. Therefore, if k11 = 1, k12 = 0, then Ψ3(0) > 0, and the

equilibrium point (x, x) = (0, 0) is unstable for the reduced dynamics. On the other

hand, if k11 = 1, k12 ∈ (cos θl, 1), and k22 > cos θl, then Ψ3(0) < 0 and the equilibrium

(x, x) = (0, 0) becomes asymptotically stable. Figure 2.10 shows the phase portrait of the

reduced dynamics when θl = π/3 for the two choices of dissipation matrix K discussed

above. In summary, this example shows that when enforcing a VHC, friction on the

Page 43: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 35

pendulum may have the unexpected effect of destabilizing a stable equilibrium.

−10 −8 −6 −4 −2 0 2 4 6 8 10−10

−8

−6

−4

−2

0

2

4

6

8

10

x

x

−10 −8 −6 −4 −2 0 2 4 6 8 10−10

−8

−6

−4

−2

0

2

4

6

8

10

x

x

Figure 2.10: Phase portraits of the reduced dynamics of the cart-pendulum system withdissipation when the VHC θ = −(π/3) sin(3x/(2π)) is enforced. On the top figure,the components of the dissipation matrix are k11 = 1, k12 = k21 = k22 = 0, and theequilibrium point (x, x) = (0, 0) is unstable. In the bottom figure, the components of Kare k11 = k22 = 1, k12 = k21 = 0.7, and the equilibrium point is asymptotically stable.

2.4.4 Stabilization of closed orbits on the constrained manifold

We now turn our attention to the problem of stabilizing closed orbits (rotations or os-

cillations) on the constraint manifold. The technique presented here will be used in

Chapter 3. For simplicity of exposition, we work with VHCs of order n−1 in parametric

form q = φ(qn), where qn ∈ [R]Tn is an angular variable. The technique presented here is

applicable, mutatis mutandis, to the more general setting of VHCs of order n− 1 of the

Page 44: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 36

form h(q) = 0 describing closed curves in Q.

Consider the reduced dynamics

qn = Ψ1(qn) + Ψ2(qn)q2n, (2.19)

and suppose that the functions M(qn), V (qn) in (2.14) are Tn-periodic, so that according

to Proposition 2.4.1, system (2.19) is Euler-Lagrange with energy function

E(qn, qn) =1

2M(qn)q

2n + V (qn).

We wish to design a feedback law that in addition to enforcing the VHC q = φ(qn),

stabilizes a closed orbit γ on the constraint manifold. This corresponds to stabilizing a

connected component of a level set of the energy, E(qn, qn) = E0. We will thus let

γ = (q, q) ∈ Γ : E(qn, qn) = E0.

Since the reduced dynamics (2.19) have no control input, it is impossible to solve the

problem unless one breaks the invariance of the constraint manifold Γ in some way. We

now present an idea developed in [6] to solve this problem. We will first provide some

basic intuition, and later formalize the presentation.

Suppose we modify the VHC q = φ(qn) by making it depend on a time-varying

parameter s, q = φs(qn), where φs(qn) := col(φs(qn), qn) has the three properties, defined

next.

Definition 2.4.10. Let q = φ(qn) be a regular VHC in parametric form for (2.2). A

relation q = φs(qn) = col(φs(qn), qn), with s ∈ R, such that

(i) q = φs(qn) is regular for all fixed s, i.e., B⊥D∂qn φ

s∣

q=φs(qn)6= 0 for all (qn, s),

(ii) φ0(qn) = φ(qn), so when s = 0 we recover the original VHC,

Page 45: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 37

(iii) (qn, s) 7→ φs(qn) is smooth,

is called a dynamic VHC.

It turns out [6] that given φ(qn), it is always possible to find a dynamic VHC φs(qn).

Varying the parameter s corresponds to changing the geometry of the VHC. The idea is

to enforce the dynamic VHC q = φs(qn) and then control s to stabilize the closed orbit

γ. It turns out that a dynamic VHC is indeed a VHC. To see that, we take two time

derivatives of the output e = q − φs(qn),

e = q − ∂qn φs(qn)qn − ∂sφ

s(qn)s

e = q − ∂qn φs(qn)qn − ∂2qn φ

s(qn)q2n − 2∂qn∂sφ

s(qn)qns− ∂2s φs(qn)s

2 − ∂sφs(qn)s.

The control input τ appears in the term q − ∂qn φs(qn)qn. Since, by assumption, q =

φs(qn) is regular for all fixed s, it is easy to check that τ appears nonsingularly, being

premultiplied by a matrix with rank n − 1. Hence property (i) in Definition 2.4.10

guarantees that q = φs(qn) is a regular VHC which can be enforced using an input-

output linearizing controller.

We also see from the above that we cannot directly control s, since its time derivative

s affects the computation of e. Rather, we should view s as a control input. To this end,

we introduce the compensator s = v, where v is a control input to be designed. With

the introduction of this compensator, we have an augmented Euler-Lagrange system with

configuration vector (q, s) and control input (τ, v). Thus, the augmented system has n+1

degrees-of-freedom and n controls.

The idea now is to design τ to enforce the VHC q = φs(qn). Since this VHC has order

n − 1, and since the augmented system has n controls, the reduced dynamics will have

four states, (qn, qn, s, s) and one control input, the variable v. The orbit γ we wish to

stabilize lies on the plane (s, s) = (0, 0), so we will design v to make (s(t), s(t)) → 0 and

(qn, qn) → γ.

Page 46: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 38

We now formalize the ideas above. Consider the augmented control system

D(q)q + C(q, q)q +∇P (q) = B(q)τ

s = v,

(2.20)

with configuration vector q := (q, s). System (2.20) is Euler-Lagrange with n+ 1 config-

uration variables and n controls. Its Lagrangian is L(q, ˙q) = (1/2) ˙q⊤D(q) ˙q − P (q), with

D(q) = diag(D(q), 1) and P (q) = P (q).

Lemma 2.4.11. A dynamic VHC q = φs(qn) is a regular VHC for the augmented

system (2.20), and it can be enforced by the feedback

τ(q, ˙q, v) =

[1 − ∂qnφs]D−1B

−1 [[1 − ∂qnφ

s]D−1(Cq +∇P )

+ (∂2qnφs)q2n + (2∂qn∂sφ

s)qns+ (∂2sφs)s2 + (∂sφ

s)v

− k1(θ − φs)− k2(θ − (∂qnφs)qn − (∂sφ

s)s)],

(2.21)

where k1, k2 > 0 are design parameters.

The proof of this lemma is essentially contained in the considerations we made above.

The constraint manifold of the augmented system is

Γ = (q, ˙q) : q = φs(qn), q = ∂qnφs(qn)qn + ∂sφ

s(qn)s,

and it can be shown [6] that the reduced dynamics have the form

qn = Ψs1(qn) + Ψs

2(qn)q2n +Ψs

3(qn)qns+Ψs4(qn)s

2 +Ψ5(qn)v

s = v

(2.22)

where Ψsi (qn), i = 1, . . . 5, are suitable smooth functions and Ψs

1, Ψs2 have the property

that Ψ01 = Ψ1, Ψ

02 = Ψ2. Note that when v = 0, the plane s = s = 0 is invariant

for (2.22), and the dynamics on this plane coincide with the original reduced dynamics

Page 47: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 39

in (2.19). In particular, then, system (2.22) has a closed orbit

γ = (q, ˙q) ∈ Γ : (q, q) ∈ γ, s = s = 0.

This is the closed orbit we wish to stabilize. It is shown in [6] that for appropriate choices

of gains K1, K2, K3, the feedback

v = K1(E(qn, qn)− E0)qn +K2s +K3s, (2.23)

in conjunction with the feedback τ(q, ˙q, v) in (2.21), asymptotically stabilizes γ. In con-

clusion, for suitable choices of K1, K2, K3, the feedbacks (2.21) and (2.23) simultaneously

achieve the following control specifications for the augmented system (2.20):

(i) They enforce the dynamic VHC q = φs(qn).

(ii) They asymptotically stabilize the closed orbit γ.

Example 2.4.12. Consider once again the cart-pendulum system of Example 2.4.7 with

the VHC

θ = φ(x) := −θl sin(

cos θlθl

x

)

.

Suppose we wish to stabilize the closed orbit γ = (q, q) ∈ Γ : E(qn, qn) = E0 highlighted

in Figure 2.11. This corresponds to making the cart exhibit an oscillatory behavior near

its rest position. Consider the relation

θ = φs(x) := φ(x− s).

We have

B⊥D∂xφs∣

q=φs(x)= cos

(

θl sin

(

cos θlθl

(s− x)

))

− cos

(

cos θlθl

(s− x)

)

cos θl,

Page 48: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 40

−6 −4 −2 0 2 4 6−40

−30

−20

−10

0

10

20

30

40

x

x

E0

Figure 2.11: Reduced dynamics of the cart-pendulum system. The red curve is the closedorbit we wish to stabilize.

and one can check that this function is bounded away from zero. Moreover, obviously

φ0 = φ and (x, s) 7→ φs(x) is smooth. So the relation θ = φs(x) is a dynamic VHC

for the cart-pendulum. Using the compensator s = v with v as in (2.23) and K1 =

0.015, K2 = −4, K3 = −4, and letting τ be as in (2.21), we enforce the dynamic VHC

while simultaneously stabilizing the desired closed orbit. Simulation results with initial

condition θ(0) = 0.3, θ(0) = 0.1, x(0) = x(0) = 0 are presented in Figures 2.12-2.14. One

can see that the proposed controller stabilizes the desired oscillation for the cart while

simultaneously enforcing the dynamic VHC θ = φs(x). Since |φs(x)| < π/3, enforcing

the VHC guarantees that, in steady-state |θ(t)| < π/3. Furthermore, the stability of the

constraint manifold Γ implies that if the system is initialized near the constraint manifold,

then the solution remains close to it, implying in particular that the pendulum angle

does not deviate significantly from the interval (−π/3, π/3). In essence, the invariance of

the constraint manifold Γ for the closed-loop system gives us control over the transient

behavior of the cart-pendulum.

Page 49: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 41

−6 −4 −2 0 2 4 6−40

−30

−20

−10

0

10

20

30

40

x

x

E0

Figure 2.12: Stabilization of a desired closed orbit for the cart-pendulum: (x(t), x(t))converges to the desired orbit.

0 2 4 6 8 10 12 14 16 18 20

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

time [s]

θ(t)

Figure 2.13: Stabilization of a desired closed orbit for the cart-pendulum: the angle θ(t)of the pendulum remains in the interval (−π/2, π/2) so the pendulum does not fall over.

Page 50: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 2. Virtual Holonomic Constraints 42

0 0.5 1 1.5 2 2.5 3−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

time [s]

θ(t)

φs(t)(x(t))

Figure 2.14: Stabilization of a desired closed orbit for the cart-pendulum: θ(t)−φs(t)(x(t))tends to zero, showing that the dynamic VHC is enforced. This is the key feature thatprevents the pendulum from falling over.

Page 51: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3

Synchronizing N Cart-Pendulums

In this chapter we employ the VHC theory of Chapter 2 to solve a challenging synchro-

nization problem for N underactuated cart-pendulums. We design smooth feedbacks

yielding full synchronization of the N cart-pendulums while simultaneously controlling

their oscillations. As a byproduct, the proposed controller can simultaneously stabilize

the inverted configurations of the N pendulums.

This chapter is organized as follows. In Section 3.1 we present the system model.

In Section 3.2 we formulate the synchronization problem. In Section 3.3 we develop a

solution to the problem by first considering the case N = 2, and then generalizing to

arbitrary N . In Section 3.4 we present simulation results. Finally, in Section 3.5 we

provide some concluding remarks.

3.1 System model

Consider the N cart-pendulums depicted in Figure 3.1. The i-th cart-pendulum has

configuration variable qi = (θi, xi) ∈ Qi, where Qi = S1 × R is the i-th configuration

space. As before, the i-th pendulum model can be written in the standard form

43

Page 52: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 44

θimi

Mi

ll l

xi

ui

θ1m1

M1

x1

u1

θNmN

MN

xN

uN

g

Figure 3.1: A chain of N cart-pendulums

Di(qi)qi + Ci(qi, qi)qi +∇Pi(qi) = Bui, (3.1)

where

Di(qi) =

mil2 mil cos θi

mil cos θi Mi +mi

, ∇Pi(qi) =

−migl sin θi

0

,

Ci(qi, qi) =

0 0

−mil sin θiθi 0

, B =

0

1

. (3.2)

We will let q = (q1, . . . , qN) denote the collective configuration variable, and Q = Q1 ×

· · · × QN denote the collective configuration space.

System (3.1) is an Euler-Lagrange control system with 2N degrees-of-freedom (DOFs)

and N actuators. Therefore, the degree of underactuation is N . The problem that is

investigated here is that of full synchronization with simultaneous control of oscillations.

3.2 Synchronization of oscillations problem (SOP)

Given N cart-pendulums as depicted in Figure 3.1, the goal is to induce a desired os-

cillation on the pendulums as the carts move such that |θi(t)| < π/2. In addition, the

carts-pendulums should fully synchronize, with a desired distance di being maintained

between the carts. More precisely,

Page 53: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 45

Synchronization of Oscillations Problem (SOP). Design feedback laws u⋆i , i =

1, . . . , N , that meet the following two specifications:

(i) Oscillation control for pendulum 1. Let C ⊂ Q1 × R2 be a closed curve to be

defined representing a desired oscillation around the unstable equilibrium. For

all (q1(0), q1(0)) in a neighborhood of C, the solution (q1(t), q1(t)) asymptotically

approaches C.

(ii) Full synchronization. For all i ∈ 2, . . . , N, and for all initial conditions in a

suitable set, θi(t) − θi−1(t) → 0 and xi(t)− xi−1(t) → di−1, where di−1 is a design

parameter.

Note that the special case is when C is the unstable equilibrium of the first pendulum. In

this case, SOP becomes the simultaneous swing-up and synchronization of the N cart-

pendulums.

SOP has been posed and solved by Shiriaev-Freidovich-Gusev in [27] using virtual

holonomic constraints to plan the desired oscillation, and applying the transverse lin-

earization technique to stabilize the oscillation in question. In this thesis we present

an alternative technique, also based on the notion of virtual holonomic constraint, but

relying on different principles as presented in Chapter 2. A detailed comparison is found

in Section 3.5.

3.3 Solution of SOP

To solve the SOP posed above we adapt a master-slave configuration. Specifically, we

design a dynamic feedback u⋆1(q1, q1, s1, s1), where (s1, s1) is the state of a dynamic com-

pensator, to asymptotically stabilize the desired oscillation C for pendulum 1. Then, for

i = 2, . . . , N , we design a dynamic feedback u⋆i (qi, qi, qi−1, qi−1, si, si) to fully synchronize

Page 54: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 46

pendulum i to pendulum i−1. The techniques used to synthesize the dynamic feedbacks

u⋆i rely on the VHC theory presented earlier.

First we consider the case of two pendulums, N = 2. Viewing the first pendulum as

the master, we select a desired oscillation C, and we design a dynamic feedback u⋆1 that

asymptotically stabilizes pendulum 1 to C. We do that by looking for regular VHCs of

the form θ1 = φ(x1), where |φ| < π/2 so that, if the VHC is enforced, the pendulum rod

is forced to lie in the upper half-plane. We also impose a second constraint, θ1 = θ2, to

make the angles of pendulums 1 and 2 synchronize.

Second we show that this solution strategy is applicable to the general case N > 2,

with identical controllers, so that no additional design is required.

3.3.1 Design for the case N = 2

Consider a candidate VHC of order 2,

θ1 = φ(x1), θ2 = θ1. (3.3)

Using Proposition 2.2.6, one can check that (3.3) is a regular VHC if and only if

(∀x1) cosφ(x1) + lφ′(x1) 6= 0,

(∀x1) cosφ(x1) 6= 0.

(3.4)

There are various choices of φ meeting these two conditions and such that |φ| < π/2. For

instance, the function φ used in Chapter 2,

φ(x1) = −θl sin(

cos θ1lθl

x1

)

(3.5)

Page 55: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 47

with θl ∈ (0, π/2), satisfies both properties in (3.4), making the VHC in (3.3) regular.

The reduced dynamics are obtained from (2.7), and have in this case the form

x1 = Ψ1(x1) + Ψ2(x1)x21

x2 = Ψ1(x1) + Ψ2(x1)x21,

(3.6)

where

Ψ1(x1) =m1gl sinφ(x1)

m1l2φ′(x1) +m1l cosφ(x1), Ψ2(x1) = − m1l

2φ′′(x1)

m1l2φ′(x1) +m1l cosφ(x1).

The structure of (3.6) prompts two observations. First, the x1 equation has the structure

of (2.12). This is due to the fact that the constraint θ1 = φ(x1) only involves the state

of pendulum 1, which has degree of underactuation 1. Since x1 is a real variable, the

x1 subsystem is guaranteed to be Euler-Lagrange, and its energy function is E(x1, x1) =

(1/2)M(x1)x21+V (x1), with M and V given in (2.14). The level sets of E(x1, x1) for the

case θl = π/3 and m1 = l = 1, were presented in Figure 2.8. As we will see in a moment,

the level sets of E near (x1, x1) = (0, 0) correspond to the type of oscillations we wish to

stabilize in part (i) of SOP. The second observation is that since x1− x2 = 0, solutions on

the constraint manifold are such that x1(t)− x2(t) → ±∞ whenever x1(0)− x2(0) 6= 0.

This is obviously undesirable because we want x2(t) − x1(t) → d1. Motivated by these

observations, we will parametrize the VHC (3.3) with time-varying parameters s1 and

s2, whose dynamics are s1 = v1 and s2 = v2. Using these new control inputs we would

like to stabilize a level set of E(x1, x1), and stabilize the equilibrium x2 − x1 = d1.

Referring to Figure 2.8, in a neighborhood of (x1, x1) = (0, 0) the phase portrait consists

of closed curves. In particular, the level set E(x1, x1) = 0 is the stable equilibrium

(x1, x1) = (0, 0) of the reduced dynamics. Since φ(0) = 0, oscillations of (x1, x1) near

(0, 0) correspond to oscillations of (θ1, θ1) near (0, 0). Physically this means that when

the VHC θ1 = φ(x1) is enforced on pendulum 1, with appropriate initialization the

Page 56: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 48

cart will oscillate around x1 = 0, while the pendulum will oscillate around its unstable

inverted configuration. This is precisely the type of oscillation we wish to stabilize in

part (i) of SOP. Accordingly, let E(x1, x1) = E0 be a desired level set of the energy for

pendulum 1. Then, the closed orbit we wish to stabilize is

C = (θ1, x1, θ1, x1) ∈ Q1 : E(x1, x1) = E0,

θ1 = φ(x1), θ1 = φ′(x1)x1.(3.7)

Stabilizing C with E0 = 0 will correspond to swinging up the pendulum. Recall that

stabilization of C was performed in Example 2.4.12 by enforcing the dynamic VHC θ1 =

φs1(x1) = φ(x1 − s1) on pendulum 1, with φ given in (3.5), through the input-output

linearizing feedback

u⋆1 =

[1 − ∂x1φs1]D−1

1 B1

−1 [[1 − ∂x1φ

s1]D−11 (C1q1 +∇P1)

+ (∂2x1φs1)x21 + (2∂x1∂s1φ

s1)x1s1 + (∂2s1φs1)s21 + (∂s1φ

s1)v1

− k1(θ1 − φs1)− k2(θ1 − (∂x1φs1)x1 − (∂s1φ

s1)s1)],

(3.8)

where k1, k2 > 0 are design parameters. As described in Section 2.4.4, the evolution of

s1 is governed by

s1 = K1(E − E0)x1 +K2s1 +K3s1. (3.9)

With an appropriate design of K1, K2, K3, the dynamic feedback u⋆1 in (3.8)-(3.9) stabi-

lizes the closed curve C × s1 = s1 = 0.

Now we turn to the stabilization of the equilibrium x2 − x1 = d1. For this, we will

modify the second constraint in (3.3) as θ2 = θ1 − s2, where s2 = v2, and v2 will be

designed so that x2 − x1 → d1 and s2 → 0. This modification introduces a small offset

on the oscillations of the slave system, see Figure 3.2, which can be controlled so that

the slave is driven to stay at a fixed distance from the master. One can check that this

Page 57: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 49

s2

Figure 3.2: Use of a time-varying parameter s2 to introduce a driving force on the slavecart-pendulum system to remain at a fixed distance from the master.

dynamic VHC is regular for all |s2| < π2− θl. To enforce the VHC θ2 = θ1 − s2 we use

the input-output linearizing feedback

u⋆2 =

[1 0]D−12 B2

−1 [[1 0]D−1

1 (B1u1 − C1q1 −∇P1)

+[

1 0]D−12 (C2q2 +∇P2) − k3(θ2 − θ1 + s2)

− k4(θ2 − θ1 + s2)− v2],

(3.10)

where k3, k4 > 0 are design parameters. Summarizing, we have replaced the VHC in (3.3)

with the dynamic VHC

θ1 = φs1(x1) = φ(x1 − s1), θ2 = θ1 − s2, (3.11)

where φ is given in (3.5). This VHC is regular for all s1 ∈ R and all |s2| < π2− θl, and

the dynamic feedbacks u⋆1, u⋆2 in (3.8)-(3.9) and (3.10) stabilize the associated constraint

manifold

Γ = (q1, q2, q1, q2, s1, s2, s1, s2) : θ1 = φs1(x1), θ2 = θ1 − s2,

θ1 = ∂x1φs1(x1)x1 + ∂s1φ

s1(x1)s1, θ2 = θ1 − s2.(3.12)

What is left to do is to design the control input v2 in the dynamic compensator s2 = v2

so as to stabilize the set x2 − x1 − d1 = 0, x2 − x1 = 0, s2 = s2 = 0. To this end, we

will consider the reduced dynamics on Γ assuming that compensator (3.9) has made the

master system converge to the desired energy level set E0, and that s1 = s1 = 0. This

Page 58: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 50

corresponds to investigating the reduced dynamics on Γ′ = Γ ∩ E(x1, x1) = E0, s1 =

s1 = 0. By left-multiplying the equations in (3.1) for i = 1, 2 with a left annihilator of

B and evaluating the resulting expressions on Γ′, we obtain

x2 =g sin(φ(x1)− s2)− (Ψ1(x1) + Ψ2(x1)x

21) lφ

′(x1)− lφ”(x1)x21 + lv2

cos(φ(x1)− s2)

s2 = v2,

(3.13)

where Ψ1,Ψ2 are as before. In the above, (x1(t), x1(t)) is the periodic solution of the

x1 subsystem in (3.6) satisfying E(x1(t), x1(t)) = E0, and it is viewed as an exogenous

signal. In what follows, we will let TE0 be the period of this solution. Consider the error

coordinates e1 = x1 − x2 + d1, e2 = x1 − x2, e3 = s2 and e4 = s2. We have

e1 = e2

e2 = f(t, e3) + g(t, e3)v2

e3 = e4

e4 = v2,

(3.14)

where f(t, e3) and g(t, e3) are given by

f(t, e3) =g(sin e3 + 2lφ′(x1(t)) cos(φ(x1(t))− e3

2) sin e3

2)

cos(φ(x1(t))− e3)(cosφ(x1(t)) + lφ′(x1(t)))

− 2lφ′′(x1(t)) sin(φ(x1(t))− e32) sin( e3

2)x21(t)

cos(φ(x1(t))− e3)(cos φ(x1(t)) + lφ′(x1(t))),

g(t, e3) = − l

cos(φ(x1(t))− e3).

Page 59: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 51

We linearize (3.14) at the origin e = 0, obtaining the linear periodic control system

e =

0 1 0 0

0 0 aE0(t) 0

0 0 0 1

0 0 0 0

e +

0

bE0(t)

0

1

v2, (3.15)

where

aE0(t) =g(1 + lφ′(x1) cosφ(x1))− lφ′′(x1) sinφ(x1)x

21

(cosφ(x1))(cosφ(x1) + lφ′(x1))

bE0(t) =−l

cosφ(x1),

(3.16)

and where, once again, (x1(t), x1(t)) is a TE0-periodic exogenous signal associated to the

energy level set E0 that has been asymptotically stabilized for the master system. The

control input v2 must be designed to stabilize the origin of (3.15). Consider the linear

feedback v2 = Le, where L = [L1 L2 L3 L4] and e = [e1 e2 e3 e4]⊤. If we find L making

the origin of (3.15) exponentially stable, then the origin e = 0 of (3.14) is exponentially

stable as well. To assess the stability of (3.15) we use averaging theory. Consider the

transformations e 7→ E, L 7→ C, defined as

e =diag(1, ǫ, ǫ2, ǫ3)E

L =diag(ǫ4, ǫ3, ǫ2, ǫ)C

where E = [E1 E2 E3 E4]⊤, C = [C1 C2 C3 C4]

⊤, and ǫ > 0 is a small parameter. In

original coordinates we are using the compensator

s2 = ǫ4C1(x1 − x2 + d1) + ǫ3C2(x1 − x2) + ǫ2C3s2 + ǫC4s2. (3.17)

Page 60: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 52

With these definitions, (3.15) takes on the normal form of averaging theory [23],

E =ǫAE0(t)E + ǫ3[⋆]E,

where

AE0(t) =

0 1 0 0

0 0 aE0(t) 0

0 0 0 1

C1 C2 C3 C4

. (3.18)

The averaged system is given by

˙E = ǫAE0E, (3.19)

where AE0 = (1/TE0)∫ TE00

AE0(τ)dτ reads as

AE0 =

0 1 0 0

0 0 aE0 0

0 0 0 1

C1 C2 C3 C4

, (3.20)

with aE0 = (1/TE0)∫ TE00

a(τ)dτ . Note that aE0 depends on the energy level E0 of the

master system corresponding to the periodic orbit (x1(t), x1(t)) that is rendered asymp-

totically stable by compensator (3.9). With the choice of VHC φ(x1) in (3.5), it holds

that aE0 > 0 as shown with the following lemma.

Lemma 3.3.1. aE0 ≥ g, where g is the acceleration due to gravity, for all E0 such that

the set (x1, x1) : E(x1, x1) = E0 is a closed curve.

Proof. For φ(x1) in (3.5), it holds that

1

cosφ(x1)+ lφ′(x1) ≥ cosφ(x1) + lφ′(x1) > 0,

Page 61: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 53

which implies that

1 + lφ′(x1) cosφ(x1)

cos φ(x1)(cosφ(x1) + lφ′(x1))≥ 1. (3.21)

Also,

−lφ′′(x1) sinφ(x1) =cos2 θllθl

sin (ψ(x1)) sin (θl sinψ(x1)),

where ψ(x1) =cos θllθl

x1. Both sinψ(x1) and sin (θl sinψ(x1)) are TE0-periodic, and since

θl <π2, both functions have the same sign where they are non-zero. This implies that,

−lφ′′(x1) sinφ(x1)

cos φ(x1)(cosφ(x1) + lφ′(x1))≥ 0. (3.22)

Inequalities (3.21) and (3.22) imply that, for all E0, a(t) ≥ g, and therefore aE0 ≥ g as

well.

With this lemma aE0 6= 0, it follows that the LTI system

0 1 0 0

0 0 aE0 0

0 0 0 1

0 0 0 0

,

0

0

0

1

. (3.23)

is controllable, and therefore for all E0 there exists C ∈ R4 such that AE0 in (3.20) is

Hurwitz. In particular, we have the following result.

Lemma 3.3.2. The matrix AE0 in (3.20) is Hurwitz for all C ∈ R4 such that C1, . . . , C4 <

0 and

0 < aE0 < min−C3C4/C2, (C1C24 − C2C3C4)/C

22. (3.24)

The proof of the above lemma is straightforward. It relies on the fact, established in

Lemma 3.3.1, that aE0 > 0, and the application of the Routh-Hurwitz criterion to the

characteristic polynomial of AE0 , λ4 − C4λ

3 − C3λ2 − aC2λ− aC1.

Page 62: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 54

Figure 3.3 shows that the function E0 7→ aE0 is monotonically increasing. Therefore,

0 10 20 30 40 50 60 70 80 90 1000

5

10

15

20

25

30

35

40

45

50

E0

aE0

Figure 3.3: The average value of aE0(t), aE0 , increases with E0.

in light of inequality (3.24), if C ∈ R4 is such that AE0 is Hurwitz, then with the same

C it holds that AE1 is Hurwitz for all E1 ≤ E0. The next proposition summarizes our

results so far.

Proposition 3.3.3. Consider N = 2 pendulums in (3.1). Given a feasible energy level

set E0, pick C ∈ R4 to stabilize the LTI system (3.23). Then, there exists ǫ⋆ > 0 such that

for all ǫ ∈ (0, ǫ⋆), the feedbacks u⋆1, u⋆2 in (3.8), (3.10) with compensators (3.9), (3.17),

asymptotically stabilize the sets Γ in (3.12) and

S = (q1, q2, q1, q2, s1, s2, s1, s2) ∈ Γ : E(x1, x1) = E0,

x1 − x2 + d1 = x1 − x2 = 0, s1 = s2 = s1 = s2 = 0,

therefore solving SOP for N = 2. Moreover, the same gain vector C can be used to

stabilize any energy level E1 ≤ E0 for the master system.

Sketch of the proof: The feedbacks u⋆1, u⋆2 exponentially stabilize1 the constraint

manifold Γ in (3.12). The averaging theorem [23] guarantees the existence of ǫ⋆ > 0

1Actually, u⋆1, u⋆

2exponentially stabilize an open subset of Γ, since the dynamic VHC (3.11) is regular

for small values of s2.

Page 63: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 55

such that for all ǫ ∈ (0, ǫ⋆) the averaged system (3.19) is exponentially stable, implying

that the linear periodic system (3.15) is exponentially stable, and therefore the set x2 =

x1(t) + d1, x2 = x1(t), s2 = s2 = 0 is exponentially stable for system (3.13) representing

the reduced dynamics on Γ′. In other words, S is exponentially stable relative to Γ′.

Moreover, by the theory in [6], Γ′ is exponentially stable relative to Γ for suitable choices

of K1, K2, K3 in (3.9). By the Seibert-Florio reduction theorem for asymptotic stability

of sets in [24], S is asymptotically stable.

3.3.2 Design for N cart-pendulums

Here we show that the result for the 2 cart-pendulum systems can be extended to the

general N cart-pendulums system without any additional control design. The dynamic

VHC in (3.11) is generalized as follows:

θ1 = φs1(x1), θi = θi−1 − si, i ∈ 2, . . . , N, (3.25)

where, as before, φs1(x1) = φ(x1 − s1), and φ is given in (3.5), and the evolution of the

parameters si is governed by N compensators si = vi, i = 1, . . . , N . The dynamic VHC

in (3.25) can be shown to be regular for all (s1, . . . , sN) such that |∑Nj=2 sj| < π/2− θl.

The constraint manifold is

Γ = (q, q, s, s) : θ1 = φs1(x1), θi = θi−1 − si, θ1 = ∂x1φs1(x1)x1

+ ∂s1φs1(x1)s1, θi = θi−1 − si, i ∈ 2, . . . , N,

(3.26)

and the input-output linearizing feedbacks stabilizing Γ in conjunction with u⋆1 in (3.8)

are

u⋆i =

[1 0]D−1i Bi

−1 [[1 0]D−1

i−1(Bi−1ui−1 − Ci−1qi−1

−∇Pi−1) + [1 0]D−1i (Ciqi +∇Pi) − k3(θi − θi−1

+ si)− k4(θi − θi−1 + si)− vi], i = 2, . . . , N.

(3.27)

Page 64: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 56

As before, we are interested in investigating the reduced dynamics on Γ′ = Γ∩E(x1, x1) =

E0, s1 = s1 = 0. For this, we use the fact that xi = −(l/ cos θi)θi + g sin θi/ cos θi and

the fact that, on Γ, θi = θ1 −∑i

j=2 sj and θi = θ1 −∑i

j=2 vj, so that

xi =−l(θ1 −

∑ij=2 vj) + g sin(θ1 −

∑ij=2 sj)

cos(θ1 −∑i

j=2 sj)

∣ θ1 = φ(x1)

θ1 = φ′′(x1)x21 + φ′(x1)x1

si = vi, i ∈ 2, . . . , N.

We see from the above that the reduced dynamics on Γ′ are given by N − 1 decoupled

identical subsystems, each of dimension 4, driven by the exogenous signal (x1(t), x1(t)),

the periodic solution of the x1 subsystem in (3.6) with energy level E0. Defining the error

coordinates ei1 = xi−1 − xi + di−1, ei2 = xi−1 − xi, e

i3 = si, e

i4 = si, i ∈ 2, . . . , N, the

error dynamics can be found to be a linear-time varying system which when linearized

about the origin and letting ei = [ei1, . . . , ei4]

⊤, gives the linear periodic system

ei =

0 1 0 0

0 0 aE0(t) 0

0 0 0 1

0 0 0 0

ei +

0

bE0(t)

0

1

vi

where aE0(t), bE0(t) are as in (3.16). We see, remarkably, that the i-th linearized error

subsystem is identical to (3.15), and thus the analysis performed in the previous section

directly carries over to this setting. Thus, for i ∈ 2, . . . , N, the compensator

si = ǫ4C1(xi−1 − xi + di−1) + ǫ3C2(xi−1 − xi) + ǫ2C3si + ǫC4si, (3.28)

where C1, . . . , C4 are designed as in Proposition 3.3.3 and are independent of i, exponen-

tially stabilizes the origin of the error subsystem.

Proposition 3.3.4. Consider the N cart-pendulums in (3.1). Given a feasible energy

Page 65: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 57

level set E0, pick C ∈ R4 to stabilize the LTI system (3.23). Then, there exists ǫ⋆ > 0

such that for all ǫ ∈ (0, ǫ⋆), the feedbacks u⋆1 in (3.8) and u⋆i , i = 2, . . . , N , in (3.27) with

compensators (3.9), (3.28) asymptotically stabilize the set Γ in (3.26) and the set

S = (q.q, s, s) ∈ Γ : E(x1, x1) = E0, xi−1 − xi + di−1 = 0,

xi−1 − xi = 0, si = si = 0, i = 1, . . . , N,

therefore solving SOP. Moreover, the same gain vector C ∈ R4 can be used to stabilize

any energy level set E1 ≤ E0.

Proof. The proof of this result follows directly from the proof of Proposition 3.3.3 and

the fact that the linearized error system is made of N − 1 decoupled subsystems, each

identical to (3.15).

3.4 Simulation results

Here we present simulation results for the case N = 3. All physical parameters were

taken to be unity. The gains k1, . . . , k4 in the feedbacks u⋆1 in (3.8) and u⋆2, u⋆3 in (3.27)

are chosen to be k1 = k3 = 25, k2 = k4 = 10. The gains in for the s1 compensator

in (3.9) were chosen to be K1 = −0.1, K2 = −1, K3 = −1 The desired cart separations

are d1 = d2 = 1. For the s2 and s3 compensators in (3.28), we let ǫ = 1 and pick C ∈ R4

to place all poles of (3.23) with aE0 = 10 at −1. This gives C = [−.11 −.43 −6.33 −4.11].

Finally, the initial conditions chosen were as follows q1(0) = [−.3 0]⊤, q2(0) = [.3 4]⊤,

q3(0) = [.1 6]⊤ and q1(0) = q2(0) = q3(0) = [0 0]⊤ and si = si = 0, i = 1, 2, 3.

To illustrate the role of the three compensators s1, s2, s3, in Figure 3.4 we show the

positions and angles of the three cart-pendulums when the energy stabilization mecha-

nism of compensator s1 is turned off (i.e., K1 = K2 = K3 = 0). As Figure 3.4 shows, the

enforcement of the VHC θ1 = φ(x1) makes the master system oscillate about its inverted

Page 66: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 58

0 2 4 6 8 10 12 14 16 18 20−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

time [s]

Angle

[rad]

θ1(t)

θ2(t)

θ3(t)

0 2 4 6 8 10 12 14 16 18 20−1

0

1

2

3

4

5

6

7

8

9

time [s]

Position[m

]

x1(t)

x2(t)

x3(t)

Figure 3.4: Full synchronization of 3 cart-pendulums without energy stabilization: angleof each pendulum (top) and cart position (bottom). Note that during transient the threependulums remain in the upper half-plane.

configuration, while the other two cart-pendulums fully synchronize to it. Next, in Fig-

ure 3.5 we turn on the energy stabilization mechanism of compensator s1 with E0 = 0,

which corresponds to stabilizing the inverted configuration of the three cart-pendulums.

We see from Figure 3.5 that, indeed, the three cart-pendulums fully synchronize, and

that the cart positions converge to desired constants while the angles converge to zero.

Page 67: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 59

0 5 10 15 20 25 30 35 40

−0.5

−0.4

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

time [s]

Angle

[rad]

θ1(t)

θ2(t)

θ3(t)

0 5 10 15 20 25 30 35 40−1

0

1

2

3

4

5

6

7

8

9

time [s]

Position[m

] x1(t)

x2(t)

x3(t)

Figure 3.5: Full synchronization of 3 cart-pendulums with simultaneous energy levelstabilization for the master cart-pendulum. Here we are stabilizing the energy level E0 =0, which corresponds to stabilizing the upright equilibrium position of the pendulums.Note that during transient the three pendulums remain in the upper half-plane.

3.5 Concluding Remarks

As mentioned in Section 3.2, SOP has first been presented and solved in [27]. The authors

in [27] use VHCs to select a closed orbit, and then apply the transverse linearization tech-

nique to stabilize said orbit. Specifically, one needs to compute the 2N − 1-dimensional

transverse linearization of (3.1) around the desired closed orbit, and then use techniques

for the stabilization of linear time-varying (LTV) systems to design the feedback. This

step can be challenging in practice. Our approach is fundamentally different. First, the

Page 68: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 3. Synchronizing N Cart-Pendulums 60

notion of virtual holonomic constraint we use is stronger than the one considered in [27] in

that we require the constraint manifold to be controlled invariant, while in [27] controlled

invariance is not imposed since virtual holonomic constraints are only used for planning

a specific orbit with desired properties. The controller in [27] is static and time-varying,

and it does not make the constraint manifold invariant for the closed-loop system. As a

result, the constraint manifold is actually unstable for the closed-loop system.

In our approach the VHC plays a central role in synchronization, since the constraint

manifold Γ is made invariant for the closed-loop system, and it is dynamically changed for

energy regulation and position control. Specifically, our controller in Proposition 3.3.4

is dynamic, with 2N states, and it stabilizes the manifold Γ in (3.26), thus enforcing

the dynamic VHC (3.25). While in [27] one needs to stabilize an LTV system of order

2N − 1, our control design relies on the stabilization of a fourth-order LTI system, no

matter how largeN is. Thus, our control design is much simpler. Additionally, the benefit

of stabilizing Γ while simultaneously meeting the specifications of SOP is that one has

better control over the transient performance of the system. For instance, if a small

disturbance affects the master pendulum so that the relation θ1 = φs1(x1) is violated,

the controller will guarantee a graceful recovery, in that during the ensuing transient

the quantity θ1 − φs1(x1) will remain small. This is desirable because |φs1(x1)| < π/2

for all s1 ∈ R, and therefore the master pendulum remains in the upper half-plane for

small enough perturbations. Similar considerations hold for all other pendulums in the

chain. In essence, the enforcement of the dynamic VHC (3.25) provides us with a lot of

information about the transient of the chain of cart-pendulums.

Page 69: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4

A Bilateral Teleoperation Problem

The goal of this chapter is to illustrate the application of the VHC theory presented

in Chapter 2 to a bilateral teleoperation problem. As pointed out in Chapter 1, the

prominent approach to teleoperation is one inspired by network theory, and originally

pioneered by Anderson and Spong in [1]. The formalism in [1] has been adopted by most

researchers in Robotics. One common characteristic in the design is the use impedance

models for the master and slave robots, as well as the environment. In this chapter we

lay the foundations for a different approach to teleoperation, one that relies on VHCs

and avoids the need for force sensors.

4.1 Teleoperation problem

Consider two identical, fully actuated, two-link planar manipulators, depicted in Fig-

ure 4.1. The first manipulator, called the local robot, is a haptic interface operated by

a human. The second manipulator, called the remote robot, is to replicate the actions

of the human. This latter robot is situated near a surface, which for the sake of simplicity

we assume to be a plane, and which will be called the manipulation surface S. When

the remote robot enters in contact with S, we switch to the contact phase, in which

the end effector of the remote robot is constrained by feedback to slide on S, while the

61

Page 70: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 62

local robot simulates a “virtual surface” so that the human can “feel” the presence of

the manipulation surface. During the contact phase we require the remote end effector

to replicate the actions of the local end effector. In particular, we want the remote robot

to impart on the manipulation surface a force equal to the force imparted by the human

on the virtual surface. We will make this precise in a moment, but first we present the

assumptions on which our approach relies.

ql1

ql2

qr1

qr2

r

Fh

force exerted by human operator

local robot (haptic interface) remote robot

S

Figure 4.1: Two identical fully actuated two-link planar manipulators. The manipulatoron the left-hand side (local robot) is operated by the human, who applies a force Fhon the end effector. The manipulator on the right-hand side (remote robot) is facing asurface at a distance r from its base.

Standing assumptions. The following is assumed throughout this chapter.

(i) The two robots are identical.

(ii) There is no time delay in the communication between local and remote robots. This

is a reasonable assumption when local and remote robots are in the same location,

such as in robotic surgery [17].

(iii) Local and remote robots have access to their complete states (angles and angular

velocities).

(iv) The location in space of the manipulation surface S and its shape (for simplicity, a

plane) are perfectly known.

Page 71: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 63

(v) The manipulation surface is frictionless.

(vi) The coefficient of restitution of the manipulation surface is zero (this coefficient is

defined in Section 4.3) so that the impact is inelastic.

Most of the assumptions above are made exclusively to precisely formulate the simplest

problem that captures the key challenges of bilateral teleoperation. Straightforward

generalizations of the material presented in this chapter can be performed to remove

most of the assumptions. The crucial assumptions that cannot be easily removed are (iv)

and (vi). More research is needed to eliminate them.

We now present the control specifications.

(P1) Full synchronization during free motion phase. When the remote robot is

not in contact with the manipulation surface, the following specifications must be

met:

(a) Under the assumption that the human force is perfectly known, the remote

robot should fully synchronize to the local robot.

(b) When the human force is completely unknown but bounded as ‖Fh(t)‖ ≤ F ,

the synchronization error should be bounded with a bound proportional to F .

(P2) Constraining motion on the remote robot and virtual surface simulation

on the local robot. When the remote robot first hits S, the remote and local

controllers should switch to the contact phase, during which:

(a) The end effector of the remote robot should be constrained by feedback to

remain on S.

(b) The local robot should simulate the presence of a virtual surface identical to

S. In particular:

(b.1) Under the assumption that the human force is perfectly known, the end

effector of the local robot should be constrained by feedback to remain

Page 72: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 64

on the virtual surface, but the human should be able to freely slide the

end effector of the local robot along the surface.

(b.2) When the human force is unknown but bounded, the human should feel

a spring-like force pushing the end effector of the local robot towards the

virtual surface, and the distance of the end effector to the virtual surface

should remain bounded.

(P3) End effector synchronization during contact phase. During the contact

phase, the following specifications should be met:

(a) Under the assumption that the human force is perfectly known, the local and

remote end effectors should synchronize.

(b) When the human force is completely unknown but bounded as ‖Fh(t)‖ ≤ F , the

end effector synchronization error should be bounded with a bound proportional

to F .

(P4) Human force estimation on local robot. During the contact phase, using

feedback from the local robot, we wish to estimate in real-time the component of

the force that the human exerts on the local robot in the direction orthogonal to

the virtual surface. This estimate is to be used in the solution to problems P1a,

P2b.1, P3a, and P5.

(P5) Force control on remote robot. During the contact phase, we wish to control

the force that the remote robot’s end effector exerts on the manipulation surface.

The reference force signal will come from the force estimator in P4.

Remark 4.1.1. It may be argued that constraining the local robot during the contact

phase to lie on the virtual surface may be disadvantageous in some applications. Indeed,

in P2 it would be desirable to allow the human to sense the virtual surface and then

detach from it. In this thesis, we rule out this possibility so as to make the problem

Page 73: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 65

treatable and to avoid the complexity of the impulsive contact model presented in Sec-

tion 4.3. Nonetheless, we foresee that the methodology presented in this chapter can be

adapted to address the more complex situation of intermittent contact.

Remark 4.1.2. In our problem formulation, we estimate the force imparted by the

human on the virtual surface, and we reflect this force on the remote robot. This differs

radically from current teleoperation approaches, which do precisely the opposite. Namely,

they use a force sensor on the end effector of the remote robot, and they reflect the sensed

force on the local side. As pointed out in Chapter 1, in the presence of small time delays

using force sensors on the remote side gives rise to instability of the teleoperation system.

To overcome this problem, researchers have adopted the formalism of network theory and

scattering operators. Our approach is not affected by the instability problem because

no force sensors are needed in our force control scheme. The price we pay for these

advantages is that we need to have perfect knowledge of the manipulation surface.

Remark 4.1.3. In situations where force feedback is crucial, our approach is not ideal.

One such example is in the operation of an aircraft. Pilots benefit from force feedback

to determine the flying state of the aircraft and take corresponding action. However, in

rehabilitation devices for stroke patients and other applications where the manipulation

surface is known in advance and the main objective is to simulate the feeling of the

surface, force feedback is not crucial and our approach is advantegous.

4.2 Solution methodology

In this section we present the methodology followed in Section 4.4 to solve the teleoper-

ation problem. Our solution relies heavily on the VHC theory presented in Chapter 2.

P1. Full Synchronization during free motion phase. During free motion, we

synchronize the two robots by imposing the second-order VHC h1(ql, qr) = ql− qr on the

remote robot. No control is required on the local robot in this phase.

Page 74: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 66

P2. Constraining motion on the remote robot and virtual surface simula-

tion on the local robot. When the remote robot enters in contact with the manipula-

tion surface for the first time, both remote and local controllers are switched to contact

mode. To constrain the end effector of the remote robot to lie on S, we enforce the VHC

h2(qr) = r − sin qr1 − sin qr2 on the remote robot. To simulate a virtual surface on the

local side, we enforce the VHC h2(ql) = r− sin ql1 − sin ql2 on the local robot. Since both

VHCs have order one, the reduced dynamics of both local and remote robots have one

control input.

P3. End effector synchronization during contact phase. As mentioned earlier,

the reduced dynamics of the remote robot have one control input. For this input, we

will design a simple proportional-derivative (PD) control law to make the end effector

of the remote robot synchronize to that of the local robot. Because the remote robot is

taking charge of the synchronization task, the human is free to move the end effector of

the local robot along the virtual surface.

P4. Human force estimation on local robot. During the contact phase, the

VHC h2(ql) = 0 is enforced on the local robot, so that the human feels the presence

of a virtual surface. If the human pushes against this surface, the relation h2(ql) is no

longer zero, and its deviation from zero is related to the amount of force that the human

imparts on the virtual surface. If the human force is constant or slowly-varying, by using

adaptive control techniques it is possible to estimate the human force from h2(ql(t)).

P5. Force control on remote robot. The force control problem will be addressed

by adding a torque component to the feedback enforcing the VHC h2(qr) = 0 in such a

way that the end effector of the remote robot imparts the required force on the manipu-

lation surface.

Page 75: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 67

4.3 Modeling

Let ql = [ql1 ql2]⊤ and qr = [qr1 qr2]

⊤ denote the configuration vectors of the local

and remote robots, respectively. We will assume that the lengths and masses of the

manipulators are unitary, and that the links have no moment of inertia. We will let the

distance between the manipulation surface and the base of the remote robot be r = 1.5,

so that the surface is the zero level set of the function

F (qr) = 1.5− sin qr1 − sin qr2.

When the configuration vector of the remote robot satisfies the inequality F (qr) > 0, the

robot is not in contact with S.

Our modeling will be divided in three parts. We will first present the model of the

robots in free motion. Then, we will present the model of the remote robot when its

end effector is in contact with the manipulation surface, and finally we will present the

impulsive impact model.

4.3.1 Free motion phase

The dynamics of the local and the remote robots when this latter is not in contact with

S can be obtained via the Euler-Lagrange method, and read as

D(ql)ql + C(ql, ql)ql = τl + J⊤(ql)Fh (4.1)

D(qr)qr + C(qr, qr)qr = τr, (4.2)

Page 76: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 68

where τl and τr are the control torques of the local and remote robots, respectively, Fh

is the force imparted by the human on the end effector of the local robot, and

D(qi) =

2 cos(qi1 − qi2)

cos(qi1 − qi2) 1

,

C(qi, qi) =

0 sin(qi1 − qi2)qi2

− sin(qi1 − qi2)qi1 0

J(qi) =

− sin qi1 − sin qi2

cos qi1 cos qi2

where i = l, r. The matrix J(ql) in (4.1) is the Jacobian of the local robot. Its transpose

maps the force applied to the end effector to the equivalent joint torques [28]. In what

follows, we will denote by q := [(ql)⊤ (qr)⊤]⊤ the collective configuration vector of the

two robots, and by q the collective configuration velocity.

4.3.2 Contact phase

When F (qr(t)) ≡ 0, the end effector of the remote robot is on the manipulation surface,

so its dynamics are subject to a unilateral constraint, F (qr) ≥ 0. To find the constrained

dynamics, we follow the approach in [4] and write

D(qr)qr + C(qr, qr)qr = τr + λ∇F (qr), (4.3)

where λ ≥ 0 is a Lagrange multiplier, and ∇F (qr) is the gradient1 of F (qr). The term

λ∇F (qr) on the right-hand side is the torque due to the contact force between the surface

1∇F (qr) can be thought of as the vector of joint torques required to make the end effector experiencea unit force normal to S. Indeed, the normal vector to the surface is [0 − 1]⊤, and one can see that∇F (qr) = J⊤(qr)[0 − 1]⊤.

Page 77: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 69

Conditions on er, er Value of λ

er > 0 λ = 0er = 0, er > 0 λ = 0er = 0, er = 0 λ given by (4.4)er = 0, er < 0 reset: er = 0, compute q+r from (4.5)-(4.6)

Table 4.1: Computation of λ in (4.3).

and the remote robot, and it has the effect of making the set

Ω = (qr, qr) : F (qr) ≥ 0

invariant for (4.3). Letting er := F (qr), when er > 0 the remote robot is not in contact

with S, and when er > 0 the end effector of the robot is moving away from S. The value

of λ is determined according to Table 4.3.2. Specifically, if er > 0 then the robot is not

in contact with S and λ = 0. If er = 0 but er > 0, then the end effector is on S, but it is

detaching from it, so the surface does not exert any force on it and λ = 0. If er = 0 and

er = 0, then the end effector is on S, and its velocity is tangent to it. In this case, λ is

found by imposing that the component of the acceleration of the end effector orthogonal

to S be zero. By so doing, one obtains

λ =(−qr)⊤[HF (qr)]qr −∇F (qr)⊤D−1(qr)(τr − C(qr, qr)qr)

∇F (qr)⊤D−1(qr)∇F (qr) , (4.4)

where HF is the Hessian of F . Finally, if er = 0 and er < 0, then the end effector is

impacting the manipulation surface with a nonzero velocity. In this case, the model (4.3)

experiences an impulsive force that resets the configuration velocity. This reset is modeled

in the next section.

Page 78: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 70

4.3.3 Impact phase

Following [4], we model the impact with S as an instantaneous event that resets the

configuration velocities of the remote robot. Letting (qr)+ and (qr)− denote the post-

and pre-impact configuration velocities, the impact model is given by

D(qr)(

(qr)+ − (qr)−)

= pqr∇F (qr) (4.5)

∇F (qr)⊤(qr)+ = −e∇F (qr)⊤(qr)−, (4.6)

where pqr ≥ 0 is a coefficient to be determined, and e ∈ [0, 1] is the restitution coef-

ficient of S. When e = 0, the impact is inelastic and the velocity of the end effector

after impact is tangent to S; when e = 1, the impact is fully elastic. The unknowns in

equations (4.5)-(4.6) are (pqr , qr1, q

r2), and the equations be rewritten as

D(qr) −∇F (qr)

∇F (qr)⊤ 0

(qr)+

pqr

=

D(qr)(qr)−

−e∇F (qr)⊤(qr)−

. (4.7)

This system of equations can always be solved because the system matrix is invertible.

This follows from the fact that ∇F (qr)⊤D−1(qr)∇F (qr) 6= 0 for all qr.

The impact equations above have the following physical meanings. Equation (4.5)

states that the change in generalized momentum during the impact transition (left-hand

side of the equation) must be orthogonal to S, and pointing towards the manipulator.

Equation (4.6) generalizes Newton’s restitution law. It states that the component of the

configuration velocity normal to S will be scaled by a factor e ∈ [0, 1]. As stated in the

standing assumptions, in this chapter we assume that e = 0, so that the post-impact

configuration velocity is tangent to S, and the end effector of the remote robot does not

bounce after the impact with S.

Page 79: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 71

4.3.4 Numerical simulation of impact

The remote robot is simulated as follows

1. Start in free motion phase and simulate (4.1)-(4.2) until the end effector of the

remote robot reaches S;

2. When er = 0 and er < 0, compute (qr)+ from (qr)− using equation (4.7) with e = 0;

3. Switch the simulation of the remote robot to the contact phase equation (4.3), and

compute λ using (4.4).

We remark that the third step of the simulation relies on the fact that when the

remote robot impacts S, the controller does not allow it to leave S afterwards.

4.4 Solution of the teleoperation problem

In this section we solve the teleoperation problem. Each of the subproblems in Section 4.1

is investigated in a separate section.

4.4.1 P1: Full synchronization during free motion phase

Consider the robot models in (4.1)-(4.2). When the remote robot is not in contact with

S, in order to synchronize the two robots we enforce the VHC

h1(ql, qr) = ql − qr,

which is regular because the robots are fully actuated. This second-order VHC will be

enforced using the two torques of the remote robot, as follows

τr(q, q, Fh) = C(qr, qr)qr +D(qr)[D−1(ql)(J⊤(ql)Fh − C(ql, ql)ql) + k1e+ k2e], (4.8)

Page 80: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 72

where k1, k2 > 0 are design parameters, e = ql − qr, and the bold term is not to be used

if the human force is completely unknown. By design, the error dynamics are

e + k2e+ k1e = 0,

so when the human force is known, the two robots exponentially synchronize, solving

problem P1a. On the other hand, if the human force is completely unknown, then

feedback (4.8) without the bold term results in the error dynamics

e+ k2e + k1e = D−1(ql)J⊤(ql)Fh.

The matrix D−1(ql)J⊤(ql) is uniformly bounded, so if ‖Fh‖ ≤ F , the dynamics above can

be viewed as those of a BIBO stable LTI system with a bounded input. Therefore, e(t) is

bounded, and the error bound is proportional to Fh, as required by P1b. In conclusion,

feedback (4.8) solves P1.

Henceforth, the constraint manifold for the VHC h1(ql, qr) = 0 will be referred to as

the synchronization manifold, and it is given by

ΓSY = (q, q) : ql = qr, ql = qr.

4.4.2 P2: Constraining motion of the end effectors

The objective in this section is to design controllers constraining the end effector of the

remote robot to lie on the manipulation surface, and simulating contact of the local robot

with a virtual surface. We recall the robot models in the contact phase

D(ql)ql + C(ql, ql)ql = τl + J⊤(ql)Fh

D(qr)qr + C(qr, qr)qr = τr + λ∇F (qr),(4.9)

Page 81: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 73

with λ determined according to Table 4.3.2. In order to meet the control specifications

in P2, we enforce two identical VHCs on the two robots, h2(ql) = 0 and h2(q

r) = 0, with

h2(qi) = F (qi) = 1.5− sin qi1 − sin qi2, i ∈ l, r.

We will ignore for a moment the presence of the contact force λ∇F (qr) in (4.9), and

enforce the VHCs using the results in Lemma 2.2.4 and Proposition 2.3.1. Accordingly,

for i ∈ l, r, we let A(qi) = dFqiD−1(qi), A†(qi) = D(qi)∇F (qi)/‖dFqi‖2, and N(qi) =

D(qi)[cos qi2 − cos qi1]⊤, so that A(qi)A†(qi) = I and A(qi)N(qi) = 0. The feedbacks

enforcing the VHCs are

τl(ql, ql,Fh) = −J⊤(ql)Fh + C(ql, ql)ql + A†(ql)τ⋔l +N(ql)τ ql

τr(qr, qr) = C(qr, qr)qr + A†(qr)τ⋔r +N(qr)τ qr ,

(4.10)

where the bold term in (4.10) is to be used only when Fh is known, and

τ⋔i = −(qi)⊤HF (qi)qi − ki1F (qi)− ki2dFqi qi, i ∈ l, r, ki1, k

i2 > 0. (4.11)

The next proposition states that for any τ ql , τq

r , the feedback (4.10)-(4.11) solves P2. The

proof is at times informal because it does not present a thorough analysis of the impulse

effects caused by the impact model on the remote robot.

Proposition 4.4.1. Consider the contact phase models in (4.9). If Fh is known, then

for any smooth functions uqi(q, q), i ∈ l, r, the control inputs (4.10)-(4.11) enforce the

VHCs h2(ql) = 0, h2(q

r) = 0. If Fh is unknown and bounded as ‖Fh‖ ≤ F , and the bold

term in (4.10) is omitted, then the error el := F (ql) is bounded, and its dynamics are

those of a mass-spring-damper system with spring constant kl1 and damping constant kl2.

Page 82: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 74

er

er

impact

Figure 4.2: Phase portrait of system (4.12). The thick line represents the impact.

Proof. Let el = F (ql) and er = F (qr). Then, it holds that

er + kr2er + kr1er = a(qr)λ, (4.12)

where a(qr) = ∇F⊤(qr)D−1(qr)∇F (qr) > 0 for all qr. System (4.12) is an asymptotically

stable LTI system with a discontinuous input (due to λ), and affected by an impulsive

effect due to the impact model in (4.5)-(4.6). Rather than analyzing this system with

full rigor, we will resort to intuitive arguments to show that (er, er) = (0, 0) is a globally

asymptotically stable equilibrium of (4.12). The idea is illustrated in Figure 4.2. As long

as er(t) > 0, we have λ = 0 (see Table 4.3.2), and (4.12) is an unforced stable LTI system.

Hence, either er(t) converges to zero asymptotically, or there exists a time t > 0 such that

er(t) = 0, i.e., the remote end effector impacts S. At impact, it must hold that er(t−) ≤ 0.

If er(t−) < 0, then equation (4.6) in the impact model and the assumption that e = 0

imply that (qr)+ is tangent to S or, what is the same, er(t+) = 0. We thus have that

the solutions of (4.12) converge to (er, er) = (0, 0) either asymptotically or in finite time.

The point (er, er) = (0, 0) is an equilibrium of the discontinuous system (4.12), because

by Table 4.3.2 λ is zero at this point, and the impulsive effect due to the impact model

Page 83: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 75

is absent. In conclusion, (er, er) = (0, 0) is globally asymptotically stable for (4.12),

showing that the VHC h2(qr) = 0 has been enforced.

Next, we turn our attention to the local robot. If Fh is available for feedback, then

we have

el + kl2el + kl1el = 0, (4.13)

so that the VHC h2(ql) = 0 is enforced. If Fh is unknown and the bold term in (4.10) is

omitted, then the error dynamics read as

el + kl2el + kl1el = ∇F⊤(ql)D−1(ql)J⊤(ql)Fh. (4.14)

The above is a BIBO stable LTI system with a bounded input, so el is bounded. Moreover,

we see that the error dynamics are those of a mass-spring-damper system with spring

constant kl1 and damping constant kl2.

Henceforth, the constraint manifolds of the two VHCs in the contact phase will be

called the contact manifolds, and they are given by

ΓlCM = (q, q) : F (ql) = dFql ql = 0

ΓrCM = (q, q) : F (qr) = dFqr qr = 0.

4.4.3 P3: End effector synchronization during contact phase

In the previous section we designed feedbacks τl(ql, ql, Fh) and τr(q

r, qr) in (4.10)-(4.11)

stabilizing the contact manifolds ΓlCM and ΓrCM , so that the end effector of the local

robot is constrained to move on a virtual surface, while the end effector of the remote

robot moves on the manipulation surface S. The remote robot is left with one control

input τ qr . In this section we design a feedback τ qr(q, q) synchronizing the end effectors of

the two robots during the contact phase. To this end, let xl, xr denote the horizontal

displacements of the end effectors of the local and remote robots along the manipulation

Page 84: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 76

surface S, i.e.,

xi = cos qi1 + cos qi2, i ∈ l, r.

On the contact manifolds of the two robots, one has that xl = xr if and only if the two

end effectors are synchronized. Moreover, the variables xl, xr are local coordinates for

the VHCs h2(ql) = 0, h2(q

r) = 0, so following Proposition 2.3.1 we can use them to write

the reduced dynamics on the contact manifolds. By differentiating xi twice and using

the derivatives qi from (4.9) with the feedbacks (4.10)-(4.11), we obtain

xl = − sin(ql2 − ql1)τq

l − (ql)⊤Q(ql)ql + P (ql)Fh

xr = − sin(qr2 − qr1)τq

r − (qr)⊤Q(qr)qr − sin(2 q2)λ

cos(2 q1 − 2 q2)− 3,

(4.15)

where Q(qi) is a 2× 2 matrix with bounded entries and P (ql) is a bounded 1× 2 vector.

By restricting the equations in (4.15) to the contact manifolds and letting Fh = 0 (for,

otherwise, the local robot would only remain in a neighborhood of its contact manifold)

we obtain the reduced dynamics of the two robots on the contact manifolds

xl =[

− sin(ql2 − ql1)τq

l − (ql)⊤Q(ql)ql]

(ql,ql)∈ΓlCM

xr =[

− sin(qr2 − qr1)τq

r − (qr)⊤Q(qr)qr]

(qr ,qr)∈ΓrCM

.

(4.16)

In writing (4.16), we used the fact that λ = 0 on ΓrCM . Indeed, on ΓrCM we have

(er, er) = (0, 0), and substituting the feedback τr from (4.10)-(4.11) in the expression for

λ in (4.4), we obtain λ = 0.

We will synchronize the end effectors by using the control input τ qr , and we will set

τ ql = 0. This way, the local robot does not exert any force on the end effector in the

tangent direction to the virtual surface, and the human is free to move the local end

effector along the surface. We need a basic assumption on the behavior of the human.

Assumption 4.4.2. During the contact phase, the human keeps the end effector of

Page 85: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 77

0−√7/2

√7/2

x

Figure 4.3: The workspace of the remote robot while the end effector remains in contactwith the surface (shaded area).

elbow up

elbow up

elbow down

elbow down

S

−π/2−π/2

π/2

π/2

h−1

2(0)

q1

q2

q2 = q1

Figure 4.4: Elbow up and elbow down configurations when the end effector lies on S,and the corresponding coordinate charts of the VHC h2(q

i) = 0, i ∈ l, r.

the local robot inside a compact subset of the workspace displayed in Figure 4.3, i.e.,

xl ∈ [−x, x] ⊂ (−√7/2,

√7/2).

As shown in Figure 4.4, when the end effector of the local robot is on the virtual sur-

face, it can have two possible configurations, elbow up and elbow down. These correspond

to two different coordinate charts on h−12 (0), also illustrated in Figure 4.4. The only way

for the robot to transition between these two configurations is for the end effector to pass

through the boundary of its workspace, displayed in Figure 4.3 and corresponding to

the configurations ql1 = ql2. Since Assumption 4.4.2 rules out this possibility, the human

always keeps the local robot in only one of the elbow configurations, so that xl completely

determines ql.

Proposition 4.4.3. Suppose Assumption 4.4.2 holds, and consider the motion of the

Page 86: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 78

robots on the contact manifolds (4.16). Let τ ql = 0 and

τ qr(q, q) = 1/(sin(qr1 − qr2))(

Kpµ2(xl − xr) +Kdµ(x

l − xr))

, (4.17)

where Kp, Kd, µ > 0 are design parameters. Then, if the local and remote robots are

in the same elbow configuration (up or down), for a given choice of Kp, Kd there exists

µ⋆ > 0 such that for all µ ≥ µ⋆ the equilibrium (xl−xr, xl− xr) = (0, 0) is exponentially

stable, thus solving problem P3a.

Proof. The proof uses standard high-gain and vanishing perturbation arguments [16,

Lemma 9.1]. Let x = xl − xr, then using (4.16) with τ ql = 0 and τ qr as in (4.17) we have

¨x = −[

Kpµ2x+Kdµ ˙x

]

− (ql)⊤Q(ql)ql + (qr)⊤Q(qr)qr.

Consider the coordinate transformation (x, ˙x) 7→ (y1, y2), with y1 = µx, y2 = ˙x, and let

y = [y1 y2]⊤. Then,

y = µAy +

0

g(y)

,

where

A =

0 1

−Kp −Kd

,

and g(y) is a smooth function such that g(0) = 0. The property g(0) = 0 follows

from these considerations. First, y = 0 is equivalent to (x, ˙x) = (0, 0). Next, due to

Assumption 4.4.2 the two robots are in the same elbow configuration, x = 0 implies

ql = qr, and ˙x = 0 implies ql = qr. Therefore, the second and third terms in tilde ¨x

equation vanish when (x, ˙x) = (0, 0). Consider the Lyapunov function candidate V =

y⊤Py, where P is the solution of a Lyapunov equation A⊤P + PA = −Q < 0. We have

V = −µy⊤Qy + 2y⊤P [0 1]⊤g(y).

Page 87: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 79

Using the fact that g(0) = 0 and the smoothness of g, we have ‖g(y)‖ ≤ γ‖y‖ for all y

in a neighborhood of y = 0, so that

V ≤ −(

µλmin(Q)− 2γλmax(P ))

‖y‖2

for all y near 0. For sufficiently large µ, V ≤ −C‖y‖2, C > 0, so that y = 0 is

exponentially stable, and therefore (x, ˙x) = (0, 0) is exponentially stable as well.

Remark 4.4.4. The fact that (x, ˙x) = (0, 0) is exponentially stable implies that if the

end effectors of the local and remote robots are close to each other when the contact

phase begins, they remain close to each other and synchronize. By Assumption 4.4.2, the

local end effector never hits the boundary of its workspace, and therefore neither does

the end effector of the remote robot. In other words, if the contact phase starts with the

two robots being close to synchrony, the remote robot never fully extends, or qr1− qr2 6= 0,

and so sin(qr1 − qr2) 6= 0, and feedback (4.17) is well-defined. Moreover, the elbow con-

figurations of the two robots remain the same. We point out that the requirement that

the robots be close to synchrony at the beginning of the contact phase is reasonable be-

cause during the free motion phase the robots are controlled by a synchronizing feedback.

Finally, in our simulation results, we will replace the term 1/ sin(qr1 − qr2) in (4.17) by

sgn(qr1 − qr2), which has the advantage of not having any singularity and being simpler.

Unfortunately, we were not able to prove the proposition above with this simpler feed-

back. Nevertheless, simulations results are identical when using 1/ sin(qr1 − qr2) in (4.17)

away from the singularity.

Proposition 4.4.5. Suppose that Fh 6= 0, and ‖Fh‖ ≤ F , so that the local robot is not

in perfect contact with the virtual surface, and Let τ ql and τ qr be as in Proposition 4.4.3.

Then, the end effector synchronization error x = xl − xr is bounded with a bound

proportional to F , so that problem P3b is solved.

Proof. If the local robot is not in contact with the virtual surface, its motion is governed

Page 88: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 80

by the first equation in (4.15), and it depends on Fh. The remote robot, on the other

hand, is unaffected by Fh, and its dynamics are described by the second equation in (4.16).

The error dynamics are

¨x = −[Kpµ2x+Kdµ ˙x]− (ql)⊤Q(ql)ql + (qr)⊤Q(qr)qr + P (ql)Fh. (4.18)

Using the coordinate transformation (x, ˙x) 7→ (y1, y2) in the proof of Proposition 4.4.3

we get

y = µAy +

0

g(y)

+

0

P (y)Fh

,

where P (y) is bounded, ‖P (y)‖ ≤ C. Using the same Lyapunov function as in the proof

of Proposition 4.4.3 we get

V ≤ −(

µλmin(Q)− 2γλmax(P ))

‖y‖2 + 2Cλmax(P )F‖y‖,

from which it follows [16, Lemma 9.2] that the solutions y(t) are uniformly ultimately

bounded with a bound that is proportional to F .

4.4.4 P4: Human force estimation on local robot

In this section we estimate the force that the human imparts on the virtual surface in the

direction orthogonal to it. We do so by using the evolution of the error of the local robot

from the contact manifold, el = F (ql). Assuming that the human force is orthogonal to

S, so that Fh = [0 Fa]⊤, we want to estimate Fa, assuming that it is constant or slowly

varying. To do so, we will use the error (el, el) in the stabilization of the contact manifold

ΓlCM , where el = F (ql).

Proposition 4.4.6. Consider the local manipulator in (4.1), with τl given in (4.10)-

Page 89: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 81

(4.11), where Fh is replaced with an estimate Fh given by

ξ =2γa(ql)

KI[F (ql) dFql q

l]P

0

1

, (4.19)

Fh =

0

1

KIξ, (4.20)

where γ,KI > 0 are design parameters, a(ql) = ∇F⊤(ql)D−1(ql)∇qlF (ql), and P is a

symmetric positive definite matrix solving Lyapunov’s equation for the matrix

A =

0 1

−kl1 −kl2

.

Then, assuming that Fh = [0 Fa]⊤, where Fa is constant, the following properties hold

(i) Fh(t) → Fh,

(ii) P2b.1 is solved in the presence of unknown Fh, i.e., (el, el) → (0, 0) and the VHC

h2(ql) = 0 is enforced dynamically,

(iii) P3a is solved in the presence of unknown Fh, i.e., the local and remote end effectors

synchronize.

Proof. Letting el = F (ql) and El = [el el]⊤, and using the feedback (4.10)-(4.11) with F

given in the proposition, we have

El = AEl + [0 1]⊤a(ql) (Fa −KIξ)

ξ =2γa(ql)

KIE⊤l P

0

1

,

Page 90: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 82

where KIξ is the estimate of Fa. Consider the following Lyapunov function candidate

W = E⊤l PEl +

1

2γ(Fa −KIξ)

2 .

The time derivative of W reads as

W = −‖El‖2 + 2E⊤l P [0 1]⊤a(ql) (Fa −KIξ)−

KI

γ(Fa −KIξ)

2γa(ql)

KIE⊤l P [0 1]⊤

= −‖El‖2 .

From the LaSalle invariance principle, it follows that for any initial condition, El → 0,

and so (el, el) → (0, 0), proving part (ii). Next, we show that el → 0. Since el =

−kl1el − kl2el + a(ql)(Fa − KIξ), if (el, el, el) → (0, 0) then KIξ → Fa, and Fh → Fh

because a(ql) 6= 0. To show tha el → 0 we will use Barbalat’s lemma [14, Lemma 3.2.6].

We need to show that limt→∞∫ t

0el(τ)dτ < ∞ and el(t) is uniformly continuous. The

first condition is satisfied as a result of el(t) → 0. To show el(t) is uniformly continuous

it is sufficient to show that...e l(t) is bounded. We have

...e l = −kl1el − kl2el + a′(ql)ql(Fa − Fa)− 2γa2(ql)[el el]P

0

1

.

Now, a(ql) is a bounded function and ql is bounded because of Assumption 4.4.2. The re-

maining terms in the expression above are bounded, so...e l bounded and el(t) is uniformly

continuous, concluding the proof of part (i). For part (iii), if we replace Fh by Fh in the

expression (4.10) for τl, equation (4.18) describing the end effectors synchronization error

becomes

¨x = −[Kpµ2x+Kdµ ˙x]− (ql)⊤Q(ql)ql + (qr)⊤Q(qr)qr + P (ql)(Fh − Fh).

Since (Fh−Fh) is bounded, Proposition 4.4.5 implies that x is bounded with a bound that

Page 91: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 83

depends linearly on the upper bound of (Fh− Fh). Moreover, the Lyapunov argument in

the proof of Proposition 4.4.5 can be used to show that since (Fh − Fh(t)) → 0, x tends

to zero as well, proving part (iii).

4.4.5 P5: Force control on remote robot

The final part of the teleoperation problem involves causing the end effector of the remote

robot to impart a desired constant force on the manipulation surface, normal to it. The

force in question is provided by the estimation algorithm presented in Proposition 4.4.6.

As we did in the previous section, we assume that the human applies a constant force

normal to the surface, Fh = [0 Fa]⊤.

Proposition 4.4.7. Consider the contact phase models in (4.9) and the feedbacks τl, τr

in (4.10)-(4.11), wirh τr modified as follows

τr(qr, qr, Fa) = C(qr, qr)qr + A†(qr)τ⋔r +N(qr)τ qr − λdes(Fa)∇F (qr), (4.21)

where

λdes(Fa) =

0 if (er, er) 6= (0, 0)

Fa if (er, er) = (0, 0).

Then, this feedback solves P5, and on the contact manifold, the end effector of the remote

robot imparts a force Fh = [0 Fa]⊤ on S.

Proof. Recall from (4.3) that the torque due to the contact force exerted by the ma-

nipulation surface on the end effector of the robot is λ∇F (qr), and since ∇F (qr) =

J⊤(qr)[0 −1]⊤, the contact force is [0 −λ]⊤. By Newton’s third law, the contact force is

equal in magnitude and opposite in direction to the force applied by the end effector on the

surface. Therefore, we need to show that when the remote robot is on the contact man-

ifold, τr in (4.21) gives rise to λ = Fa. First, we argue that the contact manifold ΓrCM is

Page 92: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 84

invariant for the closed-loop system with feedback τr in (4.21). Indeed, τr in (4.21) differs

from τr in (4.10) by the addition of the term −λdes(Fa)∇F (qr) = λdes(Fa)J⊤(qr)[0 1]⊤.

This implies that the end effector of the robot is subject to an extra force with magni-

tude Fa pointing towards the surface. This extra force cannot cause the end effector to

leave S, and hence ΓrCM is invariant for the closed-loop system. The invariance property

implies that, when er = er = 0, it must be that er = 0. When er = er = 0 we have

er = a(qr) (λ− λdes(Fa)) = a(qr) (λ− Fa) ,

which is zero if and only if λ = Fa.

4.4.6 Summary of controller solving the teleoperation problem

The feedbacks designed in the previous sections are summarized below.

Free motion phase.

τl = 0

τr(q, q, Fh) = C(qr, qr)qr +D(qr)[D−1(ql)(J⊤(ql)Fh − C(ql, ql)ql) + k1e + k2e],

Contact phase.

τl(ql, ql, Fh) = −J⊤(ql)Fh + C(ql, ql)ql + A†(ql)τ⋔l (q

l, ql), (4.22)

τr(q, q, Fa) = C(qr, qr)qr + A†(qr)τ⋔r (qr, qr)

+N(qr)τ ‖r (q, q)− λdes(Fa)∇F (qr), (4.23)

Fh = [0 Fa]⊤, Fa = KIξ, (4.24)

ξ =2γa(ql)

KI[el el]P [0 1]⊤, (4.25)

Page 93: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 85

where τ⋔l , τ⋔r are found in (4.11), τ qr is found in (4.17), and

a(ql) = ∇F⊤(ql)D−1(ql)∇qlF (ql).

4.5 Simulation results

In this section we illustrate the use of the control laws developed in the previous sec-

tion to solve the bilateral teleoperation problem for the two-link planar manipulators

in Figure 4.1. The initial conditions were chosen so that the two robots are synchro-

nized and the remote end effector is not on the surface, ql(0) = qr(0) = [0.1 0.3]⊤ and

ql(0) = qr(0) = [0 0]⊤. For this example the force applied by the human on the local

end effector is assumed to be constant and equal to 1N in the positive y-direction, i.e.

Fh = [0 1]⊤.

The control laws used before the remote end effector hits the surface, i.e. impact, are

τl = 0 and τr as in (4.8) with J⊤(ql)Fh not used and k1 = 25, k2 = 10. After the impact

the control laws used are given by (4.22) to (4.25) with k1 = 25, k2 = 10, Kp = Kd =

4, µ = 1, KI = 100, γ = 10, 000 and initial condition for the estimator state is ξ(0) = 0.

First we present the results when there is no force control on the remote, i.e. λdes = 0

and then we will show that the results are unaffected by the introduction of force control.

The application of a force by the human on the local end effector drives the end effector

towards the horizontal line y = 1.5 as it can be seen from green curve in Figure 4.5. The

two manipulators initially are synchronized and the control input τr is used to keep this

synchronization true for t ≥ 0 before the remote impacts the surface. Since the human is

applying a constant force the synchronization error will remain bounded and as a result

the remote manipulator follows the motion of the local. As a result the remote end

effector hits the surface at which point the impact is modeled simply as a re-initialization

step for the configuration velocities according to equation (4.7). On the plots this point

Page 94: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 86

is indicated as a black circle.

0 5 10 15 20 25−0.2

0

0.2

0.4

0.6

0.8

1

1.2

time [s]

e l[m

]

Before ImpactAfter ImpactImpact

0 5 10 15 20 25−0.2

0

0.2

0.4

0.6

0.8

1

1.2

time [s]

e r[m

]

Before ImpactAfter ImpactImpact

Figure 4.5: Motion of the local (left) and remote (right) end effector relative to y = 1.5

After the impact both control inputs force the end effectors to remain at y = 1.5.

For the remote end effector this means that it remains in contact with the surface as it

can be seen from Figure 4.5. On the other hand, the local end effector takes some time

before it remains at y = 1.5, which gives the human the feeling of the presence of the

surface from the remote robot. Also, the dynamics from the end effector of the local

robot in the y-direction are used to estimate the force applied by the human. The result

for the estimate of the force is shown in Figure 4.6. Knowing Fh allows for the local end

effector to be constrained in the y-direction. The force estimate, Fh, initially could vary

in direction and as a result it cannot be used right after the impact for the purpose of

force control. That is the value of λdes has to be greater or equal to zero and as a result

we can use the estimate only after it has settled within the actual value.

Finally, the objective of the two manipulators to synchronize is achieved by the remote

robot’s control input as shown in Figure 4.7. If the human were to move the local end

effector along the horizontal line y = 1.5 then the remote would follow the motion due

our control design.

Page 95: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 4. A Bilateral Teleoperation Problem 87

0 5 10 15 20 25−5

0

5

10

15

time [s]

Fh[N

]Before Impact

After Impact

Impact

Figure 4.6: Estimate of force applied by human on the local end effector

0 5 10 15 20 25−0.01

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

time [s]

ql 1−qr 1[rad]

Before ImpactAfter ImpactImpact

0 5 10 15 20 25−0.05

−0.04

−0.03

−0.02

−0.01

0

0.01

0.02

0.03

time [s]

ql 2−qr 2[rad]

Before ImpactAfter ImpactImpact

Figure 4.7: Synchronization error between the local and remote first link (left) and secondlink (right)

Page 96: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 5

Conclusions

The notion of virtual holonomic constraint is a control paradigm that can be applied

to various motion control problems. In some cases, drawbacks of traditional reference

tracking controllers can be overcome by using VHCs. An example of this is the work on

bipedal locomotion by Grizzle and collaborators.

In Chapter 2 we have reviewed recent work on VHCs, including a methodology to sta-

bilize a desired oscillation for Euler-Lagrange systems with degree of underactuation one

while simultaneously enforcing a VHC. A natural question to ask is how to synchronize

a collection of Euler-Lagrange systems while simultaneously stabilizing an oscillation.

This is a harder problem than just making the individual systems oscillate, because of

the added specification of synchronization. Such problem was investigated in Chapter 3

in the special case of N underactuated cart-pendulums. We showed how dynamic VHCs

can be used to fully synchronize the N cart-pendulums while simultaneously stabilizing

a desired oscillation of the pendulums about the upright position. The solution utilizes

a master-slave configuration, which is desirable in terms of control design because the

design for the general N case is no more difficult than the N = 2 case. Also, the solution

can be used to solve the problem of swinging up N underactuated cart-pendulums.

Another application of synchronization is the bilateral teleoperation problem. In

88

Page 97: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Chapter 5. Conclusions 89

Chapter 4, we proposed an approach to teleoperation based on VHCs. Our results

concern a specific example, two identical fully actuated planar manipulators, but they

lay the foundations for a research program in this area. The main feature of the proposed

approach is its ability to provide reflect the force imparted by the human on the remote

robot without the need for force sensors.

The results in this thesis leave open a number of questions that could be the subject

of future work. In the N cart-pendulum example, our synchronization result relies on a

master-slave configuration where pendulum i+1 synchronizes itself to pendulum i. Mod-

elling the flow of information between pendulums with a graph, the method of Chapter 3

relies on a chain graph. An open problem is to determine whether more general graph

topologies can be used to solve the synchronization of oscillation problem.

In Chapter 4, we made some simplifying assumptions in order to solve the teleoper-

ation problem using VHCs. It would be interesting to investigate the removal of these

assumptions. In particular, the proposed solution requires the perfect knowledge of the

location of the manipulation surface, which might not be available in practice. As an

alternative, one might consider the use of proximity sensors mounted on the end-effector

of the remote manipulator to obtain information about the location of S. The presence

of such sensors would give rise to the problem of stabilizing a VHC by output feedback,

which to date has not been investigated. Another interesting problem is the adaptation

of our results to the case when the impact with the manipulation surface is elastic, i.e.,

when its coefficient of restitution is non-zero. In this case, the end-effector of the remote

robot “bounces off” the manipulation surface at impact, which introduces a switching be-

tween the free motion and contact phase dynamics. The investigation of the teleoperation

problem for the resulting hybrid system is an interesting open problem.

Page 98: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Bibliography

[1] R.J. Anderson and M.W. Spong. Bilateral control of teleoperators with time delay.

IEEE Transactions on Automatic Control, 34(5):494–501, 1989.

[2] Paul Appell. Exemple de mouvement d’un point assujetti a une liaison exprimee

par une relation non-lineaire entre les composantes de la vitesse. Rend. Circ. Mat.

Palermo, 32:48–50, 1911.

[3] Henri Beghin. Etude theorique des compas gyrostatiques Anschutz et Sperry. PhD

thesis, Faculte des sciences de Paris, 1922.

[4] B. Brogliato, S.I. Niculescu, and P. Orhant. On the control of finite-dimensional

mechanical systems with unilateral constraints. IEEE Transaction on Automatic

Control, 42(2):200–215, 1997.

[5] C. Chevallereau, J.W. Grizzle, and C.L. Shih. Asymptotically stable walking of a

five-link underactuated 3D bipedal robot. IEEE Transactions on Robotics, 25(1):37–

50, 2008.

[6] L. Consolini and M. Maggiore. On the swing-up of the pendubot using virtual

holonomic constrains. In IFAC World Congress, Milano, Italy, 2011.

[7] L. Consolini and M. Maggiore. Control of a bicycle using virtual holonomic con-

straints. 2012. Accepted for publication in Automatica.

90

Page 99: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Bibliography 91

[8] W.R. Ferrell. Delayed force feedback. Human Factors: The Journal of the Human

Factors and Ergonomics Society, 8(5):449–455, 1966.

[9] L. Freidovich, A. Robertsson, A. Shiriaev, and R. Johansson. Periodic motions of the

pendubot via virtual holonomic constraints: Theory and experiments. Automatica,

44:785–791, 2008.

[10] J.W. Grizzle, G. Abba, and F. Plestan. Asymptotically stable walking for biped

robots: Analysis via systems with impulse effects. IEEE Transactions on Automatic

Control, 46(1):51–64, 2001.

[11] J.W. Grizzle, C. H. Moog, and C. Chevallereau. Nonlinear control of mechanical sys-

tems with an unactuated cyclic variable. IEEE Transactions on Automatic Control,

50(5):559–576, 2005.

[12] B. Hannaford and J.H. Ryu. Time-domain passivity control of haptic interfaces.

IEEE Transactions on Robotics and Automation, 18(1):1–10, 2002.

[13] P.F. Hokayem and M.W. Spong. Bilateral teleoperation: An historical survey. Au-

tomatica, 42:2035–2057, 2006.

[14] P.A. Ioannou and J. Sun. Robust Adaptive Control. PTR Prentice-Hall, Upper

Saddle River, NJ, 1996.

[15] D. Jankuloski, M. Maggiore, and L. Consolini. Further results on virtual holonomic

constraints. In 4th IFAC Workshop on Lagrangian and Hamiltonian Methods for

Non Linear Control, Bertinoro, Italy, 2012.

[16] H. K. Khalil. Nonlinear Systems. Prentice Hall, Upper Saddle River, NJ, third

edition, 2002.

[17] A. Lobontiu and D. Loisance. Robotic surgery and tele-surgergy: Basic principles

and description of a novel concept. Journal of Surgery, 3(3):208–214, 2007.

Page 100: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Bibliography 92

[18] M. Maggiore and L. Consolini. Virtual holonomic constraints for Euler-Lagrange

systems. In IEEE Transactions on Automatic Control, 2012.

[19] R.M. Murray, Z. Li, and S.S. Sastry. A mathematical introduction to robotic manip-

ulation. CRC, 1994.

[20] E. Nuno, L. Basanez, and R. Ortega. Passivity-based control for bilateral teleoper-

ation: A tutorial. Automatica, 47:485–495, 2011.

[21] F. Plestan, J.W. Grizzle, E.R. Westervelt, and G. Abba. Stable walking of a 7-DOF

biped robot. IEEE Transactions on Robotics and Automation, 19(4):653–668, 2003.

[22] J.H. Ryu, C. Preusche, B. Hannaford, and G. Hirzinger. Time-domain passivity

control with reference energy following. IEEE Transactions on Control Systems

Technology, 13(5):737–742, 2005.

[23] J.A. Sanders and F. Verhulst. Averaging methods in nonlinear dynamical systems.

Applied mathematical sciences. Springer-Verlag, 1985.

[24] P. Seibert and J. S. Florio. On the reduction to a subspace of stability properties of

systems in metric spaces. Annali di Matematica pura ed applicata, CLXIX:291–320,

1995.

[25] A. Shiriaev, J.W. Perram, and C. Canudas-de-Wit. Constructive tool for orbital sta-

bilization of underactuated nonlinear systems: Virtual constraints approach. IEEE

Transactions on Automatic Control., 50(8):1164–1176, August 2005.

[26] A. Shiriaev, A. Robertsson, J. Perram, and A. Sandberg. Periodic motion plan-

ning for virtually constrained Euler-Lagrange systems. Systems & Control Letters,

55:900–907, 2006.

Page 101: Virtual Holonomic Constraints and the …...Abstract Virtual Holonomic Constraints and the Synchronization of Euler-Lagrange Control Systems Dame Jankuloski Master of Applied Science

Bibliography 93

[27] A.S. Shiriaev, L.B. Freidovich, and S.V. Gusev. Transverse linearization for con-

trolled mechanical systems with several passive degrees of freedom. IEEE Transac-

tions on Automatic Control, 55(4):893–906, 2010.

[28] M.W. Spong, S. Hutchinson, and M. Vidyasagar. Robot modeling and control. John

Wiley & Sons New York, NY, USA:, 2006.

[29] E.R. Westervelt, J.W. Grizzle, C. Chevallereau, J.H. Choi, and B. Morris. Feedback

Control of Dynamic Bipedal Robot Locomotion. Taylor & Francis, CRC Press, 2007.

[30] E.R. Westervelt, J.W. Grizzle, and D.E. Koditschek. Hybrid zero dynamics of planar

biped robots. IEEE Transactions on Automatic Control, 48(1):42–56, 2003.