Sliding Control
Sliding Control
k1e(t ) e( t ) e
u
k2 e(t )dt e( t ) e
7. Sliding mode control
7.1 Basic problem
3. Switch mode control (SMC)
Special VSC, system state is expected to gradually stabilize along a
certain expected phase trajectory to equilibrium point. Phase trajectory is
called sliding mode, VSC with sliding mode is called SMC.
E.g.: system x x 1 2
x2 a1 x1 a2 x2 u
x1
x1
s0 x1
k k
7. Sliding mode control
7.1 Basic problem
4. Equivalent control (Filippov’s construction, 1960’s)
Discontinuous switching control can be conceived as an equivalent
average control.
u ( x ) s( x ) 0
f ( x, u ( x )) f ( x ) s( x ) 0
x f ( x, u) , u x
u ( x ) s( x ) 0
f ( x, u ( x )) f ( x ) s( x ) 0
x f ( x) (1 ) f ( x) s0 f 0*
(1 )r
r
When system enters sliding mode, ueq can f 0
*
be found by s( x ) 0 .
s0
7. Sliding mode control
7.1 Basic problem
n
E.g.: linear system x Ax Bu , s( x ) c x ci xi
T
i 1
s
s x c T ( Ax Bu) 0 ueq (c T B) 1 c T Ax x Ax B(c T B) 1 c T Ax
x
Non-linear system: x f ( x, t ) B( x, t )u
s s s s s
s ( f Bu) 0 ueq G 1 ( f) , G B
t x t x x
s s
x ( I BG 1 ) f BG 1 u ueq G 1s
x t
dt 0 0
t
s x 2 x 2 xdr x (t0 ) 2 x (t0 ) s (t0 ) 0
t0
s x2 x1q/ p , 0 , p q 0 s x2 x1 x1q/ p
dx1 t 0 1 p ( p q )/ p
dt
x1q/ p 0 0
1dt
x1 (0)
x1q/ p dx1 t
( p q)
x1 (0)
7. Sliding mode control
7.1 Basic problem
7. Sliding condition:
Keeping scalar s at zero can be achieved by choosing control law u
such that outside of S (t ) :
1d 2
s s
2 dt
Squared distance to surface decreases along all system trajectories. It
constrains trajectories to point towards surface S (t ) . Once on surface,
system trajectories remain on surface. Sliding condition makes surface an
invariant set.
S (t ) is both a place and a dynamics. Surface will nonetheless be reached
in finite time smaller than s(t 0) / .
treach s(t 0) /
7. Sliding mode control
7.1 Basic problem
E.g.: consider system x1 x2 , x2 h ( x ) g ( x ) u
cx2 h( x )
( x ) , x u ( x )sgn( s) , ( x ) ( x ) 0
g ( x)
1 2
V s V ss s (cx2 h ( x )) g ( x ) su g ( x ) s ( x ) g ( x )( ( x ) 0 ) s sgn( s )
2
g ( x ) 0 s g0 0 s
i 1
s
s x cT ( Ax Bu ) sgn(s) ks
x
7. Sliding mode control
7.2 Controller design
Single-input dynamic system x f ( x) b( x)u , f ( x), b( x) is not exactly
(n)
d
s( x ) ( )n1 x , x x xd [ x x x ( n1) ]T
dt
1 y1 1 1 x
s
p p p
n 1
t s t
y1 (t ) e ( t T )
s(T )dT y1 (t ) e ( t T )dT ( / )(1 e t ) /
0 0
x / n1
s
1 1 z1 p p x(i )
p p p p
n i 1 i
p p
z1 / n1i , 1 x(i ) ( )(1 )i (2 )i
p p p n 1i
7. Sliding mode control
7.2 Controller design
1. Perfect performance – at a price
Consider system x f bu .
Case: b 1
Estimation error of f is assumed to be bounded by fˆ f F .
d
s( ) x x x s x xd x f u xd x 0
dt
uˆ fˆ xd x
Satisfy sliding condition despite uncertainty: u uˆ k sgn( s )
1 d 2
s ss [ f fˆ k sgn( s )]s ( f fˆ ) s k s u uˆ k sgn( s )
2 ds
1 d 2
k F s s
2 ds
ss k s s k sgn s u uˆ k sgn( s )
2 跟踪误差
0
0
-2 -2
-4 -4
0 1 2 3 4 0 1 2 3 4
时间/s 时间/s
7. Sliding mode control
7.2 Controller design
Case: x f bu , 0 bmin b bmax
Since control input enters multiplicatively in dynamics, choose estimate
as geometric mean of bounds: bˆ (bmin bmax )1/ 2 .
bˆ b
(bmax / bmin )
1/ 2
gain margin 1
, 1
b ˆ
b
1 d 2 ˆ 1 f fˆ (bb
ˆ 1 1)( x x) bb
ˆ 1
s s k bb d
2 ds
ˆ 1 F bb
bb ˆ 1 bb
ˆ 1 1 fˆ x x
d
( F ) ( 1) uˆ
ˆ 5 , cˆ 1 F 0.5x x , 5
m
10 -4
0 -8
-10 -12
0 1 2 3 4 5 6 0 1 2 3 4 5 6
时间/s 时间/s
7. Sliding mode control
7.2 Controller design
2. Continuous approximations of control laws
In general, chattering must be eliminated, this can be achieved by
smoothing out control discontinuity in a thin boundary layer (1980s)
neighboring switching surface.
B(t ) {x , s( x, t ) } 0
û
s
x
s0
7. Sliding mode control
7.2 Controller design
E.g.: system x a(t ) x 2 cos3x u , 1 a(t ) 2
xd sin( t / 2) , 20 0.1
0.1
Tracking performance excellent, but
obtained at price of high control
chattering.
a(t ) sin t 1
d
s [ s ]
dt 1d 2
s s ( ) s
d 2 dt
s [ s ( )]
dt
x ( i ) ( t ) (2 )i , / n 1
s s
s k ( x ) f ( x ) s k ( xd ) ( f ( xd ) O( )) , f fˆ f
6 103 0.08
4
0.06
4
2 0.04
控制输入
跟踪误差
2 0.02
s轨线
0 0.00
0 s
-0.02
-2 -2
-0.04
-4 -4 -0.06
0 1 2 3 4 0 1 2 3 4 -0.08
时间/s 时间/s 0 1 2 3 4
时间/s
7. Sliding mode control
7.2 Controller design
In case 1 :
k ( xd ) d k ( xd ) k ( x) k ( x) /
d
k ( xd ) 2 k ( xd ) / d k ( x ) k ( x )
d d
with initial condition (0) defined as: (0) d k ( xd (0)) /
In order to satisfy sliding condition in presence of uncertainty :
0 k ( x) k ( x) / ; 0 k ( x) k ( x)
Balance condition: k ( xd ) b( xd )
ˆ k ( xd ) / d
b ( xd max
)
Desired behavior of : 0 / d k ( x ) /
0 / d k ( x )
d k ( x) (k ( x) kd ( x)) kd ( x) k ( x) kd ( xd ) / d
7. Sliding mode control
7.2 Controller design
Physical interpretation of balance conditions:
k ( xd ) / d , / n 1 n d k ( xd )
n d k ( xd ) (d kd / n )
• Effects of parameter uncertainty have been dumped in gain k , better
knowledge of f reduces k .
• Marginal gains in performance are critically dependent on control
bandwidth, if large 's are available, poor dynamic models may lead to
respectable tracking performance
• Large modeling efforts produce only minor absolute improvements in
tracking accuracy.
Assume that bound 3 is the most stringent, which means that system’s
mechanical potentials are not fully exploited. This may typically occur in
modern high-performance robots (such as direct-drive arms) which feature
high mechanical stiffness and high resonant frequencies.
( d kd ) fast
2
1
d kd
slow
j 1 j i
7. Sliding mode control
7.4 Multi-input systems
If vector k is chosen such that:
n
(1 Dii )ki Dij k j Fi Dij xr(ini 1) fˆ i
j i j 1
( I 1 A) y z