Upload
vananh
View
226
Download
2
Embed Size (px)
Citation preview
Discrete-time sliding mode control: Do it implicitly !
Discrete-time sliding mode control: Do itimplicitly !
Bernard BrogliatoINRIA Grenoble, France
Aussois, June 2015
Discrete-time sliding mode control: Do it implicitly !
Results obtained at INRIA Grenoble, experiments at IRCCyN-EcoleCentrale de Nantes (France) and LAGIS-Ecole Centrale de Lille(France).
Together with V. Acary, O. Huber, F. Plestan, B. Wang, A.Boubakir, L. Hetel, Y. Orlov.
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
Some Features
1 Set-valued “signum” controller with sgn(0) = [−1, 1]
( closed-loop systems = differential inclusions –Filippov’ssolutions–).
2 Robust, very simple to tune (in its original version).
3 In continuous-time (closed-loop = differential inclusion):controller insensitive to the gain on the sliding surface,because the controller is a selection of the set-valuedright-hand side.
4 Main implementation issue: chattering (due to what ? Here,the analyzed source is: numerical, or discretization of thecontroller).
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
THE “CLASSICAL” EQUIVALENT-BASED-CONTROL SMC
Let us consider x = Ax + Bu + Bd(x , t), with ||d(x , t)|| ≤ δ.
Properly choose the sliding surface σ∆= Cx = 0, such that CB = 1
(or just > 0).
First stage, the equivalent control ueq for the undisturbedsystem:Cx = 0 ⇒ CAx + CBueq = 0 ⇒ ueq = −(CB)−1CAxrenders the surface σ = 0 invariant.
Second stage, the set-valued controller: us ∈ −γ sgn(σ),γ > δ, sgn(0) = [−1, 1]:
Closed loop system:
x − Ax + B(CB)−1CAx − Bd(x , t) ∈ −γ sgn(σ)
=⇒ σ ∈ −γ sgn(σ) + d(x , t)
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
THE “CLASSICAL” EQUIVALENT-BASED-CONTROL SMC
We obtain under the stated assumptions:
Finite-time convergence towards the sliding surface σ = 0.
During the sliding motion:
us(σ(t)) = −d(x(t), t)
(according to Filippov’s solution).
The controller “observes” exactly the matched disturbanceand does not depend on γ during the sliding phase.
Works also for co-dimension ≥ 2 sliding surface: choose CBsquare full rank (> 0 for stability purpose).
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
TIME-DISCRETIZATION: NUMERICAL CHATTERING
Let us focus on the time-discretization effects. The classicalscheme is Euler (or ZOH) explicit discretization:
One implements at each sampling time tk :
usk = −γ sgn(σk)
This is known to generate output and input chattering [Galiaset al, IEEE TCS, TAC, Automatica 2006, 2008]:
Spurious oscillations (limit cycles) in the output signal.
High-frequency bang-bang (discontinuous) controller.
This is the numerical or digital chattering (unavoidable withexplicit method).
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
TIME-DISCRETIZATION: NUMERICAL CHATTERING
Effects on the input:
σk
us (σk )
γ
explicit discretization(jumps from +1 to -1)
−γ
0
Figure: Disturbance compensation via (single-valued) explicitdiscretization.
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
TIME-DISCRETIZATION: NUMERICAL CHATTERING
In experiments this typically gives:
0 2 4 6 8 10 12 14 16 18 20−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
((a)) h = 1 ms
0 2 4 6 8 10 12 14 16 18 20−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
((b)) h = 15 ms
Figure: Switching function: explicit method (sign(σk)).
The explicit discretization is unable to reach the verticalsegment of the set-valued signum function: no set-valuedrealization of the controller.
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
TIME-DISCRETIZATION: NUMERICAL CHATTERING
Effects on the output (sliding variable):
t0
magnitude ≈ h
frequency ≈1h
σ
Figure: Oscillations due to the explicit discretization.
Loss of precision, need to decrease h.
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
CONCLUSIONS AND OBJECTIVES
The usual way for control design and implementation is:
1 Design in continuous-time,
2 Implement on the experimental set-up in a discrete-time way,with sampling period h.
3 If h is small, discrete-time behaviour ≈ continuous-timebehaviour.
For set-valued controllers like in sliding-mode: item 3) may betotally wrong for the inputsignal, because of numerical chattering.
Explicit way of discretization should be avoided when actuatorsallow for it.
Discrete-time sliding mode control: Do it implicitly !
SLIDING-MODE CONTROL
CONCLUSIONS AND OBJECTIVES
1 Present the implicit time-discretization of the ECB-SMC.
2 Implementations made on electro-pneumatic andinverted-pendulum set-up.
3 Extensions: more than one sliding surface, twisting algorithm,nonlinear system.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
CASE WITHOUT DISTURBANCE
Let us consider the simplest sliding mode system:
x(t) = us(t, x(t))
with σ = x − xd(t) and us(x , t) ∈ −sgn(σ) + xd(t), then:
σ(t) ∈ −sgn(σ(t))
which guarantees that x(t) → xd(t) in finite time.
The plant discretization is given by:
xk+1 − xkh
= usk
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
CASE WITHOUT DISTURBANCE
At time tk the implicit input is set equal to
usk ∈ −sgn(xk+1 − xd ,k+1) +xd ,k+1 − xd ,k
h
Let us setwk+1
∆= husk − xd ,k+1 + xd ,k
This gives rise to the discrete-time sliding variable dynamics:
σk+1 − σk = wk+1
wk+1 ∈ −h sgn(σk+1).
This is a generalized equation with unknown σk+1, also called aone-step non-smooth problem (OSNSP).
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
EQUIVALENT FORMULATIONS OF THE OSNSP
This generalized equation may also be written equivalently as aLinear Complementarity Problem (LCP) 0 ≤ Mλ+ q ⊥ λ ≥ 0:
0 ≤
(
1 −1−1 1
)(
λ1,k+1
λ2,k+1
)
+
(
h − σkh + σk
)
⊥
(
λ1,k+1
λ2,k+1
)
≥ 0
(1)where σk+1 = λ1,k+1 − λ2,k+1 is unique for all h and σk . Anotherequivalent formulation is the inclusion in a normal cone:
σk+1 ∈ −N[−h+σk ,h+σk ](σk+1) (2)
and the variational inequality: Find σk+1 ∈ [−h + σk , h + σk ]such that:
〈σk+1, z − σk+1〉 ≤ 0 for all z ∈ [−h + σk , h + σk ] (3)
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
EQUIVALENT FORMULATIONS OF THE OSNSP
Inverting the above generalized equation we find its “dual”formulation:
wk+1 + σk ∈ −N[−h,h](wk+1) (4)
Using some basic convex analysis tools we infer:
wk+1 = −proj([−h, h];σk) ⇐⇒ wk+1 = argminz∈[−h,h]
1
2(z − σk)
2
This shows that a variety of tools preparing for efficientnumerical solvers of the OSNSP for more complex cases emergefrom these equivalent formulations.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
EQUIVALENT FORMULATIONS OF THE OSNSP
Using that usk = 1hwk+1 +
xd,k+1−xd,kh
, we finally find that theimplicit input is computed at step k as:
usk = proj([-1,1];−σk
h) +
xd,k+1−xd,k
h
=
−σk
h+
xd,k+1−xd,k
hif |σk | ≤ h
−1 +xd,k+1−xd,k
hif σk > h
1 +xd,k+1−xd,k
hif σk < −h
This is a set-valued controller, taking values inside [−1, 1] as itscontinuous-time counterpart.
The implicit controller is non-anticipative (it is causal).
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
EQUIVALENT FORMULATIONS OF THE OSNSP
1 The sliding surface is attained after a finite number of stepsk∗ (the proof mimics that of the continuous-time case). Thisis easily shown with a graphical interpretation of thegeneralized equation with unknown σk+1, and iterating it (seenext Figure).
2 On the sliding surface where σk = 0 for all k ≤ k∗, thenusk =
xd,k+1−xd,kh
, since the selection of the set-valued term(which is wk+1) is zero (see the generalized equation for σk+1:wk+1 = σk+1 − σk = 0 after tk∗).
3 Once the sliding surface is reached, one has σk = 0 for allk > k∗: no limit cycles around the sliding surface.
4 The controller is causal because we use the discretizeddynamics to form a generalized equation to compute it.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
EQUIVALENT FORMULATIONS OF THE OSNSP
h
σk+2
σk+1
σk
σk < −h
−hsgn(σk+1) (solid lines)σk+1 − σk (dashed lines)
−h
σk > h
−h ≤ σk ≤ h
step k + 2step k + 3
step k + 1step k
σk
σk+3 = 0
0
σk+1
Figure: Graphical interpretation of the generalized equation.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
CASE WITH DISTURBANCE
Let us consider x(t) ∈ u(t) + d(t), with |d(t)| ≤ δ < 1 for all t.Proceeding as in the disturbance-free case we obtain
σ(t) = u(t) + xd(t) + d(t)
The set-valued controller us ∈ −sgn(σ)− xd(t) guaranteeswell-posed closed-loop and finite-time convergence to theattractive surface σ = 0.
The Euler discretization of the plant is given by:
xk+1 = xk + huk + xd ,k+1 − xd ,k + hdk (5)
Since the perturbation d(t) is unknown, we cannot construct ageneralized equation directly from (5): we have to compute thecontroller from a nominal undisturbed system.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
CASE WITH DISTURBANCE
Let us set:xk+1 = xk + huk + xd ,k+1 − xd ,k (6)
(recall that xk is measured hence known at tk), and form with
σk+1∆= xk+1 − xd ,k+1 the generalized equation:
σk+1 = σk + huk + xd ,k+1 − xd ,k
uk ∈ −sgn(σk+1)− xd ,k+1 + xd ,k
(7)
whose unknown is σk+1.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
CASE WITH DISTURBANCE
We do as for the undisturbed case and the set-valued controller iscomputed from the generalized equation:
σk+1 = σk + wk+1
wk+1 ∈ −h sgn(σk+1)⇔ u
sk = proj([-1,1]; −σk
h) +
xd,k+1−xd,k
h
The implicit controller is non-anticipative.
The “sliding surface” σk = 0 is reached after a finite numberof steps.
The domain |σk | ∈ h [−δ, δ] is reached after a finite numberof steps.
The discrete-time controller satisfies usk = −dk during the“sliding mode” phase (taking values inside [-1,1]).
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
CASE WITH DISTURBANCE
In the sliding phase:
0u(t) = −d(t)
-1
1
(Filippov’s solution)
explicit discretization(jumps from +1 to -1)
uk = −dk (implicit discretization)
Figure: Disturbance compensation via (set-valued) implicit discretization.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
LYAPUNOV STABILITY
The implicit discretization yields a discrete-time dynamics which isa good reproduction of the continuous-time dynamics: in particularit yields a finite-time Lyapunov stable sliding-variable dynamics.
Let us analyze the unperturbed case (notice: even in this case, theexplicit discretization does not share this nice property...).
We choose Vk = |σk |, and we show this is a Lyapunov function(global, finite-time stability) for the system:
σk+1 − σk = wk+1
wk+1 ∈ −h sgn(σk+1).(8)
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
LYAPUNOV STABILITY
1 σk > h: then σk+1 = σk + wk+1 ≥ σk − h > 0 (because|wk+1| ≤ h), so Vk+1 − Vk = σk+1 − σk = wk+1 = −h < 0.
2 σk < −h: similarly we get σk+1 < 0 andVk+1 − Vk = −σk+1 + σk = −wk+1 = h > 0.
3 σk ∈ (−h, h):
1 Suppose σk+1 > 0: then σk+1 = σk − hsgn(σk+1))σk − h < 0:contradiction.
2 Suppose σk+1 < 0: then σk+1 = σk − hsgn(σk+1))σk + h > 0:contradiction.
Thus σk+1 = 0. Then σk+2 = −h(σk+2) ⇒ σk+2 = 0, and soon for σk+n = 0, n ≥ 3. Thus Vk+1 = −|σk | ≤ 0 andVk+n = 0, n ≥ 3.
4 σk = h: σk+1 = h − hsgn(σk+1) thus σk+1 = 0 (bothσk+1 > 0 and σk+1 < 0 yield contradictions). Back to case 3.
5 σk = −h: idem σk+1 = 0. Back to case 3.
Discrete-time sliding mode control: Do it implicitly !
INSIGHT ON THE IMPLICIT DISCRETIZATION
SUMMARY
1 The implicitely discretized set-valued controller is easily solvedwith a (simple) generalized equation.
2 In theory the input and output chattering due to discretization(numerical chattering) no longer exists.
3 Lyapunov finite-time stability of the sliding-variable dynamicsis proved in discrete-time.
4 There exists a discrete-time sliding surface (even in thepresence of a disturbance) and on this surface the set-valuedcontroller “observes” the equivalent disturbance.
5 In the explicitly discretized controller, there is no selectionprocedure to choose the input signal at σk = 0 (even in theundisturbed case). The implicit version is solved with ageneralized equation which chooses THE suitable selection inthe set-valued sign function.
6 The structure of the continuous-time controller is notchanged.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
THE EXPERIMENTAL SET-UP
Figure: Photography and scheme of the IRCCyN (Ecole Centrale deNantes) electropneumatic system.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
THE EXPERIMENTAL SET-UP
This is a fourth order system. After some manipulations the slidingsurface dynamics is obtained as:
σ =∆Φ
Φn
Ψn +∆Ψ+
[
1 +∆Φ
Φn
]
us .
withσ(x , t) = e + λ1e + λ0e
and e∆= y − yd(t). The controller us is a set-valued input defined
asus ∈ −G sgn(σ)
The controller us has been implemented under three discreteforms.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
IMPLEMENTED CONTROLLERS
Explicit discretization:
usk = −G sgn(σk)
Explicit saturated discretization:
usk = −G sat(σk , ǫ)
with
sat(σk , ǫ) =
{
sgn(σk) if |σk | ≥ ǫ
σk if |σk | < ǫ.
Implicit discretization:
usk ∈ −G sgn(σk+1)
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
IMPLEMENTED CONTROLLERS
The three discrete-time controllers have been implemented with:
Several feedback gains from G = 104 to G = 106.
Several sampling times from h = 1 ms to h = 15 ms.
Six saturation widthes (results unchanged).
Chattering in input and ouput is measured with the total variationof the signals:
Var[a,b](f ) =N−1∑
i=0
|f (ti+1)− f (ti )| (9)
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
OUTPUT CHATTERING
0 2 4 6 8 10 12 14 16 18 20−50
−40
−30
−20
−10
0
10
20
30
40
50
((a)) Explicit method.
0 2 4 6 8 10 12 14 16 18 20−50
−40
−30
−20
−10
0
10
20
30
40
50
((b)) Saturation method.
0 2 4 6 8 10 12 14 16 18 20−50
−40
−30
−20
−10
0
10
20
30
40
50
((c)) Implicit method.
Figure: Real position y (mm) in blue and yd (mm) in red, under h = 1msfor G = 105.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
OUTPUT CHATTERING
0 2 4 6 8 10 12 14 16 18 20−60
−40
−20
0
20
40
60
((a)) Explicit method.
0 2 4 6 8 10 12 14 16 18 20−60
−40
−20
0
20
40
60
((b)) Saturation method.
0 2 4 6 8 10 12 14 16 18 20−40
−30
−20
−10
0
10
20
30
40
((c)) Implicit method.
Figure: Real position y (mm) in blue and yd (mm) in red, underh = 15ms for G = 105.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
OUTPUT CHATTERING
Typical total variations of position error e
h 5ms 10ms 15ms
Explicit con-trol
1.7742e+03 1.6081e+03 2.5070e+03
Saturationcontrol
2.0749e+03 2.1638e+03 2.5756e+03
Implicit con-trol
650.2710 480.1660 228.8022
Table: Variation of position error e, G = 105.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
INPUT CHATTERING
0 2 4 6 8 10 12 14 16 18 20−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
((a)) Explicit
0 2 4 6 8 10 12 14 16 18 20−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
((b)) Saturation
Figure: Switching function: explicit method (sign(σk)) and saturationmethod (sat(σk)), G = 104 (results almost unchanged for allh ∈ [1, 15]ms).
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
INPUT CHATTERING
0 2 4 6 8 10 12 14 16 18 20−0.4
−0.3
−0.2
−0.1
0
0.1
0.2
0.3
0.4
((a)) G = 104, h = 5ms.
0 2 4 6 8 10 12 14 16 18 20−0.02
−0.015
−0.01
−0.005
0
0.005
0.01
0.015
0.02
0.025
((b)) G = 105, h = 15ms.
Figure: Switching function: implicit method (selection of sign(σk+1)).
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
INPUT CHATTERING
Typical total variations of controller us
h 5ms 10ms 15ms
Explicit control 2050 1932 1836
Saturation con-trol
1.9858e+03 1902 1860
Implicit control 34.7510 25.2005 8.1039
Table: Switching function, gain G = 105.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
COMMENTS
The input and the output spurious oscillations (numericalchattering) are almost suppressed with the implicitdiscretization.
On the experimental set-up, the implicit controller is asmooth, noiseless signal.
The magnitude of the selection usk ∈ G sgn(σk+1) remainsconstant for any value of the gain G ∈ [104, 106]:
G 104 105 106
5 ms (−0.3, 0.35) (−0.03, 0.035) (−0.003, 0.003)
10 ms (−0.25, 0.3) (−0.025, 0.03) (−0.0025, 0.0025)
Table: Magnitude of the selection of sgn(xk+1) (=usk
G).
This is in perfect agreement with theoretical results.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
CONCLUSIONS AND FURTHER EXPERIMENTAL RESULTS
Experiments on a set-up with lots of uncertainties and noise,remarkably confirm theory and numerical simulations.
One important feature of the implicit controllers is theirinsensitivity with respect to feedback gain G .
Also they allow for large sampling periods h (15 or 20 ms inour experiments, performance still better than explicitcontroller with much smaller h) =⇒ less calculations, cheaperimplementation.
Adding a saturation does not solve the problem in general, ifthe saturation width is not properly tuned. And what aboutmultiple sliding surfaces ??
Other experiments have been led on an inverted pendulum(underactuated) system. Results are quite similar, both oututand input chattering are suppressed.
The discretization of the equivalent part of the controller−(CB)−1CAx may also play a role in the closed-loop stability[Huber-Acary-Brogliato 2015].
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
CONCLUSIONS AND FURTHER EXPERIMENTAL RESULTS
M
θ
ma, l
x
Figure: Inverted pendulum on a cart (laboratory CRISTAL, EcoleCentrale de Lille, France).
Underactuated system. Main disturbance: dry friction in prismaticand pivot joints. Unmatched disturbance negligible compared withmatched one [Riachy-Orlov-Floquet-Richard, IJRNLC 2008].
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
CONCLUSIONS AND FURTHER EXPERIMENTAL RESULTS
0 2 4 6 8 10
t (s)
−0.10−0.08−0.06−0.04−0.020.000.020.040.060.08
σ
0 2 4 6 8 10
t (s)
−0.4−0.3−0.2−0.10.00.10.20.30.40.5
us(V
)Figure: Inverted pendulum: σ and us , implicit controller with h = 20,G = 1.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
CONCLUSIONS AND FURTHER EXPERIMENTAL RESULTS
0 2 4 6 8 10
t (s)
−0.4−0.3−0.2−0.10.00.10.20.30.4
σ
0 2 4 6 8 10
t (s)
−1.0
−0.5
0.0
0.5
1.0
us(V
)
Figure: Inverted pendulum: σ and us , explicit controller with h = 20,G = 1.
For given sampling time, σimplicit ≈σexplicit
5
Control input: magnitude and variation (chattering)drastically decreased with implicit.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
CONCLUSIONS AND FURTHER EXPERIMENTAL RESULTS
Insensitivity of G sgn(σk+1) w.r.t. the gain in the sliding-modephase:
0 2 4 6 8 10
t (s)
−0.4−0.3−0.2−0.10.00.10.20.30.4
us(V
)
0 2 4 6 8 10
t (s)
−0.4−0.3−0.2−0.10.00.10.20.30.4
us(V
)
Figure: Inverted pendulum: control input with G = 1 (left), G = 3(right), h = 7.
Discrete-time sliding mode control: Do it implicitly !
EXPERIMENTAL RESULTS
CONCLUSIONS AND FURTHER EXPERIMENTAL RESULTS
Influence of sampling period
2 3 4 5 6 7 8 9 10 11
Sampling period (ms)
0.0040.0050.0060.0070.0080.0090.0100.0110.0120.013
Mean|σ|
implicit
linear regression
Figure: Inverted pendulum: evolution of the precision with respect to thesampling period (implicit discretization)
Discrete-time sliding mode control: Do it implicitly !
EXTENSIONS
1 The zero-order-hold (ZOH) method can be used as well.
2 Higher co-dimension of the sliding surface (CB is a p × pmatrix) [Acary-Brogliato SCL 2010, Huber-Acary-Brogliato2014]: needs to solve at tk a generalized equation
σk+1 = σk + CB∗usk
−usk ∈ αSgn(σk+1)(10)
3 Twisting controller [Huber’s PhD thesis, 2015]: implicitdiscretization needs a modification to guarantee goodproperties (finite-time convergence, Lyapunov stability with aLyapunov function close to [Orlov, SIAM Cont. Optim.2005]).
4 Super-twisting: preliminary results in [Acary-Brogliato-Orlov,IEEE TAC 2012]. More complex to analyse...
5 Nonlinear systems [Brogliato-Polyakov 2015].
Discrete-time sliding mode control: Do it implicitly !
EXTENSIONS
A SIMPLE NONLINEAR CASE
Consider the set-valued system:
{
x(t) = v(t)v(t) ∈ −x(t)3 − sgn(x(t))
(11)
where x(t) ∈ R.
This system is globally fixed-time stable, with Lyapunov functionV (x) = x2 [Polyakov, IEEE TAC 2012].
(the cubic term makes such controller useless in practice, butserves here as an academic example)
An explicit discretization may destabilize this otherwise globallyfinite-time stable system [Levant, IEEE CDC 2013].
Discrete-time sliding mode control: Do it implicitly !
EXTENSIONS
THE GENERALIZED EQUATIONS FOR CONTROL CALCULATION
Let us discretize the system in a fully implicit way:
{
xk+1 = xk + hvkvk ∈ −x3k+1 − sgn(xk+1)
⇐⇒
{
xk+1 = xk − hx3k+1 + huk+1
uk+1 ∈ −sgn(xk+1)(12)
Then we may form the two dual generalized equations withunknown xk+1 and uk+1, respectively:
(1 + hx2k+1)xk+1 − xk + hζk+1 = 0
ζk+1 ∈ sgn(xk+1)(13)
and
ξk+1 + hξ3k+1 − xk − huk+1 = 0ξk+1 ∈ −N[−1,1](uk+1)
(14)
Discrete-time sliding mode control: Do it implicitly !
EXTENSIONS
THE GENERALIZED EQUATIONS FOR CONTROL CALCULATION
If (x∗k+1, u∗
k+1) is a solution of (13) and (14), then the control vkin (12) with the fully-implicit method is defined as follows
vk = −(x∗k+1)3 − u∗k+1 (15)
Proposition
The generalized equation (13) has a unique solution x∗k+1 for anyh > 0 and any xk . If xk > h then x∗k+1 > 0, if xk < −h thenx∗k+1 < 0, and if |xk | ≤ h then x∗k+1 = 0. Moreover x∗k+1 is afunction of xk and h only.
and
Proposition
The generalized equation (14) has a unique solution u∗k+1 for anyh > 0 and any xk . If xk ≥ h then u∗k+1 = −1, if xk ≤ −h thenu∗k+1 = 1, and if |xk | < h then u∗k+1 = − xk
h∈ [−1, 1].
Discrete-time sliding mode control: Do it implicitly !
EXTENSIONS
THE GENERALIZED EQUATIONS FOR CONTROL CALCULATION
In a general setting the generalized equations have to be solvednumerically with a suitable OSNSP solver. If xk > h then x∗k+1 is
the unique root of x3k+1 +1hxk+1 −
xk−hh
= 0. Equivalently:
x∗k+1 = 2−13
(
xk−hh
+
(
(
xk−hh
)2+ 4 1
27h3
)12
)
13
+ 2−13
(
xk−hh
−
(
(
xk−hh
)2+ 4 1
27h3
)12
)
13
(16)
and similarly for xk < −h. If |xk | ≤ h then x∗k+1 = 0.
Discrete-time sliding mode control: Do it implicitly !
EXTENSIONS
LYAPUNOV STABILITY
Proposition
Let h > 0. The discrete-time system (12) with the fully-implicitmethod, has a globally Lyapunov finite-time stable equilibriumx∗ = 0 and the equilibrium is reached after a finite number of stepsN. Moreover xk = 0 for all k ≥ N + 1 and uk+1 = 0 for allk ≥ N + 2, while N ≤ ⌊ x0
h⌋ for any x0 ∈ R.
The Lyapunov function can be chosen as Vk = |xk |.
Remark: A semi-implicit method (replace x3k+1 by x3k in thecontroller) does not work very well.
Discrete-time sliding mode control: Do it implicitly !
GENERAL CONCLUSIONS
1 We apply and adapt discretization techniques pioneered inNonsmooth Contact Mechanics by J.J. Moreau and M. Jean(1985, 1987, 1988), to sliding mode (set-valued) control:implicit Euler (or ZOH) discretization.
2 It is proved analytically, numerically and experimentally thatimplicit method supersedes explicit one: input and outputnumerical chattering suppressed.
3 Classical ECB-SMC treated extensively, but can be appliedalso for twisting algorithm (more complex, loss of maximalmononicity).
Discrete-time sliding mode control: Do it implicitly !
BIBLIOGRAPHY
V. Acary, B. Brogliato, Implicit Euler numerical scheme and chattering-freeimplementation of sliding mode systems, Systems and Control Letters, vol.59,pp.284-293, 2010
V. Acary, B. Brogliato, Y. Orlov, Chattering-free digital sliding-mode controlwith state observer and disturbance rejection, IEEE Transactions on AutomaticControl, vol.57, no 5, pp.1087-1101, May 2012
O. Huber, Analyse et implementation du controle par modes glissants en tempsdiscret, PhD thesis, INRIA and University Grenoble Alpes, May 2015.
B. Wang, B. Brogliato, V. Acary, A. Boubakir, F. Plestan, Experimentalcomparisons between implicit and explicit implementations of discrete-timesliding mode controllers: Toward input and outout chattering suppression, IEEETransactions on Control Systems Technology, 2015.
O. Huber, V. Acary, B. Brogliato, Comparison between explicit and implicitdiscrete-time implementations of sliding-mode controllers, Proc. 52nd IEEEConference on Decision and Control, Firenze, pp.2870-2875, December 2013.
O. Huber, V. Acary, B. Brogliato, Discrete-time twisting controller withoutnumerical chattering: analysis and experimental results with an implicit method,Proc. 53rd IEEE Conference on Decision and Control, Los Angeles,pp.4373-4378, December 2014.
O. Huber, V. Acary, B. Brogliato, Lyapunov stability and performance analysisof the implicit discrete sliding mode control, submitted.
B. Brogliato, A. Polyakov, Globally stable implicit Euler time-discretization of anonlinear single-input sliding-mode control system, submitted.