Académique Documents
Professionnel Documents
Culture Documents
Historical Development
Questions:
output control? How can one make use of a process model and account for model error? Smith Predictor(1955) Feedforward Control Inferential Control (1975, 1979) Dynamic Matrix Control (Shell, 1979) Model Algorithmic Control (France, 1979) Internal Model Control (Garcia and Morari, 1982)
2
Behavior Compensation for (unmeasured disturbances) Servo Behavior- Follow set point changes (fast, smooth, no offset) Robustness-Controller should be effective when there are modeling errors (both structure and parameters)
Ability to deal with constraints on inputs and states (no windup) Remark: 90% of loops can be handled by PID type controllers.
Gm
ym -
d
e=ys-y+ym
y=d+ u=
G p GI ( y s d ) 1 + GI (G p Gm )
( y s d ) GI
1 + GI (G p Gm )
Use IMC only on stable systems, unstable systems can be stabilized by feedback control Constraints on inputs has no effect on stability
7
Notes: (1) This is optimal control. (2) Suppose Gp-1 is not realizable, then it is recommended to factor this transfer function into two terms: Gp(s)=G+(s)G-(s) where G+(s) is not realizable contains all time delays and RHP zeros. In this case the best controller possible is: GI(s)=G--1(s), this controller minimizes sum of the square of the errors in output. (3) This suggests the design of F(s) as GI=Gp-1 F(s) such that GI(s) realizable.
8
Example
G p ( s) = N ( s ) Ds e D( s) D ( s ) Ds e F ( s) N (s)
GI ( s ) = G p1 ( s ) F ( s ) =
e Ds F (s) = n ( s + 1)
Where n=degree of D(s)-degree of N(s)>0, is chosen
= ys (0)
a. This means the output will attain the set point exactly in presence of persistent disturbances and set-point changes integral feedback b. Note that this is true even if the model is imperfect.
10
Then we get classical output feedback control. Note that GI(s) in the closed loop transfer function of the following:
e(s) + Gc(S) m(s)
Gm(S)
11
12
Gc 1 + Gc Gm
may be looked upon as a poor approximation to Gm-1(s). For large Kc, this approximation gets better. (b) Note the similarity of this structure to Smith Predictor also approximates the invertible part of Gm-1(s). (c) This feedback structure implies use of a filter:
F ( s) = Gc ( s ) Gm ( s ) 1 + Gc ( s ) Gm ( s )
13
3.
Choose a process model through plant tests Choose a filter F ( s ) = e Ds to make GI(s) n ( s + 1) realizable Decrease untill system becomes oscillatory. Brosilow recommends the following time constant: (where u=min. filter constant; Pu=period of oscillation)
2 =
4.
( 4
u + Pu2 ) Pu2
1/ 2
If /D<1, then IMC will yield better performance than a PID controller. If 1< /D<2; then IMC and PID are competitive.
14
In practice, it is easier to find an approximate inverse of the process transfer function in the time domain (using discrete models). Time Domain View:
current estimate of the disturbance, compute the current and future inputs which will make the output follow the desired set point.
Limitation in Practice:
times.
1. The future will be limited to a finite time horizon (3-4 times time-constant of system. 2. Attention must be limited to values of output at discrete
15
Summary of MPC
Advantages:
Process model A controller (approximate inverse) A filter Quality of response depends on controller design Robustness depends on filter Stability is not an issue Implementation is straight forward On-line tuning can be provided by the filter time constant
16
The solution is given by: x=(ATA)-1ATb We term (ATA)-1AT to be pseudo inverse of matrix A
18
Note that N/D is actually the impulse response of the system m(z)=1 without delay y(t)
h1
h2
h3 h4
h5
h6 h7
t
19
Example: G(s)=1/(s+1)3
global m m=1;TSPAN=[0 1]; Y0=[0 0 0]; Y_real=[];Y_sample=[];T_real=[]; T_sample=[0];Y_model=[0]; for i=1:29 [T,Y] = ODE45('model_3',TSPAN,Y0); TSPAN=[TSPAN(2),TSPAN(2)+1 ]; Y0(1)=Y(end,1); Y0(2)=Y(end,2); Y0(3)=Y(end,3); TT=T(end); Y_real=[Y_real;Y(:,1)];T_real=[T_ real;T]; m=0; T_sample=[T_sample,TT]; Y_model=[Y_model,Y0(1)]; end function dy=model_3(t,y) global m dy(1)=y(2); dy(2)=y(3); dy(3)=-3*y(3)-3*y(2)-y(1)+m; dy=dy';
20
21
22
h z
i =1 l
l +1
m( z ) + d ( z )
yk + +1 = h1mk + h2 mk 1 + + hN mk N +1 + d = yk + +1 + d
23
Approximate Inversion
Since we cannot make y(t)=yd(t) exactly, we pose the following least square minimization problem:
m ( k ), m ( k +1),..., m ( k + M 1)
min
2 l2 [ yd ( k + + l ) y ( k + + l ) ] + l2 m 2 ( k + l 1) i =1
h z
i =1 l
l +1
m( z ) + d ( z )
24
The Solution
The
previous problem can be solved based on a Quadratic Programming solver or using previous pseudo-inverse of matrix approach.
25
m = A 1 ( y d m )
P=4; M=4
26
Y_real
time
27
MPC-Servo Horizon Control (A Feedforward Approach) Want yk+1=yk+2= =yd, but mk+1=mk+2=mk+3
yd h1 + h2 + h3 h4 hN y h + h h3 mk +1 1 2 d = m + h yd h1 h2 k 3 h1 yd 0 h2 y d = Am + m m = pinv ( A)( y d m ) 0 0 0 mk 1 hN 0 0 mk 2 hN 0 h3 hN mk N
P=4; M=2
28
MPC-Servo Horizon Control (A Feedforward Approach) Want yk+1=yk+2= =yd, but mk+1=mk+2=mk+3
m = A 1 ( y d m d ) d = yk yk
P=4; M=4
30
0 mk 1 hN 0 0 mk 2 hN 0 h3 hN mk N 0 0
Response
Time M=4
32
0 h11 N
0 0
12 0 h5 h12 N 12 0 h4
h11 N 11 h3 0 21 hN h321 0 0 21 hN
0 h11 N
12 h3 12 h2
22 0 h522 hN 22 0 h4 0 h322 21 hN 22 h2
h121 0
y = Am + m
33
Hot
Cold
LT
TT
Height Time
35
Temperature Time
36
Response
a4,. a1 a2 a3
Response
h1 h2 h3 h4,.
h z
i =1 l
l +1
m( z ) + d ( z )
1 1 z 1 1 + h3 z 2 + + hN z N +1 1 h1 + h2 z y( z ) = z + d ( z) 1 1 z = z 1 h1 + h2 z 1 + h3 z 2 + + hN z N +1 1 + z 1 + z 2 + m( z ) =
= z 1 = z 1
hl = ( al al 1 ) = al (1 z 1 )
( )( [h + ( h + h ) z + ( h + h + h ) z + ] + d ( z ) (a + a z + a z + + a z )
1 2 1 1 2 1 2 3 1 2 N +1 1 2 3 N
38
al z l +1 (1 z 1 ) m( z ) + d ( z )
N i =1
(1 z )m( z ) = m( z )
1
Finally y( z) = z
1
al z l +1m( z ) + d ( z )
i =1
y +1 = a1m1 + a2 m0 + a3 m1 + + a N m N +1 + d
Effect of the past disturbance
39
+ y d = Amm d + m = A 1 ( ym d d d = yk y k
P=4; M=4
40
yd y a + a d= 1 3 yd 0 yd
0 aN L a3
0 0 aN L
0 mk 1 d 0 mk 2 d + 0 M M a N mk N d
Tuning Procedures
Sampling
time (T): stability is not affected by T. Larger T leads to less variations in m, but deteriorates system performance in presence of frequent disturbances Horizon for m (M): Choosing M=P (perfect control) leads to severe oscillation in m(t). Reducing M, leads to a more desired response
42
Summary - Continued
Model Predictive Control (MPC) is the major existed advanced process control in chemical engineering industrial The modeling in the MPC is crucial The tuning of MPC using M (horizon of suppression) is the most effective for stability. All other parameters may also frequently implement to improve the control quality
44