Model Predictive Control Problem Formulationmocha-java.uccs.edu/ECE5590/ECE5590_Ch4_F15.pdf ·...
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)