Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control...

71
Aula 14 12 Novembro 2019 EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 1 / 71

Transcript of Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control...

Page 1: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Aula 14

12 Novembro 2019

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 1 / 71

Page 2: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Resumo da aula passada

Robustez com respeito a incertezas no ganho da planta: Uso denorma 1, programacao linear e otimizacao min-max.

Uso de norma 2: Desigualdades matriciais lineares.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 2 / 71

Page 3: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Topico da aula de hoje

LMI Lab (Matlab Robust Control Toolbox)

Robustez com respeito a incertezas politopicas no modelo da planta.

Controle preditivo robusto empregando Desigualdades MatriciaisLineares.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 3 / 71

Page 4: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

LMI Lab (Matlab Robust Control Toolbox)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 4 / 71

Page 5: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Consideracoes preliminares

No LMI Lab, LMIs sao especificadas na forma Fleft(x) < Fright(x). SeFleft(x) ou Fright(x) nao forem especificadas, assume-se 0 por default.

Cada lado da LMI e estruturado na forma NTMN, sendo M umamatriz simetrica. As matrizes N e M sao chamadas outer e innerfactor, respectivamente.

Na maioria dos casos, N = I , nao sendo necessario explicita-la naespecificacao da LMI.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 5 / 71

Page 6: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Como especificar um conjunto de LMIs

Passo 1: Inicializacao

SETLMIS([]) resets the internal variables used for creating LMIs so thatyou can create a new system of LMIs.

SETLMIS(LMISYS0) uses an existing LMI system LMISYS0 as thestarting point for creating a new system of LMIs.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 6 / 71

Page 7: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Passo 2: Especificacao das variaveis do problema

X = LMIVAR(TYPE,STRUCT) adds a new matrix variable X to the LMIsystem currently specified

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 7 / 71

Page 8: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

TYPE - Structure of X:

1 -> symmetric block diagonal (blocos simetricos na diagonal)2 -> full rectangular3 -> other (elementos iguais a zero, xn ou −xn em posicoes especificadas)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 8 / 71

Page 9: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

STRUCT - Additional data on the structure of X

TYPE = 1: the i-th row of STRUCT describes the i-th diagonal block of XSTRUCT(i,1) -> block sizeSTRUCT(i,2) -> block type:0 (scalar block t*I), 1 (full symmetric block), -1 (zero block)

TYPE = 2: STRUCT = [M,N] if X is a MxN matrix

TYPE = 3: STRUCT is a matrix of the same dimension as X whereSTRUCT(i,j) is either 0 if X(i,j) = 0, +n if X(i,j) = n-th decision variable,-n if X(i,j) = (-1)* n-th decision variable.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 9 / 71

Page 10: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Exemplos:

X = lmivar(1,[2 1]) –> 2 x 2 full symmetric matrix

X =

[x1 x2

x2 x3

]Y = lmivar(2,[2 3]) –> 2 x 3 matrix

Y =

[y1 y2 y3

y4 y5 y6

]Z=lmivar(1,[3 0]) –> 3 x 3 scalar matrix

Z =

z 0 00 z 00 0 z

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 10 / 71

Page 11: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Passo 3: Insercao de cada LMI

LMITAG = NEWLMI adds a new LMI to the LMI system currentlydescribed and attaches the identifier LMITAG to it. Declaring LMIs withNEWLMI is optional and only meant to make the code more readable.

Output: LMITAG (identifier of the new LMI). Its value is L if there arealready L-1 LMIs in the system. This value remains unchanged in allsubsequent modifications of the LMI system

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 11 / 71

Page 12: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Passo 4: Especificacao de cada LMI

LMITERM(TERMID,A,B,FLAG) adds one term to some LMI in the LMIsystem currently specified. A term is either an outer factor, a constantmatrix, or a variable term A*X*B or A*X’*B where X is a matrix variable.The first input TERMID specifies which LMI and block the term belongsto.

Note: Because the OFF-DIAGONAL blocks (i,j) and (j,i) are transposed ofone another, specify the term content of ONLY ONE of these two blocks.

TERMID(1) = +n -> left-hand sideTERMID(1) = -n -> right-hand side

For outer factors, set TERMID(2:3) = [0 0]. Otherwise, set TERMID(2:3)= [i j] if the term belongs to the (i,j) block of the LMI

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 12 / 71

Page 13: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

TERMID(4) = 0 -> constant termTERMID(4) = X -> variable term A*X*BTERMID(4) = -X -> variable term A*X’*Bwhere X is the variable identifier returned by LMIVAR

A -> value of the outer factor, constant term, or left coefficient in variableterms A*X*B or A*X’*B

B -> right coefficient in variable terms A*X*B or A*X’*B

FLAG -> quick way of specifying the expression A*X*B+B’*X’*A’ in aDIAGONAL block. Set FLAG=’s’ to specify it with only one command.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 13 / 71

Page 14: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Observacoes (extraıdas do manual do Robust Control Toolbox):

Os blocos sao zero por default.

Um valor escalar α pode ser especificado em lugar de uma matriz daforma αI . A dimensao da matriz identidade I e inferida pelo contexto.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 14 / 71

Page 15: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Passo 5: Conclusao

LMISYS = GETLMIS returns a computer description LMISYS of thecurrently described LMI system.

LMIINFO(LMISYS) Gives information about:

the variable matrices (dimensions and structure)

the block structure and dimensions of the LMIs

the term content of each LMI

NDECV = DECNBR(LMISYS) returns the number of decision variablesNDECV in the system of LMIs.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 15 / 71

Page 16: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Como testar a factibilidade de um conjunto de LMIs

[TMIN,XFEAS] = FEASP(LMISYS)

Given an LMI feasibility problem:

Find x such that L(x) < R(x),

FEASP solves the auxiliary convex program:

Minimize t subject to L(x) < R(x) + t*I

TMIN -> value of t upon termination.The LMI system is feasible iff TMIN <= 0

XFEAS -> corresponding minimizer.If TMIN <= 0, XFEAS is a feasible vector for the set of LMI constraints.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 16 / 71

Page 17: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

[TMIN,XFEAS] = FEASP(LMISYS)

Use DEC2MAT to get the matrix variable values from XFEAS.

X = DEC2MAT(LMISYS,DECVARS,XID) returns the value of the matrixvariable with identifier XID given the LMI system description LMISYS andthe vector DECVARS of decision variable values.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 17 / 71

Page 18: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Exemplo: Analise de estabilidade

Seja um sistema com dinamica descrita pela seguinte equacao de estado atempo contınuo:

x = Ax

O sistema e assintoticamente estavel (todos os autovalores de A possuemparte real negativa) se e somente se existir uma matriz P > 0 quesatisfaca a seguinte desigualdade:

ATP + PA < 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 18 / 71

Page 19: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Vamos realizar a analise de estabilidade com

A =

[0 1−2 −3

]cujos autovalores sao −1 e −2.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 19 / 71

Page 20: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Passo 1: Inicializacao

A = [0 1;-2 -3]

setlmis([])

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 20 / 71

Page 21: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Passo 2: Especificacao das variaveis

P = lmivar(1,[2 1])

Type = 1 (P e uma matriz simetrica bloco-diagonal)

Struct = [2 1] (uma linha –> um unico bloco):

Block size = 2 (Bloco tem dimensoes 2 x 2)

Block type = 1 (Bloco e uma matriz cheia)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 21 / 71

Page 22: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Passo 3: Insercao de cada LMI

LMIs a serem inseridas:

ATP + PA < 0 (1)

P > 0 (2)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 22 / 71

Page 23: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Primeira LMI: ATP + PA < 0

LyapEq = newlmi

lmiterm([LyapEq 1 1 P],1,A,’s’)

LyapEq: Valor positivo (lado esquerdo da LMI)

[1 1]: Bloco (1,1) da LMI

Termo da forma AlmiPBlmi com Almi = 1 e Blmi = A

FLAG = ’s’: Simetrizacao do termo: ATP + PA

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 23 / 71

Page 24: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Segunda LMI: P > 0

Ppos = newlmi

lmiterm([-Ppos 1 1 P],1,1)

-Ppos: Valor negativo (lado direito da LMI)

[1 1]: Bloco (1,1) da LMI

Termo da forma AlmiPBlmi com Almi = 1 e Blmi = 1

Arquivo Matlab: ex1.m

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 24 / 71

Page 25: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Exemplo: Analise de estabilidade

Experimente repetir a analise de estabilidade com

A =

[0 12 −1

]cujos autovalores sao 1 e −2.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 25 / 71

Page 26: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Problemas de programacao semidefinida

MINCX - Minimizes a linear objective under LMI constraints

[COPT,XOPT] = MINCX(LMISYS,C) solves the optimization problem

Minimize c’ * x subject to L (x) < R(x)

where x is the vector of decision variables (free scalar variables).

→ A chamada a esta rotina nao permite fazer distincao entredesigualdades estritas e nao estritas. Contudo, se as LMIs nao foremestritamente factıveis sera retornado um diagnostico de nao factibilidade*.

*Vide www.mathworks.com/help/robust/ug/advanced-topics.html

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 26 / 71

Page 27: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Controle preditivo robusto empregando LMIs

Referencias:

MACIEJOWSKI, p. 233 - 239.

KOTHARE, M. V.; BALAKRISHNAN, V.; MORARI, M. Robustconstrained predictive control using linear matrix inequalities.Automatica, v. 32, n. 10, p. 1361-1379, 1996.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 27 / 71

Page 28: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Incerteza politopica

Assume-se que a dinamica da planta seja descrita por um modelo da forma

x(k + 1) = Ax(k) + Bu(k)

em que A,B sao matrizes incertas que pertencem a um dado politopo Ωcom vertices (A1,B1), (A2,B2), . . . , (AL,BL). Em outras palavras, existemescalares λ1, λ2, . . . , λL ≥ 0 tais que

A =L∑

j=1

λjAj , B =L∑

j=1

λjBj

L∑j=1

λj = 1

Notacao: Ω = Co

(A1,B1), (A2,B2), . . . , (AL,BL)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 28 / 71

Page 29: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Exemplo: Servomecanismo posicionador

Torque

Momento de inercia: J (conhecido)

Coeficiente de atrito viscoso: b ∈ [bmin, bmax ]

Caracterıstica do motor: τ = κu, κ ∈ [κmin, κmax ]

J θ + bθ = κu

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 29 / 71

Page 30: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

J θ + bθ = κu

Variaveis de estado: x1 = θ, x2 = θ.

Equacao de estado:

x1 = x2

x2 = −b

Jx2 +

κ

Ju

x =

[0 1

0 −b

J

]︸ ︷︷ ︸

Ac

x +

[0κ

J

]︸ ︷︷ ︸

Bc

u

Discretizacao aproximada com perıodo de amostragem T :

x(k + 1) = (I + AcT )︸ ︷︷ ︸A

x(k) + BcT︸︷︷︸B

u(k)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 30 / 71

Page 31: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

A(b) =

[1 T

0 1− bT

J

], B(κ) =

[0κT

J

]

b ∈ [bmin, bmax ], κ ∈ [κmin, κmax ]

Neste caso, ha dois parametros incertos independentes.

O politopo Ω tera quatro vertices:

1 A(bmin),B(κmin)

2 A(bmin),B(κmax)

3 A(bmax),B(κmin)

4 A(bmax),B(κmax)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 31 / 71

Page 32: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Formulacao do Problema

Funcao de custo a ser minimizada no instante k:

J∞(k) =∞∑i=0

||x(k + i |k)||2S + ||u(k + i |k)||2R

com S = ST > 0 e R = RT > 0.

Problema min-max a ser resolvido:

minu

max(A,B)∈Ω

J∞(k)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 32 / 71

Page 33: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Abordagem empregada

Parametrizar o controle na forma u(k + i |k) = Fk x(k + i |k)

Determinar a matriz de ganho Fk de modo a minimizar um limitantesuperior γ para max

(A,B)∈ΩJ∞(k).

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 33 / 71

Page 34: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Expressando-se a matriz de ganho como Fk = YQ−1, com Y e Q a seremdeterminadas, pode-se colocar o problema na seguinte forma:

minγ>0,Q>0,Y

γ

s.a. [Q x(k)? 1

]≥ 0 (1)

Q 0 0 AjQ + BjY

? γI 0 S1/2Q

? ? γI R1/2Y? ? ? Q

≥ 0 , j = 1, 2, . . . , L (2)

desde que as LMIs (1) e (2) sejam factıveis com γ > 0 e Q > 0.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 34 / 71

Page 35: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Demonstracao de que γ e um limitante superior para J∞(k)

Suponha que (γ,Q,Y ) satisfaca as LMIs (1) e (2), com γ > 0 e Q > 0.Sejam ainda λ1, λ2, . . . , λL ≥ 0 tais que

L∑j=1

λj = 1

Em vista de (2), tem-se

L∑j=1

λj

Q 0 0 AjQ + BjY

? γI 0 S1/2Q

? ? γI R1/2Y? ? ? Q

≥ 0

isto e,

Q 0 0

∑Lj=1 λjAjQ +

∑Lj=1 λjBjY

? γI 0 S1/2Q

? ? γI R1/2Y? ? ? Q

≥ 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 35 / 71

Page 36: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Portanto: Q 0 0 AQ + BY

0 γI 0 S1/2Q

0 0 γI R1/2Y

(AQ + BY )T QS1/2 Y TR1/2 Q

≥ 0

qualquer que seja (A,B) ∈ Ω.

Aplicando o complemento de Schur, tem-se

Q−[

(AQ + BY )T QS1/2 Y TR1/2] Q−1 0 0

0 γ−1I 00 0 γ−1I

AQ + BYS1/2QR1/2Y

≥ 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 36 / 71

Page 37: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Ou seja:

Q −[

(AQ + BY )TQ−1 γ−1QS1/2 γ−1Y TR1/2] AQ + BY

S1/2Q

R1/2Y

≥ 0

Q − (AQ + BY )TQ−1(AQ + BY )− γ−1QSQ − γ−1Y TRY ≥ 0

Q[Q−1 − (A + BYQ−1)TQ−1(A + BYQ−1)

−γ−1S − γ−1Q−1Y TRYQ−1]Q ≥ 0

Logo, como Q > 0, tem-se

Q−1 − (A + BYQ−1)TQ−1(A + BYQ−1)

−γ−1S − γ−1Q−1Y TRYQ−1 ≥ 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 37 / 71

Page 38: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Ou seja:(A + BYQ−1)TQ−1(A + BYQ−1)− Q−1

+γ−1S + γ−1Q−1Y TRYQ−1 ≤ 0

Definindo agora P = γQ−1 > 0 e fazendo Fk = YQ−1, segue que

(A + BFk)TPγ−1(A + BFk)− Pγ−1

+γ−1S + γ−1FTk RFk ≤ 0

Logo, como γ > 0, tem-se

(A + BFk)TP(A + BFk)− P + S + FTk RFk ≤ 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 38 / 71

Page 39: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

(A + BFk)TP(A + BFk)− P + S + FTk RFk ≤ 0

Portanto, tem-se

xT (k + i |k)[(A + BFk)TP(A + BFk)− P + S + FT

k RFk

]x(k + i |k) ≤ 0

Segue entao que

xT (k + i |k)[(A + BFk)TP(A + BFk)

]x(k + i |k)− xT (k + i |k)Px(k + i |k)

≤ −xT (k + i |k)Sx(k + i |k)− xT (k + i |k)FTk RFk x(k + i |k)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 39 / 71

Page 40: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

xT (k + i |k)[(A + BFk)TP(A + BFk)

]x(k + i |k)− xT (k + i |k)Px(k + i |k)

≤ −xT (k + i |k)Sx(k + i |k)− xT (k + i |k)FTk RFk x(k + i |k)

Considerando agora u(k + i |k) = Fk x(k + i |k), tem-se que

x(k + i + 1|k) = (A + BFk)x(k + i |k)

e portanto pode-se escrever

xT (k + i + 1|k)Px(k + i + 1|k)− xT (k + i |k)Px(k + i |k)

≤ −xT (k + i |k)Sx(k + i |k)− uT (k + i |k)Ru(k + i |k)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 40 / 71

Page 41: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

xT (k + i + 1|k)Px(k + i + 1|k)− xT (k + i |k)Px(k + i |k)

≤ −xT (k + i |k)Sx(k + i |k)− uT (k + i |k)Ru(k + i |k)

Definindo-se V (x) = xTPx , tem-se

V(x(k + i + 1|k)

)− V

(x(k + i |k)

)≤ −xT (k + i |k)Sx(k + i |k)− uT (k + i |k)Ru(k + i |k) < 0, ∀x(k + i |k) 6= 0

uma vez que S > 0 e R > 0.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 41 / 71

Page 42: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Portanto, conclui-se que V (x) e uma funcao de Lyapunov para a dinamicadescrita por

x(k + i + 1|k) = Ax(k + i |k) + Bu(k + i |k)

u(k + i |k) = Fk x(k + i |k)

mostrando que

x(k + i |k)i→∞→ 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 42 / 71

Page 43: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

V(x(k + i + 1|k)

)− V

(x(k + i |k)

)≤ −xT (k + i |k)Sx(k + i |k)− uT (k + i |k)Ru(k + i |k)

Somando os dois lados desta desigualdade de i = 0 a i =∞, obtem-se

limi→∞

V(x(k + i |k)

)− V

(x(k|k)

)≤ −

∞∑i=0

xT (k + i |k)Sx(k + i |k)− uT (k + i |k)Ru(k + i |k)

Como x(k|k) = x(k), x(k + i |k)i→∞→ 0 e

J∞(k) =∞∑i=0

xT (k + i |k)Sx(k + i |k) + uT (k + i |k)Ru(k + i |k)

tem-seJ∞(k) ≤ V

(x(k)

)EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 43 / 71

Page 44: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Por outro lado, aplicando o complemento de Schur a[Q x(k)

xT (k) 1

]≥ 0

(com Q > 0), tem-se que xT (k)Q−1x(k) ≤ 1, ou seja

xT (k)γ−1Px(k) ≤ 1

xT (k)Px(k)︸ ︷︷ ︸V (x(k))

≤ γ

Portanto, conclui-se queJ∞(k) ≤ γ

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 44 / 71

Page 45: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Codificacao empregando o LMI Lab

Variaveis:γ ∈ RQ ∈ Rn×n

Y ∈ Rp×n

setlmis([])

g = lmivar(1,[1 0])

Q = lmivar(1,[n,1])

Y = lmivar(2,[p,n])

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 45 / 71

Page 46: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Primeira LMI:[Q x(k)? 1

]≥ 0

lmiterm([-1 1 1 Q],1,1)

lmiterm([-1 1 2 0],xk)

lmiterm([-1 2 2 0],1)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 46 / 71

Page 47: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

LMIs subsequentes - Para cadaj = 1, 2, . . . , L:

Q 0 0 AjQ + BjY

? γI 0 S1/2Q

? ? γI R1/2Y? ? ? Q

≥ 0

lmiterm([-2 1 1 Q],1,1)

lmiterm([-2 1 4 Q],Aj,1)

lmiterm([-2 1 4 Y],Bj,1)

lmiterm([-2 2 2 g],1,1)

lmiterm([-2 2 4 Q],Ssqrt,1)

lmiterm([-2 3 3 g],1,1)

lmiterm([-2 3 4 Y],Rsqrt,1)

lmiterm([-2 4 4 Q],1,1)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 47 / 71

Page 48: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

minγ,Q,Y

γ

Fk = YQ−1

lmisys = getlmis

ndecvar = decnbr(lmisys)

c = zeros(ndecvar,1)

c(1) = 1

[copt,xopt] = mincx(lmisys,c)

Ysol = dec2mat(lmisys,xopt,Y)

Qsol = dec2mat(lmisys,xopt,Q)

Fk = Ysol*inv(Qsol)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 48 / 71

Page 49: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Exemplo

Arquivo Matlab: ex2.m

Vide observacao a seguir sobre o calculo do custo para comparacao comDLQR.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 49 / 71

Page 50: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Observacao

Seja

J∞ =∞∑k=0

xT (k)Sx(k) + uT (k)Ru(k)

com x(k + 1) = Ax(k) + Bu(k) e u(k) = Fx(k). Pode-se entao escrever:

J∞ =∞∑k=0

xT (k)Ψx(k)

ex(k + 1) = Amf x(k)

sendo Ψ = S + FTRF e Amf = A + BF .

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 50 / 71

Page 51: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

J∞ =∞∑k=0

xT (k)Ψx(k)

= xT (0)Ψx(0) +∞∑k=1

xT (k)Ψx(k)

= xT (0)Ψx(0) +∞∑k=0

xT (k + 1)Ψx(k + 1)

= xT (0)Ψx(0) +∞∑k=0

xT (k)ATmf ΨAmf x(k)

= xT (0)Ψx(0) + xT (0)ATmf ΨAmf x(0) +

∞∑k=1

xT (k)ATmf ΨAmf x(k)

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 51 / 71

Page 52: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Por inducao, conclui-se que

J∞ = xT (0)

∞∑j=0

(ATmf )jΨAj

mf

x(0)

ou entao:J∞ = xT (0)Ψ∞x(0)

sendo

Ψ∞ =∞∑j=0

(ATmf )jΨAj

mf

Como visto na Aula 10, considerando que os autovalores de Amf estejamno interior do cırculo unitario, Ψ∞ pode ser obtida como solucao daseguinte equacao de Lyapunov:

ATmf Ψ∞Amf −Ψ∞ + Ψ = 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 52 / 71

Page 53: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Introducao de Restricoes

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 53 / 71

Page 54: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Restricoes sobre a entrada da planta

Serao consideradas restricoes simetricas da forma

|ul(k + i |k)| ≤ umax ,l , i ≥ 0

para cada l = 1, 2, . . . , p.

Considerando que u(k + i |k) = Fk x(k + i |k), com Fk = YQ−1, tem-se

maxi≥0|ul(k + i |k)|2 = max

i≥0

∣∣(YQ−1)lx(k + i |k)

∣∣2sendo

(YQ−1

)l

a l-esima linha da matriz YQ−1.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 54 / 71

Page 55: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Por outro lado:∣∣(YQ−1)lx(k + i |k)

∣∣2 =∣∣∣(YQ−1/2

)lQ−1/2x(k + i |k)

∣∣∣2Aplicando a desigualdade de Cauchy-Schwarz tem-se que∣∣∣(YQ−1/2

)lQ−1/2x(k + i |k)

∣∣∣2 ≤ ∣∣∣∣∣∣(YQ−1/2)l

∣∣∣∣∣∣2 ∣∣∣∣∣∣Q−1/2x(k + i |k)∣∣∣∣∣∣2

Analisemos o termo∣∣∣∣Q−1/2x(k + i |k)

∣∣∣∣2.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 55 / 71

Page 56: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Sabendo que

V(x(k + i + 1|k)

)− V

(x(k + i |k)

)< 0, ∀x(k + i |k) 6= 0

com V (x) = xTPx = γxTQ−1x e γ > 0, tem-se

xT (k+i+1|k)Q−1x(k+i+1|k) < xT (k+i |k)Q−1x(k+i |k), ∀x(k+i |k) 6= 0

Por outro lado, tem-se ainda que xT (k)Q−1x(k) ≤ 1. Logo:

xT (k + i |k)Q−1x(k + i |k) ≤ 1, ∀i ≥ 0

ou seja, ∣∣∣∣∣∣Q−1/2x(k + i |k)∣∣∣∣∣∣2 ≤ 1, ∀i ≥ 0

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 56 / 71

Page 57: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Portanto,

maxi≥0

∣∣(YQ−1)lx(k + i |k)

∣∣2 ≤ maxi≥0

∣∣∣∣∣∣(YQ−1/2)l

∣∣∣∣∣∣2 ∣∣∣∣∣∣Q−1/2x(k + i |k)∣∣∣∣∣∣2

≤∣∣∣∣∣∣(YQ−1/2

)l

∣∣∣∣∣∣2 =(YQ−1Y T

)ll

Desse modo, e suficiente impor(YQ−1Y T

)ll≤ u2

max ,l

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 57 / 71

Page 58: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

(YQ−1Y T

)ll≤ u2

max ,l

Sabendo que A ≥ B ⇒ All ≥ Bll , pode-se ver que esta restricao serasatisfeita se existir X = XT tal que Xll ≤ u2

max ,l , l = 1, 2, . . . , p, e

YQ−1Y T ≤ X

Esta ultima desigualdade pode tambem ser reescrita como uma LMI:[X YY T Q

]≥ 0

que pode ser agregada as demais LMIs envolvidas no problema deotimizacao.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 58 / 71

Page 59: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

A restricao Xll ≤ u2max ,l , l = 1, 2, . . . , p, pode ser imposta atraves da

seguinte LMI:eT1 Xe1 0 · · · 0

0 eT2 Xe2 · · · 0...

.... . .

...0 0 · · · eTp Xep

u2max ,1 0 · · · 0

0 u2max ,2 · · · 0

......

. . ....

0 0 · · · u2max ,p

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 59 / 71

Page 60: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Restricoes sobre a saıda da planta

Suponha que as variaveis de saıda sujeitas a restricoes estejamrelacionadas com o estado atraves de uma equacao da forma

y(k) = Cx(k)

sendo C ∈ Rq×n uma matriz conhecida.

Serao consideradas restricoes simetricas da forma

|yl(k + i |k)| ≤ ymax ,l , i ≥ 1

para cada l = 1, 2, . . . , q.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 60 / 71

Page 61: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Estas restricoes poderiam ser tratadas de forma similar as do controle.Contudo, vale salientar que as restricoes de saıda estao relacionadas com oestado x(k + i |k) a partir de i = 1, enquanto as restricoes de controlepartiam de i = 0.

Com efeito, nao faz sentido impor restricoes de saıda em i = 0, pois oestado atual x(k) e uma constante no problema de otimizacao.

Ja no caso do controle, as restricoes em i = 0 condicionam o ganho Fk ,que sera utilizado na geracao de u(k|k) a partir de x(k).

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 61 / 71

Page 62: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Note-se inicialmente que

|yl(k + i |k)|2 = |Cl x(k + i |k)|2

sendo Cl a l-esima linha da matriz C .

Por outro lado, tem-se

x(k + i |k) = (A + BFk)x(k + i − 1|k), i ≥ 1

e, portanto,

maxi≥1|Cl x(k + i |k)|2 = max

i≥1|Cl(A + BFk)x(k + i − 1|k)|2

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 62 / 71

Page 63: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Tem-se ainda que

|Cl(A + BFk)x(k + i − 1|k)|2 = |Cl(A + BFk)Q1/2Q−1/2x(k + i − 1|k)|2

≤∣∣∣∣∣∣Cl(A + BFk)Q1/2

∣∣∣∣∣∣2 ∣∣∣∣∣∣Q−1/2x(k + i − 1|k)∣∣∣∣∣∣2 ≤ ∣∣∣∣∣∣Cl(A + BFk)Q1/2

∣∣∣∣∣∣2

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 63 / 71

Page 64: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Portanto, basta impor∣∣∣∣∣∣Cl(A + BFk)Q1/2∣∣∣∣∣∣2 ≤ y2

max ,l

isto e, ∣∣∣∣∣∣Cl(A + BYQ−1)Q1/2∣∣∣∣∣∣2 ≤ y2

max ,l

ou seja,Cl(A + BYQ−1)Q(A + BYQ−1)TCT

l ≤ y2max ,l

Cl(AQ + BY )Q−1(AQ + BY )TCTl ≤ y2

max ,l

para todo (A,B) ∈ Ω.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 64 / 71

Page 65: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

A restricao

Cl(AQ + BY )Q−1(AQ + BY )TCTl ≤ y2

max ,l , ∀(A,B) ∈ Ω

pode ser imposta acrescentando-se as seguintes LMIs ao problema deotimizacao: [

Q (AjQ + BjY )TCTl

? y2max ,l

]≥ 0, j = 1, 2, . . . , L

para cada l = 1, 2, . . . , q.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 65 / 71

Page 66: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

MPC Robusto empregando LMIs

Informacao requerida sobre a planta:

Vertices (A1,B1), (A2,B2), . . . , (AL,BL) do politopo Ω

Matriz C que relaciona o estado com as saıdas sujeitas a restricoes

Limitantes (simetricos) sobre a excursao dos controles: umax ∈ Rp

Limitantes (simetricos) sobre a excursao das saıdas: ymax ∈ Rq

Parametros de projeto:

Matrizes de peso S ∈ Rn×n e R ∈ Rp×p

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 66 / 71

Page 67: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Rotina principal:

1 Ler x(k) (estado da planta)2 Resolver o problema de otimizacao

minγ>0,Q>0,Y ,X

γ

s.a. [Q x(k)? 1

]≥ 0

Q 0 0 AjQ + BjY? γI 0 S1/2Q? ? γI R1/2Y? ? ? Q

≥ 0, j = 1, 2, . . . , L

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 67 / 71

Page 68: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

[X Y? Q

]≥ 0

eT1 Xe1 0 · · · 00 eT2 Xe2 · · · 0...

.... . .

...0 0 · · · eTp Xep

u2max ,1 0 · · · 0

0 u2max ,2 · · · 0

......

. . ....

0 0 · · · u2max ,p

[Q (AjQ + BjY )TCT

l

? y2max ,l

]≥ 0, j = 1, 2, . . . , L, l = 1, 2, . . . , q

3 Calcular o ganho Fk = YQ−1

4 Atualizar o controle aplicado a planta: u(k) = Fkx(k)

5 Fazer k = k + 1

6 Aguardar o proximo instante de amostragem e retornar ao passo 1.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 68 / 71

Page 69: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Implementacao em Matlab

mpc_lmi.m: S-function que implementa o controlador

Exemplo:

exemplo_mpc_lmi.m: Definicao das matrizes do modelo da planta(integrador duplo) e dos pesos do MPC.

sim_mpc_lmi.mdl: Diagrama de simulacao.

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 69 / 71

Page 70: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Finalizacao do curso

Proxima aula: Prova

Duracao: 150 minutos

Consulta permitida a livros, anotacoes pessoais e material distribuıdoao longo do curso.

Entrega dos trabalhos:

Data: 03 de dezembro de 2019 (3a feira da segunda semana deexames)

Horario: 13:30 as 14:00

Local: Sala 2206

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 70 / 71

Page 71: Aula 14 - ele.ita.brkawakami/ee254/EE254_2019_Aula14_handouts.pdf · LMI Lab (Matlab Robust Control Toolbox) Robustez com respeito a incertezas polit opicas no modelo da planta. Controle

Obrigado pela atencao !

EE-254 (Controle Preditivo) Aula 14 12 Novembro 2019 71 / 71