Event-based Control: Theory and Application J AN L UNZE - - PowerPoint PPT Presentation
Event-based Control: Theory and Application J AN L UNZE - - PowerPoint PPT Presentation
Event-based Control: Theory and Application J AN L UNZE Ruhr-Universitt Bochum email: Lunze@atp.rub.de Overview Introduction to event-based control 1 Event-based state feedback 2 Analysis of the event-based control loop 3 Experimental
SLIDE 1
SLIDE 2
Overview
1
Introduction to event-based control
2
Event-based state feedback
3
Analysis of the event-based control loop
4
Experimental evaluation
5
Event-based PI control
6
Conclusion and outlook
SLIDE 3
Introduction to event-based control
SLIDE 4
Event-based control
- Aim: Reduction of the network traffic.
SLIDE 5
Event-based control
Why is the theory of sampled-data control not applicable? No zero-order hold input. No periodic sampling → no discrete-time model available. Sampling theorem possibly violated. It is necessary to develop a new theory of event-based control.
SLIDE 6
Literature survey
- Deadband control
(OTANEZ, MOYNE, TILBURY, American Control Conf., 2002) Do not send new data as long as ||x(t) − x(tk)|| < ¯ e
- Quantised state feedback
- Self-triggered control
(TABUADA, IEEE Trans. Autom. Control, 2007) Estimate the next event time: tk+1 = h(x(tk), tk)
SLIDE 7
Literature survey
- Deadband control
- Quantised state feedback
(GRÜNE, JUNGE, Syst. Control Lett., 2005) (DE PERSIS, IFAC World Congress, 2008)
- Self-triggered control
(TABUADA, IEEE Trans. Autom. Control, 2007)
SLIDE 8
Literature survey
- Deadband control
- Quantised state feedback
- Self-triggered control
(TABUADA, IEEE Trans. Autom. Control, 2007) Estimate the next event time: tk+1 = h(x(tk), tk)
SLIDE 9
Literature survey
Evaluation of existing approaches: Many approaches result from an extension of sampled-data control and do not answer the three basic questions Many approaches do not consider any kind of disturbance and model uncertainties. Almost all approaches use a zero-order hold as control input generator.
SLIDE 10
Experiment
What is a typical behaviour of an event-based control loop?
SLIDE 11
Experiment
Discrete-time control:
2
SLIDE 12
Experiment
Event-based control:
- 2
2
SLIDE 13
Control aim
„Ultimate boundedness“ („practical stability“): Hold the state x(t) inside a set Ωd: x(t) ∈ Ωd, ∀t ≥ T(x0), x0 ∈ Ω1, d(t) ∈ [dmin, dmax]
d
1
Then the set Ωd is said to be robust positively invariant.
SLIDE 14
Event-based state feedback
SLIDE 15
Event-based state feedback
Why do we need information feedback? ... to stabilise an unstable plant, ... to compensate model uncertainties, ... to attenuate disturbances.
SLIDE 16
Event-based state feedback
Plant: ˙ x(t) = Ax(t) + Bu(t) + Ed(t), x(0) = x0 y(t) = Cx(t) Assumptions: Linear, asymptotically stable plant, no model uncertainties, synchronised clocks, no transmission delays, no computational restrictions.
SLIDE 17
Event-based state feedback
- Main idea: The event-based controller should mimic the
behaviour of a continuous state-feedback controller with adjustable precision. ||x(t) − xSF(t)||
!
≤ emax
SLIDE 18
Control input generator
- ˙
xSF(t) = (A − BK)
- ¯
A xSF(t) + Ed(t) u(t) = −KxSF(t) Behaviour of the continuous feedback loop after the state xSF(tk) at time tk is known: u(t) = −Ke
¯
A(t − tk)xSF(tk)− t
tk
Ke
¯
A(t − τ)Ed(τ) dτ, t ≥ tk
SLIDE 19
Control input generator
u(t) = −Ke
¯
A(t − tk)xSF(tk)− t
tk
Ke
¯
A(t − τ)Ed(τ) dτ, t ≥ tk ↓ Control input generator mimics the continuous state feedback: u(t) = −Ke
¯
A(t − tk)x(tk) − t
tk
Ke
¯
A(t − τ)Eˆ dk dτ, t ≥ tk
SLIDE 20
Control input generator
This input is generated by the following system: ˙ xs(t) = ¯ Axs(t) + Eˆ dk, xs(t+
k ) = x(tk),
t ≥ tk u(t) = −Kxs(t)
SLIDE 21
Event generator
- Event generator initiates an information exchange whenever
|| x(tk) − xs(tk
−)
- x∆(tk)
|| = ¯ e
SLIDE 22
Disturbance estimator
- For constant disturbances
d(t) = ¯ d, t ∈ [tk−1, tk) the state difference is x(tk) − xs(tk) = tk
tk−1
e A(t − τ)E (¯ d − ˆ dk−1) dτ = A−1 e A(tk+1 − tk) − I
- E (¯
d − ˆ dk−1).
SLIDE 23
Disturbance estimator
The „mean“ magnitude ¯ d of the disturbance in the time interval t ∈ [tk−1, tk] is used as disturbance estimate ˆ dk in the time interval t ≥ tk: Disturbance estimator ˆ d0 = ˆ dk = ˆ dk−1 +
- A−1
e A(tk − tk−1) − I
- E
+ x(tk) − xs(t−
k )
SLIDE 24
Event-based control algorithm
Summary of the event-based control algorithm Check the difference ||x(t) − xs(t)|| until an event is detected. Then:
1
Send the information x(tk) from the event generator to the control input generator.
2
Determine the disturbance estimate ˆ dk.
3
Reinitialise the control input generator: xs(t+
k ) = x(tk)
SLIDE 25
Event-based control algorithm
Behaviour of the event-based control loop:
x t
s( ),
( ) x t {
e t0 t1 t2 t
SLIDE 26
Summary
Three novelties of this methods with respect to literature: The control input generator is not a zero-order hold, but determines exponential inputs u(t). The event generator compares the behaviour of the event-based control loop with some reference system (model of the continuous feedback loop). A disturbance estimate is used to adapt the event-based loop to the unknown disturbance d(t).
SLIDE 27
Analysis of the event-based control loop
SLIDE 28
Analysis of the event-based control loop
Closed-loop system between two consecutive events t ∈ [tk, tk+1): ˙ x(t) ˙ xs(t)
- =
A −BK O ¯ A x(t) xs(t)
- +
E O
- d(t) +
O E
- ˆ
dk x(tk) xs(t+
k )
- =
x(tk) x(tk)
- y(t) = (C
O) x(t) xs(t)
- State transformation
x∆(t) xs(t)
- =
I −I O I x(t) xs(t)
SLIDE 29
Analysis of the event-based control loop
Transformed state-space model ˙ x∆(t) ˙ xs(t)
- =
A O O ¯ A x∆(t) xs(t)
- +
E O
- (d(t) − ˆ
dk)
- d∆(t)
+ O E
- ˆ
dk
- x∆(tk)
xs(t+
k )
- =
- x(tk)
SLIDE 30
Analysis of the event-based control loop
- d∆(t) = d(t) − ˆ
dk affects the (uncontrolled) plant. For a good approximation d(t) − ˆ dk ≈ 0, for t ≥ tk no communication is necessary.
SLIDE 31
Analysis of the event-based control loop
Event-based control loop for small disturbance ¯ d˜ d(t) There is no event for t > 0 if ||x(t) − xs(t)|| = || t e A(t − τ)E (¯ d˜ d(τ) − ˆ d0) dτ|| < ¯ e. Reformulation of the event condition: max
t≥0 ||
t e A(t − τ)E (¯ d˜ d(τ) − ˆ d0) dτ|| ≤ max
t≥0
t ||e A(t − τ)E|| dτ · max
t≥0 ||¯
d˜ d(t)|| ≤ ∞ ||e Aτ E|| dτ · |¯ d|.
SLIDE 32
Analysis of the event-based control loop
Theorem (Insensitivity to small disturbances) d(t) = ¯ d˜ d(t) ||˜ d(t)|| ≤ 1 For sufficiently small disturbance magnitude |¯ d| the event generator does not generate any event for t > 0. |¯ d| < ¯ e ∞
0 ||e Aτ E|| dτ
SLIDE 33
Analysis of the event-based control loop
Communication frequency described by Tmin = min
k (tk+1 − tk)
Assumption: ||d∆(t)|| ≤ d∆max for t ≥ 0 Theorem (Bounded sampling rate) Minimum time between two communication events: Tmin ≥ ¯ T with ¯
T
||e AτE|| dτ = ¯ e d∆max
SLIDE 34
Analysis of the event-based control loop
Event-based control vs. continuous state-feedback control For e(t) = x(t) − xSF(t) we get ˙ e(t) = ˙ x(t) − ˙ xSF(t) = Ax(t) − BKxs(t) + Ed(t) − ¯ AxSF(t) − Ed(t) = (A − BK)e(t) + BK (x(t) − xs(t))
- x∆(t)
. and ˙ e(t) = ¯ Ae(t) + BKx∆(t), e(0) = 0 ||e(t)|| ≤ ¯ e ∞ ||e ¯ Aτ BK|| dτ
SLIDE 35
Analysis of the event-based control loop
Theorem (Bounded approximation error) ||x(t) − xSF(t)|| ≤ emax with emax = ¯ e · ∞ ||e ¯ Aτ BK|| dτ The event-based control loop mimics the continuous loop with adjustable accuracy emax. x(t) ∈ Ωs(xSF(t)) = {x | ||x − xSF(t)|| ≤ emax}
SLIDE 36
Analysis of the event-based control loop
20 40 60 80 100
- 2
- 1
1 2
t x k ( ) x k
s( )
x k ( ) x k
SF( )
SLIDE 37
Analysis of the event-based control loop
Summary: The event-based control loop mimics the continuous state-feedback loop with adjustable precision Increase the precision emax by decreasing the event threshold ¯ e Consequence: Increase of communication frequency
1 Tmin
SLIDE 38
Experimental evaluation
SLIDE 39
Experimental evaluation
T1 T2 T3 T4 TS TW TB TM
SLIDE 40
Experimental evaluation
Thermofluid process
T3 T2 u1 d HW V1 V2 TB
L T
u2
SLIDE 41
Experimental evaluation
Design steps:
1
Design a state-feedback controller K with good disturbance attenuation properties.
2
Implement the event-based controller (control input generator, event generator, disturbance estimator)
3
Choose the event threshold ¯ e and evaluate the performance
- f the event-based control loop.
SLIDE 42
Experimental evaluation
Simulation results
t0=0 t0
, , , 4
SLIDE 43
Experimental evaluation
Simulation results emax = ¯ e · ∞
0 ||e ¯
Aτ BK|| dτ = 2.26 dmax =
¯ e ∞ ||eAτE|| dτ = 0.0114
SLIDE 44
Experimental evaluation
Experimental results
SLIDE 45
Experimental evaluation
Evaluation: Considerable reduction of the communication. Robustness against model uncertainties. Necessary extensions:
... for set-point tracking ... for quantitative robustness evaluation ... for nonlinear plants.
SLIDE 46
Event-based PI control
SLIDE 47
Event-based PI control
Constant external signals: d(t) = ¯ d, w(t) = ¯ w Set-point tracking: lim
t→∞ ||y(t) − ¯
w|| = 0.
SLIDE 48
Event-based PI control
Plant: ˙ x(t) = Ax(t) + Bu(t) + Ed(t), x(0) = x0 y(t) = Cx(t) Continuous PI controller: ˙ xr(t) = y(t) − w(t), xr(0) = xr0 u(t) = −KIxr(t) − KPx(t) Known result: If the closed-loop system is asymptotically stable, set-point tracking occurs.
SLIDE 49
Event-based PI control
PI-control input generator:
Model
- K=- K K
( )
P I
u( ) t dk xs( ) t w( ) t u( ) t x( ) tk dk Disturbance estimator xs( ) t ys( ) t xsr( ) t
SLIDE 50
Event-based PI control
˙ xs(t) ˙ xsr(t)
- =
- A − BKP
−BKI C O xs(t) xsr(t)
- xsI(t)
+
- O
−I
- w(t) +
- E
O
- ˆ
dk xs(t+
k )
= x(tk) u(t) = −(KP KI)xsI(t) Only the state xs(t) is updated at event time tk. Event generator and disturbance estimator remain the same.
SLIDE 51
Set-point tracking properties
For large disturbance ¯ d, an event is generated at time t1 and the disturbance is estimated correctly: ˆ d1 = ¯ d. Hence, set-point tracking occurs: limt→∞ ||y(t) − ¯ w|| = 0. For small disturbance ¯ d, no event occurs: ||x∆(t)|| = ||A−1 e At − I
- E¯
d|| < ¯ e, t ≥ 0. Hence, the output remains in the set lim
t→∞ y(t) ∈ {||y − ¯
w|| ≤ ||C||¯ e}
SLIDE 52
Set-point tracking properties
2000 0.1 0.2
- 1
1 2 3
- 1
1 t0=0 t1 t0 1000 4000 events x2 in K x1 in cm d d ,
k
^ t0 t1 t1 t2 t2 t3 t3 t4 t4 t5 t6 t in s dk ^ d _ d _ d _ x x x x x x xs xs xs xs xs xs dk ^
SLIDE 53
Further extensions
(Lehmann, PhD Thesis 2011): Event-based output feedback using a state observer Robustness against communication delay and packet loss Data-rate constraints → communication of quantised information Discrete-time implementation
SLIDE 54
Conclusion and outlook
SLIDE 55
Conclusions and outlook
Main idea: Mimic the continuous feedback system by the event-based control loop with adjustable precision
SLIDE 56
Conclusions and outlook
In which situation should information be transmitted? ... if ||x(t) − xs(t)|| = ¯ e Which information should be transmitted? x(tk) How should the control input be generated? ... use the model of the continuous loop
SLIDE 57
Conclusions and outlook
Interesting open problems: What happens if the network introduces time delay and package loss? How should event-based control be implemented without synchronous clocks? How can event-based control be extended to multiloop systems? Further extensions to unstable plants, nonlinear systems, output feedback etc.
SLIDE 58
Conclusions and outlook
To read:
- J. Lunze, D. Lehmann: A state-feedback approach to
event-based control, Automatica (2010)
- D. Lehmann, J. Lunze: Extension and experimental
evaluation of an event-based state-feedback approach, Control Engineering Practice 19 (2011)
- J. Lunze: Event-based control: A tutorial introduction,
SICE Journal 11 (2010).
- L. Grüne, F. Müller, S. Jerg, O. Junge, M. Post, D.
Lehmann, J. Lunze: Two complementary approaches to event-based control, Automatisierungstechnik 58 (2010).
- D. Lehmann: Event-Based State-Feedback Control, PhD