Variable Structure Control (VSC)
SUMMARY
Addressed the design of a variable structure controller for
the output regulation of a linear system
Evaluation of the performance of the controller on a
numerical example, including robustness with respect to
parametric uncertainty
SUMMARY
SUMMARY
System S:
Key ingredients in the design of the controller:
the switching function = with = 1 / and
= 1 2 1 1
SUMMARY
System S:
Key ingredients in the design of the controller:
the switching function = with = 1 / and
= 1 2 1 1 , which defines:
the sliding surface = 0
the characteristic polynomial of the (n-1)-dimensional
system S* governing the state evolution over the sliding
surface:
= 1 + 1 1 + + 1
the value for the system output at the equilibrium over
the sliding surface: =
SUMMARY
System S:
Key ingredients in the design of the controller:
the switching function = with = 1 / and
= 1 2 1 1
the control input
= + + r g
with > 0, 0, > 0, = , = A, where
A is the matrix of S in controllable form
SUMMARY
System S:
Key ingredients in the design of the controller:
the switching function = with = 1 / and
= 1 2 1 1
the control input
= + + r g
with > 0, 0, > 0, = , = A, where
A is the matrix of S in controllable form, which makes
system S reach the sliding surface in finite time
0 /
ROBUSTNESS W.R.T. LOAD DISTURBANCE
Suppose that S is subject to some load disturbance ()
ROBUSTNESS W.R.T. LOAD DISTURBANCE
Suppose that S is subject to some load disturbance ()
Statement:
If () < , , then:
the state will reach the sliding surface = 0 in finite time
and will evolve according to the dynamics of S*.
Only the time to convergence is affected by
ROBUSTNESS W.R.T. LOAD DISTURBANCE
Sub-system
has input + and output
=
ROBUSTNESS W.R.T. LOAD DISTURBANCE
=
ROBUSTNESS W.R.T. LOAD DISTURBANCE
=
ROBUSTNESS W.R.T. LOAD DISTURBANCE
=
ROBUSTNESS W.R.T. LOAD DISTURBANCE
ROBUSTNESS W.R.T. LOAD DISTURBANCE
System :
- externally + behaves like an integrator
- has hidden dynamics with characteristic polynomial
ROBUSTNESS W.R.T. LOAD DISTURBANCE
If = 0
ROBUSTNESS W.R.T. LOAD DISTURBANCE
If = 0
The (pseudo)-equilibrium = is reached in finite time.
ROBUSTNESS W.R.T. LOAD DISTURBANCE
If = 0
The sliding surface = = = 0 is reached in finite time.
If () < , , then, the sign of the derivative of is preserved,
so that = is still reached in finite time.
The time to reach = will however depend on .
ROBUSTNESS W.R.T. LOAD DISTURBANCE
More formally
1 2
Consider = , where = . Then,
2
= = = +
since
> 0
and
w (< ) implies that
we get
= = = + ( )||
ROBUSTNESS W.R.T. LOAD DISTURBANCE
More formally
1 2
Consider = , where = . Then,
2
||
where (> 0) .
ROBUSTNESS W.R.T. LOAD DISTURBANCE
More formally
1 2
Consider = , where = . Then,
2
||
where (> 0) . Hence,
1
() 0 t
0 2 0 2 2
which leads to
1 1
(()) t + ((0))
2 2 2
and the time required to reach s = 0 is upper bounded by
((0))
ROBUSTNESS W.R.T. LOAD DISTURBANCE
When = = = 0, then,
the system evolves on the sliding surface according to the
dynamics of S*;
the output tends to
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
400( + 5)
= 2
( +5 + 20)( + 10)( 1)
400( + 5)
= 4
+ 14 3 + 55 2 + 130 200
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
400( + 5)
= 4
+ 14 3 + 55 2 + 130 200
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
Recall that the coefficients of the switching function [n=4]
appear in the characteristic polynomial of the linear system S*
of order 3 governing the dynamics of S when restricted to the
sliding surface () = 0:
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
Recall that the coefficients of the switching function [n=4]
appear in the characteristic polynomial of the linear system S*
of order 3 governing the dynamics of S when restricted to the
sliding surface () = 0:
Set the eigenvalues of S* equal to those of S that are stable:
then,
So that
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
400( + 5)
= 4
+ 14 3 + 55 2 + 130 200
Since the state is not directly measurable, we resort to the
asymptotic state observer (Luenberger observer) and use in
place of in the sliding mode control law:
u = + +
-s
u = + +
ASYMPTOTIC OBSERVER
+
+
+
+
ASYMPTOTIC OBSERVER
+
+
+ +
+
ASYMPTOTIC OBSERVER
observer gain
+ +
+
DYNAMICS OF THE STATE ESTIMATION ERROR
DYNAMICS OF THE STATE ESTIMATION ERROR
ASYMPTOTIC OBSERVER
If (A,C) is observable, then, L can be designed so that
A-LC has arbitrarily chosen eigenvalues and
the estimation error converges exponentially to zero with
rate 0 2 (0, mini |Re{i(A-LC)}|)
Im
eigenvalues of A-LC
o
o o
Re
o
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
If we choose the eigenvalues -10, -8, -6, -5 for the observer
dynamics, we get:
= [0.0025 0.0250 0.0175 0.2550]
and 0<0 <5
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
y = 5 2 , = 1, = 0 [/2 = 0.02, /2 = 1]
0 = 0 = [0 0 0 0], 0 = 0 = 0
y u
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
y = 5 2 , = 1, = 0 [/2 = 0.02, /2 = 1]
0 = 0 = [0 0 0 0], 0 = 0 = 0
y u
Same behavior as without the observer since the estimation error
is zero at time 0 and then keeps being zero.
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
y = 5 2 , = 1, = 0 [/2 = 0.02, /2 = 1]
0 = 0 0 0 0 , 0 = 0; 0 = 0.012 0 0 0 , 0 = 24
y u
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
y = 5 2 , = 1, = 0 [/2 = 0.02, /2 = 1]
0 = 0 0 0 0 , 0 = 0; 0 = 0.012 0 0 0 , 0 = 24
y u
estimation error goes to 0
s
in 1 time unit ( = 5).
Then, same behavior as
when x(0) known
STATE NOT AVAILABLE: A NUMERICAL EXAMPLE
y = 5 2 , = 1, = 0 [/2 = 0.02, /2 = 1]
0 = 0 0 0 0 , 0 = 0; 0 = 0.012 0 0 0 , 0 = 24
y u
y u
ISSUE OF THE HIGH FREQUENCY INPUT SWITCHING
The high frequency switching of the control input in the sliding
mode phase can be undesirable and even unacceptable.
ISSUE OF THE HIGH FREQUENCY INPUT SWITCHING
Possible solution:
filtering the high frequency components of the control input by
introducing an auxiliary control variable whose integral is the
actual control variable
A NUMERICAL EXAMPLE
controllable and observable system (no pole-zero cancellations)
A NUMERICAL EXAMPLE
enlarged controlled system
A NUMERICAL EXAMPLE
enlarged controlled system
not in controllable form
A NUMERICAL EXAMPLE
A NUMERICAL EXAMPLE
Dynamics within the sliding surface:
In the original state variables:
A NUMERICAL EXAMPLE
y = 5 1 , = 10 = 0[/2 = 0.02, /2 = 1]
STABILIZATION OF DOUBLE INTEGRATOR
System S:
1 =
2 =
3 = 1 2
Goal: design a feedback controller that globally asymptotically
stabilizes the origin
STABILIZATION OF DOUBLE INTEGRATOR
System S:
1 =
2 =
3 = 1 2
Goal: design a feedback controller that globally asymptotically
stabilizes the origin
Difficult to stabilize even locally. Indeed, linearization in the
vicinity of the origin gives a non-controllable system:
1 =
2 =
3 = 0
If 1 and 2 are too close to zero, 3 cannot be steered to zero
STABILIZATION OF DOUBLE INTEGRATOR
System S:
1 =
2 =
3 = 1 2
Goal: design a feedback controller that globally asymptotically
stabilizes the origin
We adopt a sliding mode approach
STABILIZATION OF DOUBLE INTEGRATOR
System S:
1 =
2 =
3 = 1 2
Idea: make 3 converge faster to zero than 1 and 2
Sliding mode control:
= 1 + 2 3
= 2 1 3
[sliding surface 3 =0]
STABILIZATION OF DOUBLE INTEGRATOR
System S:
1 =
2 =
3 = 1 2
Idea: make 3 converge faster to zero than 1 and 2
Sliding mode control:
= 1 + 2 3
= 2 1 3
[sliding surface 3 =0]
We first show that there exists a set of initial conditions such
that trajectories starting there converge to the origin.
STABILIZATION OF DOUBLE INTEGRATOR
System S:
1 =
2 =
3 = 1 2
Sliding mode control:
= 1 + 2 3
= 2 1 3
Control system:
1 = 1 + 2 3
2 = 2 1 3
3 = (1 2 + 1 2 ) 3
STABILIZATION OF DOUBLE INTEGRATOR
Control system:
1 = 1 + 2 3
2 = 2 1 3
3 = (1 2 + 1 2 ) 3
Lyapunov function for the (1 , 2 ) space
1
1 , 2 = (1 2 + 2 2 )
2
= 1 1 + 2 2 = 1 2 + 2 2 = 2V
= 0 2 , 0
1 , 2 tend to zero asymptotically
STABILIZATION OF DOUBLE INTEGRATOR
Control system:
1 = 1 + 2 3
2 = 2 1 3
3 = (1 2 + 1 2 ) 3
Lyapunov function for the (1 , 2 ) space
1
1 , 2 = (1 2 + 2 2 )
2
1 , 2 tend to zero asymptotically
As for 3 :
3 = (1 2 + 1 2 ) 3 = 2 3
STABILIZATION OF DOUBLE INTEGRATOR
As for 3 :
3 = (1 2 + 1 2 ) 3 = 2 3
3
= 3 3 = 2
3 () 3 0 = 2
0
3 () = 3 0 2
0
If 3 0 <2 0
, then 3 tends to zero in finite time
If 3 0 =2 0
, then 3 tends to zero in infinite time
STABILIZATION OF DOUBLE INTEGRATOR
= 0 2 , 0
1
Then, 2 0
= 0 = (1 2 (0) + 2 2 (0))
2
Hence: 3 0 2 0
becomes
1
3 0 (1 2 (0) + 2 2 (0))
2
STABILIZATION OF DOUBLE INTEGRATOR
If initial state satisfies
1
3 0 1 2 0 + 2 2 0 ()
2
then the sliding mode controller leads the state to the origin
If the initial state doesnt satisfy that condition, then, apply
constant control to drive it in that region:
1 =
2 =
3 = 1 2
1 = + 1 0
2 = + 2 (0)
3 = 1 0 2 0 + 3 0
Then equation () will be satisfied at some finite time instant t.
STABILIZATION OF DOUBLE INTEGRATOR
If initial state satisfies
1
3 0 (1 2 (0) + 2 2 (0))
2
then the sliding mode controller leads the state to the origin
If the initial state satisfies
1
3 0 > (1 2 (0) + 2 2 (0))
2
then, apply constant control to drive it in the complementary
region
Hybrid control scheme