Escolar Documentos
Profissional Documentos
Cultura Documentos
Matlab para Controle PDF
Matlab para Controle PDF
CONTROLO DE SISTEMAS
APONTAMENTOS DE MATLAB
CONTROL SYSTEM Toolbox
1. - INTRODUO ............................................................................................................................................... 3
2. - REPRESENTAO DE SISTEMAS.............................................................................................................. 4
2.1. REPRESENTAO DA FUNO DE TRANSFERNCIA DO SISTEMA .......................................... 4
2.2. REPRESENTAO DE SISTEMAS EM ESPAO DE ESTADOS ........................................................ 4
2.3. CONVERSO DA REPRESENTAO DE SISTEMAS CONTNUOS ................................................ 5
2.3.1. Converso da representao de sistemas para funo de transferncia............................................... 5
2.3.2. Converso da representao de sistemas para espao de estados ....................................................... 6
2.3.3. Obteno dos Plos, Zeros e Ganho do sistema ................................................................................. 7
3. - MODELAO DE SISTEMAS...................................................................................................................... 8
3.1. BLOCOS EM CASCATA .......................................................................................................................... 8
3.2. SOMADOR DE BLOCOS ......................................................................................................................... 9
3.3. REALIMENTAO UNITRIA DE SISTEMAS ................................................................................... 9
3.4. REALIMENTAO NO UNITRIA DE SISTEMAS........................................................................ 10
3.5. CONSTRUO DE SISTEMAS DE 2 ORDEM A PARTIR DE n E DE ........................................ 11
2
1. - INTRODUO
O comando help control fornece uma lista das diversas funes existentes na caixa de
ferramentas : CONTROL SYSTEM Toolbox. Para obter informao mais detalhada sobre cada
uma das funes pode-se usar o comando help nome_da_funo.
3
2. - REPRESENTAO DE SISTEMAS
Y ( s) 3 s2 2
= 2
R(s) s + 2s + 4
>> num = [ 3 2 ]
>> den = [ 1 2 4 ]
>> printsys ( num , den )
num/den =
3s-2
-------------
s^2 + 2 s + 4
Um sistema dinmico que consiste num nmero finito de elementos concentrados pode ser
escrito por equaes diferenciais ordinrias em que o tempo a varivel independente.
Fazendo uso de notao matricial-vectorial, uma equao diferencial de ordem n pode ser
representada por uma equao matricial-vectorial de primeira ordem. Se n elementos do
vector so um conjunto de variveis de estado, ento a equao diferencial matricial vectorial
denominada de equao de estado. Deste modo, um sistema representado na forma de
equaes de estado ser dado por:
4
x& = A x + B u
y = C x + Du
2 1 1
x& = x + u
3 1 0
y = [ 2 0.5] x
>> A = [ 2 - 1 ; 3 - 1 ]
>> B = [ 1 0 ]
>>C = [ 2 - 0.5 ]
>> D = [ 0 ]
2 1 1
x& = x + u
1 2 2
y = [ 1 0] x
>> A = [ -2 - 1 ; 1 - 2 ]
>> B = [ 1 2 ]
>>C = [ 1 0 ]
>> D = [ 0 ]
>> [ num,den ] = ss2tf ( A, B, C, D )
5
num =
0 1 0
den =
1 4 5
num s
= 2
den s + 4s +5
No caso do sistema estar descrito pelos seus Plos, Zeros e Ganho, a converso para a
representao em funo de transferncia ser dada por:
Y ( s) 3s2 2 s
= 2
R( s) s + 2s + 4
>> num = [ 3 2 ]
>> den = [ 1 2 4 ]
>> [ A, B, C, D ] = tf2ss ( num, den )
A=
-4 -5
1 0
B=
1
0
6
C=
1 0
D=
0
z=
0
p=
-1 + 2i
-1 - 2i
k=
1 0
R(s) Y(s)
G(s)
Esta funo permite a associao de blocos em cascata, tendo em considerao que os dois
sistemas devero ser do mesmo tipo (contnuos ou discretos).
Aqui e doravante, considera-se que um sistema sys pode estar representado :
R(s) Y(s)
sys 1 sys 2
num1 2
sys 1 : = 2
den1 s + 2s + 3
num2 s +1
sys 2 : =
den2 4s + 5s + 6
2
>> num1 = [ 0 0 2 ]
>> den1 = [ 1 2 3 ]
>> num2 = [ 0 1 1 ]
>>den2 = [ 4 5 6 ]
8
>>num = conv ( num1 , num2 )
>>den = conv ( den1 , den2 )
num =
2 2
den =
4 13 28 27 18
Y (s) num 2s + 2
Isto : sys : = =
R(s) den 4 s + 13 s + 28 s 2 + 27 s + 18
4 3
sys 1
R(s) Y(s)
+
sys 2
Este comando equivalente soma directa de polinmios no caso dos sistemas estarem
representados na forma de equao de transferncia.
R(s) + Y(s)
G(s)
-
9
Considerando o sistema de malha aberta G(s), o sistema de malha fechada com
realimentao unitria Y(s)/R(s) ser dado por :
num s6 Y ( s) n G ( s) s6
G ( s) = = 2 = = = 2
den s s +5 R( s) d 1 + G(s) s 1
>> num = [ 0 1 6 ]
>> den = [ 1 1 5 ]
>> [n,d] = cloop ( num , den )
n=
1 -6
d=
1 0 -1
R(s) + Y(s)
G(s)
-
H(s)
num1 1
G ( s) = =
den1 s +2
num2 1
H (s) = =
den2 s
num3 1
G ( s) H ( s) = =
den3 s ( s + 2)
10
Y ( s) num G ( s) s
= = = 2
R( s) den 1 + G ( s) H ( s) s + 2s + 1
>> num1 = [ 0 1 ]
>> den1 = [ 1 2 ]
>> num2 = [ 0 1 ]
>> den2 = [ 1 0 ]
>> [ num , den ] = feedback ( num1 , den1 , num2 , den2 )
num =
1 0
den =
1 2 1
Y ( s) num 1
= = 2
s + 2 n s + n
2
R(s) den
num =
0 0 1
den =
1.0000 1.9200 5.7600
Y ( s) num 1
= = 2
R( s) den s + 1.92 s + 5.76
11
4. - RESPOSTA NO DOMNIO DO TEMPO
K0 n
2
Y ( s) num
= = 2
s + 2 n s + n
2
R( s) den
O comportamento dinmico deste sistema de 2 Ordem pode ser descrito pela frequncia
natural: n e pelo coeficiente de amortecimento : .
12
Tempo de Atraso : td
Corresponde ao tempo necessrio para que a resposta alcance (pela primeira vez) metade
do valor final.
Tempo de Subida : tr
Por norma, corresponde ao tempo necessrio para que a resposta passe de 0% a 100% do
seu valor final.
Sabendo que a Frequncia Natural Amortecida dada por :
d = n 1 2
1
tr = tan 1 d
d n
Instante de pico : tp
Corresponde ao tempo necessrio para que a resposta alcance o primeiro pico do Sobre-
sinal (Overshoot) :
tp =
d
1 2
Mp =e
4 3
t ac ( 2% ) = t ac ( 5% ) =
n n
13
A funo step calcula a resposta de um sistema no domnio do tempo a uma entrada em
degrau unitrio. considerado um estado inicial nulo quando o sistema est representado no
espao de estado.
Quando o comando utilizado sem argumentos, esta funo gera o traado da resposta ao
degrau unitrio na Janela Grfica. A durao da simulao determinada automaticamente
baseada nos Plos e Zeros do sistema.
>> t = 0 : 0.1 : 10
>> step ( sys,t )
A funo step permite a introduo de distintos argumentos que definam vrios sistemas,
de modo a que sejam apresentados os traados da resposta sobrepostos na mesma Janela
Grfica, podendo os tipos, cores e marcadores das linhas de cada sistema serem definidos
como nas funes bsicas de criao de grficos:
>> step ( sys1 , y: , sys2 , g- )
Y ( s) num 25
= = 2
R( s) den s + 4 s + 25
num 25 num 25 1
Y (s) = = 2 R( s) Y ( s) = = 2
den s + 4 s + 25 den s + 4 s + 25 s
>> num = [ 0 0 25 ]
>> den = [ 1 4 25 ]
14
>> step ( num , den )
num =
0 0 25
den =
1 4 25
1.2
0.8
A m plitude
0.6
0.4
0.2
0
0 0.5 1 1.5 2 2.5 3
Tim e (sec.)
NOTA : O sistema tambm poder estar representado no espao de estados, sendo a resposta
a um degrau unitrio obtida com a funo expressa do seguinte modo : step(A,B,C,D)
num 25 num 25 1
Y (s) = = 2 R( s) Y ( s) = = 2 2
den s + 4 s + 25 den s + 4 s + 25 s
num 25 1
Y (s) = =
den (
s s + 4 s + 25 s
2
)
15
Tal que as funes a introduzir na Janela de Comando para a visualizao da resposta do
sistema, sero :
>> num = [ 0 0 25 ]
>> den1 = [ 1 4 25 ]
>>den2 = [ 0 1 0 ]
>> den = conv ( den1 , den2 )
>> step ( num , den )
num =
0 0 0 25
den =
1 4 25 0
3.5
2.5
A m plitude
1.5
0.5
0
0 0.5 1 1.5 2 2.5 3 3.5 4
Tim e (sec.)
2
ess =
n
16
num 25 num 25
Y (s) = = 2 R( s) Y ( s) = = 2 1
den s + 4 s + 25 den s + 4 s + 25
>> num = [ 0 0 25 ]
>> den = [ 1 4 25 ]
>> impulse ( num , den )
num =
0 0 25
den =
1 4 25
Im pulse Response
2.5
1.5
A m plitude
0.5
-0.5
1 + Mp
17
4.4. RESPOSTA A ENTRADAS COM CONDIES INICIAIS NO NULAS.
x& = A x + B u
y = C x
x ( 0) = x 0
0.5572 0.7814
x& = x
0 . 7814 0
y = [ 1.9691 6.4493] x
1
Sujeito s condies iniciais : x(0) =
0
18
Initial Condition Res ults
3.5
2.5
2
A m plitude
1.5
0.5
-0.5
-1
0 2 4 6 8 10 12 14 16 18
Tim e (sec.)
NOTA : A aplicao desta funo est sujeita aos mesmos procedimentos e restries que as
funes anteriores.
Y ( s) num s 1
= = 2
R( s) den s +s+5
19
Pretende-se obter a resposta a uma entrada correspondente a uma onda quadrada com um
perodo de 4 [seg].
Inicialmente, gera-se a onda quadrada com a funo gensig ( generate signal )
considerando uma amostragem cada 0.1 [seg] durante 10 [seg] e posteriormente simula-se a
resposta do sistema:
num =
0 1 -1
den =
1 1 2
0.5
0
A m plitude
-0.5
-1
0 2 4 6 8 10
Tim e (sec.)
NOTA : A funo gensig gera um sinal peridico escalar u da classe type e perodo tau, para
simulaes no domnio do tempo atravs do uso da funo lsim.
20
5. - ANLISE DO LUGAR GEOMTRICO DAS RAZES
A funo pzmap gera um grfico com o mapeamento dos Plos e dos Zeros de um sistema
contnuo ou discreto. Os Plos so representados por X e os Zeros representados por O.
Quando o comando utilizado sem argumentos, esta funo gera o mapeamento dos
Plos e dos Zeros do sistema na Janela Grfica. Em caso contrrio, apresenta duas colunas
correspondentes aos Plos : p e aos Zeros : z, sem gerar qualquer grfico :
>> pzmap ( sys ) % Gerao do grfico com o mapeamento dos plos e dos zeros do sistema.
>> [ p , z ] = pzmap ( sys ) % Obteno dos valores dos plos e dos zeros.
num 2s 2 + 5s + 1
G( s ) = = 2
den s + 2s + 3
>> num = [ 2 5 1 ]
>> den = [ 1 2 3 ]
>> pzmap ( num , den )
num =
2 5 1
den =
1 2 3
21
P ole z ero m ap
1.5
0.5
Im ag A x is
-0.5
-1
-1.5
-2.5 -2 -1.5 -1 -0.5 0
Real A xis
A funo rlocus calcula o Lugar Geomtrico das Razes ( Root Locus ) para um sistema
de malha aberta em funo da variao do ganho k desde zero at infinito. O Lugar
Geomtrico das Razes indica a trajectria dos Plos de malha fechada do sistema em funo
do ganho de realimentao k (assumindo realimentao negativa).
O Lugar Geomtrico das Razes usado no estudo dos efeitos da variao do ganho de
realimentao na localizao dos Plos de malha fechada.
As diferentes topologias de funes de transferncia de malha aberta de sistemas para
implementao da funo rlocus, so dadas por :
k k H(s)
R(s) + Y(s)
G(s) H(s)
-
22
Se o sistema possui uma funo de transferncia de malha aberta dada por :
num n( s )
G( s ) = =
den d ( s)
Quando o comando utilizado sem argumentos, esta funo gera o traado da trajectria
dos Plos em funo do ganho na Janela Grfica. Em caso contrrio, apresenta duas colunas
correspondentes localizao das razes complexas: r e respectivo Ganho : k, sem gerar
qualquer grfico :
K ( s + 10 )
2
num
G( s ) = =
den (
( s 20 ) s 2 + 4s + 68 )
>> num = conv ( [ 1 10 ] , [ 1 10 ] )
>> den = conv ( [ 1 -20 ] , [ 1 4 68 ] )
>> rlocus ( num , den )
R o o t L o cu s
25
20
15
10
5
Im a g A xi s
-5
-1 0
-1 5
-2 0
-2 5
-8 0 -7 0 -6 0 -5 0 -4 0 -3 0 -2 0 -1 0 0 10 20
Re a l A xi s
23
5.3. ANLISE DO VALOR DO GANHO DE REALIMENTAO DO SISTEMA
A funo rlocfind utiliza a regra da magnitude do Lugar Geomtrico das Razes para
determinar o Ganho para uma localizao particular das razes. Trata-se por defeito de uma
funo interactiva, j que permite ao utilizador seleccionar a localizao das razes no traado
do Root Locus para as quais pretende determinar o ganho de realimentao. No entanto, pode
ser utilizada com argumentos de modo a calcular o ganho de realimentao para uma
localizao especifica das razes.
>> [ k, poles ] = rlocfind ( sys ) % Obteno do ganho de realimentao interactivamente.
>> [ k, poles ] = rlocfind ( sys , p ) % Obteno do ganho de realimentao para uma localizao especifica.
A funo sgrid tem como objectivo gerar uma grelha na plano s de curvas de frequncia
natural constante e de coeficiente de amortecimento constante.
A grelha gerada sobre o traado do Lugar Geomtrico das Razes ou sobre o
Mapeamento dos Plos e Zeros obtido anteriormente, com um espaamento de 0.1 desde 0 at
1 para as curvas de coeficiente de amortecimento constante, e com um espaamento de 1
[rad/seg] desde 0 at 10 [rad/seg] para as curvas de frequncia natural constante. Pode-se
especificar como argumento as linhas de coeficiente de amortecimento constante : (zeta) e
as linhas frequncia natural constante : n que se pretendem visualizar.
>> sgrid
>> sgrid ( zeta , wn )
1.5
0.5
Im ag A x is
-0.5
-1
-1.5
-3 -2.5 -2 -1.5 -1 -0.5 0 0.5 1
Real A xis
24
6. - RESPOSTA NO DOMNIO DA FREQUNCIA
- Ganho : kB.
ngulo de Fase : kB = 0
B ode Diagram s
0.5
0
P has e (deg); M agnitude (dB )
-0.5
-1
0.5
-0.5
-1
-1 0 1 2
10 10 10 10
Frequency (rad/sec)
25
- Factor integral (Plos na Origem) : (j) -1.
1
Mdulo : G ( j ) = 20 log = 20 log ( ) [dB]
j
ngulo de Fase : G ( j ) = 90
B ode Diagram s
20
0
P has e (deg); M a gnitud e (dB )
-20
-40
-89
-89.5
-90
-90.5
-91
-1 0 1 2
10 10 10 10
Frequency (rad/sec)
ngulo de Fase : G ( j ) = 90
B ode Diagram s
40
20
P has e (deg); M agnitude (dB )
-20
91
90.5
90
89.5
89
-1 0 1 2
10 10 10 10
Frequency (rad/sec)
Mdulo : G ( j ) = 20 log
1
1 + j T
= 20 log ( 1 + 2T 2 ) [dB]
<<
1
T
G ( j ) = 20 log ( 1 + 2T 2 ) = 20 log (1) = 0 [dB ]
>>
1
T
G ( j ) = 20 log ( 1 + 2T 2 ) = 20 log ( T ) [dB ]
1 T
<< G ( j ) = tan 1 = tan ( 0 ) = 0
1
T 1
1 T
>> G ( j ) = tan 1 = tan ( ) = 90
1
T 1
B ode Diagram s
-5
-10
P h as e (d eg); M agnitu de (dB )
-15
-20
-20
-40
-60
-80
-1 0 1
10 10 10
Frequency (rad/sec)
<<
1
T
G ( j ) = 20 log ( 1 + 2T 2 )= 20 log (1) = 0 [dB ]
>>
1
T
G ( j ) = 20 log ( 1 + 2T 2 ) = 20 log ( T ) [dB ]
1 T
<< G ( j ) = tan 1 = tan ( 0 ) = 0
1
T 1
1 T
>> G ( j ) = tan 1 = tan ( ) = 90
1
T 1
B ode Diagram s
20
15
10
P has e (deg); M a gnitude (dB )
80
60
40
20
-1 0 1
10 10 10
Frequency (rad/sec)
1
Mdulo : G ( j ) = 20 log 2
1 + 2 j + j
n n
2
2 2
= 20 log 1 + 2
[dB ]
2
n
n
2
>> n G ( j ) = 20 log = 40 log
2
[dB ]
n n
28
2
n
ngulo de Fase : G ( j ) = tan 1 2
1
n
= 0 G ( j ) = 0
= n G ( j ) = 90
= G ( j ) = 180
B ode Diagram s
-10
P has e (deg); M agnitude (dB )
-20
-30
-40
-50
-100
-150
-1 0 1
10 10 10
Frequenc y (rad/sec)
2
Mdulo : G ( j ) = 20 log 1 + 2 j + j
n n
2
2 2
= 20 log 1 + 2
[dB ]
2
n
n
2
>> n G ( j ) = 20 log = 40 log [dB ]
2
n n
29
2
n
ngulo de Fase : G ( j ) = tan 1 2
1
n
= 0 G ( j ) = 0
= n G ( j ) = 90
= G ( j ) = 180
B ode Diagram s
40
30
20
P has e (deg); M agnitude (dB )
10
150
100
50
-1 0 1
10 10 10
Frequency (rad/sec)
r = n 1 2 2
0 0.707
1
Mr = 0 0.707
2 1 2
M r =1 0.707
D + C ( j I A ) 1 B , 0
Quando o comando utilizado sem argumentos, esta funo gera o traado do Mdulo e
do ngulo de Fase da resposta em frequncia. Os diagramas de Bode so utilizados para
analisar propriedades do sistema, como sejam as Margem de Ganho, Margem de Fase,
Largura de Banda, Estabilidade, etc.
A gama de frequncias [rad/seg] determinada automaticamente baseada nos Plos e
Zeros do sistema. As diversas sintaxes para a utilizao desta funo so dadas por :
>> bode ( sys ) % Gerao do traado do diagrama de Bode de Mdulo e ngulo de Fase.
>> bode ( sys , w ) % Gerao do traado de Bode com gama de frequncias especificadas.
>> bode ( sys1 , sys2 ,..., sysN ) % Gerao dos traados de Bode sobrepostos de diversos sistemas.
Quando o comando usado com os argumentos, Mdulo : mod, ngulo de Fase : fase []
e Frequncia : w, so apresentados os valores correspondentes sem que seja exibido o traado
do diagrama de Bode :
>> [ mod , fase , w ] = bode ( sys ) % Obteno dos valores do Mdulo, ngulo de Fase e Frequncia.
>> [ mod , fase ] = bode ( sys , w ) % Obteno dos valores do Mdulo, ngulo de Fase para a gama
de frequncias especificadas.
Este sistema composto por uma funo quadrtica no numerador (Zeros complexos) e
no denominador apresenta o quociente entre dois factores integrais de primeira ordem (Plos
reais) e uma funo quadrtica (Plos complexos).
num =
0 0 1 0.1 7.5
den =
1 0.12 9 0 0
31
B ode Diagram s
40
20
0
P has e (deg); M agn itude (dB )
-20
-40
-50
-100
-1 50
-1 0 1
10 10 10
Frequency (rad/sec)
Para obter o traado da resposta do sistema no domnio da frequncia para uma gama mais
alargada de frequncia, por exemplo desde 0.1 at 100 [rad/seg], basta introduzir o comando :
>> w = logspace ( 0.1 , 100 )
>> bode ( num , den , w )
B ode Diagram s
40
20
0
-20
P has e (deg); M agnitud e (dB )
-40
-60
-80
-60
-80
-100
-120
-140
-160
-180
-1 0 1 2
10 10 10 10
32
6.1.2. Margem de Ganho e Margem de Fase
Na anlise da resposta de sistemas no domnio da frequncia, as Margens de Ganho e de
Fase permitem estudar a estabilidade do sistema.
num K
G ( s) H ( s) = =
den s ( s + 1 )( s + 5 )
>> % Para K = 10
>> num = [ 10 ]
>> den = [ 1 6 5 0 ]
>> [ mod , fase , w ] = bode ( num , den )
>> margin ( mod , fase , w )
33
B ode Diagram s
0
P has e (deg); M agnitud e (dB )
-50
-100
-100
-150
-200
-250
-1 0 1
10 10 10
Frequency (rad/sec)
B ode Diagram s
50
0
P has e (d eg); M agni tude (d B )
-50
-100
-150
-200
-250
-1 0 1
10 10 10
Frequency (rad/sec)
34
6.2. DIAGRAMA DE NYQUIST
Y ( s) G ( s)
=
R( s) 1 + G ( s) H ( s)
Para que o sistema seja estvel, todas as razes da equao caracterstica : 1 + G(s)H(s)=0,
devero permanecer no semiplano s da esquerda.
A vantagem do critrio de Nyquist reside na particularidade do sistema de malha fechada
poder ser avaliado quanto estabilidade absoluta atravs da anlise grfica das curvas da
resposta no domnio da frequncia em malha aberta.
Z=N+P
P 0 : necessrio impor : Z = 0 ou N = - P.
P = 0: necessrio impor : Z = N.
35
num 2s 2 + 5 s + 1
G ( s) H ( s) = = 2
den s + 2s + 3
>> num = [ 2 5 1 ]
>> den = [ 1 2 3 ]
>> nyquist ( num , den )
num =
2 5 1
den =
1 2 3
Nyquist Diagram s
1.5
0.5
Im agi nary A x is
-0.5
-1
-1.5
A funo ngrid gera as linhas de grelha para o traado de Nichols que correspondem s
linhas de Mdulo e ngulo de Fase constantes da funo de transferncia de malha aberta.
A grelha e a gama de frequncias determinada automaticamente pela anlise dos Plos e
Zeros do sistema.
36
>> nichols ( sys ) % Gerao do traado de Nichols.
>> nichols ( sys, w ) % Gerao do traado de Nichols com gama de frequncias especificada.
>> nichols ( sys1 , sys2,..., sysN ) % Gerao dos traados de Nichols sobrepostos de diversos sistemas.
Quando o comando usado com os argumentos, Mdulo : mod, ngulo de Fase : fase []
e Frequncia : w, so apresentados os valores correspondentes sem que seja exibido o traado
de Nichols :
>> [ mod , fase, w ] = nichols ( sys ) % Obteno dos valores do Mdulo, ngulo de Fase e Frequncia.
>> [ mod , fase ] = nichols ( sys , w ) % Obteno dos valores do Mdulo, ngulo de Fase para a gama
de frequncias especificada.
num =
-4 48 - 18 250 600
den =
1 30 282 525 60
Nichols Charts
40
0 dB
30 0.25 dB
0.5 dB
20 1 dB -1 dB
Open-L oo p Ga in (dB )
10 3 dB
-3 dB
6 dB
0 -6 dB
-10 -12 dB
-20 -20 dB
-30
-40 -40 dB
-500 -450 -400 -350 -300 -250 -200 -150 -100 -50
Open-Loop P hase (deg)
37
REFERNCIAS BIBLIOGRFICAS
[1] The Student Edition of MATLAB, The Math Works Inc., Prentice Hall, 1992.
[2] Ogata, Katsuhiko - Solving Control Engineering Problems with MATLAB, Prentice Hall,
1994.
38