Intro Sis Ctrl Discreto
-
Upload
flavia-vieira -
Category
Documents
-
view
17.528 -
download
1
description
Transcript of Intro Sis Ctrl Discreto
Universidade Federal de Minas Gerais – UFMG Escola de Engenharia
Departamento de Mecânica - DEMEC
EMA166 – Sistema de Controle em Tempo Discreto
Notas de Aula
Introdução ao Controle de Sistemas em Tempo Discreto
Autor: Prof. Dr. Lázaro Valentim Donadon
Fevereiro de 2008
ii
Prefácio
Ementa: Amostragem de Sinais contínuos; Transformada Z; Modelos Discretos; Espaço de Estados discreto; Análise de Sistemas Discretos; Controladores PID digital; Métodos de projeto de controladores em tempo discreto. Programa:
Semana: Data: Assunto: 1 27/02 Introdução ao controle de sistemas em tempo discreto 2 05/03 Transformada Z 3 12/03 Função de Transferência em Tempo Discreto – Parte I 4 19/03 Função de Transferência em Tempo Discreto – Parte II 5 26/03 Aula de Exercícios 6 02/04 1ª Prova 7 09/04 Projeto de Controladores por Métodos Clássicos 8 16/04 Exercícios 9 23/04 Formulação por Matrizes de Estado
10 07/05 Controlabilidade e Observabilidade 11 14/05 Projeto de controladores via Alocação de Pólos – Parte I 12 21/05 Projeto de controladores via Alocação de Pólos – Parte II 13 28/05 Projeto de controladores via Alocação de Pólos – Parte III 14 04/06 Exercícios – Matlab 15 11/06 Exercícios - Matlab 16 18/06 2ª Prova 17 25/06 Apresentação dos projetos
Critérios de Avaliação: 1ª Prova 35%, 2ª Prova 35%, projeto 20%, listas de exercício 10% Bibliografia: K. Ogata. Discrete-Time Control Systems. Prentice Hall, 2nd Edition. 1994. G.F. Franklin, J.D. Powell, and M.L. Workman. Digital Control of Dynamic Systems. Addison-Wesley, 3rd Edition. 1998.
iii
Sumário
1 INTRODUÇÃO AO CONTROLE DE SISTEMAS EM TEMPO DISCRETO1 1.1 INTRODUÇÃO .............................................................................................................................1 1.2 SISTEMAS DE CONTROLE EM TEMPO DISCRETO...........................................................................1 1.3 TIPOS DE SINAIS .........................................................................................................................5 1.4 AMOSTRAGEM DE SINAIS CONTÍNUOS ........................................................................................6
1.4.1 Teoria da Amostragem – Tratamento empírico....................................................................6 1.4.2 Não unicidade de sinais amostrados ....................................................................................8
1.5 EXERCÍCIOS PROPOSTOS ............................................................................................................8 2 TRANSFORMADA Z .......................................................................................... 10
2.1 MÉTODO DA TRANSFORMADA Z ..............................................................................................10 2.1.1 Transformada Z ..................................................................................................................10 2.1.2 Transformada Z de funções elementares ............................................................................10 2.1.3 Propriedades da Transformada Z ......................................................................................12
2.2 TRANSFORMADA Z INVERSA ....................................................................................................14 2.2.1 Método de expansão em frações parciais...........................................................................15 2.2.2 Método computacional - Matlab ........................................................................................17
2.3 EXERCÍCIOS RESOLVIDOS ........................................................................................................18 2.4 EXERCÍCIOS PROPOSTOS ..........................................................................................................19
3 FUNÇÃO DE TRANSFERÊNCIA EM TEMPO DISCRETO ........................ 21 3.1 AMOSTRAGEM IMPULSIVA .......................................................................................................21 3.2 CIRCUITO DATA-HOLD ............................................................................................................22
3.2.1 Segurador de Ordem Zero - ZOH.......................................................................................22 3.2.2 Segurador de primeira ordem ............................................................................................23 3.2.3 Funções de Transferência em Tempo Discreto com ZOH..................................................25 3.2.4 Resposta em Freqüência do ZOH.......................................................................................26
3.3 FUNÇÃO DE TRANSFERÊNCIA PULSADA ...................................................................................27 3.3.1 Transformada de Z de FTs incluindo o amostrador...........................................................28 3.3.2 Função de Transferência em Cascata ................................................................................28 3.3.3 Função de transferência em malha fechada.......................................................................29 3.3.4 Função de transferência em malha fechada de controladores digitais ..............................30 3.3.5 Função de transferência pulsada de um controlador PID digital......................................31 3.3.6 Simulação de sistemas em tempo discreto ..........................................................................34 3.3.7 Realização de Controladores digitais e filtros digitais ......................................................36 3.3.8 Resposta ao Impulso Finita e Infinita.................................................................................38
3.4 EXERCÍCIOS RESOLVIDOS ........................................................................................................39 3.5 EXERCÍCIOS PROPOSTOS ..........................................................................................................41
4 PROJETO DE CONTROLADORES POR MÉTODOS CLÁSSICOS .......... 43 4.1 MAPEAMENTO ENTRE PLANO Z E PLANO S...............................................................................43 4.2 ANÁLISE DE ESTABILIDADE DE SISTEMAS NO PLANO Z............................................................47 4.3 RESPOSTA TRANSIENTE ...........................................................................................................48 4.4 MÉTODO DE PROJETO BASEADO NO LUGAR DAS RAÍZES...........................................................49 4.5 CONTROLADOR TIPO “DEAD BEAT”.........................................................................................56 4.6 PROJETO DE CONTROLADORES PID .........................................................................................57
4.6.1 Ziegler-Nichols malha fechada...........................................................................................57 4.6.2 Ziegler-Nichols Malha Aberta............................................................................................58
4.7 EXERCÍCIOS RESOLVIDOS ........................................................................................................59 4.8 EXERCÍCIOS PROPOSTOS ..........................................................................................................59
5 FORMULAÇÃO POR MATRIZES DE ESTADO........................................... 61
iv
5.1 INTRODUÇÃO À FORMULAÇÃO DE ESTADO ...............................................................................61 5.2 NOMENCLATURA DE ESPAÇO DE ESTADOS ..............................................................................62 5.3 REPRESENTAÇÃO DE ESPAÇO DE ESTADOS DISCRETOS ............................................................62
5.3.1 Forma Canônica Controlável.............................................................................................62 5.3.2 Forma Canônica Observável..............................................................................................63 5.3.3 Forma Canônica Diagonal.................................................................................................63 5.3.4 Forma Canônica de Jordan................................................................................................64 5.3.5 Não unicidade das matrizes de estado................................................................................64
5.4 SIMULANDO UM SISTEMA NA FORMA DE ESTADO DISCRETO.....................................................65 5.5 PASSANDO DE MATRIZES DE ESTADO PARA FT........................................................................65 5.6 DISCRETIZAÇÃO DE MATRIZES DE ESTADO CONTÍNUAS ..........................................................66 5.7 EXERCÍCIOS RESOLVIDOS ........................................................................................................69 5.8 EXERCÍCIOS PROPOSTOS ..........................................................................................................72
6 CONTROLABILIDADE E OBSERVABILIDADE ......................................... 73 6.1 INTRODUÇÃO ...........................................................................................................................73 6.2 CONTROLABILIDADE................................................................................................................73 6.3 CONTROLABILIDADE DE SAÍDA ................................................................................................75 6.4 OBSERVABILIDADE ..................................................................................................................76 6.5 COMENTÁRIOS GERAIS SOBRE CONTROLABILIDADE E OBSERVABILIDADE................................78
6.5.1 Condições de controlabilidade e observabilidade em termos de Funções de Transferência 78 6.5.2 Efeito da discretização .......................................................................................................80 6.5.3 Princípio da dualidade .......................................................................................................80
6.6 EXERCÍCIOS RESOLVIDOS ........................................................................................................81 6.7 EXERCÍCIOS PROPOSTOS ..........................................................................................................82
7 PROJETO DE CONTROLADORES VIA ALOCAÇÃO DE PÓLOS ........... 84 7.1 INTRODUÇÃO ...........................................................................................................................84 7.2 FÓRMULA DE ACKERMANN......................................................................................................85 7.3 FORMAS ALTERNATIVAS PARA O GANHO K ..............................................................................86 7.4 CONTROLE POR REALIMENTAÇÃO DE ESTADO.........................................................................88 7.5 OBSERVADORES DE ESTADO ....................................................................................................90
7.5.1 Observadores de Estado de Ordem Completa....................................................................91 7.5.2 Comentários sobre estimador de estado.............................................................................94 7.5.3 Estimadores de Ordem Reduzida........................................................................................97
7.6 EXERCÍCIOS RESOLVIDOS ......................................................................................................103 7.7 EXERCÍCIOS PROPOSTOS ........................................................................................................107
8 PROJETOS ......................................................................................................... 109 8.1 PÊNDULO INVERTIDO .............................................................................................................110 8.2 SUSPENSÃO ATIVA PARA ¼ DE VEÍCULO ................................................................................111 8.3 CONTROLE NÃO COLOCADO ...................................................................................................112 8.4 PROJETO DE FILTROS DIGIAIS ................................................................................................113
9 REFERÊNCIAS BIBLIOGRÁFICAS ............................................................. 114
1
Capítulo 1
1 Introdução ao Controle de Sistemas em Tempo Discreto
Neste item, será apresentado os equipamentos utilizados em sistemas de controle.
1.1 Introdução Aqui, serão tratados sistemas lineares e invariantes no tempo em que o controle de sistemas em tempo discreto é entendido como a implementação de sistemas de controle utilizando placas de aquisição de dados capazes de medir uma determinada quantidade de sinais analógicos, processá-los e devolvê-los ao meio ambiente.
1.2 Sistemas de controle em tempo discreto Um sistema de controle em tempo contínuo em realimentação pode ser apresentado como na Figura 1.1, neste caso, todos os sinais envolvidos são sinais contínuos e o sistema de controle e a planta podem ser escrito no domínio de Laplace.
Figura 1.1: Exemplo de um sistema de controle em tempo contínuo
Já os sistemas de controle em tempo discreto envolvem a discretização de uma ou mais variáveis do processo de controle. Normalmente, a implementação de um sistema de controle em tempo discreto envolve a utilização de um computador em conjunto com uma placa de aquisição de dados para a implementação do controlador. Sendo assim, está implícito no método que ocorra pelo menos uma passagem do tempo contínuo para o tempo discreto, denominada discretização ou amostragem do sinal, e uma passagem do tempo discreto para o tempo contínuo, chamada de reconstrução. A implementação em tempo real de controle para um sistema de controle em tempo discreto em realimentação onde o controlador é implementado em tempo discreto pode ser observado na Figura 1.2.
2
Figura 1.2: Exemplo de um sistema de controle em tempo discreto
Ambiente Físico é o ambiente no qual será implementado o sistema de controle, é o ambiente real onde o processo físico ocorre. Ambiente Computacional é o ambiente onde o sistema de controle é implementado, isto é, onde ocorre o processo de síntese do controlador e é calculada a lei de controle. Este ambiente representa o hardware e software onde o sistema de controle é implementado, como por exemplo no Matlab/Simulink. Variável Física é a quantidade física que se deseja medir para ser usada no sistema de controle, por exemplo, deslocamento, velocidade, aceleração, temperatura, pressão, etc. Transdutor é o dispositivo capaz de transformar uma quantidade de entrada em outra quantidade de saída, normalmente voltagem, isto é, é o dispositivo que tem a capacidade de medir a variável física e transformá-la em voltagem para ser utilizado como informação pelo sistema de controle, em outras palavras, é simplesmente o sensor, como acelerômetros, vibrômetros laser, células de carga, sensores de posição, tacômetros, microfones, etc. Condicionador de sinais é o dispositivo que alimenta o transdutor, pois normalmente o transdutor precisa de uma fonte de alimentação específica para ele. De maneira geral, os transdutores geram uma quantidade de voltagem insuficiente para serem utilizados em sistemas de medida e controle, necessitando assim de um sistema de amplificação. Os condicionadores de sinais podem incluir um amplificador operacional como fonte de alimentação básica, um sistema de amplificação e filtros analógicos, integradores, etc. Filtros Analógicos são dispositivos que modificam o sinal de entrada, isto é, eles eliminam determinadas faixas de freqüência do sinal de entrada. São classificados como filtros passa-baixo, onde apenas freqüências abaixo de um determinado valor estão presentes no sinal de saída, filtros passa-alto onde apenas freqüências acima de um determinado valor estão presentes no sinal de saída, passa-banda onde apenas uma determinada faixa de freqüências está no sinal de saída e rejeita-banda onde uma banda de freqüências é retirada do sinal de saída. Alguns filtros podem incluir um sistema de amplificação, mas em geral não substituem o sistema de condicionamento de sinal.
3
Figura 1.3: Exemplo de curva em freqüência de um filtros ideais. Passa-baixo. Passa-
alta, Rejeita-banda ou Notch e Passa-banda Multiplexador Analógico normalmente é parte integrante da placa de aquisição de sinais e é o dispositivo que conecta os canais de entrada da placa de aquisição de dados ao circuito “Sample and hold”. Normalmente uma placa de aquisição de sinais contém vários canais de entrada e apenas um multiplexador analógico. Circuito Sample-and-Hold é dispositivo que faz a amostragem, sample, e mantém o sinal amostrado por um determinado período de tempo, hold. Este dispositivo é aquele que o usuário tem a escolha do tempo de discretização. Conversor Analógico Digital é o dispositivo que realmente realiza o processo de amostragem e quantificação do sinal analógico, isto é, a saída do conversor A/D é um sinal binário, normalmente o multiplexador analógico e circuito sample-and-hold são partes integrantes do conversor A/D.
Figura 1.4: Componentes básicos de um sistema de medida
Demultiplexador é dispositivo que conecta a saída de dados da placa de aquisição de sinais com os respectivos canais de saída. Esta conexão é sincronizada com o respectivo tempo de amostragem. Conversor Digital Analógico é o dispositivo que transforma uma entrada digital, neste caso um número binário, em uma saída analógica. Hold é um dispositivo que mantém o sinal de saída do conversor D/A seguindo uma determinada função, isto é, o hold mais comum é o Zero-Order Hold (ZOH), segurador de ordem zero, ele mantém o sinal constante como apresentado abaixo. Este dispositivo é parte integrante do conversor D/A, Figura 1.5.
4
Figura 1.5: sinal contínuo e sinal contínuo com segurador de ordem zero
Filtro de reconstrução é um filtro analógico adicionado na saída do conversor D/A com o intuito de eliminar as “escadas” feitas pelo hold. Este filtro pode ser eliminado do processo se necessário. Sistema de condicionamento do atuador é um dispositivo parecido com o condicionador apresentado anteriormente e serve para alimentar, filtrar e amplificar o atuador. Atuador é o dispositivo responsável por implementar a lei de controle no sistema físico, isto é, é o dispositivo que implementa fisicamente a lei de controle.
Figura 1.6: Componentes básicos de um sistema de atuação
Exemplo 1.1: Controle de temperatura de uma autoclave
Figura 1.7: Sistema de monitoramento de temperatura em uma autoclave
Exemplo 1.2: Montagem experimental de um sistema de controle
5
Figura 1.8: Sistema de controle detalhado
1.3 Tipos de sinais Sinais em analógico em tempo contínuos são sinais contínuos definidos em qualquer instante de tempo cuja amplitude varia continuamente neste intervalo. Figura 1.9(a). Sinal em tempo contínuo quantizado é um sinal cuja amplitude só pode assumir valores pré-determinados. Figura 1.9(b). Sinais discretizados são sinais que só podem assumir valores em determinados instantes de tempo. Figura 1.9(c). Sinais discretizados e quantizados são sinais discretizados que só podem assumir determinados valores de amplitude. Figura 1.9(d).
(a) Sinal contínuo (b) Sinal contínuo quantizado
(c) Sinal discretizado (d) Sinal discretizado quantizado
Figura 1.9: Tipos de sinais
6
A Figura 1.9(a) representa um sinal analógico qualquer, enquanto que a Figura 1.9(d) representa um sinal visto por um sistema de aquisição de dados, isso significa que existirão erros entre a passagem de um sinal contínuo para um sinal discreto. Aqui o termo sinal contínuo ser referirá sempre ao sinal da Figura 1.9(a) enquanto que um sinal discreto ou em tempo discreto a um sinal igual ao da Figura 1.9(d). Controle de sistemas em tempo discreto envolverá uma ou mais variáveis que só podem ser acessadas ou lidas em determinados instantes de tempo através de um processo de amostragem.
1.4 Amostragem de sinais contínuos Este item será explicado como a amostragem de um sinal contínuo deve ser feito sem que haja perda de informação ou se cometa erros durante este processo. O Processo de Amostragem de sinais contínuos substitui o sinal em tempo contínuo por uma seqüência de valores em tempo discreto. Este processo normalmente é seguido por um processo de quantização do sinal discreto.
1.4.1 Teoria da Amostragem – Tratamento empírico A amostragem ou discretização de um sinal analógico é feita seguindo um determinado tempo de amostragem T, em segundos, ou freqüência de amostragem fa, dada em Hz. Sendo que,
fa1T =
Então, a amostragem é dada pela seguinte relação,
( ) ( )∑+∞
−∞=
−δ=k
kTt)t(xkTx k=0, 1, 2 ...
onde o delta de dirac extrai o valor da função no instante em que t = kT.
(a) sinal contínuo (b) Sinal amostrado
Figura 1.10: Sinal contínuo e sinal amostrado
7
Para que um sinal contínuo possa ser corretamente discretizado, ele deve obedecer as regras imposta por Fourier, isto é, a maior freqüência contida no sinal a ser amostrado deverá obrigatoriamente ser menor que metade da freqüência de amostragem fa que é conhecida como freqüência de Nyquist fN. De modo geral, para uma boa aplicação de sistemas de controle, deve ser considerado pelo menos de 4 a 6 pontos por período da maior freqüência a ser amostrada para que o sistema de controle possa funcionar adequadamente. Exemplo 1.3: Supor um sinal analógico com apenas uma freqüência igual a 400 Hz. Se a amostragem for feita com uma freqüência de amostragem fa = 1600 Hz. Pede-se:
a) Qual o tempo de amostragem? Solução: O tempo de amostragem T é dados por,
ms625.01600
1fa1T ===
b) Quantos pontos por período? Solução: Como o sinal contínuo tem f = 400 Hz e a amostragem foi feita em 1600 Hz, então o número de pontos por período é dado por,
Número de pontos por período n = 1600/400 = 4. c) Gráfico do sinal correto vs sinal amostrado
Figura 1.11: Sinal correto e sinal amostrado
Exemplo 1.4: Supondo um sistema massa-mola com m=0.5 kg e k = 100.000 N/m que será simulado em tempo discreto por uma senóide com freqüências de 65 e 85 Hz. Qual deverá ser o tempo de amostragem mínimo supondo 6 pontos por período? Solução: Para 6 pontos por período,
F = 65 Hz, então, ms57.2651
61T ==
F = 85 Hz, então, ms96.1851
61T ==
8
s/rad21.447mk
n ==ω significando que Hz18.712
21.447fn =π
= , então
ms35.218.71
161T ==
Desta forma, terá de ser amostrado com o menor T, então, 1.96 ms.
1.4.2 Não unicidade de sinais amostrados Supondo a Figura 1.12, observe que se a senoide de 400 Hz for amostrada com T = 2 ms isso representa uma freqüência de amostragem fa = 500 Hz e uma freqüência de Nyquist fN = 250 Hz. O sinal original de 400 Hz se rebate em Nyquist, representando uma freqüência aparente de 100 Hz.
Figura 1.12: Sinal contínuo e sinal amostrado incorretamente
Desta forma, não se pode amostrar um sinal cuja freqüência seja maior que a freqüência de Nyquist, para evitar este problema, os sinais devem ser filtrados por um filtro passa baixo para eliminar todas as freqüências do sinal acima de Nyquist. Além disso, significa que uma vez o sinal tenha sido amostrado, não é mais possível recupera-lo completamente devido ao problema de amostragem. Por isso, a discretização do sinal deve ser feita com muito cuidado para obter o resultado final desejado. Em geral, o tempo de discretização será limitado pela capacidade da placa de aquisição de sinais, isto é, as placas possuem uma capacidade limitada em velocidade de processamento, isso na prática irá limitar a velocidade de aquisição.
1.5 Exercícios Propostos
9
Exercício 1.1: (Prova de 2007) Calcular o tempo de amostragem m´nimo para simular o sistema de 2ª ordem dado abaixo para uma entrada senoidal com freqüência ω = 50 radl/s, supondo 6 pontos por período.
10000s20s100)s(G 2 ++
=
10
Capítulo 2
2 Transformada Z Neste capítulo, será abordada a transformada e a transformada inversa de Z.
2.1 Método da Transformada Z O método da Transformada Z, transforma equações diferenciais temporais em equações algébricas no domínio discreto. Aqui, serão tratados sinais e sistemas lineares e com parâmetros invariantes no tempo, e será assumido que o tempo de amostragem T será escolhido tal que será possível a reconstrução do sinal temporal original, significando que não será levado em conta erros de processamento de sinais. Para iniciar, deve-se considerar que a discretização de um sinal temporal contínuo é dada por,
( ) ( )∑+∞
−∞=
−δ=k
kTt)t(xkTx k=0, 1, 2 ...
2.1.1 Transformada Z A transformada Z de uma função temporal contínua x(t), onde t representa apenas o eixo positivo de tempo, para um tempo de amostragem T será definida por,
( ) ( )[ ] ( )[ ] ( )∑∞
=
−===0k
kzkTxkTxZtxZzX
2.1.2 Transformada Z de funções elementares
Função Degrau Unitário definido como ( )⎩⎨⎧
<≤
=0t0t01
tx
Solução: Aplicando a definição,
( ) ( )[ ] [ ] L++++==== −−−∞
=
−∑ 321
0k
k zzz1z1ZtxZzX
Fazendo,
1GzzzzzGzzz1G 4321321 −=+++=⇒++++= −−−−−−− LL
Portanto,
1z11
1zzGz)1z(GzzGG1G
zG
−−=
−=⇒=−⇒−=⇒−=
Então,
11
( ) ( )[ ] [ ]1z
zz1
1zzz1z1ZtxZzX 1321
0k
k
−=
−=++++==== −
−−−∞
=
−∑ L
Note que esta série convergirá se |z| >1.
Função Rampa Unitária definida por: ( )⎩⎨⎧
<≤
=0t0t0t
tx
Solução: Aplicando a definição,
( ) [ ] [ ] ( )L+++==== −−−∞
=
−∑ 321
0k
k z3z2zTkTzkTZtZzX
Fazendo,
L
LL
L
++++=−
−−−−+++=−
+++=
−−−−
−−−−−−−
−−−
4321
4323211
321
zzzzGz
1zz3z2zz3z2zG)z1(
z3z2zG
Comparando com o exemplo do degrau unitário, então,
( ) ( )212 z11
1zzGG
z1z1
1zz
−−=
−=⇒
−=−
−
Portanto,
( ) [ ] [ ] ( )( ) ( )221
1321
0k
k
1zTz
z1Tzz3z2z1TkTzkTZtZzX
−=
−=+++====
−
−−−−
∞
=
−∑ L
Função Polinomial na forma ( )⎩⎨⎧
<≤
=0t0t0a
txk
com a constante.
Solução: Aplicando a definição,
( ) [ ]az
zaz11zazaaz1zaaZzX 1
33221
0k
kkk
−=
−=++++=== −
−−−∞
=
−∑ L
Utilizando o mesmo princípio do exemplo anterior, L++++= −−− 33221 zazaaz1G
Portanto, 1zazaazzazaaz1G)az1( 33221332211 =−−−−++++=− −−−−−−− LL
Então,
azz
az11G1G)az1( 1
1
−=
−=⇒=− −
−
Finalmente,
( ) [ ]az
zaz11zazaaz1zaaZzX 1
33221
0k
kkk
−=
−=++++=== −
−−−∞
=
−∑ L
Função Exponencial na forma: ( )⎩⎨⎧
<≤
=−
0t0t0e
txat
Solução: Aplicando a definição,
( ) [ ] [ ] L++++==== −−−−−−∞
=
−−− ∑ 3aT32aT21aT
0k
kakTakTat zezeze1zeeZeZzX
12
Comparando com a solução do exemplo anterior, é fácil notar que a = e-aT, então,
( ) [ ] [ ] aT1aT0k
kakTakTat
ezz
ze11zeeZeZzX −−−
∞
=
−
−=
−==== ∑
Função Senoidal definida como: ( )⎩⎨⎧
<≤ω
=0t0t0tsin
tx
Solução: Sabendo-se que,
( )tjtj eej2
1tsin ω−ω −=ω
Aplicando a definição,
( ) [ ] ( ) [ ] [ ]( )tjtjtjtj eZeZj2
1eej2
1ZtsinZzX ω−ωω−ω −=⎥⎦
⎤⎢⎣
⎡−=ω=
Observe que aqui se aplicou duas propriedades da transformada Z, que foi a multiplicação por uma constante e a propriedade da soma. Então, pela transformada Z da exponencial,
( )[ ] [ ] ( )
( )( ) 1Tcosz2z
TsinzzTcosz21
Tsinzzzee1
zeej2
1
ze11
ze11
j21ee
j21ZtsinZtxZ
221
1
21TjTj
1TjTj
1Tj1Tjtjtj
+ω−ω
=+ω−
ω=
++−−
=
⎟⎠⎞
⎜⎝⎛
−−
−=⎥
⎦
⎤⎢⎣
⎡−=ω=
−−
−
−−ω−ω
−ω−ω
−ω−−ωω−ω
2.1.3 Propriedades da Transformada Z Multiplicação por uma constante: [ ] [ ] )z(aX)t(xaZ)t(axZ == Linearidade: )kT(g)kT(f)kT(x β+α= então )z(G)z(F)z(X β+α= Multiplicação por ak: [ ] )za(X)kT(xaZ 1k −= Prova:
[ ] ( ) )za(Xza)kT(xz)kT(xa)kT(xaZ 1
0k
k1
0k
kkk −∞
=
−−∞
=
− === ∑∑
Translação no tempo ou translação real,
[ ] )z(Xz)nTt(xZ n−=− Prova:
[ ]
( )∑
∑∞
=
−−−
∞
=
−
−=
−=−
0k
nkn
0k
k
z)nTkT(xz
z)nTkT(x)nTt(xZ
Definindo m = k-n, então,
[ ] ∑∞
−=
−−=−nm
mn z)mT(xz)nTt(xZ
Como x(mT) para m<0 por definição é igual a zero,
13
[ ] )z(Xzz)mT(xz)nTt(xZ n
0m
mn −∞
=
−− ==− ∑
Além disso,
[ ] ⎥⎦
⎤⎢⎣
⎡−=+ ∑
−
=
−1n
0k
kn z)kT(x)z(Xz)nTt(xZ
Prova
[ ]
( )
⎥⎦
⎤⎢⎣
⎡−=
−=
−==
+=
+=+
∑
∑
∑∑∑
∑
∑
−
=
−
−
=
−
−
=
−∞
=
−∞
=
−
∞
=
+−
∞
=
−
1n
0k
kn
1n
0m
mnn
1n
0m
mn
0m
mn
nm
mn
0k
nkn
0k
k
z)kT(x)z(Xz
z)mT(xz)z(Xz
z)mT(xzz)mT(xzz)mT(xz
z)nTkT(xz
z)nTkT(x)nTt(xZ
Exemplo 2.1: Achar a transformada Z do degrau unitário quando o degrau é aplicado 4 períodos de amostragem, isto é, para k = 4. Solução: como a transformada Z do degrau unitário começando em k = 0 é dada por,
( ) ( )[ ] [ ]1z
z1ZtxZzX−
===
O problema pede, ( ) ( )[ ]T4txZzX −=
Utilizando o teorema da translação no tempo,
[ ]1z
z)z(Xzz)mT(xz)T4t(xZ4
4
0m
m4
−===−
−−
∞
=
−− ∑
Neste caso, deve ser notado que z-4 significa um atraso de tempo de 4 sem considerar qual foi o atraso de tempo utilizado. Translação complexa,
[ ] ( ) ( )aT
0k
kaT
0k
kakTat zeXze)kT(xze)kT(x)t(xeZ === ∑∑∞
=
−∞
=
−−−
Exemplo 2.2: Encontrar a transformada Z de atte− Solução: como a transformada de t, rampa unitária é dada por,
( ) [ ]( ) ( )
)z(X1z
Tzz1
TztZzX 221
1
=−
=−
==−
−
Então, pelo teorema da translação complexa,
( ) [ ] ( )( )( ) ( )2aT
aT
21aT
1aTat
1zeTze
ze1
zeTteZzX−
=−
==−
−−
14
Teorema do valor inicial: Se x(t) possui uma transformada X(z) e se )z(Xlimz ∞→
existe, então o valor inicial x(0) é dado por, )z(Xlim)0(x
z ∞→=
Prova: Como a transformada z de uma seqüência de números é dada por,
( ) [ ] L++++=== −−−∞
=
−∑ 321
0k
k z)T3(xz)T2(xz)T(x)0(xz)kT(x)kT(xZzX
Fazendo z tender ao infinito, sobra apenas x(0). Teorema do valor final: Supondo que x(kT) onde x(0) = 0 para todo k<0, tenha a transformada X(z) e todos os pólos de X(z) estejam dentro do circulo de raio unitário com exceção de um pólo simples em z = 1, isto é a condição de estabilidade que será apresentada mais à frente. Então, o valor final de x(kT) pode ser expresso por,
( )[ ])z(Xz1lim)kT(xlim 1
1zk
−
→∞→−=
Prova: Sabendo-se que pela definição da transformada Z,
( )[ ] ( ) ( )∑∞
=
−==0k
kzkTxzXkTxZ
Então,
( )[ ] ( ) ( )∑∞
=
−− −==−0k
k1 zTkTxzXzTkTxZ
Subtraindo um do outro,
( ) ( ) )z(Xz)z(XzTkTxzkTx 1
0k
k
0k
k −∞
=
−∞
=
− −=−−∑∑
Aplicando o limite quando z tende à unidade,
( ) ( ) ( )[ ])z(Xz1limzTkTxzkTxlim 1
1z0k
k
0k
k
1z
−
→
∞
=
−∞
=
−
→−=⎥
⎦
⎤⎢⎣
⎡−−∑∑
Como foi assumido que x(k) = 0 para k < 0 então, o lado esquerdo da equação acima torna-se,
( ) ( ) ( )( ) ( )[ ]
( )[ ]∑
∑∑∑∞
=
∞
=
−−∞
=
−∞
=
−
→
−−=
−−=⎥⎦
⎤⎢⎣
⎡−−
0k
0k
kk
0k
k
0k
k
1z
)TkT(xkTx
1)TkT(x1kTxzTkTxzkTxlim
Expandindo o somatório,
( )[ ] [ ] [ ] [ ]
)k(xlim)(x
)1(x)2(x)0(x)1(x)1(x)0(x)TkT(xkTx
k
0k
∞→
∞
=
=∞=
=+−+−+−−=−−∑ L
Então, ( )[ ])z(Xz1lim)k(xlim 1
1zk
−
→∞→−=
2.2 Transformada Z inversa Como apresentado anteriormente, quando sinais contínuos são amostrados, a sua reconstrução não é única, isto é, parte do sinal pode ter sido perdida devido ao teorema
15
da amostragem. Por exemplo, o sinal apresentado na Figura 2.1, como o sinal amostrado gera apenas os pontos discretos, qual o sinal real?
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Figura 2.1: Sinal amostrado e suas possíveis reconstruções
Assim, a transformada Z de x(kT) ou x(t) gera um único X(z), desde que especificado o tempo de amostragem T. Por sua vez, a transformada inversa de X(z) gera um único x(kT), mas resta saber se este x(kT) representa a resposta esperada para x(t), assim pode-se dizer que a transformada inversa de X(z) pode não gerar um único x(t).
2.2.1 Método de expansão em frações parciais Alguns métodos podem ser utilizados para encontrar a transformada z inversa, nesta parte será abordado o método de expansão em frações parciais que consiste em expandir X(z) em frações na forma mais simples possível e utilizar a tabela de transformada Z para encontrar a sua representação em tempo contínuo.
Exemplo 2.3: Encontrar a transformada z inversa de 1
1
az1z)z(X −
−
−=
Solução: Nas tabelas de transformada Z não se encontra a função acima, porém, fazendo,
11
az11)z(Yz)z(X −
−
−==
Utilizando a tabela de transformada z, tem-se que,
[ ] k1
11 aaz11Z)z(YZ =⎥⎦
⎤⎢⎣⎡−
= −−−
Porém, o desejado é, [ ] [ ] T)1k(111 a)TkT(y)z(YzZ)z(XZ −−−− =−==
Assim,
⎩⎨⎧
≤==−
=−
0k0,3,2,1ka)TkT(y
)kT(yT)1k( L
16
Para encontrar a transformada z inversa de X(z), deve-se notar que X(z) é dada da seguinte forma,
n1n1n
1n
m1m1m
1m
0
azazazbzbzbzb
)z(X++++++++
=−
−−
−
L
L com m ≤ n
Ou ainda,
nn
11
nm
)1mn(1
)mn(0
zaza1zbzbzb
)z(X −−
−+−−−−
++++++
=L
L
Colocando na forma de pólos e zeros, ( )( ) ( )( )( ) ( )n21
m210
pzpzpzzzzzzzb
)z(X−−−−−−
=L
L
Supondo que todos os pólos são pólos não repetidos e tenha pelo menos 1 zero na origem, bm = 0, então, a melhor expansão será na forma,
n
n
2
2
1
1
pza
pza
pza
z)z(X
−++
−+
−= L
Se houver pólos repetidos, supondo um pólo duplo e nenhum outro pólo, a expansão poderá ser na forma,
( ) 1
22
1
1
pzc
pzc
z)z(X
−+
−=
Exemplo 2.4: Supondo que a transformada z seja na forma
1z2z2z2zz)z(X 23
2
−+−++
=
As raízes do denominador, que são os pólos, são dadas por, 1, ( )3j121
± ,
portanto, um pólo real e um par de pólos complexos conjugados, sendo assim, fazendo,
( )( )( ) ( ) ( )
( )( )1zz1zaazaaazaa
1zzaza
1za
1zz1z2zz)z(X
231321
221
2321
2
2
+−−−++−−++
=
=+−
++
−=
+−−++
=
Portanto, montando o sistema matricial para a solução,
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧−=
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−−=
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧⇒
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧=
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−−
−
23
4
211
101111011
aaa
211
aaa
101111011 1
3
2
1
3
2
1
Então,
( )( )
21
2
21
1
1
1
2222
2
zz1z2
zz1z3
z1z4
1zz2
1zzz3
1z4
1zz2z3
1z4
1zz1z2zz)z(X
−−
−
−−
−
−
−
+−+
+−−
−=
+−+
+−−
+−
=+−+−
+−
=+−−
++=
Para o primeiro termo,
( ) ( )⎩⎨⎧
≤=
==⇒=⇒−
== −−
−
0k0,3,2,1k4
14)kT(x14)kT(yz1
4)z(Y)z(Xz 1k1
1 L
Para o segundo termo, deve-se notar que,
17
[ ] 21
1
zTcosz21TsinztsinZ −−
−
+ω−ω
=ω
Aplicando o teorema da translação complexa,
[ ] 2aT21aT
1aTakT
zeTcosze21TsinzekTsineZ −−−−
−−−
+ω−ω
=ω
Então, comparando o segundo membro de X(z) com a equação acima, nota-se que se 1e aT2 =− , significando que 1e aT =− e 21Tcos =ω , significando que 3T π=ω e consequentemente, 23Tsin =ω . Então,
( ) 21
1
2aT21aT
1aTk
zz1z
23
zeTcosze21Tsinzek
3sin1Z −−
−
−−−−
−−
+−=
+ω−ω
=⎥⎦⎤
⎢⎣⎡ π
Significando que,
( ) ( )⎪⎩
⎪⎨⎧
≤
=π
=⇒+−
=⎥⎦⎤
⎢⎣⎡ π
= −−
−
0k0
,3,2,1kk3
sin132)kT(xzz1
z3k3
sin132Z)z(Xk
21
1k L
Para a terceira parte, utilizando a resposta anterior,
( )
( ) ( )⎪⎩
⎪⎨⎧
≤
=−π
=
⇒+−
=⎥⎦
⎤⎢⎣
⎡ π== −−
−−
0k0
,3,2,1k1k3
sin13
34)kT(x
zz1z4k
3sin1
334Z)z(Y)z(Xz
k
21
1k1
L
Portanto, a solução final fica,
( )⎪⎩
⎪⎨⎧
≤
=−π
+π
−=0k0
,3,2,1k1k3
sin3
34k3
sin324)kT(x L
2.2.2 Método computacional - Matlab O método apresentado aqui pode ser implementado em qualquer software, ele consiste em calcular a resposta do sistema ao delta de Kronecker, neste caso, a resposta será numérica, e em alguns casos a reconstrução pode ser retirada facilmente. Exemplo 2.5: Calcular a transformada Z inversa de,
( )( ) 1z2z
z2z1z
2zz)z(X 2
2
2 +−+
=−+
=
No Matlab digitar:
num=[1 2 0]; % numerador den=[1 -2 1]; % denominador u=[1 zeros(1,30)]; % delta de Kronecker x=filter(num,den,u) % resposta ao delta de Kronecker
Solução encontrada. x =
18
Columns 1 through 12 1 4 7 10 13 16 19 22 25 28 31 34 Columns 13 through 24 37 40 43 46 49 52 55 58 61 64 67 70 Columns 25 through 31 73 76 79 82 85 88 91
Neste caso, a seqüência de valores é dada por 1k3)k(x += k=0, 1, 2, .....
2.3 Exercícios Resolvidos Exemplo 2.6: Encontrar a transformada Z de,
⎩⎨⎧
<≥ω
=0t00ttcos
)t(x
Solução: Sabendo-se que 2
eetcostjtj ω−ω +
=ω e que,
[ ] 1ttj
ze11eZ −ω
ω
−= e [ ] 1t
tj
ze11eZ −ω−
ω−
−=
Então,
[ ]1Tcosz2z
Tcoszzze1
1ze1
121tcosZ 2
2
1t1t +ω−ω−
=⎟⎠⎞
⎜⎝⎛
−+
−=ω −ω−−ω
Exemplo 2.7: Encontrar a transformada Z do sinal que tem a seguinte representação em Laplace,
( )1ss1)s(X+
=
Neste caso, das tabelas de transformada de laplace inversa, tem-se que, [ ] t1 e1)s(XL −− −= t ≥ 0
Então a transformada Z fica,
[ ] [ ])ez)(1z(
z)e1(ze1
1z1
1e1Z)s(XZ T
1T
1T1t
−
−−
−−−−
−−−
=−
−−
=−=
Exemplo 2.8: Encontrar a transformada Z da função definida na assumindo tempo de amostragem T = 1 segundo.
19
0 1 2 3 4 5 6 7 80
0.2
0.4
0.6
0.8
1
t
x(t)
Figura 2.2: sinal a ser discretizado
Observe que há algumas possíveis soluções, pois x(t) pode ser escrita como 3 impulsos devidamente defasados e o degrau unitário defasado de 4 instantes de tempo,
)4kT(1)3kT(75.0)2kT(5.0)1kT(25.0)kT(x −+−δ+−δ+−δ= Aplicando a transformada Z em cada termo,
[ ]( )21
51
1
4321
z14zz
z1z
4z3
2z
4z)kT(xZ
−
−−
−
−−−−
−
−=
−+++=
Ou então, como uma reta iniciando em 0 menos uma reta negativa iniciando em 4,
)4kT(41kT
41)kT(x −−=
Aplicando a transformada Z em cada termo,
[ ]( ) ( ) ( )21
51
21
5
21
1
z14zz
z1z
41
z1z
41)kT(xZ
−
−−
−
−
−
−
−
−=
−−
−=
2.4 Exercícios Propostos Exercício 2.1: Obter a transformada Z de,
a) ( )ate1a1)t(x −−=
b) at2et)t(x −=
c) 0 1 2 3 4 5 6 7 8
0
0.2
0.4
0.6
0.8
1
t
x(t)
Exercício 2.2: Considerando a seguinte função de transferência discreta,
( )( )211
1
z4.0z3.11z1z)z(X −−−
−
++−=
Determinar: a) Valor inicial x(0);
20
b) Valor final x(∞); c) A transformada Inversa;
Exercício 2.3: (Prova 2007) Calcular a Transformada Z do sinal apresentado abaixo,
21
Capítulo 3
3 Função de transferência em tempo discreto
3.1 Amostragem impulsiva Considerando um sinal x(t) que será amostrado por um amostrador, conhecido como sampler, de tal modo que a intervalos de tempo T, conhecido como tempo de amostragem ou tempo de discretização, ocorra uma leitura, este sinal é dado pela Figura 3.1, e pode ser representado por,
∑∞
=
−δ=0k
* )kTt()kT(x)t(x
Figura 3.1: Amostrador impulsivo
Supondo que não são medidos tempos negativos, devido a causalidade, então a equação acima pode ser expandida como,
LL +−δ++−δ+δ= )kTt()kT(x)Tt()T(x)t()0(x)t(x* Observe que o δ representa um trem de impulsos e, uma das formas de entender o fenômeno da amostragem é que o sinal x(t) modula o trem de impulsos para formar o sinal amostrado conforme apresentado pela Figura 3.2.
Figura 3.2 : Amostrador impulsivo como um modulador
22
Agora aplicando a Transformada de Laplace no sinal amostrado,
[ ] [ ] [ ] [ ]
∑∞
=
−
−−
=
+++=
+−δ+−δ+δ==
0k
kTs
Ts2Ts
**
e)kT(x
e)T2(xe)T(x)0(x)T2t(L)T2(x)Tt(L)T(x)t(L)0(x)t(xL)s(X
L
L
Sabendo-se que a Transformada de laplace de um impulso defasado de a é, [ ] ase)at(L −=−δ
Então,
∑∞
=
−−− =+++=0k
kTsTs2Ts* e)kT(xe)T2(xe)T(x)0(x)s(X L
Definindo,
zlnT1szeTs =⇒=
Então,
( )∑∞
=
−
==
0k
k
zlnT1s
* zkTx)s(X
O lado direito desta equação é a definição de transformada Z da seqüência x(t), então,
)z(X)s(Xzln
T1s
* ==
Desta forma,
)z(XzlnT1X* =⎟
⎠⎞
⎜⎝⎛
3.2 Circuito Data-Hold A saída de um amostrador é um trem de impulsos, mas em alguns casos isso não é desejável, e o necessário seria um sinal contínuo, a transformação de um sinal na forma de trem de impulsos em um sinal contínuo pode ser feito por um circuito tipo Data-Hold, que nada mais é do que o processo de se obter um sinal contínuo x(t) de uma seqüência discreta x(kT). O circuito Data-Hold nada mais é do que um interpolador, isto é, ele gera ou mantém um sinal entre dois impulsos seguindo uma interpolação polinomial na forma,
011n
1nn
n aaaa)kT(h +τ++τ+τ=τ+ −− L
onde h(kT+τ) é a saída do circuito data-hold. Assumindo x(kT) como o sinal que passará pelo circuito, neste caso, h(kT) deve ser igual a x(kT) para que os sinais sejam os mesmos, então,
)kT(xaaa)kT(h 11n
1nn
n +τ++τ+τ=τ+ −− L
3.2.1 Segurador de Ordem Zero - ZOH A forma mais simples de interpolação é fazendo n=0, que representa um circuito de ordem zero dado por,
23
)kT(x)kT(h =τ+ Na Figura 3.3:, observa-se o resultado de um segurador de ordem zero.
Figura 3.3: Exemplo de sinal amostrado com uma reconstrução utilizando o ZOH
O ZOH mantém o sinal anterior até que um novo sinal apareça, então,
)kT(x)tkT(h =+ Significando que a saída do circuito será igual à entrada até que ocorra outro sinal de entrada, então,
[ ][ ]
[ ])T3t(1)T2t(1)T2(x)tT2(h2k)T2t(1)Tt(1)T(x)tT(h1k
)Tt(1)t(1)0(x)t(h0k
−−−=+⇒=−−−=+⇒=
−−=⇒=
Então a resposta temporal do ZOH será definida como, [ ] [ ]
[ ]∑∞
=
+−−−=
+−−−+−−=
0k)T)1k(t(1)kTt(1)kT(x
)T2t(1)Tt(1)T(x)Tt(1)t(1)0(x)t(h L
Como a Transformada de Laplace do degrau unitário atrasada de kT é dada por,
[ ]s
e)kTt(1LkTs−
=−
Então a Transformada de Laplace da resposta do ZOH torna-se, ( )
∑∑∞
=
−−∞
=
+−− −=⎥
⎦
⎤⎢⎣
⎡−=
0k
kTsTs
0k
Ts1kkTs
e)kT(xse1
se
se)kT(x)s(H
Como,
∑∞
=
−=0k
kTs* e)kT(x)s(X
Então,
)s(Xse1)s(H *
Ts−−=
Consequentemente, a função de transferência o ZOH é dada por,
se1
)s(X)s(H)s(G
Ts
*ZOH
−−==
3.2.2 Segurador de primeira ordem Fazendo n=1, que representa um circuito de primeira ordem dado por,
24
)kT(xa)kT(h 1 +τ=τ+ Aplicando a condição que,
)T)1k((x)T)1k((h −=− Então,
)T)1k((x)kT(xTa)T)1k((h 1 −=+=− Portanto,
T)T)1k((x)kT(xa1
−−=
Consequentemente, a equação do segurador de primeira ordem fica,
)kT(xT
)T)1k((x)kT(x)kT(h +τ−−
=τ+
Como o FOH utiliza uma extrapolação linear utilizando o valor anterior e o atual para predizer o valor do próximo e, além disso, o valor h(kT) deve ser igual a x(kT). então,
)T(xT
)T2(xT
1)T2(xT
)T(x)T2(x)T2(h2k
)0(xT
)T(xT
1)T(xT
)0(x)T(x)T(h1k
)0(xT
1)0(xT
)T(x)0(x)(h0k
τ−⎟
⎠⎞
⎜⎝⎛ τ+=+τ
−=τ+⇒=
τ−⎟
⎠⎞
⎜⎝⎛ τ+=+τ
−=τ+⇒=
⎟⎠⎞
⎜⎝⎛ τ+=+τ
−−=τ⇒=
Que pode ser expressa convenientemente como,
)T)1k((xT
)T(xT
1)kT(h −τ
−⎟⎠⎞
⎜⎝⎛ τ+=τ+
Fica difícil escrever a equação sem assumir uma entrada conhecida, utilizando uma entrada degrau para x(t),
)Tt(1Tt)t(1
Tt1)t(h −−⎟⎠⎞
⎜⎝⎛ +=
Somando e subtraindo 1(t-T),
)Tt(1)Tt(1T
Tt)t(1Tt1)t(h −−−
−−⎟
⎠⎞
⎜⎝⎛ +=
Aplicando a transformada de Laplace a cada um dos termos da equação acima,
( ) 2TsTsTs
22 Ts1Tse1e
s1e
Ts1
Ts1
s1)s(H +
−=−−⎟⎠⎞
⎜⎝⎛ += −−−
Agora, a transformada de Laplace da entrada x*(t) do FOH é,
∑∞
=−
−
−==
0kTs
kTs*
e11e)kT(1)s(X
Então a função de transferência do segurador de primeira ordem FOH fica,
( ) 2
2Ts*FOH Ts
1Tse1)s(X)s(H)s(G +
−== −
Um exemplo do FOH é dado na Figura 3.4:.
25
Figura 3.4: FOH de um sinal qualquer
3.2.3 Funções de Transferência em Tempo Discreto com ZOH Supondo que antes da função G(s) há um ZOH, então a convolução de G(s) com o ZOH é dada por,
)s(Gse1)s(X
Ts−−=
Fazendo,
( ) ( ) )s(Ge)s(G)s(Ge1s
)s(Ge1)s(Gse1)s(X 1
Ts11
TsTsTs
−−−−
−=−=−=−
=
Pegando apenas o último termo, )s(Ge)s(X 1
Ts1
−= Aplicando o teorema da convolução,
∫ τττ−=t
0101 d)(g)t(g)t(x
onde, [ ] ( )[ ])s(GL)t(g
TteL)t(g
11
1
Ts10
−
−−
=
−δ==
Então,
∫ τττ−−δ=t
011 d)(g)Tt()t(x
Como o delta extrai o valor da função, )Tt(g)t(x 11 −=
Além disso, Z[g1(t)]=G1(Z), então, por definição, [ ] [ ] )z(Gz)Tt(gZ)t(xZ 1
111
−=−= Porém, o desejado é,
[ ] [ ] [ ]
( ) ( ) ⎥⎦⎤
⎢⎣⎡−=−=−=
−=−=
−−−
−
s)s(GZz1)z(Gz1)z(Gz)z(G
)t(xZ)t(gZ)s(Ge)s(GZ)z(X
11
11
11
111Ts
1
No caso do FOH preceder a função G(s), tem-se
( ) )s(GTs
1Tse1)s(X 2
2Ts +−= −
Utilizando o mesmo resultado do ZOH,
26
( )
( ) ⎥⎦⎤
⎢⎣⎡ +
−=
⎥⎦⎤
⎢⎣⎡ +
−=
−
−
)s(GTs
1TsZz1
)s(GTs
1Tse1Z)z(X
2
21
2
2Ts
Exemplo 3.1: Obter a transformada Z de,
1s1
se1)s(X
Ts
+−
=−
Solução: Como representa um ZOH,
( )
( ) ( ) ( )1T
1T
1T111
1Ts
ze1ze1
ze11
z11z1
1s1
s1Zz1
1s1
s1Zz1
1s1
se1Z)z(X
−−
−−
−−−−−
−−
−−
=⎥⎦⎤
⎢⎣⎡
−−
−−=⎥⎦
⎤⎢⎣⎡
+−−=
=⎥⎦⎤
⎢⎣⎡
+−=⎥
⎦
⎤⎢⎣
⎡+
−=
3.2.4 Resposta em Freqüência do ZOH A função de transferência do ZOH é dada por,
se1G
Ts
ZOH
−−=
A resposta em freqüência, que é o diagrama de bode, pode ser encontrada substituindo s por jω,
( ) ( ) ( ) ( )( )
( ) ( ) ( )( ) ( )2/T
2/TsinTej2
eee2j2
eee2j2e12
je1)j(G
Tj2/1Tj2/1Tj2/1Tj2/1
Tj2/1Tj2/1Tj2/1TjTj
ZOH
ωω
=ω
−=
ω−
=ω
−=
ω−
=ω
ω−ω−ωω−
ω−ωω−ω−ω−
Nas figuras abaixo, ωs representa a freqüência de Nyquist, isto é a máxima freqüência que o sinal ainda pode ser reconstruído adequadamente. Caso o sinal amostrado apresente freqüências acima da freqüência de Nyquist o sinal discretizado apresentará erro de aliasing.
(a) (FRF) (b) diagrama de Bode
27
Figura 3.5: Resposta em freqüência do ZOH
O ZOH pode ser entendido como um filtro de reconstrução do sinal amostrado e ele não é um filtro passa-baixo ideal. Como a magnitude muda com a freqüência, atenuando o sinal a medida que a freqüência aumenta, o ZOH distorce o sinal, isto é, ele muda a amplitude e a fase do sinal de saída.
3.3 Função de Transferência Pulsada A função de transferência, FT, pulsada é a função de transferência em Laplace envolvendo o amostrador. Supondo que um sistema cuja resposta ao impulso seja h(t) tenha a entrada x(t) e a saída seja y(t), cujas transformadas de Laplace são H(s), X(s) e Y(s) respectivamente. Pelo teorema da convolução tem-se,
( ) ( ) ( ) ( ) ( )∫∫ τττ−=τττ−==t
0
t
0
dhtxdxth)t(x*)t(hty
Que no domínio de Laplace é dada por, )s(X)s(H)s(Y =
Adicionando um amostrador em x(t), este é dado por,
( ) ( )∑∑∞
=
∞
=
−δ=−δ=0k0k
* kTt)kT(xkTt)t(x)t(x
Aplicando esta entrada no sistema, tem-se que a resposta y(t) será a combinação de cada impulso gerado por x*(t) em h(t), sendo assim,
( ) ( ) ( ) ( )
kTt0)nT(x)nTt(h
kTx)kTt(hT2x)T2t(hTx)Tt(h0x)t(h)t(yk
0n≤≤−=
=−++−+−+=
∑=
L
Amostrando também a saída do sistema, tem-se a Soma de Convolução dada por,
)kT(x*)kT(h)nT(h)nTkT(x)nT(x)nTkT(h)kT(y0n0n
=−=−= ∑∑∞
=
∞
=
O procedimento feito até aqui é exatamente o que ocorre na Figura 3.6. Deve-se notar que H(z) é a resposta do sistema ao delta de Kronecker, pois se,
⎩⎨⎧
≠=
=δ=0k00k1
)kT()kT(x
Então,
28
[ ] 1z)kT(x)kT(Z)z(X0k
k ==δ= ∑∞
=
−
Significando que Y(z) = H(z) se a entrada for um impulso.
Figura 3.6 : Sistema em tempo contínuo com amostradores
3.3.1 Transformada de Z de FTs incluindo o amostrador Em sistemas em tempo discreto, alguns sinais do sistema são amostrados enquanto outros continuam representados em tempo contínuo, que é exatamente o que ocorre na Figura 3.6. Sendo assim, será útil calcular a função de transferência pulsada contendo amostradores em várias posições. Note que na Figura 3.6, a função de transferência Y(s) é dada por,
)s(X)s(H)s(Y *= A Transformada de Laplace Inversa de Y(s) é dada por,
[ ]
∑∫ ∑
∫∞
=
∞
=
−
=τ−τδττ−=
τττ−==
0k
t
0 0k
t
0
**1
)kT(x)kT(hd)kT()(x)t(h
d)(x)t(h)s(X)s(HL)t(y
Aplicando a transformada Z,
∑ ∑∞
=
−∞
=⎥⎦
⎤⎢⎣
⎡=
0n
n
0kz)kT(x)kT(h)z(Y
Fazendo m = n - k, ( )
)z(X)z(H
z)kT(xz)mT(h
z)kT(x)mT(h)z(Y
k
0k
m
0m
0m
mk
0k
=
=
=
−∞
=
−∞
=
∞
=
+−∞
=
∑∑
∑∑
Significando que, [ ] )s(X)s(H)s(X)s(H)s(Y ***** ==
Aplicando transformada Z, torna-se,
)z(H)z(X)z(Y)z(X)z(H)z(Y =⇒=
3.3.2 Função de Transferência em Cascata
29
Considerando o sistema apresentado na Figura 3.7(a), supondo que os amostradores estão sincronizados. Neste caso, observa-se que,
)s(U)s(H)s(Y)s(X)s(G)s(U
*
*
=
=
Como mostrado no item anterior, encontra-se,
)s(X)s(G)s(H)s(Y)s(U)s(H)s(Y)s(X)s(G)s(U ****
***
***
=⇒==
Aplicando a Transformada Z, obtém-se a função de transferência,
)Z(G)z(H)z(X)z(Y)z(X)z(G)z(H)z(Y =⇒=
Porém, aplicando o mesmo método na Figura 3.7(b), neste caso tem-se que, )s(X)s(HG)s(X)s(G)s(H)s(Y ** ==
Que resulta em, [ ] )s(X)s(HG)s(Y *** =
Cuja transformada Z é dada por,
)z(HG)z(X)z(Y=
Nota-se claramente que, )Z(G)z(H)z(HG ≠
Figura 3.7 :Sistemas em cascata
Exemplo 3.2: Encontrar a função de transferência discreta em cascata do sistema apresentado na Figura 3.7 supondo,
as1)s(G+
= e bs
1)s(H+
=
Para a Figura 3.7(a) tem-se,
1bT1aT ze11
ze11
bs1Z
as1Z)Z(G)z(H
)z(X)z(Y
−−−− −−=⎥⎦
⎤⎢⎣⎡+⎥⎦
⎤⎢⎣⎡+
==
Para a Figura 3.7(b) tem-se,
( )( )( )
( )( )1bT1aT
1bTaT
ze1ze1zee
ab1
bsasab
ab1Z
bs1
as1Z)Z(HG
)z(X)z(Y
−−−−
−−−
−−−
−=⎥
⎦
⎤⎢⎣
⎡++
−−
=⎥⎦⎤
⎢⎣⎡
++==
Este exemplo mostra claramente que ambos são diferentes.
3.3.3 Função de transferência em malha fechada
30
Como mencionado anteriormente, a amostragem pode ocorrer em qualquer etapa do processo de controle. Supondo um sistema em malha fechada como o descrito na Figura 3.8.
Figura 3.8: sistema em malha fechada envolvendo amostador
Consequentemente,
)s(E)s(HG)s(R)s(E)s(G)s(H)s(R)s(E ** −=−= Que pode ser reescrito utilizando FT pulsada para todos os termos como,
[ ])s(GH1
)s(R)s(E)s(E)s(HG)s(R)s(E *
******
+=⇒−=
Como, )s(E)s(G)s(C *** =
Então, a função de transferência pulsada de malha fechada é dada por,
)s(GH1)s(G
)s(R)s(C
)s(GH1)s(R)s(G)s(E)s(G)s(C *
*
*
*
*
*****
+=⇒
+==
Aplicando a transformada Z, encontra-se a função de transferência discreta em malha fechada,
)z(GH1)z(G
)z(R)z(C
+=
3.3.4 Função de transferência em malha fechada de controladores digitais
Na prática, o controlador será um controlador digital e a planta será em tempo contínuo. Neste caso haverá um amostrador que discretiza o sinal através do conversor A/D quando o sinal entra em uma placa controladora ou no sistema que realiza o controlador, como um controlador lógico programável – CLP, que normalmente é implementado em tempo discreto. Após a realização do controlador, o sinal de controle gerado é enviado para o conversor D/A que normalmente possui um ZOH para implementar a lei de controle em tempo contínuo. Um caso como o apresentado aqui sem levar em conta as funções de transferência dos conversores A/D e D/A é dado na Figura 3.9.
31
Figura 3.9: sistema em malha fechada envolvendo amostador
No caso, a função de transferência em malha fechada é dada por,
)s(E)s(G)s(G)s(C)s(E)s(G)s(G)s(C **D
****D =⇒=
Aplicando a transformada Z, )z(E)z(G)z(G)z(C D=
Como, [ ])z(C)z(R)z(G)z(G)z(C)z(C)z(R)z(E D −=⇒−=
Chegando a,
)z(G)z(G1)z(G)z(G
)z(R)z(C
D
D
+=
3.3.5 Função de transferência pulsada de um controlador PID digital A resposta de um controlador PID no domínio do tempo é dada por,
⎥⎦
⎤⎢⎣
⎡++= ∫ )t(e
dtdTdt)t(e
T1)t(eK)t(m d
t
0i
onde e(t) é a entrada do controlador dada pela diferença da resposta da planta e pela referência a ser seguida, K é o ganho proporcional, Ti é a constante de tempo do controle integral e Td a constante de tempo do controle proporcional. Para se obter a função de transferência pulsada do controlador PID, é necessário realizar a discretização da resposta temporal. A integral será aproximada pela soma trapezoidal e a derivada será aproximada pela derivada da interpolação utilizando 2 pontos. Assim,
( )
( )⎥⎦⎤−−
+
⎢⎣
⎡+⎥⎦
⎤⎢⎣⎡ +−
+++
++
+=
TT)1k(e)kT(eT
2)kT(eT)1k(e
2)T2(e)T(e
2)T(e)0(e
TT)kT(eK)kT(m
d
i
L
Ou então, ( ) ( )[ ]
⎭⎬⎫
⎩⎨⎧
−−++−
+= ∑=
T)1k(e)kT(eTT
2)hT(eT)1h(e
TT)kT(eK)kT(m d
k
1hi
Para resolver o problema, deve-se primeiro notar que,
⎥⎦
⎤⎢⎣
⎡−
−=⎥
⎦
⎤⎢⎣
⎡ ∑∑−
=
−−
=
1i
0h
h1
k
ihz)h(x)z(X
z11)h(xZ
Prova: esta transformada é comprovada fazendo,
)k(x)1i(x)i(x)h(x)k(y~k
ih
++++== ∑=
L
32
A transformada Z de cada um dos termos utilizando a propriedade da translação real,
k)1i(i z)k(xz)1i(xz)i(x)z(Y~ −+−− ++++= L Porém, observe que, definindo,
LL +++++= −+−− k)1i(i z)k(xz)1i(xz)i(x)z(X~ E da definição de transformada Z,
L+++=== −−∞
=
−∑ 21
0k
k z)2(xz)1(x)0(xz)k(x)]k(x[Z)z(X
Então, obtêm-se,
∑−
=
−−=1i
0h
hz)h(x)z(X)z(X~
Por outro lado,
)z(X~z1
1)z(Y~)z(X~)z(Y~z)z(Y~)k(x)1k(y~)k(y~ 11
−−
−=⇒=−⇒=−−
Pois a transformada Z de x(k) que começa em k = i é )z(X~ , finalmente,
⎥⎦
⎤⎢⎣
⎡−
−=
−==⎥
⎦
⎤⎢⎣
⎡ ∑∑−
=
−−−
=
1i
0h
h11
k
ihz)h(x)z(X
z11)z(X~
z11)z(Y~)h(xZ
Voltando ao problema original utilizando o resultado acima e assumindo a causalidade, isto é, que para o tempo t = 0 não há resposta do erro,
[ ] )z(Ez1
1)0(E)z(Ez1
1)hT(eZ 11
k
1h−−
= −=−
−=⎥
⎦
⎤⎢⎣
⎡∑
( ) [ ] )z(Ez1
z)0(E)z(Ez1
1z)T1h(eZ 1
1
11
k
1h−
−
−−
= −=
⎭⎬⎫
⎩⎨⎧ −−
=⎥⎦
⎤⎢⎣
⎡−∑
Agora, para [ ]( )[ ] )z(Ez)T1k(eZ
)z(E)kT(eZ1−=−
=
Então, a transformada Z do controlador PID é dada por,
[ ]⎭⎬⎫
⎩⎨⎧
−+⎥⎦
⎤⎢⎣
⎡−
+−
+= −−
−
− )z(Ez)z(ETT
z1z
z11
21
TT)z(EK)z(M 1d
1
1
1i
Resultando em,
( )⎟⎟⎠
⎞⎜⎜⎝
⎛−+
−+
+= −−
−1d
1
1
i
z1TT
z1z1
T2T1K
)z(E)z(M
Rearranjando os termos,
( )
( )⎥⎦⎤
⎢⎣⎡ −+
−+=
⎟⎟⎠
⎞⎜⎜⎝
⎛−+
−+−=
−−
−−
1D1
IP
1d1
ii
z1Kz1
KK
z1TT
z11
TT
T2T1K
)z(E)z(M
Onde
=−=−=2
KKT2
KTKK I
ip ganho proporcional
33
==i
I TKTK ganho integral
==T
KTK DD ganho derivativo
A equação acima é referenciada como sendo a forma em posição. Exemplo 3.3: Comparar a resposta ao degrau do sistema abaixo considerando o sistema com e sem o controlador PID digital na forma como apresentado na Figura 3.10.
Figura 3.10 : sistema em malha fechada envolvendo amostador
Assumindo que o tempo de amostragem T é de 1 segundo, os ganhos do controlador sejam KP = 1, KI=0.2, KD = 0.2 e que a planta seja dada por,
( )1ss1G p +
=
Solução: Primeiro deve-se calcular a função de transferência pulsada entre o ZOH e a planta. A convolução da planta e o ZOH é dada por,
( )1ss1
se1GG
s
pZOH +−
=−
Aplicando a transformada de Z,
[ ] ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )[ ]( ) ( )1T21
11TTT1
21
21
s
pZOH
ze1z1zzTee1e1Tz1
1ss1Zz1
1ss1Zz1
1ss1
se1ZGGZ
−−−
−−−−−−−
−−
−−
−−++−−=⎥
⎦
⎤⎢⎣
⎡+
−=
=⎥⎦
⎤⎢⎣
⎡+
−=⎥⎦
⎤⎢⎣
⎡+
−=
Esta transformada foi obtida através de tabela de transformação. Item 13 fazendo a = 1. Para comparar com o resultado do Exemplo 2.7, deve-se lembrar que naquele ponto estava-se trabalhando com sinais, que são as respostas, e não as Funções de Transferência como tratadas aqui. No Exemplo 2.7, a resposta é convolução da FT com entrada. Agora substituindo os valores de T = 1 e simplificando, obtêm-se,
[ ] ( )( )11
21
pZOH z3679.01z1z2642.0z3679.0)z(GGGZ −−
−−
−−+
==
A função de transferência do controlador PID é dada por
( )( )
1
21
1
2D
1DPDIP
1D1
IPD
z1z2.0z4.14.1
z1zKzK2KKKK
z1Kz1
KK)z(G)z(E)z(M
−
−−
−
−−
−−
−+−
=−
++−++=
=−+−
+==
Agora a função de transferência em malha fechada é dada por,
( )1D1
IP z1K
z1K
K −− −+
−+
( )( )11
21
z1z3679.01z2642.0z3679.0−−
−−
−−+
R(z)
+ -
34
( )( )
( )( )
4321
4321
321
4321
321
4321
11
21
1
21
11
21
1
21
D
D
z0528.0z6642.0z5906.1z8528.11z0528.0z2963.0z1452.0z5151.0
z3679.0z7358.1z3679.21z0528.0z2963.0z1452.0z5151.01
z3679.0z7358.1z3679.21z0528.0z2963.0z1452.0z5151.0
z3679.01z1z2642.0z3679.0
z1z2.0z4.14.11
z3679.01z1z2642.0z3679.0
z1z2.0z4.14.1
)z(G)z(G1)z(G)z(G
)z(R)z(C
−−−−
−−−−
−−−
−−−−
−−−
−−−−
−−
−−
−
−−
−−
−−
−
−−
+−+−+−−
=
−+−+−−
+
−+−+−−
=
=
−−+
−+−
+
−−+
−+−
=+
=
Programa em Matlab
clear all;close all;clc % planta sem o sistema de controle discreto % significando que a simulação é tempo contínuo num=[1]; % numerador contínuo den=[1 1 0]; % denominador contínuo figure('Color',[1 1 1]) step(num,den) % resposta ao degrau % Planta controlada com PID digital numd=[0 0.5151 -0.1452 -0.2963 0.0528]; dend=[1 -1.8528 1.5906 -0.6642 0.0528]; kT=[0:1:40]; % vetor de tempo discreto com T=1 r=ones(1,41); % criação do degrau unitário c=filter(numd,dend,r); % simulação do sistema figure('Color',[1 1 1]);plot(kT,c,'ko',kT,c,'k-') title('Unit-Step Response');xlabel('kT [s]');ylabel('Output C')
(a) sem controle (b) controlado
Figura 3.11: Resposta do sistema
3.3.6 Simulação de sistemas em tempo discreto Uma função de transferência em tempo discreto pode ser representada por,
35
( ) ( )
n1n
1n
m1mn
1mn
0n
n1
1
nm
1mn1
mn0
azazbzbzb
zaza1zbzbzb
)z(X)z(Y
++++++
=+++
+++= −
−−−
−−
−+−−−−
L
L
L
L n ≥ m
Que também pode ser expressa na forma de pólos e zeros, ( )( ) ( )( )( ) ( )n21
m210
pzpzpzzzzzzzb
)z(X)z(Y
−−−−−−
=L
L n ≥ m
Observe que,
nn
11
mm
110
zaza1zbzbb
)z(X)z(Y
−−
−−
++++++
=L
L
Que pode ser reescrita como, ( ) ( ) )z(Xzbzbb)z(Yzaza1 m
m1
10n
n1
1−−−− +++=+++ LL
Aplicando a transformada inversa de Z, obtém-se,
)mTkT(xb)TkT(xb)kT(xb)nTkT(ya)T2kT(ya)TkT(ya)kT(y
m10
n21
−++−+=−++−+−+
L
L
Significando que a resposta atual y(kT) é obtida fazendo,
)mTkT(xb)TkT(xb)kT(xb)nTkT(ya)T2kT(ya)TkT(ya)kT(y
m10
n21
−++−+++−−−−−−−=
L
L
Deve ser lembrado que para kT < 0 a resposta do sistema será zero, isto é y(-T) = 0 devido à condição de causalidade. Exemplo 3.4: Calcular a resposta ao degrau unitário em tempo discreto com T = 0.5 para o sistema dado em tempo contínuo,
( )21ss)s(G+
=
Solução: Das tabelas de transformada Z,
( ) ( )
3679.0z2131.1zz9098.0z
)z(U)z(Y
z3679.0z2131.11z9098.01
ze1ze)T1(1
1ssZ
2
2
21
1
21T
1T
2
+−−
=
+−−
=−
+−=⎥
⎦
⎤⎢⎣
⎡
+ −−
−
−−
−−
Então, o sistema a ser simulado é, (1 – 1.2131z-1 + 0.3679z-2)Y(z) = (1 – 0.9098z-1)U(z)
Aplicando a Transformada Z inversa, y(kT) – 1.2131y((k-1)T) + 0.3679y((k-2)T) = u(kT) – 0.9098u((k-1)T)
Rearranjando, )T)1k((u9098.0)kT(u)T)2k((y3679.0)T)1k((y2131.1)kT(y −−+−−−=
Como x(kT)=1(kT), então, começando o processo de iteração, Para k = 0 u(kT) = u(0) = 1 y(kT) = y(0) = u(0) = 1 Para k = 1 u(kT) = u(0.5) = 1; u(0)=1 y(kT) = y(0.5) = 1.2131y(0) + u(0.5) - 0.9098u(0)
= 1.2131 +1 - 0.9098 = 1.3033 Para k=2 u(kT) = u(1) = 1; u(0.5) = 1; y(kT) = y(1) = 1.2131y(0.5) - 0.3679y(0) + u(1) - 0.9098u(0.5)
36
= 1.2131*1.3033 - 0.3679 + 1 - 0.9098 = 1.3033 Para k=3 u(kT) = u(1.5) = 1; u(1) = 1; y(kT) = y(1.5) = 1.2131y(1.5) - 0.3679y(1) + u(1.5) - 0.9098u(1) = 1.2131*1.3033 - 0.3679*1.3033 + 1 - 0.9098 = 1.1917 Para k=4 x(kT) = u(2) = 1; u(1.5) = 1; u(1) = 1 y(kT) = y(2)=1.2131y(1.5)-0.3679y(1)+u(2)-0.9098u(1.5) = 1.2131*1.191-0.3679*1.3033+1 - 0.9098 = 1.0564 E assim por diante.
3.3.7 Realização de Controladores digitais e filtros digitais Considerando o sistema abaixo,
nn
11
mm
110
zaza1zbzbb
)z(X)z(Y
−−
−−
++++++
=L
L
A sua representação em diagramas de bloco, ou utilizando o Simulink do Matlab, é dada na Figura 3.12, esta realização é conhecida como padrão, pois o sistema pode ser alterado para se obter outras realizações.
Figura 3.12 : Função de transferência
Exemplo 3.5: Implementar em Simulink o exemplo da Figura 3.10. Utilizando funções de transferência para o controlador e para a planta e finalmente a função de transferência de malha fechada. Solução: a função de transferência da planta é dada por,
21
21
z3679.0z3679.11z2642.0z3679.0)z(G −−
−−
+−+
=
Função de transferência do controlador PID digital,
1
21
PID z1z2.0z4.14.1)z(G −
−−
−+−
37
Para implementar esta função de transferência da planta e do controlador utiliza-se o bloco denominado “Discrete Filter”, mas poderia ser utilizado os blocos “Discrete Transfer Fcn” ou “Discrete Zero-Pole”. A implementação do sistema está apresentada na Figura 3.13:.
Figura 3.13: Diagrama de blocos implementado em Simulink utilizando funções de
transferência Para a implementação da função de transferência de malha fechada, optou-se pela expansão em blocos ao invés de se utilizar função de transferência, para tanto, deve-se observar que a função de transferência de malha fechada é dada por,
4321
4321
z0528.0z6642.0z5906.1z8528.11z0528.0z2963.0z1452.0z5151.0
)z(R)z(C
−−−−
−−−−
+−+−+−−
=
Observe que neste caso, observa-se que o termo b0 é zero, pois sua representação é,
44
33
22
11
43
33
22
110
MF zazazaza1zbzbzbzbb)z(G −−−−
−−−−
++++++++
=
Para este caso, a solução se encontra na Figura 3.14.
Figura 3.14 : Diagrama de blocos implementado em Simulink utilizando atrasadores
38
3.3.8 Resposta ao Impulso Finita e Infinita Observe que filtros ou funções de transferência na forma digital podem ser classificados de acordo com a duração da resposta ao impulso, isto é, tem-se os chamados filtros IIR, Infinite Impulse Response, e FIR, Finite Impulse Response. Como apresentado anteriormente, considera-se uma função de transferência na forma,
nn
11
mm
110
zaza1zbzbb
)z(X)z(Y
−−
−−
++++++
=L
L
Que pode ser representada em termos de equação de diferenças na forma,
)T)mk((xb)T)1k((xb)kT(xb)T)nk((ya)T)2k((ya)T)1k((ya)kT(y
m10
n21
−++−+++−−−−−−−=
L
L
A forma acima é conhecida como Filtro IIR, cuja resposta é composta dos atrasos na entrada e na saída da função de transferência. Supondo que os termos ai sejam todos iguais a zeros, neste caso tem-se,
)T)mk((xb)T)1k((xb)kT(xb)kT(y m10 −++−+= L Significando que a resposta da planta é composta apenas dos atrasos da entrada, este tipo de resposta é conhecida como filtro FIR. Que em termos da transformada Z é dada por,
mm
110 zbzbb)z(Y −− +++= L
Este tipo de resposta é interessante, pois não apresenta pólos. FIR provém do fato que a resposta será composta por um número finito de atrasos de tempo da entrada. Exemplo 3.6: Transformar a função de transferência abaixo que está na forma IIR para a forma FIR e calcular a resposta ao degrau unitário.
1
1
z5.01z6.02)z(G −
−
+−
=
Para transformar a resposta acima para forma FIR, deve-se dividir o numerador pelo denominador, ou então, calcular a resposta ao impulso.
clear all;close all;clc % denifindo os dados da planta num=[2 -0.6]; den=[1 0.5]; x=[1 zeros(1,10)]; y=filter(num,den,x)
Uma alternativa para ao “x=[1 zeros(1,10)];” e “y=filter(num,den,x)” seria utilizar direto a resposta ao impulso discreto “y=dimpulse(num,den)”
Y = Columns 1 through 8 2.0000 -1.6000 0.8000 -0.4000 0.2000 -0.1000 0.0500 -0.0250 Columns 9 through 11 0.0125 -0.0063 0.0031
39
Tomando apenas os valores abaixo de z-7, então, a forma FIR fica,
7654321
1
1
z025.0z05.0z1.0z2.0z4.0z8.0z6.12z5.01z6.02)z(G
)z(X)z(Y
−−−−−−−
−
−
−+−+−+−≅
+−
==
Cuja equação de diferenças fica,
)T)7k((x025.0)T)6k((x05.0)T)5k((x1.0)T)4k((x2.0)T)3k((x4.0)T)2k((x8.0)T)1k((x6.1)kT(x2)kT(yFIR
−−−+−−−++−−−+−−=
Enquanto que a forma IIR é dada por, )T)1k((x6.0)T)k((x2)T)1k((y5.0)kT(yIIR −−+−−=
Resposta ao degrau unitário – FIR Resposta ao degrau unitário – IIR
k=0 y(0) = 2x(0) = 2*1 = 2.0 y(0) = 2x(0)= 2.0 k=1 y(1) = 2x(1)-1.6x(0) = 2*1-1.6*1 = 0.4 y(1) = -0.5y(0)+2x(1)-0.6x(0) 0.4 k=2 y(2) = 2-1.6+0.8 = 1.2 y(2) = -0.5y(1)+2x(2)-0.6x(1) 1.2 k=3 y(3) = 2-1.6+0.8-0.4 = 0.8 y(3) = -0.5y(2)+2x(3)-0.6x(2) 1.0 k=4 y(3) = 2-1.6+0.8-0.4+0.2 = 1.0 y(4) = -0.5y(3)+2x(4)-0.6x(3) 0.9 k=5 y(3) = 2-1.6+0.8-0.4+0.2-0.1 = 0.9 y(5) = -0.5y(4)+2x(5)-0.6x(4) 0.95 k=6 y(3) = 2-1.6+0.8-0.4+0.2-0.1+0.05 = 0.95 y(6) = -0.5y(5)+2x(6)-0.6x(5) 0.925 k=7 y(3) = 2-1.6+0.8-0.4+0.2-0.1+0.05-0.025 = 0.925 y(7) = -0.5y(6)+2x(7)-0.6x(6) 0.9375 k=8 y(3) = 2-1.6+0.8-0.4+0.2-0.1+0.05-0.025 = 0.925 y(8) = -0.5y(7)+2x(8)-0.6x(7) 0.9312 k=9 y(3) = 2-1.6+0.8-0.4+0.2-0.1+0.05-0.025 = 0.925 y(9) = -0.5y(8)+2x(9)-0.6x(8) 0.9328 k=10 y(3) = 2-1.6+0.8-0.4+0.2-0.1+0.05-0.025 = 0.925 y(10) = -0.5y(9)+2x(10)-0.6x(9) 0.9336
3.4 Exercícios Resolvidos Exemplo 3.7: Calcular a resposta de tsinω na forma discreta para uma freqüência de 1 Hz utilizando 8 pontos por período. Utilizar a equação na forma recursiva. Solução: Para a senóide na forma, t2sin)t(y π= , com T = 1/(8*1) = 0.125 s. Calculando a Transformada Z,
[ ] [ ]1Tcosz2z
Tsinz)kT(yZ)t(yZ 2 +ω−ω
==
Como ω = 2π, então sin 2πT = sin(2π0.125) = 0.7071 cos 2πT = cos(2π0.125) = 0.7071
Assim, tem-se,
21
1
zz4142.11z7071.0
)z(U)z(Y
−−
−
+−=
Aplicando a Transformada Z inversa, ( ) )z(Uz7071.0)z(Yzz4142.11 121 −−− =+−
)T)1k((u7071.0)T)2k((yT)1k((y4142.1)kT(y −=−+−− Para gerar a senóide, deve-se aplicar a resposta ao impulso, isto é u(0) = 1 e u(kT) = 0 para k ≥ 1, então Para k = 0 y(0) = 0 K = 1 y(0.125) = 0.7071u(0) = 0.7071 K = 2 y(0.250) = 1.4142y(0.125) = 1
40
K = 3 y(0.375) = 1.4142y(0.250) - y(0.125) = 0.7071 K = 4 y(0.500) = 1.4142y(0.375) - y(0.250) = 0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1Impulse Response
Tempo [s] (sec)
Am
plitu
de
Exemplo 3.8: Encontrar a FT de malha fechada em tempo discreto para o seguinte sistema,
Solução: Montando as seguintes equações,
E(s) = R(s) – H(s)C(s) (I) C(s) = P(s)X*(s) (II) X(s)=G(s)E*(s) (III)
A primeira equação não está na forma satisfatória para aplicar a transformação para FT pulsada, pois não contém nenhum sinal amostrado. O ideal é deixar do lado direito somente sinais amortrados, então, combinando a 1ª equação com a 2ª equação,
E(s) = R(s) – H(s)P(s)X*(s) (IV) Aplicando a transformação para FT pulsada em (III),
[X(s)]*=[G(s)E*(s)]* ⇒ X*(s)=G*(s)E*(s) (V) Para (IV)
[E(s)]* = [R(s)]* – [H(s)P(s)X*(s)]* E*(s) = R*(s) – HP*(s)X*(s) (VI)
Combinando (V) e (VI), encontra-se a função de transferência pulsada em malha fechada,
)s(*HP)s(*G1)s(*P)s(*G
)s(*R)s(*C
+=
Aplicando a Transformada Z, encontra-se a função de transferência discreta em malha fechada,
)z(HP)z(G1)z(P)z(G
)z(R)z(C
+=
41
3.5 Exercícios Propostos Exercício 3.1: Obter a transformada Z das seguintes funções de transferência, e comparar os resultados com os valores obtidos no Matlab com T = 1 e a = 3.
a) ( )( )2s1s3s)s(G++
+=
b) ( )2
Ts
as1
se1)s(G
+−
=−
Dica: clear all;close all;clc % denifindo os dados da planta T=0.2; num=[1 3]; den=conv([1 1 ],[1 2]); Gs=tf(num,den) % planta contínua Gz=c2d(Gs,T) % planta discreta
Exercício 3.2: (Prova de 2007) Calcular a Transformada Z do seguinte sinal,
( )2
st
2se1)s(G+−
=−
Exercício 3.3: (Exame de 2007) Calcular a Transformada Z da seguinte função de transferência,
2s3s1)s(G 2 ++
=
Exercício 3.4: (Prova de 2007) Calcular a resposta c(kT) para k = 0,1,2,3,4,5, rupondo que a entrada r(kT) seja um impulso e o tempo de amostragem T = 1 segundo,
( )21
1
z5.01z21
)z(R)z(C
−
−
−
+=
Exercício 3.5: Obter a função de transferência discreta em malha fechada dos seguintes diagramas de bloco,
(a)
42
(b) Exercício 3.6: (Prova de 2007) Calcular a função de transferência em malha fechada do seguinte diagrama de blocos,
Exercício 3.7: (Exame de 2007) Calcular a função de transferência em malha fechada do seguinte diagrama de blocos,
43
Capítulo 4
4 Projeto de controladores por métodos clássicos
4.1 Mapeamento entre plano Z e plano S A estabilidade absoluta e relativa de sistemas lineares com parâmetros invariantes no tempo em se tratando de sistemas de controle em malha fechada em tempo contínuo são determinados pelos pólos de malha fechada no plano S. Sabendo-se que os pólos complexos estão em pares conjugados conforme,
2nd2,1 1jnjns ζ−ω±ζω−=ω±ζω−=
Figura 4.1: Pólo complexo no plano complexo S
Quando a amostragem é incorporada no processo, a relação que rege a transformação do plano complexo S para o plano discreto Z é dada por,
zlnT1szeTs =⇒=
onde T é o tempo de amostragem e s a raiz complexa. Como a raiz s possui uma parte real e uma parte imaginária,
ω+σ= js Então,
( ) TjTjTTs eeeez ωσω+σ === Como a exponencial complexa é dada por,
TsinjTcose Tj ω±ω=ω±
44
Significando que esta parte é repetida a cada 2πk, significando que freqüências que são múltiplas inteiras da freqüência de amostragem 2π/T são mapeadas na mesma região no plano Z, de acordo com a Figura 4.2, pois,
( ) ( )k2TjTTjTjTTs eeeeeez πωσωσω+σ ====
Figura 4.2: Faixas periódicas no plano complexo e a correspondente região no plano
discreto, onde ωs corresponde à freqüência de amostragem. Além disso, o lado esquerdo do plano S possui parte real negativa, significando que,
1ez T <= σ Então todo o lado esquerdo do plano complexo é localizado no plano Z dentro de um círculo de raio unitário, o eixo jω é mapeado exatamente em cima do circulo e o lado direito do plano S é mapeado fora do circulo de raio unitário. Além disso, quanto menor o tempo de discretização mais próximo do círculo de raio unitário encontra-se a raiz. Isto ocorre porque se T tende para zero então eσT tende para 1. Observa-se pela equação de transformação que raízes com a mesma parte real mas com parte imaginária diferente localizam-se em forma de círculo no plano complexo, de acordo com a Figura 4.3. Isto também significa que a parte real dá a distância da origem no plano z, isto é, o raio.
45
Figura 4.3: Localização das raízes complexas com a mesma parte real no plano discreto. No caso de raízes complexas com a mesma parte imaginária, elas encontram-se na forma de retas inclinadas de ω de acordo com a Figura 4.4.
Figura 4.4: Localização das raízes complexas com a mesma parte imaginária no plano
discreto. Para traçar as curvas de fator de amortecimento constante, basta lembrar que um pólo complexo pode ser dado por,
dn2
nn j1js ω+ζω−=ζ−ω+ζω−= Aplicando a transformação,
( ) ⎟⎟
⎠
⎞
⎜⎜
⎝
⎛
ωω
π+ωω
ζ−
πζ−
ω+ζω− === s
d
s
d2
dn
2j1
2
jTs eeez Consequentemente,
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛
ωω
ζ−
πζ−
= s
d21
2
ez e ( )s
d2zangleωω
π=
Assim, a magnitude de z decresce e o ângulo aumenta quando ωd, que é a freqüência natural amortecida, aumenta, caracterizando assim uma espiral logarítmica. Note que para uma dada relação ωd/ωs, a magnitude de z torna-se apenas uma função do fator de amortecimento ζ. A representação da curva com fator de amortecimento constante é dada na Figura 4.5.
46
Figura 4.5: Representação das curvas de fator de amortecimento constante.
Note que se a espiral de fator de amortecimento constante está no segundo ou terceiro quadrante do plano S, lado real negativo, então a espiral decai para dentro do circulo no plano Z. Se ela estiver no primeiro ou quarto quadrante, lado real positivo, que neste caso corresponderia a um caso com fator de amortecimento negativo, corresponderia a uma espiral crescendo para fora do circulo de raio unitário. Além disso, deve- se notar que a medida que a freqüência aumenta, ela passa de uma banda para outra, sendo assim, só é necessário representar a primeira parte, que corresponde a 0 ≤ ω ≤ 1/2ωs, Figura 4.6, a parte correspondente de -1/2ωs ≤ ω ≤ 0 é uma imagem espelho para a parte de baixo. A curva para freqüência ωn constante, são círculos no plano S que são perpendiculares às curvas de fator de amortecimento constante, assim, a sua representação é dada na Figura 4.6, onde π/T é ωs/2.
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 10
0.2
0.4
0.6
0.8
1
0.90.80.70.60.50.40.30.20.1
π/T
0.9π/T
0.8π/T
0.7π/T
0.6π/T0.5π/T
0.4π/T
0.3π/T
0.2π/T
0.1π/T
Figura 4.6: Representação das curvas de freqüência natural constante e fator de
amortecimento constante. Esta abordagem anterior foi feita para determinar qual a região dos pólos e zeros desejados para as funções de transferência em tempo discreto. Então a partir dos gráficos anteriores pode-se determinar a região desejada dos pólos e zeros discretos de acordo com a Figura 4.7.
47
Figura 4.7: Localização das raízes complexas desejadas no plano discreto.
Aqui deve ser mencionado que se um sistema em tempo contínuo possui um par de pólos na forma s = - σ ± jω1 no plano s, e for feita uma amostragem tal que ω1 > 1/2ωs em que ωs = 2π/T, sendo T o tempo de amostragem, significando que este par de pólos complexo possui freqüência natural maior que a freqüência de Nyquist, ele cairá fora da primeira faixa de valores, mas como mencionado anteriormente, ele será transportado para dentro do circulo de raio unitário do plano Z como se estivesse posicionado no plano S em s = - σ ± j(ω1 - ωs).
4.2 Análise de Estabilidade de Sistemas no plano Z Como mencionado anteriormente, para que um sistema seja assintoticamente estável no plano complexo S, os pólos deverão obrigatoriamente possuir a parte real negativa, que significa no plano Z estar localizado dentro do circulo de raio unitário, sendo assim,
• Assintoticamente estável, todos os pólos deverão apresentar 1z < . • Para que um sistema seja marginalmente estável no plano complexo S, o
sistema deverá possuir pelo menos 1 pólo com a parte real nula e os demais possuírem parte real negativa, assim, marginalmente estável, pelo menos 1 pólo em 1z = e os demais com 1z < ;
• Para que o sistema seja instável no plano complexo S, ele deve possuir pelo menos 1 pólo com parte real positiva, que no plano Z corresponde à parte localizada fora do circulo de raio unitário, assim ,instável, pelo menos 1 pólo apresentando 1z > .
Exemplo 4.1: Considerando o sistema em malha fechada apresentado abaixo, determinar a estabilidade para K = 1 e um tempo de amostragem T = 1s.
48
Solução: Calculando a convolução do ZOH com a planta,
[ ] ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )[ ]( ) ( )1T21
11TTT1
21
21
s
pZOH
ze1z1zzTee1e1Tz1
1ss1Zz1
1ss1Zz1
1ss1
se1ZGGZ
−−−
−−−−−−−
−−
−−
−−++−−=⎥
⎦
⎤⎢⎣
⎡+
−=
=⎥⎦
⎤⎢⎣
⎡+
−=⎥⎦
⎤⎢⎣
⎡+
−=
Esta transformada foi obtida através de tabela de transformação. Item 13. fazendo a = 1. Agora substituindo os valores de T = 1 e simplificando, obtêm-se,
[ ] ( )( )11
21
pZOH z3679.01z1z2642.0z3679.0)z(GGGZ −−
−−
−−+
==
Como a função de transferência em malha fechada é dada por,
( )( )
( )( )21
21
11
21
11
21
z6321.0z1z2642.0z3679.0
z3679.01z1z2642.0z3679.011
z3679.01z1z2642.0z3679.01
)z(KG1)z(KG
)z(R)z(C
−−
−−
−−
−−
−−
−−
+−+
=
−−+
+
−−+
=+
=
Então, calculando as raízes do denominador, que são os pólos, encontra-se, 6181.0j5.0z 2,1 ±=
Pegando o valor absoluto,
( ) ( ) 7950.06181.05.0z 222,1 =+=
Como o valor é menor que 1, significa que o sistema é assintoticamente estável.
4.3 Resposta Transiente Algumas aplicações de controle envolvem a melhora da resposta transitória do sistema segundo alguns critérios. A resposta transitória aparece na resposta do sistema quando ocorre alguma mudança de excitação, esta mudança pode ser do regime permanente para um outro regime permanente ou simplesmente quando o sistema sai do repouso. As especificações para a resposta transiente envolvem normalmente os seguintes parâmetros apresentados na Figura 4.8,
1. Tempo de atraso td (Delay time) é o tempo requerido para que a resposta do sistema alcance metade da resposta em regime permanente. Este parâmetro está relacionado com a velocidade de resposta do sistema.
2. Tempo de subida tr (Rise Time) é o tempo requerido para que a resposta do
sistema suba de 10% para 90% ou de 5% para 95% da resposta em regime permanente. Observe que se um sistema possui uma constante de tempo baixa, isto é, ele demore bastante para responder a uma mudança de
49
excitação, mas ocorre uma subida rápida, o tr será pequeno ao passo que o td será grande.
3. Tempo de pico tp (Peak Time) é o tempo requerido para que a resposta do
sistema atinja o primeiro pico de sobresinal.
4. Máximo sobresinal Mp (Maximun Overshoot) é o pico máximo de sinal acima da referência a ser atingida, isto é, se a referência for a resposta ao degrau, é o pico acima da amplitude 1. Por ser um fator que depende da excitação, costuma-se utilizar um percentual de sobresinal definido como,
%100)(c
)(c)t(calsinsobredemporcentage ×∞
∞−=
5. Tempo de estabilização ts (Settling Time) é o tempo necessário para a resposta do sistema alcance e permaneça dentro de uma porcentagem da resposta em regime permanente, usualmente 2%.
Figura 4.8: Resposta ao degrau de um sistema com os parâmetros de projeto.
Observe que nem todas as especificações são aplicadas a todos os sistemas, isto é, se um sistema for superamortecido ou se for um sistema de primeira ordem ou se todas as raízes forem puramente reais negativas, não ocorrerá o sobre sinal e nem o tempo de pico.
4.4 Método de Projeto baseado no lugar das raízes O método de projeto de controladores baseado no lugar das raízes é baseado no fato que a resposta do sistema é baseada nos pólos dominantes do sistema em malha fechada. O modo mais simples de alocá-los é utilizar um controlador proporcional na forma apresentada na Figura 4.9.
50
Figura 4.9: Sistema de malha fechada com controlador proporcional.
O sistema em malha fechada possui a resposta dada por,
)z(KG1)z(KG
)z(R)z(C
+=
onde K representa o ganho do controlador proporcional. O denominador ou equação característica é dado por,
0)z(KG1 =+ Que pode ser reescrita como,
( )( ) ( )( )( ) ( ) 0
pzpzpzzzzzzzK1
n21
m21 =−−−−−−
+L
L
O método do lugar das raízes é baseado em dar valores para K na equação cima e encontrar os pólos correspondentes desejados. Interessante notar que,
( )( ) ( )( )( ) ( ) K
1pzpzpzzzzzzz
n21
m21 =−−−−−−
L
L
Exemplo 4.2: Supondo que o sistema seja dado por,
[ ] T
Ts
pZOH eze1
1s1
se1ZGGZ −
−−
−−
=⎥⎦
⎤⎢⎣
⎡+
−=
E o controlador seja na forma integral dada por,
1zzK
z1K)z(G 1D −
=−
= −
Investigar a influencia do ganho K e do tempo de amostragem T para a estabilidade do sistema. Supondo que T = 0.5s, 1s e 2s. Solução: A função de transferência em malha fechada é dada por,
[ ] T
T
PZOHD eze1
1zzKGGZ)z(G)z(G −
−
−−
−==
Então, ( )
( )[ ] TTT2
T
eze1e1Kzze1K
)z(G1)z(G
)z(R)z(C
−−−
−
+−−−+−
=+
=
Substituindo o valor de T = 0.5s, Programa feito em Matlab
clear all;close all;clc % tempo de amostragem T = 0.5; % Definição da planta num=[(1-exp(-T)) 0]; den=conv([1 -1],[1 -exp(-T)]);
51
% Empacotando sys=tf(num,den,T) % aplicação do método do lugar das raízes rlocus(sys);zgrid
Transfer function: 0.3935 z ---------------------- z^2 - 1.607 z + 0.6065 Sampling time: 0.5
Transfer function: 0.6321 z ---------------------- z^2 - 1.368 z + 0.3679 Sampling time: 1
Transfer function: 0.8647 z ---------------------- z^2 - 1.135 z + 0.1353 Sampling time: 2
Figura 4.10: Lugar das raízes para T = 0.5s
52
Figura 4.11: Lugar das raízes para T = 1s
Figura 4.12: Lugar das raízes para T = 2s
Exemplo 4.3: Observar a influência da variação dos parâmetros do controlador PID para o seguinte sistema,
( ) )5s(1s1)s(G p ++
=
Aplicando a transformada na convolução da planta com o ZOH,
53
[ ] ( )( ) ( ) ( )( )
( ) ( ) ( )
( ) ( ) ( ) ( )( )( ) ( )( ) ( )( )
( )( )( ) ( )
( )( )1T51T
2TT5T61T5T
1T51T
1T11T511T1T5
1T51T11
1
1s
pZOH
ze1ze120zee5e4zee54ze1ze120
ze1z1ze1z15ze1ze14
ze1201
ze141
z151z1
5s201
1s41
s51Zz1
5s1ss1Zz1
5s1ss1
se1ZGGZ
−−−−
−−−−−−−
−−−−
−−−−−−−−−−
−−−−−−
−
−−
−−+−++−
=
−−−−+−−−−−
=
⎥⎦
⎤⎢⎣
⎡−
+−
−−
−=
=⎥⎦
⎤⎢⎣
⎡+
++
−−=
=⎥⎦
⎤⎢⎣
⎡++
−=⎥⎦
⎤⎢⎣
⎡++
−=
O primeiro passo é calcular
clear all;close all;clc % Planta contínua num=1; % numerador den=[conv([1 1],[1 5])]; % denominador Gp=tf(num,den) % empacotando % Planta discreta T=0.1; % tempo de amostragem b1=(4-5*exp(-T)+exp(-5*T)); b2=(4*exp(-6*T)-5*exp(-5*T)+exp(-T)); numd=[0 b1 b2]/20; % numerador a1=-exp(-T)-exp(-5*T); a2=exp(-6*T); dend=[1 a1 a2]; % denominador Gz=tf(numd,dend,T) % empacotando figure('Color',[1 1 1]) step(Gp,Gz) legend('Contínuo','Discreto') % diagrama de bode para escolher Kp figure;rlocus(Gz);zgrid;set(gcf,'Color',[1 1 1])
0 1 2 3 4 5 60
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
0.2Step Response
Time (sec)
Am
plitu
de
ContínuoDiscreto
Root Locus
Real Axis
Imag
inar
y A
xis
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.10.2
0.30.40.50.60.70.80.9
System: GzGain: 0
Pole: 0.607Damping: 1
Overshoot (%): 0Frequency (rad/sec): 5
System: GzGain: 10Pole: 0.734 + 0.206iDamping: 0.705Overshoot (%): 4.38Frequency (rad/sec): 3.
System: GzGain: 50Pole: 0.648 - 0.538iDamping: 0.241Overshoot (%): 45.8Frequency (rad/sec): 7.14
54
Figura 4.13: Resposta do sistema considerando tempo contínuo e discreto e lugar das raízes
Calculando a resposta do sistema com o controlador proporcional,
% fechando a malha - Controle porporcional Kp Sys1=feedback(2*Gz,1) % ganho Kp = 2 Sys2=feedback(10*Gz,1) % ganho Kp = 10 Sys3=feedback(50*Gz,1) % ganho Kp = 50 figure('Color',[1 1 1]);step(Sys1,Sys2,Sys3) legend('K_P = 2','K_P = 10','K_P = 50')
Figura 4.14: Respostadas do sistema controlado para vários valores de Kp
55
% Controle PD % Kp = 50 , Kd = 0 Kp=50;Kd=0;Ki=0; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0]; GPIDz=tf(num,den,T) sysMA=GPIDz*Gz sysMF1=feedback(sysMA,1) % Kp = 50 , Kd = 10 Kp=50;Kd=10;Ki=0; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0]; GPIDz=tf(num,den,T) sysMA=GPIDz*Gz sysMF2=feedback(sysMA,1) % Kp = 50 , Kd = 50 Kp=50;Kd=50;Ki=0; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd]; den=[1 -1 0]; GPIDz=tf(num,den,T) sysMA=GPIDz*Gz sysMF3=feedback(sysMA,1) figure('Color',[1 1 1]) step(sysMF1, sysMF2, sysMF3,3) legend('K_D = 0','K_D = 10','K_D = 50')
% Controle PID % Kp = 50 , Kd = 50 , Ki = 0 Kp=50;Kd=50;Ki=0; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0]; GPIDz=tf(num,den,T) sysMA=GPIDz*Gz sysMF4=feedback(sysMA,1) % Kp = 50 , Kd = 50 , Ki = 2 Kp=50;Kd=50;Ki=2; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0]; GPIDz=tf(num,den,T) sysMA= GPIDz*Gz sysMF5=feedback(sysMA,1) % Kp = 50 , Kd = 50 , Ki = 10 Kp=50;Kd=50;Ki=10; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0]; GPIDz=tf(num,den,T) sysMA=GPIDz*Gz sysMF6=feedback(sysMA,1) % Kp = 50 , Kd = 50 , Ki = 40 Kp=50;Kd=50;Ki=40; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd]; den=[1 -1 0]; GPIDz=tf(num,den,T) sysMA=GPIDz*Gz sysMF7=feedback(sysMA,1) figure('Color',[1 1 1]) step(sysMF4,sysMF5,sysMF6,sysMF7,5) legend('K_I = 0','K_I = 2','K_I = 10','K_I = 40')
Figura 4.15: Respostadas do sistema controlado para vários valores de Kd, mantendo o
valor de Kp = 50.
56
Figura 4.16: Respostadas do sistema controlado para vários valores de Ki, mantendo os
valores de Kp = 50 e Kd = 50.
4.5 Controlador Tipo “Dead Beat” Uma resposta tipo “Dead Beat ” é aquela em que o sistema apresenta o menor tempo de estabilização possível, sem erro estacionário e sem apresentar oscilações durante o transiente. Então se um sistema de controle em malha fechada for projetado para que a resposta do sistema de malha fechada apresente uma resposta dead beat, o controlador que gerou esta resposta recebe o nome de controlador dead beat.
Figura 4.17: Diagrama de blocos de um sistema de controle utilizando controlador Dead
Beat Supondo o sistema de controle em malha fechada com o apresentado na Figura 4.17, cuja malha fechada é dada por,
)z(G)z(G1)z(G)z(G
)z(R)z(C
D
D
+=
Para que o sistema em malha fechada tenha uma resposta dead beat, necessariamente a malha fechada deve ser na forma,
NN
1N1
N0N
N1
10 zazaza
zazaa)z(F)z(R)z(C L
L++
=++==−
−−
onde N deve ser maior ou igual a ordem do sistema G(z). Observe que F(z) não deve conter potencias positivas de z, pois significaria que o sistema seria não causal.
57
4.6 Projeto de Controladores PID Os controladores PIDs são os controladores mais utilizados na prática devido a sua fácil implementação e ajuste. Aqui são apresentados os métodos Ziegler-Nichols de ajuste de controladores PID. Deve ser lembrado que o PID Contínuo é dado por,
TisKsTKsTTK
sT1sT1K
sKsKsK
sKsKK)s(PID
cic2
idc
idc
Ip2
dIdp
++=⎟⎟
⎠
⎞⎜⎜⎝
⎛++=
++=++=
Enquanto que o PID discreto é dado por,
( ) ( )1D1
IP
1d1
1
ic z1K
z1K
Kz1TT
z1z1
T2T1K)z(PID −
−−
−
−
−+−
+=⎟⎟⎠
⎞⎜⎜⎝
⎛−+
−+
+=
4.6.1 Ziegler-Nichols malha fechada Supondo um controlador PID na forma,
Figura 4.18: Controlador PID
Para aplicar o método Ziegler-Nichols de malha fechada deve-se primeiro encontrar qual o ganho proporcional Kp, com o ganho integral Ki e o ganho Kd iguais a zero, que torna o sistema de malha fechada marginalmente estável, isto é, pelo menos um dos pólos do sistema de malha fechada deve ser puramente imaginário no plano complexo S, que no plano discreto Z significa tem módulo 1 ou estar em cima do círculo de raio unitário. Este ganho Kp passa a ser chamado de ganho crítico Kcr. O sistema apresentado na Figura 4.18, fazendo o PID somente Kp, o sistema de malha fechada é dado por,
Kp)z(G1Kp)z(G
)z(R)z(Y
+=
Para o calculo do ganho crítico, pelo menos um dos pólos da equação acima deve possuir parte real igual a zero.
58
Root Locus
Real Axis
Imag
inar
y A
xis
-3 -2 -1 0 1 2 3-5
-4
-3
-2
-1
0
1
2
3
4
5
System: GsGain: 4.5Pole: 0.00145 + 3.63iDamping: -0.0004Overshoot (%): 100Frequency (rad/sec): 3.63
System: GsGain: 4.47Pole: -0.00302 - 3.63iDamping: 0.000832Overshoot (%): 99.7Frequency (rad/sec): 3.63
Root Locus
Real Axis
Imag
inar
y A
xis
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T
0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.10.2
0.30.40.50.60.70.80.9
System: GzGain: 3.35
Pole: 0.807 + 0.59iDamping: 0.000454
Overshoot (%): 99.9Frequency (rad/sec): 3.15
System: GzGain: 3.35
Pole: 0.807 - 0.59iDamping: 0.000454
Overshoot (%): 99.9Frequency (rad/sec): 3.15
Figura 4.19: Lugar das Raízes no plano complexo S e no plano discreto Z
O segundo passo consiste em traçar a resposta ao degrau do sistema realimentado pelo ganho crítico Kcr. Desta resposta é retirado o tempo de oscilação Tu.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
0.5
1
1.5Step Response
Time (sec)
Am
plitu
de
Tempo deOscilação Tu
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0
0.5
1
1.5Step Response
Time (sec)
Am
plitu
de
Tempo deoscilação Tu
Figura 4.20: Resposta ao degrau do sistema realimentado com Kcr
Agora os parâmetros do controlador podem ser ajustados de acordo com a tabela abaixo. Tabela 4-1: Ajustes do controlador PID para o método Ziegler-Nichols malha fechada.
Tipo do controlador Kc Ti Td P 0,5 Kcr -- -- PI 0,45.Kcr Tu/1,2 ---
PID 0,6.Kcr 0,5Tu 0,125Tu
4.6.2 Ziegler-Nichols Malha Aberta O método Ziegler-Nichols em malha aberta pode ser aplicado quando a curva de resposta ao degrau unitário de entrada apresentar o aspecto de um S. Essa curva de resposta ao degrau unitário pode ser gerada experimentalmente ou a partir de uma simulação dinâmica da planta.
59
Figura 4.21: Resposta ao degrau unitário
A curva com o formato em S pode ser caracterizada por duas constantes, o atraso L e a constante de tempo T. O atraso e a constante de tempo são determinados desenhando-se uma linha tangente no ponto de inflexão da curva com o formato de S e determinando-se a interseção da linha tangente com o eixo do tempo. O ajuste do controlador PID, segundo este método, introduz no sistema dois zeros em -1/L se o projeto for feito em tempo contínuo. Tabela 4-2: Ajustes do controlador PID para o método Ziegler-Nichols malha aberta.
Tipo de controlador Kc Ti Td P T/L ∞ 0 PI 0,9T/L L/0,3 0
PID 1,2T/L 2L 0,5L
4.7 Exercícios Resolvidos
4.8 Exercícios Propostos Exercício 4.1: Para o sistema abaixo, quais seriam os pólos em tempo discreto?
100s10s100)s(G 2 ++
=
Exercício 4.2: Para o Exemplo 4.1, encontrar quais os valores que K que tornam o sistema em malha fechada um sistema assintoticamente estável, marginalmente estável e instável. Exercício 4.3: Para o sistema em tempo contínuo abaixo, encontrar um ajuste para o controlador PID para o sistema em tempo discreto utilizando os métodos Ziegle-Nichols de malha aberta e malha fechada e fazer ajustes finos para,
60
( )( )( )3s2s1s2)s(G
+++= e
1s301)s(H+
=
Para resolver este problema deve-se assumir que há um amostrador em X(s) e um ZOH em U(s).
61
Capítulo 5
5 Formulação por Matrizes de Estado A representação em forma de Matrizes de Estado é um das principais ferramentas de simulação de sistemas, e elas são formuladas diretamente no domínio em tempo contínuo ou discreto e não envolvem transformações para Laplace ou transformada Z.
5.1 Introdução à formulação de estado Considerando um sistema massa-mola-amortecedor na forma,
)t(u)t(ky)t(yc)t(ym =++ &&& Que pode ser reescrito como,
m)t(u)t(y)t(y2)t(y 2
nn =ω+ζω+ &&&
Definindo uma variável como, )t(y)t(x)t(y)t(x 11 && =⇒=
Definindo uma outra variável como, )t(y)t(x)t(x)t(y)t(x 212 &&&&& =⇒==
Substituindo na equação original e deixando somente uma variável com a derivada temporal, então,
m)t(u)t(x)t(x2)t(x 1
2n2n2 =ω+ζω+&
Agora, escrevendo um sistema na seguinte forma,
)t(um/1
0)t(x)t(x
201
)t(x)t(x
2
1
n2n2
1
⎭⎬⎫
⎩⎨⎧
+⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡ζω−ω−
=⎭⎬⎫
⎩⎨⎧&
&
Ainda está faltando a resposta y(t) do sistema, que é dada por,
[ ] { } )t(u0)t(x)t(x
01)t(y2
1 +⎭⎬⎫
⎩⎨⎧
=
Que pode ser escrito da seguinte maneira,
)t(Du)t(Cx)t(y)t(Bu)t(Ax)t(x
+=+=&
A forma acima é conhecida como forma de estado. Como observado, a transformação para a formulação de espaço de estados consistiu em transformar uma equação de segunda ordem em duas equações de primeira ordem. Generalizando, a transformação de espaço de estados consiste em transformar um sistema de equações de ordem n para um sistema de primeira ordem de 2n equações, tornando assim, mais simples a sua solução.
62
5.2 Nomenclatura de Espaço de Estados Vetor de estado x(t) é o vetor de ordem n que contém todos os estados. Vetor de saída y(t) é o vetor de ordem m que contém todas as respostas. Vetor de entrada u(t) é o vetor de ordem r que contém todas as entradas. Matriz de estado A é a matriz de ordem n×n que contém os autovalores e os autovetores do sistema. Matriz de entrada B é a matriz de ordem n×r da entrada. Matriz de saída C é a matriz de ordem m×n da saída. Matriz de transmissão direta D é matriz de ordem m×r que correlaciona diretamente a entrada com a saída. Então,
{ } [ ] { } [ ] { }{ } [ ] { } [ ] { } 1rrm1nnm1m
1rrn1nnn1n
)t(uD)t(xC)t(y)t(uB)t(xA)t(x
×××××
×××××
+=+=&
A representação em diagramas de bloco do sistema acima é dada por,
Figura 5.1: Representação em diagrama de blocos para tempo contínuo.
5.3 Representação de Espaço de Estados discretos A formulação de espaço de estados discretos é dado por,
)k(Du)k(Cx)k(y)k(Hu)k(Gx)1k(x
+=+=+
Nota-se que as matrizes C e D não mudaram, significando que são as mesmas matrizes para sistemas em tempo contínuo. Agora, supondo um sistema discreto cuja função de transferência é dada por,
nn
11
nn
110
zaza1zbzbb
)z(U)z(Y
−−
−−
++++++
=L
L
Esta FT pode ser representada de várias maneiras em espaço de estados, pois a formulação de estado não é única.
5.3.1 Forma Canônica Controlável
63
A forma canônica controlável é dada por,
)k(u
1
000
)k(x)k(x
)k(x)k(x
aaaa1000
01000010
)1k(x)1k(x
)1k(x)1k(x
n
1n
2
1
12n1nnn
1n
2
1
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
+
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−−−
=
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
++
++
−
−−
− M
M
L
L
MOMMM
L
L
M
[ ] )k(ub
)k(x
)k(x)k(x
babbabbab)k(y 0
n
2
1
01101n1n0nn +
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
−−−= −− ML
Se a matriz G for uma matriz de posto cheio, isto é, o determinante é diferente de zero, o sistema é controlável, caso contrário, significa que pelo menos 1 dos estados não é controlável. A controlabilidade significa que o sistema pode ser alterado de qualquer estado para qualquer estado em um período de tempo finito.
5.3.2 Forma Canônica Observável A forma canônica observável é dada por,
)k(u
babbab
babbab
)k(x)k(x
)k(x)k(x
a100a000
a001a000
)1k(x)1k(x
)1k(x)1k(x
011
022
01n1n
0nn
n
1n
2
1
1
2
1n
n
n
1n
2
1
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
−−
+
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
−−
=
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
++
++
−−
−
−
−
MM
L
L
MOMMM
L
L
M
[ ] )k(ub
)k(x
)k(x)k(x
100)k(y 0
n
2
1
+
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
=M
L
Para o sistema ser completamente observável, a matriz G deve ser uma matriz de posto cheio. A observabilidade significa que todos os estados do sistema podem ser observados ou medidos.
5.3.3 Forma Canônica Diagonal Expandindo a FT em frações parciais tal que,
n
n
2
2
1
10 pz
cpz
cpz
cb)z(U)z(Y
−+
−+
−+= L
Então, a forma canônica diagonal é dada por,
64
)k(u
1
11
)k(x
)k(x)k(x
p000
0p000p
)1k(x
)1k(x)1k(x
n
2
1
n
2
1
n
2
1
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
+
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
+
++
MM
L
MOM
L
L
M
[ ] )k(ub
)k(x
)k(x)k(x
ccc)k(y 0
n
2
1
n21 +
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
=M
L
onde pi representa os pólos do sistema.
5.3.4 Forma Canônica de Jordan A forma canônica de jordan é usada quando se deseja representar o sistema na forma diagonal mas existem pólos repetidos. Supondo que o pólo p1 é repetido m vezes, então,
)k(u
1
1__1
00
)k(x
)k(x_______
)k(x
)k(x)k(x
p0
0p]0[
]0[
p000
01p0001p
)1k(x
)1k(x_______
)1k(x
)1k(x)1k(x
n
1m
m
2
1
n
1m
1
1
1
n
1m
m
2
1
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
+
⎪⎪⎪⎪⎪⎪
⎭
⎪⎪⎪⎪⎪⎪
⎬
⎫
⎪⎪⎪⎪⎪⎪
⎩
⎪⎪⎪⎪⎪⎪
⎨
⎧
⎥⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
=
⎪⎪⎪⎪⎪⎪
⎭
⎪⎪⎪⎪⎪⎪
⎬
⎫
⎪⎪⎪⎪⎪⎪
⎩
⎪⎪⎪⎪⎪⎪
⎨
⎧
+
+
+
++
+++
M
M
M
M
L
MOM
LL
MOMMM
L
L
M
M
[ ] )k(ub
)k(x
)k(x)k(x
ccc)k(y 0
n
2
1
n21 +
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
=M
L
5.3.5 Não unicidade das matrizes de estado A representação de estado não é única, isto é, para um mesmo sistema na forma de função de transferência pode haver várias representações de estado. Por exemplo, supondo que um sistema seja observável e controlável, definições que serão apresentada mais à frente, então haverá uma representação na forma canônica controlável e observável. Para exemplificar, supondo o sistema na seguinte forma de estado,
)k(Du)k(Cx)k(y)k(Hu)k(Gx)1k(x
+=+=+
Supondo uma transformação tal que,
65
)k(xP)k(x = onde a matriz P é de ordem n×n, mesma ordem da matriz G. Então,
)k(Du)k(xCP)k(y)k(Hu)k(xGP)1k(xP
+=+=+
Que pode ser reescrito como,
)k(Du)k(xCP)k(y)k(HuP)k(xGPP)1k(x 11
+=+=+ −−
Agora definindo, GPPG 1−= , CPC = e HPH 1−=
Então,
)k(Du)k(xC)k(y
)k(uH)k(xG)1k(x
+=
+=+
Que é exatamente da mesma forma que o sistema original. Se a matriz P for a matriz dos autovetores da matriz G, então o sistema será diagonalizado, caso isso não seja possível, a matriz resultante será a matriz de Jordan.
5.4 Simulando um sistema na forma de estado discreto Nesta parte, supõe-se que o sistema seja linear e invariante no tempo na forma,
)k(Du)k(Cx)k(y)k(Hu)k(Gx)1k(x
+=+=+
Pegando apenas os estados do sistema, para o instante inicial têm-se, )0(Hu)0(Gx)1(x +=
Para o instante seguinte, ( ) )1(Hu)0(GHu)0(xG)1(Hu)0(Hu)0(GxG)1(Hu)1(Gx)2(x 2 ++=++=+=
Para o instante seguinte, ( )
)2(Hu)1(GHu)0(HuG)0(xG)2(Hu)1(Hu)0(GHu)0(xGG)2(Hu)2(Gx)3(x
23
2
+++=
=+++=+=
Fazendo isso para k instantes,
∑−
=
−−+=1k
0j
1jkk )j(HuG)0(xG)k(x k = 1, 2, 3 ...
Substituindo este resultado em y(k),
)k(Du)j(HuG)0(xGC)k(y1k
0j
1jkk +⎟⎟⎠
⎞⎜⎜⎝
⎛+= ∑
−
=
−− k = 1, 2, 3 ...
5.5 Passando de Matrizes de Estado para FT Supõe-se o sistema na forma,
)k(Du)k(Cx)k(y)k(Hu)k(Gx)1k(x
+=+=+
Aplicando transformada Z, obtém-se,
66
)z(DU)z(CX)z(Y)z(HU)z(GX)0(zx)z(zX
+=+=−
Supondo condições iniciais nulas, ( ) ( ) )z(HUGzI)z(X)z(HU)z(XGzI)z(HU)z(GX)z(zX 1−−=⇒=−⇒+=
Substituindo em Y(z), ( ) ( )[ ] )z(UDHGzIC)z(DU)z(HUGzIC)z(Y 11 +−=+−= −−
Como a função de transferência pulsada é a relação dada por Y(z)/U(z),
( ) DHGzIC)z(U)z(Y 1 +−= −
Observe que se Y(z)/U(z) é uma matriz m×r.
5.6 Discretização de Matrizes de Estado Contínuas Em se tratando de sistemas em tempo discreto, pode-se converter diretamente de matrizes de estado contínuas para matrizes de estado discretas. Porem é necessário fazer uma revisão de matrizes antes de mostrar o processo de discretização. Em se tratando de matrizes há alguns cuidados a serem tomados e algumas definições a serem compreendidas. Começando com,
∑∞
=
=+++++=0k
kkkk22At
!ktAtA
!k1tA
!21AtIe LL
Diferenciando esta solução em relação ao tempo, para isso a derivada é feita termo a termo, encontra-se,
AeAeedtd AtAtAt ==
Agora, três relações importantes, Iee AtAt =−
( ) BtAttBA eee =+ se AB = BA ( ) BtAttBA eee ≠+ se AB ≠ BA
Agora, obtendo a resposta para matrizes de estado contínuas, isto é, )t(Bu)t(Ax)t(x +=&
Que pode ser reescrita como, )t(Bu)t(Ax)t(x =−&
Agora pré-multiplicando por e-At,
[ ] ( ) )t(Bue)t(xedtd)t(Ax)t(xe AtAtAt −−− ==−&
Integrando1 de 0 a t,
∫ ττ=− τ−−t
0
AAt d)(Bue)0(x)t(xe
Que pode ser rearranjada como, ( )∫ ττ+= τ−
t
0
tAAt d)(Bue)0(xe)t(x
A equação acima representa a solução para um sistema na forma de estado contínuo. Para a solução completa, basta substituir os estados x(t) em,
1 Deve ser lembrado que a integral da derivada é a própria função aplicada os limites de integração.
67
)t(Du)t(Cx)t(y += Para fazer o mesmo para um sistema discreto, tem-se que,
)kT(Hu)kT(Gx)T)1k((x)t(Bu)t(Ax)t(x +=+⇒+=& Para que possa ser utilizada a solução de um sistema contínuo para encontrar a solução de um sistema discreto, assume-se que a entrada u(t) entre um período e outro de amostragem é constante, isto é, que há um ZOH, então,
)kT(u)t(u = kT ≤ t < kT+T Então, a solução,
( )∫ ττ+= τ−t
0
tAAt d)(Bue)0(xe)t(x
Para o tempo kT,
∫ ττ+= τ−kT
0
AAkTAkT d)(Buee)0(xe)kT(x
Para o tempo (k+1)T, ( ) ( )( )
( )
∫+
τ−++ ττ+=+T1k
0
AT1kAT1kA d)(Buee)0(xe)T)1k((x
Agora fazendo,
( ) ( )( )( )
( )⎥⎦
⎤⎢⎣
⎡ττ+−ττ+=−+ ∫∫ τ−
+τ−++
kT
0
kTAAkTATT1k
0
T1kAT1kAAT d)(Bue)0(xeed)(Bue)0(xe)kT(xe)T)1k((x
Simplificando2,
( )( ) ( )( )
( )( )
∫
∫∫+
τ−+
τ−+
τ−++
ττ+=
ττ−ττ+−+=+
T1k
kT
AT1kAAT
kT
0
AAkTATT1k
0
AT1kAAkTATT1kAAT
d)(Buee)kT(xe
d)(Bueeed)(Buee)0(xeee)kT(xe)T)1k((x
Supondo agora o ZOH, então, o tempo entre kT e (k+1)T pode ser substituído por 0 e T dentro da integral, pois o que vai variar é apenas u(τ) que é considerado constante. Então,
∫ ττ+=+ τ−T
0
AATAT d)(Buee)kT(xe)T)1k((x
Aplicando a transformação de variável onde λ = T-τ,
∫ λλ+=+ λT
0
AAT d)(Bue)kT(xe)T)1k((x
Que representa a solução da equação de estado discreta na forma, )kT(Hu)kT(Gx)T)1k((x +=+
Que neste caso, tem-se que para encontrar estas matrizes discretas, necessariamente,
ATeG = e BdeHT
0
A⎟⎟⎠
⎞⎜⎜⎝
⎛λ= ∫ λ
Pelas equações acima, verifica-se claramente que as matrizes discretas são dependentes do tempo de amostragem.
2 Deve ser lembrado que ( )T1kAAkTAT eee +=
68
A solução para y(kT) é dada simplesmente por, )kT(Du)kT(Cx)kT(y +=
Se a matriz A for não singular, então
( ) ( ) BAIeBIeABdeH 1ATAT1T
0
A −−λ −=−=⎟⎟⎠
⎞⎜⎜⎝
⎛λ= ∫
Exemplo 5.1: Considerando o sistema abaixo, encontrar a representação de estado discreto e a expressão para função de transferência discreta para T = 1 s.
212
22 asas
bs2s
1)2s(s
1)s(G++
=+
=+
=
Solução: O primeiro passo é encontrar uma representação de estado para o sistema, utilizando a forma canônica controlável,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
=⎭⎬⎫
⎩⎨⎧
)t(x)t(x
01)t(y
)k(u10
)t(x)t(x
2010
)t(x)t(x
2
1
2
1
2
1
&
&
Como foi visto, para as matrizes discretas têm-se3,
( )⎥⎦
⎤⎢⎣
⎡=
⎥⎥
⎦
⎤
⎢⎢
⎣
⎡ −==−
−
1353.004323.01
e0
e1211eG
T2
T2AT
Outra forma de encontrar a matriz G é fazendo,
[ ] ( ) ( )
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
+
+=−= −
2s10
2ss1
s1
AsIeL 1At
Cuja transformada de laplace inversa é dada por,
( ) ( )⎥⎥
⎦
⎤
⎢⎢
⎣
⎡ −=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
+
+=−
−−
t2
t21At
e0
e1211
2s10
2ss1
s1
Le
Então,
( )
( ) ( )⎥⎦
⎤⎢⎣
⎡=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
⎟⎟⎠
⎞⎜⎜⎝
⎛ −+
=⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
⎟⎟⎠
⎞⎜⎜⎝
⎛ −+
=
=⎥⎦
⎤⎢⎣
⎡
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛λ
⎥⎥
⎦
⎤
⎢⎢
⎣
⎡ −=⎟⎟⎠
⎞⎜⎜⎝
⎛λ=
−
−
−
−
λ−
λ−λ ∫∫
4323.02838.0
e121
21eT
21
10
e1210
21eT
21T
10
de0
e1211BdeH
T2
T2
T2
T2
T
0 2
2T
0
A
Desta forma, o sistema discreto na forma de matrizes de estado é dado por,
3 ∑
∞
=
=+++++=0k
kkkk22At
!ktAtA
!k1tA
!21AtIe LL
69
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡=
⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
01)k(y
)k(u4323.02838.0
)k(x)k(x
1353.004323.01
)1k(x)1k(x
2
1
2
1
2
1
Para a representação em FT discreta,
( )
[ ]1353.0z1353.1z
1485.0z2838.004323.02838.0
1353.004323.01
1001
z01
DHGzIC)z(G)z(U)z(Y
2
1
1
−−+
=+⎥⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛⎥⎦
⎤⎢⎣
⎡−⎥
⎦
⎤⎢⎣
⎡=
+−==
−
−
O mesmo problema pode ser resolvido utilizando o Matlab,
clear all;close all;clc % Planta contínua num=1; % numerador den=[conv([0 0 1],[1 2 0])]; % denominador % Transformando para matrizes de Estado [A,B,C,D]=tf2ss(num,den) % discretizando as matrizes T=1; [G,H]=c2d(A,B,T) % voltando para TF discreta [numd,dend]=ss2tf(G,H,C,D)
Observe que neste caso, as matrizes de estado não estão na forma canônica, mas o resultado em Função de Transferência deve ser exatamente o mesmo.
5.7 Exercícios Resolvidos Exemplo 5.2: Para o sistema abaixo, converter para matrizes de estado discretas utilizando o Matlab,
10s6325.10s6325.1s2s)s(G 23 +++
+=
clear all;close all;clc % denifindo os dados da planta T=0.1; num=[1 2]; den=conv([1 2*0.1*sqrt(10) 10],[1 1]); % Funções de Transferencia Gs=tf(num,den) % planta contínua Gz=c2d(Gs,T) % planta discreta % Matrizes de Estado [A,B,C,D]=tf2ss(num,den)
70
MEs=ss(A,B,C,D) % empacotando MEz=c2d(MEs,T) % Matrizes de estado discreta
Exemplo 5.3: Para uma suspensão ativa representando ¼ de veículo, escrever as matrizes de estado contínuas supondo que o distúrbio da via seja w(t).
Neste caso, as matrizes que regem o comportamento dinâmico do sistema são dadas por, Massa Suspensa,
( ) ( ) )t(uxxkxxcxm NSSNSSSS =−+−+ &&&& Masssa Não-Suspensa,
( ) ( ) )t(u)t(wkxkxxkxxcxm PNPSNSSNSNN −=+−+−+ &&&& Que na forma matricial fica,
⎭⎬⎫
⎩⎨⎧
−=
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡+−
−+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
−+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡)t(u)t(wk
)t(uxx
kkkkk
xx
cccc
xx
m00m
pP
S
PSS
SS
P
S
SS
SS
P
S
N
S
&
&
&&
&&
Este caso representa um sistema MIMO, duas entradas e duas saídas. Definindo as variáveis de estado iniciando pelos deslocamentos,
S1S1 xxxx && =⇒= e N2N2 xxxx && =⇒= Para as velocidades,
S13 xxx &&& == e N24 xxx &&& == Com as definições acima, as equações de estado são dadas por, 31 xx =& 42 xx =&
( ) ( )S
21S
S43
S
S3 m
)t(uxxmk
xxmc
x +−−−−=&
( ) ( ) )t(um1)t(w
mkx
mkxx
mk
xxmc
xNN
P2
N
P12
N
S34
N
S4 −+−−−−−=&
Que na forma matricial fica,
( ) ⎭⎬⎫
⎩⎨⎧
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−
+
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−+
−
−−=
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
wu
mk
m1
0m1
0000
xxxx
mc
mc
mkk
mk
mc
mc
mk
mk
10000100
xxxx
N
P
N
S
4
3
2
1
N
S
N
S
N
PS
N
S
S
S
S
S
S
S
S
S
4
3
2
1
&
&
&
&
De forma geral, se for sempres assumido que o vetor de estado se inicia com deslocamentos e depois as velocidades, as matrizes de estado podem ser dadas a partir das matrizes dinâmicas como,
71
)}t(F{)}t(X]{K[)}t(X]{C[)}t(X]{M[ =++ &&& Sendo que o vetor de estado,
{ }⎭⎬⎫
⎩⎨⎧
=)t(X)t(X
)t(X &
E as matrizes de estado,
{ } { } { }UF]M[
]0[X
C]M[K]M[I]0[
X 111 ⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡−−
= −−−&
A resposta do sistema deve ser dado pelo que se deseja medir, supondo que seja necessário medir os deslocamentos e velocidades,
⎭⎬⎫
⎩⎨⎧
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
+
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
wu
00000000
xxxx
1000010000100001
yyyy
4
3
2
1
4
3
2
1
Caso seje necessário medir apenas o deslocamento da massa suspensa,
{ } [ ] [ ]⎭⎬⎫
⎩⎨⎧
+
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪⎩
⎪⎪⎨
⎧
=wu
00
xxxx
0001y
4
3
2
1
1
Exemplo 5.4:Para o sistema abaixo, encontrar as matrizes de estado.
As equações de movimento na forma matricial são dadas por,
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
+−+−+
=⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
+−−+−
−+
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
33
322
211
3
2
1
323
3212
21
3
2
1
3
2
1
uFuuFuuF
xxx
kkk0kkkk0kk
xxx
m000m000m
&&
&&
&&
Portanto, as matrizes de estado podem ser dadas como,
⎪⎪⎪⎪
⎭
⎪⎪⎪⎪
⎬
⎫
⎪⎪⎪⎪
⎩
⎪⎪⎪⎪
⎨
⎧
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
−
−+
⎪⎪⎪⎪
⎭
⎪⎪⎪⎪
⎬
⎫
⎪⎪⎪⎪
⎩
⎪⎪⎪⎪
⎨
⎧
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
+−
+−
−=
⎪⎪⎪⎪
⎭
⎪⎪⎪⎪
⎬
⎫
⎪⎪⎪⎪
⎩
⎪⎪⎪⎪
⎨
⎧
3
2
1
3
2
1
33
222
111
6
5
4
3
2
1
3
32
3
3
2
3
2
21
2
2
1
2
1
1
6
5
4
3
2
1
uuuFFF
m100
m100
m1
m100
m10
0m1
m100
m1
000000000000000000
xxxxxx
000m
kkmk
0
000mk
mkk
mk
0000mk
mk
100000010000001000
xxxxxx
&
&
&
&
&
&
72
5.8 Exercícios Propostos Exercício 5.1: Para a FT abaixo, escrever a representação em matrizes de estado na forma canônica controlável, observável e diagonal para,
a) ( )( )3s2ss1s)s(G++
+= para T = 0.1 s;
b) 2s5s4s
1)s(G 23 +++= para T = 0.1 s;
Exercício 5.2: Supondo o seguinte sistema dinâmico,
Supondo, m1 = m2 = m3 = 0.5 kg, k1 = k2 = k3 = k4 = 10.000 N/m, c2 = c3 = 50 Ns/m, determinar utilizando o Matlab,
a) Equação de movimento matricial b) Matrizes de estado contínuas; c) Matrizes de estado discretas; d) Freqüências naturais e modos de vibrar; e) Resposta em freqüência, diagrama de bode; f) Resposta ao Impulso contínua e discreta.
Exercício 5.3: (Prova 2007) Considerando o sistema abaixo, escrever a forma canônica controlável e observável,
5.0zz5.0z2)z(G 2 +−
+=
73
Capítulo 6
6 Controlabilidade e Observabilidade
6.1 Introdução A controlabilidade se refere à capacidade do sistema ter seu estado alterado de qualquer estado para qualquer outro estado, de modo geral significa que o sistema pode ser controlado. A observabilidade significa que o sistema pode ter seus estados observados, em outras palavras, o sistema pode ser inteiramente medido, significando que qualquer tipo de informação pode ser conseguida.
6.2 Controlabilidade Um sistema de controle é dito ser de estado completamente controlável se é possível transferir o sistema de um estado qualquer para um outro estado desejável qualquer em um período finito de tempo utilizando uma lei de controle sem restrições. Considerando um sistema em espaço de estados discretos na forma,
)k(Hu)k(Gx)1k(x +=+ Sua solução temporal é dada por,
)T)1k((Hu)T(HuG)0(HuG)0(xG
)j(HuG)0(xG)kT(x
2k1kk
1k
0j
1jkk
−++++=
+=
−−
−
=
−−∑L
k = 1, 2, 3 ...
Esta solução pode ser rearranjada como,
[ ]⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡−−
=− −
)0(u
)2n(u)1n(u
HGGHH)0(xG)n(x 1nn
ML
onde n agora é a dimensão da matriz G. Significando dada uma lei de controle u(k), para alterar o estado do sistema a matriz necessariamente precisa obedecer à seguinte relação,
[ ] nHGGHHposto 1n =−L Esta matriz é conhecida como matriz de controlabilidade. Caso o posto da matriz de controlabilidade seja menor que n, não significa que o sistema é incontrolável, mas significa que pelo menos um dos estados não pode ser controlado, isto é, parte do sistema pode ser controlado e parte não. Dever ser notado que a controlabilidade de estado independe da saída, isto é, a controlabilidade de estado é independente das matrizes C e D.
74
Exemplo 6.1: Verificar se os sistemas abaixo são de estado completamente controláveis.
)k(u32
)k(x)k(x
2001
)1k(x)1k(x
2
1
2
1⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−
−=⎥
⎦
⎤⎢⎣
⎡++
Solução: Construindo a matriz de controlabilidade,
[ ] ⎟⎟⎠
⎞⎜⎜⎝
⎛−−
=⎟⎟⎠
⎞⎜⎜⎝
⎛⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−
−⎥⎦
⎤⎢⎣
⎡=
6322
32
2001
32
GHH
Não é necessário calcular o posto da matriz e controlabilidade, pois é só observar se as linhas são linearmente independentes, neste caso, o posto = 2, então o sistema é completamente controlável.
)k(u02
)k(x)k(x
2001
)1k(x)1k(x
2
1
2
1⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−
−=⎥
⎦
⎤⎢⎣
⎡++
Solução: Construindo a matriz de controlabilidade,
[ ] ⎟⎟⎠
⎞⎜⎜⎝
⎛ −=⎟⎟
⎠
⎞⎜⎜⎝
⎛⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−
−⎥⎦
⎤⎢⎣
⎡=
0022
02
2001
02
GHH
Neste caso, claramente o sistema possui posto = 1, significando que o sistema não é completamente controlável.
⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
+
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
+++++
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
−−
−
=
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
+++++
)k(u)k(u
1200030010
)1k(x)1k(x)1k(x)1k(x)1k(x
5000015000002000012000012
)1k(x)1k(x)1k(x)1k(x)1k(x
2
1
5
4
3
2
1
5
4
3
2
1
Solução: Construindo a matriz de controlabilidade, [ ]HGHGHGGHH 432
Como a solução é mais complicada, utiliza-se o matlab para resolver o problema,
clear all;close all;clc % definindo matriz G G=[-2 1 0 0 0 0 -2 1 0 0 0 0 -2 0 0 0 0 0 -5 1 0 0 0 0 -5] % definindo matriz H H=[0 1;0 0;;3 0;0 0;2 1] % Construindo matriz de Controlabilidade CO=ctrb(G,H) rank(CO)
Como o posto = 5, que a dimensão da matriz G, então o sistema é de estado completamente controlável.
75
⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
+
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
+++++
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
−−
−
=
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
+++++
)k(u)k(u
0012000310
)1k(x)1k(x)1k(x)1k(x)1k(x
5000015000002000012000012
)1k(x)1k(x)1k(x)1k(x)1k(x
2
1
5
4
3
2
1
5
4
3
2
1
Solução: Construindo a matriz de controlabilidade,
[ ]HGHGHGGHH 432 Como a solução é mais complicada, utiliza-se o matlab para resolver o problema,
clear all;close all;clc % definindo matriz G G=[-2 1 0 0 0 0 -2 1 0 0 0 0 -2 0 0 0 0 0 -5 1 0 0 0 0 -5] % definindo matriz H H=[0 1;3 0;0 0;2 1;0 0] % Construindo matriz de Controlabilidade CO=ctrb(G,H) rank(CO)
Como o posto = 3 que é menor que a dimensão da matriz G, então o sistema não é de estado completamente controlável.
6.3 Controlabilidade de saída Em muitas implementações práticas de sistemas de controle, é desejável controlar a saída do sistema e não necessariamente todos os estados do sistema. Neste caso, deve ser lembrado que a resposta do sistema é dada por,
)T)1k((CHu)T(HuCG)0(xCG
)kT(Du)j(HuG)0(xGC)kT(y
1kk
1k
0j
1jkk
−++=
+⎟⎟⎠
⎞⎜⎜⎝
⎛+=
−
−
=
−−∑
L
k = 1, 2, 3 ...
Esta solução pode ser rearranjada como,
[ ]⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡−−
=− −
)0(u
)2n(u)1n(u
HCGCGHCH)0(xCG)n(y 1nn
ML
Significando que para a saída ser completamente controlável, o posto da matriz precisa ser m, que é a dimensão da matriz C, isto é,
[ ] mHCGCGHCHposto 1n =−L
76
Caso esteja presente a matriz D, a condição de controlabilidade completa de saída é dada por,
[ ] mHCGCGHCHDposto 1n =−L Dever ser notado que a controlabilidade de saída é dependente de todas as matrizes que compõe o sistema, isto é, a controlabilidade de saída é dependente das matrizes G, H, C e D.
6.4 Observabilidade Um sistema é dito completamente observável se todo estado inicial x(0) pode ser determinado a partir da observação de y(k) em um período finito de tempo. Utilizando esta definição, então dado um sistema na forma,
)k(Cx)k(y)k(Hu)k(Gx)1k(x
=+=+
Sua resposta é dada por,
⎟⎟⎠
⎞⎜⎜⎝
⎛+= ∑
−
=
−−1k
0j
1jkk )j(HuG)0(xGC)kT(y k = 1, 2, 3 ...
Fazendo,
)0(xCG)1n(y
)0(CGx)1(y)0(Cx)0(y
1n−=−
==
M
Significando que isso ser possível, necessariamente,
n
CG
CGC
posto
1n
=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
M
Esta é conhecida como matriz de observabilidade. Normalmente, esta equação não é usada, mas a equação transposta dela dada por,
( ) ( )[ ] nCGCGCposto H1nHH =−L onde H representa a hermitiana, que é o conjugado transposto. Observe que a observabilidade é independente da matriz de entrada B. Exemplo 6.2: Considerando os sistemas abaixo, verificar a observabilidade.
[ ]⎭⎬⎫
⎩⎨⎧
=
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
−=
⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
51)k(y
)k(x)k(x
2001
)1k(x)1k(x
2
1
2
1
2
1
Encontrando a matriz de observabilidade,
[ ] ⎥⎦
⎤⎢⎣
⎡−−
=⎥⎦
⎤⎢⎣
⎡
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
−=
101
51
51
2001
51
CGC HHH
77
Como se observa, a matriz de observabilidade tem posto 2 que é a mesma ordem da matriz G, então o sistema é completamente observável.
[ ]⎭⎬⎫
⎩⎨⎧
=
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
−=
⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
10)k(y
)k(x)k(x
2001
)1k(x)1k(x
2
1
2
1
2
1
Encontrando a matriz de observabilidade,
[ ] ⎥⎦
⎤⎢⎣
⎡−
=⎥⎦
⎤⎢⎣
⎡
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
−=
20
10
10
2001
10
CGC HHH
Como se observa, a matriz de observabilidade tem posto 1 que é menor que ordem da matriz G, então o sistema não é completamente observável.
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
⎥⎦
⎤⎢⎣
⎡=
⎭⎬⎫
⎩⎨⎧
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
=
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
+++++
)k(x)k(x)k(x)k(x)k(x
0111010111
)k(y)k(y
)k(x)k(x)k(x)k(x)k(x
3000013000002000012000012
)1k(x)1k(x)1k(x)1k(x)1k(x
5
4
3
2
1
2
1
5
4
3
2
1
5
4
3
2
1
Como o sistema definido acima é um sistema de alta ordem, difícil de ser feito, utiliza-se o Matlab,
clear all;close all;clc % definindo matriz G G=[-2 1 0 0 0 0 -2 1 0 0 0 0 -2 0 0 0 0 0 -3 1 0 0 0 0 -3] % definindo matriz C C=[1 1 1 0 1 0 1 1 1 0] % Construindo matriz de Controlabilidade OB=obsv(G,C) rank(OB)
Como o posto da matriz de observabilidade é 5 que é a mesma dimensão da matriz G, então o sistema é completamente observável.
78
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
⎥⎦
⎤⎢⎣
⎡=
⎭⎬⎫
⎩⎨⎧
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
=
⎪⎪⎪
⎭
⎪⎪⎪
⎬
⎫
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
+++++
)k(x)k(x)k(x)k(x)k(x
0011010111
)k(y)k(y
)k(x)k(x)k(x)k(x)k(x
3000013000002000012000012
)1k(x)1k(x)1k(x)1k(x)1k(x
5
4
3
2
1
2
1
5
4
3
2
1
5
4
3
2
1
Como o sistema definido acima é um sistema de alta ordem, difícil de ser feito, utiliza-se o Matlab,
clear all;close all;clc % definindo matriz G G=[-2 1 0 0 0 0 -2 1 0 0 0 0 -2 0 0 0 0 0 -3 1 0 0 0 0 -3] % definindo matriz C C=[1 1 1 0 1 0 1 1 0 0] % Construindo matriz de Controlabilidade OB=obsv(G,C) rank(OB)
Como o posto da matriz de observabilidade é 4 que é menor que a dimensão da matriz G, então o sistema é não é completamente observável.
6.5 Comentários gerais sobre controlabilidade e observabilidade
Nesta parte, será feito alguns comentários sobre a controlabilidade e observabilidade de sistemas em tempo discreto.
6.5.1 Condições de controlabilidade e observabilidade em termos de Funções de Transferência
Em se tratando de funções de transferência, não deve haver cancelamentos entre pólos e zeros das plantas, isso significará que este estado será não observável e não controlável. Este tipo de situação pode ocorrer em sistemas em série, onde os zeros de uma planta são os pólos da outra. Como em alguns casos o desejável é realizar o controle entre as duas, isso não será possível.
79
Exemplo 6.3: Mostrar que o sistema abaixo não é completamente controlável,
16.0zz2.0z
)z(U)z(Y
2 +++
=
Escrevendo na forma canônica controlável,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
=⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
12.0)k(y
)k(u10
)k(x)k(x
116.010
)1k(x)1k(x
2
1
2
1
2
1
Porém, a matriz G pode ser rearranjada e o sistema fica,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
=⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
12.0)k(y
)k(u10
)k(x)k(x
016.010
)1k(x)1k(x
2
1
2
1
2
1
Verificando a controlabilidade,
[ ] ⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛−⎟⎟
⎠
⎞⎜⎜⎝
⎛=
1100
10
016.010
10
GHH
Verificando que o sistema não é completamente controlável. Pode-se verificar isso diretamente pela matriz G, onde a diagonal principal é nula, outra forma é fatorando o denominado da FT,
( )( )2.0z8.0z2.0z
16.0zz2.0z
)z(U)z(Y
2 +++
=++
+=
Neste caso, verifica-se que há um zero cancelando um pólo. Exemplo 6.4: Verificar que o sistema não é observável,
[ ]⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡+
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−−=
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
+++
)k(x)k(x)k(x
154)k(y
)k(u100
)k(x)k(x)k(x
6116100010
)1k(x)1k(x)1k(x
3
2
1
3
2
1
3
2
1
Para a observabilidade,
[ ]⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−−
=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−−−
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−−−
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛=
111575664
154
2561601103660
154
6101101600
154
CGCGC HH2HHH
Cujo determinante é zero, mostrando que o posto da matriz de observabilidade é menor que a dimensão da matriz G assim, o sistema não é completamente observável. Este fato provém do cancelamento entre um pólo por um zero, observe que a FT é dada por,
( ) ( )( )( )( )( )3z2z1z
4z1z6z11z6z
4z5zHGzIC)z(U)z(Y
23
21
+++++
=+++
++=−= −
80
Observando que um pólo é cancelado por um zero, significando que este resultado não pode ser observado, pois sua influência é anulada.
6.5.2 Efeito da discretização Quando um sistema sofre uma discretização, isto é, quando um sistema é passado de tempo contínuo para tempo discreto, dependendo da taxa de amostragem T empregada, poderá haver cancelamento entre pólos e zeros. Para exemplificar, considera-se o sistema abaixo,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
=⎭⎬⎫
⎩⎨⎧
)t(x)t(x
01)t(y
)t(u10
)t(x)t(x
0110
)t(x)t(x
2
1
2
1
2
1
&
&
Cujas matrizes de controlabilidade e observabilidade são dadas por,
[ ] ⎥⎦
⎤⎢⎣
⎡=
0110
ABB e [ ] ⎥⎦
⎤⎢⎣
⎡=
1001
CAC HHH
Significando que para tempo contínuo o sistema é completamente controlável e observável. Aplicando a discretização, encontra-se,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡ −+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
=⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
01)k(y
)k(uTsin
Tcos1)k(x)k(x
TcosTsinTsinTcos
)1k(x)1k(x
2
1
2
1
2
1
A questão será, há algum valor de T para qual o sistema perderá controlabilidade e observabilidade? Para responder a esta questão, faz-se,
[ ] ⎥⎦
⎤⎢⎣
⎡
+−−+−
=TsinTcos2TsinTsin
Tcos21TcosTcos1GHH
2
Para que não tenha controlabilidade, faz-se o determinante igual a zero, chegando a,
( ) 0Tcos1Tsin2 =−− Significando que para T = nπ a matriz de controlabilidade será de posto menor que a dimensão da matriz G, mostrando que o sistema será de estado não completamente controlável. O mesmo fato pode ser verificado através da matriz de observabilidade,
[ ] ⎥⎦
⎤⎢⎣
⎡=
Tsin0Tcos1
CGC HHH
Fisicamente, o que ocorreu foi que se pretende observar uma freqüência que é exatamente igual à Nyquist, por isso não foi possível controlá-la.
6.5.3 Princípio da dualidade Como a transformação para espaço de estados não é única, então há uma transformação de uma forma para outra, a qual será útil quando se deseja obter uma forma canônica de estado.
81
Supondo um sistema na forma,
)k(Du)k(Cx)k(y)k(Hu)k(Gx)1k(x
+=+=+
Para transformá-lo na forma canônica controlável, aplica-se uma matriz de transformação T na forma,
MWT = e )k(xT)k(x = onde M é a matriz de controlabilidade dada por,
[ ]HGGHHM 1n−= L e a matriz W é dada por,
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=−−
−−
0001001a
01aa1aaa
W
1
3n2n
12n1n
L
L
MMOMM
L
L
Aplicando esta transformação no sistema, encontra-se,
)k(Du)k(xCT)k(y)k(HuT)k(xGTT)1k(x 11
+=+=+ −−
onde o sistema definido acima está na forma canônica controlável. Para transformá-lo na forma canônica observável, aplica-se,
( ) 1HWNQ −= e )k(xQ)k(x =
onde N é a matriz de observabilidade dada por, ( )[ ]H1nHHHH HGCGCN −
= L Aplicando esta transformação no sistema, encontra-se
)k(Du)k(xCQ)k(y)k(HuQ)k(xGQQ)1k(x 11
+=+=+ −−
Interessante notar que se o sistema está na forma canônica controlável dada por,
)k(uD)k(xC)k(y
)k(uH)k(xG)1k(x
+=
+=+
Para se obter a forma canônica observável, basta fazer, ( )
( ) )k(uD)k(xH)k(y
)k(uC)k(xG)1k(xH
H
+=
+=+
Esta equação demostra o princípio da dualidade
6.6 Exercícios Resolvidos Exemplo 6.5: Verificar para que valores de a, b, c e d o sistema é completamente controlável e observável.
82
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−−
=⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
dc)k(y
)k(uba
)k(x)k(x
3.14.010
)1k(x)1k(x
2
1
2
1
2
1
Solução: a matriz de controlabilidade,
[ ] ⎥⎦
⎤⎢⎣
⎡−−
=⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−−⎥
⎦
⎤⎢⎣
⎡=
b3.1a4.0bba
ba
3.14.010
ba
GHH
Calculando o determinante e, para que o sistema seje completamente controlável, o determinante deve ser diferene de zero, então,
0bab3.1a4.0 22 ≠−−− Para a matriz de observabilidade,
[ ][ ] ⎥
⎦
⎤⎢⎣
⎡−−
=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
⎥⎦
⎤⎢⎣
⎡−−
=⎥⎦
⎤⎢⎣
⎡d3.1cd4.0
dc
3.14.010
dc
dc
CGC
Portanto, 0d4.0cb3.1c 22 ≠+−
Como os valores de a, b, c e d não podem ser valores complexos, tem-se a resposta como,
6.7 Exercícios Propostos Exercício 6.1: Para a FT abaixo, escrever a representação em matrizes de estado na forma canônica controlável, observável e diagonal para utilizando as transformações.
( )( )3s2ss1s)s(G++
+= para T = 0.1 s;
Exercício 6.2: Determinar para quais valores de a o sistema é completamente observável e controlável.
83
a) 1zazz
1z)z(G 23 −+++
=
b) 1z3z
1az)z(G 2 −++
=
c) 1z3z1z2az)z(G 2
2
−++−
=
84
Capítulo 7
7 Projeto de Controladores via Alocação de Pólos
7.1 Introdução A alocação de pólos é uma técnica parecida com a técnica do lugar das raízes, a qual consiste em realizar uma realimentação de saída para realocar ou ajustar os pólos de malha fechada. Porém a técnica do lugar das raízes é baseada na alocação apenas dos pólos dominantes do sistema em malha fechada, que são os pólos com a menor parte real possível. Já a técnica de alocação de pólos posiciona todos os pólos do sistema em malha fechada através de uma realimentação de estado. Como será feita uma realimentação de estado, considera-se que os estados estão disponíveis, caso não estejam, eles necessitam se estimados através de um estimador de estado que será visto mais adiante e o sistema é de estado completamente controlável. Sendo assim, dado o sistema na forma,
)k(Du)k(Cx)k(y)k(Hu)k(Gx)1k(x
+=+=+
A realimentação de estado será dada por4, )k(Kx)k(u −=
onde K representa um vetor de ganhos de realimentação se u(k) for uma única lei de controle, caso haja várias leis de controle, K será uma matriz. Assim, o sistema em malha fechada é dado por,
( ))k(Du)k(Cx)k(y
)k(xHKG)k(HKx)k(Gx)k(Hu)k(Gx)1k(x+=
−=−=+=+
Portando a conduta do sistema realimentado será dada por, HKGG~ −=
Portanto, deve-se especificar os pólos do sistema de malha fechada através dos pólos de G-HK da seguinte forma,
( )( ) ( )n21 pzpzpzG~zIdet −−−=− L
Para encontrar os valores do vetor ou matriz de ganho K basta resolver esta equação. Porém, ela pode ser complicada, para isso criou-se a fórmula abaixo.
4 Se a referência a ser seguida é zero, o sistema de controle é denominado de regulador, caso contrário, o sistema de controle é denominado controlador.
85
x(k+1) x(k)
u(k)
z
1
-Kc* u
H
G* u
Figura 7.1: Diagrama de blocos de um sistema de controle por realimentação de estado
para um regulador.
7.2 Fórmula de Ackermann Esta fórmula permite encontrar o ganho do controlador de realimentação de estado facilmente. Para a sua dedução inicia-se expandindo a equação característic de malha fechada,
( )( ) ( )0zzzz
pzpzpzHKGzI
n1n2n
21n
1n
n21
=α+α+α+α+=
−−−=+−
−−− L
L
Utilizando o teorema de Cayley-Hamilton que diz que G~ deve satisfazer sua própria equação característica, isto é, substituindo G~ no lado direito no lugar de z,
( ) 0G~IG~G~G~G~ n1n2n
21n
1n =φ=α+α++α+α+ −
−− L Agora fazendo as multiplicações,
( ) ( )( )
( ) ( ) ( ) ( )( )( )
( ) ( )
( ) 1n1nnnn
223
23
223
2233
22
2222
G~HKHKGGHKGG~
G~HKG~GHKHKGG
HKGG~HKHKGGHKHKGG
HKG~HKGG~HKHKGGHKGHKGG
HKGG~HKGHKGHKGHKGHKGG~G~HKGHKGHKGHKGHKG
HKHKGGHKGHKGG~HKGG~
II
−− −−−=−=
−−−=
=−−−−−=
=+−+−−=
=−−−=−−=−=
−−=−−−=
+−−=−=
−=
=
L
M
Então, a equação fica, ( ) ( )
1n1nn
22n1nn
n22n1nn
G~HKHKGG
G~HKGHKGHKGIG~G~G~I−−
−−−−
−−−+
+−−α+−α+α=++α+α+α
LL
L
Expandindo os termos e rearranjando na forma,
86
( ) 1n1n2n1n
n22n1nn
n22n1nn
G~HKHKGG~HKGHKHK
GGGIG~G~G~I−−
−−
−−−−
−−−−+α−α−
+++α+α+α=++α+α+α
LL
LL
Observando que a primeira linha do lado direito é φ(G),
( ) ( ) ( ) 1n1n2n1n G~HKHKGG~HKGHKHKGG~ −−
−− −−−−+α−α−φ=φ LL Que pode ser escrito como,
( ) ( ) [ ] 0
K
G~KG~KKG~KG~KK
HGGHHGG~2n
3n2n
1n2n1n
1n =
⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢
⎣
⎡
++α+α++α+α
−φ=φ−
−−
−−−
−
M
L
L
L
Observa-se que a matriz [ ]HGGHH 1n−L é a matriz de controlabilidade, então,
[ ] ( )GHGGHH
K
G~KG~KKG~KG~KK
11n2n
3n2n
1n2n1n
φ=
⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢
⎣
⎡
++α+α++α+α
−−−
−−
−−−
LM
L
L
Sobrou apenas o K na n-ésima linha e ele pode ser extraído multiplicando ambos os lados por [0 0 0 … 1], assim,
[ ]
[ ][ ] ( )GHGGHH100
K
G~KG~KKG~KG~KK
100
11n
2n3n2n
1n2n1n
φ=
=
⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢
⎣
⎡
++α+α++α+α
−−
−−−
−−−
LL
M
L
L
L
Então, têm-se que, [ ][ ] ( )GHGGHH100K 11n φ=
−−LL Esta é a Fórmula de Ackermann para a determinação do ganho de realimentação de estado.
7.3 Formas alternativas para o ganho K A fórmula de Ackermann é uma excelente alternativa para o cálculo do ganho K por ser de fácil implementação computacional, contudo existem alternativas à sua utilização, como se verá a seguir. 1. Comparação direta: Este método consiste em substituir diretamente os coeficientes do ganho K dentro da equação característica,
( )( ) ( )0zzzz
pzpzpzHKGzI
n1n2n
21n
1n
n21
=α+α+α+α+=
−−−=+−
−−− L
L
Porém, só é de fácil aplicação quando a ordem do sistema é baixa. 2. Outra forma do cálculo do ganho K é através de,
87
[ ][ ]( ) 1
111n1nnn
1111n1nnn
MWaaa
TaaaK−
−−
−−−
−α−α−α=
−α−α−α=
L
L
onde,
[ ]HGGHHM 1n−= L e
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
=−−
−−
0001001a
01aa1aaa
W
1
3n2n
12n1n
L
L
MMOMM
L
L
Quando este modo for aplicado, se o sistema estiver na forma canônica controlável, a matriz transformação T torna-se a identidade, facilitando a aplicação do método. 3. Se os pólos desejados pi para o sistema em malha fechada forem distintos, pode-se aplicar a seguinte relação diretamente,
[ ][ ] 1n21111K −ξξξ= LL
onde, ( ) HpG i
ii−−=ξ com i = 1 ... n
Se a resposta desejada for “dead beat”, significando que pi = 0, então, HG i
i−=ξ com i = 1 ... n
Exemplo 7.1: Considerando o sistema abaixo,
)k(u10
)k(x)k(x
116.010
)1k(x)1k(x
2
1
2
1⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−−
=⎭⎬⎫
⎩⎨⎧
++
Cujos pólos do sistema são,
⎩⎨⎧
−=−=
⇒++=−−
=−8.0z2.0z
16.0zz1z16.0
1zGzI
1
12
E os pólos de malha fechada sejam, 5.0j5.0z 2,1 ±=
Solução: O primeiro passo é verificar se o sistema é de estado completamente controlável. Então, a matriz de controlabilidade é,
[ ] ⎥⎦
⎤⎢⎣
⎡−
=⎥⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛−−⎟⎟
⎠
⎞⎜⎜⎝
⎛=
1110
10
116.010
10
GHH
Significando que o sistema é de estado completamente controlável. Agora aplicando a fórmula de Ackermann,
[ ][ ] ( )GGHH10K 1φ= − Para φ(G), que é o novo polinômio característico que no lugar de z é G,
( ) ( )( ) 5.0zz5.0j5.0z5.0j5.0zz 2 +−=−−+−=φ Portanto,
[ ] [ ]234.01001
5.0116.0
10116.0
1011
1010K
21
−=⎟⎟
⎠
⎞
⎜⎜
⎝
⎛⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡−−
−⎥⎦
⎤⎢⎣
⎡−−⎥
⎦
⎤⎢⎣
⎡−
=−
88
clear all;close all;clc % Matrizes do sistema G=[0 1;-0.16 -1] H=[0;1] % Vetor dos novos polos im=sqrt(-1); P=[0.5+im*0.5 0.5-im*0.5] % Utilizando Fórnula de Ackermann K=acker(G,H,P) % Forma alternativa K=place(G,H,P)
Root Locus
Real Axis
Imag
inar
y Ax
is
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T
0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.10.2
0.30.40.50.60.70.80.9
System: GmaGain: 0Pole: -0.2Damping: 0.456Overshoot (%): 20Frequency (rad/sec): 3.53
System: GmaGain: 0Pole: -0.8Damping: 0.0709Overshoot (%): 80Frequency (rad/sec): 3.15
Root Locus
Real Axis
Imag
inar
y Ax
is
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
0.1π/T
0.2π/T
0.3π/T0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T
0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.10.2
0.30.40.50.60.70.80.9
System: GmfGain: 0
Pole: 0.5 + 0.5iDamping: 0.404
Overshoot (%): 25Frequency (rad/sec): 0.858
System: GmfGain: 0Pole: 0.5 - 0.5iDamping: 0.404Overshoot (%): 25Frequency (rad/sec): 0.858
Figura 7.2: lugar das raízes
7.4 Controle por Realimentação de Estado Quando há uma entrada de referência, o sistema fica,
)k(Du)k(Cx)k(y)k(Hu)k(Gx)1k(x
+=+=+
Supondo agora que a lei de controle seja dada por, )k(Kx)k(rk)k(u 0 −=
onde r(k) é uma referência a ser seguida e k0 é uma constante para ajustar a resposta controlada do sistema para que não ocorra erro estacionário, isto significa que se a referencia a ser seguida for o degrau unitário então a saída deverá ser tal que y(∞)→1. Então, o ganho k0 precisa ser ajustado.
( ) ( ))k(Du)k(Cx)k(y
)k(rHk)k(xHKG)k(Kx)k(rkH)k(Gx)1k(x 00
+=+−=−+=+
Neste caso, a conduta do sistema é dada por G – HK, a mesma conduta apresentada para um regulador. Desta forma, as mesmas fórmulas para calcular o ganho K podem ser aplicadas.
89
x(k+1) x(k) y(k)r(k)k0 1/z
Kc* u
H
G* u
CC
Figura 7.3: Controle por realimentação de estado. Desenhar
Exemplo 7.2: Dado o sistema baixo.
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−−
=⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
01)k(y
)k(u10
)k(x)k(x
116.010
)1k(x)1k(x
2
1
2
1
2
1
E os pólos de malha fechada sejam, 5.0j5.0z 2,1 ±=
Solução: Para o ganho K,
[ ] [ ]234.01001
5.0116.0
10116.0
1011
1010K
21
−=⎟⎟
⎠
⎞
⎜⎜
⎝
⎛⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡−−
−⎥⎦
⎤⎢⎣
⎡−−⎥
⎦
⎤⎢⎣
⎡−
=−
Agora basta encontrar o ganho k0 para que o sistema em malha fechada não tenha erro estacionário. Para isso, encontra-se a FT do sistema,
( ) H~G~zIC)z(G)z(U)z(Y 1−
−==
onde neste caso,
[ ] ⎥⎦
⎤⎢⎣
⎡−
=−⎥⎦
⎤⎢⎣
⎡−⎥
⎦
⎤⎢⎣
⎡−−
=−=15.010
232.010
116.010
HKGG~
HkH~ 0= Portanto,
( ) [ ]5.0zz
k10
k1z5.0
1z01H~G~zIC)z(G
)z(U)z(Y
20
0
11
+−=⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−−
=−==−
−
Para o erro estacionário5,
( ) ( ) ( ) 15.011
kz1
15.0zz
kz1lim)z(Yz1lim)k(ylim 0
1201
1z
1
1zk=
+−=⎟⎟
⎠
⎞⎜⎜⎝
⎛−+−
−=−= −−
→
−
→∞→
Portanto, 5.0k 0 =
clear all;close all;clc
5 Deve ser lembrado que Y(z)=G(z)U(z), com R(z) sendo a entrada degrau unitário.
90
% Matrizes do sistema G=[0 1;-0.16 -1]; H=[0;1]; C=[1 0];D=0; T=1; % sistema em malha aberta empacotado Gma=ss(G,H,C,D,T) % Vetor dos novos polos im=sqrt(-1); P=[0.5+im*0.5 0.5-im*0.5] % Calculando ganho K K=acker(G,H,P) K=place(G,H,P) % sistema em malha fechada Gf=G-H*K; Hf=0.5*H; Gmf=ss(Gf,Hf,C,D,T) % cálculo da resposa ao degrau step(Gma,30);hold on step(Gmf,30);hold off legend('Gma','Gmf')
0 5 10 15 20 25 300
0.2
0.4
0.6
0.8
1
1.2
1.4Step Response
Time (sec)
Ampl
itude
GmaGmf
Figura 7.4:Resposta ao degrau unitário do sistema sem controle e malha fechada com o
controlador
7.5 Observadores de Estado No início deste capítulo, foi apresentada a realimentação de estado, onde admitia-se que os estados do sistema estavam disponíveis, porém, nem sempre isso é possível, já que em muitas aplicações de sistemas de controle, mede-se apenas algumas
91
variáveis de saída, sendo assim, nem todos os estados estão disponíveis para serem utilizados na realimentação de estados. Neste caso, deve-se criar um estimador de estados que pode ser de ordem completa, em que todos os estados são estimados, de ordem mínima, em que apenas os estados não medidos são estimados, ou de ordem reduzida, em que os estados não medidos e alguns dos estados medidos são estimados. Os estados do sistema serão estimados com base nas entradas e nas saídas disponíveis do sistema, isto é, através da entrada u(k) e da saída y(k), será “projetado” um novo sistema tal que os estados deste novo sistema sejam os estados reais do sistema a ser controlado, ver Figura 7.5, onde )k(x~ representa a estimativa dos estados da planta original. Como é previsto que será utilizada a saída do sistema, dever ser notado que a condição de observabilidade deve ser obedecida.
Figura 7.5: Sistema de controle por realimentação de estados junto com observador de
estado.
7.5.1 Observadores de Estado de Ordem Completa Então, considerando um sistema, cujos estados x(k) não podem ser medidos, dado por,
)k(Cx)k(y)k(Hu)k(Gx)1k(x
=+=+
Supondo que os estados do sistema acima podem ser aproximados pelos estados do seguinte sistema,
)k(x~C)k(y~)k(Hu)k(x~G)1k(x~
=+=+
onde as matrizes G, H, C e D são as mesmas matrizes de estado do sistema cujos estados não podem ser medidos. Na prática, estas matrizes precisam ser estimadas, assunto que não será abordado aqui. Além disso, tem-se que a resposta dos dois sistemas deve ser a mesma, isto significa que a diferença das respostas deve tender a zero com o passar das iterações, isto é,
( ) 0)k(y~)k(ylimk
=−∞→
Uma forma de fazer com que isso ocorra é pela introdução de um sistema de controle, pois se as entradas e as saídas forem as mesmas, as matrizes são as mesmas, isso significa que os estados são os mesmos, então o sistema utilizado para a estimação de estados deve ser dado por,
92
( ))k(x~C)k(y~
)k(y~)k(yK)k(Hu)k(x~G)1k(x~ e
=−++=+
onde Ke é um controlador introduzido para garantir que os dois sistemas se comportem da mesma forma.
x(k+1) x(k)
xt(k+1) xt(k)
y(k)
u(k)
yt(k)z
1
z
1
Ke.'* u
Kc* u
H
H
G* u
G* u
C
C
Figura 7.6: Sistema de controle por realimentação de estados junto com observadores de
estado completo. O sistema do estimador de estado completo pode ser reescrito substituindo
)k(x~C)k(y~ = , ( )
)k(x~C)k(y~)k(yK)k(Hu)k(x~CKG)1k(x~ ee
=++−=+
Observe que a matriz do sistema é dada por (G-KeC) e para um sistema de controle por realimentação de estado é dada por (G-HK). Então, do princípio da dualidade entre a forma canônica controlável e observável, o controlador Ke pode ser encontrado da mesma forma que o vetor de ganho K, pois,
( )( ) ( )0zzzz
pzpzpzHKGzI
n1n2n
21n
1n
n21
=α+α+α+α+=
−−−=+−
−−− L
L
Agora, a expressão torna-se, ( )( ) ( )
0zzzz
pzpzpzCKGzI
n1n2n
21n
1n
n21HH
eH
=α+α+α+α+=
−−−=+−
−−− L
L
Significando que o ganho de estado era dado por, utilizando a fórmula de Ackermann,
[ ][ ] ( )GHGGHH100K 11n φ=−−LL
Então, o ganho do estimador de estado pode ser dado por,
93
( )⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
φ=
−
− 1
00
CG
CGC
GK
1
1n
eMM
Deve-se notar que a fórmula para o cálculo do vetor de ganho do observador de estado depende da inversa da matriz de observabilidade. Exemplo 7.3: Supondo o sistema,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−
−=
⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
10)k(y
)k(u10
)k(x)k(x
1116.00
)1k(x)1k(x
2
1
2
1
2
1
Projetar um observador de estado completo para que o estimador de estado tenha pólos em,
5.0j5.0z 2,1 ±= Solução: O polinômio característico para o observador,
( ) ( )( ) 5.0zz5.0j5.0z5.0j5.0zz 2 +−=−−+−=φ E o ganho do observador,
( )
[ ][ ]
⎥⎦
⎤⎢⎣
⎡−
=⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−⎥
⎦
⎤⎢⎣
⎡−
=
⎥⎦
⎤⎢⎣
⎡
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
⎥⎦
⎤⎢⎣
⎡−
−⎟⎟
⎠
⎞
⎜⎜
⎝
⎛⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡−
−−⎥
⎦
⎤⎢⎣
⎡−
−=
⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡φ=
−
−
−
234.0
10
1110
34.2232.034.0
10
1116.00
10
10
1001
5.01116.00
1116.00
10
CGC
GK
1
12
1
e
Para se utilizar o comando “acker” ou “place” do matlab, deve ser lembrado que o que está sendo calculado está conjugado transposto, então,
clear all;clc;close all % Matrizes do sistema G=[0 -0.16;1 -1] C=[0 1] % Vetor dos novos polos im=sqrt(-1); P=[0.5+im*0.5 0.5-im*0.5] % utilizando acker Gt=G'; Ct=C'; K=acker(Gt,Ct,P); Ke=K'
94
7.5.2 Comentários sobre estimador de estado Definindo que o erro da estimativa de estado seja,
)k(x~)k(x)k(e −= Agora subtraindo ambos os sistemas,
( )( )
( )( ))k(x~)k(xCKG)k(CxK)k(x~CK)k(x~)k(xG
)k(yK)k(Hu)k(x~CKG)k(Hu)k(Gx)1k(x~)1k(x
e
ee
ee
−−=−+−=
−−−−+=+−+
Portanto, ( ) )k(eCKG)1k(e e−=+
Significando que o comportamento do erro do estimador vai depender da posição dos pólos da equação característica G-KeC. Normalmente, deve-se escolher os pólos do observador de 2 a 5 vezes mais rápido que a da planta a ser estimada, isto é, com uma freqüência de 2 a 5 vezes maior. Porém, em aplicações práticas, se a resposta da planta for contaminada com ruído, deve utilizar uma estimativa mais lenta. Exemplo 7.4: Supondo o sistema,
[ ]⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡+
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−=
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
+++
)k(x)k(x)k(x
010)k(y
)k(u100
)k(x)k(x)k(x
1.12.05.0100010
)1k(x)1k(x)1k(x
3
2
1
3
2
1
3
2
1
Projetar um controlador de estado e um observador de estado para a resposta ao degrau supondo, Raízes do controlador: 0.5±j0.5 e 0.5 → 25.0zz5.1zP 23 −+−= Raízes do observador: 0.3±j0.5 e 0.3 → 102.0z52.0z9.0zP 23 −+−= Solução: Observe que as raízes da planta são dadas por,
⎩⎨⎧
±=−=
⇒=++−⇒
=−−
−⇒=−
6.0j8.0z5.0z
05.0z2.0z1.1z
01.1z2.05.0
1z001z
0GzI
2,1
123
Que podem ser melhor compreendidas através da passagem para tempo contínuo,
zlnT1sez Ts =⇒=
Portanto, assumindo T = 1 s, as raízes em tempo contínuo são dadas por,
6435.0js1416.3j6931.0s
4,3
2,1
±=
±−=
Portanto o par complexo representa um pólo marginalmente estável, já a nova posição, 0.5±j0.5 e 0.5 representa,
95
7854.0j3466.0s5.0j5.0z6931.0s5.0z
3,23,2
11
±−=⇒±=−=⇒=
Iniciando pela verificação da controlabilidade e observabilidade do sistema, Controlabilidade:
[ ]⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
01.11.111.110
100HGGHH 2
Observabilidade:
[ ]⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡−−
=1.1102.0015.000
CGCGC HH2HHH
Portanto, o sistema é de estado completamente controlável e observável.
Root Locus
Real Axis
Imag
inar
y Ax
is
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-1
-0.5
0
0.5
1
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.1π/T
0.2π/T
0.3π/T
0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.10.2
0.30.40.50.60.70.80.9
System: GppGain: 0
Pole: 0.5 + 0.5iDamping: 0.404
Overshoot (%): 25Frequency (rad/sec): 0.858
System: GppGain: 0
Pole: 0.5 - 0.5iDamping: 0.404
Overshoot (%): 25Frequency (rad/sec): 0.858
System: GppGain: 0Pole: 0.5Damping: 1Overshoot (%): 0Frequency (rad/sec): 0.693
Root Locus
Real Axis
Imag
inar
y Ax
is
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1-1.5
-1
-0.5
0
0.5
1
1.5
0.1π/T
0.2π/T
0.3π/T0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/T
π/T
0.1π/T
0.2π/T
0.3π/T0.4π/T0.5π/T0.6π/T
0.7π/T
0.8π/T
0.9π/Tπ/T
0.10.2
0.30.40.50.60.70.80.9
System: GppGain: 0
Pole: 0.3 - 0.5iDamping: 0.464
Overshoot (%): 19.3Frequency (rad/sec): 1.16
System: GppGain: 0
Pole: 0.3 + 0.5iDamping: 0.464
Overshoot (%): 19.3Frequency (rad/sec): 1.16
System: GppGain: 0Pole: 0.3Damping: 1Overshoot (%): 0Frequency (rad/sec): 1.2
Figura 7.7: Justificativa para as alocações dos pólos do controlador e observador
Projeto do Controlador,
[ ][ ] [ ]4.08.075.0HGGHH100K 12 −−==−
Projeto do Observador,
( )⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡φ=
−
54.02.0
204.1
100
CGCGC
GK
1
2e
96
x(k+1) x(k)
x(k+1) x(k)
0.25z1
RespostaControlada
Ke* u
Kc* u
H* u
H* u
G* u
G* u
z1
C* u
C* u3
3
3
3
3
33
3
3
3
3
3
3
333
3
3
Figura 7.8: Diagrama de blocos do controle de estado e do observador
0 10 20 30 40 50 60 70 80 90 1000
0.2
0.4
0.6
0.8
1
1.2
1.4
Am
plitu
de
Tempo 0 10 20 30 40 50 60 70 80 90 100
-1
-0.5
0
0.5
1
1.5
2
2.5
3
Am
plitu
de
Tempo Figura 7.9: Resposta do sistema nominal e ao sistema com x(0)= [-2 3 1]T
Para a planta do sistema definida por,
)k(Cx)k(y
)k(Hu)k(Gx)1k(x=
+=+
A função de transferência é dada por,
( )5.0z2.0z1.1z
zHGzIC)Z(U)z(Y)z(G 231 ++−
=−==
Para o sistema definido por,
( )
)k(x~C)k(y~)k(yK)k(Hu)k(x~CKG)]k(y~)k(y[K)k(Hu)k(x~G)1k(x~ EEE
=++−=−++=+
Aplicando transformada Z, ( )( ) ( ) )z(YKCKGzI)z(HUCKGzI)z(X~
)z(YK)z(HU)z(X~CKG)z(X~z
E1
E1
E
EE−− +−++−=
++−=
Como a lei de controle é dada por, )k(x~K)k(r)k(u C−= Aplicando a transformada Z,
97
( ) ( )[ ])z(YKCKGzI)z(HUCKGzIKc)z(R
)z(X~K)z(R)z(U
E1
E1
E
C−− +−++−−=
=−=
Definindo,
( )
( )102.0z52.0z9.0z
8622.0z3561.1z959.0KCKGzIKcG
102.0z52.0z9.0z153.0z72.0z4.0HCKGzIKcG
23
2
E1
E3
23
21
E2
−+−+−
=+−−=
−+−−−
=+−−=
−
−
Então,
( ) ( ) )z(YG1
G)z(RG1
1)z(U)z(YG)z(UG)z(R)z(U2
3
232 −
+−
=⇒++=
Através da equação acima, observa-se que o sistema em malha fechada pode ser resumido a,
0.25
RespostaControlada
zz -1.1z +0.2z+0.53 2
Planta
0.959z -1.356z+0.86222
z -1.3z +1.24z+0.0513 2
Controlador
z -0.9z +0.52z-0.1023 2
z -1.3z +1.24z+0.0513 2Controlador
Avanço
Figura 7.10: Sistema em malha fechada
Substituindo em Y(z)=G1(z)U(z),
( ) ( ) 312
1
2
31
2
1
GGG1G
)z(R)z(Y)z(Y
G1GG
)z(RG1
G)z(Y−−
=⇒−
+−
=
Que substituindo os valores chega-se a,
25.0zz5.1zz
)z(R)z(Y
23 −+−=
Observe que houve cancelamento de pólos e zeros e no final, os pólos são os pólos estipulados pela realimentação de estado. Para o ajuste do ganho Ko para eliminar o erro estacionário,
( ) ( ) ( )25.0K1
25.015.11K
z11
25.0zz5.1zzk
z1lim)z(Yz1lim)k(ylim
00
12301
1z
1
1zk
=⇒=−+−
=
⎟⎟⎠
⎞⎜⎜⎝
⎛−−+−
−=−= −−
→
−
→∞→
7.5.3 Estimadores de Ordem Reduzida Na prática, alguns estados do sistema são medidos, significando que nem todos os estados devem ser estimados. Além disso, a medida do estado pode não ser precisa, nestes casos, utiliza-se observadores de ordem reduzida ou de ordem mínima. Supondo n estados x(k) do sistema e a saída y(k) do sistema seja de ordem m. Como a saída é uma combinação linear dos estados, correlacionado pela matriz C, então o observador de ordem reduzida será de ordem n-m. Escrevendo o vetor de estado em duas partes,
98
⎭⎬⎫
⎩⎨⎧
=)k(x)k(x
)k(xb
a
onde xa(k) é a parte do vetor de estado que pode ser diretamente medido e de ordem m, xb(k) a parte que precisa ser estimada e de ordem n-m. Então o sistema pode ser reescrito como,
[ ] )k(x)k(y)k(x)k(x
0I)k(y
)k(uHH
)k(x)k(x
GGGG
)1k(x)1k(x
ab
a
b
a
b
a
bbba
abaa
b
a
=⇒⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡=
⎭⎬⎫
⎩⎨⎧
++
Desta forma, a equação de estado contendo a dinâmica dos estados que são conhecidos é dada por,
)k(uH)k(xG)k(xG)1k(x ababaaaa ++=+ Que pode ser rearranjada como,
)k(xG)k(uH)k(xG)1k(x babaaaaa =−−+ A parte restante, que representa a dinâmica dos estados não medidos, é dada por,
)k(uH)k(xG)k(xG)1k(x bbbbabab ++=+ Como a equação de estado para o observador de estado de ordem completa é dada por,
)k(x~C)k(y~)k(Hu)k(x~G)1k(x~
=+=+
Comparando com a equação de estado dos estados não medidos na seguinte forma,
( ))k(uH)k(xG)k(xG)1k(x bababbbb ++=+ E a saída do observador de estado completo,
)k(x~C)k(y~ = Comparando com,
)k(xG)k(uH)k(xG)1k(x babaaaaa =−−+ O projeto do observador de ordem mínima ou de ordem reduzida pode ser encontrado comparando a equação de estado do observador de ordem completada dada por,
)k(x~C)k(y~)k(Hu)k(x~G)1k(x~
=+=+
Comparada com, ( ))k(uH)k(xG)k(xG)1k(x bababbbb ++=+
)k(xG)k(uH)k(xG)1k(x babaaaaa =−−+ Onde observa-se que,
Observador de ordem completa Observador de ordem mínima
)k(x~ )k(x~b
G Gbb
Hu(k) Gbaxa(k) + Hbu(k)
99
y(k) Xa(k+1) – Gaaxa(k)-Hau(k)
C Gab
Ke ordem n×m Ke ordem (n-m)×m
Utilizando a tabela acima, através do projeto do observador de ordem completa que é dado por,
( ) )k(yK)k(Hu)k(x~CKG)1k(x~ ee ++−=+ O projeto do observador de ordem mínima ou de ordem reduzida é dado por,
( ) ( )( ))k(uH)k(xG)1k(xK
)k(uH)k(xG)k(x~GKG)1k(x~
aaaaae
babababebbb
−−+++++−=+
Substituindo y(k) = xa(k), ( ) ( )
( ))k(uH)k(yG)1k(yK)k(uH)k(yG)k(x~GKG)1k(x~
aaae
bbababebbb
−−+++++−=+
Rearranjando, ( )( ) ( ) )k(uHKH)k(yGKG
)1k(yK)k(x~GKG)1k(x~
aebaaeba
ebabebbb
−+−++++−=+
O problema em utilizar a equação acima está no fato de ter que medir y(k+1). Então, uma forma mais conveniente de expressar a equação acima é fazendo,
( ) ( ) ( )( )( ) ( )
( ) ( )( )( )
( )[ ] ( ) )k(uHKH)k(yGKGKGKG)k(yK)k(x~GKG
)k(uHKH)k(yGKG)k(yKGKG)k(yK)k(x~GKG
)k(uHKH)k(yGKG)k(x~GKG)1k(yK)1k(x~
aebaaebaeabebb
ebabebb
aebaaeba
eabebbebabebb
aebaaebababebbeb
−+−+−++−−=
−+−++−+−−=
−+−+−=+−+
Definindo, )k(~)k(xK)k(x~)k(yK)k(x~ aebeb η=−=−
Pode-se escrever o sistema como, ( ) ( )( )[ ] )k(yGKGKGKG
)k(uHKH)k(GKG)1k(~
aaebaeabebb
aebabebb
−+−+−+η−=+η
A equação acima descreve a dinâmica do observador de estado de ordem mínima ou ordem reduzida. O erro do observador pode ser definido como
)k(x~)k(x)k(~)k()k(e bb −=η−η= Que se torna,
( )[ ]( ) ( )[( )])k(uH)k(xG)1k(xK
)k(uH)k(xG)k(x~GKG)k(uH)k(xG)k(xG)1k(x~)1k(x
aaaaae
babababebb
bababbbbb
−−+++++−−
+++=+−+
Rearranjando, [ ]( ))k(uH)k(xG)1k(xK
)k(x~GK)k(x~)k(xG)1k(x~)1k(x
aaaaae
babebbbbbb
−−+−+−=+−+
Substituindo a equação de xa(k+1),
100
[ ]( ))k(uH)k(xG)k(uH)k(xG)k(xGK
)k(x~GK)k(x~)k(xG)1k(x~)1k(x
aaaaababaaae
babebbbbbb
−−++−+−=+−+
Que simplificando encontra-se, [ ] [ ])k(x)k(x~GK)k(x~)k(xG)1k(x~)1k(x bbabebbbbbb −+−=+−+
Que se reduz a, ( ) )k(eGKG)k(eGK)k(eG)1k(e abebbabebb −=−=+
Portanto, a equação característica do erro do observador de ordem mínima ou de ordem reduzida é dada por,
0GKGzI abebb =+− Assim, o projeto do observador de ordem reduzida é feito escolhendo os pólos desejados para a equação acima.
Figura 7.11: Diagrama de blocos do controlador de estado e do observador de ordem
mínima ou de ordem reduzida
Exemplo 7.5: Supondo o seguinte sistema,
)k(Cx)k(y~)k(Hu)k(Gx)1k(x
=+=+
Com,
⎥⎦
⎤⎢⎣
⎡=
102.01
G , ⎥⎦
⎤⎢⎣
⎡=
2.002.0
H e [ ]01C =
Projetar um controlador de estado para que os pólos do sistema em malha fechada sejam estabelecidos em
Z1,2 = 0.6 ± j0.4 Assumir que apenas o primeiro estado x1(k) pode ser medido. Projetar um observador de ordem mínima para que o erro do observador seja do tipo “Dead-Beat”. Determinar a Função de Transferência de realimentação do sistema de controle.
101
Solução: Iniciando pela verificação da observabilidade e controlabilidade do sistema,
[ ] ⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛⎥⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛=
2.02.06.002.0
2.002.0
102.01
2.002.0
GHH
[ ] ⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛⎥⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛=
2.0011
01
12.001
01
CGC ***
Novo polinômio característico, ( ) ( )( ) 52.0z2.1z4.0j6.0z4.0j6.0zz 2 +−=+−−−=φ
Fórmula de Ackermann para a realimentação de estado, [ ][ ] ( )
[ ]
[ ]2.38
1001
52.0102.01
2.1102.01
2.02.06.002.0
10
GGHH10K21
1
=
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡−⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡=
=φ=−
−
Desta forma, a lei de controle é dada por,
[ ] [ ]⎭⎬⎫
⎩⎨⎧
−=⎭⎬⎫
⎩⎨⎧
−=−=)k(x~)k(y
2.38)k(x~)k(x
2.38)k(Kx)k(u22
1
Para encontrar o observador de ordem mínima, deve-se separar o sistema segundo,
⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡=
102.01
GGGG
Gbbba
abaa e ⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡=
2.002.0
HH
Hb
a
Como o observador deve ter comportamento Dead-Beat, o polinômio característico é dado por6,
( ) 0zz ==φ Aplicando Ackermann,
( )[ ] [ ] 5)1()2.0)(1(1GGK 11abbbe ==φ= −−
A equação de estado do observador de ordem mínima, ( ) ( )( )[ ] )k(yGKGKGKG
)k(uHKH)k(GKG)1k(~
aaebaeabebb
aebabebb
−+−+−+η−=+η
Substituindo os valores, ( ) ( )
( )[ ])k(y5)k(u1.0
)k(y)1)(5(05)2.0)(5(1)k(u)02.0)(5(2.0)k()2.0)(5(1)1k(~
−=−+−+−+η−=+η
Só está faltando os estados não estimados dado por, )k(~)k(y5)k(~)k(yK)k(x~ e2 η+=η+=
E a equação da lei de controle, )k(x~2.3)k(y8)k(u 2−−=
Estas últimas três equações definem o sistema de controle. Combinando as duas últimas,
6 O polinômio característico para dead beat deve ser da ordem a ser utilizada, como neste caso precisa-se estimar apenas um estado, o polinômio característico é apenas z.
102
( ))k(~2.3)k(y24
)k(~)k(y52.3)k(y8)k(uη−−=
η+−−=
Se esta equação é verdade, )1k(~2.3)1k(y24)1k(u +η−+−=+
Substituindo a equação do observador, ( )
)k(y16)1k(y24)k(u32.0)1k(u)k(y5)k(u1.02.3)1k(y24)1k(u
++−=++−−+−=+
Para a função de transferência do controlador, aplica-se a transformada Z na equação anterior,
)z(Y16)z(zY24)z(U32.0)z(zU +−=+ Chegando a,
32.0z16z24
)z(Y)z(U)z(GD +
−−==
A função de transferência da planta,
( )
[ ]
1z2z02.0z02.0
2.002.0
102.01
z00z
01
DHGzIC)z(U)z(Y)z(G
2
1
1P
+−+
=
⎥⎦
⎤⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛⎥⎦
⎤⎢⎣
⎡−⎥
⎦
⎤⎢⎣
⎡=
=+−==
−
−
Step Scope
0.02z+0.02z -2z+12
Planta
Ko
Gain
24z-16z+0.32
Controlador
Figura 7.12: Diagrama de blocos do sistema em malha fechada A equação característica do sistema em malha fechada pode ser encontrada através do diagrama de blocos, Figura 7.12, dado por,
( )z52.0z2.1z
0064.0z0264.0z02.0K)z(G)z(G1
)z(GK)z(R)z(C
23
2o
DP
Do
+−++
=+
=
Para que o sistema não tenha erro estacionário,
( ) ( ) ( )( )
0606.6K132.00528.0K
z11
z52.0z2.1z0064.0z0264.0z02.0K
z1lim)z(Yz1lim)k(ylim
oo
123
2o1
1z
1
1zk
=⇒==
=⎟⎟⎠
⎞⎜⎜⎝
⎛−+−
++−=−= −
−
→
−
→∞→
Notar que a equação característica do sistema em malha fechada é dada por, ( ) 0z25.0z2.1z2 =+−
Representando os mesmos pólos escolhidos para o fechamento da malha.
103
Justificativa para a escolha dos pólos do controlador em z1,2 = 0.6 ± j0.4. Os pólos originais são z1,2 = 1, que são pólos marginalmente estáveis, porém, passando os os escolhidos para tempo contínuo encontra-se s1,2 = - 0.327 ± j0.588, representando ωN = 0.6728 rad/s e fator de amortecimento ζ = 0.486.
7.6 Exercícios Resolvidos Exemplo 7.6: Para o sistema abaixo, projetar um controle por realimentação de estado em tempo discreto para o sistema abaixo,
100s2s50)s(G 2 ++
=
Sabendo-se que o desejado para o sistema acima seria que o seu fator de amortecimento fosse 2/2 e sua freqüência natural fosse 20 rad/s. Solução: Passando o sistema para tempo discreto, precisa-se saber qual a freqüência natural do sistema, por análise simples, verifica-se que ela é de 10 rad/s, portanto a maior freqüência será de 20 rad/s. Sendo assim, escolhe-se T = 0.05 s. Agora, discretizando o sistema, atravéz de tabelas é fácil verificar que,
( )
( ) =⎥⎦
⎤⎢⎣
⎡
+++
+++
−−−
=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
++
+−−=⎟⎟
⎠
⎞⎜⎜⎝
⎛ −=
−
−
−−
100s2s99
9921
100s2s1s
21Z
z12z1
100s2s
1s21
s21Zz1)s(G
se1Z)z(G
221
1
21
Ts
Comparando com os items 16 e 17 da tabela de transformada, a = 1 e 99=ω , então,
9048.0z672.1z05727.0z05923.0)s(G
se1Z)z(G 2
Ts
+−+
=⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
−
Transformando para matrizes de estado, utilizando a forma canônica observável, pois a matriz C é na forma unitária,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡ −=
⎭⎬⎫
⎩⎨⎧
++
)k(x)k(x
10)k(y
)k(u05923.005727.0
)k(x)k(x
672.119048.00
)1k(x)1k(x
2
1
2
1
2
1
Para os novos pólos do sistema,
1421.14j1421.142212020
22js
2
dn2,1 ±−=⎟⎟⎠
⎞⎜⎜⎝
⎛−±−=ω±ζω−=
Passando para tempo discreto, 3203.0j3749.0eez )05.0)1421.14j1421.14(sT
2,1 ±=== ±− Projetando o controle via realimentação de estado, matriz de controlabilidade,
104
[ ] ⎥⎦
⎤⎢⎣
⎡ −=⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡ −⎥⎦
⎤⎢⎣
⎡=
1563.05923.00536.05727.0
05923.005727.0
672.119048.00
05923.005727.0
GHH
Novo polinômio característico, 9048.0z672.1z)3203.0j3749.0z)(3203.0j3749.0z()z( 2 −+=−−+−=φ
Aplicando Ackerman, [ ][ ] ( )
[ ]
[ ]2331.85878.7
1001
2431.0672.119048.00
7498.0672.119048.00
1563.05923.00536.05727.0
10
GGHH10K21
1
=
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡ −−⎥
⎦
⎤⎢⎣
⎡ −⎥⎦
⎤⎢⎣
⎡ −=
=φ=−
−
Desta forma, a lei de controle é dada por,
[ ]⎭⎬⎫
⎩⎨⎧
−=−=)k(x)k(x
2331.85878.7)k(Kx)k(u2
1
Exemplo 7.7: Para o sistema acima, projetar um sistema de controle em realimentação utilizando um estimador tipo “Dead Beat” para o observador de estado de ordem reduzida. Solução: Comparando as equações do observador de ordem reduzida e a equação do sistema, observa-se que,
⎥⎦
⎤⎢⎣
⎡−
=⎥⎦
⎤⎢⎣
⎡=
672.119048.00
GGGG
Gaaab
babb e ⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡=
05923.005727.0
HH
Ha
b
Como o observador deve ter comportamento Dead-Beat, o polinômio característico é dado por,
( ) 0zz ==φ Aplicando Ackermann,
( )[ ] [ ] 0)1()1)(0(1GGK 11abbbe ==φ= −−
Significando que o observador de ordem reduzida não pode ser aplicado. Porém, a transformação para matrizes de estado não é única, aplicando a seguinte transformação,
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡=
⎭⎬⎫
⎩⎨⎧
⇒⎥⎦
⎤⎢⎣
⎡=
)k(x)k(x
1011
)k(xn)k(xn
1011
T2
1
2
1
O sistema fica,
[ ]⎭⎬⎫
⎩⎨⎧
⎥⎦
⎤⎢⎣
⎡=
⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧
⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡ −⎥⎦
⎤⎢⎣
⎡=
⎭⎬⎫
⎩⎨⎧
++
−
−
)k(xn)k(xn
1011
10)k(y
)k(u05923.005727.0
1011
)k(xn)k(xn
1011
672.119048.00
1011
)1k(xn)1k(xn
2
11
2
11
2
1
Chegando a,
[ ]⎭⎬⎫
⎩⎨⎧
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡ −=
⎭⎬⎫
⎩⎨⎧
++
)k(xn)k(xn
10)k(y
)k(u05923.01165.0
)k(xn)k(xn
672.012328.01
)1k(xn)1k(xn
2
1
2
1
2
1
105
A resposta do novo sistema e do sistema antigo é exatamente a mesma, significando que os dois sistemas são os mesmos. Agora, aplicando o método,
( )[ ] [ ] 1)1()1)(1(1GGK 11abbbe ==φ= −−
A equação de estado do observador de ordem mínima, ( ) ( )( )[ ] )k(yGKGKGKG
)k(uHKH)k(GKG)1k(~
aaebaeabebb
aebabebb
−+−+−+η−=+η
Substituindo os valores, ( ) ( )
( )[ ])k(y9048.0)k(u0573.0
)k(y)672.0)(1(2328.01)1)(1(1)k(u)05923.0)(1(1165.0)k()1)(1(1)1k(~
−=−−−+−+η−=+η
Só está faltando os estados não estimados dado por, )k(~)k(y)k(~)k(yK)k(nx~ e1 η+=η+=
Neste ponto deve ser lembrado que o que está sendo estimado é xn1(k) não x1(k) como necessário para o controlador, porém da relação de transformação utilizada,
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡ −=
⎭⎬⎫
⎩⎨⎧
⎥⎦
⎤⎢⎣
⎡=
⎭⎬⎫
⎩⎨⎧
⇒=⎥⎦
⎤⎢⎣
⎡=
−
)k(xn)k(xn
1011
)k(xn)k(xn
1011
)k(x)k(x
1011
T2
1
2
11
2
1
Significando que x2(k) = xn2(k), mas x1(k) = xn1(k)+xn2(k) = xn1(k)+x2(k), assim, a lei de controle fica,
[ ]
[ ]⎭⎬⎫
⎩⎨⎧
−=
⎭⎬⎫
⎩⎨⎧ −
−=−=
)k(xn)k(nx~
6453.05878.7
)k(xn)k(xn)k(nx~
2331.85878.7)k(Kx)k(u
2
1
2
21
Estas últimas três equações definem o sistema de controle. Combinando as duas últimas,
( ))k(~5878.7)k(y2331.8
)k(x6453.0)k(~)k(y5878.7)k(xn6453.0)k(nx~5878.7)k(u
2
21
η−−=−η+−=
−−=
Se esta equação é verdade, então, )1k(~5878.7)1k(y2331.8)1k(u +η−+−=+
Substituindo a equação do observador,
( ))k(y8654.6)k(u4348.0)1k(y2331.8
)k(y9048.0)k(u0573.05878.7)1k(y2331.8)1k(~5878.7)1k(y2331.8)1k(u
+−+−=−−+−=
+η−+−=+
Para a função de transferência do controlador, aplica-se a transformada Z na equação anterior,
)z(Y8654.6)z(zY2331.8)z(U4348.0)z(zU +−=+ Chegando a,
4348.0z8654.6z2331.8
)z(Y)z(U)z(G D +
−−==
A função de transferência da planta original,
9048.0z672.1z05727.0z05923.0)z(G 2P +−
+=
106
A equação característica do sistema em malha fechada pode ser encontrada através de,
( )0002473.0z2428.0z7494.0z
0249.0z08302.0z05923.0K)z(G)z(G1
)z(GK)z(R)z(C
23
2o
DP
Po
++−++
=+
=
Para que o sistema não tenha erro estacionário, ( )
( ) ( )( )
9533.2K14936.0
1671.0Kz1
10002473.0z2428.0z7494.0z
0249.0z08302.0z05923.0Kz1lim
)z(Yz1lim)k(ylim
oo
123
2o1
1z
1
1zk
=⇒==
=⎟⎟⎠
⎞⎜⎜⎝
⎛−++−
++−=
=−=
−−
→
−
→∞→
Exemplo 7.8: Supondo o sistema apresentado no Exemplo 7.4, projetar um observador de estado de ordem mínima para os estados que não são medidos. Supor resposta DeadBeat para o observador. Solução: O primeiro passo é verificar qual a saída que é medida, no caso a saída x2(k). Então é necessário reescreve o sistema na seguinte forma,
)k(u100
)k(x)k(x)k(x
1.15.02.0001100
)1k(x)1k(x)1k(x
3
1
2
3
1
2
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡+
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−=
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧
+++
Nesta nova configuração,
)k(x)k(x 2a = ; ⎭⎬⎫
⎩⎨⎧
=)k(x)k(x
)k(x3
1b
0G aa = ; [ ]10G ab = ; ⎥⎦
⎤⎢⎣
⎡−
=2.0
1G ba ; ⎥
⎦
⎤⎢⎣
⎡−
=1.15.0
00G bb
0Ha = ; ⎥⎦
⎤⎢⎣
⎡=
10
Hb
Ainda do Exemplo 7.4, o ganho do controlador, [ ]4.08.075.0K c −−=
O ganho do observador de estado mínimo pode ser encontrado através da equação do erro dada por,
( ) )k(eGKG)1k(e abebb −=+ Como foi especificado resposta tipo deadbeat, então,
( ) 0zz 2 ==φ Aplicando a fórmula de ackerman,
( ) ⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡φ=
−
1.10
10
GGG
GK1
bbab
abbbe
A construção do diagrama de blocos segue através das seguintes equações, ( ) ( )( )[ ]
)k(u3P)k(y2P)k(~1P)k(yGKGKGKG)k(uHKH)k(~GKG)1k(~
aaebaeabebb
aebabebb
++η=−+−+−+η−=+η
Substituindo os valores,
107
)k(u10
)k(y2.0
1)k(~)k(~
05.000
)1k(~)1k(~
)k(u3P)k(y2P)k(~1P)1k(~
2
1
2
1⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡−
+⎭⎬⎫
⎩⎨⎧ηη
⎥⎦
⎤⎢⎣
⎡−
=⎭⎬⎫
⎩⎨⎧
+η+η
++η=+η
A segunda equação a ser utilizada, )k(yK)k(~)k(xK)k(~)k(x~ eaeb +η=+η=
Substituindo os valores,
)k(y1.1
0)k(~)k(~
)k(x~)k(x~
2
1
3
1⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧ηη
=⎭⎬⎫
⎩⎨⎧
Finalmente a terceira equação,
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧−=
⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧−=
)k(x~)k(x)k(x~
K)k(rK)k(x)k(x)k(x
K)k(rK)k(u
3
2
1
c0
3
2
1
c0
Substituindo os valores,
[ ]⎪⎭
⎪⎬
⎫
⎪⎩
⎪⎨
⎧−−−=
)k(x~)k(x)k(x~
4.08.075.0)k(rK)k(u
3
2
1
0
Chegando a,
x(k+1) x(k)
n(k+1) n(k)
x~(k)
0.25z1
RespostaControlada
Kc* u
P3* u
H* u
Ke2* uP2* u
P1* u
G* u
z1
C* u
3
33
3
3
33
2
2
222
2
2
2
2
2
2 3
3
2
Figura 7.13: Diagrama de blocos do sistema de controle com estimador de ordem
mínima
7.7 Exercícios Propostos Exercício 7.1: (Prova 2007) Para o sistema abaixo, pede-se,
[ ]⎭⎬⎫
⎩⎨⎧
++
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−−
=⎭⎬⎫
⎩⎨⎧
++
)1k(x)1k(x
01)k(y
)k(u5.0
1)k(x)k(x
05.011
)1k(x)1k(x
2
1
2
1
2
1
a) Verificar se o sistema é Controlável;
108
b) Projetar um sistema de controle via realimentação de estado para que os novos pólos do sistema sejam posicionados em, 3.015.02,1 jz ±−=
c) Supondo uma entrada degrau r(k), calcular qual o ganho k0 para que não haja erro estacionário;
Exercício 7.2: (Prova 2007) Para o sistema do Exercício 7.1, pede-se,
a) Verificar se o sistema é Observável; b) Projetar um observador de ordem completa para que este apresente resposta
tipo DeadBeat; c) Colocar as equações necessárias e desenhar o diagrama de blocos da planta –
observador de ordem completa – realimentação de estado para uma resposta ao degrau unitário;
Exercício 7.3: (Prova 2007) Para o sistema abaixo, pede-se,
[ ]⎭⎬⎫
⎩⎨⎧
++
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−−
=⎭⎬⎫
⎩⎨⎧
++
)1k(x)1k(x
01)k(y
)k(u5.0
1)k(x)k(x
75.05.02.01
)1k(x)1k(x
2
1
2
1
2
1
a) Projetar um observador de ordem mínima para o estado que não é medido, para que este apresente uma resposta tipo DeadBeat;
b) Escrever as equações necessárias e desenhar o diagrama de blocos planta - observador de ordem mínima – realimentação de estado supondo que o sistema seja um regulador.
Exercício 7.4: (Exame 2007) Para o sistema abaixo pede-se,
[ ]⎭⎬⎫
⎩⎨⎧
++
=
⎥⎦
⎤⎢⎣
⎡+
⎭⎬⎫
⎩⎨⎧⎥⎦
⎤⎢⎣
⎡−−
=⎭⎬⎫
⎩⎨⎧
++
)1k(x)1k(x
10)k(y
)k(u21
)k(x)k(x
0211
)1k(x)1k(x
2
1
2
1
2
1
a) Verificar se o sistema é Controlável e Observável; b) Projetar um sistema de controle via realimentação de estado para que os
novos pólos do sistema sejam posicionados em, 5.0j5.0z 2,1 ±−= ; c) Projetar um observador de ordem reduzida para o estado que não é medido,
supor resposta deadbeat para o observador de ordem reduzida; d) Escrever as equações necessárias e o diagrama de blocos para o conjunto
sistema-controlador-observador de ordem reduzida supondo que o sistema de controle seja um Regulador.
109
Capítulo 8
8 Projetos Nesta parte, será apresentada uma seqüência de projetos interessantes de sistemas mecânicos envolvendo sistemas de controle em tempo discreto. Para a implementação dos sistemas de controle, necessariamente deverá ser seguido os seguintes passos,
1. Modelagem matemática; onde o aluno deverá assumir todas as condições necessárias para o equacionamento do sistema, tais como posição dos sensores e atuadores, se há atrito, linearização, etc.
2. Equações na forma de função de transferência e de Espaço
de Estados ambos em tempo contínuo e tempo discreto; onde o aluno deverá optar por uma das formas para a transformação de tempo contínuo para tempo discreto. Além disso, deve-se especificar qual o tempo de amostragem e explicar a sua escolha;
3. Apresentar o sistema em diagrama de blocos; nesta parte
será apresentado o diagrama de blocos contendo planta e sistema de controle separadamente, pode ser feita em Simulink;
4. Implementação do sistema de controle, explicando a sua
escolha e detalhando o procedimento de cálculo;
5. Apresentação dos resultados contendo distúrbio e lei de controle;
110
8.1 Pêndulo Invertido Implementar um sistema de controle para que a massa suspensa do pêndulo invertido apresentado na Figura 8.1 fique em equilíbrio na posição vertical. Sabendo-se que M = 2 Kg, L = 0.5 m e m = 0.1 kg.
Figura 8.1: Pêndulo invertido.
O problema está resolvido por realimentação de estado no Ogata, página 596. Implementar um controlador PID para que o desempenho do sistema controlado seja parecido com o já implementado.
111
8.2 Suspensão Ativa para ¼ de veículo Implementar um sistema de controle em ¼ de suspensão veicular, Figura 8.2, para que a massa suspensa da suspensão apresente a menor aceleração possível. Sabendo-se que Ms = 250 Kg, Ks = 5.000 N/m, Cs = 250 Ns/m, Mn = 25 kg e Kp = 100.000 N/m.
Figura 8.2: Suspensão de ¼ de veículo.
Para a implementação do sistema de controle, assumir que apenas a aceleração é medida, mas verificar a aceleração e deslocamento da massa suspensa. O objetivo aqui é manter a aceleração da massa suspensa igual a zero, portanto o sistema de controle é um regulador. Distúrbios da via a serem considerados
a) Entrada degrau com 100 mm de altura; b) Entrada ½ circunferência de 150 mm de raio;
Deve ser lembrado que os distúrbios da via são relacionados com o tempo, simular para 40 km/h e 100 km/h.
112
8.3 Controle não colocado Supondo o sistema apresentado na Figura 8.3, o objetivo e minimizar o deslocamento da massa M3, com um controlador posicionado entre as massas M1 e M2 e um outro controlador posicionado entre as massas M2 e M3.
Figura 8.3: Sistema de 3GDL para controle não colocado.
Objeivo é investiga sistemas de controle “colocado” e “não colocado”. Considerar que M1 = M2 = M3 = 0.5 Kg, K1 = K2 = K3 = 10 KN/m. Excitação é um impulso dado na massa M3.
113
8.4 Projeto de Filtros Digiais Apresentar o projeto de filtros digitais contendo os seguintes passos:
a) O que são filtros digitais; b) Para que são utilizados; c) Influência dos pólos e zeros; d) Tipos de Filtros digitais; e) Projetos de cada Tipo; f) Resposta em Freqüência;
O aluno deverá fazer uma implementação computacional exemplificando a utilização de filtros digitais;
114
9 Referências Bibliográficas K. Ogata. Discrete-Time Control Systems. 2nd Ed. Prentice Hall, 1994. G.F. Franklin, J.D. Powell, and M.L. Workman. Digital Control of Dynamic Systems.
Addison-Wesley, 3rd Edition. 1998. C.H. Houpis, G.B. Lamont. Control Systems. Theory, Hardware, Software. 2nd Ed.
McGraw-Hill, 1992. J.J. Distefano III, A. R. Stubberud. Schaum’s Outline of Theory and Problems of
Feedback and Control Systems. 2nd Ed., Schaum’s Outline Series, McGraw-Hill. 1990.