[Apostila] Controle Moderno de Processos

download [Apostila] Controle Moderno de Processos

of 34

description

Apostia de Controle de Processos para o curso de Engenharia Elétrica

Transcript of [Apostila] Controle Moderno de Processos

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 1

    5 Relacao Entre as Varias Formas de Repre-sentacao de Sistemas

    Equaes

    Diferenciais

    Diagrama

    de Simulao

    Equaes

    de Estado

    Funo de

    Transferncia

    5.1 Matriz de transferencia

    SLIT contnuos no tempo podem ser descritos pela representacao

    no espaco de estados:

    dx(t)

    dt= Ax(t) +Bu(t) : Equacao de estado

    y(t) = Cx(t) +Du(t) : Equacao de sada

    sendo x(t) Rn o vetor de estados, u(t) Rp o vetor de entradas e

    y(t) Rq o vetor de sadas. As variaveis de estado, x1(t), x2(t), . . .,

    xn(t), podem estar associadas com os elementos do sistema que ar-

    mazenam energia ou podem ser variaveis com significado puramente

    matematico.

    Aplicando a transformada de Laplace nas duas equacoes e es-

    crevendo a relacao entrada-sada resulta na matriz de transferencia:

    G(s) = C(sI A)1B +D =

    G11(s) . . . G1p(s)... . . . ...Gq1(s) . . . Gqp(s)

    Como Y (s) = G(s)U(s), entao

    Gi,j(s) =Yi(s)

    Uj(s)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 2

    No caso de sistemas lineares,

    Yi(s) = Gi1(s)U1(s)+Gi2(s)U2(s)+ . . .+Gip(s)Up(s), i = 1, . . . , q

    Polos de G(s) = autovalores de A:

    G(s) = C(sIA)1B+D =Cadj(sI A)B +D|sI A|

    |sI A|=N(s)

    Q(s)

    As razes de Q(s) = |sI A| = 0 sao os polos de G(s)

    As razes de Q(s) = |I A| = 0 sao os autovalores de A

    Uma representacao no espaco de estado de uma funcao de trans-

    ferencia G(s) e denominada uma realizacao de G(s), podendo ser

    representado na forma compacta por:

    G(s) ,

    [A B

    C D

    ]Nota: Existem diferentes possibilidades de realizacao de uma

    funcao de transferencia.

    5.2 Diagramas de simulacao

    Diagramas de simulacao podem ser utilizados para obter realiza-

    coes no espaco de estados de funcoes de transferencia. Diagramas

    de simulacao utilizam apenas 3 elementos para representar sistemas:

    somador, multiplicador (ganho) e integrador.

    Considere a equacao diferencial:

    dny(t)

    dtn+ an1

    dn1y(t)

    dtn1+ . . . + a1

    dy(t)

    dt+ a0y(t) = b0u(t)

    Usando blocos integradores pode-se obter y(t) a partir de dny(t)dtn

    :

    y(t)(n)

    y(t)(n-1)

    y(t)oo

    y(t)o

    y(t)o o o

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 3

    A entrada do integrador a` esquerda, dny(t)dtn

    , pode ser obtida expli-

    citando este termo na equacao diferencial:

    dny(t)

    dtn= a0y(t) a1

    dy(t)

    dt . . . an1

    dn1y(t)

    dtn1+ b0u(t)

    y(t)(n)

    y(t)(n-1)

    y(t)oo

    y(t)o

    y(t)o o o

    u(t) +

    o

    o

    o

    -a

    -a

    b0

    0

    n-1o o o

    + +x (t)1x (t)n

    o o

    x (t)2

    x (t)1x (t)n-1o

    x (t)3

    x (t)2

    x (t)no

    Representacoes no espaco de estados podem ser obtidas definindo

    as sadas de cada bloco integrador como variaveis de estado xi(t) (a

    entrada do integrador sera dxi(t)dt

    ). Definindo as variaveis de estado

    como mostrado na figura resulta:

    d

    dt

    x1x2...

    xn1xn

    =

    0 1 0 . . . 0

    0 0 1 0... ... . . . ...

    0 0 0 . . . 1

    a0 a1 a2 . . . an1

    x1x2...

    xn1xn

    +

    0

    0...

    0

    b0

    u

    y =[1 0 0 . . . 0

    ]

    x1x2...

    xn1xn

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 4

    5.3 Forma canonica de variaveis de fase ou forma canonica

    controlavel

    Equacao diferencial de alta ordem ou F.T Espaco de Estados

    Caso 1:dny(t)

    dtn+ an1

    dn1y(t)

    dtn1+ . . . + a1

    dy(t)

    dt+ a0y(t) = u(t)

    G(s) =Y (s)

    U(S)=

    1

    sn + an1sn1 + . . . + a1s + a0

    As variaveis de estado podem ser definidas como:

    x1(t) , y(t) dx1(t)

    dt= x2(t)

    x2(t) ,dy(t)

    dt

    dx2(t)

    dt= x3(t)

    ... ... ...

    xn(t) ,dn1y(t)

    dtn1

    dxn(t)

    dt=

    dny(t)

    dtn

    dxn(t)

    dt=

    dny(t)

    dtn= a0y(t) a1

    dy(t)

    dt . . . an1

    dn1y(t)

    dtn1+ u(t)

    = a0x1(t) a1x2(t) . . . an1xn(t) + u(t)

    Que corresponde a seguinte realizacao no espaco de estados:

    d

    dt

    x1x2...

    xn1xn

    =

    0 1 0 . . . 0

    0 0 1 0... ... . . . ...

    0 0 0 . . . 1

    a0 a1 a2 . . . an1

    x1x2...

    xn1xn

    +

    0

    0...

    0

    1

    u

    y =[1 0 0 . . . 0

    ]

    x1x2...

    xn1xn

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 5

    Caso 2:

    dny(t)

    dtn+ an1

    dn1y(t)

    dtn1+ . . . + a1

    dy(t)

    dt+ a0y(t) =

    cmdmu(t)

    dtm+ cm1

    dm1u(t)

    dtm1+ . . . + c1

    du(t)

    dt+ c0u(t), m n

    G(s) =Y (s)

    U(S)=cms

    m + cm1sm1 + . . . + c1s + c0

    sn + an1sn1 + . . . + a1s + a0

    Definindo:

    Y (s) = (cmsm + cm1s

    m1 + . . . + c1s + c0)X1(s)

    a equacao diferencial pode ser re-escrita como:

    dnx1(t)

    dtn+ an1

    dn1x1(t)

    dtn1+ . . . + a1

    dx1(t)

    dt+ a0x1(t) = u(t)

    que e igual ao caso 1:

    dx1(t)

    dt= x2(t),

    dx2(t)

    dt= x3(t), . . . ,

    dxn1(t)

    dt= xn(t)

    dxn(t)

    dt= a0x1(t) a1x2(t) . . . an1xn(t) + u(t)

    O que muda e a relacao entre y(t) e x1(t):

    y(t) = cmdmx1(t)

    dtm+ cm1

    dm1x1(t)

    dtm1+ . . . c1

    dx1(t)

    dt+ c0x1(t)

    Caso m < n

    y(t) = cmxm1(t) + cm1xm2(t) + . . . + c1x2(t) + c0x1(t)

    Que corresponde a seguinte equacao de sada:

    y =[c0 c1 . . . cm 0 . . . 0

    ] x1...xn

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 6

    Caso m = n

    y(t) = cndxn(t)

    dt+ cn1xn(t) + cn2xn1(t) + . . . + c1x2(t) + c0x1(t)

    = cn[a0x1(t) a1x2(t) . . . an1xn(t) + u(t)]

    +c0x1(t) + c1x2(t) + . . . + cn2xn1(t) + cn1xn(t)

    = (c0 cna0)x1(t) + (c1 cna1)x2(t) + . . .

    +(cn1 cnan1)xn(t) + cnu(t)

    Que corresponde a seguinte equacao de sada:

    y =[c0 c

    1 . . . c

    n1

    ] x1...xn

    + cnu(t)

    sendo ck = ck cnak.

    G(s) =Y (s)

    U(S)= cn +

    cn1sn1 + . . . + c1s + c

    0

    sn + an1sn1 + . . . + a1s + a0

    y(t)o o o

    u(t)

    +

    -a

    -a

    c'n-1

    0

    n-1o o o

    ++

    x (t)1x (t)nox (t)1

    c'0

    o

    o

    o

    +

    +

    cn

    +

    x (t)no

    x (t)2

    o

    o

    o

    -a1

    +

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 7

    5.4 Forma canonica de Jordan

    Considere um sistema monovariavel com todos polos reais e distin-

    tos, cuja F.T. pode ser decomposta em fracoes parciais:

    G(s) =cns

    n + cn1sn1 + . . . + c1s + c0

    sn + an1sn1 + a1s + a0= cn+

    f1

    s 1+. . .+

    fn

    s n

    Y (s) = G(s)U(s) = f11

    s 1U(s)

    Z1(s)

    + . . . + fn1

    s nU(s)

    Zn(s)

    +cnU(s)

    Definindo a variaveis de estado canonicas como:

    Zi(s) ,1

    s iU(s)

    d

    dtzi(t) = izi(t) + u(t)

    A realizacao da funcao de transferencia na forma canonica de jor-

    dan (ou forma desacoplada ou forma normal) e

    d

    dt

    z1(t)

    z2(t)...

    zn(t)

    =

    1 0 . . . 0

    0 2. . . ...

    ... . . . . . . 0

    0 . . . 0 n

    z1(t)

    z2(t)...

    zn(t)

    +

    1

    1...

    1

    u(t)

    y(t) =[f1 f2 . . . fn

    ] z1(t)...zn(t)

    + cnu(t)

    Na realizacao na forma canonica,

    dz(t)

    dt= Anz(t) z(t) = n(t)z(0), n(t) = e

    Ant =

    e1t 0. . .

    0 ent

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 8

    y(t)

    +

    o

    o

    o

    -n

    +

    z (t)n

    +

    +

    fn

    +

    z (t)no

    u(t)

    +

    -1

    +

    z (t)1f1

    z (t)1o

    cn

    o

    o

    o

    5.5 Transformacao de similaridade

    Seja x(t) e x(t) dois conjuntos diferentes de variaveis de estado de

    um mesmo sistema. Se x(t) e x(t) podem ser relacionados por

    x(t) = Tx(t) ou x(t) = T1x(t)

    onde a matriz T Rnn, nao singular, e denominada matriz de

    transformacao, entao:

    d

    dtx = Ax +Bu x = Tx

    d

    dtx = Ax +Bu

    y = Cx +Du y = Cx +Du

    sendo

    A = T1AT, B = T1B, C = CT

    G(s) =

    [A B

    C D

    ]=

    [T1AT T1B

    CT D

    ]

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 9

    5.6 Diagonalizacao da matriz A

    Se os autovalores forem todos distintos, entao existe uma matriz

    T , denominada matriz modal, tal que

    A = T1AT = An =

    1 0. . .

    0 n

    Cada coluna da matriz modal e igual a um autovetor da matriz A:

    T =[v1 v2 . . . vn

    ]sendo Avi = ivi e vi adj(iI A)

    Nota: Na forma canonica de variaveis de fase

    T =[v1 v2 . . . vn

    ]=

    1 1 . . . 1

    1 2 . . . n21

    22 . . .

    2n

    ... ... ...

    n11 n12 . . .

    n1n

    Nota: A matriz de transicao de estados (t)

    d

    dtx(t) = Ax(t) x(t) = (t)x(0), (t) = eAt

    pode ser calculada a partir da matriz modal

    (t) = TnT1, n = e

    Ant =

    e1t 0. . .

    0 ent

    MATLAB:

    [T An]=eig(A)

    sis=ss(A,B,C,D)

    sis_n = ss2ss(sis, inv(T))

    sis_n = canon(sis)

    G=tf(sis)

    sis=ss(G)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 10

    6 Propriedades de Sistemas Representados no Espaco

    de Estados

    Alem da propriedade de estabilidade serao consideradas mais

    duas propriedades de sistemas representados no espaco de estados.

    Controlabilidade existencia da solucao do problema de con-

    trole.

    ou(t) x(t)x(t)=Ax(t)+Bu(t) C

    +

    y(t)

    K

    r(t)

    _

    Observabilidade possibilidade de estimar as variaveis de es-

    tado que nao podem ser medidas.

    ou(t) x(t)x(t)=Ax(t)+Bu(t) C

    +

    y(t)

    K

    r(t)

    _

    Estimador

    x(t)^

    Controlabilidade + Observabilidade condicoes para equi-

    valencia completa entre funcoes de transferencia e representacao no

    espaco de estados.

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 11

    6.1 Estabilidade segundo Lyapunov

    Definicao: O sistema dinamico contnuo x(t) = Ax(t) e dito

    ser estavel se somente se todos os autovalores de A, i(A), estao no

    semi-plano esquerdo aberto, isto e, Re{i(A)} < 0, i. A matriz A

    com essa propriedade e chamada de estavel ou Hurwitz.

    Em 1892 o matematico russo Alexander Mikhailovitch Lyapunov

    introduziu a teoria de estabilidade para sistemas lineares e nao-lineares.

    Segundo Lyapunov, pode-se checar a estabilidade de um sistema en-

    contrando uma funcao V (x), chamada funcao de Lyapunov, que para

    sistemas invariantes no tempo deve satisfazer

    V (x) > 0, V (0) = 0

    V (x) =dV

    dt=V

    x

    dx

    dt 0

    Para o sistema x(t) = Ax(t), a funcao de Lyapunov poder ser a

    funcao quadratica V (x) = xT (t)Px(t), P = P T 0, que atende as

    primeiras duas condicoes. A terceira condicao resulta em

    V (x) = xTPx + xTPx = xTATPx + xTPAx

    = xT (ATP + PA)x < 0

    Teorema: O SLIT contnuo, x(t) = Ax(t), e assintoticamente

    estavel se somente se existe uma matriz simetrica definida positiva

    P = P T 0, tal que

    ATP + PA 0

    Equivalentemente, O SLIT contnuo, x(t) = Ax(t), e assintoti-

    camente estavel se somente se existem matrizes simetricas definidas

    positivas P = P T 0 e Q = QT 0 que atendem a` equacao

    algebrica se Lyapunov:

    ATP + PA = Q

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 12

    Teorema: O SLIT contnuo, x(t) = Ax(t), y(t) = Cx(t), e

    assintoticamente estavel se somente se o par (A,C) e observavel e

    a equacao algebrica de Lyapunov possui uma unica solucao definida

    positiva

    ATP + PA = Q, P = P T > 0, Q = CTC 0

    Equivalentemente, o sistema x(t) = Ax(t) e estavel se existe X =

    XT 0, X = P1, tal que XAT + AX 0.

    MATLAB: X = lyap(A,Q) resolve a equacao de Lyapunov: AX+

    XAT +Q = 0.

    Exemplo: Considere o sistema x(t) = Ax(t), y(t) = Cx(t),

    A =

    0 1 00 0 11 2 3

    , C = [ 1 0 0 ]

    O palpite incial para Q e Q = I .

    No MATLAB, X=lyap(A,eye(3)) resulta:

    X =

    5 0,5 1,50,5 1,5 0,51,5 0,5 1

    , i(X) = {0,19; 1,78; 5,53}

    X 0 sistema assintoticamente estavel.

    Para Q = CTC, no MATLAB, P=lyap(A,C*C) resulta:

    P =

    1,9 1,8 0,51,8 2,8 0,90,5 0,9 0,3

    , i(P ) = {0,002; 0,54; 4,5}

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 13

    6.2 Controlabilidade

    Definicao: O sistema dinamico x(t) = Ax(t) + Bu(t) ou o par

    (A,B) e controlavel (todos os estados sao controlaveis) se, para qual-

    quer estado inicial x(0) = x0, qualquer tempo t1 > 0 e qualquer

    estado final x1, existe uma entrada u(t) tal que a solucao da equacao

    de estado satisfaca x(t1) = x1. Caso contrario, o sistema ou o par

    (A,B) e dito ser nao controlavel.

    u(t) deve influenciar cada variavel de estado na equacao:

    X(s) = (sI A)1x(0) + (sI A)1BU(S)

    = (s)x(0) + (s)BU(s)

    x(t) = (t)x(t) +

    t0

    ( )Bu(t )d

    Existem varias formas de verificar se o sistema e de estado con-

    trolavel.

    1. O par (A,B) e controlavel se somente se a matriz de controla-

    bilidade:

    C ,[B AB A2B . . . An1B

    ] Rnnp

    possui posto n (posto de linha completo). Sendo n o numero de

    variaveis de estados.

    Nota: se o sistema possuir uma entrada, posto C = n |C| 6= 0.

    Se o sistema possui multiplas entradas, posto C = n |CCT | 6= 0

    MATLAB:

    C=ctrb(A,B)

    sis=ss(A,B,C,D)

    C=ctrb(G)

    rank(C)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 14

    2. Uma entrada u(t) que resulta em x(t1) = x1 e dada por:

    u(t) = BTeAT (t1t)Wc(t1)

    1(eAt1x0 x1)

    sendo

    Wc(t) ,

    t0

    eABBTeAT d

    Desse modo o sistema e controlavel se somente se a matriz Wc(t)

    possui posto completo (e definida positiva) para qualquer t > 0.

    Para sistemas estaveis, e necessario analisar apenas P , Wc(),

    isto e, o par (A,B) e controlavel se somente se o gramiano de con-

    trolabilidade

    P ,

    0

    eABBTeAT d

    e definido positivo (P 0) e desta forma possui posto completo n.

    P pode ser obtido da solucao da equacao de Lyapunov:

    AP + PAT = BBT

    MATLAB:

    P=lyap(A,B*B)

    P = gram(G,c)

    eig(P) % controlavel se i(P ) > 0, i

    3. Seja qiA = iqi . O sistema e de estado controlavel se somente

    se Bqi 6= 0, i.

    Bqi = 0 modo natural eit nao controlavel.

    MATLAB:

    [Q,P] = eig(A)

    Q = conj(Q)

    B*Q

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 15

    Exemplo: Considere um SLIT representado por:

    G(s) =

    2 2 10 4 1

    1 0 0

    = s + 2

    (s + 2)(s + 4)=

    1

    s + 4

    1. A matriz de controlabilidade possui duas linhas (ou colunas)

    dependentes

    C =[B AB

    ]=

    [1 4

    1 4

    ], |C| = 0 posto C = 1 < 2

    2. O gramiano de controlabilidade e singular (|P | = 0)

    P =

    [0,125 0,125

    0,125 0,125

    ]3. Os autovalores de A sao 1 = 2 e 2 = 4 e os correspon-

    dentes autovetores esquerdos sao q1 = [0,707 0,707]T e q2 = [0 1]

    T ,

    tal que,

    Bq1 = 0 (e2t nao controlavel)

    Bq2 = 1 6= 0 (e4t controlavel)

    6.3 Observabilidade

    Definicao: O sistema dinamico x(t) = Ax(t) + Bu(t), y(t) =

    Cx(t) + Du(t) ou o par (A,C) e observavel (todos os estados sao

    observaveis) se, para algum t1 > 0, o estado inicial x(0) = x0 puder

    ser determinado a partir da historia no tempo do sinal de entrada

    u(t) e do sinal de sada y(t) no intervalo [0, t1]. Senao o par (A,C)

    e dito ser nao observavel.

    Cada variavel de estado deve influenciar y(t) na equacao:

    y(t) = C(t)x(0) + C

    t0

    ( )Bu(t )d +Du(t)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 16

    1. O par (A,C) e observavel se somente se a matriz de observabi-

    lidade

    O =

    C

    CA...

    CAn1

    Rqnn

    possui posto n (posto completo de coluna).

    Nota: Se o sistema possuir uma sada, posto O = n |O| 6= 0. Se

    o sistema possui multiplas sadas, posto O = n |OTO| 6= 0

    MATLAB:

    O=obsv(A,C)

    O=obsv(sis)

    rank(O)

    2. O par (A,C) e observavel se a matriz

    Wo ,

    t0

    eAT CTCeAd

    e difinida positiva para todo t > 0. Para sistemas estaveis, o par

    (A,C) e observavel se somente se o gramiano de observabilidade

    Q ,

    0

    eAT CTCeAd

    possui posto n (ser definido positivo).

    O gramiano de observabilidade, Q, pode ser obtido como a solucao

    da equacao de Lyapunov

    ATQ +QA = CTC

    MATLAB:

    Q=lyap(A,CC)

    Q = gram(G,o)

    eig(O) % observavel se i(Q) > 0, i

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 17

    3. Seja Avi = ivi. O sistema e observavel se somente se Cvi 6=

    0, i.

    MATLAB:

    [V,An]=eig(A)

    C*V

    Exemplo: Considere o sistema,

    G(s) =

    0 1 0 0

    0 0 1 0

    24 2 5 1

    2 1 0 0

    = s 2(s + 4)(s + 3)(s 2)

    1. Analisando a matriz de observablidade verifica-se que o sistema

    nao e observavel:

    O =

    2 1 00 2 1

    24 2 7

    , |O| = 0 posto O < 3

    2. Gramiano de observabilidade:

    Q =

    1,45 0,56 0,080,56 0,22 0,030,08 0,03 0,006

    , i(Q) = {0; 0,0053; 1,67}

    3. Testando cada modo natural, com i(A) = {4; 3; +2},

    C[v1 v2 v3] = C

    0,06 0,10 0,220,24 0,31 0,440,97 0,94 0,87

    = [0,36 0,52 0]

    v3 e2t nao observavel.

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 18

    6.4 Controlabilidade e observabilidade na forma canonica

    de Jordan

    d

    dt

    z1(t)

    z2(t)...

    zn(t)

    =

    1 0 . . . 0

    0 2. . . ...

    ... . . . . . . 0

    0 . . . 0 n

    z1(t)

    z2(t)...

    zn(t)

    +

    b1b2...

    bn

    u(t)

    y(t) =[c1 c2 . . . cn

    ] z1(t)...zn(t)

    +Du(t)

    Se nao existir nenhuma linha totalmente nula em Bn, entao to-

    das as variaveis de estado sao afetadas por u(t) sistema con-

    trolavel.

    Se nao existir nenhuma coluna totalmente nula em Cn, entao

    todas as variaveis de estado afetam pelo menos uma das sadas

    sistema observavel.

    linha bi = 0 eit e nao controlavel

    coluna ci = 0 eit e nao observavel

    6.5 Relacao entre controlabilidade, observabilidade e

    funcoes de transferencia

    Teorema: Se ocorrer cancelamento de polo com zero em

    G(s)=Y(s)/U(s), entao o sistema sera ou nao controlavel ou nao ob-

    servavel de acordo com a escolha das variaveis de estado. Se nao ocor-

    rer cancelamento de polo com zero entao o sistema sera controlavel e

    observavel.

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 19

    S+

    y(t)r(t)co

    Sc

    So

    +

    Su

    G(s) = Cco(sI Aco)Bco +D

    6.6 Realizacao Mnima

    Definicao: Uma realizacao no espaco de estados (A,B,C,D) de

    G(s) e dita ser uma realizacao mnima de G(s) se A possui a menor

    dimensao possvel (menor numero de estados). A dimensao mnima

    e denominada grau de McMillan de G(s).

    Somente os modos naturais controlaveis e observaveis contribuem

    para o comportamento entrada-sada de u(t) para y(t). Uma reali-

    zacao no espaco de estados e minima se somente se o par (A,B) e

    controlavel e o par (A,C) e observavel.

    Um modo natural e escondido se ele e nao controlavel e/ou nao

    observavel, nao aparecendo na realizacao mnima. Polos nao con-

    trolaveis e/ou nao observaveis sao cancelados por zeros de G(s) =

    C(sI A)1B +D.

    MATLAB:

    Gm = minreal(G)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 20

    Exemplo: Considere o sistema,

    G(s) =

    0 1 0 0

    0 0 1 0

    24 2 5 1

    2 1 0 0

    = s 2(s + 4)(s + 3)(s 2)

    A realizacao mnima e obtida como

    Gm(s) =

    8,627 3,3440 0,37467,785 1,6270 0,31271,433 1,717 0

    = 1

    (s + 4)(s + 3)

    6.6 Realizacao Balanceada

    A realizacao mnima em que os gramianos de controlabilidade e

    observabilidade sao iguais e na forma de uma matriz diagonal

    Pb = Qb =

    h1 0 . . . 0

    0 h2 0... . . . ...

    0 0 . . . hn

    , hi = i(PQ), i = 1, . . . , n

    e conhecida como realizacao balanceada. Os valores h1 > h2 > . . . >

    hn > 0, sao conhecidos como valores singulares de Hankel. O valor

    singular de Hankel hi e proporcional a` influencia da variavel de estado

    xi(t) na relacao entre o vetor de entradas u(t) e o vetor de sadas y(t).

    MATLAB:

    [Gb,g] = balreal(Gm)

    calcula a realizacao balanceada, Gb, a partir da realizacao mnima,

    Gm, e retorna tambem o vetor de valores singulares de Hankel, g.

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 21

    Exemplo: Considerando a realizacao mnima do exemplo anterior,

    a realizacao balanceada e os graminanos sao:

    Gb(s) =

    1,012 2,437 0,31862,437 5,988 0,3186

    0,3186 0,3186 0

    = 1

    (s + 4)(s + 3)

    Pb = Qb =

    [0,0501 0

    0 0,0085

    ]

    6.7 Reducao de modelos

    A partir da realizacao balanceada e possvel obter uma aproxi-

    macao de ordem reduzida do sistema eliminado as variaveis de estado

    associadas com os valores singulares de Hankel que sao relativamente

    pequenos.

    Exemplo: Considere o sistema estavel, controlavel e observavel com

    a seguintes realizacao no espaco de estados:

    G(s) =

    2 0 0,5 0,5 1 5

    1 2 0,5 0,5 1 8

    10,5 3 7 2 4,5 7

    11,5 3 6,5 1,5 5,5 11

    1,5 0 0,5 0,5 0,5 9

    2 0 2 1 0 0

    Atraves do comando balreal, sao calculados os valores singu-

    lares de Hankel como: {5,6; 2,6; 0,2; 0,02; 0,001}. Relativamente,

    as duas primeiras variaveis de estado da forma balanceada possuem

    peso maior na relacao entrada e sada e o sistema de 5a ordem pode ser

    aproximado por um de 2a ordem usando os comandos do MATLAB:

    sis = ss(A,B,C,D)

    sisb = balreal(sis)

    sysr = modred(sisb,[3 4 5])

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 22

    G(s) Gr(s) =

    0,9641 1,1782 3,27701,1782 0,2135 1,05863,2770 1,0586 0,5111

    0 2 4 6 8 10 120

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10Step Response

    Time (sec)

    Ampl

    itude

    2a ordem

    5a ordem

    0.1 1 10 100 1000 90

    45

    0

    45

    Phas

    e (de

    g)

    40

    20

    0

    20

    40

    Mag

    nitu

    de (d

    B)

    Bode Diagram

    Frequency (rad/sec)

    2a ordem

    2a ordem

    5a ordem

    5a ordem

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 23

    7 Projeto de Sistemas de Controle no Espaco de Es-

    tados

    Configuracao de um sistema de controle generalizado:

    v

    z

    u

    w

    P

    K

    Sendo w o vetor de variaveis exogeneas (sinais de referencia, dis-

    turbios e rudos), z o vetor de variaveis controladas (sinais de erro,

    variaveis manipuladas etc.), v o vetor de variaveis medidas (entradas

    do controlador) e u o vetor de variaveis de controle ou manipuladas

    (sadas do controlador).

    O objetivo de projeto e determinar o controlador K tal que o

    sistema seja estavel, apresente uma resposta transitoria adequada e

    o efeito das variaveis exogenas sobre as variaveis controladas seja

    minimizado.

    Quando v(t) = x(t) =[x1 . . . xn

    ]T, ou seja, todas as variaveis

    de estado sao medidas (ou estimadas) para serem utilizadas como

    entradas para o controlador, e K =[k1 . . . kn

    ]e um vetor de

    ganhos, tem-se o controle por realimentacao de estados.

    Se v(t) 6= x(t) o controle pode ser controle por realimentacao

    estatica de sada, para K =[k1 . . . kq

    ], ou controle por realimen-

    tacao dinamica de sada se

    K(s) = Ck(sI Ak)1Bk +Dk =

    [Ak BkCk Dk

    ]

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 24

    7.1 Forma Canonica Controlavel

    Considere um sistema linear, monovariavel, invariante no tempo,

    expresso em termos de variaveis de estado gerais:

    G(s) =Y (s)

    U(S)=

    [A B

    C D

    ]= cn +

    cn1sn1 + . . . + c1s + c

    0

    sn + an1sn1 + . . . + a1s + a0

    Se o sistema e totalmente controlavel, entao existe uma matriz

    T , x(t) = Txc(t), que transforma o sistema para forma canonica

    controlavel:

    dxc(t)

    dt=

    0 1 0 . . . 0

    0 0 1 0... ... . . . ...

    0 0 0 . . . 1

    a0 a1 a2 . . . an1

    xc(t) +

    0

    0...

    0

    1

    u(t)

    y =[c0 c

    1 . . . c

    n1

    ]xc(t) + cnu(t)

    A matriz T pode ser calculada por um dos tres modos abaixo:

    1) T = McM1cc =

    [B AB . . . An1B

    ]

    a1 . . . an1 1... 1 0

    an1 1...

    1 0 . . . 0

    2) T1 =

    q1q1A...

    q1An1

    sendo q1 = [ 0 . . . 0 1 ]M1c

    3) T =[q1 q2 . . . qn

    ]sendo qn = B, qni = Aqni+1 + aniqn,

    i = 1, . . . , n 1.

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 25

    7.2 Controle por Posicionamento de Polos Atraves de

    Realimentacao de Estados

    + -

    u(t)

    D

    +

    +

    x(t)=Ax(t)+Bu(t)

    K

    r(t) y(t)C

    x(t)o

    Se o sistema for totalmente controlavel, atraves da acao de controle

    u(t) = r(t)Kx(t)

    onde K = [k1 k2 . . . kn] e um vetor de ganhos, e possvel

    posicionar os autovalores (polos) do sistema em malha-fechada em

    qualquer posicao desejada:

    dx(t)

    dt= Ax(t) +B[r(t)Kx(t)] = (ABK)

    Af

    x(t) +Br(t)

    y(t) = Cx(t) +D[r(t)Kx(t)] = (C DK) Cf

    x(t) +Dr(t)

    Teorema: Se o par [A, B] e controlavel, entao atraves da reali-

    mentacao de estado u(t) = r(t)Kx(t) os autovalores de

    Af = ABK podem ser escolhidos de acordo com K.

    Procedimento de projeto do controlador:

    1. Q() = |I A| = n + an1n1 + . . . + a1 + a0

    2. Qf() = (1) . . . (n) = n+ an1

    n1+ . . .+ a1+ a0

    3. Kc =[a0 a0 a1 a1 . . . an1 an1

    ]

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 26

    4. q1 =[0 . . . 0 1

    ]M1c

    T1 =

    q1q1A...

    q1An1

    5. K = KcT1

    Este procedimento pode ser substitudo por uma unica equacao,

    denominada formula de Ackerman:

    K = [0 . . . 0 1]M1c Qf(A)

    MATLAB:

    >> K = place(A,B,p)

    onde p e um vetor com os polos desejados para o sistema em malha-

    fechada.

    Exemplo: Controle de velocidade de um motor CC, controlado por

    armadura, por posicionamento de polos atraves de realimentacao de

    estado. Considere o modelo linear invariante no tempo:

    d

    dt

    [ia(t)

    m(t)

    ]=

    [Ra

    LaKb

    LaKiJ

    BJ

    ] [ia(t)

    m(t)

    ]+

    [1La

    0

    ]ea(t)

    y(t) =[0 1

    ] [ ia(t)m(t)

    ]+ [0]ea(t)

    Os parametros do motor sao: Ra = 1 , La = 50mH, J = 0,1Kgm,

    B = 0,01Nms/rad e Ki = Kb = 0,5Vs/rad:

    d

    dt

    [ia(t)

    m(t)

    ]=

    [20 10

    5 0,1

    ] [ia(t)

    m(t)

    ]+

    [20

    0

    ]ea(t)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 27

    Deseja-se Qf() = s2 + 2ns +

    2n, = 0,707 e n = 10

    K =[0,3 0,486

    ].

    0 0.5 1 1.5 2 2.5 3 3.5 40

    20

    40

    60

    80

    100

    120

    tempo (s)

    m

    (t)

    r(t)

    ea(t)

    Tl(t)=4,1Nm

    e() 0

    7.3 Realimentacao de Estado com Acao Integral

    Para eliminar o erro de regime estacionario, deve-se introduzir uma

    acao integral no sistema acrescentando (fisicamente) a seguinte var-

    iavel de estado no sistema:

    dz(t)

    dt= e(t) = r(t) y(t) = r(t) Cx(t)Du(t)

    Com esta variavel adicional o sistema passa a ser:

    d

    dt

    [x(t)

    z(t)

    ]=

    [A 0

    C 0

    ] [x(t)

    z(t)

    ]+

    [B

    D

    ]u(t) +

    [0

    1

    ]r(t)

    = Ax(t) +Bu(t) +Bfr(t)

    y(t) =[C 0

    ] [ x(t)z(t)

    ]+Du(t) = Cx(t) +Du(t)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 28

    Adotando a acao de controle:

    u(t) = Kx(t) = [K ki

    ] [ x(t)z(t)

    ]= Kx(t) ki

    t0

    e( )d

    e introduzido a acao integral na lei de controle. O sistema de malha

    fechada resultante e:

    dx(t)

    dt= (ABK)

    Af

    x(t) +Bfr(t)

    y(t) = (C DK)x(t)

    Se o par (A,B) e controlavel, e possvel calcular K de modo que

    o sistema em malha-fechada seja estavel, entao

    limt

    dz(t)

    dt= 0 r(t) = y(t) para t

    Exemplo: Controle de velocidade de um motor CC com acao inte-

    gral:

    d

    dt

    iam

    z

    =

    20 10 05 0,1 0

    0 1 0

    iam

    z

    +

    200

    0

    ea +

    001

    r

    y =[0 1 0

    ] iamz

    + [0]ea + [0]r

    Deseja-se Qf() = (s+ a)(s2 + 2ns+

    2n), a = 20, = 0,707 e

    n = 10

    K =[0,7 3,286 20

    ].

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 29

    0 0.5 1 1.5 2 2.5 3 3.5 40

    20

    40

    60

    80

    100

    120

    tempo (s)

    e() = 0

    Tl(t)=4,1Nm

    ea(t)

    r(t)

    m(t)

    7.4 Forma Canonica Observavel

    Considere um sistema linear, monovariavel, invariante no tempo,

    expresso em termos de variaveis de estado gerais:

    G(s) =Y (s)

    U(S)=

    [A B

    C D

    ]= cn +

    cn1sn1 + . . . + c1s + c

    0

    sn + an1sn1 + . . . + a1s + a0

    Se o sistema e totalmente observavel, entao existe uma matriz T

    que transforma o sistema para forma canonica observavel: x(t) =

    Txo(t):

    dxo(t)

    dt=

    0 0 . . . 0 a01 0 . . . 0 a10 1 ... a2... . . . 0 ...

    0 . . . 0 1 an1

    x0(t) +

    c0c1c2...

    cn1

    u(t)

    y(t) =[0 0 . . . 0 1

    ]+ [cn]u(t)

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 30

    A matriz T pode ser calculada por um dos tres modos abaixo:

    1) T1 = M1oo Mo =

    a1 . . . an1 1... 1 0

    an1 1...

    1 0 . . . 0

    C

    CA...

    CAn1

    2) T =[q1 Aq1 . . . A

    n1q1]sendo q1 = M

    1o

    0...

    0

    1

    3) T1 =

    q1q2...

    qn

    sendo qn = C e qn1 = qn1+1A + an1qn,

    i = 1, 2, . . . , n 1

    7.5 Estimadores de Estado

    Diagrama de blocos do estimador de estado com operacao em

    malha-aberta:

    x

    Estimador

    Sistema

    o

    B+

    +

    u

    A

    Cx y

    xo

    B+

    +

    A

    x^^

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 31

    Diagrama de blocos do estimador de estado assintotico:

    x

    Estimador

    Sistema

    o

    B+

    +

    u

    A

    Cx y

    xo

    B+

    +

    A

    x^^

    L

    C

    +

    +

    -

    A equacao dinamica do estimador assintotico e

    dx(t)

    dt= (A LC)x(t) +Bu(t) + Ly(t)

    O erro de estimacao definido como e(t) , x(t) x(t) possui a

    seguinte equacao dinamica

    de(t)

    dt= (A LC)e(t)

    Teorema: Se o par (A,C) e totalmente observavel, entao pode-

    se determinar L tal que o estimador possua quaisquer autovalores

    desejados.

    Se todos os autovalores de (ALC) possuem parter real negativa,

    entao

    limt

    e(t) = 0

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 32

    Procedimento de projeto do estimador:

    1. Q() = |I A| = n + an1n1 + . . . + a1 + a0

    2. Qo() = ( 1) . . . ( n) = n + bn1

    n1 + . . .+ b1+ b0

    3. Lo =

    b0 a0b1 a1

    ...

    bn1 an1

    4. q1 = M1o

    0...1

    T =[q1 Aq1 . . . A

    n1q1]

    5. L = TLo

    MATLAB:

    >> L = place(A,C,p)

    onde p e um vetor com os polos desejados para o estimador.

    7.6 Realimentacao de Estados atraves de Observadores

    O estimador de estado calcula em tempo real x(t) a partir dos

    sinais de entrada e sada do sistema, u(t) e y(t) e o vetor de estado

    estimado x(t) e usado na realimentacao:

    + -

    u(t)

    K

    r(t)y(t)

    x(t)

    Estimador

    Planta

    ^

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 33

    Considerando a acao de controle u(t) = r(t)Kx(t), as equacoes

    do sistema em malha-fechada com realimentacao de estado baseada

    em estimador de estado sao:

    d

    dt

    [x(t)

    dx(t)

    ]=

    [A BK

    LC ABK LC

    ] [x(t)

    x(t)

    ]+

    [B

    B

    ]r(t)

    y(t) =[C DK

    ] [ x(t)x(t)

    ]+Dr(t)

    7.7 Regulador Linear Quadratico - LQR

    O controlador linear quadratico, baseado na lei de realimentacao de

    estado u(t) = Kx(t), e aquele que minimiza o funcional quadratico:

    J(u) =

    0

    [xT (t)Qx(t) + uT (t)Ru(t) + 2xT (t)Nu(t)

    ]dt

    sujeito a` dinamica do sistema:

    dx(t)

    dt= Ax(t) +Bu(t)

    O ganho do controlador que minimiza o funcional e dado por

    K = R1(BTS +NT )

    sendo S = ST 0 a solucao da equacao de Ricatti:

    ATS + SA (SB +N)R1(BTS +NT ) +Q = 0

    O problema possui solucao se

    par (A,B) e controlavel,

    R 0,

    QNR1NT 0.

  • Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 34

    MATLAB:

    >> K = lqr(A,B,Q,R,N)

    onde se N for omitido, a matriz e considerada nula por padrao.

    Exemplo: Controle de velocidade de um motor CC com acao inte-

    gral:

    Q =

    1 0 00 1 00 0 1000

    , R = 1 K = [ 1,09 4,73 31,62 ]

    0 0.5 1 1.5 2 2.5 3 3.5 40

    20

    40

    60

    80

    100

    120

    tempo (s)

    e() = 0

    Tl(t)=4,1Nm

    ea(t)

    r(t)

    m

    (t)