Baixe o app para aproveitar ainda mais
Prévia do material em texto
Controle Preditivo com Observadores de Estados. ENG730: Tópicos Especiais em Eng. Elétrica Departamento de Engenharia Elétrica - DEE Universidade Federal da Bahia - UFBA 08 de setembro de 2014 Prof. Tito Luís Maia Santos 1/ 27 Sumário 1 Introdução 2 Revisão 3 Observador de estados 4 Presença de perturbações constantes 5 Exemplo de simulação 6 Comentários Finais Prof. Tito Luís Maia Santos 2/ 27 Sumário 1 Introdução 2 Revisão 3 Observador de estados 4 Presença de perturbações constantes 5 Exemplo de simulação 6 Comentários Finais Prof. Tito Luís Maia Santos 3/ 27 Introdução Observadores de estados em estratégias MPC Objetivos da aula de hoje: Introduzir a noção de observadores de estados de tempo discreto; Discutir a utilização do estimador de Luenberger no contexto MPC; Apresentar exemplos ilustrativos. Principais referências: J. M. Maciejowski. Predictive Control with Constraints. Prentice Hall, 2002. L. Wang Model Predictive Control System Design and Implementation using MATLAB Springer-Verlag, 2009. Prof. Tito Luís Maia Santos 4/ 27 Introdução Considerações Modelo de predição sem ação integral x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k) com x(k) ∈ Rn, u(k) ∈ Rm, z(k) ∈ Rp e y(k) ∈ Rm. Sáıdas controladas - y(k) (par (A,C ) detectável). Sáıdas mensuráveis - z(k): Estados mensuráveis: z(k) = x(k) (H = I ); Sáıdas mensuráveis: z(k) (par (A,H) detectável). O sistema pode ser estabilizado (par (A,B) estabilizável). Prof. Tito Luís Maia Santos 5/ 27 Introdução Considerações Modelo de predição sem ação integral x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k) com x(k) ∈ Rn, u(k) ∈ Rm, z(k) ∈ Rp e y(k) ∈ Rm. Sáıdas controladas - y(k) (par (A,C ) detectável). Sáıdas mensuráveis - z(k): Sáıdas mensuráveis: z(k) = Hx(k) (H 6= I ); Sáıdas mensuráveis: z(k) (par (A,H) detectável). O sistema pode ser estabilizado (par (A,B) estabilizável). Prof. Tito Luís Maia Santos 6/ 27 Sumário 1 Introdução 2 Revisão 3 Observador de estados 4 Presença de perturbações constantes 5 Exemplo de simulação 6 Comentários Finais Prof. Tito Luís Maia Santos 7/ 27 Controlabilidade Definição Considere um sistema linear invariante no tempo com n estados e q entradas descrito por: x(k + 1) = Ax(k) + Bu(k) com A ∈ Rn×n e B ∈ Rn×q. Definição A equação de estado acima ou o par (A,B) é controlável, se para qualquer estado inicial x(0) = x0 e para qualquer estado final x(tf ) = xf , existe uma entrada u(k) finita que transfere o estado de x0 para xf em tempo finito. A controlabilidade é uma propriedade que depende da relação da entrada u(k) com os estados x(k). Prof. Tito Luís Maia Santos 8/ 27 Controlabilidade Definição Considere um sistema linear invariante no tempo com n estados e q entradas descrito por: x(k + 1) = Ax(k) + Bu(k) com A ∈ Rn×n e B ∈ Rn×q. Definição A equação de estado acima ou o par (A,B) é controlável, se para qualquer estado inicial x(0) = x0 e para qualquer estado final x(tf ) = xf , existe uma entrada u(k) finita que transfere o estado de x0 para xf em tempo finito. A controlabilidade é uma propriedade que depende da relação da entrada u(k) com os estados x(k). Prof. Tito Luís Maia Santos 8/ 27 Controlabilidade Observações importantes A matriz U = [B AB A2B ... An−1B] é chamada de matriz de controlabilidade. O sistema é controlável se o posto de U é igual ao número de estados n (ρ(U) = n). Se o sistema tem apenas uma entrada (q = 1), a matriz U é quadrada, e a condição de controlabilidade recai na condição det(U) 6= 0. Pode-se utilizar a decomposição de Kalman para dividir o sistema em modos controláveis e modos não-constroláveis. Prof. Tito Luís Maia Santos 9/ 27 Observabilidade Definição Considere um sistema linear invariante no tempo com n estados, q entradas e p sáıdas descrito por: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) com A ∈ Rn×n, B ∈ Rn×q e H ∈ Rp×n . Definição A equação de estado acima ou o par (A,H) é observável, se para qualquer estado inicial x(0), existir um tempo finito k tal que o conhecimento da entrada u(k) e da sáıda z(k) no intervalo [0, t1] seja suficiente para se determinar x(0). A observabilidade é uma propriedade que depende da relação da sáıda z(k) com os estados x(k). Prof. Tito Luís Maia Santos 10/ 27 Observabilidade Definição Considere um sistema linear invariante no tempo com n estados, q entradas e p sáıdas descrito por: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) com A ∈ Rn×n, B ∈ Rn×q e H ∈ Rp×n . Definição A equação de estado acima ou o par (A,H) é observável, se para qualquer estado inicial x(0), existir um tempo finito k tal que o conhecimento da entrada u(k) e da sáıda z(k) no intervalo [0, t1] seja suficiente para se determinar x(0). A observabilidade é uma propriedade que depende da relação da sáıda z(k) com os estados x(k). Prof. Tito Luís Maia Santos 10/ 27 Observabilidade Observações A matriz V = H HA ... HAn−1 é chamada de matriz de observabilidade. O sistema é observável se o posto de V é igual ao número de estados n (ρ(V ) = n). Se o sistema tem apenas uma sáıda (p = 1), a matriz V é quadrada, e a condição de observabilidade recai na condição det(V ) 6= 0. Pode-se utilizar a decomposição de Kalman para dividir o sistema em modos observáveis e modos não-observáveis. Prof. Tito Luís Maia Santos 11/ 27 Sumário 1 Introdução 2 Revisão 3 Observador de estados 4 Presença de perturbações constantes 5 Exemplo de simulação 6 Comentários Finais Prof. Tito Luís Maia Santos 12/ 27 Observador de estados Discussão preliminar Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k) com x(k) ∈ Rn, u(k) ∈ Rm, z(k) ∈ Rp e y(k) ∈ Rm. Sáıdas controladas - y(k). Sáıdas mensuráveis - z(k). Se o sistema for observável, pode-se estimar o valor de x(k) num intervalo de tempo finito. Se o sistema for não observável, mas detectável, pode-se obter uma estimativa para x(k), tal que Hx̂(k) → z(k). Prof. Tito Luís Maia Santos 13/ 27 Observador de estados Observardor de Luenberger Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k). Uma estimativa do valor de x(k) pode ser obtida de forma dinâmica por meio de um observador como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). Dinâmica do erro de estimação (e(k) = x(k)− x̂(k)): e(k + 1) = Ae(k)− LHe(k) = (A− LH)e(k). A solução deste sistema dinâmico é dada por: e(k) = (A− LH)ke(0). Prof. Tito Luís Maia Santos 14/ 27 Observador de estados Observardor de Luenberger Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k). Uma estimativa do valor de x(k) pode ser obtida de forma dinâmica por meio de um observador como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). Dinâmica do erro de estimação (e(k) = x(k)− x̂(k)): e(k + 1) = Ae(k)− LHe(k) = (A− LH)e(k). A solução deste sistema dinâmico é dada por: e(k) = (A− LH)ke(0). Prof. Tito Luís Maia Santos 14/ 27 Observador de estados Observardor de Luenberger Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k). Uma estimativa do valor de x(k) pode ser obtida de forma dinâmica por meio de um observador como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). Dinâmica do erro de estimação (e(k) = x(k)− x̂(k)): e(k + 1) = Ae(k)− LHe(k) = (A− LH)e(k). A solução deste sistema dinâmico é dada por: e(k) = (A− LH)ke(0). Prof. Tito Luís Maia Santos 14/ 27 Observador de estados Matriz de ganho L Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k). Uma estimativa do valor de x(k) pode ser obtida de forma dinâmica por meiode um observador como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). A solução deste sistema dinâmico é dada por: e(k) = (A− LH)ke(0). Autovalores de (A− LH) → velocidade de convergência do erro. A matriz de ganho L é o parâmetro de sintonia. Prof. Tito Luís Maia Santos 15/ 27 Observador de estados Matriz de ganho L Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k). Uma estimativa do valor de x(k) pode ser obtida de forma dinâmica por meio de um observador como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). A solução deste sistema dinâmico é dada por: e(k) = (A− LH)ke(0). Autovalores de (A− LH) → velocidade de convergência do erro. A matriz de ganho L é o parâmetro de sintonia. Prof. Tito Luís Maia Santos 15/ 27 Observador de estados Sintonia Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k). Uma estimativa do valor de x(k) pode ser obtida de forma dinâmica por meio de um observador como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). Em Matlab: Sistemas observáveis: Lt = place(A′,H ′, v), L = Lt ′. Sistemas não-observáveis: [Lt, S , v ] = dlqr(A′,H ′,Q,R), L = Lt ′. Prof. Tito Luís Maia Santos 16/ 27 Observador de estados Sintonia Considere um modelo sem incertezas e sem ação integral: x(k + 1) = Ax(k) + Bu(k) z(k) = Hx(k) y(k) = Cx(k). Uma estimativa do valor de x(k) pode ser obtida de forma dinâmica por meio de um observador como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). Em Matlab: Sistemas observáveis: Lt = place(A′,H ′, v), L = Lt ′. Sistemas não-observáveis: [Lt, S , v ] = dlqr(A′,H ′,Q,R), L = Lt ′. Prof. Tito Luís Maia Santos 16/ 27 Sumário 1 Introdução 2 Revisão 3 Observador de estados 4 Presença de perturbações constantes 5 Exemplo de simulação 6 Comentários Finais Prof. Tito Luís Maia Santos 17/ 27 Observador de estados Perturbação constante Na prática existem incertezas: x(k + 1) = Ax(k) + Bu(k) + w(k) z(k) = Hx(k) + v(k) y(k) = Cx(k). A estimativa do valor de x(k) continua sendo dada como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). Neste caso, erro de estimação (e(k) = x(k)− x̂(k)) passa a ser descrito por: e(k+1) = Ae(k)+w(k)−LHe(k)−Lv(k) = (A−LH)e(k)+w(k)−Lv(k). Há erro de estimação em regime permanente caso w(k) 6= 0 ou v(k) 6= 0. Prof. Tito Luís Maia Santos 18/ 27 Observador de estados Perturbação constante Na prática existem incertezas: x(k + 1) = Ax(k) + Bu(k) + w(k) z(k) = Hx(k) + v(k) y(k) = Cx(k). A estimativa do valor de x(k) continua sendo dada como segue: x̂(k + 1) = Ax̂(k) + Bu(k) + L(z(k)− Hx̂(k)). Neste caso, erro de estimação (e(k) = x(k)− x̂(k)) passa a ser descrito por: e(k+1) = Ae(k)+w(k)−LHe(k)−Lv(k) = (A−LH)e(k)+w(k)−Lv(k). Há erro de estimação em regime permanente caso w(k) 6= 0 ou v(k) 6= 0. Prof. Tito Luís Maia Santos 18/ 27 Observador de estados Inclusão da Ação Integral Modelo incremental: [ ∆x(k + 1) y(k + 1) ] = [ A 0 CA I ] ︸ ︷︷ ︸ Aa [ ∆x(k) y(k) ] + [ B CB ] ︸ ︷︷ ︸ Ba ∆u(k) y(k) = [0 I ] ︸︷︷︸ Ca [ ∆x(k) y(k) ] Fazendo ξ(k) = [∆x(k)′ y(k)′]′ chegamos a ξ(k + 1) = Aaξ(k) + Ba∆u(k) y(k) = Caξ(k) z(k) = Haξ(k) Prof. Tito Luís Maia Santos 19/ 27 Observador de estados Inclusão da Ação Integral Modelo incremental: [ ∆x(k + 1) y(k + 1) ] = [ A 0 CA I ] ︸ ︷︷ ︸ Aa [ ∆x(k) y(k) ] + [ B CB ] ︸ ︷︷ ︸ Ba ∆u(k) y(k) = [0 I ] ︸︷︷︸ Ca [ ∆x(k) y(k) ] Fazendo ξ(k) = [∆x(k)′ y(k)′]′ chegamos a ξ(k + 1) = Aaξ(k) + Ba∆u(k) y(k) = Caξ(k) zm(k) = ∆z(k) = [H 0] ︸ ︷︷ ︸ Ha ξ(k). Prof. Tito Luís Maia Santos 20/ 27 Observador de estados Inclusão da Ação Integral - assumindo y(k) mensurável Modelo incremental: [ ∆x(k + 1) y(k + 1) ] = [ A 0 CA I ] ︸ ︷︷ ︸ Aa [ ∆x(k) y(k) ] + [ B CB ] ︸ ︷︷ ︸ Ba ∆u(k) y(k) = [0 I ] ︸︷︷︸ Ca [ ∆x(k) y(k) ] Fazendo ξ(k) = [∆x(k)′ y(k)′]′ chegamos a ξ(k + 1) = Aaξ(k) + Ba∆u(k) y(k) = Caξ(k) zm(k) = [ ∆z(k) y(k) ] = [ H 0 0 I ] ︸ ︷︷ ︸ Ha ξ(k). Prof. Tito Luís Maia Santos 21/ 27 Observador de estados Inclusão da Ação Integral Considere um modelo incremental como segue: ξ(k + 1) = Aaξ(k) + Ba∆u(k) y(k) = Caξ(k) zm(k) = Haξ(k). Neste caso o estimador é dado como segue: ξ̂(k + 1) = Aaξ̂(k) + Ba∆u(k) + L(zm(k)− Haξ̂(k)). Num dado instante k , calcula-se ξ̂(k) como segue: ξ̂(k) = Aaξ̂(k − 1) + Ba∆u(k − 1) + L(zm(k − 1)− Haξ̂(k − 1)). Prof. Tito Luís Maia Santos 22/ 27 Sumário 1 Introdução 2 Revisão 3 Observador de estados 4 Presença de perturbações constantes 5 Exemplo de simulação 6 Comentários Finais Prof. Tito Luís Maia Santos 23/ 27 Exemplo de simulação Motor DC Exemplo: Seja o modelo de um motor DC dado por [ i̇a(t) ω̇r (t) ] = [ −R/L −K/L K/L −b/J ] [ ia(t) ωr (t) ] + [ 1/L 0 ] Va(t) y(t) = ωr (t) com R = 2.7 Ω, L = 0.004 H, K = 0.105 Nm/A, J = 10−5Kg ·m2 e b = 9.3 · 10−6 N ·ms/rad . Obter o controlador preditivo com modelo incremental para Ts = 0.1 s, yr = 50 rpm, Qy = 1, R = 10, N1 = 1, N2 = 20 e Nu = 5. Restrições: y(k) < 60, |u(k)| < 10 e |∆u(k)| < 4. Não se mede a corrente do estator. Prof. Tito Luís Maia Santos 24/ 27 Exemplo de simulação Motor DC Resposta: 0 1 2 3 4 5 6 7 8 9 10 0 20 40 60 ref Sem observador Com observardor 0 1 2 3 4 5 6 7 8 9 10 0 5 10 Sem observador Com observardor 0 1 2 3 4 5 6 7 8 9 10 −4 −2 0 2 4 Sem observador Com observardor Prof. Tito Luís Maia Santos 25/ 27 Sumário 1 Introdução 2 Revisão 3 Observador de estados 4 Presença de perturbações constantes 5 Exemplo de simulação 6 Comentários Finais Prof. Tito Luís Maia Santos 26/ 27 Comentários Finais Introduziu-se a noção de observador de estados; Discutiu-se a respeito da dinâmica do erro de estimação/sintonia; Tratou-se a respeito do problema de perturbações constantes; Apresentou-se um exemplo de simulação. Prof. Tito Luís Maia Santos 27/ 27 Introdução Revisão Observador de estados Presença de perturbações constantes Exemplo de simulação Comentários Finais
Compartilhar