impedance control of systems with joint flexibility
TRANSCRIPT
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
1/67
IMPEDANCE CONTROL OF SYSTEMS WITH JOINT FLEXIBILITY
A dissertation submitted to the University of Manchester for the degree of Master of
Science in the Faculty of Engineering and Physical Sciences
2014
Marat Imanbayev
School of Electrical and Electronic Engineering
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
2/67
List of Contents
List of Tables 4
List of Figures 5
List of Symbols 7
1 Introduction 13
1.1 Motivation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2 Aims and objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 Literature review 17
2.1 Torque control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1.1 Series elastic actuator . . . . . . . . . . . . . . . . . . . . . . 182.2 Impedance control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.1 Impedance control architectures . . . . . . . . . . . . . . . . . 21
2.2.2 Passivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3 Series elastic joint dynamics 23
3.1 SEA system description . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 SEA system modeling . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.1 State space representation . . . . . . . . . . . . . . . . . . . . 27
3.3 Open loop simulations . . . . . . . . . . . . . . . . . . . . . . . . . . 283.4 Bandwidth limitations of the torque controlled by PI controller. . . . 29
3.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4 Torque controller design 32
4.1 PI controller design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.2 LQR controller design . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
3/67
4.3 Comparison between PI and LQR controllers. . . . . . . . . . . . . . 38
4.3.1 Step response characteristics . . . . . . . . . . . . . . . . . . . 39
4.3.2 Stability margins . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.3.3 Torque ripples attenuation . . . . . . . . . . . . . . . . . . . . 40
4.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5 Impedance control 42
5.1 Approach and implementation . . . . . . . . . . . . . . . . . . . . . . 42
5.2 Control problem formulation . . . . . . . . . . . . . . . . . . . . . . . 43
5.3 Stability regions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.3.1 Stability regions with inner PI controller . . . . . . . . . . . . 45
5.3.2 Stability regions with inner LQR controller . . . . . . . . . . . 45
5.4 Passivity analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.4.1 Coupled stability . . . . . . . . . . . . . . . . . . . . . . . . . 485.5 Rejection of the torque ripple in the impedance . . . . . . . . . . . . 51
5.6 Impedance tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.6.1 Impedance tracking with inner PI controller . . . . . . . . . . 53
5.6.2 Impedance tracking with inner LQR controller . . . . . . . . . 55
5.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6 Conclusions and future work 58
6.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
References 60
A Open loop transfer functions and simulations 62
A.1 Open loop transfer functions . . . . . . . . . . . . . . . . . . . . . . . 62
A.2 Open loop simulations . . . . . . . . . . . . . . . . . . . . . . . . . . 63
B Miscellaneous MATLAB codes 64
B.1 Open loop modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . 64B.2 LQR design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
B.3 Outer loop stability regions . . . . . . . . . . . . . . . . . . . . . . . 66
Word count: 12553
3
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
4/67
List of Tables
2.1 Comparison of various impedance control schemes . . . . . . . . . . . 22
3.1 Electrical and mechanical parameters for the SEA model . . . . . . . 26
4.1 PI controllers with corresponding closed loop characteristics . . . . . 33
4.2 LQR controllers with corresponding closed loop characteristics . . . . 37
5.1 Passivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
5/67
List of Figures
1.1 Block diagram of an impedance loop with an inner torque loop . . . . 14
2.1 Block diagram of Series elastic actuator. . . . . . . . . . . . . . . . . 18
3.1 SEA experimental setup. 1-motor pulley, 2-harmonic drive, 3-motor
position sensor, 4-DC motor, 5-cable drive, 6-link position sensor, 7-output pulley, 8-rigid strain gauge torque sensor, 9-output link . . . . 23
3.2 Schematic structure of SEA . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Block diagram of the SEA model . . . . . . . . . . . . . . . . . . . . 27
3.4 Open loop response of joint torque Ts . . . . . . . . . . . . . . . . . . 29
3.5 Root locus of C(s)G(s) around the origin computed for the model
with gravity (right) and without gravity (left). The open loop poles
and zeros are red, whereas the controller pole and zero are black . . . 30
4.1 Inner torque loop with PI controller . . . . . . . . . . . . . . . . . . . 334.2 Closed loop torque response (left) and link position response (right) to
step change in torque reference . . . . . . . . . . . . . . . . . . . . . 34
4.3 Torque ripple frequency response (0.013 N m). . . . . . . . . . . . . . 35
4.4 Inner torque loop with LQR controller . . . . . . . . . . . . . . . . . 36
4.5 Closed loop torque responses (left) and link position response (right)
to step change in torque reference . . . . . . . . . . . . . . . . . . . . 38
4.6 Torque ripple frequency response (0.013N m) . . . . . . . . . . . . . 38
4.7 Step response of torque controlled by PI and LQR controllers. . . . . 39
4.8 Torque ripple attenuation with PI and LQR controllers . . . . . . . . 40
4.9 Torque ripples effect on torque response: PI case (left) and LQR case
(right) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.1 Block diagram of the system with inner torque loop (blue) and outer
impedance loop (green). . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2 Cascaded control system block diagram for ICT . . . . . . . . . . . . 44
5
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
6/67
5.3 Stability regions varying the gain of PI controller (keepingz= 3) . 45
5.4 Stability regions varyingQmatrix of LQR controller . . . . . . . . . 46
5.5 Passivity regions (log scale): PI controllers . . . . . . . . . . . . . . . 48
5.6 Passivity regions (log scale): LQR controllers. . . . . . . . . . . . . . 48
5.7 The admittanceYcoupled to a spring . . . . . . . . . . . . . . . . . 495.8 Root locus ofKeY(s)/s. Open loop zeros are black . . . . . . . . . . 49
5.9 The admittanceYcoupled to a mass . . . . . . . . . . . . . . . . . . 50
5.10 Root locus ofJesY(s). Open loop zeros are black . . . . . . . . . . . 50
5.11 Bode diagram (magnitude) of the transfer functionTs
Trip(s). Inner PI
controllers have fixed zero at z= 3 . . . . . . . . . . . . . . . . . . 51
5.12 Bode diagram (magnitude) of the transfer functionTs
Trip(s) with LQR
controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.13 Bode diagram of the link impedance (PI case). Target impedance
(K = 40, D = 5) (red) and real impedance computed for k = 0.03
(blue),k = 1 (black), k = 2.7 (green) . . . . . . . . . . . . . . . . . . 54
5.14 Bode diagram of the link impedance (PI case). Target impedance
(K= 500, D = 30) (red) and real impedance computed for k = 0.03
(blue),k = 1 (black), k = 2.7 (green) . . . . . . . . . . . . . . . . . . 54
5.15 Bode diagram of the link impedance (LQR case). Target impedance
(K= 40, D= 5) is red . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.16 Bode diagram of the link impedance (LQR case). Target impedance(K= 500, D= 30) is red. . . . . . . . . . . . . . . . . . . . . . . . . 56
A.1 Open loop responses of SEA model. Small graphs inside each figure
show the responses for the first 0.6 s. . . . . . . . . . . . . . . . . . . 63
6
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
7/67
List of Symbols
ql Link angular velocity
qm Motor angular velocity
Bl Link viscous friction constant
Bm Motor viscous friction constant
C(s) Transfer function of PI controller
D Desired damping
Dh Passive spring damping
G(s) Transfer function between input voltage and joint torque
H Link centre of mass
Je Passive environmental mass inertia
Jl Link inertia
Jm Rotor+harmonic drive inertia
K Desired stiffness
k Gain of PI controller in zero-pole-gain form
Kb Motor constant
Ke Passive environmental stiffness
Kg Stiffness due to gravity
Kh Passive spring stiffness
7
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
8/67
Ki LQR controller state feedback gain
ki Integral gain of PI controller
kp Proportional gain of PI controller
Kt Torque constant
L Motor inductance
M Link mass
N Gear box ratio
Q State cost matrix in LQR control
ql Link angular position
qm Motor angular position
R Motor resistance
Rq Control cost matrix in LQR
Tc Compensation torque
Td Torque produced by spring and damping action
Tg Gravity torque
Tl Load disturbance torque
Tm Torque generated by the motor
Ts Measured joint torque
Tfric Meshing friction torque
Tref Reference torque
Trip Torque ripple
z Zero of PI controller in zero-pole-gain form
8
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
9/67
Abstract
The aim of this dissertation is to investigate the performance of an impedance con-
trol strategy evaluated on a series elastic actuator. Impedance control improves the
interaction ability of the robotic systems due to controlling the interaction dynamics
rather than explicitly force or position. Impedance parameters, such as stiffness and
damping, vary within specified range of values.
In this thesis, the impedance control is implemented based on an inner torque
loop with two different torque controllers, namely PI and LQR. The effects of varying
controllers parameters on the closed loop bandwidth and disturbance attenuation
have been examined. Moreover, suitable control structure for LQR controller has
been proposed.
Having closed an outer impedance loop, the performance of the impedance control
in terms of disturbance attenuation and impedance emulation has been discussed.
Stability and passivity regions for varying values of stiffness and damping within a
specified range and for different inner torque controllers have been analyzed. As aresult, it has been determined that there exists a trade-off between maximizing the
regions of stability/passivity, and maximizing the frequency regions where the desired
impedance can be emulated.
The main contribution of this thesis is a thorough comparison between the im-
plementations of the impedance control strategy on the link side for two controllers,
namely PI and LQR.
9
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
10/67
Declaration
No portion of the work referred to in the dissertation has been submitted in support
of an application for another degree or qualification of this or any other university or
other institute of learning.
10
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
11/67
Intellectual property statement
i. The author of this dissertation (including any appendices and/or schedules to
this dissertation) owns certain copyright or related rights in it (the Copyright)
and s/he has given The University of Manchester certain rights to use such
Copyright, including for administrative purposes.
ii. Copies of this dissertation, either in full or in extracts and whether in hard orelectronic copy, may be made only in accordance with the Copyright, Designs
and Patents Act 1988 (as amended) and regulations issued under it or, where
appropriate, in accordance with licensing agreements which the University has
entered into. This page must form part of any such copies made.
iii. The ownership of certain Copyright, patents, designs, trade marks and other
intellectual property (the Intellectual Property) and any reproductions of
copyright works in the dissertation, for example graphs and tables (Repro-
ductions), which may be described in this dissertation, may not be owned bythe author and may be owned by third parties. Such Intellectual Property and
Reproductions cannot and must not be made available for use without the prior
written permission of the owner(s) of the relevant Intellectual Property and/or
Reproductions.
iv. Further information on the conditions under which disclosure, publication and
commercialization of this dissertation, the Copyright and any Intellectual Prop-
erty and/or Reproductions described in it may take place is available in the Uni-
versity IP Policy (see http://documents.manchester.ac.uk/display.aspx?
DocID=487), in any relevant Dissertation restriction declarations deposited in
the University Library, The University Librarys regulations (see http://www.
manchester.ac.uk/library/aboutus/regulations) and in The Universitys
Guidance for the Presentation of Dissertations.
11
http://documents.manchester.ac.uk/display.aspx?DocID=487http://documents.manchester.ac.uk/display.aspx?DocID=487http://www.manchester.ac.uk/library/aboutus/regulationshttp://www.manchester.ac.uk/library/aboutus/regulationshttp://www.manchester.ac.uk/library/aboutus/regulationshttp://www.manchester.ac.uk/library/aboutus/regulationshttp://documents.manchester.ac.uk/display.aspx?DocID=487http://documents.manchester.ac.uk/display.aspx?DocID=487 -
7/21/2019 Impedance Control of Systems With Joint Flexibility
12/67
Acknowledgements
I would like to express my gratitude to my supervisor Dr Martin Brown for the useful
comments, remarks and engagement through the learning process of this master thesis.
Furthermore, I would like to thank Dr Gustavo Medrano-Cerda for introducing me
to the topic as well for the support on the way.
12
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
13/67
Chapter 1
Introduction
This dissertation focuses on the control problems that arise in the systems interact-
ing with the environment. The control method that improves the interaction abil-ity of robotic systems that operate in unknown or unstructured environments is an
impedance control.
1.1 Motivation
Impedance control is an approach to control the dynamic interaction between a ma-
nipulator and its environment. An example of a robotic system that can gain benefit
from impedance control is a bipedal robot performing a locomotion task in an un-
known terrain. The research in this area has been conducted in a large amount
recently by the robotic community because biped robots can traverse rough terrains
more efficiently compared to wheeled robots. Moreover, there are considerably more
terrains suitable for humanoids rather than for wheeled vehicles, which makes them
suitable for many dangerous and hazardous tasks where human interaction is needed.
Search and rescue operations in unsafe environments (chemical gases, radiation) can
serve as examples. Furthermore, biped robots have been considered to act as assis-
tants to disabled or elderly people. However, the reason the biped robots are not that
common as the wheeled counterparts is the difficulty to control and design them.This thesis will investigate the performance of an impedance control strategy
evaluated on a series elastic actuator, which is vastly used in a robot locomotion
tasks. The impedance control problem is formulated as an impedance outer loop
with a specified range of impedance parameters, defined by stiffness and damping,
and an inner loop which has to be designed to meet the inner closed loop stability
requirements and to assess its effect on an entire closed loop system.
13
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
14/67
Impedance control does not explicitly control force or position. Instead, it controls
the relationship between the force on one hand and the velocity on the other. This
relation is called an impedance. It requires a velocity as an input and a force as an
output. The inverse of the impedance is called admittance, and it is a relation from
the force to the velocity. In non-linear systems impedance and admittance may notbe reciprocals of each other, this condition is only guaranteed in a linear case.
In this project, the control architecture where an impedance controller is closed
around an inner torque loop has been used. Figure1.1shows this control architecture,
whereqrefandqlare the link desired (reference) and actual position, respectively. The
output of the impedance controller is fed as a reference torqueTrefto the inner torque
loop. Torque and position sensors feed back the joint torque (Ts) and link position
(ql) measurements. The output of the torque controller (u) is the command sent to
the actuator.
Torque
controller
Actuator
+
Link dynamics
lqrefq refT
sT
Torque loop
Impedance
Controller
Impedance loop
u
Figure 1.1: Block diagram of an impedance loop with an inner torque loop
First, consider the torque loop alone. The conventional way of controlling the
inner loop is to use a simple PI controller. Derivative term is avoided since it is
difficult to implement if the torque sensors have excessive noises. Whenever torque
is controlled by a conventional PI controller, limitations on the torque bandwidth
arise which depend on the dynamics of the load. The cause of this limitation is
the presence of a low frequency zero very close to the origin when the system is
unconstrained to move (or complex zeros very close to the imaginary axis when it
is constrained). In this situation, increasing the controller gain will not lead to animprovement in the tracking performance and may lead to instability. Thus, a more
sophisticated controller must be used to handle this limitation better. The controller
that uses more information about the system model is a state feedback controller,
namely LQR. Acting not only on the tracking error, but also on the states of a
dynamic system, it gives the developer more degrees of freedom to tune and allows
him to bypass the inherent torque bandwidth limitation, thus to improve the overall
14
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
15/67
system performance.
There are few problems that arise when an outer impedance loop is closed around
the inner torque loop. Dynamics of the entire controlled system do not explicitly
depend on either impedance parameters or parameters of the inner controller. On
the contrary, there are mutual influences existing between inner and outer loop thatcannot be ignored. Neglecting these influences can lead to results and conclusions that
are incorrect and do not represent the reality. For example, increasing the bandwidth
of the inner loop may lead to a reduction in the range of impedance parameters
where the overall closed loop system will remain stable (stability regions). On the
other hand, increase in bandwidth may enlarge the frequency range where the real
impedance tracks the target one.
Another issue that should be addressed is the stability of the system when there
is a contact with the passive environment. The term passive environment defines
the type of environment that cannot inject energy during interaction. Most of the
standard environments are considered passive; thus, the interaction with passive envi-
ronments will be considered in this thesis. Indeed, a system that is stable can become
unstable whenever interacting with the environment. This property of stability is
called passivity and it is a more strict condition than just stability alone.
The work of this thesis will deal with the design of the inner torque controllers
that can deal with the above-mentioned issues. Moreover, the analysis of the stability
and passivity properties for the entire impedance control system will be performed.
1.2 Aims and objectives
The main goal of this thesis is to investigate the influence of the inner torque controller
on the impedance loop for different outer loop parameters. The key objectives that
should be addressed during the work are:
1. Derivation and investigation of an open loop dynamic model of a single link
series elastic actuator.
2. Design of a suitable torque controller to control the inner torque loop.
3. Analysis of the entire closed loop system after closing outer impedance loop.
4. Investigation of a stability of a controlled system coupled to passive environ-
ment.
15
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
16/67
1.3 Contributions
The main contributions of this thesis are as follows:
SEA: model and simulation. The electromechanical model for the single
elastic joint has been formulated and simulated. Nonlinear effect of torque
ripples, produced by the harmonic drive, has been modeled to represent more
realistic case. Its impact on both torque and impedance loop performance has
been investigated.
Torque control: PI and LQR. Two approaches have been proposed to control
an inner torque loop: using a simple PI controller to control a voltage-to-torque
dynamic and LQR controller to control a state space system with torque as
an output. Inherent limitations which can occur in torque control loop has
been analyzed. The effect of PI controller gain and zero on the closed loop
bandwidth and disturbance attenuation has been examined. Furthermore, for
LQR controller, suitable control structure has been formulated. A methodology
to select state cost weighting matrix has been suggested. It has been shown
that LQR controller achieves a superior performance as oppose to PI controller
to regulate inner torque loop because LQR has more than just two degrees of
freedom to tune (gain and zero in a PI controller).
Impedance control: varying stiffness and damping. Impedance control
strategy on the link side has been implemented to control the impedance taking
into account the interaction with the environment that can occur during opera-
tion. Performance of the impedance control in terms of disturbance attenuation
and impedance emulation has been discussed. Stability and passivity regions for
varying values of stiffness and damping within specified range and for different
inner torque controllers have been analyzed.
Coupled stability: spring and masses. Simplest class of passive environ-
ments that interacts with the controlled systems has been determined. Such
passive environments are defined by simply masses and springs, and the analy-
sis has been based on two root loci of a system coupled with a spring or mass.
16
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
17/67
Chapter 2
Literature review
This chapter will provide an overview of the most relevant contributions in torque
control and impedance control, which are the main topics of this dissertation.
2.1 Torque control
Robotic systems are often modeled as rigid body systems. Physical causality pre-
scribes that a rigid body inertia has a force as input and motion as an output (Focchi,
2013). Applying this to robots, they have torque as inputs to their link dynamics.
This is the motivation to implement torque control at the joints.
Being able to precisely control the joint torque has many advantages. Torque
control allows to implement various forms of impedance control, control of contact
forces, virtual model control, as well as model based controls, such as rigid body
dynamics based control (inverse dynamics, gravity compensation), and operational
space control (Boaventuraet al.,2012). Moreover, the main disturbances present in a
manipulator operation are all torque types (e.g. friction torque, gravity torque), which
naturally are best dealt within the torque/force domain by implementing low-level
torque control.
Research on robot torque control dates back to the 50s with industrial manipu-
lators. Torque control was initially developed to deal with non-linearity and frictioneffects presented in the actuators of industrial robots (Zinn et al., 2004). However,
stability problems emerged immediately due to the stiff mechanical interfaces between
the actuator and its load. The open loop gain of the actuator with stiff interface is
very high. Even a minor change in position of the load will produce considerable
forces affecting the actuator. Therefore, whenever contacting with the environment,
high gain feedback control would very likely result in destructive performance since
17
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
18/67
both the high gain control and the environment impose position (Buchli, 2011).
To overcome this issues the solution was to deliberately introduce springs in series
with the actuator. This is the idea behind series elastic actuators (SEA), first intro-
duced by Pratt and Williamson (Prattet al., 1995). In this case, the environmental
shocks that occur during the interaction between the manipulator and the environ-ment are largely reduced. The following subsection will describe the SEA in more
details.
2.1.1 Series elastic actuator
Series elastic actuator (SEA) is one of the passive compliant actuators used in robotics
manipulators. The basic configuration of a series elastic actuator is shown in Figure
2.1(Prattet al., 1995).
Motor Gearbox Load
Series
Elasticity
Figure 2.1: Block diagram of Series elastic actuator
The introduction of springs helps to reduce the large impact forces and better
handle shocks from the environment because the output impedance is substantially
reduced (Focchi, 2013). As a result, some of the benefits of using the SEA include
greater shock tolerance, lower reflected inertia, and less damage to the environment
(Pratt et al., 1995). Moreover, springs act as an energy storage elements, and can
turn the force control problem into a position control problem, greatly improving force
accuracy. In SEA, the load force can be measured through the deflection of the spring
without necessity to equip the manipulator with torque sensors. In particular, the
output force is equal to the position difference across the series elasticity multiplied
by its spring constant.One of the drawbacks of SEA is that the amount of passive stiffness is fixed and
cannot be adjusted on the fly if the task requirements have changed. A possible
solution is to replace it with an active compliance. This type of compliance can be
tuned on-the-go to fit the task requirements based on the output information from
force or related sensors. However, the implementation of the active compliance is
computationally costly, and thus it may be unsuitable for many applications.
18
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
19/67
The introduction of springs also limits the overall system bandwidth. The dynamic
characteristics of the robot with elastic actuators significantly limit the closed-loop
torque performance, making the closed-loop system unstable for high gains (Eppinger
& Seering,1987). Another limiting factor to the torque bandwidth when the torque
is transmitted through the spring is an intrinsic load velocity feedback that exists inthe torque dynamics and does not depend on the actuator. In this situation, there is
a zero in the torque transfer function that depends on load dynamics (damping and
inertia), and that can limit the achievable closed loop bandwidth (Focchi,2013). The
model based control strategy that overcomes the effect of this zero is called a velocity
compensation. This compensation deals with the load velocity feedback existing in
the load dynamics and performs a pole-zero cancellation, which makes it possible to
increase the controller gains, thus to achieve the desired torque bandwidth. Focchi
has designed and implemented this kind of compensation on hip abduction/adduction
(HAA) joint of the hydraulic quadruped HyQ robot and thoroughly analyzed its effect
on overall system performance in (Focchi, 2013). However, the concept of velocity
compensation can be generalized to any mechanical system where force/torque is
under control, and a compliant element is present, regardless of the type of actuator
in use (e.g. hydraulic/electric/pneumatic) (Boaventura et al.,2012).
Nevertheless, simple control strategies, such as PD control, are still used in the
most industrial robots. The bandwidth of the controllers has to be reduced until
robustness against highly non-linear dynamics is reached. If the controller can use
more extensive information about the model of the system, then the performance ofthe controlled system can be enhanced. Thus, a control structure in the form of a
joint state feedback controller was proposed in (Albu-Schaeffer & Hirzinger, 2001)
to control the DLR lightweight robot. Since it used both motor and link states, its
performance was proven to be superior to that of the simple PD controller.
2.2 Impedance control
Controlling the interaction of a robot manipulator with the environment is crucialfor accomplishing a variety of tasks in industrial applications, such as mechanical
part mating, object contour surface tracking, employment of tools for machining
mechanical part (Chiaverini et al., 1999), as well as in biped robot locomotion tasks,
such as walking, running, and climbing ladders. If the environment is structured
and well-known, high gain position control is usually used to maximize the tracking
accuracy. This high gain position control works well in industrial robots with low
19
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
20/67
locomotion speed. Additionally, when it comes to mechanical interface, "the stiffer,
the better" is the traditional rule of good design for industrial manipulators (Pratt
et al., 1995).
Conversely, high gain control becomes unsuitable for dynamic locomotion or for
situations where contact with unstructured environment is involved. Whenever therobot operates in an unstructured environment, where the knowledge of it is imprecise
or when the motion is constrained (e.g. by the ground in the case of a legged robot),
the necessity to be compliant to these external impacts becomes a crucial requirement.
In this case, some interaction control is required.
Two methods of regulating the interaction forces using compliance were proposed:
passive and active. Passive method consists in the introduction of physical compliant
elements, such as spring and damping, between the motor and the link. On the other
hand, active method is based on virtual emulation of compliance using feedback sensormeasurements of joint forces. A major benefit of actively controlling the compliance
is its flexibility to change its dynamic characteristic (e.g. stiffness and damping) on-
the-fly (Focchi, 2013). This versatility is a great advantage versus an introduction of
passive compliant elements in the structure that have only a fixed value of stiffness
and damping. However, due to physical presence of the passive compliant element,
it can store and release energy, thus increasing the energy efficiency of the system
and reducing the work made by actuators. Nevertheless, the existing drawback is
additional dynamics introduced by springs that may induce unwanted oscillations.
However, compliant manipulator is still an optimal choice for the tasks involving
environment interactions.
There are many ways of controlling the interaction forces or the compliance:
impedance control (Hogan,1985), hybrid force control (Raibert & Craig, 1981), and
others. The distinction is in the approach to control the force. Direct force control
method is the one where the controller directly regulates the contact force to a desired
reference. Hybrid force control and other classical force control methods belong to this
category. Alternatively, indirect control method is the one where the force/torque is
controlled via motion control. Impedance control falls in this category. In particular,impedance control tries to regulate simultaneously both the mechanical impedance,
which is the dynamic relation between the torque and the velocity of the manipulator,
and the position of the manipulator. This dynamic characteristic can be defined at
different locations. In the case of SEA, the active impedance can be generated either
on the motor side or the link side. However, many aspects still create stability issues
on impedance control. For instance, the range of stable stiffness and damping values
20
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
21/67
can be limited by actuator dynamics and inner loops bandwidth.
2.2.1 Impedance control architectures
Impedance control problem can be defined as an outer impedance controller com-
manding a reference to the inner loop. In practice, the inner control loop can be
a position loop (position based impedance control), a velocity loop (velocity based
impedance control), or a torque loop (torque based impedance control) (Mosadeghzad
et al.,2012).
Nowadays, torque sensing is available in many robots and IC based on torque
inner loop (ICT) has become widely adopted (Eppinger & Seering,1987;Prattet al.,
1995). One of the advantages of implementing ICT scheme is that the outer impedance
loop directly generates a reference command to be tracked by the inner torque loop.However, performance-wise the achievable torque bandwidth is limited when using a
simple PI controller. This problem arises when the link has a small value of viscous
damping.
One alternative for ICT scheme is to design inner velocity loop (ICV), but still
implementing torque feedback. In this way, the robustness and tolerance to non-linear
effects of friction can be increased. In this instance, the drive is rather the velocity
source than the torque one. The ICV scheme can be implemented in terms of either
joints or motors position. However, the significant drawback of this scheme is a
necessity to employ the torque derivative feedback. In practice, most of the torque
sensor signals are noisy, and calculations of the torque derivatives are not a trivial
problem. More details about the ICV scheme can be found in (Mosadeghzadet al.,
2012).
Another possibility to implement the IC is to use inner position loop (ICP). Using
the ICP scheme as the basis of the impedance control is quite common because most
of the current robots are equipped with the position control loops by default. Similar
to the ICV scheme, the ICP can be employed in terms of motor or link positions.
One drawback that arises implementing this type of the IC scheme is a requirementfor the link (or motor) position to be multiplied by some gain in the feedback path,
which depends on where the ICP scheme is implemented (link or motor side). The
errors in this gain value can cause high steady state errors in the reference response
of the impedance controller (Mosadeghzadet al.,2012).
The summary of the discussed impedance control schemes is presented in Table
2.1.
21
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
22/67
Table 2.1: Comparison of various impedance control schemes
Scheme Advantages Disadvantages
ICT The torque generated by outer loop
can be used directly as a reference
Closed loop bandwidth is limited
using PI controller
ICV Increases robustness and decreases
non-linear effect of friction
Requires torque derivative to
implement
ICP Robotic devices are commonly
equipped by position control
systems
Sensible to errors in the gain value
2.2.2 Passivity
Another important specification which is necessary for a manipulator interacting with
the environment is called a coupled stability. In fact, whenever the manipulator is
in contact with the environment, the dynamics of the whole system depend both
on the dynamics of the manipulator and the environment. Since the environment is
considered passive in most cases, the practical solution is to design a controller such
that the manipulators system behaves passively at the interaction port (Colgate,
1986). In this case, the stable interaction with any passive environment is ensured.
Passivity property was defined and thoroughly investigated for mechanical systems by
(Colgate,1986). Later, Colgate and Hogan (Colgate & Hogan,1988) have derived the
necessary and sufficient conditions for stability in contact with passive objects based
on a Nyquist stability analysis. Similar to nominal stability, passivity is also influenced
by inner loop bandwidth. Comparison of how passivity property is preserved when
the impedance control loop is implemented with various nested inner loops (namely
velocity, position, and torque) can be found in the work done by (Mosadeghzadet al.,
2012).
22
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
23/67
Chapter 3
Series elastic joint dynamics
In this chapter, the SEAs system description and modeling will be provided. An
open loop system will be simulated and analyzed. The torque transfer function willbe investigated in terms of poles and zeros. It will be shown that the open loop zeros
impose a limitation on the torque bandwidth.
3.1 SEA system description
The model of SEA, which is thoroughly used in this dissertation, is based on the
experimental setup utilized in (Mosadeghzadet al., 2012) and (Mosadeghzad et al.,
2013). This setup is shown in Figure 3.1. It consists of a brushless DC motor, aharmonic drive gearbox, a cable drive, and a load link. The system is equipped with
position and torque sensors.
Figure 3.1: SEA experimental setup. 1-motor pulley, 2-harmonic drive, 3-motorposition sensor, 4-DC motor, 5-cable drive, 6-link position sensor, 7-output pulley,8-rigid strain gauge torque sensor, 9-output link
23
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
24/67
3.2 SEA system modeling
Generally, a single SEA consists of an electrical motor, a reduction gear, a passive
elastic element with a parallel intrinsic damping and an output link or load. The
schematic of the model is depicted in Figure3.2.
Motor Link
N
hD
hK
sT
mBl
B gK
mq
mT
lq
lT
Figure 3.2: Schematic structure of SEA
Using Euler-Lagrange equation, the dynamics of the link is given by:
Jlql+ Blql= Tl+ Td Tg (3.1)
where ql, qlare the link angular velocity and acceleration,JlandBlare the link inertia
and the link viscous friction,Tlis the load disturbance torque,Tdis the driving torque
and Tg is the gravity torque.
The torqueTd is produced by spring and damping, and it can be expressed by thedifference between motors and links positions and velocities:
Td= Kh
qmN ql
+ Dh
qmN ql
= Ts+ Dh
qmN ql
(3.2)
where qm, ql, qm and ql are the angular positions and velocities of motor and link,
Kh and Dh are the stiffness and the damping of the model, and N is the gear ratio
to increase the torque from the motor. The electrical dynamics of the motor can be
described by the following equation:
LIm+ RIm= Vm Kbqm (3.3)
whereLandR are the motor coil inductance and resistance, Imand Vmare the motor
current and voltage, and Kb is the back-emf motor constant. The torque inputTm,
24
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
25/67
which is generated by the motor, is given by:
Tm= KtIm (3.4)
whereKt is a torque-current constant. Thus, the dynamic equation from the motor
side is given by:
Jmqm+ Bmqm= Tm TdN
(3.5)
whereJm is the total inertia of the electric rotor and the harmonic drive and Bm is
the viscous friction of the rotor and the harmonic drive.
As is known, a gravity torqueTgacting on the link can be expressed as a non-linearposition dependent torque:
Tg =MgHcos(ql) (3.6)
where g is the gravitational acceleration (9.81 m/s2). It is possible to model this
torque as a torsional spring Kg . Therefore, the linearized gravity torque becomes:
Tg =Kgql (3.7)
where computed value ofKg is 9.0341 Nm/rad, and is obtained after the linearization
around the equilibrium pointql=
2.
Rearranging the equations (3.1)-(3.7), the final set of equations describing the
SEA dynamics is the following (Mosadeghzadet al.,2012):
LIm+ RIm= Vm Kbqm
Jmqm+ Bmqm= KtIm Kh
N
qm
N ql
Dh
N
qm
N ql
1
N(Tfric+ Trip)
Jlql+ Blql= Kh
qm
N ql
+ Dh
qm
N ql
+ Tl Kgql
(3.8)
whereTfric and Trip are the meshing friction torque and the torque ripple produced
25
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
26/67
by the harmonic drive, which have been added to show the non-linear effects existing
in the model. The system is driven in open loop by a voltage input signal. The
parameters for the model are given in Table 3.1.
Table 3.1: Electrical and mechanical parameters for the SEA model
L [H] Motor inductance 3.2 104
R [] Motor resistance 0.664
Kb[Nms/rad] Motor constant 4.10 102
Kt[Nm/A] Torque constant 4.10 102
Jm[kgm2] Rotor+harmonic drive inertia 1.3870 105
Bm[Nms/rad] Motor viscous friction constant 1.9958 105
Jl[kgm2] Link inertia 0.2518
M[kg] Link mass 3.60455
H[m] Link centre of mass 0.25548497
Bl[Nms/rad] Link viscous friction constant 2.0 103
Kh[Nm/rad] Passive spring stiffness 912
Dh[Nms/rad] Passive spring damping 1.1856
N Gear box ratio 150
It is worth mentioning that sometimes the actuators dynamic (the electric motor)
is neglected and is thus excluded from the dynamic model of SEA for the sake of
simplicity. In those cases, the motor is considered to be the ideal velocity source.
However, this simplification is justified only when those dynamics are very fast and
are constant up to certain frequency, which must be greater than operating one. In
this case, the electrical dynamics, the transfer function between motor current and
motor velocity is:
qm(s)
Im(s)=
Kt
Jms+ Bm(3.9)
and has a pole (s= BmJm
=1.44 rad/s) at low frequency. Due to small open loop
bandwidth the electric motor cannot be considered as an ideal velocity source, and
26
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
27/67
thus its dynamic must be included in the model of the system. However, this is not
the limitation to the bandwidth of the closed loop system. The real limitation is
the voltage saturation of the actuator. Therefore, hereafter all the simulations will
be based on the situation where the actuator has a voltage limit of[30 V; 30 V] to
represent more realistic case.Using equations (3.8), one can express the model in the block diagram form, which
is shown in Figure3.3.
RLs
Kt
+ mm BsJ +
1
N
1
N
1
NK
D
h
h
hK s1
h
h
K
D
ll BsJ +
1
bK
mV mq& sT lq&
ripfric TT +
gK s1
lT
Figure 3.3: Block diagram of the SEA model
One drawback of using a harmonic drive gearbox is that it introduces torque rip-
ples that vary for different drives, assemblies, speeds, and loads. This torque has
detrimental effect on torque control and creates vibrations and wearings of the com-
ponents. However, a special characteristic of harmonic drives is that the dominating
component of torque ripple is periodic in nature and has fundamental component
with frequency twice the wave generator cycle (Mosadeghzadet al.,2012). Therefore,
in this case, the dominating fundamental torque ripple component has been modeled
as:
Trip = 2 cos(2qm) (3.10)
This term is added along with a motor torque in the equation (3.8), and it enters thesystem with the peak amplitude of
2
N0.013 N m.
3.2.1 State space representation
By manipulating equations (3.8), a continuous time linear system can be obtained in
state space form with measured joint torque as one of the states:
27
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
28/67
x=
0; 1; 0; 0; 0
-Kh
JmN2 -
Kh
Jl; -
Bm
Jm-
Dh
JmN2 -
Dh
Jl;
KhKg
Jl;
KhBl
Jl-
KhBm
Jm;
KhKt
JmN
0; 0; 0; 1; 01
Jl;
Dh
JlKh; -
Kg
Jl; -
Bl
Jl; 0
0; -KbN
KhL; 0; -
KbN
L ; -
R
L
x +
0
0
0
0
1
L
u
y=
1 0 0 0 0
x
where state vector x, controlu, and outputy are as follows:
x=
Ts
Ts
ql
ql
Im
, u= Vm, y= Ts (3.11)
This representation of the system will be useful in designing a state feedback
controller in the subsequent chapter.
3.3 Open loop simulations
In SEA, the joint torque can be measured by the deflection of the elastic element:
Ts= Kh
qm
N ql
(3.12)
Therefore, from Figure3.3,the transfer function from the input voltageVmto the
measured torque Ts is (Tfric+ Trip = 0 and Tl= 0):
G(s) = 5.616 107s2 + 4.461 105s + 2.015 109
s5 + 2085s4 + 4.06 105s3 + 1.546 107s2 + 1.397 109s + 2.176 108 (3.13)
It has been computed using MATLAB code provided in Appendix B.The simu-
lations have been carried out using "step" command. Its open loop response to the
28
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
29/67
input step change in the voltage (0-1 V) is shown in Figure3.4. Hereafter, the ini-
tial position of the link is set to zero. The poles of (3.13) are: 1872.3, 191.9,
10.3j61.4, and0.16. The pair of complex poles introduce oscillations with time
period of 2/61.4 0.1 s that settle down after 4/10.30.4 s. The first four poles can
be considered as "fast" poles because their effect is insignificant after 0.4 s. The lastmentioned pole, s = 0.16, is the dominant one, which causes the settling time to
be 4/0.16 25 s. This pole only appears when the gravity is taken into consideration.
The effect of this pole is seen better on the link and motor positions and velocities
responses because motors and links position and velocity transfer functions share
the same set of poles with torque transfer function. It can be seen that within 0.4 s
(before the dominant gravity pole) the position acts as an integrator of the velocity.
Since it was not the main object of interest, these transfer functions along with their
corresponding open loop step responses can be found in Appendix A.
0 10 20 30 402
0
2
4
6
8
10Joint torque
Ts
[Nm]
Time [sec]
0 0.52
0
2
Figure 3.4: Open loop response of joint torque Ts
The zeros of transfer function (3.13) will impose limitations on the torque closed
loop bandwidth. The next section will be devoted to investigation of this limitation,
which arises when the torque is controlled by a conventional PI controller.
3.4 Bandwidth limitations of the torque controlled
by PI controller
Consider the numerator of the transfer function (3.13). The roots of the numerator
ares = 0.0040j5.9898, which are low frequency zeros very close to imaginary axis
in continuous time. A simple PI controller is formulated as:
29
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
30/67
C(s) =kp+ki
s =kp
s+ki
kps
(3.14)
wherekp andki are proportional and integral gains, respectively. The pole at origin,
introduced by the controller, will become the dominant pole of the closed loop system.
If the controller gain is increased, it will move towards one of the open loop zeros.
Increasing the controller gain infinitely does not increase the bandwidth of the closed
loop system, since the dominant pole of the controller is attracted towards one of
these complex zeros. The Figure3.5 (right) shows the root locus of the loop transfer
functionC(s)G(s)around the origin, where this phenomenon is clearly seen.
0,01 0,005 010
5
0
5
10
Root locus
Real axis
Im
aginaryaxis
4 2 010
5
0
5
10
Root locus
Real axis
Im
aginaryaxis
Figure 3.5: Root locus ofC(s)G(s)around the origin computed for the model withgravity (right) and without gravity (left). The open loop poles and zeros are red,whereas the controller pole and zero are black
Figure3.5(left) shows the root locus ofC(s)G(s), but for the system modeled
with no gravity included. In this case, there is a single open loop zero, s = 0.0079,
instead of two complex ones. Here, it is evident that the dominant pole ofC(s) at
the origin cannot go beyond the frequency of the open loop zero. Therefore, the same
problem arises, which is the limitation of the closed loop bandwidth by the frequency
of this zero.
30
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
31/67
3.5 Summary
In this chapter, the derivation of the SEA model dynamics has been presented. It has
been shown that the electrical (the motor) dynamics cannot be considered as an ideal
velocity source and thus must be incorporated in the model due to the small open
loop bandwidth. The open loop simulations have been performed to get some insight
of the dynamics of the system. Finally, the origin of the torque bandwidth limitation
that is present when controlling the joint torque with a simple PI controller has been
explained.
31
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
32/67
Chapter 4
Torque controller design
In the previous chapter, the model of SEA has been designed. In this chapter, the
formulation of the torque controller for SEA will be presented. This torque controlloop will be included in a nested loop architecture with an outer impedance loop as
described in details in Chapter 5. Two types of controllers, a simple PI and a Linear
Quadratic Regulator (LQR), will be proposed to regulate the joint torque measured by
the spring deflection. The performance will be evaluated via step response character-
istics and disturbance attenuation. Simulation results have proved that the designed
LQR controller has surpassed the performance of the PI controller.
4.1 PI controller designPID controllers are widely used in robotics. They are reasonably easy to tune and
robust in the presence of parameter uncertainty. Traditionally, in nested control archi-
tectures, the controller design is carried out with the aim to maximize the bandwidth
of the inner loop (torque loop in our case). However, as it will be shown further, this
approach is not always consistent with outer loop specifications (impedance parame-
ters in this case).
A block diagram of inner torque loop with a PID controller is shown in Figure
4.1. From figure, torque loop is subjected to a torque ripple disturbance Trip, whichhas been defined earlier in the previous chapter. Also, only proportional and integral
terms (PI) have been included in a controller structure. The reason why a derivative
term has not been included is that the sensors used in torque measurement provide
very noisy signals. The derivatives of these noisy signals are hard to compute and may
cause many problems. Hence, a continuous time implementation of the PI controller
has the following form:
32
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
33/67
C(s) =kp+ki
s =kp
s+ki
kps
(4.1)
where proportional gainkp and integral gain ki are to be tuned to achieve loop gain
margin larger than6 dB and phase margin larger than30. Letz= kikp
andk = kp,
then the controller (4.1) can be expressed as the transfer function with gain k, zeroz
and pole at origin.
Link
dynamics
mV sTrefT + e
pk
iks
1
+
+
Electrical
dynamics
+
+
ripT
Figure 4.1: Inner torque loop with PI controller
The controller design procedure is as follows. First, nominal controller gain k
and zero zhave been found that meet the stability margin requirements. Next, gain
and zero of the controller has been varied taking into account the above-mentioned
margins demands. A set of controller parameters satisfying the given specificationswith corresponding response characteristics are shown in Table4.1:
Table 4.1: PI controllers with corresponding closed loop characteristics
# k z Bandwidth (3 dB)
[rad/s]
Rise time
[s]
Settling time
[s]
Overshoot
[%]
1 2.7 -7 4.89 0.0049 5.43 37.74
2 2.7 -3 4.22 0.0050 3.04 32.46
3 0.03 -3 0.53 3.57 38.28 40.99
4 1 -3 2.97 0.64 5.27 38.31
The closed loop step responses for proposed controllers are shown in Figure 4.2.
33
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
34/67
It can be seen that reducing the gaink leads to increase in the rise time and settling
time. Also, moving the zero ztowards the origin reduces the amount of oscillations.
However, moving the zero too close to the origin or increasing the gain too much
deteriorates the stability margins. From the Table 4.1 and Figure 4.2, controller
#2 (purple) has the best response characteristics in terms of overshoot and settlingtime. The in-depth examination of this response in terms of poles and zeros will be
provided in Section4.3. Although the main interest is to control joint torque, other
intermediate signals, such as link position (see Figure 4.2right), are also important.
It can be seen that link position response is also oscillatory. Indeed, from (3.12) it
is evident that the joint torque depends on the position of the link, thus these two
responses will correlate with each other.
0 2 4 6
0
0.5
1
1.5
Time [s]
Ts
[N
m]
Torque step response
k=2.7; z=7
k=2.7; =3
k=0.03; z=3
k=1; z=3
0 2 4 6
0
0.05
0.1
0.15
0.2
Time [s]
ql
[rad]
Link position
Figure 4.2: Closed loop torque response (left) and link position response (right) tostep change in torque reference
The bode magnitude diagram for transfer function between the torque ripples Trip
and the joint torque Ts for different controllers is shown in Figure 4.3. As can be
seen, controllers #1 and #2 (blue and purple) provide the best ripple attenuation atlow and mid frequencies comparing to other controllers. The pronounced minimum
in every controllers magnitude, the anti-resonance at 6 rad/s, is due to the pair of
transmission zeros in the transfer function from torque ripple to the joint torque. At
this frequency, the ripples have almost zero effect on measured torque because the
joint torque produced by them is canceled by the torque produced by the motion of
the link.
34
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
35/67
102
100
102
104
90
80
70
60
50
40
30
20
10
0
10
Frequency [rad/s]
Magnitude[dB]
k=2.7; z=7
k=2.7; z=3
k=0.03; z=3
k=1; z=3
Figure 4.3: Torque ripple frequency response (0.013 Nm)
4.2 LQR controller design
As has been mentioned earlier in Subsection 2.1.1, if the controller can use more
extensive information about the model of the system, then the performance of the
controlled system can be enhanced. The implementation of a state feedback controller
to control a robotic system, described in (Albu-Schaeffer & Hirzinger,2001), showed
a superior performance to that of the PD controller. However, the electrical dynamics
were not included in the model. In this work, the model of the system includes the
dynamics of the motor. Moreover, a methodology to select the state gain vector will
be provided with the aid of LQR control.
Linear Quadratic Regulator (LQR) is one of the milestones in control theory,
providing a possibility to find a solution for optimal control problem. In this case, for
the continuous time linear system described by (3.11) with a quadratic cost function
defined as:
J=
0
xTQx+ uTRu
dt (4.2)
the feedback control law that minimizes the value of the cost is given by:
u= K1Ts K2 Ts K3ql K4ql K5Im, where K=R1BTP (4.3)
35
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
36/67
and P is found by solving the continuous time algebraic Riccati equation. To make
LQR track the reference signal and better handle disturbances, the systems state
equations have been modified by adding additional state for the integral of the error
(Ts Tref)dt. Moreover, the control law has been modified in the way to make
the gain K1 act on the error rather than on the torque Ts alone. This modificationintroduces a zero in a loop transfer function that will become useful when the outer
position loop is closed. Thus, expanding equation (4.3) and setting a tracking error
to be e = Ts Trefwill give the following equation for control law:
u= K1e K2Ts K3ql K4ql K5Im K6
e dt (4.4)
The reasons why derivative of the error e = Ts Tref has not been included
in the control law (4.4) are the same as in PID case. The rate of change of Ts is
available from the motor and link velocities measurements, whereas the derivative of
a reference signal, Tref, is very hard to compute and requires an approximation using
low-pass filters, which complicates already complex high-order system. Moreover,
if the gains K2, K3, K4 and K5 are set to zero, the resulted controller will be the
exact PI controller. Hence, it supports the idea that the proposed LQR controller
can achieve as good performance as the PI controller, or even superior one because it
has more degrees of freedom to tune. The block diagram of the proposed controlled
system is shown in Figure4.4.
refT
+
e1K
6Ks
1
5:2K
Link
dynamics
Electrical
dynamics
+
+
ripT
sT
Figure 4.4: Inner torque loop with LQR controller
The idea behind LQR control tuning is to find weighting matricesQ 0andR >0
and to compare the results with the specified design goals. Since the system has one
inputVm, the easiest way to tune LQR is setting R = 1 and changing only Q matrix
entries. The common practice is to set Q=diag [q1; q2; q2; q3; q4; q5; q6], where each
entry is the weighting factor for corresponding state. The proposed weighting with
36
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
37/67
their effects on closed loop characteristics are provided in Table4.2.
Table 4.2: LQR controllers with corresponding closed loop characteristics
# q1 q4 q6 Bandwidth (3 dB)[rad/s]
Rise time[s]
Settling time[s]
Overshoot%
1 10 0 100 3.62 0.0097 1.25 8.77
2 100 0 100 4.85 0.0044 2.49 14.41
3 100 100 100 4.07 0.0044 1.56 11.81
4 500 0 500 5.46 0.0029 3.98 11.09
5 500 500 500 4.28 0.0029 1.56 13.74
The choice of these particular weightings is not an arbitrary one. Step response
performance characteristics and disturbance attenuation have been the tuning criteria.
However, more emphasis has been placed on friction (ripple) disturbance attenuation,
because the step performance of a system after closing outer loop is of much greater
importance. It has been found that increasing the weighting on tracking error (q1) sig-
nificantly improves the friction disturbance attenuation (see Figure4.6). Conversely,
increasing the weighting on Ts(q2) deteriorates disturbance rejection, but reduces the
overshoot. An increment in link position weighting (q3) worsens both settling time
and disturbance attenuation. On the other hand, the weighting on link velocity (q4)
noticeably improves settling time and reduces oscillations both of joint torque and
link position. The weighting on motor current (q5) increases the rise and settling
times. Finally, the weighting on the integral of the error (q6) increases the speed
of response in general. Having combined these observations, it has been decided to
operate onlyq1, q4and q6weightings, since they have more effects on the performance
of the system than the other ones. The closed loop step responses for proposed con-
trollers are shown in Figure4.5. The torque ripple disturbance attenuation frequencyresponses are shown in Figure4.6.
From Figures 4.5 and 4.6, it is seen that increasing q1 from 10 to 100 leads to
decreasing the magnitude of ripples from 22 dB to32 dB (blue and purple lines).
Also, adding weighting q4 helps to reduce the oscillations both in torque and link
position responses, yet not affecting much the ripple attenuation (red line). Controller
#4 (black) achieves peak ripple response of around 37 dB, which is the best result
37
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
38/67
0 0.5 1 1.5 2 2.5 30
0.2
0.4
0.6
0.8
1
1.2
1.4
Time [s]
Ts
[Nm
]
Torque step response
q1=10; q
6=100
q1=100; q
6=100
q1=100; q
4=100; q
6=100
q1=500; q
6=500
q1=500; q
4=500; q
6=500
0 0.5 1 1.5 2 2.5 30
0.05
0.1
0.15
0.2
Time [s]
ql
[rad
]
Link position
Figure 4.5: Closed loop torque responses (left) and link position response (right) tostep change in torque reference
among other proposed controllers. Addingq4 weighting again reduces oscillations on
closed loop responses, yet keeps the similar friction attenuation.
102
100
102
104
100
90
80
70
60
50
40
30
20
Frequency [rad/s]
Magnit
ude[dB]
q1=10; q
6=100
q1=100; q
6=100
q1=100; q
4=100; q
6=100
q1=500; q
6=500
q1=500; q
4=500; q
6=500
Figure 4.6: Torque ripple frequency response (0.013N m)
4.3 Comparison between PI and LQR controllers
In this section, the comparison between PI and LQR controllers will be provided in
terms of step response characteristics, stability margins, and torque ripple attenua-
tion. The selected controllers have achieved suitable design requirements and will be
used only to show the difference in results that has been obtained using two different
38
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
39/67
control design strategies. Thus, they are not the "best" controllers. The selected PI
controller has k = 2.7 and z = 3 (controller #2 in Table 4.1). The selected LQR
controller is defined by Q = diag [500; 0; 0; 500; 0; 500] and R = 1 (controller #5 in
Table4.2).
4.3.1 Step response characteristics
The response of two proposed controllers are shown in Figure 4.7. It is clearly seen
the response provided by the system controlled by LQR controller is much better than
by PI controller in terms of settling time, overshoot and rise time. The corresponding
poles of the closed loop system controlled by PI controller are: 1918.5, 77.6
j281, 8.7, 1.3 j3.1. There are two pairs of complex poles. First pair introduce
oscillations with a period of 2/281 0.02 s that settle down after 4/77.6 0.05 s. The
seconds pair are the dominant poles and the oscillations induced by them are with
the time period of 2/3.1 2.03 s that vanish after 4/1.3 3.08 s. These poles are the
ones that move towards open loop zeros with increasing controllers gain, thus limit
the torque bandwidth (see Section3.4).
The state feedback gain generated by LQR controller is Ki = [22; 0; 23; 17; 0; 22]
(values have been rounded towards nearest integer) that places the poles of closed
loop system at: 1904.3,553.9j593.7,2j5.6,1. Dominant pair of complex
poles induces noticeable oscillations with time period 2
/5.6
1.12 s that settle after4/2 2 s.
0 1 2 3 40
0.2
0.4
0.6
0.8
1
1.2
1.4
Time [s]
Ts
[N
m]
Torque step response
0 0.05 0.10
0.5
1
1.5
PI
LQR
Figure 4.7: Step response of torque controlled by PI and LQR controllers
39
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
40/67
4.3.2 Stability margins
In theory, LQR must provide infinite gain margin and phase margin of at least 60.
In our case, LQR acts as a controller rather than as a regulator, since the integrator
has been added. Therefore, its stability margins must be checked and compared to
PI controller margins. The gain and phase margins for system controlled by the PI
controller are 14.6 dB and 32.5, respectively. As for the system controlled by the
LQR controller, its gain and phase margins are 16.6 dB and 63.3, respectively.
Indeed, the LQR controller provides the phase margin above60, which is twice as
great as in PI case. However, the gain margin of the LQR controlled system is 16dB,
but it is still more than the gain margin of PI controlled system. Therefore, proposed
LQR controller provides more robustness compared to a simple PI controller.
4.3.3 Torque ripples attenuation
The torque ripple frequency responses for two controllers are shown in Figure 4.8. It
is evident that LQR controller significantly improves ripples attenuation of the closed
loop system at low and mid frequencies by almost 20 dB.
102
100
102
104
100
90
80
70
60
50
40
30
20
10
Frequency [rad/s]
Magnitude
[dB]
PI
LQR
Figure 4.8: Torque ripple attenuation with PI and LQR controllers
To show the oscillatory behavior of the torque ripples, their effects have beendemonstrated using torque step responses. The joint torque responses of a system
affected by the torque ripples are shown in Figure 4.9.
The second order systems response has been used as a reference to reduce initial
spikes and to emphasize on ripples effect. It is no surprise that LQR provides superior
torque ripples attenuation compared to PI controller, due to better bode magnitude
diagram (see Figure4.8).
40
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
41/67
0 1 2 3 4 5 60.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Time [s]
Ts[
N
m]
Torque response
Ref
Tsno ripples
Tswith ripples
0 1 2 3 4 5 60.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Time [s]
Ts[
N
m]
Torque response
Ref
Tsno ripples
Tswith ripples
Figure 4.9: Torque ripples effect on torque response: PI case (left) and LQR case(right)
4.4 Summary
In this chapter, two different controllers for the inner torque loop have been designed,
namely PI and LQR. In particular, the effect of the gain and the zero of a PI con-
troller on performance of closed loop system has been demonstrated via simulations.
Then, to surpass the performance of a PI controller, the LQR control strategy has
been introduced. The influence of a state weighting matrix on the closed loop sys-
tem performance has been analyzed. Via simulations, it has been proven that the
LQR controller shows better performance in terms of stability margins, step responsecharacteristics and disturbance attenuation compared to a conventional PI controller.
41
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
42/67
Chapter 5
Impedance control
In the previous chapter, the implementation of a torque loop has been presented
to improve it in terms of bandwidth and disturbance rejection. In particular, it hasbeen shown that bandwidth and disturbance rejection can be increased by using LQR
controller instead of conventional PI controller. This is true for the torque loop alone;
however, when an outer impedance loop is closed, the dynamic of the controlled
system changes, thus this statement must be checked in order to select appropriate
controller. The results in this chapter show that the LQR controller provides larger
range of impedance parameters where the entire closed loop system remains stable
and passive.
5.1 Approach and implementation
To have desirable impedance on the link side, a spring-mass-damper system is being
modeled. Spring and mass are both energy storing elements, and damper is an energy
dissipating element. In other words, being able to control the impedance makes it
possible to control the energy exchange during interaction. Therefore, impedance
control is considered to be the interaction control (Buchli,2011). In this project, only
spring-damper system is being considered, since the mass (inertia) gain in impedance
controller requires the measurement of acceleration of the link, which in reality is veryhard to obtain and demands expensive sensors.
Now, considering the torque loop implemented in Chapter 4, an impedance con-
troller is added as an outer loop as shown in Figure5.1. The impedance gains Kand
Drepresent the desired stiffness and damping for the link joint. These gain units will
be expressed in SI units,Nm/radfor KandNms/radfor D, and henceforth will be
omitted for the sake of brevity. The output of the impedance controller provides the
42
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
43/67
reference torqueTreffor the inner loop:
Tref=K(qref ql) Dql+ Tc (5.1)
where Tc is an external compensation torque than can be added to remove the
effect of gravity.
Controller
Actuator
+
Load dynamics
K
sD
lq
lq
refq refT cT
sT
+
fricTlTTorque loop
Figure 5.1: Block diagram of the system with inner torque loop (blue) and outerimpedance loop (green)
For our work, the range of values for impedance loop gains that is considered to be
sufficient isK(0 2000]and D (0 30] (Mosadeghzadet al.,2013). This range was
determined for the ankle joint of the humanoid robot CoMan to adjust the system
performance throughout the locomotion cycle.
5.2 Control problem formulation
Let us express the block diagram5.1in the block diagram form where each component
is represented via transfer function block. This block diagram is shown in Figure5.2.
Here,G1 is the voltage-to-torque transfer function, G2 is the torque-to-link position
transfer function, C1 is the inner torque controller, C2 is the impedance controller
parameters, and Gd is the transfer function from load disturbance to joint torque.
The design goal is to determine the controller C1 that will ensure the closed loop
stability and stability when coupled to passive environment given the fixed impedanceparametersC2. This is a non-trivial problem, and there may not be a solution even
if the coupled stability condition (passivity) is removed. If there is no solution, the
largest range of impedance parameters C2 and inner controller C1, which satisfy the
condition of stability and passivity, must be determined. However, there are no
analytical tools available for solving this problem. The numerical calculations have to
be carried out for each specific set of impedance parameters. An approach to solving
43
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
44/67
C2
G1
C1
G2
GdlT
sT lqrefq
Figure 5.2: Cascaded control system block diagram for ICT
the control problem, proposed in (Mosadeghzadet al., 2013), can be summarized in
the following steps:
1. Design the inner torque controllerC1 that satisfies the inner closed loop spec-
ifications. In our case, these are in terms of inner closed loop bandwidth and
stability margins.
2. Adjust the controllerC1 to achieve overall closed loop stability for the largest
range of impedance parametersC2.
3. Repeat step 2, but now considering passivity.
Step 1 has been performed in Chapter 4, where PI and LQR controllers have been
designed considering the above-mentioned specifications. In the next section, step 2will be carried out to find the stability regions for the system with different inner
torque loop controllers. The notion of passivity will be introduced in Section5.4 and
step 3 will be presented.
5.3 Stability regions
In this section, the closed loop stability region will be determined for a given range of
impedance parametersKandD by varying the controllers parameters. The stabilityof the overall system is determined by computing the closed loop eigenvalues and
checking that they are less than zero (stability boundary in continuous time). First,
this condition will be checked for the system controlled by a PI controller, and then
for the system controlled by the LQR controller. In this section, the stability regions
will be plotted for the following values of impedance parameters: K (0 7000] and
D (0 40]. The reason for this is an interest in stability boundary, which can be seen
44
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
45/67
only if plotted for the given large range. The distance to stability boundary can be
treated as an indicator of robustness of the system.
5.3.1 Stability regions with inner PI controller
The results are presented in Figure 5.3, where the red area corresponds to stable
region, whereas blue area is the unstable region. It has been determined that the
zero of a PI controller does not significantly affect the stability regions because it
does not noticeably affect the bandwidth of the inner loop. Therefore, the analysis is
carried out for a PI controller varying only its gain k. Increasing the gain k leads to
increasing the bandwidth of the inner torque loop (see Table 4.1). Figure5.3shows
that, as controller gain triples in value from 0.9 to 2.7, the stability region increases for
high stiffness, from 3000 to 6000 in stiffness units. However, if controller gain keeps
tripling from 2.7 to 7.29, stability region "moves" to the left, making high values ofdamping unstable. This clearly illustrates that increasing the bandwidth of the inner
loop is not always consistent with the requirements for the outer loop, because high
values of damping (D >20) are within the range of impedance interest.
D
K
x 103
10 20 30
2
4
6
(a)k = 0.9
D
K
x 103
10 20 30
2
4
6
(b)k = 2.7
D
K
x 103
10 20 30
2
4
6
(c)k = 7.29
Figure 5.3: Stability regions varying the gain of PI controller (keeping z= 3)
5.3.2 Stability regions with inner LQR controller
The results are presented in Figure 5.4, where the red area corresponds to stableregion, whereas blue area is the unstable region. As can be seen, even mediocre
LQR controller (a) provides larger stability region for high stiffness and damping, in
contrast to the PI controller. Increasing the bandwidth of the inner loop only increases
the stability region (see Figure (b) and (c)). The narrow region where stability fails
is for high stiffness and low damping only (beyond K > 2000). In general, it has
been proven that LQR controller provides larger ranges of impedance parameters
45
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
46/67
that keep the system stable and that increasing the bandwidth of the torque loop
leads to enlargement of those ranges, as opposed to the conventional PI controller.
D
K
x 103
10 20 30
2
4
6
(a)Q = [10; 0;0; 0;0; 100]
D
K
x 103
10 20 30
2
4
6
(b)Q = [100; 0; 0;100;0; 100]
D
K
x 103
10 20 30
2
4
6
(c)Q = [500; 0;0; 500;0; 500]
Figure 5.4: Stability regions varying Q matrix of LQR controller
5.4 Passivity analysis
The term passive environment refers to the environment that cannot inject energy
during interaction; it can only exchange or dissipate energy. From (Colgate & Hogan,
1988) it is known that a strictly passive system, connected to any passive environ-
ment, is necessarily stable. This type of stability is ensured if the systems driving
port impedance / admittance is passive. Driving port impedance / admittance is the
impedance / admittance of the system at the point where the interaction with the
environment occurs. LetY(s)denote the transfer function of the driving port admit-tance. In our case, this is the transfer function from the load disturbance torqueTl
to the link velocity ql. Admittance is used in the analysis since the model (3.8) has
the load torque as an input and the link velocity as an output. Then, Y(s)is passive
if and only if:
1. Y(s)has no poles in (s)> 0;
2. the phase ofY(s)lies between -90 and 90 degrees.
In this section, the analysis of the passivity is as follows. First, the transfer functionY(s) has been computed for torque loop alone and for the whole system with the
outer impedance loop by setting low (K = 40, D = 5) and high (K = 500, D =
30) impedance parameters. Next, the analysis has been repeated by varying inner
torque loop controllers parameters. For each set of parameters, the analysis has been
performed first checking the stability of Y(s) and then verifying that the phase of
Y(s) lies in the range 90 +90. If these conditions are not satisfied, then Y(s)
46
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
47/67
is not passive for the particular set of parameters. Finally, regions of Y(s) for the
controllers where passivity maintains for either low or high impedance parameters
will be visualized to obtain accurate range of allowed impedance parameters. The
results of this analysis are summarized in Table5.1. Only the controllers that satisfy
the stability margins requirements for the inner loop have been used (6dB and30
).
Table 5.1: Passivity
Torque
loop
(alone)
Impedance loopK= 40
D= 5
Impedance loopK= 500
D= 30
PI
k= 2.7z = 0.1 Yes No No
k= 2.7z = 3 Yes Yes No
k= 2.7z = 7 Yes No Nok= 0.03z = 3 Yes No No
k= 1z = 3 Yes Yes No
LQR
Q= [10; 0;0; 0;0; 100] Yes Yes No
Q= [100;0;0;0;0;100] Yes Yes No
Q= [100; 0; 0; 100; 0; 100] Yes Yes No
Q= [500;0;0;0;0;500] Yes Yes No
Q= [500; 0; 0; 500; 0; 500] Yes Yes No
As the results in the table show, the passivity is always maintained in the sys-
tem where only torque loop is closed, which means that it will remain stable when
interacting with the passive environment. On the other hand, the overall system
(torque loop + impedance loop) is never passive for high impedance parameters
(K= 500, D = 30). For low impedances (K = 40, D = 5) the system after closing
the impedance loop is passive for every proposed LQR controller, but fails to remain
passive for the PI controllers with the lowest bandwidth (k = 0.03) and the highest
bandwidth (k = 2.7 z = 7). This illustrates the fact that the inner closed loopbandwidth requirements is not always consistent with outer impedance loop specifi-
cations when using a PI controller. The Figures5.5and5.6show the passivity regions
(K(0 2000], D (0 30]) for the controllers where passivity maintains at least for
low impedance parameters, where white corresponds to passive stable, gray is non-
passive stable, and black is unstable system. In PI case (see Figure5.5), increasing
the controller gain from 1 to 2.7 decreases the range of damping where the system
47
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
48/67
remains passive. For LQR (see Figure5.6), controllers (d) and (e) achieves passivity
for all values of the stiffnessKwhen the dampingD = 10. In general, LQR controller
provides larger passivity regions compared to PI controller.
D
K
100
101
100
102
(a)k = 1z = 3
D
K
100
101
100
102
(b)k = 2.7z = 3
Figure 5.5: Passivity regions (log scale): PI controllers
D
K
100
101
100
102
(a)Q = [10; 0;0; 0;0; 100]
D
K
100
101
100
102
(b)Q = [100;0;0;0;0;100]
D
K
100
101
100
102
(c)Q = [100; 0; 0;100;0; 100]
D
K
100
101
100
102
(d)Q = [500;0;0;0;0;500]
D
K
100
101
100
102
(e)Q = [500; 0;0; 500;0; 500]
Figure 5.6: Passivity regions (log scale): LQR controllers
5.4.1 Coupled stability
The purpose of this subsection is to determine the class of passive environments that
makes the system become non-passive and, as a result, unstable when interacting
with these environments. If a manipulator is stable when coupled to a particular, but
restricted, class of passive environments, the "worst" environment, the term intro-
duced by (Colgate,1986), then it is stable when coupled to all passive environments.
48
-
7/21/2019 Impedance Control of Systems With Joint Flexibility
49/67
Moreover, this restricted class of environments is easily param