ADAPTIVE SLIDING CONTROL OF A
SINGLE-AXIS STEERING MIRROR
by
Bruce Patrick Connors
B.S., State University of New York at Buffalo, 1986
A thesis submitted to the
Faculty of the Graduate School of the
University of Colorado in partial fulfillment
of the requirements for the degree of
Master of Science
Department of Electrical Engineering
1991
This thesis for the Master of Science
degree by
Bruce Patrick Connors
has been approved for the
Department of Electrical Engineering
by
Edward T. Wall
Marvin F. Anderson
Connors, Bruce Patrick (M.S., Electrical Engineering)
Adaptive Sliding Control of a Single-Axis Steering Mirror
Thesis directed by Associate Professor Jan T. Bialasiewicz
A feedback control methodology known as sliding control is applied to perform
trajectory control of a single-axis steering mirror. Mathematical properties of sliding
motion are discussed. The sliding control methodology of Jean-Jacques E. Slotine is
presented in detail and illustrated with examples. A stronger relationship relating
distance to the sliding surface and bounds on tracking error is proposed.
A high fidelity computer simulation of a steering mirror control system is
developed. This simulation is used to demonstrate adaptive and non-adaptive sliding
control of a single-axis steering mirror. Practical implementation issues are addressed.
Two sliding controllers are implemented in hardware using a digital signal
processor. Experimental tracking results are presented.
The form and content of this abstract are approved. I recommend its publication.
Signed
Jan T. Bialasiewicz
To my parents,
William D. and Marian J. Connors,
and to my wife,
Rebecca A. Vucetich.
CONTENTS
Figures...............................................viii
Tables................................................xii
CHAPTER
1. INTRODUCTION............................................ 1
1.1 Overview............................................ 1
1.2 Thesis Outline...................................... 3
1.3 Notation............................................ 5
2. VARIABLE STRUCTURE SYSTEMS WITH SLIDING MODES
2.1 An Introduction to Sliding Modes...................... 7
2.2 Mathematical Existence Conditions for a Sliding Regime. 13
2.3 Equations of Motion in the Sliding Mode............... 15
2.4 Order Reduction in the Sliding Mode................... 19
2.5 Disturbance Rejection in the Sliding Mode............. 20
3. SLIDING CONTROL: METHODOLOGY OF
JEAN-JACQUES SLOTINE.................................... 22
3.1 Sliding Control of Nonlinear Systems................... 22
3.1.1 Sliding Condition.............................. 25
3.1.2 Derivation of Control Law u(t)................. 27
3.1.3 Example 1: Second-Order Nonlinear System........33
3.1.4 Example 2: Alternate Solution for Second-Order
Nonlinear System (Integral Control)............40
3.1.5 Relating Bounds on Tracking Error to
Distance to Surface S(t).......................41
3.2 Quasi-Sliding Control: Introduction of a Boundary
Layer to Eliminate Chattering..............................51
3.2.1 Example 3: Second-Order Nonlinear System
with Time-Invariant Boundary Layer.................53
3.2.2 Time-Varying Boundary Layer O(t)....................55
3.2.3 Example 4: Second-Order Nonlinear System
with Time-Varying Boundary Layer.................. 64
3.3 Adaptive Sliding Control....................................67
4. CASE STUDY: ADAPTIVE SLIDING CONTROL OF A
A SINGLE-AXIS STEERING MIRROR......................................75
4.1 Plant Truth Model.........................................78
4.2 Estimated Plant Dynamics.................................. 87
4.3 Digital Implementation of Sliding Controller.............. 90
4.3.1 Continuous-to-Discrete Transformation.............. 90
4.3.2 Command Filter (Reference Model)..................91
4.3.3 Differentiating Filter............................ 95
4.3.4 Integration Algorithm............................. 98
4.4 Computer Simulation....................................... 99
4.4.1 Computer Simulation: Sliding Control of a
Single-Axis Steering Mirror (No Integrator).......100
4.4.2 Computer Simulation: Sliding Control of a
Single-Axis Steering Mirror (Integral Control)....103
4.4.3 Computer Simulation: Adaptive Sliding Control
of a Single-Axis Steering Mirror................. 105
vi
5. HARDWARE IMPLEMENTATION
110
5.1 Hardware Description...................................... 110
5.1.1 Single-Axis Steering Mirror....................... 110
5.1.2 Hardware/Software Interface....................... 112
5.2 Estimated Plant Dynamics................................. 115
5.3 Experimental Results..................................... 119
5.3.1 Experimental Results: Sliding Control of a
Single-Axis Steering Mirror (No Integrator).... 119
5.3.2 Experimental Results: Sliding Control of a
Single-Axis Steering Mirror (Integral Control). 123
6. CONCLUSIONS....................................................... 126
APPENDIX
A. MATRIXx Block Diagrams for Computer Simulation of
Sliding Control of a Single-Axis Steering Mirror
(No Integrator) ............................................ 128
B. MATRIXx Block Diagrams for Computer Simulation of
Sliding Control of a Single-Axis Steering Mirror
(Integral Control)...........................................134
C. MATRIXx Block Diagrams for Computer Simulation of
Adaptive Sliding Control of a Single-Axis Steering Mirror.. 138
D. DSP32C Assembly Code for Experimental Test of
Sliding Controller (No Integrator)...........................141
E. DSP32C Assembly Code for Experimental Test of
Sliding Controller (Integral Control)........................149
CITED REFERENCES AND LITERATURE SURVEY ...............................157
INDEX.................................................................163
vii
FIGURES
Figure
2.1 Fixed structure system example: linear regulator..................... 8
2.2 Variable structure system example.................................... 8
2.3 Phase plane portraits: (a) trajectories for u(t) = -K structure,
(b) trajectories for u(t) = +K structure, and (c) trajectories
for VSS ................................................................ 10
2.4 Phase plane portrait of double integrator VSS........................ 12
2.5 Sliding condition: trajectory motion near hypersurface s(x; t) = 0 . . 15
2.6 Filippovs construction of sliding mode dynamics..................... 16
3.1 Second-order system trajectories and sliding surface
graphed in phase plane................................................ 24
3.2 Second-order system trajectories and sliding surface
graphed in error phase plane...........................................24
3.3 Interpretation of e(t) as the output of n-1 first-order
lowpass filters....................................................... 25
3.4 Command filter used to generate reference vector r(t)................... 36
3.5 Example 1 error phase plane portrait.................................... 37
3.6 Exponential convergence of tracking error e(t)
during sliding regime................................................. 37
3.7 Example 1 time histories of position error e(t), control
input u(t), and algebraic distance to the sliding surface s(t).........38
3.8 Example 1 time histories of F and | f - f |............................. 39
3.9 Example 1 time histories of sliding condition
s s (upper) and -Tj | s | (lower)...................................... 39
3.10 Interpretation of w(t) as the output of m first-order
lowpass filters....................................................... 42
3.11 Interpretation of w^ as the output of m-i first-order lowpass
filters in series with i filtered differentiators.............. 45
3.12 Frequency response of.................................................. 47
P + A.
3.13 Frequency response of ............................................. 47
p + A,
3.14 Filtering of s(e; t) for integral control of second-order system....48
3.15 Frequency response of 2_ .......................................... 49
(p + M
3.16 Scalar s(t) for (a) example 1: control without an integrator
and (b) example 2: integral control............................... 49
3.17 Position error e(t) for (a) example 1: control without an
integrator and (b) example 2: integral control.................... 50
3.18 Sliding surface for second-order system.............................. 51
3.19 Sliding surface with boundary layer.................................. 51
3.20 Signum function (discontinuous)..................................... 52
3.21 Saturation Function (continuous).......................................52
3.22 Interpolation of control u(t) inside boundary layer................... 52
3.23 Example 3 (time-invariant boundary layer) time
histories for control input u(t), position error e(t), and
scalar s(t)......................................................... 54
3.24 Structure of closed loop error dynamics............................... 59
3.25 Block diagram of boundary layer dynamics.............................. 60
3.26 Boundary layer dynamics with control gain uncertainty................. 62
3.27 Example 4 (time-varying boundary layer) time histories
for control reference position r(t), reference velocity r (t),
and scalar s(t)..................................................... 65
3.28 Example 4 (time-varying boundary layer) time histories
for control input u(t) and position error e(t).................... 66
4.1 Steering mirror used in an optical alignment system................... 76
4.2 Single-axis steering mirror........................................... 77
4.3 Steering mirror capacitor plate sensor (top view)......................77
IX
4.4 Symbolic representation of steering mirror assembly..................... 78
4.5 Free body diagram of steering mirror assembly frame..................... 79
4.6 Free body diagram of steering mirror assembly composite panel .... 79
4.7 Free body diagram of steering mirror assembly mirror.................... 79
4.8 Steering mirror assembly frequency response.
Input: actuator torque. Output: panel-to-frame angle (x2 Xj) . . 82
4.9 Steering mirror assembly frequency response.
Input: actuator torque Output: inertial mirror angle (x3)............ 82
4.10 Time histories for reference vector r(t)............................... 94
4.11 Frequency response of differentiating filter........................... 97
4.12 Trapezoidal numerical integration...................................... 98
4.13 Computer simulation: sliding controller (no integrator)
Time histories of mirror position x(t) and position error e(t).
Input: 1 mrad 10 Hz square wave..................................... 101
4.14 Computer simulation: sliding controller (no integrator).
Time histories of scalar s(t) and rate error e (t).
Input: 1 mrad 10 Hz square wave.................................... 102
4.15 Sliding surface for integral control................................... 103
4.16 Computer simulation: sliding controller (integral control).
Time histories of mirror position x(t) and position error e(t).
Input: 1 mrad 10 Hz square wave..................................... 104
4.17 Computer simulation: adaptive sliding control test #1.
Time histories of mirror position x(t), scalar s(t), and
distance to boundary layer sA(t).....................................106
4.18 Computer simulation: adaptive sliding control test #1.
Time histories of parameter estimates................................ 107
4.19 Computer simulation: adaptive sliding control test #2.
Time histories of mirror position x(t) and distance to
boundary layer sA(t)................................................. 108
4.20 Computer simulation: adaptive sliding control test #2.
Time histories of parameter estimates................................ 109
x
5.1 Single-axis steering mirror used in hardware implementation.............Ill
5.2 Steering mirror similar to one used in hardware
implementation with cover removed to show composite
panel and moving coil actuators..................................... 112
5.3 Experiment hardware setup.............................................. 113
5.4 Steering mirror open loop frequency response........................... 116
5.5 Experimental frequency response: sliding
controller (no integrator).......................................... 120
5.6 Experimental time response: sliding controller
(no integrator). Input: 10 Hz 1 mrad square wave.................121
5.7 Experimental time response: sliding controller
(no integrator). Input: 10 Hz 1 mrad sine wave.....................122
5.8 Experimental frequency response: sliding
controller (integral control)........................................123
5.9 Experimental time response: sliding controller
(integral control). Input: 10 Hz 1 mrad square wave..............124
5.10 Experimental time response: sliding controller
(integral control). Input: 10 Hz 1 mrad sine wave.................. 125
A1 MATRIXx block diagram of the top level system for
sliding control of a steering mirror (no integrator)...............129
A2 MATRIXx block diagram of sliding controller (no integrator)....... 130
A3 MATRIXx block diagram of control discontinuity function k(x).....131
A4 MATRIXx block diagram of truth sensor used with sliding
controller (no integrator)...........................................131
A5 MATRIXx block diagram of steering mirror dynamics..................132
A6 MATRIXx block diagram for digital-to-analog converter..............133
A7 MATRIXx block diagram for reconstruction filter
(5 kHz, 4th order Butterworth)...................................... 133
A8 MATRIXx block diagram for analog-to-digital converter............. 133
A9 MATRIXx block diagram for anti-aliasing filter
(5 kHz, 4th order Butterworth)...................................... 133
xi
B1 MATRIXx block diagram of the top level system for sliding
control of a steering mirror (integral control)..................... 135
B2 MATRIXx block diagram of sliding controller (integral control)...........136
B3 MATRIXx block diagram of truth sensor used with integral control ... 137
Cl MATRIXx block diagram of adaptive sliding control of
single-axis steering mirror.........................................138
C2 MATRIXx block diagram of adaptive sliding controller..................... 139
C3 MATRIXx block diagram of simplified steering mirror dynamics
used for adaptive sliding system....................................140
xii
TABLES
Table
4.1 Mirror assembly parameter values.................................... 80
4.2 Eigenvalues of mirror assembly...................................... 81
4.3 Actuator parameter values........................................... 84
4.4 Position sensor specifications...................................... 85
4.5 Software/hardware interface specifications.......................... 86
4.6 True and estimated parameter values ................................ 89
ACKNOWLEDGEMENTS
I would like to thank the Martin Marietta Corporation for sponsoring my
graduate work at University of Colorado through their program for study under
company auspices.
Dr. Jan Bialasiewicz, my thesis advisor, provided helpful suggestions
throughout my thesis research and gave me the freedom to pursue my interests.
The United States Army Strategic Defence Command (USASDC) provided
funding for portions of this research as part of an alternate controller study conducted
as part of the Rapid Retargeting Precision Pointing (R2P2) program at Martin Marietta.
Leon Riley at USASDC suggested attending the Nonlinear Control System Design
short course at University of California at Berkeley (July 31 August 4, 1989). It was
at this week-long course, co-taught by Jean-Jacques Slotine and Karl Hedrick, where I
was introduced to sliding control.
Excellent hardware and computer facilities were provided by the R2P2 program.
I would like to acknowledge the following people associated with R2P2: Dr. Dale
Neal is program manager. John Schwartz is technical director. Mark Hammond and
Alex Hubert designed the steering mirror used in the hardware experiments.
(Additional thanks to Mark Hammond for providing the steering mirror assembly
drawings.) Greg Rowe, Kelly Appleby, and Charles Banks worked on the design
and build of the software/hardware interface electronics. Chris Pettit provided
optics support Pam Alstott did the troubleshooting of the motor amplifiers. Jim
Harrer did the capacitor plate optimization study.
For their assistance during the literature research phase of this thesis, I would
like to thank Carol Robbins and Mark Merwin at the Martin Marietta Research Library.
xv
CHAPTER 1
INTRODUCTION
1.1 Overview
Sliding control offers a straightforward approach to robust control of nonlinear
as well as linear systems in the presence of external disturbances and parameter
variations. The name refers to the behavior of the state trajectory which "slides" along
a discontinuity defined by a hypeisurface (also known as a sliding surface) in state
space.
Historically sliding control has its origins in the Soviet Union, where much of the
early research was conducted. In what can be termed "classical" sliding control,
"perfect" tracking is achieved at the cost of introducing a high-frequency component in
the control variable. The two major drawbacks in implementing a classical sliding
controller are:
(1) There is a reaching phase in which a trajectory originating off the surface
tends toward the surface. During this phase the trajectory is sensitive to
external disturbances. (The excellent disturbance rejection property provided
by the sliding mode is not realized until the surface is reached.) Furthermore,
convergence to the sliding surface may only be asymptotic.
(2) Ideally, switching in the neighborhood of the surface occurs infinitely fast.
However, in practice switching can only be performed at finite rates.
Nonidealities such as delays and hysteresis associated with hardware result in
"chattering" along the surface. Such high frequency control activity may
excite unmodeled high frequency dynamics.
In 1983 Jean-Jacques Slotine published papers (references [49] and [52]) in
which he presented an approach to sliding control that could overcome both
drawbacks. His methodology is centered around the concept of a time-varying sliding
surface and approximating discontinuous control by a continuous one. Tracking
accuracy is traded against robustness to high-frequency unmodeled dynamics.
Slotine has extended his early work to include sliding observers (references [14]
and [37]) and has introduced an adaptive mechanism in the form of on-line parameter
estimation (reference [50]). His approach to sliding control has been applied to a wide
variety of hardware including robotic manipulators (references [4] and [52]),
unmanned underwater vehicles (references [18] and [62]), and automobile automatic
transmissions.
This thesis presents an application of the sliding control methodology of
Jean-Jacques Slotine as a single-axis steering mirror adaptive controller.
2
1.2 Thesis Outline
Chapter 2 begins with an introduction to the class of control systems known as
variable structure systems (VSS). To illustrate the VSS design philosophy, control of
a double integrator plant using a fixed structure system (a linear regulator) is contrasted
with control using a variable structure system created by adding simple switching logic
to the linear regulator. Next the concept of a sliding mode is discussed in a qualitative
sense using the same double integrator example.
Mathematical existence conditions for a sliding regime are then presented.
Equations of motion in the sliding mode are derived using the concept of equivalent
control. Two fundamental sliding mode properties are shown: (1) order reduction of
the system equations of motion, and (2) disturbance rejection.
The sliding control methodology of Jean-Jacques Slotine is presented in
chapter 3. First sliding control laws are developed for a general class of n* order
nonlinear systems using a discontinuous switching control. Numerical examples are
provided for a second-order system with and without integral control. System
behavior in the reaching phase and chattering are illustrated.
Next, the control discontinuity is smoothed using a boundary layer. The
relationship between boundary layer thickness and bounds on tracking error is shown.
Boundary layer thickness is then made time-varying. Balance conditions relating
tracking precision, control bandwidth, and parameter uncertainty are derived. Time
varying boundary layer simulation results are interpretted.
3
Adaptive sliding control is discussed. Equations for on-line parameter estimation
are derived based on Lyapunov stability theory. Adaptive sliding control performance
is evaluated.
In chapter 4 a computer simulation case study is considered. A single-axis
steering mirror, including high frequency resonant modes, is described and its
equations of motion are defined. This mirror "truth model" also includes actuator and
sensor dynamics, actuator saturation, analog-to-digital and digital-to-analog
quantization, and digital processing delays.
The following implementation issues are addressed: how to generate a reference
vector in real time, use of a differentiating filter to obtain rate information when no rate
sensor is available, and factors limiting the highest obtainable controller bandwidth
such as actuator torque authority, unmodeled dynamics, parametric uncertainties,
sampling rate, and digital processing delays.
Hardware implementation of sliding control of a single-axis steering mirror is the
subject of chapter 5. Laboratory experiments were performed using a digital signal
processor to implement the controller at a 12.5 kHz sampling rate. This chapter
describes the hardware used in the experiment. Experimental results are presented:
tracking performance, disturbance rejection, and frequency response.
4
1.3 Notation
A matrix (plain text upper case letters)
X vector (bold-faced lower case letters)
XT vector transpose
x() the nth derivative of variable x (superscript in parentheses)
xn variable x raised to the nth power (no parentheses for exponent)
r reference signal (commanded position)
r reference vector (commanded state)
e = (r x ) tracking error (scalar)
e = (r x) error vector
exp (u) eu where: e = lim (1 + k )1/k k -* 0
p = d/dt differential operator
s(e; t) algebraic distance to sliding surface (scalar) (Not the Laplace operator.)
S(t) sliding surface (upper case) S(t) = s(e; t) = 0
sgn (x) signum function sgn(x) = (+1 x > 0 1-1 x < 0 + 1 xÂ£+l
sat (x) saturation function sat(x) = X -1 < X < +1 -1 X<-1
= defined as
Rn n-dimension Euclidean space
R+ non-negative real numbers
det A determinant of n x n matrix A
5
I
identity matrix ajj =
1 i = j
0 i ^ j
a b vector dot product
binomial coefficient :
i! (n-i)!
[ A | B ] matrix containing the columns of matrices A and B
0
convolution operator
y(t) z(t) =
l
y(x) z(t x) dx
NOTE: To avoid confusion when referencing between articles written by Slotine
and this thesis, be aware that Slotine defines tracking error as actual
position minus desired position, whereas in this paper the tracking error is
defind as desired position minus actual position. As a result, there will be
sign differences when comparing many of the equations.
6
CHAPTER 2
VARIABLE STRUCTURE SYSTEMS WITH SLIDING MODES
2.1 An Introduction to Sliding Modes
Sliding control systems form a subset of a broader class of control systems
known as variable structure systems (VSS). In VSS, the controller is allowed to
change its structure according to a prescribed switching logic. The design problem is
to define the structure and associated switching logic. The basic VSS philosophy can
be seen by contrasting a variable structure system with a fixed structure system such as
a linear regulator. Consider a double integrator plant
x = u(t) (2.1)
Create a linear regulator by placing a proportional-plus-derivative (PD) controller
in series with the plant as shown in figure 2.1. Close the loop to create error signal e,
the difference between the reference position r and the actual position x (e = r-x). Note
that for the regulator problem r = 0, therefore e = -x. The controller creates input u(t)
as follows:
u(t) = Dx Px = De + P e (2.2)
where D and P are positive constants. The characteristic equation for this closed loop
system is p2 + Dp + P = 0. Parameters P and D can be selected to achieve the desired
closed loop poles.
Figure 2.1. Fixed structure system example: linear regulator.
The point of interest for this discussion is that the controller has a single fixed
structure. Regardless of the state of the system, input u(t) is calculated according to
equation (2.2).
A simple variable structure system can be created by introducing switching logic
in the form of a signum function (see figure 2.2) such that
u(t) = K sgn (De + P e)
(2.3)
where the signum function sgn (x) = | +* ^ < 0 ^ K is a positive constant.
In the operating region of the state space, K Â£ | emax | + "H. where tj is also a positive
constant (This condition will be explained later.)
Controller
Plant-
Figure 2.2. Variable structure system example.
8
There are two distinct structures: u(t) = +K and u(t) = -K. Error phase plane
trajectories can be calculated for each of these structures. First write the system
equation in terms of error signal e = -x as follows:
e = -u(t) (2.4)
By the chain rule
e
de de de
dt de de
= -u(t)
(2.5)
Separating variables and integrating
j ede = j u(t)de
e2 = -2 u(t) e(t) + c
where c is a constant of integration.
Let e(to) = eo and e(to) = 0 and solve for the constant of integration.
For u(t) = +K e2 = -2K (e eo) See Figure 2.3a (2.6a)
For u(t) = -K e2 = 2K (e eo) See Figure 2.3b (2.6b)
Phase plane portraits of each structure consist of families of parabolas shown in
figure 2.3 (a and b). Neither structure is asymptotically stable. However, asymptotic
stability is achieved using the switching function defined in equation (2.3) which
selects the control structure based on the following switching logic:
f+K if (De + Pe) > 0
u(t) =
\ -K if (De + Pe) < 0
(2.7)
9
When graphed in the error phase plane this switching logic defines a switching
line given by
s(e;t) = e + e = 0
D
(2.8)
This switching line appears in figure 2.3 (c), which shows a phase plane portrait
illustrating the asymptotically stable behavior of the variable structure system. An
initial error state not contained on the switching line moves along a parabolic trajectory
until it reaches the switching line. It then moves along that line to the origin.
(b) u(t) = +K
Figure 2.3. Phase plane portraits: (a) trajectories for u(t) = -K structure,
(b) trajectories for u(t) = +K structure, and (c) trajectories for VSS.
One VSS design approach is to combine structures in a way that exploits desirable
properties of each of the structures. For instance, a structure that provides a fast
transient response could be combined with a structure that provides low overshoot and
another structure that offers zero steady state error for a step position command.
10
An interesting consequence of this approach is that a variable structure system can
possess new properties not present in any of the structures used. For example, a
stable system can be created using two unstable structures as shown above.
An advantage of using a variable structure controller (VSC) is that it allows the
designer to compose a desired trajectory from sections of trajectories of different
structures. And, fundamental to this paper, it is possible to obtain a trajectory not
inherent in any of the structures the sliding mode. Although not all variable
structure systems contain sliding modes, the majority of research in VSS has focused
on deliberately introducing sliding modes. As a consequence, in much of the literature
the terms sliding control system and variable structure system have become
synonymous. Throughout this paper, however, the terms will not be used
interchangeably; sliding control systems will refer to a subset of variable structure
systems those systems which contain sliding modes.
To see how sliding motion occurs in a qualitative sense, consider a specific pair
of initial conditions using the double integrator VSS example. For the sake of
illustration, let the initial conditions be e(0) = eo, where eo > 0, and e(0) = 0.
Also define X = P/D.
As shown in figure 2.4, the switching line divides the error phase plane into two
regions: an upper region (unshaded) in which u(t) = +K, and a lower region (shaded)
in which u(t) = -K. For this example, the initial conditions result in u(0) = +K and the
state moves along a parabolic path toward the switching line. This is the reaching
phase, in which a trajectory originating away from the switching surface (in this case
11
the surface is a line), tends toward the surface. During the reaching phase the
trajectories are sensitive to parameter variations and external disturbances.
All trajectories of each of the two structures are directed towards the switching
surface. Therefore, regardless of initial conditions, all states reach the surface and
remain there. (There are no trajectories pointing away from the surface.) Once on
the surface, the system's behavior enters the sliding regime or sliding mode. In this
mode, the equation of the surface defines the system dynamics. Therefore, the sliding
surface is both a place and a dynamics.
Figure 2.4. Phase plane portrait of double integrator VSS.
The eiror state slides on the surface from the point it intitially encounters the
surface to the origin. The triangular waveform shown on the surface in figure 2.4
represents a real-world phenomenon known as chattering. In the ideal case control
switching occurs infinitely fast. However, in practice switching can only be
performed at finite rates. Delays and hysteresis associated with switching hardware
12
result in trajectories that move away from the surface before being driven back through
the surface to a finite distance away from the surface on the opposite side. The
"average" motion is one of sliding, but the phase plane portrait shows a jagged
trajectory. Use of the term chattering to describe this phenomenon can be traced to the
noise generated by switching elements such as relays operating at high rates.
2.2 Mathematical Existence Conditions for a Sliding Regime
This section is based on the treatment of existence conditions presented in Control
Systems of Variable Structure by U. Itkis (reference [27]). To begin this discussion
define three terms:
representative Point in Rn defined by state vector x(t) of a dynamical system.
point (RP) Motion of the RP defines a trajectory of the system.
hypersurface A hypersurface is a generalization of the concept of a surface in
three-dimensional Euclidean space to a surface in n-dimensional
Euclidean space. An algebraic hypersurface is the graph in
n-dimensional Euclidean space of an equation of the type
f(xj, x2,..., xn) = 0 where f is a polynomial in xj, x2,..., xn.
hyperplane A hyperplane is a generalization of the concept of a plane in
three-dimensional Euclidean space to a plane in n-dimensional
Euclidean space. An n-1 dimensional hyperplane consists of the
set of n-dimensional vectors x satisfying c x = a where c and
a are a constant vector and scalar, respectively. A hyperplane is
a subspace only if a = 0. (A subspace must contain the zero
vector.)
Consider the general system of differential equations
where x = [xlf.... xn]T is a state vector.
i = 1, n
(2.9)
13
Assume that the right-hand sides of these equations are discontinuous across a
specific hypersurface s(x; t) = 0 in such a way that the left- and right-hand limits of
fj(x; t) with i = 1.n exist as the representative point (RP) approaches s(x; t) = 0
from either side.
lim fi (x; t) = ff(x; t) (2.10)
s -0
lim fj (x; t) = fi+(x; t)
8 > +0
(2.11)
where, in general, ff (x; t) fj+(x; t).
The time derivative of the function s(x; t) along the trajectories of the system is
ds y os axj y os f
dt 8xi dt ~ .j 9xi
where f = ... fn]T is a phase velocity vector.
ds dxi
ds
(2.12)
The existence condition for a sliding regime on the hypersurface s(x; t) is
lim
s - +o
ds n
<0<
dt
lim
8 -0
ds
dt
(2.13)
A more compact, equivalent expression is
lim s
s - 0
ds
dt
<0
(2.14)
Inequality (2.14) can also be written as
lim
s > 0
(2.15)
14
Trajectory motion necessary for sliding to occur is illustrated in figure 2.5.
Figure 2.5. Sliding condition: trajectory motion near hypersurface s(x; t) = 0.
2.3 Equations of Motion in the Sliding Mode
Dynamics of systems with switched control laws represent differential equations
with discontinuous right-hand sides. Many properties from ordinary differential
equations, such as the existence-uniqueness theorem, do not exist for this class of
differential equations.
15
In the early 1960s, Russian mathematician A.F. Filippov set forth a rigorous
mathematical definition of motion in a sliding regime (see refererence [24]). He
proposed and formally justified the following geometric construction (see figure 2.6)
of sliding motion:
f = pr + (1 pf+) (2.16)
where
f is the phase velocity vector for motion in the sliding regime
(vector lies in the tangent plane).
f is the phase velocity vector for motion approaching the surface
from "below."
lim fi (x; t) = ff(x; t) (2.10)
s --o
f+ is the phase velocity vector for motion approaching the surface
from "above."
lim fj (x; t) = fi+(x; t) (2.11)
8 +0
NOTE: In general, ff (x; t) fj+(x; t).
n is a normal to hypersurface
p is the part of each oscillation period spent "below" the
hypersurface (i.e. s(t) < 0).
Tangent Plane
Hypersurface
s(x) 0
Figure 2.6. Filippov's construction of sliding mode dynamics.
16
Filippov's method considers the high frequency oscillations about an infinitesimal
region of the hypersurface. Additional insight into the general behavior of this motion
can be obtained by considering the "average" component of the velocity vector along
the surface. This formal technique is called the equivalent control method. The
development below is based on Drazenovic (reference [19]) and El-Ghezawi, Zinober,
and Billings (reference [21]). This approach assumes that during sliding the
representative point moves on s(x; t) = 0 never leaving the surface. Mathematically,
this is represented by the vanishing of the function s(x; t) and its derivative s(x; t).
Consider the multi-input system described by the following set of n first-order
differential equations:
where the state x is an n-vector, the control u is an m-vector, the disturbance f is a
p-vector, and A, B and D are matrices of proper dimensionality.
For a hypersurface use a hyperplane passing through the origin defined by
x=Ax+Bu+Df
(2.17)
s(x; t) = C x = 0
where C is an m x n constant matrix with linearly independent rows.
(2.18)
Also impose that the time derivative of s (x; t) vanishes.
(2.19)
This condition states that the RP remains on the surface.
17
Each component of control vector u(t) is discontinuous across the hypersurface.
I Uj+(x; t) for s(x; t) > 0
Ui (x; t) = (
\ uf(x; t) for s(x; t) < 0
i= 1,2......m
(2.20)
Because u(x; t) is not defined on the surface s(x; t) = 0, introduce the concept of an
equivalent control , which is the continuous control law that would maintain
s(x; t) = 0 if the dynamics were exactly known.
During sliding motion, equation (2.17) becomes:
x = Ax + Bueq + Df (2.21)
From equation (2.19)
Cx = CAx + CBueq + CDf=0 (2.22)
Provided that (CB)'1 exists (i.e., det (CB) 0), equivalent control can be written as
ueq = -(CB)-1 C (A x + D f) (2.23)
Insert equation (2.23) into equation (2.21) and write the equations for motion in the
sliding mode.
x = (i B (C B)-^) (A x + D f) (2.24)
C x = 0 (2.25)
Equation (2.24) can be expanded to show expressions for motion caused by system
states and motion caused by external disturbances.
x = (I B (C B)'1 C) A x + a-BtCB^CJDf (2.26)
I__________________I I______________________I
motion caused by motion caused by
system states external disturbances
18
2.4 Order Reduction in the Sliding Mode
Order reduction is a fundamental property of VSS in the sliding mode. Again
consider the multi-input system described by equation (2.17). The system has n states
and m inputs. From equations (2.25) and (2.26), sliding motion due to system states
can be expressed as follows:
Because matrix C contains m linearly independent rows, equation (2.28) allows m
states to be written in terms of the remaining n-m state variables. Therefore sliding
motion is constrained to belong to Rn'm Euclidean space. In other words, the state
vector is contained to exist in the null space of matrix C, which is an (n-m)111
dimensional subspace.
System order reduction and disturbance rejection properties can also be proved
using projector theory, which is a powerful approach to studying VSS. It provides a
geometric point of view for understanding VSS and expands the theory. For example, it
provides an expression for equivalent control if CB is singular (see equation (2.23)).
A detailed discussion including proofs of projector theory applications to VSS analysis
and design is given by El-Ghezawi et al. in reference [21].
x = (I B (C B)*1 C ) A x
C x = 0
(2.27)
(2.28)
19
2.5 Disturbance Rejection in the Sliding Mode
As mentioned in section 2.1, when a trajectory that originates away from the
surface tends toward the surface it is sensitive to parameter variations and external
disturbances. Disturbances encountered during this reaching phase have an effect in
determining the initial conditions of the sliding mode.
However, once in the sliding mode, the system obtains excellent disturbance
rejection properties. In fact, under well-defined conditions, the system in the sliding
mode is invariant to external disturbances. This section shows the conditions for which
disturbances vanish from the sliding mode equations. It is based on Drazenovic
(reference [19]).
Again consider the multi-input system described by matrix equation (2.17). From
equation (2.26) the equation of sliding mode motion caused by external disturbances is
as follows:
x = (i B (C B)_1c) D f
(2.29)
For invariance to external disturbances, equation (2.29) must equal zero:
(i B (C B)_1C) D f = 0
(2.30)
Expanding and rearranging equation (2.30) yields
D f = B (C B)'!C Df
(2.31)
20
The necessary condition to satisfy equation (2.31) is that vector D f can be written
in the form
D f = B m (2.32)
where m is an m x 1 vector.
Equation (2.32) simply asserts that vector D f must be in the range space of
matrix B. This is also a sufficient condition which can be proved by inserting the
expression for D f from equation (2.32) into equation (2.31) as follows:
B m = B (C B)-!C D f
m = (C B)_1C D f (2.33)
Equation (2.32) can be satisfied for all possible combinations of f if all columns of D are
linear combinations of the columns of matrix B. This requirement can be written as
rank [ B | D ] = rank B (2.34)
Note that invariance to external disturbances does not depend on matrix A, only on
B and D, the matrices that define how the controls and disturbances enter into the system
equations.
21
CHAPTER 3
SLIDING CONTROL: METHODOLOGY
OF JEAN-JACQUES SLOTINE
This chapter summarizes the methodology of Jean-Jacques Slotine presented in
references [4], [48] [53], and [62]. Here the single-input single-output (SISO) case
is addressed although this methodology can be extended to multi-input multi-output
systems (MIMO) as shown in references [49] and [52].
3.1 Sliding Control of Nonlinear Systems
Consider the n* order dynamic system
xW(t) = f(x;t) + b(x;t)u(t) (3.1)
where x(t) is the output of interest, x = [ x x... x^'1^ ]T is the state vector and u(t)
is the control input The function f(x; t) describes the plant dynamics which are, in
general, nonlinear. These dynamics are not known exactly, but the extent of
imprecision | Af | on f(x; t) is bounded by a continuous function of x and L Control
gain b(x; t) also is not known exactly, but is of constant sign (e.g. positive) and is
bounded by a continuous function of x and L Note that functions f(x; t) and b(x; t)
are continuous in x.
The design goal is to control the system such that the state x(t) tracks a
reference state r(t), i.e., a commanded trajectory, in the presence of imprecision on
f(x; t) and b(x; t). To obtain tracking for all t > 0 using a bounded control u(t), the
initial error state must be zero
e|t = o = 0 (3.2)
where error vector e = (r x) = [ e e ... e*0'1) ]T.
If the initial error is not zero, tracking can only be achieved after a transient
This is because given finite control u(t), state variables cannot exhibit jump
discontinuities. For example, in a second-order system, position and velocity cannot
instantaneously change from their initial values to arbitrary commanded values.
Define a time-varying sliding surface S(t) in state space Rn by the scalar
equation s(e; t) = 0 with
s(e;t)=|^- + x) ^(t) X>0 (3.3)
Note that in chapter 2 (sections 2.2,2.3, and 2.4), the sliding surface S(t) was
defined as a function of state x(t)
S(t) = s(x; t) = 0
For trajectory following, expressing the sliding surface in terms of x(t) is
cumbersome and introduces unnecessary complexity. For example, figure 3.1 shows
the sliding surface, trajectories for an arbitrary reference state r(t) and system
state x(t) trajectories for a second-order system graphed in the phase plane. In the
interest of notational and analytical simplicity, in equation (3.3) the sliding surface
23
equation has been transformed from a function of x(t) to a function of e(t), with e = 0
as the equilibrium point of interest for the nonlinear system. As a result, when
graphed in the error phase plane the sliding surface appears time invariant Regardless
of r(t) and x(t) the surface passes through the origin. To illustrate the benefit, the
system shown in figure 3.1 is regraphed in the error phase plane in figure 3.2.
x
Figure 3.1. Second-order system trajectories and sliding surface graphed in
phase plane.
Figure 3.2. Second-order system trajectories and sliding surface graphed in
error phase plane.
24
With a zero initial tracking error (equation (3.2)), the task of tracking the
commanded trajectory is equivalent to remaining on surface S(t) for t > 0. This is
equivalent to obtaining position error e(t) by filtering the the scalar s(e; t) using a series
connection of n-1 first-order lowpass filters with break frequency \ radians/second as
illustrated in figure 3.3. Also note that s = 0 represents a differential equation with
unique solution e = 0.
n-1 filter blocks
jl
dt
Figure 3.3. Interpretation of e(t) as the output of n-1 first-order lowpass filters.
3.1.1 Sliding Condition
Choose a control law u(t) such that outside surface S(t) the following inequality
holds true:
s2 (e; t) = s (e; t) s(e; t) Â£ T| |s| (3.4)
where T| is a positive constant that represents the minimum velocity at which the
representative point moves towards the sliding surface from off the surface.
Inequality (3.4) is the sliding condition. (Also see inequalities (2.15), (2.16),
and (2.17).) It states that the squared distance to the surface decreases along all
system trajectories. In other words, all trajectories point toward the surface. If
inequality (3.4) is satisfied, the surface becomes an invariant set. (A set G is an
25
invariant set for a dynamic system if every system trajectory which starts from a point
in G remains in G for all future time.)
Positive constant tj has units of rate and places an upper bound on the time
required to reach the surface from a position off the surface. To formally define the
meaning of T) assume that initially the error state is not on the surface: s(t=0) > 0. Let
Veach be the time required to reach the surface s(t) = 0.
Integrate inequality (3.4) between t = 0 and t = t^j,. First note that
1 d 2/ ds
sz(e; t) = s
2 dt dt
Inequality (3.4) becomes
sgn(s) Â£ -T|
Here s > 0, therefore sgn(s) = +1.
Change the limits of integration
- s(t=0) ^ r treach
T\ U s s(t=0)
26
(3.5)
Now it is clear that the time required to reach the surface S(t) is proportional to
the initial position error and that T) represents the minimum rate at which the state
moves to the surface.
3.1.2 Derivation of Control Law u(t)
In the derivation of an expression for the sliding control law u(t), the
following notational shorthand will be used:
To obtain an expression for a control law u(t) that satisfies inequality (3.4),
first define a differential operator p = d/dt and rewrite equation (3.3) as
b 2 b(x; t) b h b(x; t) f 2 f(x; t) f 2 f(x; t)
s (e; t) =
(3.6)
where m = (n -1)
| | = binomial coefficient =
i! (m-i)!
m!
Take the first time derivative of s(e; t)
i 1
(3.7)
27
Noting that e() = - x(n), equation (3.7) can be rewritten as
s (e; t) = i
x() + 2 () X c<" * (3.8)
i 1 *
Insert the expression for x() from equation (3.1) and write
m
s (e; t) = r f b u(t) + Â£ (m) X* e (3.9)
i l '1 '
Note that is was only necessary to differentiate the scalar s(e; t) once
for the input u(t) to appear. The n* order tracking problem in x(t) has been replaced
by a first order stabilization problem in s(e; t).
The best available estimate of the plant dynamics is
x = f+bu(t) (3.10)
where the extent of imprecision of the estimate of f(x; t) is bounded by a continuous
function of x and t. That is, | f f | <, F. Also known are bounds on the value of
control gain b: b^ < b < b^. Note that F, bmin, and b^ are in general functions
of x and L That is, F s F(x; t), b^ e b^fx; t), and b^ = bmax(x; t).
Note that the dynamics in the sliding regime is described by the equation s = 0.
This condition will be used to find the approximate control u (t).
First consider the case in which b = b =1. With imprecise knowledge of the
plant dynamics, the best approximation u (t) of a continuous control law that
would achieve s (e; t) = 0 is
m
u (t) = r f (x; t) + X () ^ e('0 (3.!!)
28
To satisfy the sliding condition given by inequality (3.4) despite uncertainties in
the dynamics, add a term discontinuous across the surface s(e; t) = 0
u (t) = u (t) + k(x) sgn (s) (3.12)
where k (x) is the control discontinuity gain and the signum function sgn (s) = +1 for
s > 0 and -1 for s < 0.
Now consider the effects of the imprecision on the control gain b (x; t), which
represents a bounded multiplicative uncertainty. We have
0
Calculate control gain estimate b (x; t) as the geometric mean of the bounds
on the control gain.
b = (bmin bma*)1/2 (3.14)
This allows the introduction of the concept of a gain margin P(x; t) Â£ 1, defined as
P(x;t) = ( bmax / bjjun )1 (3.15)
Note that b P (x; t) = bmax.
Again adopt the abbreviated notation P = P(x; t). Bounds on the accuracy of
the control gain estimate can be written in terms of P as
*<*
P'1 Â£ Â£ < P (3.16)
Control law (3.11) must be modified to include the control gain estimate.
u (t) = b (u (t) + k(x) sgn (s)) (3.17)
29
Control law (3.11) must be modified to include the control gain estimate.
u (t) = b _1 (u (t) + k(x) sgn (s)) (3.17)
Control discontinuity gain k(x) must be chosen large enough to satisfy the
sliding condition
1 d -i
-----/p. *\ = c (v
2dt
s2 (e; t) = s (e; t) s(e; t) Â£ r\ | s |
(3.4)
To derive an expression for the minimum value of k(x), first insert the
expression for s(e; t) from equation (3.8) into inequality (3.4) and get
m \
rls(e;t) Â£ -r\\s\ (3.18)
Substitute the expression for u(t) from equation (3.17).
m \
i
i- r 1 ' /
Expand u (t) using equation (3.11).
^n> f- b b '1|r
+ X ()^ e^n |s (e; t) ^-T| | s|
(3.20)
i 1
30
Regroup terms.
H*l'i
m
i*n) + Z ( l^1 e(n' i}j jc k(x) s8n (s)j s(ei 0 ^ -Ti
Multiply both sides by -1 and regroup.
^ k(x) sgn(s) s(e; t) Â£
Ti|s| + ||f-f Js(e;t) + | 1
m
r + x (7p e(n'i)!
Multiply both sides by
b s(e; t)
and write
A / A
k(x)sgn(s) ^ ^-Tisgn(s) + f-^f + l^-1
r<> + X (jx* e^)
V i= 1
To create a group of terms equal to ^ -1) u(t), the equation (3.21) must be
rewritten to include the term
(H
Write f = f + (f f) and note that
4(f-,)+(S.,)(.!)
s(e; t)
(3.21)
(3.22)
31
Use equation (3.22) to rewrite inequality (3.21) to include u(t).
,(n-i)
U(t)
(3.23)
k(x) Â£ jj-T|+ Â£-(?-f)sgn(s)+lÂ£- 1 u(t)sgn(s)
(3.24)
To guarantee that inequality (3.4) is satisfied for s(e; t) > 0 and s(e; t) < 0 requires that
k(x) Â£ + ^ |f-fl +
From equations (3.10) and (3.16)
| f f | < F(x; t) and^- <, P
b
Therefore the minimum magnitude of k(x) needed to satisfy the sliding condition is
k(x)Â£p(Ti +F) + (P- l)|u(t)| (3.25)
The greater the uncertainties F and P, the greater the control discontinuity k
across the surface.
32
3.1.3 Example 1: Second-Order Nonlinear System
Consider the second-order system
x = f(x; t) + b u(t) (3.26)
= a(t) x | x | kj x k2 x3 + b u(t) (3.27)
where a(t) = | sin 2m | + 1, kj = 9, k2 = 3, and b = 16.
The best knowledge of the system dynamics is as follows:
x =* f(x; t) + b u(t) (3.28)
= -ax|x|-kix-k2X3 + b u(t) (3.29)
Parameter bounds from which parameter estimates can be made are available to
the control designer. The bounds are as follows:
1 Â£ a Â£ 2, 8 Â£ 12, lÂ£k2Â£3, and 15Â£bÂ£25 (3.30)
For parameter estimates, take the mean of the minimum and maximum of a, k1(
and k2. Take the geometric mean of the minimum and maximum of b.
a =1.5, ki = 10, k2 = 2, and b = 19.365 (b 1 = 0.0516 ) (3.31)
Define a sliding surface S(t) according to equation (3.3) with n = 2
s(e; t) = |^- + xje = e + Xe X > 0 (3.32)
The dynamics in the sliding mode are s(e; t) = 0. The first time derivative of s(e; t)
can be calculated as
s(e; t) = -j-( e + Xe ) = e + Xe (3.33)
dt
33
Substitute e = r x and write
s(e; t) = if x + Xe (3.34)
Substitute the expression for x from equation (3.26) and write
s(e; t) = if f(x; t) b u(t) + Xe (3.35)
If b = b = 1 and plant dynamics were known exactly, equation (3.35) could be
set equal to zero by letting u(t) = r f + X e. However, there are parametric
uncertainties the plant dynamics model.
With imprecise knowledge of the plant dynamics, the best approximation u (t)
of a continuous control law that would achieve s(e;t) = 0 is
u(t) = r-f+Xe (3.36)
To satisfy the sliding condition given by inequality (3.4) in the presence of
parameter uncertainties and with a control gain uncertainty (b(x; t) b(x; t)), modify
u(t) by adding a term discontinuous across the surface s(e; t) = 0 and then premultiply
^ -1
by b to produce control u(t).
u(t) = b 1 (u(t) + k(x) sgn(s)) = b 1 ( if f + Xe + k(x) sgn (s)) (3.37)
where the signum function sgn(s) = +1 for s > 0 and -1 for s < 0 and the magnitude of
control discontinuity gain k(x) is large enough to satisfy sliding condition (3.4).
34
A minimum magnitude for k(x) can be calculated from equation (3.25)
k(*)i|3(11+F)+(|3-l)|i(t)| (3.25)
Calculate function F(x; t), which bounds the magnitude of the plant dynamics
estimation error.
F(x; t) = (Umax a) x2 + (ki max ki) I X I + (k2 max k2) I X3 I
= 0.5 x2 + 21 x | + | x31 (3.38)
Calculate gain margin (3 as
P = (bmax / bmm)1/2 = (25 /15 )^ = 1.29 (3.39)
For this example, let tj = 0.1, X = 500 rad/sec, and define time constant
x = 1/X = 2 msec.
The control law is given by
u(t) = b A (u(t) + k(x) sgn(s))
= b1(ir-f+Xe + k(x) sgn(s))
= 0.0516 (ir + 1.5 x | x |+ 10 x + 2 x3 + 500 e + k(x) sgn(s)) (3.40)
with control discontinuity gain given by
k(x) = P (T) + F) + (P -1)lu|
= 1.29(0.1 + 0.5 x2 + 2|x| + |x3[) + (0.29)|u| (3.41)
To illustrate the reaching phase and exponential convergence of tracking error
during sliding, let the initial error be
e(0) = [ e(0) e(0) ]T = [ 0.1 0.0 ]T (3.42)
35
Let the desired position trajectory be a 10 Hz sinusoid of unit amplitude.
To generate the reference vector r(t) = [ r r r ]T, input the desired position
trajectory xd(t) into a second-order state variable filter as shown in figure 3.4. Use
bandwidth X and, for this example, set Â£ = 0.707 (Butterworth filter).
Figure 3.4. Command filter used to generate reference vector r(t).
An error phase plane plot (position error versus rate error) of the first
200 milliseconds of the system response is shown in figure 3.5. Time is introduced to
the portrait by small circled data points temporally spaced at 2 msec intervals. The
surface is reached at t = t^h = 14 msec. Once on the surface, the system enters the
sliding regime and the tracking error exhibits exponential convergence to the origin.
As illustrated in the time history plot given in figure 3.6, tracking error decays
as e(t) = ereach exp (-500 (t t^j,)) where ep.Hrh is the position error when the
surface was reached.
36
Figure 3.5. Example 1 error phase plane portrait
.014 .016 .018 .02 .022 .024 .026
Time (sec)
Figure 3.6. Exponential convergence of tracking error e(t) during sliding regime.
37
Steady state behavior begins at approximately t = 22 msec. Figure 3.7 shows
time histories for position error e(t), control input u(t), and distance to surface s(t) for
the time interval 22 msec <> t ^ 200 msec.
Figure 3.7. Example 1 time histories of position error e(t), control input u(t), and
algebraic distance to the sliding surface s(t).
38
Figure 3.8 illustrates the validity of using F(x; t) defined in equation (3.38) to
bound the error on the estimate of the plant dynamics. It shows F(x; t) and
| f(x; t) f(x; t) | plotted versus time. Clearly F > | f f |. Figure 3.9 shows that control
discontinuity gain k(x) given in equation (3.41) guarantees that the sliding condition is
satisfied. The upper plot shows s s versus time. The lower plot shows a time history
of T| | s |. As shown in the plots, s s < rj | s |.
Figure 3.8. Example 1 time histories of F and | f f |.
Figure 3.9. Example 1 time histories of sliding condition s s (upper)
and H l s | (lower).
39
3.1.4 Example 2: Alternate Solution for Second-Order
Nonlinear System (Integral Control)
Integral control can also be used. Define the variable of interest w(e; t) as the
time integral of the position error e(t)
w(e; t) =
f
e (x) dx
(3.43)
With respect to this variable, the system is third order. Define a sliding surface S(t) by
the scalar equation s(e; t) = 0 with
s(e; t)
yUx)fw(e;t)
e + 2Xe + X2 I
e (x) dx
(3.44)
Following the same procedure used in example 1, the first time derivative of s(e; t) is
s = e + 2Xe + X e
= r x + 2Xe + X2 e
= r f b u (t) + 2Xe + X2 e (3.45)
Equation (3.36) becomes
u(t)= r-f+2Xe + X2e (3.46)
from which control law u(t) can be written as
u(t) = b1 (u(t) + k(x) sgn(s))
= b 1 (r f + 2Xe + X2e + k(x) sgn (s)) (3.47)
40
3.1.5 Relating Bounds on Tracking Error to Distance to Surface S(t)
To make this discussion applicable to both integral control and control without
integral action, define w(e; t) as the variable of interest. For control without an
integrator, the variable of interest is the position error e(t). For integral control, the
variable of interest is the time integral of the position error.
1e(t) for control without an integrator
(3.48)
t
I e(x) dx for integral control
Jo
Also define the tracking error vector w as
w = [ w wO) w@)... w(n_1) ]T (3.49)
For control without an integrator
w = [ e eO) e<2)... e^1*1) ]T
For integral control
w =
Je(x) dx
o
e e
(i)
IT
e(n-2)
(3.50)
(3.51)
NOTE: When applying integral control to an n* order system as defined in
equation (3.1), the order of a system is increased by one when the
equations of motion are written with respect to the integrated enror.
41
Again, adopt a notational shorthand such that w(t) s w(e; t) and s(t) = s(w; t).
And if there is no possibility of confusion, the time dependence also will not be stated
explicitly and simply s and w will be used.
The sliding surface S(t) can be defined as a function of the variable of interest.
Let the surface be defined by the scalar equation s(t) = 0 with
s(t)=(^r- X>0 (3.52)
where w(t) is the variable of interest from equation (3.48) and, for a n111 order dynamic
system as defined in equation (3.1), m = n-1 when no integrator is used and m=n for
integral control.
Bounds on s (t) can be directly translated into bounds on the tracking error
vector w. As illustrated in figure 3.10, tracking error w(t) is obtained from s(t)
through a series connection of m first-order lowpass filters.
w(e;t)=----------s(t) where ps^- (3.53)
(p + X )m dt
1 yir i y2 r i
p + X p + X p + X
ym = w
m filter blocks
J P"
_d
dt
Figure 3.10. Interpretation of w(t) as the output of m first-order lowpass filters.
42
Let w(0) = 0 and let yj(t) be the output of the first filter.
yi(t) = L-1
I-\ s(t) = I exp (-X(t x)) s(x) dx
IP + *I Jo
(3.54)
If s(t) is bounded such that | s(t) | $ Q,
Iyi(t)| so
(3.55)
lyi (01 S 1 -exp(-Xt))
K
I yi (01 s ^
A
(3.56)
For the second filter
Y2(t) =
-X (t x)) yi(x) dx
Apply the bounds from (3.56) and write
| y2(t) | S f exp (-X. (t x)) dx
Wo
I y2 (t) | S --(l -exp(-Xt))
X X
I y2 (t) I s *
x
43
In general, for filter number i the output is bounded as
I yi (t) I = I w(t) |
X
(3.57)
For filter number m, the output is bounded as
I ym (0 I = I w(t) I Â£
X
(3.58)
Define a new variable as
E =
xm
and write
I w(t) | Â£ e
This is the requirement for tracking to within a guaranteed precision E.
The i* derivative of the variable of interest w(t) can be written as
(3.59)
(3.60)
w(9 = p* w(t) = s(t) = ----r -rs(t) (3.61)
(p + X)m (p + X)m (p + X)'
with p defined as a differential operator.
This can be inteipretted as a series connection of m-i first-order lowpass filters
in series with i filtered differentiators as illustrated in figure 3.11.
44
(m i) filter__________| |_______ i filtered
blocks differentiator blocks
Figure 3.11. Interpretation of wW as the output of m-i first-order lowpass filters in
series with i filtered differentiators.
In references [4] and [51], an expression for the bounds on the magnitude of the
i^ derivative of the variable of interest is obtained through the following three steps.
Step 1
Variable ym_i (t) is the input to the first filtered differentiator. From equation (3.57),
I ym i (0 I
(3.62)
Step 2
Note that
P
p + X
p + X X X
p + X p + X
(3.63)
Step 3
Bounds on s(t) are related to bounds on the the variable of interest as follows:
w(i)|sK)'(^
w(0 | < V X* |-^-J
| w(') | < (2X) e
V t > 0, | s(t) | < => V t > 0, | wW(t) | < (2X) e for i = 0,..., m (3.64)
where e = .
Xm
45
It is not clear why the maximum magnitude of E is taken to be 2. A frequency
p + X
response plot for 2 is given in Figure 3.13, which shows that it is a high pass filter
p + X
of bandwidth X and unity pass band gain. It does not amplify. The amplitude of the
output is less than or equal to the amplitude of the input.
Therefore, the following stronger statement on the bounds of the i* derivative
of the variable of interest holds:
V t Â£ 0, | s(t) | < C> => V t Â£ 0, | w^(t) | Â£ X1 e for i = 0,..., m (3.65)
Inequalities (3.64) and (3.65) can also be misleading. For example, consider
tracking error bounds for Example 1 control without an integrator (section 3.1.3) and
Example 2 integral control (section (3.1.4)). Inequality (3.64) states that position
error with an integrator is guaranteed to be only half as good as without.
Example 1: n = 2 w = e m = (n-1) |e| = |w|<
Example2: n = 2 w = I e(x)dx m = n = 2 | e | = | w11 Â£ 2X ^- =
Jo *2 X
Additional insight can be gained from the frequency response plots of the
filtering of s to obtain w and w(J). Figure 3.12 shows the frequency response for the
first-order low pass filter -, which has a pass band gain of-. It is clear that
p + X X
if a signal | s | < O is input into a series connection of i lowpass filters of this form,
the filter output | y\\ < .
46
Figure 3.13 shows the frequency response for the filtered differentiator ,
p + X
which is a highpass filter with break frequency X and unity pass band gain.
i
Frequency (rod/iec)
Figure 3.12. Frequency response of
p + X
0.01 X 0.1 X X 10 X 100 X
Frequency (rod/eec)
Figure 3.13. Frequency response of E
p + X
47
For example 2, the variable of interest is the time integral of the position error.
Position error is obtained from scalar s by passing s through a series connection of a
lowpass filter and a filtered differentiator as shown in figure 3.14.
Figure 3.14. Filtering of s(e;t) for integral control of second-order system.
s(t) = (p + X)2w(t) (3.66)
s(t) = (p + M2 e(t) (3.67)
P
C(t) = s(t) (3.68)
(p + X)'
Figure 3.15 shows the frequency response for the system given in figure 3.14.
Maximum magnitude is 1/(2X), which occurs at X rad/sec. With the low and high
frequency attenuation, one can see that integral control should offer improved tracking
performance over control without an integrator.
To further illustrate performance with integral control, simulation runs were
performed for examples 1 and 2 with e(0) = 0. Time histories of scalar s(t) for each
example are very similar as illustrated in figure 3.16. As shown in figure 3.17,
tracking error e(t) for integral control is approximately 1/3 that of control without an
integrator.
48
1
0.01 X 0.1 X X 10 X 100 X
Frequency (rod/aec)
Figure 3.15. Frequency response of 2_
(p + X)
s(t)
No Integrator
Time (sec)
Figure 3.16. Scalar s(t) for (a) example 1: control without an integrator
and (b) example 2: integral control.
49
Figure 3.17. Position error e(t) for (a) example 1: control without an integrator
and (b) example 2: integral control
50
3.2 Quasi'Sliding Control:
Introduction of a Boundary Layer to Eliminate Chattering
In order to account for modeling imprecision and disturbances, control laws that
satisfy the sliding condition given in inequality (3.4) are discontinuous across surface
S(t). This leads to control chattering. Chattering is undesirable because it involves
high control activity/authority and may excite high frequency unmodeled dynamics
such as flexible structural modes.
To eliminate the chattering problem, the control discontinuity can be smoothed
by introducing a thin boundary layer B(t) neighboring the switching surface:
B(t) = {e,|s(e;t)|Â£0 (3.69)
where
A sliding surface for a second order system is shown in figure 3.18. A
boundary layer of thickness O has been introduced to this surface in figure 3.19.
As shown in figure 3.19, variable e can be interpretted as boundary layer "width."
Note that for a sliding surface with s = |^ + ^.j0 \ "thickness" is measured along
the e^1) axis and "width" is measured along the e axis.
e
Figure 3.18. Sliding surface for
second-order system.
51
Figure 3.19. Sliding surface with
boundary layer.
Outside the boundary layer, control u(t) is the same as before, which guarantees
boundary layer attractiveness. Inside the boundary layer, control u(t) is interpolated.
The discontinuous signum function (figure 3.20) is replaced by a continuous
saturation function (figure 3.21).
Figure 3.20. Signum function Figure 3.21. Saturation function
(discontinuous). (continuous).
As illustrated in Figure 3.22, control law u(t), becomes
(3.70)
Figure 3.22. Interpolation of
control u(t) inside boundary layer.
52
3.2.1 Example 3: Second-Order Nonlinear System with
Time-Invariant Boundary Layer
To illustrate how the boundary layer smooths the control chattering, the
simulation performed in example 1 (no boundary layer) was repeated with the control
now given by
Initial tracking error e(0) = 0
Input x
Figure 3.22 shows time histories for control input u(t), position error e(t), and
scalar s(t). The time window for the plots is longer than in example one because the
growing error in the time interval from 0.00 to 0.25 seconds gives rise to stability
concerns. However, behavior in the period from 0.25 to 0.50 seconds shows that the
system is stable.
Comparing these plots with plots from example one (figure 3.7 ), note that the
high frequency components of u(t) produced by the signum function do not appear
when the saturation function is used.
with b ]= 0.0516
u = r f + X e
= r + 1.5 x I x | + lOx + 2 x3 + 500 e
k(x) = (3 (ri + f) + (p l) | u
s=e+Xe X = 5000rad/sec (796Hz) 0=1.1
53
In figure 3.22 the representative point remains within the time invariant
boundary layer and, from equation (3.60),
Ie(t)|< => = 220prad
0 .05 .1 .15 .2 .25 .3 .35 .4 .45 .5
Time (seconds)
0 .05 .1 .15 .2 .25 .3 .35 .4 .45 .5
Time (seconds)
Figure 3.23. Example 3 (time-invariant boundary layer) time histories for control
input u(t), position error e(t), and scalar s(t).
54
3.2.2 Time-Varying Boundary Layer (t)
Chattering is eliminated by smoothing the control discontinuity inside boundary
layer B(t). Application of a boundary layer surrounding the sliding surface s(e; t) = 0
essentially assigns a low pass filter structure to the local dynamics of the variable
s(e; t). Interpretting the boundary layer as a filter leads to a means of illustrating the
trade off between tracking precision and robustness to unmodeled dynamics.
In this section, boundary layer thickness O is made time varying. Boundary
layer thickness will be modulated such that s trajectories are always inside the boundary
layer. To accomplish this, sliding condition (3.4) must be modified to require that the
distance to the boundary layer always decreases.
"Above" the boundary layer s ^ (t)
^(s-
negative slope =* s(e; t) is becoming less positive
"Below" the boundary layer s Â£
Â£(s -(->)) a 11 (3.72)
positive slope =* s(e; t) is becoming less negative
Again note that the derivative of s2(e; t) can be written as the product of s(e; t)
and its first time derivative:
s2(e; t) = s(e; t) s(e; t)
55
For s Â£ G>(t):
And s > 0 s = | s |.
s
s Â£
s s <, ( r|) s
s s <(o-t|)|s
(3.73)
For s < O(t):
s + O^TJ
s + q
s s Â£ (- O + T|) s
Note that in this region s Â£ 0. Multiplying both sides by s, a negative
number, changes to
Multiply the right-hand side of the inequality by sgn(s) = 1.
s s Â£ (
And s sgn(s) = | s |.
s s ^(
Combine equations (3.73) and (3.74) and write
(3.74)
^s2 = ss^(d>-Ti)|s| |s|Â£
(3.75)
Inequality (3.72) contains an additional term O | s | that does not appear in (3.4).
Note that the magnitude of(o q) is greater during boundary layer contraction (o < o)
56
than during boundary layer expansion > Oj. Therefore, the boundary layer attraction
requirement (3.75) is more stringent during contraction than during expansion.
First consider the case in which there is no control gain uncertainty, i.e.,
"N _
b = b = 1. The introduction of (3.75) necessitates a modification of the control
discontinuity gain k(x). The term
time-varying boundary gain k(x):
k(x) = k(x)
The rate of change of boundary layer thickness is subtracted from k(x) because
when C> > 0 the boundary layer atraction requirement is less stringent That is, the
magnitude of the compensatory command is reduced.
Control law u(t) becomes
u(t) = u (t) + k (x) sat (1 (3.77)
with
m
Â£(t)-i<-?+ Â£ (7)^e<-*> (3.78)
With a time-varying boundary layer, the s-trajectories exist inside the boundary
by design. Inside the boundary layer | s | Â£ O, therefore sat [1 = and the control
\/ 4>
law becomes
u(t) = u (t) + k (x) (3.79)
57
For an n* order system described by equation (3.1) the time derivative of s(t) equals
m
s = I x<) + X () X1 e( -(3.80)
i 1
Substitute the expression for x
m
s = r (3.81)
i 1 1 '
Substitute the expression for u(t) from (3.79) and write
m
s = r*) f u(t) k(x) + X (m) X* e
(3.82)
Substitute the expression for u(t) firom (3.78), eliminate terms that cancel, and write
s = (f f) k(x) (3.83)
Define Af(x) = (f f) and write
s = -!eÂ£I S + Af(x) (3.84)
0(0
Note that k(x) and Af are continuous in x. From the bounds on the tracking
error vector e given by inequality (3.64), the error between the system state x and the
reference state r is of the order of e and equation (3.84) can be rewritten as
s = -^s + (Af(r) + 0(e)) (3.85)
Equation (3.85) shows that variable s, which is a measure of the algebraic
distance to the surface S(t), can be viewed as the output of a first order filter, the
58
dynamics of which depend on the desired trajectory r(t) and with inputs that are, to the
first order, "perturbations."
A block diagram representation of the closed loop error dynamics is given in
figure 3.24. Perturbations are filtered by the dynamics described by equation (3.85) to
yield s. By the definition of s (equation 3.6), position error e is a low pass filtered
version of s.
A f (r) + O (e) 1 s l e
4>(t) r + 0
Modulation Definition
of
Figure 3.24. Structure of closed loop error dynamics.
Time varying boundary layer thickness
(3.85) represents a first-order lowpass filter of bandwidth X. Let
k(r) y
*(t)
k(r) = X
From equation (3.76)
k(r) = k(r)-
O + k (r) = k (r)
(3.87)
Insert (3.86) into (3.87) and write
(3.88)
59
Figure 3.25. Block diagram of boundary layer dynamics.
Equation (3.88) is known as the balance condition. It adjusts 4>(t) such that the
closed loop system mimics an n* order critically damped system. Boundary layer
dynamics are shown in block diagram form in Figure 3.25. Also note that
equation (3.88) allows equation (3.76) to be rewritten as
k (x)= k (x) k (r) + X
(3.89)
Now consider the general case, in which b b. In order to satisfy the
quasi-sliding condition given by (3.72) in the presence of a control gain uncertainty
(i.e., non-unity gain margin (5), time-varying boundary layer gain k (x) must be
defined separately for boundary layer expansion and contraction as follows:
0 > 0 => k (x) = k(x)
P
k (x) = k(x) P
(3.90)
(3.91)
Control law u(t) becomes
u(t) = b 1 [u (t) + k (x) sat 1-^-
(3.92)
60
To insure that the time-varying boundary layer provides low pass filtering of
bandwidth X requires that
/k(r)Wb(r)\ ^ pit)} IbOO/njax (3.93)
Define reference gain margin (3r as
p, pw] \b(r)/ max (3.94)
and write
k(r) = i<,>w Pr (3.95)
From equations (3.90) and (3.91)
> 0 => k (r) = k(r) Pr (3.96)
k(r) = k(r)-prO (3.97)
O>0 =* O = ^(k(r) -k(r)) (3.98)
O<0 => O = Pr'1 (k(r) k (r)) (3.99)
From equation (3.95)
0 =>
CxO =* i = pr'1 k(r)- \ Pr (3.101)
61
Balance conditions are written as
O > 0
O + XO = pr k(r)
X k (r)
Pr2 Pr
(3.102)
(3.103)
A block diagram representation of the boundary layer dynamics for expansion
and contraction is given in figure 3.26.
0 =>
0
Pr k (r) > X O
X
k(r)>
Pr
(3.104)
O<0 =>
O < 0
k(r) X
<-----
Pr Pr2
k(r)<
X
Pr
(3.105)
To modify equation (3.89) to account for control gain uncertainty
k(x) = (k(x)-k(r)) + k(r)
(3.106)
Figure 3.26 Boundary layer dynamics with control gain uncertainty.
62
From equations (3.90), (3.91), (3.96), and (3.97)
0 => k (x) = k(x) k (r) = k(r)
Pr Pr
fl> < 0 => k (x) = k(x) pr <1> k (r) = k(r) pr C>
O > 0 => k (x) = (k (x) k (r)) + k (r)
Pr
< 0 => k (x) = (k (x) k (r)) + k (r) Pr
Apply equations (3.100) and (3.101)
O > 0 => k (x) = (k (x) k (r)) +
Pr
G> < 0 => k (x) = (k (x) k (r)) +
Pr
Therefore, for boundary layer contraction and expansion
k (x) = (k (x) k (r)) +
Pr
(3.107)
(3.108)
(3.109)
63
3.2.3 Example 4: Second-Order Nonlinear System with
Time-Varying Boundary Layer
To illustrate how a time-varying boundary layer improves system performance,
the system examined in example 3 (time-invariant boundary layer) was controlled
using a time-varying boundary layer. For this example, the control equation is
with b 1 = 0.0516
/N ,
u = r f + Xe
= r + 1.5 x| x| + lOx + 2 x3 + 500 e
k (x) = k (x) k (r) + ^
P
k(x) = P (rj + f) + (p l) | u |
= 1.29 ( 0.1 -t- 0.5 x2 h- 21 x | +1 x31) + 0.291 u
k(r) = P(t) + f) + (p l) | u |
= 1.29 (O.l +0.5 r2 + 2|r| + |r3|) + 0.291u
s = e + Xe
X = 5000 rad/sec (796 Hz) P = 1.29 1) = 0.1
O (t) = P k (r) X O (t) + T) O>0
O (t) = k (r) O (t) + T| O<0
P P
0(0) = tj/X = 20 X 10-6
Initial tracking error e(0) = 0
Input xd(t) = sin 20ti t
64
Figure 3.27 shows how the reference vector affects the boundary layer
thickness for the k(r) function used. (Function k(r) reflects parametric uncertainties.)
Note that boundary layer thickness C>(t) assumes a maximum value when | r (t) | = r^
and r (t) = 0. Conversely, O(t) assumes a minimum value when r (t) = 0 and
| r (t) | = fmax. Also note that s(t) remains within the boundary layer.
Tima (seconds)
Figure 3.27. Example 4 (time-varying boundary layer) time histories for control
reference position r (t), reference velocity r (t), and scalar s(t)
65
Control input u(t) is plotted in figure 3.28, which also compares the position
error e(t) from example 3 (time invariant boundary layer) with that of this example. At
no time does the position error of the time-varying boundary layer example exceed that
of the time invariant boundary layer. In fact, it exhibits up to three times better
tracking within several time intervals.
Position
Error
e(t)
Time (seconds)
Figure 3.28. Example 4 (time-varying boundary layer) time histories for control
input u(t) and position error e(t).
66
3.3 Adaptive Sliding Control
The adaptive sliding control theory presented in this section is based on Slotine
and Coetsee (reference [48]). Lyapunov theory is the formalism used to derive the
adaptive controller. Derivation of the control law follows Narendra (reference [39]).
The adaptive mechanism addresses parameter estimation. It is applicable to systems
of the type
where Yj are known continuous, possibly nonlinear, functions of the state variables,
aj are parameters which are unknown, but constant, b is the control gain, which is
unknown, but constant, and u(t) is the controller input.
The design goal is to adjust parametric estimates such that system trajectories
are driven into the boundary layer and are maintained within the layer. Adaptation
ceases when the trajectory reaches the boundary layer. In other words, parameters are
estimated with sufficient accuracy to maintain the representative point within the
boundary layer. This provides a consistent rule for stopping adaptation, thus
eliminating undesirable long term drift found in many adaptive schemes.
Let the variable of interest w(t) be the time integral of the tracking error
r
(3.110)
(3.111)
where e(t) = r(t) x(t).
67
Use the sliding surface
o
e dx
(3.112)
with a neighboring boundary layer
B(t) = { e, | s(e; t) | Â£ O } 0
(3.113)
If, in a spherical region B(x, Ro) with center at equilibrium point x, there exists
a scalar function V(x; t) with continuous partial derivatives such that
1. V is positive definite, and
2. V is negative semi-definite,
then the equilibrium point x is stable in the sense of Lyapunov.
If, in a certain neighborhood of the equilibrium point, V is positive definite
and V, the derivative of V along the system trajectories, is negative semi-definite, then
V(x; t) is a Lyapunov function for the non-autonomous system.
Define a Lyapunov function candidate as
where sA is a measure of the algebraic distance from the current state to the boundary
layer
(3.114)
(3.115)
68
and rA is a composite measure of parameter estimation error, such that
r42 b
+ (bW-'-b-1)
(3.116)
where h,(t) is the estimate of constant and b(t) is the estimate of constant b.
b
The derivative of the Lyapunov function candidate is
V = sAsA + rArA (3.117)
An expression for the rA rA term can be written by taking the derivative of
equation (3.116).
rA^A = b f Z (biW -|)bi + (b VO b'1) b
-l
(3.118)
Note that inside the boundary layer sA = 0 and outside the boundary layer sA = s.
This can be demonstrated as follows:
Inside the boundary layer (- 0 < s < +0) O sat I
= s
sA = s O sat = s s = 0
Outside the boundary layer (|s|Â£F) sA = ^(s ^ sat (^] ]= ( s ^) = s
69
Let boundary layer thickness O be time invariant (0 = 0). Therefore, outside the
boundary layer sA = s.
Equation (3.117) becomes
V = sA s + rA rA
To obtain an expression for s, define a differential operator p
equation (3.112) as
s =
lp+|1(")p"'ixi)/0e(t)
dx
where: 11= binomial coefficient =
i! (n i)!
The time derivative of s can be written as
s =
pn+ s (*' |pD'iXi
i 1 1 )
n
=(n) + X " 1 Xs e*"-*)
i 1 ' l i I
= r + X ) X1 e
i 1 *
(3.119)
= and rewrite
dt
(3.120)
(3.121)
70
Substitute the expression from equation (3.110) for x().
r D / \
s = r-bu(t)+ X ai Yi (x; t) + X " (3.122)
i l i l > >
In the sliding regime the dynamics are s = 0. Set s = 0 and solve for equivalent
control u^.
Ueq = b-1 r<> + X (" ) X1 e
i 1
i 1
With imprecise knowledge of the plant, the best approximation of u,^ is
n \
u (t) = b
r(n) + V [n ] X e(n' ^ + T| sat (
i-l11) W
+ bwl( X ai Yi(x; t)
(3.124)
The tenn T| sat has been added to interpolate the control inside the boundary layer.
A
To write in a more compact form, define parameter estimate h; = and write:
b
u (t) = b
1 n \ r
r(n) + X ( ) ^ e(n'0 + n sat [-M + X hi Yi(x; t) (3.125)
i'- i 111 M i = i
Terms in equation (3.125) have been grouped to suggest that the adaptive
problem will be treated as sliding control with a boundary layer plus an adaptive
portion that improves the estimate of the system dynamics.
71
Insert the expression for u(t) from (3.125) into equation (3.122) and write
- b X hj Yj (x; t) + X ai Yi (x; t) + X X1 e
i = 1 i-1 i =1 *
(3.126)
Equations (3.118) and (3.126) can be used to write an expression for V as follows:
V = sA s + rA rA
b X hi Yj (x; t) + X aj Yj (x; t) + X | ^ e(n 0
i- l i- l i- l V i 7
b i (hi(t)-|)ji+(t
-i
(t) -b )b 1
(3.127)
Regrouping terms
r
v= X [(bbi(t) a.) (hi s4 Y,(x; t)j
i = 1
- sA (b b_1 -1) j r
(3.128)
72
Select adaptation laws to cancel terms in equation (3.128).
hi s Yi (x; t) sA
(3.129)
D
r^ + ^ |n | X1 e^n' ^ + r| sat
i 1 '1
(3.130)
By inserting sA = 0 in equations (3.129) and (3.130), it is seen that adaptation
ceases when the state reaches the boundary layer. Selection of the adaptation laws in
equations (3.129) and (3.130) reduces the expression for V to
V = -
(3.131)
Note that, outside the boundary layer
sa| < o
Equation (3.59) becomes:
V (t) = T| | sA | < 0 outside the boundary layer (3.132)
V (t) = 0 inside the boundary layer (3.133)
The Lyapunov function candidate V (t) of equation (3.114) is positive definite,
and from equations (3.132) and (3.133), its time derivative is negative semidefinite.
Therefore, the equilibrium state of the adaptive sliding system is stable in the sense of
Lyapunov.
73
To assign weights to the parameter estimates according to the relative
importance attributed to each term, redefine measurement rA as:
* f~ \2 /~ -1 .\ 2]
+
lA2 ~ I X ^ h'(t) 8i/b ^ ' b (t) b 1
U 1 V
bn
and the following estimation rules:
h = hjn YiSa
i = 0,1...r
A"1 _
b = b2
i 1
r*n) + X I" )xle(ni) + T| sat |j
(3.134)
(3.135)
(3.136)
74
CHAPTER 4
CASE STUDY: ADAPTIVE SLIDING CONTROL OF A
SINGLE-AXIS STEERING MIRROR
A single-axis steering mirror is a suspended planar mirror with a single
rotational degree of freedom. Suspension may be mechanical (flexures or springs) or
magnetic. Electrodynamic actuators and position feedback sensors (capacitive,
inductive, or optical) are used to actively control the angular position of the mirror as
part of a closed loop control system. The function of this system is to position the
minor such that a collimated beam of light incident to the mirror is reflected along a
commanded angle. Incoming light is "steered" along a desired optical path.
For example, a steering minor can be used to maintain optical alignment
between two optical benches, each with a single rotational degree of freedom. As
shown in figure 4.1, a laser communication system is mounted on a two-body system.
Without an alignment system, relative motion between the two bodies and structural
vibration of either body will result in optical misalignment, hence performance
degradation or failure of the communications system. To maintain optical alignment,
an alignment laser on body 1 generates a beam that traverses the same optical path as
the communications beam. An alignment sensor on body 2 detects optical
misalignment A steering minor in the optical path is controlled closed loop to null the
alignment sensor, thus maintaining optical alignment
Laser
Receiver
Alignment*
Sensor
TF = Turning Flat
BS = BeamSplitler
Alignment-
Laser
Steering Mirror
Laser
Transmitter
Figure 4.1. Steering mirror used in an optical alignment system.
The steering mirror considered in this chapter can rotate about its vertical axis.
As illustrated in figure 4.2, the mirror is clamped to a composite panel, which is
attached to the frame with flexural pivots, which serve as rotational bearings. Each
flex pivot consists of a pair of springs crossed at 90 and a set of supporting segments.
Flex pivots are used instead of ball bearings because they offer less friction and do not
present the nonlinearities associated with ball bearings. However, a flex pivot has a
torsional spring constant and, when displaced from spring null, will produce a reaction
torque. Four linear moving coil actuators are used to apply torque to the mirror.
Capacitor plate sensors are built into the mirror assembly (see figure 4.3) to
provide a measurement of the mirror-to-base angle. Stationary capacitor plates are
mounted to the frame; moving capacitor plate members are attached to the composite
panel which also supports the mirror. These capacitor plate sensors are available for
use as a feedback sensor or an external optical sensor may be used.
76
Moving
Capacitor
Plates
Figure 4.3. Steering mirror capacitor plate sensor (top view).
77
4.1 Plant Truth Model
A symbolic representation of the steering mirror assembly is given in
figure 4.4. It is a sixth-order mechanical system comprised of three rotational inertias:
aluminum frame (Ji), composite panel (J2) and mirror (J3). The fundamental mode of
the system is created by the flex pivots which connect the composite panel and the
frame. The flex pivot spring rate is shown as spring K2 in figure 4.4. Viscous
damping, due primarily to air resistance, is represented by damper B2. An actuator
applies torque A to the composite panel and a reaction torque to the frame.
Two additional inertia-spring-damper subsystems exist Spring K3 and damper
B3 model the mounting of the mirror to the composite panel. Dynamics also are
present between the frame and the optical table to which the frame is bolted. The table
is modeled as an infinite inertia.
Table Frame Composite Mirror
where: xj = inertial frame position
x2 = inertial composite panel position
x3 = inertial mirror position
Figure 4.4. Symbolic representation of steering mirror assembly.
78
Differential equations describing the mirror assembly dynamics can be derived
from free body diagrams as follows:
KlX!
Bi xi
K2 ( x2 X! )
B2 (x2-xi )
A
Figure 4.5. Free body diagram of steering mirror assembly frame.
Ji xi = A Ki X! Bi xi + K2 ( x2 X! ) B2 ( x2 *! ) (4.1)
K2(x2-xi
B2 ( x2 xi
A
K3 ( x3 x2 )
B3 ( x3 x2 )
Figure 4.6. Free body diagram of steering mirror assembly composite panel.
J2 x2 = A K2 ( x2 xi ) B2 ( x2 xi ) + K3 ( x3 x2 ) + B3 ( x3 x2 ) (4.2)
K3 ( x3 x2 )
B3 (x3 x2 )
Figure 4.7. Free body diagram of steering mirror assembly mirror.
J3 x3 = K3 ( x3 x2 ) B3 ( x3 x2 ) (4.3)
79
Equations (4.1), (4.2), and (4.3) can be written compactly in matrix form as follows:
x = [J]'1 ([B] x + [K] x + H A )
(4.4)
where: x = [ Xj x2 x3 ]T
[J]
-l
Ji 0
0 h
0 0
0 T1
0
J3
- Bi B2 + B2 0
+ B2 - B2 B3 + B3
0 + B3 -b3
-K!-K2 + k2 0
+ k2 - k2 k3 + k3
0 + k3 -k3
H = [ -1 1 0]T
Numerical values for the parameters contained in these matrices are given in Table 4.1.
Table 4.1. Mirror assembly parameter values
Component i Ji (kg-m2) Bi (Nm/rad/sec) Ki (Nm/rad)
Frame 1 1.65 x 10*3 2.00 x 101 6.514 x 104
Panel 2 1.65 x 10"4 2.00 x 10-3 1.000 x 10
Mirror 3 1.65 x 10^ 1.80 x IQ*2 1.175 x 103
80
Equation (4.4) can be written in state variable form as
x = F x + G u (4.5)
y = C x + D u (4.6)
where: x = [xi x2 x3 XI x2 x3]t
F =
0
J"1 K
I
J'1 B
G =
0 0 0 ^ f
Ji h
C = [0 0 1 0 0 0]
D = 0
Inserting the parameter values from table 4.1 into equation (4.5) defines a
system with eigenvalues listed in table 4.2.
Table 4.2. Eigenvalues of mirror assembly
Eigenvalue (rad/sec) Freq (Hz) Percent Damping Resonant Mode
-3.0287 j 55.137 8.79 5.5 Frame/Flexure/Panel
-1093.9 j 3612.3 601 29 Miiror/Panel
-61.212 j 6282.9 1000 1.0 Frame
Frequency response plots of the steering mirror assembly are shown in
figures 4.8 and 4.9. Both plots show angle output for torque input. Figure 4.8
shows the angle sensed by the capacitor plate sensor the relative angle between the
composite panel and the frame. Figure 4.9 shows the inertial mirror angle as the
output. Note the 1 kHz mode prominent in figure 4.8 does not appear in figure 4.9.
81
Frame/Flexure/Panel
1 10 100 1000 10000
Frequency (Hz)
Figure 4.8. Steering mirror assembly frequency response. Input: actuator torque.
Output: panel-to-frame relative angle (x2 xt)
Figure 4.9. Steering mirror assembly frequency response. Input: actuator torque.
Output: inertial mirror angle (x3).
82
Actuators are linear, moving coil type with a high-bandwidth current-control
electronic drive. Output torque is a linear function of actuator current:
A(t) = Kt i(t) (4.7)
where A(t) is the actuator torque (Nm), KT is the actuator torque scale factor
(Nm/amp), and i(t) is the actuator current (amp).
Actuator current is related to the voltage applied to the drive electronics by the
following differential equation:
f = 2tc fact [ Kv v (t) i(t)] (4.8)
where: i(t) is the actuator current (amp), v(t) is the applied voltage (volts), fact is the
bandwidth of the actuator drive system (Hz), and Kv is the actuator drive electronics
scale factor (amps/volt).
83
Digital-to-analog (D/A) converters limit the applied voltage to a maximum
magnitude as follows:
v(t) = VmMsat(^^) (4.9)
\ v max /
where v(t) is the applied voltage, Vmat is the maximum output voltage of the D/A
converter, vcmd(t) is the commanded voltage (input to the D/A converter), and
/+1 xÂ£+l
sat (x) = / x -1 < x < +1
(-1 x<-l
Equations (4.7), (4.8), and (4.9) can be combined into a single actuator torque
equation as follows:
dA
dt
Kt fact
Ky Vmax sat
vcmd (0
Vmax
i(t)
(4.10)
Numerical values for the parameters that appear in equation (4.10) are given in
table 4.3.
Table 4.3. Actuator parameter values
Parameter Description Value
KT Actuator Torque Scale Factor 0.2 Nm/amp
KV Drive Electronics Current Scale Factor 0.1 amp/volt
Kact = Kv Kt Actuator System Torque Scale Factor 0.02 Nm/volt
fact Actuator System Bandwidth 5kHz
Vmax Maximum Applied Voltage 10 volts
A max = KyKTVmax Maximum Actuator Torque 0.2 Nm
84
Maximum miiror travel is 1.10 mrad. Position information is available from
two sensors: (1) a capacitor plate sensor which measures the relative angle between
the composite panel and the frame, and (2) an autocollimator sensor which measures
the inertial angle of the mirror. Each sensor is linear throughout its field of view and
has the same scale factor: 1.10 mrad / 10 volts =110 |irad/volt. Voltage output of
each sensor is given by the following equations:
Vcp(t) = Kcp(x2-x1) (4.11)
Vac(t) = Kacx3 (4.12)
where Vcp(t) is the capacitor plate output voltage, Vac(t) is the autocollimator output
voltage, Kcp is the capacitor plate scale factor (volts/rad), Kk is the autocollimator
scale factor (volts/rad), xt is the inertial frame angle (radians), x2 is the inertial
compositive panel angle (radians), and x3 is the inertial mirror angle (radians).
Table 4.4 summarizes the available position sensors. No rate measuring
sensors are available.
Table 4.4. Position sensor specifications
Sensor Sensed Angle Field of View Scale Factor
Capacitor Plate (X2 xi) 1.10 mrad 110 jjrad/volt
Autocollimator X3 1.10 mrad 110 prad/volt
85