Sunteți pe pagina 1din 30

UNIVERSIDADE PRESIDENTE ANTNIO CARLOS UNIPAC

FACULDADE DE TECNOLOGIA E CINCIAS - FATEC


ENGENHARIA DE CONTROLE E AUTOMAO

JOO BATISTA R. F. JNIOR


LEANDRO XAVIER ROBERTO

CONTROLE DE SISTEMAS DINMICOS I

CONSELHEIRO LAFAIETE
NOVEMBRO DE 2012

JOO BATISTA R. F. JNIOR


LEANDRO XAVIER ROBERTO

CONTROLE DE SISTEMAS DINMICOS I

Trabalho sobre a aplicao do capitulo 4 de


Anlise de Resposta Transitria utilizando o
MATLAB, da disciplina de Controle de
Sistemas Dinmicos I do 8 Perodo do curso
de Engenharia Controle e Automao,
ministrada pelo
professor
Leonardo
Alvarenga Lopes Santos.

CONSELHEIRO LAFAIETE
NOVEMBRO DE 2012

SUMRIO
ANLISE DE RESPOSTA TRANSITRIA COM MATLAB ........................................................ 5
Introduo ........................................................................................................................................... 5
Representao de Sistemas Lineares em MATLAB ........................................................................... 5
PROGRAMA MATLAB 4-1 ................................................................................................................ 6
Exerccio 01 ........................................................................................................................................ 6
PROGRAMA MATLAB 4.2 ................................................................................................................ 8
Exerccio 02 ........................................................................................................................................ 8
PROGRAMA MATLAB 4-3 ................................................................................................................ 9
Exerccio 3 .......................................................................................................................................... 9
PROGRAMA MATLAB 4-4 .............................................................................................................. 11
Exerccio 04 ...................................................................................................................................... 11
PROGRAMA MATLAB 4-5 .............................................................................................................. 12
Exerccio 05 ...................................................................................................................................... 12
PROGRAMA MATLAB 4-6 .............................................................................................................. 14
Exerccio 06 ...................................................................................................................................... 14
PROGRAMA MATLAB 4-7 .............................................................................................................. 15
Exerccio 07 ...................................................................................................................................... 15
PROGRAMA MATLAB 4-8 .............................................................................................................. 17
Exerccio 08 ...................................................................................................................................... 17
PROGRAMA MATLAB 4-9 .............................................................................................................. 18
Exerccio 09 ...................................................................................................................................... 18
PROGRAMA MATLAB 4-10 ............................................................................................................ 20
Exerccio 10 ...................................................................................................................................... 20
PROGRAMA MATLAB 4-11 ............................................................................................................ 21
Exerccio 11 ...................................................................................................................................... 21
PROGRAMA MATLAB 4-12 ............................................................................................................ 23
Exerccio 12 ...................................................................................................................................... 23

PROGRAMA MATLAB 4-13 ............................................................................................................ 25


Exerccio 13 ...................................................................................................................................... 25
PROGRAMA MATLAB 4-14 ............................................................................................................ 27
Exerccio 14 ...................................................................................................................................... 27
CONCLUSO ..................................................................................................................................... 29
BIBLIOGRAFIA ................................................................................................................................. 30

ANLISE DE RESPOSTA TRANSITRIA COM MATLAB


Introduo
Ser apresentado o enfoque computacional para anlise de resposta transitria com o
uso do MATLAB.
Conforme assinaldo no capitulo 4 do livro de Engenharia Controle Moderno,
Katshuhiko Ogata, 3 edio, as respostas transitrias, tais como ao degrau, impulso e
rampa, so utilizadas frequentemente para investigar as caractersticas no domnio do tempo
de sistemas de controle.

Representao de Sistemas Lineares em MATLAB


A funo de transferncia de um sistema representada por dois arranjos de nmeros.
Seja o sistema:

Este sistema representado por dois arranjos contendo, cada um, os coeficientes dos
polinmios em potncias decrescentes de s, como a seguir:

Note-se a incluso de zeros onde se fazem necessrios. Se num e den (o numerador e o


denominador da funo de transferncia malha fechada) forem conhecidos, comandos do
tipo;

Geram as curvas das respostas a um degrau unitrio. (O parmetro t no comando step


o tempo especificado pelo usurio). Para um sistema de controle definido no espao de
estados, onde a matriz de estado A, a matriz de controle B, a matriz de sada C e a matriz de
transmisso direta D conhecida, o comando;

Isso ir gerar as curvas de resposta ao degrau unitrio. O vetor tempo


automaticamente determinado se t no for definido explicitamente nos comandos step.
Note-se que nenhum grfico mostrado na tela quando os comandos step possuem
argumentos sua esquerda tais como:

Em consequncia, ser necessrio usar um comando plot para ver as curvas de


respostas. As matrizes y e x contm os valores de resposta e de estado, respectivamente,
calculados em cada um dos pontos de computao t (y possui tantas colunas quantas so as
variveis de sada e uma linha para cada elemento em t. y possui tantas colunas quantas so as
variveis de estado e uma linha para cada elemento em t.)
A partir destas definies iremos mostrar exemplos aplicveis feitos no MATLAB.

PROGRAMA MATLAB 4-1


Exerccio 01
O cdigo fornece a resposta ao degrau unitrio tendo como entrada o numerador e o
denominador da funo de transferncia, posteriormente utiliza-se o comando step e por fim o
reticulado e o titulo do grfico em resposta ao degrau unitrio de G(s) =25/ (s^2 + 4s + 25).

>>num=[0 0 25];
>>den=[1 4 25];
>>step(num,den)
>>grid
>>title('Resposta ao Degrau Unitario de G(s)=25/(s^2+4s+25)')

Grfico Plotado
O programa MATLAB conduz o traado da curva de resposta deste sistema a uma excitao
em degrau unitrio.

PROGRAMA MATLAB 4.2


Exerccio 02
O cdigo representa as curvas individuais do degrau unitrio atravs do comando step.
>>a=[-1 -1;6.5 0];
>>b=[1 1;1 0];
>>c=[1 0;0 1];
>>d=[0 0;0 0];
>>step(a,b,c,d)

Grfico Plotado
As quatro curvas individuais de resposta e degrau unitrio podem ser traadas com o
comando step(a,b,c,d)

PROGRAMA MATLAB 4-3


Exerccio 3
O cdigo demonstra a resposta ao degrau unitrio de sistemas definidos no espao de
estados, o programa traa as curvas de um sistema com duas entradas e duas sadas para isso
usa o comando step.
>>a=[-1 -1;6.5 0];
>>b=[1 1;1 0];
>>c=[1 0;0 1];
>>d=[0 0;0 0];
>>step(a,b,c,d,1)
>>grid
>>title('Curvas de Resposta ao Degrau: Entrada=u1(u2=0)')
>>text(3.4,-0.06,'y1')
>>text(3.4,1.4,'y2')
>>step(a,b,c,d,2);
>>grid
>>title('Curvas de Resposta ao Degrau:Entrada=u2 (u1=0) ')
>>text(3,0.14,'y1')
>>text(2.8,1.1,'y2')

10

Este um programa para traar as duas curvas de resposta a um degrau unitario u1 aplicado
entrada 1 num diagrama e traar as duas curvas de resposta a um degrau unitrio u2 aplicado
entrada 2 num outro diagrama.

11

PROGRAMA MATLAB 4-4


Exerccio 04
Obter a resposta impulsional do sistema atravs do MATLAB.
>>a=[0 1;-1 -1];
>>b=[0;1];
>>c=[1 0];
>>d=[0];
>>impulse(a,b,c,d);
>>grid;
>>title('Resposta ao Impulso Unitrio')

12
Grfico Plotado
O programa produz a resposta impulsional, conforme mostra o grfico.

PROGRAMA MATLAB 4-5


Exerccio 05
Outro exemplo de como obter a resposta impulsional do sistema atravs do MATLAB.
>>num=[0 0 1];
>>den=[1 0.2 1];
>>impulse(num,den);
>>grid
>>title('Resposta Impulsional de G(s)=1/(s^2+0,2s+1)' )

13

Grfico Plotado
O programa produz a resposta impulsional, conforme mostra o grfico.

14

PROGRAMA MATLAB 4-6


Exerccio 06
Como mtodo alternativo de obteno de resposta impulsional de G(s) igual
resposta ao degrau unitrio de sG(s), quando as condies inicias so nulas.
>>num=[0 1 0];
>>den=[1 0.2 1];
>>step(num,den);
>>grid;
>>title('Resposta ao Degrau Unitrio de sG(s)=s/s^2+0,2s+1)')

15
Grfico Plotado
O programa produz a resposta impulso unitrio obtida como resposta ao degrau unitrio de sG(s) =
s/(s + 0.2s + 1). Conforme mostra o grfico.

PROGRAMA MATLAB 4-7


Exerccio 07
Para resposta a rampa unitria utilizando instante de tempo para o clculo de valores
de t e em seguida entrar com o comando de resposta ao degrau step.
>>num=[0 0 0 1];
>>den=[1 1 1 0];
>>t=0:0.1:7;
>>c=step(num,den,t);
>>plot(t,c,'o',t,t,'-')
>>grid
>>title('Resposta Rampa Unitria para G(s)=1/(s^2+s+1)')
>>xlabel('t s')
>>ylabel('Entrada e Sada')

16

Grfico Plotado
O programa produz a resposta conforme mostra o grfico.

17

PROGRAMA MATLAB 4-8


Exerccio 08
A resposta a rampa unitria obtida adicionando-se uma nova varivel de estado x3.
A dimenso das equaes de estado e de resposta acrescida de uma unidade. Depois entra
com a matriz A, B, C e D das equaes de estado originais. Em seguida entra com as matrizes
AA, BB, CC e DD das equaes de estado e de resposta aumentadas, fazendo os comandos
step em z,x,t. Ao traar o x3 acrescentar no grfico o traado da rampa t atravs do seguinte
comando: plot(t,x,o,t,t-).
>>a=[0 1;-1 -1];
>>b=[0;1];
>>c=[1 0];
>>d=[0];
>>aa=[a zeros(2,1);c 0];
>>bb=[b;0];
>>cc=[0 0 1];
>>dd=[0];
>> [z,x,t]=step(aa,bb,cc,dd);
>>x3=[0 0 1]*x';plot(t,x3,'o',t,t,'-' )
>>grid
>>title('Resposta Rampa Unitria')
>>xlabel('t s')
>>ylabel('Entrada e Sada')

18
Grfico Plotado
O programa produz a resposta da rampa conforme mostra o grfico.

PROGRAMA MATLAB 4-9


Exerccio 09
A resposta do sistema a condies inicia pode ser convertida na resposta a um degrau
unitrio, modificando-se o polinmio do numerador, entrando em seguida com o numerador e com
denominador da funo de transferncia G(s). Inserir os comandos step e de reticulando e com o
titulo do grfico.

>> num=[0.1 0.35 0];


>>den=[1 3 2];
>>step(num,den)
>>grid
>>title('Resp.de Sistema Mola-Massa-Amortecedor a C.Iniciais')

19

Grfico Plotado
O programa produz a resposta da rampa conforme mostra o grfico.

20

PROGRAMA MATLAB 4-10


Exerccio 10
Resposta de um sistema a um determinada condio inicial.
>>a=[0 1;-10 -5];
>>b=[2;1];
>> [x,z,t]=step(a,b,a,b);
>>x1=[1 0]*x';
>>x2=[0 1]*x';
>>plot(t,x1,'o',t,x2,'-')
>>grid
>>title('Resposta Condio Inicial')
>>xlabel('t s')
>>ylabel('x1 x2')

21
Grfico Plotado
O programa produz a resposta a uma dada condio inicial conforme mostra o grfico.

PROGRAMA MATLAB 4-11


Exerccio 11
Determinar o enfoque de sistema continuo no tempo de um sistema mecnico.
sempre importante notar que para traar curvas mltiplas sobre um mesmo grfico usar o
comando hold. Ao entrar com o comando hold, a tela do computador exibir a mensagem:

Para liberar a reteno do grfico digita-se novamente o comando hold. O grfico corrente
ser liberado em seguida ser exibida a mensagem:

22

>> num1=[0 0 0 49.04 490.4];


>> den1=[1 10 100 0 0];
>> t1=0:0.001:0.537;
>> y1=step(num1,den1,t1);
>> num2=[0 0 49.04 490.4];
>> den2=[1 10 100 0];
>> y1dot=step(num2,den2,t1);
>> y2_ini=y1(537);
>> y2dot_ini=y1dot(537);
>> t2=0.538:0.001:1.5;
>> num3=[0 7.07 70.7];
>> den3=[1 10 100];
>> num4=[y1(537) y1dot(537)+10*y1(537)-7.07 0];
>> y2o=step(num3,den3,t2);
>> y2i=step(num4,den3,t2);
>> y2=y2o+y2i;
>> y=[y1' y2'];
>> t=[t1 t2];
>> plot(t,-y,'.')
>> hold
Current plot held
>> x1=2.452*t1.^2;
>> x2=0.707*ones(size(t2));
>> x=[x1 x2];
>> plot(t,-x,'-')
>> grid
>> title('Resposta do Sistema (Enfoque Contnuo no Tempo)')
>> xlabel('t s')
>> ylabel('Sinal de Entrada x e Sinal de Sada y')
>> text(0.2,-0.54,'Sinal de Entrada x')
>> text(0.47,-0.25,'Sinal de Sada y')

23

Grfico Plotado
O programa produz a resposta conforme mostra o grfico.

PROGRAMA MATLAB 4-12


Exerccio 12
Exemplo de enfoque de sistema discreto. Converte a funo de transferncia do sistema
continuo em funo de transferncia discreta (funo de transferncia de sinais amostrados)
escolhendo o passo de discretizao (perodo de amostragem) com o valor de 0,001s.

24

>>num=[0 10 100];
>>den=[1 10 100];
>> [A,B,C,D]=tf2ss(num,den);
>> [G,H]=c2d(A,B,0.001);
>> [numz,denz]=ss2tf(G,H,C,D);
>>k1=0:537;
>>x1=[2.452*(0.001*k1).^2];
>>k2=538:1500;
>>x2=[0.707*ones(size(k2))];
>>x=[x1 x2];
>>y=filter(numz,denz,x);
>>t=0:1500;
>>plot(t/1000,-y,'.',t/1000,-x,'-')
>>grid
>>title('Resposta do Sistema (Enfoque Discreto)')
>>xlabel('t s')
>>ylabel('Sinal de Entrada x e Sinal de Sada y')
>>text(0.2,-0.54,'Sinal de Entrada x')
>>text(0.47,-0.25,'Sinal de Sada y')

25
Grfico Plotado
O programa produz a resposta conforme mostra o grfico, com o sinal de entrada x(t) e sinal de sada
y(t) obtido segundo o enfoque de sistema discreto no tempo.

PROGRAMA MATLAB 4-13


Exerccio 13
O programa MATLAB pode ser utilizado para obter a resposta a uma perturbao em
degrau unitrio. A curva de resultante mostrada a seguir.
>>num=[0 10];
>>den=[2 2 1];
>>step(num,den)
>>grid
>>title('Resposta a Degrau Unitrio')

26

Grfico Plotado

Curva resultante para obter a resposta a uma perturbao em degrau unitrio.

27

PROGRAMA MATLAB 4-14


Exerccio 14
Um programa MATLAB para traar as cinco curvas de resposta impulsional num
diagrama dado atravs do exemplo a seguir.
>>num=[0 1 0];
>>den=[1 0.2 1];
>>t=0:0.1:10;
>>step(num,den,t);
>>text(2.2,0,88,'Zeta=0,1')
>>hold
>>Current plot held
>>den2=[1 0.6 1]; den3=[1 1 1];den4=[1 1.4 1];
>>den5=[1 2 1];
>>step(num,den2,t);
>>text(1.33,0.72,'0,3')
>>step(num,den3,t);
>>text(1.15,0.58,'0,5')
>>step(num,den4,t);
>>text(1.1,0.46,'0,7')
>>step(num,den5,t);
>>text(0.8,0.28,'1,0')
>>grid
>>title('Curvas de Resposta Impulsional de G(s)=1/[s^2 +2(zeta)s+1]')
>>hold
>>Current plot released

28

Grfico Plotado

Curvas resultantes do diagrama de respostas ao impulso unitrio

29

CONCLUSO
O objetivo deste trabalho foi fundamental para a prtica de utilizao do software
MATLAB nas analises de respostas transitrias, tanto em situaes didticas como em
exemplos fsicos reais.
A realizao dos exemplos do capitulo proposto em relao ao tema de estudo, refora
o entendimento dos conceitos de analise das respostas de degrau, rampa e impulso unitrio de
primeira e segunda ordem. Atravs dos erros encontrados durante a realizao dos exerccios
causou no primeiro instante uma frustrao, e ao mesmo tempo o interesse de pesquisa e
desafio na busca de uma resposta positiva na resoluo do eventual erro.
Aps todos os exemplos solucionados de forma satisfatria, ficou a certeza de que o
sucesso no aprendizado no se resume apenas em sala com a presena do instrutor, mas
depende de um esforo individual da busca do conhecimento. O que por este ponto de vista, o
trabalho realizado foi um desafio constante na busca destas informaes satisfatrias.

BIBLIOGRAFIA
Ogata, K. (1997). Engenharia de Controle Moderno (3 ed.). (B. Severo, Trad.) Rio de
Janeiro: LCT.

S-ar putea să vă placă și