You are on page 1of 37

Predictive control

Olivier Gehan
Ensicaen

olivier.gehan@ensicaen.fr
Outline

1 - Minimal variance control


1 1

2 - One step ahead predictive control


1 1

3 - One step ahead predictive control with frequency weighting

1 ∗ 1
Minimal Variance Control
The criteria

Find the control value u(t) that minimizes the following criteria

1 ∗ 1

Optimal prediction

/ 1

j = d+1

1/
Derivation of the criteria


1 1


1/ 1

Derivation

! ∗
! 1/
2 1/ 1
! !

#$ %& & /% () *) +)
=,- .-
#' % )

! ∗
0⇒ 1/ 1 0
!
Linear Time Invariant controller structure

! ∗
0⇒ 1/ 1 0
!

1/ ∗ 1


1


1


2 3 4 1
Closed-loop analysis

7' 7$
v

+ + + y(t)
1 u(t) 5

T 5
3 5 + 5 +
-

+
η t
2 5
+

7' Input disturbance (low frequency)

7$ Output disturbance (low frequency)

∗ Reference sequence

η t Noise mesurements (high frequency)


Closed-loop performances

A 7 System equation

2 ∗
3 4 1 Controller equation

Output performances
4 ∗
3
5 7
8+ 5 8+ 5

Input performances

4 ∗
2
5 1 7
8+ 5 8+ 5
Closed-loop performances

Characteristic polynomial

8+ 5 5 3 5 5 2 5

5 5 5 5 5 5

5 5 5 5 5

5 5

! 5 and C 5 MUST be stable polynomials (Hurwitz)


Closed-loop performances

Output tracking performances


9 :;< = :;< ∗ 9 :;< @ :;< ∗ ∗
>? :;< 9 :;< @ :;<
=

Perfect tracking !!

Disturbance rejection performances

A :;< B :;< 9 :;< C :;< B :;< C :;<


>? :;<
7 = 9 :;< @ :;<
7 @ :;<
7 = D


D E / 1

Minimal Variance Control


Closed-loop performances

Input tracking performances


4 ∗ ∗
u 1 1
8+

Inversion of the model!!

High Energy consumption and input saturation problem

Input rejection performances

2
7 7
8+ 5 5 5
One step ahead predictive control
The modified criteria

Find the control value u(t) that minimizes the following criteria


1 1

Additionnal term ≜ energy consumption term

0⇒ Minimal Variance Control


1/ 1
Derivation of the criteria


1/ 1

! ∗
! 1/
2 1/ 1
! !
!
2
!

! 1/ ,- H- -
,-
! .-

J
! ! .. J
1
! !
Derivation of the criteria

! ∗
2,- 1/ 1 2μ
!

! ,- ∗
0⇒ 1 1/
!

Let us introduce the prediction equation to replace 1/

Operate by () ∗
C L
1 1/
C
Linear Time Invariant controller structure

() ∗
C 1 1/
L

Introduce the prediction equation

() ∗
C
L
1

,- ,- ,- ∗
+C 1


3 2 4 1
Closed-loop performances

A 7 System equation

2 ∗
3 4 1 Controller equation

Output performances
4 ∗
3
5 7
8+ 5 8+ 5

Input performances

4 ∗
2
5 1 7
8+ 5 8+ 5
Closed-loop performances

Characteristic polynomial

8+ 5 5 3 5 5 2 5

,-
5 5 5 5 5 5
,-
5 5

(
5 5 5 + L) 5 5 5 5 5

Introduce the prediction equation


(
8+ 5 5 5 5 + L) 5 5

,-
8+ 5 5 5 5 5
Equivalent implementation scheme

,- ∗ 1 1/


1/ + ,- 1 5 5 y(t)
5 5
-

Prediction

1/
Equivalent scheme for stability analysis

&
7 0⇒ 1/ ) = y 1/ ) =

,- 1 5 y(t)
5 5
-
y(t+d+1) &

() ()
8+ 5 5 5 5 L
5 ⇒ 8+ 5 = 5 5 L
5

A single synthesis parameter : root-locus tool


Tracking performances

,-
4 ∗ ∗
,- ∗
8+ 8 8

5 ,- 5 ,- 5
∗ 5 8 5 5 5 5

Tracking dynamics does not depend on the predictor

Static performances
0
No bias 0⇒ 0 0
0 0 0

⇒ 1 D′ Integral action
Disturbance rejection

3 ()
7 S L
C
8+

O)
C :;< P
B :;< 9 :;< &C :;<

@ :;< >Q :;<


7

O)
C :;< B :;< 9 :;< &C :;<
P @ :;<
@ :;< >Q :;< C :;<
D

O)
P
B :;< 9 :;< &C :;<

>Q :;<
D

8 Hurwitz Disturbance rejection


One step ahead predictive control
with input frequency weighting
The modified criteria

Find the control value u(t) that minimizes the following criteria


1 1

R :;< ,- T-
with ) μ
S :;<
U-

is called Input Frequency Weighting


Derivation of the criteria


1/ 1

! ∗
! 1/
2 1/ 1
! !
!
2
!

! 1/ ,- H- -
,-
! .-

! U-
! T-
Derivation of the criteria

! ∗
U-
2,- 1/ 1 2μ
! T-

! ,- T- ∗
0⇒ 1 1/
! U-

Let us introduce the prediction equation to replace 1/

Operate by C ∗
1 1/
C
Linear Time Invariant controller


C 1

Let us introduce the relation between and

Operate by C H H ∗
1

H

C H 1


C H H F H 1


3 2 4 1
Disturbance rejection

3
7 S C
8+

X :;< R :;< &S :;< B :;< 9 :;< C :;<


7
>? :;<

X :;< R :;< &S :;< B :;< 9 :;< C :;< @ :;<


>? :;< C :;<
D

8+ Hurwitz but D is not a Hurwitz polynomial

Disturbance rejection ⇔ D factorizes 3

⇔ [

S C [
Closed-loop performances

A 7 System equation

2 ∗
3 4 1 Controller equation

Output performances
4 ∗
3
7
8+ 8+

Input performances

4 ∗
2
1 7
8+ 8+
Closed-loop performances

S C [
Characteristic polynomial

8+ 3 2

\C [
]

[ +

8+ [
Equivalent implementation scheme

∗ 1 1/


1/ + 5 5 5 y(t)
5 [ 5 5
-

Prediction

1/
Equivalent scheme for stability analysis

&
7 0⇒ 1/ ) = y 1/ ) =

5 5 y(t)
5 [ 5 5
-
y(t+d+1) &

8+ 5 5 5 5 [ 5 5 5

Frequency weighting synthesis : pole placement or frequency design


Equivalent scheme for stability analysis

&
7 0⇒ 1/ ) = y 1/ ) =

5 5 y(t)
5 [ 5 5
-
y(t+d+1) &

8+ 5 5 5 5 [ 5 5 5

Frequency weighting synthesis : pole placement or frequency design


Tracking performances

4 ∗ ∗
8+ 5 5 [ 5 5 5

5 5 5
∗ 5 5 5 [ 5 5 5

Tracking dynamics does not depend on the predictor

Static performances
1 1
No bias 0⇒ 1 0
1 1 [ 1 1 1
1 ′ Integral action
Semi - Perfect and Perfect tracking

If one choses 4 such that

4 8+
9

5 5 4 5 5 Semi-perfect
∗ 5 8+ 5 1 tracking

Moreover, if one choses 4 such that

5 5 [ 5 5 5 5 ^ 5

T 5 ^ 5

5 5 4 5 5 ^ 5 Perfect tracking
∗ 5 1
8+ 5 5 ^ 5

Perfect tracking IF AND ONLY IF B HURWITZ


!
Disturbance rejection

3 ()
7 S L
C
8+

O)
C :;< P
B :;< 9 :;< &C :;<

@ :;< >Q :;<


7

O)
C :;< B :;< 9 :;< &C :;<
P @ :;<
@ :;< >Q :;< C :;<
D

O)
P
B :;< 9 :;< &C :;<

>Q :;<
D

8 Hurwitz Disturbance rejection


Exercice on Matlab / Simulink

You might also like