Escolar Documentos
Profissional Documentos
Cultura Documentos
Escola de Engenharia
Departamento de Mecnica - DEMEC
Notas de Aula
Fevereiro de 2008
Prefcio
Ementa:
Amostragem de Sinais contnuos; Transformada Z; Modelos Discretos; Espao de
Estados discreto; Anlise de Sistemas Discretos; Controladores PID digital; Mtodos de
projeto de controladores em tempo discreto.
Programa:
Semana: Data: Assunto:
1 27/02 Introduo ao controle de sistemas em tempo discreto
2 05/03 Transformada Z
3 12/03 Funo de Transferncia em Tempo Discreto Parte I
4 19/03 Funo de Transferncia em Tempo Discreto Parte II
5 26/03 Aula de Exerccios
6 02/04 1 Prova
7 09/04 Projeto de Controladores por Mtodos Clssicos
8 16/04 Exerccios
9 23/04 Formulao por Matrizes de Estado
10 07/05 Controlabilidade e Observabilidade
11 14/05 Alocao de Plos, realimentao e observadores de estado
12 21/05 Exerccios Matlab
13 28/05 Observadores de ordem reduzida
14 04/06 Exerccios
15 11/06 Exerccios adicionais
16 18/06 2 Prova
17 25/06 Apresentao dos projetos
Critrios de Avaliao:
1 Prova 35%, 2 Prova 35%, projeto 20%, listas de exerccio 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.
ii
Sumrio
iii
5.1 INTRODUO FORMULAO DE ESTADO ...............................................................................61
5.2 NOMENCLATURA DE ESPAO DE ESTADOS ..............................................................................62
5.3 REPRESENTAO DE ESPAO DE ESTADOS DISCRETOS ............................................................62
5.3.1 Forma Cannica Controlvel.............................................................................................62
5.3.2 Forma Cannica Observvel..............................................................................................63
5.3.3 Forma Cannica Diagonal.................................................................................................63
5.3.4 Forma Cannica de Jordan................................................................................................64
5.3.5 No 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 DISCRETIZAO DE MATRIZES DE ESTADO CONTNUAS ..........................................................66
5.7 EXERCCIOS RESOLVIDOS ........................................................................................................69
5.8 EXERCCIOS PROPOSTOS ..........................................................................................................72
6 CONTROLABILIDADE E OBSERVABILIDADE ......................................... 73
6.1 INTRODUO ...........................................................................................................................73
6.2 CONTROLABILIDADE ................................................................................................................73
6.3 CONTROLABILIDADE DE SADA ................................................................................................75
6.4 OBSERVABILIDADE ..................................................................................................................76
6.5 COMENTRIOS GERAIS SOBRE CONTROLABILIDADE E OBSERVABILIDADE................................79
6.5.1 Condies de controlabilidade e observabilidade em termos de Funes de Transferncia
79
6.5.2 Efeito da discretizao .......................................................................................................80
6.5.3 Princpio da dualidade .......................................................................................................81
6.6 EXERCCIOS RESOLVIDOS ........................................................................................................82
6.7 EXERCCIOS PROPOSTOS ..........................................................................................................83
7 PROJETO DE CONTROLADORES VIA ALOCAO DE PLOS ........... 84
7.1 INTRODUO ...........................................................................................................................84
7.2 FRMULA DE ACKERMANN ......................................................................................................85
7.3 FORMAS ALTERNATIVAS PARA O GANHO K ..............................................................................86
7.4 CONTROLE POR REALIMENTAO DE ESTADO .........................................................................88
7.5 OBSERVADORES DE ESTADO ....................................................................................................90
7.5.1 Observadores de Estado de Ordem Completa....................................................................91
7.5.2 Comentrios sobre estimador de estado.............................................................................93
7.5.3 Estimadores de Ordem Reduzida........................................................................................97
7.6 EXERCCIOS RESOLVIDOS ......................................................................................................103
7.7 EXERCCIOS PROPOSTOS ........................................................................................................109
8 PROJETOS ......................................................................................................... 111
8.1 PNDULO INVERTIDO .............................................................................................................112
8.2 SUSPENSO ATIVA PARA DE VECULO ................................................................................113
8.3 CONTROLE NO COLOCADO ...................................................................................................114
8.4 PROJETO DE FILTROS DIGIAIS ................................................................................................115
9 REFERNCIAS BIBLIOGRFICAS ............................................................. 116
iv
Captulo 1
1.1 Introduo
1
Figura 1.2: Exemplo de um sistema de controle em tempo discreto
Varivel Fsica a quantidade fsica que se deseja medir para ser usada no
sistema de controle, por exemplo, deslocamento, velocidade, acelerao, temperatura,
presso, etc.
2
Figura 1.3: Exemplo de curva em freqncia de um filtros ideais. Passa-baixo. Passa-
alta, Rejeita-banda ou Notch e Passa-banda
3
Figura 1.5: sinal contnuo e sinal contnuo com segurador de ordem zero
4
Figura 1.8: Sistema de controle detalhado
5
A Figura 1.9(a) representa um sinal analgico qualquer, enquanto que a Figura
1.9(d) representa um sinal visto por um sistema de aquisio de dados, isso significa
que existiro erros entre a passagem de um sinal contnuo para um sinal discreto. Aqui o
termo sinal contnuo 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).
Este item ser explicado como a amostragem de um sinal contnuo deve ser feito
sem que haja perda de informao ou se cometa erros durante este processo.
6
Para que um sinal contnuo possa ser corretamente discretizado, ele deve
obedecer as regras imposta por Fourier, isto , a maior freqncia contida no sinal a ser
amostrado dever obrigatoriamente ser menor que metade da freqncia de amostragem
fa que conhecida como freqncia de Nyquist fN. De modo geral, para uma boa
aplicao de sistemas de controle, deve ser considerado pelo menos de 4 a 6 pontos por
perodo da maior freqncia a ser amostrada para que o sistema de controle possa
funcionar adequadamente.
Exemplo 1.3: Supor um sinal analgico com apenas uma freqncia igual a 400 Hz. Se
a amostragem for feita com uma freqncia de amostragem fa = 1600 Hz. Pede-se:
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 senide com freqncias de 65 e 85 Hz. Qual
dever ser o tempo de amostragem mnimo supondo 6 pontos por perodo?
Soluo:
Para 6 pontos por perodo,
1 1
F = 65 Hz, ento, T = = 2.57 ms
6 65
1 1
F = 85 Hz, ento, T = = 1.96 ms
6 85
7
k 447.21
n = = 447.21 rad / s significando que f n = = 71.18 Hz , ento
m 2
1 1
T= = 2.35 ms
6 71.18
Desta forma, ter de ser amostrado com o menor T, ento, 1.96 ms.
Supondo a Figura 1.12, observe que se a senoide de 400 Hz for amostrada com T
= 2 ms isso representa uma freqncia de amostragem fa = 500 Hz e uma freqncia de
Nyquist fN = 250 Hz. O sinal original de 400 Hz se rebate em Nyquist, representando
uma freqncia aparente de 100 Hz.
Desta forma, no se pode amostrar um sinal cuja freqncia seja maior que a
freqncia de Nyquist, para evitar este problema, os sinais devem ser filtrados por um
filtro passa baixo para eliminar todas as freqncias do sinal acima de Nyquist.
Alm disso, significa que uma vez o sinal tenha sido amostrado, no mais
possvel recupera-lo completamente devido ao problema de amostragem. Por isso, a
discretizao do sinal deve ser feita com muito cuidado para obter o resultado final
desejado.
Em geral, o tempo de discretizao ser limitado pela capacidade da placa de
aquisio de sinais, isto , as placas possuem uma capacidade limitada em velocidade de
processamento, isso na prtica ir limitar a velocidade de aquisio.
8
Exerccio 1.1: (Prova de 2007) Calcular o tempo de amostragem mnimo para simular o
sistema de 2 ordem dado abaixo para uma entrada senoidal com freqncia = 50
radl/s, supondo 6 pontos por perodo.
100
G (s) = 2
s + 20s + 10000
9
Captulo 2
2 Transformada Z
Neste captulo, ser abordada a transformada e a transformada inversa de Z.
2.1.1 Transformada Z
1 0 t
Funo Degrau Unitrio definido como x (t ) =
0 t < 0
Soluo: Aplicando a definio,
X(z ) = Z[x (t )] = Z[1] = z k = 1 + z 1 + z 2 + z 3 + L
k =0
Fazendo,
G
G = 1 + z 1 + z 2 + z 3 + L = z 1 + z 2 + z 3 + z 4 L = G 1
z
Portanto,
G z 1
= G 1 G = zG z G (z 1) = z G = =
z z 1 1 z 1
Ento,
10
1 z
X(z ) = Z[x (t )] = Z[1] = z k = 1 + z 1 + z 2 + z 3 + L = 1
=
k =0 1 z z 1
t 0 t
Funo Rampa Unitria definida por: x (t ) =
0 t < 0
Soluo: Aplicando a definio,
( )
X(z ) = Z[t ] = Z[kT ] = kTz k = T z 1 + 2z 2 + 3z 3 + L
k =0
Fazendo,
G = z 1 + 2z 2 + 3z 3 + L
(1 z 1 )G = z 1 + 2z 2 + 3z 3 + L z 2 2z 3 3z 4 L
z 1
G = z 1 + z 2 + z 3 + z 4 + L
z
Comparando com o exemplo do degrau unitrio, ento,
z z 1 z 1
1 = GG= =
z 1 z 2
(
(z 1) 1 z 1 2 )
Portanto,
Tz 1
( )
Tz
X(z ) = Z[t ] = Z[kT ] = kTz k = T 1z 1 + 2z 2 + 3z 3 + L = =
k =0 (
1 z 1 )
2
(z 1)2
a k 0t
Funo Polinomial na forma x (t ) = com a constante.
0 t<0
Soluo: Aplicando a definio,
[ ]
1 z
X(z ) = Z a k = a k z k = 1 + az 1 + a 2 z 2 + a 3 z 3 + L = 1
=
k =0 1 az za
Utilizando o mesmo princpio do exemplo anterior,
G = 1 + az 1 + a 2 z 2 + a 3 z 3 + L
Portanto,
(1 az 1 )G = 1 + az 1 + a 2 z 2 + a 3 z 3 + L az 1 a 2 z 2 a 3 z 3 L = 1
Ento,
1 z
(1 az 1 )G = 1 G = 1
=
1 az za
Finalmente,
[ ]
1 z
X(z ) = Z a k = a k z k = 1 + az 1 + a 2 z 2 + a 3 z 3 + L = 1
=
k =0 1 az za
e at 0t
Funo Exponencial na forma: x (t ) =
0 t<0
Soluo: Aplicando a definio,
[ ] [ ]
X(z ) = Z e at = Z e akT = e akT z k = 1 + e aT z 1 + e 2aT z 2 + e 3aT z 3 + L
k =0
11
Comparando com a soluo do exemplo anterior, fcil notar que a = e-aT, ento,
[ ] [ ]
1 z
X(z ) = Z e at = Z e akT = e akT z k = aT 1
=
k =0 1 e z z e aT
sin t 0 t
Funo Senoidal definida como: x (t ) =
0 t<0
Soluo: Sabendo-se que,
sin t =
1 j t
2j
(
e e j t )
Aplicando a definio,
1
( 1
X(z ) = Z[sin t ] = Z e jt e jt =
2 j 2 j
) ([ ] [
Z e j t Z e j t ])
Observe que aqui se aplicou duas propriedades da transformada Z, que foi a
multiplicao por uma constante e a propriedade da soma.
Ento, pela transformada Z da exponencial,
1 1
(
Z[x (t )] = Z[sin t ] = Z e jt e jt = ) 1
jT 1
1
jT 1
2j 2j 1 e z 1 e z
=
1 (
e jT e jT z 1 )=
z 1 sin T
= 2
z sin T
(
jT
2j1 e + e jT 1
z +z) 2 1
1 2z cos T + z 2
z 2z cos T + 1
m= n
Como x(mT) para m<0 por definio igual a zero,
12
Z[x ( t nT )] = z n x (mT)z m = z n X(z)
m =0
Alm disso,
n 1
Z[x ( t + nT )] = z n X(z) x (kT)z k
k =0
Prova
Z[x ( t + nT)] = x (kT + nT )z k
k =0
= z n x (kT + nT )z (k + n )
k =0
n 1
= z n x (mT)z m = z n x (mT)z m z n x (mT)z m
m=n m =0 m=0
n 1
= z n X(z) z n x (mT)z m
m =0
n 1
= z n X(z) x (kT)z k
k =0
Translao complexa,
[ ] ( ) ( )
Z e at x ( t ) = x (kT)e akT z k = x (kT ) e aT z
k
= X ze aT
k =0 k =0
X(z ) = Z te at =[ ] =
Tze aT
(1 (ze ) ) aT 1
2
(ze aT
1)
2
13
Teorema do valor inicial: Se x(t) possui uma transformada X(z) e se lim X(z)
z
existe, ento o valor inicial x(0) dado por,
x (0) = lim X(z)
z
Prova: Como a transformada z de uma seqncia de nmeros dada por,
X(z ) = Z[x (kT)] = x (kT)z k = x (0) + x (T)z 1 + x (2T)z 2 + x (3T)z 3 + L
k =0
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 plos de X(z) estejam dentro do circulo de raio unitrio
com exceo de um plo simples em z = 1, isto a condio de estabilidade que ser
apresentada mais frente. Ento, o valor final de x(kT) pode ser expresso por,
lim x (kT) = lim 1 z 1 X(z)
k z 1
[( ) ]
Prova: Sabendo-se que pela definio da transformada Z,
Z[x (kT )] = X(z ) = x (kT )z k
k =0
Ento,
Z[x (kT T )] = z 1 X(z ) = x (kT T )z k
k =0
Subtraindo um do outro,
z 1
k =0 k =0 z 1
Como foi assumido que x(k) = 0 para k < 0 ento, o lado esquerdo da equao
acima torna-se,
[ ]
lim x (kT )z k x (kT T )z k = x (kT )(1) x (kT T)(1)
k k
z 1
k =0 k =0 k =0
= [x (kT ) x (kT T)]
k =0
Expandindo o somatrio,
= x () = lim x (k )
k
Ento,
[(
lim x (k ) = lim 1 z 1 X(z)
k z 1
) ]
14
da amostragem. Por exemplo, o sinal apresentado na Figura 2.1, como o sinal amostrado
gera apenas os pontos discretos, qual o sinal real?
1.5
0.5
-0.5
-1
-1.5
-2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
z 1
Exemplo 2.3: Encontrar a transformada z inversa de X(z) =
1 az 1
Soluo: Nas tabelas de transformada Z no se encontra a funo acima, porm,
fazendo,
1
X(z) = z 1 Y(z) =
1 az 1
Utilizando a tabela de transformada z, tem-se que,
1
Z 1 [Y(z)] = Z 1 1
= ak
1 az
Porm, o desejado ,
[ ]
Z 1 [X(z)] = Z 1 z 1 Y(z) = y(kT T) = a ( k 1) T
Assim,
y(kT T) = a ( k 1) T k = 1,2,3, L
y(kT ) =
0 k0
15
Para encontrar a transformada z inversa de X(z), deve-se notar que X(z) dada
da seguinte forma,
b 0 z m + b1 z m 1 + L + b m 1 z + b m
X(z) = com m n
z n + a 1 z n 1 + L + a n 1 z + a n
Ou ainda,
b z ( n m ) + b1 z ( n m +1) + L + b m z n
X(z) = 0
1 + a 1 z 1 + L + a n z n
Colocando na forma de plos e zeros,
b (z z 1 )(z z 2 )L (z z m )
X(z) = 0
(z p1 )(z p 2 )L (z p n )
Supondo que todos os plos so plos no repetidos e tenha pelo menos 1 zero
na origem, bm = 0, ento, a melhor expanso ser na forma,
X(z) a1 a2 an
= + +L+
z z p1 z p 2 z pn
Se houver plos repetidos, supondo um plo duplo e nenhum outro plo, a
expanso poder ser na forma,
X(z) c1 c
= + 2
z (z p1 ) z p1
2
(a 1 + a 2 )z 2 + ( a 1 a 2 + a 3 )z + (a 1 a 3 )
=
(z 1)(z 2 z + 1)
Portanto, montando o sistema matricial para a soluo,
1
1 1 0 a 1 1 a 1 1 1 0 1 4
1 1 1 a = 1 a = 1 1 1 1 = 3
2 2
1
0 1 a 3 2 a 3 1 0 1 2 2
Ento,
z2 + z + 2 4 3z + 2 4 3z 2
X(z) = = + 2 = + 2 + 2
(z 1)(z z + 1) z 1 z z + 1 z 1 z z + 1 z z + 1
2
4z 1 3z 1 2z 2
= +
1 z 1 1 z 1 + z 2 1 z 1 + z 2
Para o primeiro termo,
4 k = 1,2,3,L
z 1 X(z) = Y(z) =
4
1 z 1
y ( kT ) = 4(1 ) x ( kT ) = 4 1( )
k 1
=
k0
0
Para o segundo termo, deve-se notar que,
16
z 1 sin T
Z[sin t ] =
1 2z 1 cos T + z 2
Aplicando o teorema da translao complexa,
[ ]
Z e akT sin kT =
e aT z 1 sin T
1 2e aT z 1 cos T + e 2 aT z 2
Ento, comparando o segundo membro de X(z) com a equao acima, nota-se
que se e 2aT = 1 , significando que e aT = 1 e cos T = 1 2 , significando que T = 3
e consequentemente, sin T = 3 2 . Ento,
k e aT z 1 sin T 3 z 1
Z(1) sin k = =
3 1 2e aT z 1 cos T + e 2aT z 2 2 1 z 1 + z 2
Significando que,
2 3 (1k )sin k k = 1,2,3,L
3z 1
X(z) = Z2 3 (1k )sin k =
x ( kT ) = 3
3 1 z 1 + z 2 0 k0
Para a terceira parte, utilizando a resposta anterior,
4 3 k 4z 1
z 1 X(z) = Y(z) = Z (
1 )sin k = 1 2
3 3 1 z + z
4 3 k
x (kT) = 3 (1 )sin 3 (k 1) k = 1,2,3,L
0 k0
Portanto, a soluo final fica,
4 3
x (kT) = 4 2 3 sin 3 k + 3 sin 3 (k 1) k = 1,2,3,L
0 k0
Soluo encontrada.
x =
17
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
18
1
0.8
x(t)
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8
t
Figura 2.2: sinal a ser discretizado
Observe que h algumas possveis solues, pois x(t) pode ser escrita como 3
impulsos devidamente defasados e o degrau unitrio defasado de 4 instantes de tempo,
x (kT) = 0.25(kT 1) + 0.5(kT 2) + 0.75(kT 3) + 1(kT 4)
Aplicando a transformada Z em cada termo,
z 1 z 2 3z 3 z 4 z 1 z 5
Z[x (kT)] = + + + =
4 2 4 1 z 1 4(1 z 1 )2
Ou ento, como uma reta iniciando em 0 menos uma reta negativa iniciando em
4,
1 1
x (kT) =
kT (kT 4)
4 4
Aplicando a transformada Z em cada termo,
1 z 1 1 z 5 z 1 z 5
Z[x (kT)] = =
4 (1 z 1 )2 4 (1 z 1 )2 4(1 z 1 )2
0.8
0.6
x(t)
0.4
0.2
0
0 1 2 3 4 5 6 7 8
c) t
19
b) Valor final x();
c) A transformada Inversa;
20
Captulo 3
21
Agora aplicando a Transformada de Laplace no sinal amostrado,
[ ]
X * (s) = L x * ( t ) = x (0)L[( t )] + x (T)L[( t T)] + x (2T )L[( t 2T)] + L
= x (0) + x (T)e Ts + x (2T)e 2 Ts + L
= x (kT)e kTs
k =0
Sabendo-se que a Transformada de laplace de um impulso defasado de a ,
L[( t a )] = e as
Ento,
X * (s) = x (0) + x (T)e Ts + x (2T)e 2 Ts + L = x (kT)e kTs
k =0
Definindo,
1
e Ts = z s= ln z
T
Ento,
X * (s) 1 = x (kT )z k
s = ln z
T k =0
O lado direito desta equao a definio de transformada Z da seqncia x(t),
ento,
X * (s) 1 = X(z)
s = ln z
T
Desta forma,
1
X * ln z = X(z)
T
22
h (kT + ) = x (kT)
Na Figura 3.3:, observa-se o resultado de um segurador de ordem zero.
Figura 3.3: Exemplo de sinal amostrado com uma reconstruo utilizando o ZOH
Como,
X * (s) = x (kT)e kTs
k =0
Ento,
1 e Ts *
H(s) = X (s)
s
Consequentemente, a funo de transferncia o ZOH dada por,
H(s) 1 e Ts
G ZOH (s) = * =
X (s) s
23
h (kT + ) = a 1 + x (kT)
Aplicando a condio que,
h ((k 1)T ) = x ((k 1)T)
Ento,
h ((k 1)T) = a 1T + x (kT) = x ((k 1)T)
Portanto,
x (kT) x ((k 1)T)
a1 =
T
Consequentemente, a equao do segurador de primeira ordem fica,
x (kT) x ((k 1)T)
h (kT + ) = + x (kT)
T
Como o FOH utiliza uma extrapolao linear utilizando o valor anterior e o atual
para predizer o valor do prximo e, alm disso, o valor h(kT) deve ser igual a x(kT).
ento,
x (0) x (T)
k = 0 h () = + x (0) = 1 + x (0)
T T
x (T ) x (0)
k = 1 h (T + ) = + x (T) = 1 + x (T ) x (0)
T T T
x (2T) x (T)
k = 2 h (2T + ) = + x (2T) = 1 + x (2T) x (T)
T T T
Que pode ser expressa convenientemente como,
h (kT + ) = 1 + x (T) x ((k 1)T)
T T
Fica difcil escrever a equao sem assumir uma entrada conhecida, utilizando
uma entrada degrau para x(t),
t t
h ( t ) = 1 + 1( t ) 1( t T)
T T
Somando e subtraindo 1(t-T),
t tT
h ( t ) = 1 + 1( t ) 1( t T) 1( t T )
T T
Aplicando a transformada de Laplace a cada um dos termos da equao acima,
Ts + 1
1 1 1
(
1
H(s) = + 2 2 e Ts e Ts = 1 e Ts )
s Ts Ts s Ts 2
*
Agora, a transformada de Laplace da entrada x (t) do FOH ,
1
X (s) = 1(kT)e kTs =
*
k =0 1 e Ts
Ento a funo de transferncia do segurador de primeira ordem FOH fica,
2 Ts + 1
G FOH (s) = * (H(s)
)
= 1 e Ts
X (s) Ts 2
Um exemplo do FOH dado na Figura 3.4:.
24
Figura 3.4: FOH de um sinal qualquer
Supondo que antes da funo G(s) h um ZOH, ento a convoluo de G(s) com
o ZOH dada por,
1 e Ts
X(s) = G (s)
s
Fazendo,
1 e Ts
X(s) =
s
(
G (s) = 1 e Ts
G (s)
s
) ( )
= 1 e Ts G 1 (s) = G 1 (s) e Ts G 1 (s)
Pegando apenas o ltimo termo,
X 1 (s) = e Ts G 1 (s)
Aplicando o teorema da convoluo,
t
x 1 ( t ) = g 0 ( t )g 1 ()d
0
onde,
[ ]
g 0 ( t ) = L1 e Ts = (t T )
g 1 ( t ) = L1 [G 1 (s)]
Ento,
t
x 1 ( t ) = ( t T )g 1 ()d
0
G (z) = (1 z )G (z) = (1 z )Z
G (s)
= G 1 (z) z 1 1 1
s
1 1
No caso do FOH preceder a funo G(s), tem-se
2 Ts + 1
X(s) = 1 e Ts ( G (s) )
Ts 2
Utilizando o mesmo resultado do ZOH,
25
Ts + 1
X(z) = Z 1 e Ts( )
2
2
G (s)
Ts
2 Ts + 1
(
= 1 z 1 Z 2
)
G (s)
Ts
( ) 1
= 1 z 1 Z
1
= 1 z 1 1
(
1
) 1 e z
=
T 1
( )
1 z 1 1 e T z 1 1 e T z 1
s s + 1
=
(
2e (1 / 2 )Tj e (1 / 2 )Tj e (1 / 2 )Tj )
= Te 1 / 2Tj
sin (T / 2)
2 j T / 2
26
Figura 3.5: Resposta em freqncia do ZOH
27
X(z) = Z[(kT)] = x (kT)z k = 1
k =0
Significando que Y(z) = H(z) se a entrada for um impulso.
[ ]
t
y( t ) = L1 H(s)X * (s) = h ( t ) x * ()d
0
t
= h ( t ) x ()( kT)d = h (kT) x (kT)
0 k =0 k =0
Aplicando a transformada Z,
Y(z) = h (kT) x (kT) z n
n =0 k =0
Fazendo m = n - k,
Y(z) = h (mT) x (kT)z (k +m )
m = 0 k =0
= h (mT)z m x (kT)z k
m =0 k =0
= H(z)X(z)
Significando que,
[ ]*
Y * (s) = H(s)X * (s) = H * (s)X * (s)
Aplicando transformada Z, torna-se,
Y(z)
Y(z) = H(z)X(z) = H (z)
X(z)
28
Considerando o sistema apresentado na Figura 3.7(a), supondo que os
amostradores esto sincronizados. Neste caso, observa-se que,
U(s) = G (s)X * (s)
Y(s) = H(s) U * (s)
Como mostrado no item anterior, encontra-se,
U * (s) = G * (s)X * (s)
Y * (s) = H * (s)G * (s)X * (s)
Y (s) = H (s) U (s)
* * *
29
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.
Consequentemente,
E(s) = R (s) H(s)G (s)E * (s) = R (s) HG (s)E * (s)
Que pode ser reescrito utilizando FT pulsada para todos os termos como,
R * (s)
E * (s) = R * (s) [HG (s)] E * (s) E * (s) =
*
1 + GH * (s)
Como,
C * (s) = G * (s)E * (s)
Ento, a funo de transferncia pulsada de malha fechada dada por,
R * (s) C * (s) G * (s)
C * (s) = G * (s)E * (s) = G * (s) =
1 + GH * (s) R * (s) 1 + GH * (s)
Aplicando a transformada Z, encontra-se a funo de transferncia discreta em
malha fechada,
C( z ) G (z)
=
R (z) 1 + GH(z)
30
Figura 3.9: sistema em malha fechada envolvendo amostador
31
A transformada Z de cada um dos termos utilizando a propriedade da translao
real,
~
Y(z) = x (i)z i + x (i + 1)z ( i +1) + L + x (k )z k
Porm, observe que, definindo,
~
X(z) = x (i)z i + x (i + 1)z (i +1) + L + x (k )z k + L
E da definio de transformada Z,
X(z) = Z[ x (k )] = x (k )z k = x (0) + x (1)z 1 + x (2)z 2 + L
k =0
Ento, obtm-se,
i 1
~
X(z) = X(z) x (h )z h
h =0
Por outro lado,
~
~y(k ) ~y(k 1) = x (k ) Y ~ ~ ~ 1 ~
(z) z 1 Y(z) = X(z) Y(z) = X(z)
1 z 1
~
Pois a transformada Z de x(k) que comea em k = i X(z) , finalmente,
k ~ 1 ~ 1 i 1
Z x ( h ) = Y ( z ) = 1
X ( z ) = 1
X ( z ) x (h )z h
h =i 1 z 1 z h =0
Voltando ao problema original utilizando o resultado acima e assumindo a
causalidade, isto , que para o tempo t = 0 no h resposta do erro,
k 1
Z e(hT) = 1
[E(z) E(0)] = 1 1 E(z)
h =1 1 z 1 z
k 1 z 1
Z e((h 1)T) = z 1 1
[E ( z ) E ( 0) ] = 1
E(z)
h =1 1 z 1 z
Agora, para
Z[e(kT)] = E(z)
Z[e((k 1)T)] = z 1 E(z)
Ento, a transformada Z do controlador PID dada por,
T 1 1 z 1 Td
M ( z ) = K E ( z ) + +
Ti 2 1 z 1 1 z 1 T
+ E ( z ) z [
1
E ( z ) ]
Resultando em,
T 1 + z 1 Td
M(z)
= K 1 + 1
+ (
1 z 1 )
E(z) 2Ti 1 z T
Rearranjando os termos,
M(z)
= K1
T
+
T 1
1
T
+ d 1 z 1 ( )
E(z) 2Ti Ti 1 z T
= K P +
KI
1 z 1
(
+ K D 1 z 1 )
Onde
KT K
Kp = K =K I = ganho proporcional
2Ti 2
32
KT
KI = = ganho integral
Ti
KTD
KD = = ganho derivativo
T
R(z)
KP +
KI
(
+ K D 1 z 1 ) 0.3679z 1 + 0.2642z 2
+ - 1 z 1 ( )( )
1 0.3679z 1 1 z 1
33
1.4 1.4z 1 + 0.2z 2 0.3679z 1 + 0.2642z 2
C( z )
=
G D ( z )G ( z )
=
1 z 1 ( )( )
1 z 1 1 0.3679z 1
=
R ( z ) 1 + G D ( z )G ( z ) 1.4 1.4z 1 + 0.2z 2 0.3679z 1 + 0.2642z 2
1+
1 z 1 ( )(
1 z 1 1 0.3679z 1)
0.5151z 1 0.1452z 2 0.2963z 3 + 0.0528z 4
= 1 2.3679z 1 + 1.7358z 2 0.3679z 3
0.5151z 1 0.1452z 2 0.2963z 3 + 0.0528z 4
1+
1 2.3679z 1 + 1.7358z 2 0.3679z 3
0.5151z 1 0.1452z 2 0.2963z 3 + 0.0528z 4
=
1 1.8528z 1 + 1.5906z 2 0.6642z 3 + 0.0528z 4
Programa em Matlab
figure('Color',[1 1 1])
step(num,den) % resposta ao degrau
figure('Color',[1 1 1]);plot(kT,c,'ko',kT,c,'k-')
title('Unit-Step Response');xlabel('kT [s]');ylabel('Output C')
34
Y(z) b 0 z (n m ) + b1 z (n m +1) + L + b m z n b 0 z n m + b1 z n m 1 + L + b m
= = nm
X ( z) 1 + a 1 z 1 + L + a n z n z n + a 1 z n 1 + L + a n
Que tambm pode ser expressa na forma de plos e zeros,
Y(z) b 0 (z z 1 )(z z 2 )L (z z m )
= nm
X(z) (z p1 )(z p 2 )L (z p n )
Observe que,
Y(z) b 0 + b1 z 1 + L + b m z m
=
X(z) 1 + a 1 z 1 + L + a n z n
Que pode ser reescrita como,
(1 + a 1z 1 + L + a n z n )Y(z) = (b 0 + b1z 1 + L + b m z m )X(z)
Aplicando a transformada inversa de Z, obtm-se,
y(kT) + a 1 y(kT T) + a 2 y(kT 2T) + L + a n y(kT nT)
= b 0 x (kT) + b1 x (kT T) + L + b m x (kT mT)
Significando que a resposta atual y(kT) obtida fazendo,
y(kT) = a 1 y(kT T) a 2 y(kT 2T) L a n y(kT nT) +
+ b 0 x (kT) + b1 x (kT T) + L + b m x (kT mT)
Deve ser lembrado que para kT < 0 a resposta do sistema ser zero, isto y(-T)
= 0 devido condio de causalidade.
Exemplo 3.4: Calcular a resposta ao degrau unitrio em tempo discreto com T = 0.5
para o sistema dado em tempo contnuo,
s
G (s) =
(s + 1)2
Soluo: Das tabelas de transformada Z,
s 1 (1 + T)e T z 1 1 0.9098z 1
Z 2
= =
(s + 1) (
1 e T z 1
2
)1 1.2131z 1 + 0.3679z 2
Y(z) z 2 0.9098z
= 2
U(z) z 1.2131z + 0.3679
Ento, 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,
y(kT) = 1.2131y((k 1)T) 0.3679 y((k 2)T) + u (kT) 0.9098u ((k 1)T)
Como x(kT)=1(kT), ento, comeando o processo de iterao,
35
= 1.2131*1.3033 - 0.3679 + 1 - 0.9098 = 1.3033
36
Para implementar esta funo de transferncia 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 implementao do sistema est apresentada
na Figura 3.13:.
37
3.3.8 Resposta ao Impulso Finita e Infinita
Exemplo 3.6: Transformar a funo de transferncia abaixo que est na forma IIR para a
forma FIR e calcular a resposta ao degrau unitrio.
2 0.6z 1
G (z) =
1 + 0.5z 1
Para transformar a resposta acima para forma FIR, deve-se dividir o numerador
pelo denominador, ou ento, calcular a resposta ao impulso.
Y=
Columns 1 through 8
Columns 9 through 11
38
Tomando apenas os valores abaixo de z-7, ento, a forma FIR fica,
Y(z) 2 0.6z 1
= G (z) =
X(z) 1 + 0.5z 1
2 1.6z 1 + 0.8z 2 0.4z 3 + 0.2z 4 0.1z 5 + 0.05z 6 0.025z 7
Cuja equao de diferenas fica,
y FIR (kT) = 2x (kT) 1.6 x ((k 1)T) + 0.8x ((k 2)T) 0.4x ((k 3)T) +
+ 0.2x ((k 4)T) 0.1x ((k 5)T) + 0.05x ((k 6)T ) 0.025x ((k 7)T)
Enquanto que a forma IIR dada por,
y IIR (kT) = 0.5 y((k 1)T) + 2 x ((k )T) 0.6 x ((k 1)T)
Exemplo 3.7: Calcular a resposta de sin t na forma discreta para uma freqncia de 1
Hz utilizando 8 pontos por perodo. Utilizar a equao na forma recursiva.
39
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
Impulse Response
1
0.8
0.6
0.4
Amplitude
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
40
3.5 Exerccios Propostos
Exerccio 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,
C( z ) 1 + 2 z 1
=
(
R (z) 1 0.5z 1 2 )
Exerccio 3.5: Obter a funo de transferncia discreta em malha fechada dos seguintes
diagramas de bloco,
(a)
41
(b)
42
Captulo 4
43
Significando que esta parte repetida a cada 2k, significando que freqncias
que so mltiplas inteiras da freqncia de amostragem 2/T so mapeadas na mesma
regio no plano Z, de acordo com a Figura 4.2, pois,
z = e Ts = e T (+ j ) = e T e jT = e T e j(T 2 k )
Alm disso, o lado esquerdo do plano S possui parte real negativa, significando
que,
z = eT < 1
Ento todo o lado esquerdo do plano complexo localizado no plano Z dentro
de um crculo de raio unitrio, o eixo j mapeado exatamente em cima do circulo e o
lado direito do plano S mapeado fora do circulo de raio unitrio.
Alm disso, quanto menor o tempo de discretizao mais prximo do crculo de
raio unitrio encontra-se a raiz. Isto ocorre porque se T tende para zero ento eT tende
para 1.
Observa-se pela equao de transformao que razes com a mesma parte real
mas com parte imaginria diferente localizam-se em forma de crculo no plano
complexo, de acordo com a Figura 4.3. Isto tambm significa que a parte real d a
distncia da origem no plano z, isto , o raio.
44
Figura 4.3: Localizao das razes complexas com a mesma parte real no plano discreto.
Figura 4.4: Localizao das razes complexas com a mesma parte imaginria no plano
discreto.
Consequentemente,
2 d
2 s d
e angle(z ) = 2
1
z =e
s
Assim, a magnitude de z decresce e o ngulo aumenta quando d, que a
freqncia natural amortecida, aumenta, caracterizando assim uma espiral logartmica.
Note que para uma dada relao d/s, a magnitude de z torna-se apenas uma funo do
fator de amortecimento . A representao da curva com fator de amortecimento
constante dada na Figura 4.5.
45
Figura 4.5: Representao das curvas de fator de amortecimento constante.
1
0.5/T
0.6/T 0.4/T
0.8 0.10.3 /T
0.7/T
0.2
0.6 0.3
0.8/T 0.4 0.2/T
0.5
0.4 0.6
0.7
0.9/T 0.8 0.1/T
0.2 0.9
0
/T
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Esta abordagem anterior foi feita para determinar qual a regio dos plos e zeros
desejados para as funes de transferncia em tempo discreto. Ento a partir dos
grficos anteriores pode-se determinar a regio desejada dos plos e zeros discretos de
acordo com a Figura 4.7.
46
Figura 4.7: Localizao das razes complexas desejadas no plano discreto.
Aqui deve ser mencionado que se um sistema em tempo contnuo possui um par
de plos na forma s = - j1 no plano s, e for feita uma amostragem tal que 1 >
1/2s em que s = 2/T, sendo T o tempo de amostragem, significando que este par de
plos complexo possui freqncia natural maior que a freqncia de Nyquist, ele cair
fora da primeira faixa de valores, mas como mencionado anteriormente, ele ser
transportado para dentro do circulo de raio unitrio do plano Z como se estivesse
posicionado no plano S em s = - j(1 - s).
47
Soluo: Calculando a convoluo do ZOH com a planta,
1 e s 1 1
[ ]
Z G ZOH G p = Z = (1 z 1 )Z 2 =
s s(s + 1) s (s + 1)
1
= (1 z 1 )Z 2 = (
1 z ) [
1 (T 1 + e
T
]
) + (1 e T Te T )z 1 z 1
s (s + 1) (1 z 1 )2 (1 e T z 1 )
Esta transformada foi obtida atravs de tabela de transformao. Item 13.
fazendo a = 1. Agora substituindo os valores de T = 1 e simplificando, obtm-se,
0.3679z 1 + 0.2642z 2
[ ]
Z G ZOH G p = G (z) =
(1 z 1 )(1 0.3679z 1 )
Como a funo de transferncia em malha fechada dada por,
0.3679z 1 + 0.2642z 2
1
C( z )
=
KG (z)
=
(1 z 1 )(1 0.3679z 1 )
=
0.3679z 1 + 0.2642z 2
R (z) 1 + KG (z) 0.3679z 1 + 0.2642z 2 1 z 1 + 0.6321z 2
1+1
(1 z 1 )(1 0.3679z 1 )
Ento, calculando as razes do denominador, que so os plos, encontra-se,
z 1, 2 = 0.5 j0.6181
Pegando o valor absoluto,
z 1, 2 = (0.5)2 + (0.6181)2 = 0.7950
Como o valor menor que 1, significa que o sistema assintoticamente estvel.
48
excitao, mas ocorre uma subida rpida, o tr ser pequeno ao passo que o td
ser grande.
49
Figura 4.9: Sistema de malha fechada com controlador proporcional.
% tempo de amostragem
T = 0.5;
% Definio da planta
num=[(1-exp(-T)) 0];
den=conv([1 -1],[1 -exp(-T)]);
50
% Empacotando
sys=tf(num,den,T)
51
Figura 4.11: Lugar das razes para T = 1s
52
1 e s
[
Z G ZOH G p ] = Z
1
= 1 z 1 Z
1
= ( )
s s(s + 1)(s + 5) s(s + 1)(s + 5)
1
(
= 1 z 1 Z ) 1
+
1
=
5s 4(s + 1) 20(s + 5)
(
= 1 z 1 ) (
1
1
1
T 1
) (+
1
20 1 e 5T z 1 ) ( )
5 1 z 4 1 e z
=
( )(
4 1 e 5T z 1 1 e T z 1 5 1 z 1 1 e 5T z 1 +) ( )( ) ( )(
1 z 1 1 e T z 1 )
20 1 e T z 1 1 e 5T z 1 ( )( )
=
(4 5e T
) (
+ e 5T z 1 + 4e 6 T 5e 5T + e T z 2 )
(
20 1 e T z 1 1 e 5T z 1 )( )
O primeiro passo calcular
% Planta contnua
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('Contnuo','Discreto')
0.7
Damping: 1 Frequency (rad/sec): 3.
0.9/T 0.8 0.1/T
0.12
Amplitude
0.2 Overshoot
0.9 (%): 0
Frequency (rad/sec): 5
Contnuo /T
0.1 0
Discreto /T
0.08 -0.2
0.9/T 0.1/T
-0.4
0.06
0.8/T 0.2/T
-0.6
0.04 System: Gz
0.7/T 0.3/T Gain: 50
-0.8
0.02 Pole: 0.648 - 0.538i
0.6/T 0.4/T Damping: 0.241
0.5/T
-1 Overshoot (%): 45.8
0 Frequency (rad/sec): 7.14
0 1 2 3 4 5 6 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
53
Figura 4.13: Resposta do sistema considerando tempo contnuo e discreto e lugar das
razes
54
% Controle PD % Controle PID
% Kp = 50 , Kd = 0 % Kp = 50 , Kd = 50 , Ki = 0
Kp=50;Kd=0;Ki=0; Kp=50;Kd=50;Ki=0;
num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0]; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0];
GPIDz=tf(num,den,T) GPIDz=tf(num,den,T)
sysMA=GPIDz*Gz sysMA=GPIDz*Gz
sysMF1=feedback(sysMA,1) sysMF4=feedback(sysMA,1)
% Kp = 50 , Kd = 10 % Kp = 50 , Kd = 50 , Ki = 2
Kp=50;Kd=10;Ki=0; Kp=50;Kd=50;Ki=2;
num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0]; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0];
GPIDz=tf(num,den,T) GPIDz=tf(num,den,T)
sysMA=GPIDz*Gz sysMA= GPIDz*Gz
sysMF2=feedback(sysMA,1) sysMF5=feedback(sysMA,1)
% Kp = 50 , Kd = 50 % Kp = 50 , Kd = 50 , Ki = 10
Kp=50;Kd=50;Ki=0; Kp=50;Kd=50;Ki=10;
num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd]; num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];den=[1 -1 0];
den=[1 -1 0]; GPIDz=tf(num,den,T)
GPIDz=tf(num,den,T) sysMA=GPIDz*Gz
sysMA=GPIDz*Gz sysMF6=feedback(sysMA,1)
sysMF3=feedback(sysMA,1)
% Kp = 50 , Kd = 50 , Ki = 40
figure('Color',[1 1 1]) Kp=50;Kd=50;Ki=40;
step(sysMF1, sysMF2, sysMF3,3) num=[Kp+Kd+Ki -(Kp+2*Kd) +Kd];
legend('K_D = 0','K_D = 10','K_D = 50') 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 vrios valores de Kd, mantendo o
valor de Kp = 50.
55
Figura 4.16: Respostadas do sistema controlado para vrios valores de Ki, mantendo os
valores de Kp = 50 e Kd = 50.
Uma resposta tipo Dead Beat aquela em que o sistema apresenta o menor
tempo de estabilizao possvel, sem erro estacionrio e sem apresentar oscilaes
durante o transiente. Ento 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.
56
4.6 Projeto de Controladores PID
Para o calculo do ganho crtico, pelo menos um dos plos da equao acima
deve possuir parte real igual a zero.
57
System: Gz
Root Locus Root Locus Gain: 3.35
1
5 0.5/T Pole: 0.807 + 0.59i
0.6/T 0.4/T
Damping: 0.000454
0.8 0.7/T 0.1 0.3 /T
4 Overshoot (%): 99.9
0.2 (rad/sec): 3.15
Frequency
0.6 0.3
3 System: Gs 0.8/T 0.4 0.2/T
Gain: 4.5 0.5
Pole: 0.00145 + 3.63i 0.4 0.6
2
0.7
Imaginary Axis
Imaginary Axis
1 1
Amplitude
Amplitude
0.5 0.5
Tempo de
Oscilao Tu Tempo de
oscilao Tu
0 0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Tabela 4-1: Ajustes do controlador PID para o mtodo 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
58
Figura 4.21: Resposta ao degrau unitrio
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 so determinados
desenhando-se uma linha tangente no ponto de inflexo da curva com o formato de S e
determinando-se a interseo da linha tangente com o eixo do tempo. O ajuste do
controlador PID, segundo este mtodo, introduz no sistema dois zeros em -1/L se o
projeto for feito em tempo contnuo.
Tabela 4-2: Ajustes do controlador PID para o mtodo 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
Exerccio 4.1: Para o sistema abaixo, quais seriam os plos em tempo discreto?
100
G (s) = 2
s + 10s + 100
Exerccio 4.2: Para o Exemplo 4.1, encontrar quais os valores que K que
tornam o sistema em malha fechada um sistema assintoticamente estvel,
marginalmente estvel e instvel.
59
2 1
G (s) = e H(s) =
(s + 1)(s + 2)(s + 3) 30s + 1
Para resolver este problema deve-se assumir que h um amostrador em X(s) e
um ZOH em U(s).
60
Captulo 5
61
5.2 Nomenclatura de Espao de Estados
62
A forma cannica controlvel dada por,
x 1 (k + 1) 0 1 0 L 0 x 1 ( k ) 0
x (k + 1) 0 0 1 L 0 x 2 (k ) 0
2
M = M M M O M M + 0 u ( k )
x (k + 1) 0 0 0
L 1 x n 1 (k ) M
n 1
x n (k + 1) a n a n 1 a n 2 L a 1 x n (k ) 1
x 1 (k )
x (k )
y(k ) = [b n a n b 0 b n 1 a n 1 b 0 L b1 a 1 b 0 ] 2 + b 0 u (k )
M
x n (k )
Se a matriz G for uma matriz de posto cheio, isto , o determinante diferente
de zero, o sistema controlvel, caso contrrio, significa que pelo menos 1 dos estados
no controlvel. A controlabilidade significa que o sistema pode ser alterado de
qualquer estado para qualquer estado em um perodo de tempo finito.
M = M M M O M M + M u (k )
x (k + 1) 0 0 L 0 a x (k ) b a b
n 1 2
n 1 2 2 0
x n (k + 1) 0 0 L 1 a 1 x n (k ) b1 a 1 b 0
x 1 (k )
x (k )
y(k ) = [0 0 L 1] 2 + b 0 u (k )
M
x n (k )
Para o sistema ser completamente observvel, a matriz G deve ser uma matriz de
posto cheio. A observabilidade significa que todos os estados do sistema podem ser
observados ou medidos.
63
x 1 (k + 1) p1 0 L 0 x 1 (k ) 1
x (k + 1) 0 p 2 L 0 x 2 (k ) 1
2
= + u (k )
M 0 M O M M M
x n (k + 1) 0
0 L p n x n (k ) 1
x 1 (k )
x (k )
y(k ) = [c1 c 2 L c n ] 2 + b 0 u (k )
M
x n (k )
onde pi representa os plos do sistema.
64
x (k ) = Px (k )
onde a matriz P de ordem nn, mesma ordem da matriz G. Ento,
Px (k + 1) = GPx (k ) + Hu (k )
y(k ) = CPx (k ) + Du (k )
Que pode ser reescrito como,
x (k + 1) = P 1GPx (k ) + P 1 Hu (k )
y(k ) = CPx (k ) + Du (k )
Agora definindo,
G = P 1GP , C = CP e H = P 1 H
Ento,
x (k + 1) = G x (k ) + H
u (k )
x (k ) + Du (k )
y( k ) = C
Que exatamente da mesma forma que o sistema original. Se a matriz P for a
matriz dos autovetores da matriz G, ento o sistema ser diagonalizado, caso isso no
seja possvel, a matriz resultante ser a matriz de Jordan.
Nesta parte, supe-se que o sistema seja linear e invariante no tempo na forma,
x (k + 1) = Gx (k ) + Hu (k )
y(k ) = Cx (k ) + Du (k )
Pegando apenas os estados do sistema, para o instante inicial tm-se,
x (1) = Gx (0) + Hu (0)
Para o instante seguinte,
x (2) = Gx (1) + Hu (1) = G (Gx (0) + Hu (0) ) + Hu (1) = G 2 x (0) + GHu (0) + Hu (1)
Para o instante seguinte,
x (3) = Gx (2) + Hu (2) = G (G 2 x (0) + GHu (0) + Hu (1) ) + Hu (2) =
= G 3 x (0) + G 2 Hu (0) + GHu (1) + Hu (2)
Fazendo isso para k instantes,
k 1
x (k ) = G x (0) + G k j1 Hu ( j)
k
k = 1, 2, 3 ...
j= 0
65
zX(z) zx (0) = GX(z) + HU(z)
Y(z) = CX(z) + DU(z)
Supondo condies iniciais nulas,
zX(z) = GX(z) + HU(z) (zI G )X(z) = HU(z) X(z) = (zI G ) HU(z)
1
Substituindo em Y(z),
[
Y(z) = C(zI G ) HU(z) + DU(z) = C(zI G ) H + D U(z)
1 1
]
Como a funo de transferncia pulsada a relao dada por Y(z)/U(z),
Y(z)
= C(zI G ) H + D
1
U(z)
Observe que se Y(z)/U(z) uma matriz mr.
1
Deve ser lembrado que a integral da derivada a prpria funo aplicada os limites de integrao.
66
y( t ) = Cx ( t ) + Du ( t )
Para fazer o mesmo para um sistema discreto, tem-se que,
x& ( t ) = Ax( t ) + Bu ( t ) x ((k + 1)T) = Gx (kT) + Hu (kT)
Para que possa ser utilizada a soluo de um sistema contnuo para encontrar a
soluo de um sistema discreto, assume-se que a entrada u(t) entre um perodo e outro
de amostragem constante, isto , que h um ZOH, ento,
u ( t ) = u (kT) kT t < kT+T
Ento, a soluo,
t
x ( t ) = e At x (0) + e A ( t ) Bu ()d
0
Agora fazendo,
( k +1)T
AkT kT
x ((k + 1)T) e AT x (kT) = e A (k +1)T x (0) + 0 e A (( k +1)T )
Bu ( ) d e AT
e x ( 0) + e A (kT )Bu ()d
0
Simplificando2,
(k +1)T kT
( )
x ((k + 1)T ) = e AT x (kT ) + e A (k +1)T e AT e AkT x (0) + e A (k +1)T e Bu()d e e e Bu()d
A AT AkT A
0 0
(k +1)T
= e AT x (kT ) + e A (k +1)T e
A
Bu ()d
kT
Supondo agora o ZOH, ento, o tempo entre kT e (k+1)T pode ser substitudo
por 0 e T dentro da integral, pois o que vai variar apenas u() que considerado
constante. Ento,
T
x ((k + 1)T) = e AT x (kT ) + e AT e A Bu ()d
0
2
Deve ser lembrado que e
AT AkT
e = e A (k +1)T
67
A soluo para y(kT) dada simplesmente por,
y(kT) = Cx (kT) + Du (kT)
Se a matriz A for no singular, ento
T A
( )
H = e d B = A 1 e AT I B = e AT I A 1B ( )
0
Exemplo 5.1: Considerando o sistema abaixo, encontrar a representao de estado
discreto e a expresso para funo de transferncia discreta para T = 1 s.
1 1 b2
G (s) = = 2 = 2
s(s + 2) s + 2s s + a 1s + a 2
Soluo: O primeiro passo encontrar uma representao de estado para o
sistema, utilizando a forma cannica controlvel,
x& 1 ( t ) 0 1 x1 ( t ) 0
= + u (k )
x& 2 ( t ) 0 2 x 2 ( t ) 1
x (t)
y( t ) = [1 0] 1
x 2 ( t )
Como foi visto, para as matrizes discretas tm-se3,
G=e = AT
1
1
( )
1 e 2 T 1 0.4323
=
0 0.1353
2
0 e 2 T
Outra forma de encontrar a matriz G fazendo,
1 1
L e At = (sI A ) = s s(s + 2)
[ ] 1
0 1
s + 2
Cuja transformada de laplace inversa dada por,
1 1
e =L
At
1 s s (s + 2 ) = 2
(
1 1 1 e 2 t )
0 1 0 e 2 t
s+2
Ento,
T
T 1
H = e A d B =
1
2
( )
1 e 2 0
d =
0 0 1
0
2
e
1 e 2T 1 1 e 2 T 1
T T + T +
= 2 2 0 = 2 2 = 0.2838
1 1 0.4323
0
1
2
(
1 e 2 T
) (
2 1 e )
2 T
Desta forma, o sistema discreto na forma de matrizes de estado dado por,
3 1 2 2 1 Ak tk
e At = I + At + A t + L + Ak tk + L =
2! k! k =0 k!
68
x 1 (k + 1) 1 0.4323 x 1 (k ) 0.2838
= + u (k )
x 2 (k + 1) 0 0.1353 x 2 (k ) 0.4323
x (k )
y(k ) = [1 0] 1
x 2 (k )
Para a representao em FT discreta,
Y(z)
= G (z) = C(zI G ) H + D
1
U(z)
1
1 0 1 0.4323 0.2838 0.2838z + 0.1485
= [1 0] z
+0= 2
0 1 0 0.1353 0.4323 z 1.1353z 0.1353
O mesmo problema pode ser resolvido utilizando o Matlab,
% Planta contnua
num=1; % numerador
den=[conv([0 0 1],[1 2 0])]; % denominador
% discretizando as matrizes
T=1;
[G,H]=c2d(A,B,T)
Observe que neste caso, as matrizes de estado no esto na forma cannica, mas
o resultado em Funo de Transferncia deve ser exatamente o mesmo.
Exemplo 5.2: Para o sistema abaixo, converter para matrizes de estado discretas
utilizando o Matlab,
s+2
G (s) = 3
s + 1.6325s 2 + 10.6325s + 10
% Funes de Transferencia
Gs=tf(num,den) % planta contnua
Gz=c2d(Gs,T) % planta discreta
% Matrizes de Estado
[A,B,C,D]=tf2ss(num,den)
69
MEs=ss(A,B,C,D) % empacotando
MEz=c2d(MEs,T) % Matrizes de estado discreta
x& 4 S k ( k + k ) c c 1 k
S P S
S x 4 P
mN mN mN mN mN mN
De forma geral, se for sempre 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 dinmicas como,
70
[M ]{X && ( t )} + [C]{X& ( t )} + [K ]{X( t )} = {F( t )}
Sendo que o vetor de estado,
{X( t )} = &
X( t )
X ( t )
E as matrizes de estado,
{X& } = [M[0]]1 K [MI]1 C{X} + [M[0]]1 F{U}
A resposta do sistema deve ser dada pelo que se deseja medir, supondo que seja
necessrio medir os deslocamentos e velocidades,
y 1 1 0 0 0 x 1 0 0
y 0 1 0 0 x 0 0 u
2
= 2 +
y 3 0 0 1 0 x 3 0 0 w
y 4 0 0 0 1 x 4 0 0
Caso seje necessrio medir apenas o deslocamento da massa suspensa,
x1
x
{y1 } = [1 0 0 0] 2 + [0 0]
u
x 3 w
x 4
71
5.8 Exerccios Propostos
Exerccio 5.3: (Prova 2007) Considerando o sistema abaixo, escrever a forma cannica
controlvel e observvel,
2z + 0.5
G (z) = 2
z z + 0.5
72
Captulo 6
6 Controlabilidade e Observabilidade
6.1 Introduo
6.2 Controlabilidade
Esta soluo pode ser rearranjada para os primeiros n instatnes de tempo como,
u (n 1)
u (n 2)
n
[
x (n ) G x (0) = H GH L G H n 1
]
M
u (0)
onde n a dimenso da matriz G. Como a dimenso de H n1 e cada coluna da matriz
H GH ... Gn-1H n1, ento a dimenso da matriz nn para o caso de uma nica
entrada u(k), caso a entrada seja um vetor de dimenso 1r, ento a matriz de
dimenso nnr Significando que dada uma lei de controle u(k), para alterar o estado do
sistema de x(0) para x(n) a matriz necessariamente precisa obedecer seguinte relao,
[
posto H GH L G n 1 H = n]
Esta matriz conhecida como matriz de controlabilidade. Caso o posto da matriz
de controlabilidade seja menor que n, no significa que o sistema incontrolvel, mas
73
significa que pelo menos um dos estados no pode ser controlado, isto , parte do
sistema pode ser controlado e parte no.
Dever ser notado que a controlabilidade de estado independe da sada, isto , a
controlabilidade de estado independente das matrizes C e D.
Sistema 2:
x 1 (k + 1) 1 0 x 1 (k ) 2
x (k + 1) = 0 2 x (k ) + 0 u (k )
2 2
Soluo: Construindo a matriz de controlabilidade,
2 1 0 2 2 2
[H GH] = =
0 0 2 0 0 0
Neste caso, claramente o sistema possui posto = 1, significando que o sistema
no completamente controlvel.
Sistema 3:
x 1 (k + 1) 2 1 0 0 0 x 1 (k + 1) 0 1
x (k + 1) 0 2 1 0 0 x 2 (k + 1) 0 0
2 u 1 (k )
x 3 (k + 1) = 0 0 2 0 0 x 3 (k + 1) + 3 0
u 2 (k )
x 4 (k + 1) 0 0 0 5 1 x 4 (k + 1) 0 0
x 5 (k + 1) 0 0 0 0 5 x 5 (k + 1) 2 1
Soluo: Construindo a matriz de controlabilidade,
[H GH G 2 H G 3 H G 4 H ]
Como a soluo mais complicada, utiliza-se o matlab para resolver o
problema,
% 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
74
H=[0 1;0 0;;3 0;0 0;2 1]
Sistema 4:
x 1 (k + 1) 2 1 0 0 0 x 1 (k + 1) 0 1
x (k + 1) 0 2 1 0 0 x 2 (k + 1) 3 0
2 u 1 (k )
x 3 (k + 1) = 0 0 2 0 0 x 3 (k + 1) + 0 0
u 2 (k )
x 4 (k + 1) 0 0 0 5 1 x 4 (k + 1) 2 1
x 5 (k + 1) 0 0 0 0 5 x 5 (k + 1) 0 0
% 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]
Esta soluo pode ser rearranjada para os primeiros n instantes de tempo como,
75
u (n 1)
u (n 2)
n
[
y(n ) CG x (0) = CH CGH L CG H n 1
M
]
u (0)
Significando que para a sada ser completamente controlvel, o posto da matriz
precisa ser m, que a dimenso da matriz C, isto ,
[
posto CH CGH L CG n 1 H = m ]
Caso esteja presente a matriz D, a condio de controlabilidade completa de
sada dada por,
[
posto D CH CGH L CG n 1 H = m ]
Dever ser notado que a controlabilidade de sada dependente de todas as
matrizes que compe o sistema, isto , a controlabilidade de sada dependente das
matrizes G, H, C e D.
6.4 Observabilidade
Um sistema dito completamente observvel se todo estado inicial x(0) pode ser
determinado a partir da observao de y(k) em um perodo finito de tempo.
Observabilidade completa significa que, dado y(0), y(T), y(2T), ..., possvel
determinar x1(0), x2(0), ..., xn(0). Utilizando esta definio, ento dado um sistema na
forma,
x (k + 1) = Gx (k ) + Hu (k )
y(k ) = Cx (k )
Sua resposta dada por,
k 1
y(kT) = C G k x (0) + G k j1 Hu ( j) k = 1, 2, 3 ...
j= 0
Fazendo a resposta para os n primeiros instantes de tempo,
y(0) = Cx (0) y(0) C
y(1) = CGx (0) y(1) CG
x (0)
=
M M M
y(n 1) = CG n 1 x (0)
y(n 1) CG n 1
76
[
posto C H (CG ) L CG n 1 = n
H
( )H
]
onde H representa a hermitiana, que o conjugado transposto. Observe que a
observabilidade independente da matriz de entrada B.
Sistema 1:
x 1 (k + 1) 1 0 x 1 (k )
=
x 2 (k + 1) 0 2 x 2 (k )
x (k )
y(k ) = [1 5] 1
x 2 (k )
Encontrando a matriz de observabilidade,
1 1 0 1 1 1
[CH G HCH = ] =
5 0 2 5 5 10
Como se observa, a matriz de observabilidade tem posto 2 que a mesma ordem
da matriz G, ento o sistema completamente observvel.
Sistema 2:
x 1 (k + 1) 1 0 x 1 (k )
=
x 2 (k + 1) 0 2 x 2 (k )
x (k )
y(k ) = [0 1] 1
x 2 (k )
Encontrando a matriz de observabilidade,
0 1 0 0 0 0
[
CH G HCH = ] =
1 0 2 1 1 2
Como se observa, a matriz de observabilidade tem posto 1 que menor que
ordem da matriz G, ento o sistema no completamente observvel.
Sistema 3:
x 1 (k + 1) 2 1
0 0 0 x 1 (k )
x (k + 1) 0 2
1 0 0 x 2 (k )
2
x 3 (k + 1) = 0 0
2 0 0 x 3 (k )
x (k + 1) 0
0 3 1 x 4 (k )
0
4
x 5 (k + 1) 0 0 0 3 x 5 (k )
0
x 1 (k )
x (k )
y1 (k ) 1 1 1 0 1
2
= 3
x ( k )
y 2 ( k ) 0 1 1 1 0 x ( k )
4
x 5 (k )
Como o sistema definido acima um sistema de alta ordem, difcil de ser feito,
utiliza-se o Matlab,
77
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]
Sistema 4:
x 1 (k + 1) 2 1
0 0 0 x 1 (k )
x (k + 1) 0 2
1 0 0 x 2 (k )
2
x 3 (k + 1) = 0 0
2 0 0 x 3 (k )
x (k + 1) 0
0 3 1 x 4 ( k )
0
4
x 5 (k + 1) 0 0 0 3 x 5 (k )
0
x 1 (k )
x (k )
y1 (k ) 1 1 1 0 1
2
=
x
3 ( k )
y 2 ( k ) 0 1 1 0 0 x ( k )
4
x 5 (k )
Como o sistema definido acima um sistema de alta ordem, difcil de ser feito,
utiliza-se o Matlab,
% 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]
78
Como o posto da matriz de observabilidade 4 que menor que a dimenso da
matriz G, ento o sistema no completamente observvel.
79
x 1 (k + 1) 0 1 0 x 1 ( k ) 0
x 2 (k + 1) = 0 0 1 x 2 (k ) + 0 u (k )
x (k + 1) 6 11 6 x (k ) 1
3 3
x 1 (k )
y(k ) = [4 5 1]x 2 (k )
x (k )
3
Para a observabilidade,
4 0 0 6 4 0 6 36 4 4 6 6
[C H H H
G C 2H H
]
G C = 5 1 0 11 5 0 11 60 5 = 5 7 5
1 0 1 6 1 1 6 25 1 1 1 1
80
1 cos T cos T + 1 2 cos 2 T
[H GH] =
sin T sin T + 2 cos T sin T
Para que no tenha controlabilidade, faz-se o determinante igual a zero,
chegando a,
2 sin T(1 cos T ) = 0
Significando que para T = n a matriz de controlabilidade ser de posto menor
que a dimenso da matriz G, mostrando que o sistema ser de estado no
completamente controlvel.
O mesmo fato pode ser verificado atravs da matriz de observabilidade,
[
CH G HCH = ]1 cos T
0 sin T
Fisicamente, o que ocorreu foi que se pretende observar e controlar uma
freqncia que exatamente igual Nyquist, por isso no foi possvel control-la.
81
x (k + 1) = Q 1GQx (k ) + Q 1 Hu (k )
y(k ) = CQx (k ) + Du (k )
Interessante notar que se o sistema est na forma cannica controlvel dada por,
x (k + 1) = G x (k ) + H
u (k )
x (k ) + D
y( k ) = C u (k )
Para se obter a forma cannica observvel, basta fazer,
() H u (k )
x (k ) + C
x (k + 1) = G
y( k ) = H()
H x (k ) + D
u (k )
Esta equao demostra o princpio da dualidade
82
6.7 Exerccios Propostos
83
Captulo 7
7.1 Introduo
A alocao de plos uma tcnica parecida com a tcnica do lugar das razes, a
qual consiste em realizar uma realimentao de sada para realocar ou ajustar os plos
de malha fechada. Porm a tcnica do lugar das razes baseada na alocao apenas dos
plos dominantes do sistema em malha fechada, que so os plos com a menor parte
real possvel. J a tcnica de alocao de plos posiciona todos os plos do sistema em
malha fechada atravs de uma realimentao de estado.
Como ser feita uma realimentao de estado, considera-se que os estados esto
disponveis, caso no estejam, eles necessitam se estimados atravs de um estimador de
estado que ser visto mais adiante, alm disso, o sistema de estado completamente
controlvel.
Sendo assim, dado o sistema na forma,
x (k + 1) = Gx (k ) + Hu (k )
y(k ) = Cx (k ) + Du (k )
A realimentao de estado ser dada por4, para um regulador,
u (k ) = Kx (k )
onde K representa um vetor de ganhos de realimentao se u(k) for uma nica lei de
controle, caso haja vrias leis de controle, K ser uma matriz.
Assim, o sistema em malha fechada dado por,
x (k + 1) = Gx (k ) + Hu (k ) = Gx (k ) HKx (k ) = (G HK )x (k )
y(k ) = Cx (k ) + Du (k )
Portando a conduta do sistema realimentado ser dada por,
~
G = G HK
Portanto, deve-se especificar os plos do sistema de malha fechada atravs dos
plos de G-HK da seguinte forma,
~
det zI G = (z p1 )(z p 2 )L (z p n )
Para encontrar os valores do vetor ou matriz de ganho K deve-se resolver esta
equao. Porm, ela pode ser complicada dependendo da ordem do sistema, para isso
criou-se a frmula abaixo.
4
Se a referncia a ser seguida zero, o sistema de controle denominado de regulador, caso contrrio, o
sistema de controle denominado controlador.
84
Figura 7.1: Diagrama de blocos de um sistema de controle por realimentao de estado
para um regulador.
~
= G 2 GHK HK (G HK ) = G 2 GHK HKG
~
(
G 3 = (G HK ) = (G HK ) (G HK ) = G 2 GHK HKG (G HK ) =
3 2 ~
)
~ ~
= G 3 G 2 HK GHKG + G (HK ) HKGG + HKGHK =
2
~
= G 3 G 2 HK GHK (G HK ) HKG (G HK ) =
~ ~
= G 3 G 2 HK GHKG HKG 2
M
~ ~
G n = (G HK ) = G n G n 1 HK L HKG n 1
n
85
( )
~
( ~
)
G = (G ) n 1 HK n 2 GHK + HKG L G n 1 HK L HKG n 1
~
Que pode ser escrito como,
~ ~
n 1 K + n 2 KG + L + KG n 1
~ ~
( )
~
[
G = (G ) H GH L G H n 1
]
n 2 K + n 3 KG + L + KG n 2
M
=0
K
[ ]
Observa-se que a matriz H GH L G n 1H a matriz de controlabilidade,
rearranjnado na forma,
~ ~
n 1 K + n 2 KG + L + KG n 1
~ ~ n 2
[
n 2 K + n 3 KG + L + KG = H GH L G n 1 H 1 (G )
]
M
K
Observando que sobrou apenas o ganho do controlador K na n-sima linha, e ele
pode ser extrado multiplicando ambos os lados por um vetor composto por [0 0 0 1],
assim,
~ ~
n 1 K + n 2 KG + L + KG n 1
~ ~
n 2 K + n 3 KG + L + KG n 2
[0 0 L 1]
=
M
K
[
= [0 0 L 1] H GH L G n 1 H (G ) ]
1
onde,
86
a n 1 a n 2 L a 1 1
a
n 2 a n 3 L 1 0
[
M = H GH L G n 1 H ]
e W= M M O M M
a1 1 L 0 0
1 0 L 0 0
Quando este modo for aplicado, se o sistema estiver na forma cannica
controlvel, a matriz transformao T torna-se a identidade, facilitando a aplicao do
mtodo.
onde,
i = (G p i ) H com i = 1 ... n
i
% Matrizes do sistema
G=[0 1;-0.16 -1]
H=[0;1]
87
% Vetor dos novos polos
im=sqrt(-1);
P=[0.5+im*0.5 0.5-im*0.5]
% Forma alternativa
K=place(G,H,P)
Imaginary Axis
Frequency (rad/sec): 3.53 /T Overshoot (%): 25 System: Gmf
/T 0
0 /T Frequency (rad/sec): 0.858 Gain: 0
/T
System: Gma 0.9 Pole: 0.5 - 0.5i
-0.2 Damping: 0.404
-0.2 Gain: 0 0.9/T 0.8 0.1/T
0.9/T Pole: -0.8 0.1/T 0.7 Overshoot (%): 25
Damping: 0.0709 -0.4 0.6 Frequency (rad/sec): 0.858
-0.4 0.5
Overshoot (%): 80
0.8/T 0.4 0.2/T
0.8/T
Frequency (rad/sec): 3.15 0.2/T -0.6 0.3
-0.6
0.2
-0.8 0.7/T 0.10.3/T
-0.8 0.7/T 0.3/T
0.6/T 0.4/T
0.6/T 0.4/T 0.5/T
0.5/T -1
-1
-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
Real Axis Real Axis
88
Figura 7.3: Controle por realimentao de estado.
x 1 (k + 1) 0 1 x 1 ( k ) 0
= + u (k )
x 2 (k + 1) 0.16 1 x 2 (k ) 1
x (k )
y(k ) = [1 0] 1
x 2 (k )
E os plos de malha fechada sejam,
z 1, 2 = 0.5 j0.5
Soluo: Para o ganho K,
0 1 0 1 0
1 2
1 0 1
K = [0 1] + 0.5 = [0.34 2]
1 1 0 . 16 1 0 . 16 1 0 1
Agora basta encontrar o ganho k0 para que o sistema em malha fechada no
apresente erro estacionrio. Para isso, encontra-se a FT do sistema,
Y(z)
R (z)
(
= G (z) = C zI G H )
~ 1 ~
% Matrizes do sistema
G=[0 1;-0.16 -1];
H=[0;1];
C=[1 0];D=0;
5
Deve ser lembrado que Y(z)=G(z)U(z), com R(z) sendo a entrada degrau unitrio.
89
T=1;
% Calculando ganho K
K=acker(G,H,P)
K=place(G,H,P)
Step Response
1.4
Gma
Gmf
1.2
0.8
Amplitude
0.6
0.4
0.2
0
0 5 10 15 20 25 30
Time (sec)
Figura 7.4:Resposta ao degrau unitrio do sistema sem controle e malha fechada com o
controlador
90
os estados no medidos so estimados, ou de ordem reduzida, em que os estados no
medidos e alguns dos estados medidos so estimados.
Os estados do sistema sero estimados com base nas entradas e nas sadas
disponveis do sistema, isto , atravs da entrada u(k) e da sada y(k). Ser projetado
um novo sistema tal que os estados deste novo sistema sejam os estados do sistema a ser
controlado, ver Figura 7.5, onde ~ x (k ) representa a estimativa dos estados da planta
original. Como previsto que ser utilizada a sada do sistema, dever ser notado que a
condio de observabilidade deve ser obedecida.
Figura 7.5: Sistema de controle por realimentao de estados junto com observador de
estado.
91
Figura 7.6: Sistema de controle por realimentao de estados junto com observadores de
estado completo.
92
Deve-se notar que a frmula para o clculo do vetor de ganho do observador de
estado depende da inversa da matriz de observabilidade.
0 0.16 2 0 0.16 [0 1]
1
1 0 0
= + 0.5 0 0.16
0 1 [0 1]1
1
1 1 1 1
1
1
0.34 0.32 0 1 0 0.34
= =
2 2.34 1 1 1 2
Para se utilizar o comando acker ou place do Matlab, deve ser lembrado que
o que est sendo calculado est conjugado transposto, ento,
% Matrizes do sistema
G=[0 -0.16;1 -1]
C=[0 1]
% utilizando acker
Gt=G';
Ct=C';
K=acker(Gt,Ct,P);
Ke=K'
93
x (k + 1) = Gx (k ) + Hu (k ) (G K e C )~
x (k + 1) ~ x (k ) Hu (k ) K e y(k )
= G (x ( k ) ~
x (k ) ) + K C~
e x (k ) K Cx (k )
e
= (G K e C )(x (k ) ~
x (k ) )
Portanto,
e(k + 1) = (G K e C )e(k )
Significando que o comportamento do erro do estimador vai depender da
posio dos plos da equao caracterstica G-KeC. Normalmente, deve-se escolher os
plos do observador de 2 a 5 vezes mais rpido que a da planta a ser estimada, isto ,
com uma freqncia de 2 a 5 vezes maior. Porm, em aplicaes prticas, se a resposta
da planta for contaminada com rudo, deve utilizar uma estimativa mais lenta.
94
0 0 1
[ H GH G 2 H = 0 1 1.1 ]
1 1.1 1.01
Observabilidade:
0 0 0 .5
C G C [
G C = 1 0 0.2
H H H 2H H
]
0 1 1.1
Portanto, o sistema de estado completamente controlvel e observvel.
Imaginary Axis
(%): 0 0.9/T
0.9 0.9Frequency (rad/sec): 1.2
Frequency (rad/sec): 0.693 /T
/T 0
0 /T
/T
0.9/T 0.1/T
0.9/T 0.1/T
-0.5 0.8/T 0.2/T
-0.5 System: Gpp
0.8/T 0.2/T 0.7/T 0.3/T
System: Gpp Gain: 0
0.6/T Pole: 0.3 - 0.4/T
0.5/T 0.5i
0.7/T Gain: 00.3/T -1
Pole: 0.5 - 0.5i Damping: 0.464
0.6/T 0.4/T Overshoot (%): 19.3
0.5/TDamping: 0.404
-1 Overshoot (%): 25 Frequency (rad/sec): 1.16
Frequency (rad/sec): 0.858 -1.5
-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
Real Axis Real Axis
Projeto do Controlador,
K = [0 0 1] H GH G 2 H [ ]
1
(G ) = [ 0.75 0.8 0.4]
Projeto do Observador,
1
C 0 1.204
K e = (G ) CG 0 = 0.2
CG 2 1 0.54
3 3 x(k+1) 1 3 x(k)
0.25 H* u 3 C* u
z
3 Resposta
3 Controlada
3 G* u
3
Kc* u
3 3 3
x(k+1) 1 3 x(k)
H* u 3 C* u
z
3 3
3
3 G* u
3 Ke* u
95
Figura 7.8: Diagrama de blocos do controle de estado e do observador
1.4 3
1.2 2.5
2
1
1.5
Amplitude
Am plitude
0.8
1
0.6
0.5
0.4
0
0.2 -0.5
0 -1
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Tempo Tem po
Figura 7.9: Resposta do sistema nominal e ao sistema com x(0)= [-2 3 1]T
96
z3-0.9z2+0.52z-0.102 z
0.25
z3-1.3z2+1.24z+0.051 z3-1.1z2+0.2z+0.5
Controlador Planta Resposta
Avano Controlada
0.959z2-1.356z+0.8622
z3-1.3z2+1.24z+0.051
Controlador
Figura 7.10: Sistema em malha fechada
Substituindo em Y(z)=G1(z)U(z),
G1 GG Y(z) G1
Y(z) = R (z) + 1 3 Y (z) =
(1 G 2 ) (1 G 2 ) R (z) 1 G 2 G 1G 3
Que substituindo os valores chega-se a,
Y (z) z
= 3
R (z) z 1.5z + z 0.25
2
97
Que pode ser rearranjada como,
x a (k + 1) G aa x a (k ) H a u (k ) = G ab x b (k )
A parte restante, que representa a dinmica dos estados no medidos, dada por,
x b (k + 1) = G ba x a (k ) + G bb x b (k ) + H b u (k )
Como a equao de estado para o observador de estado de ordem completa
dada por,
~
x (k + 1) = G~ x (k ) + Hu (k )
~y(k ) = C~ x (k )
Comparando com a equao de estado dos estados no medidos na seguinte
forma,
x b (k + 1) = G bb x b (k ) + (G ba x a (k ) + H b u (k ) )
E a sada do observador de estado completo,
~y(k ) = C~ x (k )
Comparando com,
x a (k + 1) G aa x a (k ) H a u (k ) = G ab x b (k )
O projeto do observador de ordem mnima ou de ordem reduzida pode ser
encontrado comparando a equao de estado do observador de ordem completada dada
por,
~
x (k + 1) = G~ x (k ) + Hu (k )
~y(k ) = C~ x (k )
Comparada com,
x b (k + 1) = G bb x b (k ) + (G ba x a (k ) + H b u (k ) )
x a (k + 1) G aa x a (k ) H a u (k ) = G ab x b (k )
Onde observa-se que,
G Gbb
C Gab
98
x b (k + 1) = (G bb K e G ab )~
~ x b (k ) + (G ba y(k ) + H b u (k ) ) +
+ K e (y(k + 1) G aa y(k ) H a u (k ) )
Rearranjando,
x b (k + 1) = (G bb K e G ab )~
~ x b (k ) + K e y(k + 1) +
+ (G ba K e G aa )y(k ) + (H b K e H a )u (k )
O problema em utilizar a equao acima est no fato de ter que medir y(k+1).
Ento, uma forma mais conveniente de expressar a equao acima fazendo,
x b (k + 1) K e y(k + 1) = (G bb K e G ab )~
~ x b (k ) + (G ba K e G aa )y(k ) + (H b K e H a )u (k )
= (G K G )(~
bb e x (k ) K y(k ) ) + (G K G )K y(k ) +
ab b e bb e ab e
+ (G ba K e G aa )y(k ) + (H b K e H a )u (k )
= (G K G )(~
bb e x ( k ) K y( k ) ) +
ab b e
+ [(G bb K e G ab )K e + G ba K e G aa ]y(k ) + (H b K e H a )u (k )
Definindo,
~
x b ( k ) K e y( k ) = ~ ~(k )
x b (k ) K e x a (k ) =
Pode-se escrever o sistema como,
~ (k + 1) = (G K G )(k ) + (H K H )u (k )
bb e ab b e a
+ [(G bb K e G ab )K e + G ba K e G aa ]y(k )
A equao acima descreve a dinmica do observador de estado de ordem
mnima ou ordem reduzida. O erro do observador pode ser definido como,
e(k ) = (k ) ~ (k ) = x (k ) ~ x b (k )
b
Que se torna,
x b (k + 1) = [G bb x b (k ) + (G ba x a (k ) + H b u (k ) )] +
x b (k + 1) ~
[(G K G )~ bb x (k ) + (G x (k ) + H u (k ) ) +
e ab b ba a b
+ K e (x a (k + 1) G aa x a (k ) H a u (k ) )]
Rearranjando,
x b (k + 1) = G bb [x b (k ) ~
x b (k + 1) ~ x b (k )] + K e G ab ~
x b (k )
K e (x a (k + 1) G aa x a (k ) H a u (k ) )
Substituindo a equao de xa(k+1),
x b (k + 1) = G bb [x b (k ) ~
x b (k + 1) ~ x b (k )] + K e G ab ~
x b (k )
K e (G aa x a (k ) + G ab x b (k ) + H a u (k ) G aa x a (k ) H a u (k ) )
Que simplificando encontra-se,
x b (k + 1) = G bb [x b (k ) ~
x b (k + 1) ~ x b (k )] + K e G ab [~x b (k ) x b (k )]
Que se reduz a,
e(k + 1) = G bb e(k ) K e G ab e(k ) = (G bb K e G ab )e(k )
Portanto, a equao caracterstica do erro do observador de ordem mnima ou de
ordem reduzida dada por,
zI G bb + K e G ab = 0
Assim, o projeto do observador de ordem reduzida feito escolhendo os plos
desejados para a equao acima, utilizando a frmula de Ackerman, conforme,
99
1
G ab 0
G G 0
K e = (G bb ) ab bb
M M
n 1
G ab G bb 1
Sendo que n agora a ordem da matriz Gbb.
100
1 1 0 1 1 1
[C T
]
G T C T = =
0 0.2 1 0 0 0.2
Novo polinmio caracterstico para a realimentao de estado,
(z ) = (z 0.6 j0.4 )(z 0.6 + j0.4) = z 2 1.2z + 0.52
Frmula de Ackermann para a realimentao de estado,
K = [0 1][H GH ] (G ) =
1
+ [(G bb K e G ab )K e + G ba K e G aa ]y(k )
Substituindo os valores,
~ (k + 1) = (1 (5)(0.2) )(k ) + (0.2 (5)(0.02) )u (k )
+ [(1 (5)(0.2) )5 + 0 (5)(1)]y(k )
= 0.1u (k ) 5 y(k )
S est faltando os estados no estimados dado por,
~ ~ ( k ) = 5 y( k ) +
x 2 ( k ) = K e y( k ) + ~ (k )
E a equao da lei de controle,
u (k ) = 8 y(k ) 3.2~ x 2 (k )
Estas ltimas trs equaes definem o sistema de controle. Combinando as duas
ltimas,
u (k ) = 8y(k ) 3.2(5y(k ) + ~ (k ) )
= 24 y(k ) 3.2 ~(k )
Se esta equao verdade,
u (k + 1) = 24 y(k + 1) 3.2 ~ (k + 1)
Substituindo a equao do observador,
6
O polinmio caracterstico para dead beat deve ser da ordem a ser utilizada, como neste caso precisa-se
estimar apenas um estado, o polinmio caracterstico apenas z.
101
u (k + 1) = 24 y(k + 1) 3.2(0.1u (k ) 5y(k ) )
u (k + 1) + 0.32u (k ) = 24 y(k + 1) + 16 y(k )
Para a funo de transferncia do controlador, aplica-se a transformada Z na
equao anterior,
zU(z) + 0.32U(z) = 24zY(z) + 16Y(z)
Chegando a,
U (z) 24z 16
G D (z) = =
Y(z) z + 0.32
A funo de transferncia da planta,
Y (z)
= C(zI G ) H + D =
1
G P (z) =
U(z)
1
z 0 1 0.2 0.02
= [1 0] 0 1 0.2
0 z
0.02z + 0.02
= 2
z 2z + 1
0.02z+0.02
Ko
z2-2z+1
Step Gain Scope
Planta
24z-16
z+0.32
Controlador
k
(
z 1
) (
z 1
) (
lim c(k ) = lim 1 z 1 C(z) = lim 1 z 1 o
K 0.02z 2 + 0.0264z + 0.0064
z 1.2z + 0.52z
3 2
1 ) =
1 z 1 ( )
K o 0.0528
= = 1 K o = 6.0606
0.32
Notar que a equao caracterstica do sistema em malha fechada dada por,
( )
z 2 1.2z + 0.52 z = 0
Representando os mesmos plos escolhidos para o fechamento da malha.
102
7.6 Exerccios Resolvidos
Exemplo 7.6: Para o sistema abaixo, projetar um controle por realimentao de estado
em tempo discreto para o sistema abaixo,
50
G (s) = 2
s + 2s + 100
Sabendo-se que o desejado para o sistema acima seria que o seu fator de
amortecimento fosse 2 / 2 e sua freqncia natural fosse 20 rad/s.
Soluo: Passando o sistema para tempo discreto, precisa-se saber qual a freqncia
natural do sistema, por anlise simples, verifica-se que ela de 10 rad/s, portanto a
maior freqncia ser de 20 rad/s. Sendo assim, escolhe-se T = 0.05 s. Agora,
discretizando o sistema, atravz de tabelas fcil verificar que,
1
1 e Ts s +1
G (z) = Z ( ) 1
G (s) = 1 z 1 Z 2 2
s 2s s + 2s + 100
1 z 1
1 s +1 1 99
= Z 2 +
(
2 1 z 1
) 2 s + 2s + 100 2 99 s + 2s + 100
2
x 1 (k + 1) 0 0.9048 x 1 (k ) 0.05727
= + u (k )
x 2 (k + 1) 1 1.672 x 2 (k ) 0.05923
x (k )
y(k ) = [0 1] 1
x 2 (k )
Para os novos plos do sistema em tempo contnuo,
2
2 2
s1, 2 = n jd = 20 20 1 = 14.1421 j14.1421
2 2
Passando para tempo discreto,
z 1, 2 = e sT = e ( 14.1421 j14.1421) 0.05) = 0.3749 j0.3203
Projetando o controle via realimentao de estado, matriz de controlabilidade,
0.05727 0 0.9048 0.05727 0.5727 0.0536
[H GH] = =
0.05923 1 1.672 0.05923 0.5923 0.1563
Novo polinmio caracterstico,
(z) = (z 0.3749 + j0.3203)(z 0.3749 j0.3203) = z 2 + 1.672z 0.9048
Aplicando Ackerman,
103
K = [0 1][H GH ] (G ) =
1
0.5727 0.0536
1
0 0.9048 2 0 0.9048 1 0
= [0 1]
0.7498 + 0.2431
0.5923 0.1563 1 1.672 1 1.672 0 1
= [7.5878 8.2331]
Desta forma, a lei de controle dada por,
x (k )
u (k ) = Kx (k ) = [7.5878 8.2331] 1
x 2 (k )
Soluo: Observa-se que neste caso, a posio da matriz C est diferente da formulao
proposta. Comparando as equaes do observador de ordem reduzida e a equao do
sistema, observa-se que,
G G ba 0 0.9048 H b 0.05727
G = bb =
e H = H = 0.05923
G ab G aa 1 1.672 a
Como o observador deve ter comportamento Dead-Beat, o polinmio
caracterstico dado por,
(z ) = z = 0
Aplicando Ackermann,
K e = (G bb )[G ab ] [1] = (0)(1) 1 (1) = 0
1
104
~ (k + 1) = (G K G )(k ) + (H K H )u (k )
bb e ab b e a
+ [(G bb K e G ab )K e + G ba K e G aa ]y(k )
Substituindo os valores,
~ (k + 1) = (1 (1)(1) )(k ) + (0.1165 (1)(0.05923) )u (k )
+ [(1 (1)(1) )1 0.2328 (1)(0.672)]y(k )
= 0.0573u (k ) 0.9048 y(k )
S est faltando os estados no estimados dado por,
~ ~ ( k ) = y( k ) +
xn 1 ( k ) = K e y ( k ) + ~ (k )
Neste ponto deve ser lembrado que o que est sendo estimado xn1(k) no
x1(k) como necessrio para o controlador, porm da relao de transformao utilizada,
1
1 1 x 1 (k ) 1 1 xn 1 (k ) 1 1 xn1 (k )
T= x (k ) = 0 1 xn (k ) = 0 1 xn (k )
0 1 2 2 2
Significando que x2(k) = xn2(k), mas x1(k) = xn1(k)+xn2(k) = xn1(k)+x2(k),
assim, a lei de controle fica,
~xn (k ) xn 2 (k )
u (k ) = Kx (k ) = [7.5878 8.2331] 1
xn 2 (k )
~
xn ( k )
= [7.5878 0.6453] 1
xn 2 (k )
Estas ltimas trs equaes definem o sistema de controle. Combinando as duas
ltimas,
u (k ) = 7.5878~ xn 1 (k ) 0.6453xn 2 (k )
= 7.5878(y(k ) + ~ (k ) ) 0.6453x (k )
2
105
( )
lim c(k ) = lim 1 z 1 C(z) =
k z 1
= lim 1 z ( ) (
1 K o 0.05923z + 0.08302 z + 0.0249
2
1 )
=
z 1
z 0.7494z + 0.2428z + 0.0002473 1 z 1
3 2
( )
K 0.1671
= o = 1 K o = 2.9533
0.4936
+ [(G bb K e G ab )K e + G ba K e G aa ]y(k )
Substituindo os valores,
106
~ (k + 1) = 0 0 (k ) + 1 y(k ) = P1(k ) + P 2 y(k ) + P3u (k )
0.5 0 1
A outra equao necessria,
~
x b (k ) = ~ (k ) + 1 y(k )
~ (k ) + K x (k ) =
e a 1
x 1 (k + 1) 0 1 0 x 1 ( k ) 0
x 2 (k + 1) = 0 0 1 x 2 (k ) + 0 u (k )
x (k + 1) 0.5 0.2 1.1 x (k ) 1
3 3
x 1 (k )
y(k ) = [0 1 0]x 2 (k )
x (k )
3
Soluo: O primeiro passo verificar qual a sada que medida, no caso a sada
x2(k). Ento necessrio reescreve o sistema na seguinte forma,
x 2 (k + 1) 0 0 1 x 2 ( k ) 0
x 1 (k + 1) = 1 0 0 x 1 (k ) + 0 u (k )
x (k + 1) 0.2 0.5 1.1 x (k ) 1
3 3
Nesta nova configurao,
x (k )
x a (k ) = x 2 (k ) ; x b (k ) = 1
x 3 (k )
107
1 0 0
G aa = 0 ; G ab = [0 1] ; G ba = ; G bb =
0.2 0.5 1.1
0
Ha = 0 ; Hb =
1
Ainda do Exemplo 7.4, o ganho do controlador,
K c = [ 0.75 0.8 0.4]
O ganho do observador de estado mnimo pode ser encontrado atravs da
equao do erro dada por,
e(k + 1) = (G bb K e G ab )e(k )
Como foi especificada resposta tipo deadbeat, ento,
(z ) = z 2
Aplicando a frmula de ackerman,
1
G ab 0 0
K e = (G bb ) =
G ab G bb 1 1.1
A construo do diagrama de blocos segue atravs das seguintes equaes,
~ (k + 1) = (G K G )
~ (k ) + (H K H )u (k )
bb e ab b e a
+ [(G bb K e G ab )K e + G ba K e G aa ]y(k )
~ (k ) + P 2 y(k ) + P3u (k )
= P1
Substituindo os valores,
~ (k + 1) = P1
~ (k ) + P 2 y(k ) + P3u (k )
~ (k + 1) 0 ~ (k ) 1
0 0
1 1
~ = ~ + y( k ) + u ( k )
2 (k + 1) 0.5 0 2 (k ) 0.2 1
A segunda equao a ser utilizada,
~
x b (k ) = ~ (k ) + K x (k ) = ~ ( k ) + K y( k )
e a e
Substituindo os valores,
~x 1 (k ) ~ (k ) 0
1
~ = ~ + y( k )
x 3 (k ) 2 (k ) 1.1
Finalmente a terceira equao,
x 1 (k ) ~ x 1 (k )
u (k ) = K 0 r (k ) K c x 2 (k ) = K 0 r (k ) K c x 2 (k )
x (k ) ~
3 x 3 (k )
Substituindo os valores,
~x 1 (k )
u (k ) = K 0 r (k ) [ 0.75 0.8 0.4]x 2 (k )
~
x 3 (k )
Chegando a,
108
3 3 x(k+1) 1 3 x(k)
0.25 H* u 3 C* u
z
3 Resposta
3 Controlada
3 G* u
2
2 P2* u Ke2* u
2 2 3
2 2
n(k+1) 1 2 n(k) 2
P3* u 2
z
2 x~(k)
2
2 P1* u
3
Kc* u
x 1 (k + 1) 1 1 x 1 (k ) 1
= + u (k )
x 2 (k + 1) 0.5 0 x 2 (k ) 0.5
x (k + 1)
y(k ) = [1 0] 1
x 2 (k + 1)
109
a) Projetar um observador de ordem mnima para o estado que no medido,
para que este apresente uma resposta tipo DeadBeat;
b) Escrever as equaes necessrias e desenhar o diagrama de blocos planta -
observador de ordem mnima realimentao de estado supondo que o
sistema seja um regulador.
x 1 (k + 1) 1 1 x 1 (k ) 1
= + u (k )
x 2 (k + 1) 2 0 x 2 (k ) 2
x (k + 1)
y(k ) = [0 1] 1
x 2 (k + 1)
110
Captulo 8
8 Projetos
Nesta parte, ser apresentada uma seqncia de projetos interessantes de
sistemas mecnicos envolvendo sistemas de controle em tempo discreto. Para a
implementao dos sistemas de controle, necessariamente dever ser seguido os
seguintes passos,
111
8.1 Pndulo Invertido
112
8.2 Suspenso Ativa para de veculo
113
8.3 Controle no colocado
114
8.4 Projeto de Filtros Digiais
115
9 Referncias Bibliogrficas
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.
116