Model Predictive Control Problem Formulationmocha-java.uccs.edu/ECE5590/ECE5590_Ch4_F15.pdf ·...

Post on 19-Aug-2020

2 views 0 download

Transcript of Model Predictive Control Problem Formulationmocha-java.uccs.edu/ECE5590/ECE5590_Ch4_F15.pdf ·...

ECE5590: Model Predictive Control 4–1

Model Predictive Control Problem Formulation

The objective of a model predictive control strategy is to:

Compute a trajectory of future control inputs that optimizes the futurebehavior of plant output, where the optimization is carried out within alimited time window

An Application Example

! Let’s examine how this might work for a golf game.

– Prior to tee-off, we analyze the course and game-time weatherconditions.

– Based on this knowledge - and the physical principles governingball trajectories as a function of club - we develop a model.

– Using this model, we develop a strategy for the next n golf strokesthat will land the ball in the hole.

– We execute the next shot in this optimal sequence.

– We then assess our success and use information gained to planthe next series of shots.

! Of course a key difference in golf is that our horizon is ever-shortening (we hope!)

! In practice, our actual play sequence will differ from the original set ofn shots in the optimal sequence.

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–2

! A part of this difference is due to unknowns (like how close to ourpotential we perform).

NOTE: In practice, we will have limitations (e.g., known injuries,maximum shot distance, etc.) that we will build in as constraints duringpre-game analysis.

Key principles of MPC demonstrated by this example include:

1. Moving prediction horizon window

2. Receding horizon control that only executes the next step

3. Need for current-time information to make the next prediction

4. Model that describes system dynamics used for prediction

5. Objective criterion based on measured difference between desired &actual response

Model Choice for MPC

! Three popular approaches to system modeling for predictive controldesign are:

– Finite Impulse Response (FIR)– Step Response (SR)– Transfer Function (TF)– State-Space (SS)

! Each approach exhibits certain advantages and disadvantages - thedevelopment in this course will focus on state-space models

! FIR, SR and TF models are of historical interest and will be presentedfor completeness

! All models will assume a discrete-time setting

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–3

Finite Impulse Response

! Also known as weighting sequence, the output is related to the inputvia the convolution operator

! For the single-input-single-output (SISO) case, we write

yk DNX

iD1

giuk#i

where uk and yk denote the input and output sequence elements,respectively.

! The sequence gi comprises the first N coefficients of an infiniteTaylor series in the unit time delay operator, z#1 , representing thedynamic process g.z/:

g.z/ D1X

iD0

giz#1

– This sequence will always decay to zero for the stable case.

! The first N values of the infinite series give a finite impulse responsewhich will capture the main process dynamics.

! A FIR model can be viewed as a representation of the discrete-timepulse response (expected value of the output y in response to asingle unit pulse u).

! This model generalizes easily to the multi-input-multi-output (MIMO)case by use of appropriate matrices.

Step Response

! Integrating the unit pulse response will give the unit step response,

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–4

h.z/ D1X

iD1

hiz#1

where

h.z/ D g.z/

4.z/

and 4.z/ is the one-step difference operator, 1 # z#1.

! The following plot shows the relationship between the impulse andstep response.

g4h3

h4 = h3 + g4

Transfer Function

! Again considering the SISO case we can writea.z/yk D b.z/uk

where the formb.z/

a.z/gives a transfer function representation for the

output-input ratio of the corresponding z-transforms.

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–5

! The polynomials assume the forms:a.z/ D 1 C a1z

#1 C a2z#2 C $ $ $ C anz#n

b.z/ D b0 C b1z#1 C b2z

#2 C $ $ $ C bmz#m

NOTE: Performing the long division b.z/=a.z/ will yield the correspondingunit pulse response g.z/.

State-Space

! We shall assume a linearized, discrete-time, state-space model of theplant:

x.k C 1/ D Ax.k/ C Bu.k/

y.k/ D Cyx.k/

z.k/ D Czx.k/

where x is an n-dimensional state vector, u is an `-dimensional inputvector, y is an my-dimensional vector of measured outputs, and z is anmz-dimensional vector of outputs which are to be controlled.

! Since there is always finite delay between measuring y.k/ andapplying u.k/, there is no direct feed-through term.

– Hence our model is strictly proper.

! For simplicity, we shall often assume y % z in which case C willdenote both Cy and Cz.

Relationship to FIR Model

We can use the discrete-time state equations to determine the sequenceparameters resulting from a unit pulse input:

x.0/ D 0

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–6

x.1/ D B

x.2/ D AB

x.3/ D A2B:::

x.n/ D An#1B

y.0/ D Cx.0/ C Du.0/

D D

y.1/ D CB

y.2/ D CAB

y.3/ D CA2B:::

y.n/ D CAn#1B

! Hence the FIR model sequence is given by:

g.z/ D D C CBz#1 C CABz#2 C CA2Bz#3 C CAn#1Bz#n

Relationship to Transfer Function Model

! Applying the z-transform to the state-space model,

zX.z/ D AX.z/ C BU.z/

.zI # A/X.z/ D BU.z/

X.z/ D .zI # A/#1BU.z/

andY.z/ D C.zI # A/#1BU.z/

! So that,

G.z/ D Y.z/

U.z/D C.zI # A/#1B

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–7

State-Space Model with Embedded Integrator

! Returning to our state-space representation, we consider the SISOsystem

xm.k C 1/ D Amxm.k/ C Bmu.k/

y.k/ D Cmxm.k/

! Recall from your study of feedback control that in order to eliminatesteady-state error from a control system we need to include integralaction.

! For model predictive controllers, a convenient way to introduceintegral action is by modifying the state-space model.

! Taking a difference operation on both sides of the state equation weget

xm.k C 1/ # xm.k/ D Am.xm.k/ # xm.k # 1// C Bm.u.k/ # u.k # 1//

! Denote the difference of the state variable by

4xm.k C 1/ D xm.k C 1/ # xm.k/

4xm.k/ D xm.k/ # xm.k # 1/

and of the control variable by4u.k/ D u.k/ # u.k # 1/

! Then the difference of the state equation is:

4xm.k C 1/ D Am4xm.k/ C Bm4u.k/

! We now have to compute the corresponding expression for the outputy.k/.

! Define a new augmented state vector

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–8

x.k/ D"

4xm.k/

y.k/

#

! Note that

y.k C 1/ # y.k/ D Cm.xm.k C 1/ # xm.k// D Cm4xm.k C 1/

D CmAm4xm.k/ C CmBm4u.k/

! Putting the above expressions together we get the augmented model:"

4xm.k C 1/

y.k C 1/

#D

"Am 0T

m

CmAm 1

# "4xm.k/

y.k/

#C

"Bm

CmBm

#4u.k/

y.k/ Dh

0m 1i "

4xm.k/

y.k/

#

or simply,

x.k C 1/ D Ax.k/ C B4u.k/

y.k/ D C

"4xm.k/

y.k/

#

Example (Wang, pg. 34)

! Given a discrete-time system where

Am D"

1 1

0 1

#Bm D

"0:5

1

#Cm D

h1 0

i

! Find the matrices of the augmented system .A; B; C / and calculatethe eigenvalues of A.

SOLUTION.

! We have n D 2 and 0m Dh

0 0i.

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–9

! Then,

x.k C 1/ D Ax.k/ C B4u.k/

y.k/ D C x.k/

where

A D"

Am 0Tm

CmAm I

#D

264

1 1 0

0 1 0

1 1 1

375

B D"

Bm

CmBm

#D

264

0:5

1

0:5

375

C Dh

0m 1i

Dh

0 0 1i

! The eigenvalues of A are found as the roots of the characteristicequation, .! # 1/3 D 0; or !1 D !2 D !3 D 1.

Predictive Control: SISO Case

! We will first develop the case for a simple SISO system for which thestates are directly measureable.

– The more general case will be discussed later.

! Future control inputs are denoted by:

4u.ki/; 4u.ki C 1/; : : : ; 4u.ki C Nc # 1/

where ki represents a particular time step and Nc is the control horizon.

! Information x.ki/ permits prediction up to Np samples ahead; Np iscalled the prediction horizon.

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–10

! Future state variables are given by:

x.ki C 1jki/; x.ki C 2jki/; : : : x.ki C mjki/; : : : ; x.ki C Npjki/

NOTE: Nc & Np.

PREDICTION.

! Future state variables:x.ki C 1jki/ D Ax.ki/ C B4u.ki/

x.ki C 2jki/ D Ax.ki C 1jki/ C B4u.ki C 1/

D A2x.ki/ C AB4u.ki/ C B4u.ki C 1/:::

x.ki C Npjki/ D ANpx.ki/ C ANp#1B4u.ki/ C ANp#2B4u.ki C 1/

C : : : C ANp#NcB4u.ki C Nc # 1/

! Predicted outputs:

y.ki C 1/ D CAx.ki/ C CB4u.ki/

y.ki C 2/ D CA2x.ki/ C CAB4u.ki/ C CB4u.ki C 1/

y.ki C 3/ D CA3x.ki/ C CA2B4u.ki/ C CAB4u.ki C 1/

C CB4u.ki C 2/:::

y.ki C Npjki/ D CANpx.ki/ C CANp#1B4u.ki/ C CANp#2B4u.ki C 1/

C : : : C CANp#NcB4u.ki C Nc # 1/

! Gathering up the the predicted output sequence into the vector

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–11

Y D

26666664

y.ki C 1/ j ki

y.ki C 2/ j ki

y.ki C 3/ j ki:::

y.ki C Np/ j ki

37777775

! Gather future input increments into the vector

4U D

26666664

4u.ki/

4u.ki C 1/

4u.ki C 2/:::

4u.ki C Nc # 1/

37777775

I

! Now we can write

Y D F x.ki/ C ˆ4U

where

F D

26666664

CA

CA2

CA3

:::

CANp

37777775

I ˆ D

26666664

CB 0 0 $ $ $ 0

CAB CB 0 $ $ $ 0

CA2B CAB CB $ $ $ 0:::

CANp#1B CANp#2B CANp#3B $ $ $ CANp#NcB

37777775

OPTIMIZATION.

! For a given set-point signal r.ki/ at sample time ki , the objective is tofind the best control parameter 4U such that an error function isminimized.

! Define

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–12

Rs D

266664

1

1:::

1

377775

r.ki/

! Then we can define a cost function J as

J D .Rs ! Y /t.Rs ! Y / C 4U tR4U

! Optimal 4U that minimizes J is found from the solution of

@J

@4UD 0

! Expand J as

J D .Rs#F x.ki//t.Rs#F x.ki//#24U tˆT .Rs#F x.ki//C4U t.ˆT ˆCR/4U

to give@J

@4UD #2ˆT .Rs # F x.ki// C 2.ˆT ˆ C R/4U D 0

! Solving,

4U " D .ˆT ˆ C R/#1ˆT .Rs # F x.ki//

Example

! Consider a simple first-order system:

xm.k C 1/ D axm.k/ C bu.k/

y.k/ D cxm.k/

where, a D 0:8; b D 0:1 and c D 1:0. Let Np D 10 and Nc D 4.

! Assume ki D 10, and at this value, the reference r.ki/ D 1 and thestate vector x.ki/ D

h0:1 0:2

it

.

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–13

! Determine the optimal solution 4U ' for the cases: 1) R D Œ0" and 2)R D 10 $ I , where R is the weighting on the control input.

SOLUTION.

! Form the augmented state-space system:"

4xm.k C 1/

y.k C 1/

#D

"a 0

a 1

# "4xm.k/

y.k/

#C

"b

b

#4u.k/

y.k/ Dh

0 1i "

4xm.k/

y.k/

#

! Therefore, F and ˆ take the following form:

F D

26666666666666666664

CA

CA2

CA3

CA4

CA5

CA6

CA7

CA8

CA9

CA10

37777777777777777775

I ˆ D

26666666666666666664

CB 0 0 0

CAB CB 0 0

CA2B CAB CB 0

CA3B CA2B CAB CB

CA4B CA3B CA2B CAB

CA5B CA4B CA3B CA2B

CA6B CA5B CA4B CA3B

CA7B CA6B CA5B CA4B

CA8B CA7B CA6B CA5B

CA9B CA8B CA7B CA6B

37777777777777777775

! Note that the elements of ˆ comprise the discrete pulse response ofthe system arranged in the form of a Toeplitz matrix.

! Substituting values we obtain:

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–14

ˆT ˆ D

266664

1:1541 1:0407 0:9116 0:7726

1:0407 0:9549 0:8475 0:7259

0:9116 0:8475 0:7675 0:6674

0:7726 0:7259 0:6674 0:5943

377775

ˆT F D

266664

9:2325 3:2147

8:3259 2:7684

7:2927 2:3355

6:1811 1:9194

377775

I ˆT Rs D

266664

3:2147

2:7684

2:3355

1:9194

377775

! For case 1) where R D Œ0", the optimal input sequence is

4U D .ˆT ˆ/#1.ˆT Rs # ˆT F x.ki// D

266664

7:2

#6:4

0

0

377775

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–15

! For case 2) where R D 10 $ I , we obtain

4U D .ˆT ˆ C 10 $ I /#1.ˆT Rs # ˆT F x.ki// D

266664

0:1269

0:1034

0:0829

0:065

377775

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–16

Receding Horizon Control

! Although the optimal parameter vector 4U contains the controlvalues 4u.ki/; 4u.ki C 1/,4u.ki C 2/,: : : 4u.ki C NC # 1/ , we onlyimplement the first sample of the sequence.

! Consider again the first-order system with state-space descriptionxm.k C 1/ D 0:8xm.k/ C 0:1u.k/

! Let rw D 0; initial conditions are x.10/ Dh

0:1 0:2it

and u.9/ D 0.

! As found previously, at sample time ki D 10, the optimal control wasfound to be 4u.10/ D 7:2:

! Assuming 4u.9/ D 0, then we have the control signal to the plant isu.10/ D u.9/ C 4u.10/ D 7:2.

! Compute the next plant state variable:

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–17

xm.11/ D 0:8xm.10/ C 0:1u.10/ D 0:88

! At ki D 11, new plant information is

4xm.11/ D 0:88 # 0:2 D 0:68

y.11/ D 0:88

which gives

x.11/ D"

0:68

0:88

#

! We can then calculate:

4U D .ˆT ˆ/#1.ˆT Rs # ˆT F x.11// D

266664

#4:24

#0:96

0

0

377775

and thus the optimal control input u.11/ D u.10/ C 4u.11/ D 2:96.

! Propagate the state again,

xm.12/ D 0:8xm.11/ C 0:1u.11/ D 1:0

! At ki D 12, the new plant information is

4xm.12/ D 1:0 # 0:88 D 0:12

y.12/ D 1:0

which gives

x.12/ D"

0:12

1:0

#

and

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–18

4U D .ˆT ˆ/#1.ˆT Rs # ˆT F x.12// D

266664

#0:96

0

0

0

377775

! Continuing,

xm.13/ D axm.12/ C bu.12/ D 1:0

y.13/ D 1:0

4xm.13/ D 1:0 # 1:0 D 0

y.13/ D 1:0

4U D .ˆT ˆ/#1.ˆT Rs # ˆT F x.13// D

266664

0

0

0

0

377775

Stacking the the computed values of 4U for time instantski D

h10 11 12 13

icolumn-wise we obtain

4U ALL D

266664

7:2 #4:24 #0:96 0

#6:4 #0:96 0 0

0 0 0 0

0 0 0 0

377775

where the optimal control input sequence is given by the first row.The optimal response follows:

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–19

Closed Loop Control System

! We’ve shown that at a given time ki , the optimal control input vector4U is solved from

4U D .ˆT ˆ C NR/#1.ˆT Rs # ˆT F x.ki//

– Here, the first term, .ˆT ˆ C NR/#1ˆT Rs corresponds to theset-point change

– The second term, .ˆT ˆ C NR/#1ˆT F corresponds to statefeedback control (within the context of predictive control)

! We take just the first element of 4U at time ki as the incrementalcontrol,

4U .ki/ Dh

1 0 $ $ $ 0i

.ˆT ˆ C NR/#1.ˆT NRsr.ki/ # ˆT F x.ki//

D Kyr.ki/ # Kmpcx.ki/

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–20

where Ky is the first element of .ˆT ˆ C NR/#1ˆT Rs and Kmpc is thefirst row of .ˆT ˆ C NR/#1ˆT F .

! These relationships depict linear time-invariant state feedback control.

! The closed-loop system is found by using the augmented systemequation to write

x.k C 1/ D Ax.k/ # BKmpcx.k/ C BKyr.k/

D .A # BKmpc/x.k/ C BKyr.k/

– Closed-loop eigenvalues are then the roots of the closed-loopcharacteristic equation:

detŒ!I # .A # BKmpc/" D 0

Predictive Control with Unmeasured States

State Estimation

! In the design of model predictive controllers, we initally assume thatthe information x.ki/ is available at time ki , which assumes all statevariables are measurable.

! In practice this is not the case and we must instead estimate statevalues from the available process measurements.

– The general construction we devise for this task is termed anobserver.

! Assume a plant state-space model,

xm.k C 1/ D Amxm.k/ C Bmu.k/

! We can then calculate an estimate of the state variable,Oxm.k/; k D 1; 2; : : :, with an initial condition Oxm.0/ and input signalu.k/ as

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–21

Oxm.k C 1/ D Am Oxm.k/ C Bmu.k/

! What’s the problem with this estimate model?

– open loop prediction

– works only if initial condition is accurate

– requires stable plant - convergence only if eigenvalues of A insideunit circle

– can’t regulate convergence rate

! Better approach ! Use feedback that relies on an error measure toimprove the estimate:

Oxm.k/ D Am Oxm.k/A C Bmu.k/ C Kob

!y.k/ # Cm Oxm.k/

"

where Kob is an observer gain matrix.

! First term propagates the original model

! Second term is a correction

– Correction based on the error between the measured output andthe predicted value based on the state estimate.

! How do we choose the observer gain, Kob?

– Define the error state to be fxm.k C 1/ D xm.k/ # Oxm.k/; then

fxm.k C 1/ D Amfxm.k/ # KobCmfxm.k/

D .Am # KobCm/fxm.k/

– With an initial error state xm.0/, we have

fxm.k/ D .Am # KobCm/kfxm.0/

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–22

! Unlike the open-loop estimator case, now we can exploit the degreesof freedom in the observer gain matrix to affect the estimatorconvergence rate.

! One way to do this is to place the closed-loop poles of the errorsystem matrix at desired locations in the complex plane.

Example

! The linearized equation of motion of a simple pendulum is:

d 2#

dt2C !2# D u

! Design an observer that reconstructs the pendulum angle, # , frommeasurements of its angular velocity, d#=dt. Assume ! D 2 rad/secand sampling interval 4t D 0:1 sec.

! Select states, x1.t/ D # and x2.t/ D P# ; the continuous timestate-space model is,

"Px1.t/

Px2.t/

#D

"0 1

#!2 0

# "x1.t/

x2.t/

#C

"0

1

#u.t/

y.t/ Dh

0 1i "

x1.t/

x2.t/

#:

! The discrete-time model is found from the Matlab function [sysd] =c2d(sysc, .1):

"x1.k C 1/

x2.k C 1/

#D

"0:9801 0:0993

#:3973 0:9801

# "x1.k/

x2.k/

#C

"0:0050

0:0993

#u.k/

y.k/ Dh

0 1i "

x1.k/

x2.k/

#

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–23

! What if we just use the pendulum model alone for (open-loop)prediction?

– Assume u.k/ D 0, and the initial conditions, #.0/ D x1.0/ D 1 andP#.0/ D x2.0/ D 0:

– Now let’s assume we take a guess at the initial conditions of theestimator as Ox1.0/ D 0:3 and Ox2.0/ D 0.

– Results are as follows:

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–24

– It’s easy to see that the open-loop estimation was unable torecover from an error in the initial conditions.

! Now let us design and implement an observer to predict the angle ofthe pendulum.

– Assume the observer gain is given by Kob Dh

$1 $2

it

.

– The close-loop characteristic polynomial of the observer is

det .!I # ŒAm # KobCm"/ D .!#0:9801/.!C$2#:9801/#:3973(.$1#:0993/

– Let’s set the observer poles at 0:1 and 0:2 for good convergencespeed.

– Equating the above expression to the desired closed cloopcharacteristic equation for the observer, namely.! # 0:9801/.! C $2 # :9801/ # :3973 ( .$1 # :0993/ D .! # 0:1/.! # 0:2/

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–25

we can solve for the unknown observer gains

"0 1

#:3973 #:9801

# "$1

$2

#D

"1:6601

#0:9800

#

"$1

$2

#D

"#1:6284

1:6601

#

"0 1

#:3973 #:9801

# "$1

$2

#D

"1:6601

#0:9800

#

"$1

$2

#D

"#1:6284

1:6601

#

– Implementing the estimator with the computed observer gives theresults depicted below.

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–26

– Here we see the observer quickly converges to the true value inapproximately three time steps.

Predictive Control Using State Estimates

! In cases where the state variable x.ki/ at time ki is not measurable,we use an observer in the implementation of predictive control.

Ox.ki C 1/ D A Ox.ki/ C B4u.ki/ C Kob.y.ki/ # C Ox.ki//

! Note that the state matrices,!

A; B; C"

represent the augmentedmodel used for predictive controller design.

! The corresponding modified cost function J can then be written

J D .Rs#F Ox.ki//T . NRsr.ki/#F Ox.ki//#24U T ˆT .Rs#F Ox.ki//C4U T .ˆT ˆC NR/4U

– The optimal solution is thus:

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–27

4U ' D .ˆT ˆ C NR/#1ˆT .Rs # F Ox.ki//

! Application of receding horizon control leads to the optimal solution attime ki :

4u.ki/ D Kyr.ki/ # Kmpc Ox.ki/

– This is standard state feedback control with estimate Ox.ki/.

! Let’s now examine the close-loop properties of this system.

! First, for the closed-loop state equations,

x.k C 1/ D Ax.k/ C B4u.k/

D Ax.k/ C BKyr.k/ # BKmpc Ox.k/

! The closed-loop observer error equation is:Qx.k C 1/ D .A # KobC / Qx.k/

where

Qx.k/ D x.k/ # Ox.k/

! Substituting for Ox.k/ we can write:x.k C 1/ D .A # BKmpc/x.k/ # BKmpc Qx.k/ C BKyr.k/

! Combining the error and system state equations,"Qx.k C 1/

x.k C 1/

#D

"A # KobC 0n(n

#BKmpc A # BKmpc

# "Qx.k/

x.k/

#C

"0n(m

BKy

#r.k/

– Since the system matrix is lower block diagonal, the eigenvaluesare given by the eigenvalues of the diagonal blocks, A # KobC andA # BKmpc respectively (separation principle).

Example

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–28

The augmented model for a double integrator plant is given by

x.k C 1/ D Ax.k/ C B4u.k/

y.k/ D C x.k/

where

A D

264

1 1 0

0 1 0

1 1 1

375 ; B D

264

0:5

1

0:5

375 ; C D

h0 0 1

i

! Design a state estimate predictive control system and simulate theclosed-loop response for a set-point change.

! Design specifications:

Nc D 5

Np D 30

rw D 10

! Place the observer poles at: 0:01, 0:0105, 0:011 to give fast dynamicresponse.

! The open-loop plant has three eigenvalues at one (by inspection), twofrom the double-integrator and one from the embedded integratorstructure. Using the Matlab function place, we find the observer gainsfrom:

Pole Dh0:01 0:0105 0:011

iI

Kob D place!A0 C0 Pole

"0I

which gives,

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

ECE5590, Model Predictive Control Problem Formulation 4–29

Kob D

264

1:9685

0:9688

2:9685

375

! Using the given performance parameters, the state feedbackcontroller gain is computed to be,

Kmpc Dh

0:8984 1:3521 0:4039i

! The resulting closed-loop eigenvalues are at 0:3172 ˙ j 0:4089 and0:3624.

Lecture notes prepared by M. Scott Trimboli. Copyright c" 2010-2015, M. Scott Trimboli

(mostly blank)

(mostly blank)

(mostly blank)