Este documento descreve a discretização de um sistema linear e contínuo no tempo usando o método do hold equivalente. O sistema discreto resultante é simulado e comparado com o sistema contínuo original, mostrando uma aproximação precisa.
Discretização de Sistema Contínuo usando Hold Equivalente
1. UNIVERSIDADE FEDERAL DO PARÁ
Faculdade de Engenharia Elétrica
TRABALHO DE
SISTEMAS DE CONTROLE II
BELÉM – PA
2013
2. UNIVERSIDADE FEDERAL DO PARÁ
Faculdade de Engenharia Elétrica
Jorge Henrique Costa Angelim – 10020005101
Rubens Nascimentos Santana Junior - 10020003101
William Moreira de Assis – 10020006001
TRABALHO DE
SISTEMAS DE CONTROLE II
Trabalho referente à parte B (20%) da
1ª avaliação da disciplina Sistemas de controle II.
BELÉM – PA
2013
3. APRESENTAÇÃO
Neste trabalho, aplicamos o método Hold equivalente para a discretização de um sistema linear e contínuo no tempo. Através do software MATLAB®, desenvolvemos um script para a obtenção do sistema discreto, seguida da plotagem da resposta dos sistemas contínuo e discreto a um sinal de entrada. Analisamos o comportamento da resposta do sistema equivalente discreto e comparamos com a resposta do sistema contínuo ao mesmo sinal de entrada.
O script desenvolvido está no final do trabalho.
4. PARTE 1 – SIMULAÇÃO DA RESPOSTA AO DEGRAU UNITÁRIO E OBTENÇÃO DO TEMPO DE AMOSTRAGEM.
Seja o sistema G(s) linear e contínuo no tempo, cuja função de transferência é mostrada a seguir:
( ) ( )
Obtivemos primeiramente a resposta ao degrau unitário de G(s) em malha fechada, de acordo com o diagrama de blocos mostrado abaixo.
Figura 1 - Diagrama de blocos
A função de transferência do sistema em malha fechada mostrado na figura 1 é
( )
Figura 2 - Resposta ao degrau unitário de GMF(s).
Aplicando o teorema do valor final, obtemos o valor de regime permanente do sistema, que é igual a 1.
5. Sabemos que para um sistema subamortecido, o tempo de subida é definido como o tempo necessário para que a resposta do sistema alcance pela primeira vez o valor de regime permanente. Então, a partir do gráfico acima, obtemos o tempo de subida, tr, igual a 2,035s.
Para a determinação do período de amostragem, Ts, usamos o critério:
Aplicando o valor de tr encontrado anteriormente, temos
Um valor adequado do período de amostragem, que foi escolhido como sendo a taxa de amostragem utilizada na discretização do sistema, foi de Ts = 0,25s.
PARTE 2 – OBTENÇÃO DO EQUIVALENTE DISCRETO PELO MÉTODO DO HOLD EQUIVALENTE DO SISTEMA G(s) E SIMULAÇÃO DAS RESPOSTAS DOS SISTEMAS AO DEGRAU UNITÁRIO.
Usando o período de amostragem escolhido anteriormente (Ts = 0,25s), obtemos através do método Hold equivalente o sistema G(z), que é o equivalente discreto de G(s). A função G(z), encontrada através do comando c2d do MATLAB, é mostrada a seguir.
( )
As respostas ao degrau unitário de G(s) e à sequencia degrau unitário de G(z) foram plotadas e o resultado obtido está mostrado na figura abaixo.
Figura 3 - Respostas ao degrau unitário de G(s) e a sequencia degrau unitário de G(z).
Observamos que não há grande diferença entre os sistemas continuo e discreto em malha aberta, confirmando a equivalência entre os mesmos.
6. Agora, encontrando o equivalente discreto do sistema em malha fechada, GMF(z), obtemos o sistema discreto: ( )
Aplicamos a entrada degrau unitário ao sistema GMF(s) e a sequencia degrau unitário ao sistema GMF(z). O gráfico da resposta de ambos os sistemas é mostrado abaixo.
Observando a resposta acima, concluímos que pelo método do Hold equivalente obteve-se uma precisão considerada, pois o valor de regime permanente do sistema discreto é aproximadamente o mesmo da resposta do sistema contínuo. De fato, o valor final do sistema discreto é de 0,99822, que é muito próximo do valor de regime permanente do sistema contínuo.
O regime transitório do equivalente discreto também foi bastante próximo do seu original contínuo. Os valores máximos dos sistemas contínuo e discreto foram idênticos, que foi de 1,2, ou seja, ambos os sistemas tiveram o mesmo valor de máximo sobressinal. Também o tempo de subida dos dois sistemas (contínuo e discreto) também foram bastante próximo, sendo para o tempo contínuo igual a 2,035s e para o tempo contínuo de 2s aproximadamente.
Dessa forma, o sistema discreto G(z) obtido pelo método Hold equivalente fornece uma precisão excelente para o sistema dado inicialmente.
7. PARTE 3 – RESPOSTAS DOS SISTEMAS CONTÍNUO E DISCRETO A UMA ENTRADA RAMPA UNITÁRIA.
Aplicando o sinal rampa unitária ao sistema contínuo em malha aberta e, posteriormente a sequencia rampa unitária ao sistema discreto equivalente, obtemos a resposta mostrada na figura abaixo.
Figura 4 - Resposta à rampa unitária dos sistemas contínuo e discreto em malha aberta.
Aplicando agora o sinal rampa unitária aos sistemas contínuo e discreto em malha fechada, plotamos a resposta de ambos os sistemas. O resultado está mostrado a seguir.
Figura 5 - Resposta à rampa unitária dos sistemas contínuo e discreto em malha fechada.
Percebemos que, em ambos os casos, a resposta do equivalente discreto obtido pelo método Hold equivalente se aproximou de forma excelente da resposta do sistema contínuo, mostrando que esse método de obtenção do equivalente discreto nos dá resultados muito próximos aos do sistema contínuo original
8. Script MATLAB
%TRABALHO DE SISTEMAS DE CONTROLE II
clf
clear
clc
%Definição dos parâmetros do sistema G(s)
num = 1.25; %Numerador de G(s)
den = [1 1 0]; %Denominador de G(s)
disp('Função de transferência em malha aberta: ')
GsMA = tf(num,den)
input('Clique enter para obter a função de tranferência em malha fechada e a resposta ao degrau unitário')
disp('Função de transferência em malha fechada:')
GsMF = feedback(GsMA,1)
%Resposta ao degrau unitário do sistema em malha fechada
t = [0:0.001:20];
yuMF = step(GsMF,t); %Resposta ao degrau unitário do sistema em malha fechada.
plot(t,yuMF,'b','linewidth',1.5)
grid on
xlabel('Tempo (s)')
ylabel('yuMF')
tr = 2.035; %Tempo de subida do sistema
Ts = 0.25; %Tempo de amostragem
input('Clique enter para obter o equivalente discreto G(z) em malha aberta e a resposta ao degrau unitário')
clf
disp ('EQUIVALENTE DISCRETO DE G(s)')
GzMA = c2d(GsMA,Ts,'zoh') %Equivalente discreto - Método Hold equivalente
yuMA = step(GsMA,t); %Resposta ao degrau unitário de G(s) em malha aberta
plot(t,yuMA,'b','linewidth',1.5)
grid on
xlabel('Tempo (s)')
ylabel('yuMA')
hold on
tk = [0:80];%tempo discreto
numGzMA = [0.036 0.03312]; % Numerador do equivalente discreto de malha aberta
denGzMA = [1 -1.779 0.7788]; % Denominador do equivalente discreto de malha aberta
yuMAk = dstep(numGzMA,denGzMA,tk); %Resposta à sequencia unitária do equivalente discreto de G(s)
stem(tk*Ts,yuMAk,'r','filled')
input('Clique enter para obter o equivalente discreto de GsMF')
clf
disp('EQUIVALENTE DISCRETO DE G(s) EM MALHA FECHADA')
GzMF = c2d(GsMF,Ts,'zoh') % Equivalente discreto - Método Hold equivalente
numGzMF = [0.03577 0.03291]; % Numerador do equivalente discreto de malha fechda
9. denGzMF = [1 -1.71 0.7788]; % Denominador do equivalente discreto de malha fechada
yuMFk = dstep(numGzMF,denGzMF,tk); % Resposta ao degrau unitário de G(s) em malha fechada
stem(tk*Ts,yuMFk,'r','filled')
hold on
plot(t,yuMF,'b','linewidth',1.5)
grid on
xlabel('Tempo (s)')
ylabel('yuMF')
input('Clique enter para obter a resposta do sistema em malha aberta à rampa unitária.')
clf
u = t; %Definição do sinal de entrada rampa unitária
ytMA = lsim(GsMA,u,t); % Resposta do sistema contínuo em malha aberta à rampa unitária
plot(t,ytMA,'b','linewidth',1.5)
hold on
grid on
xlabel('Tempo (s)')
ylabel('ytMA')
ytMAk = lsim(GzMA,tk*Ts); %Resposta do sistema discreto em malha aberta à sequencia rampa unitária
stem(tk*Ts,ytMAk,'r','filled')
grid on
input('Clique enter para obter a resposta do sistema em malha fechada à rampa unitária.')
clf
ytMF = lsim(GsMF,u,t); %Resposta do sistema contínuo em malha fechada à entrada rampa unitária
plot(t,ytMF,'b','linewidth',1.5)
hold on
xlabel('Tempo (s)')
ylabel('ytMF')
grid on
ytMFk = lsim(GzMF,tk*Ts); %Resposta do sistema discreto em malha fechada à sequencia rampa unnitária
stem(tk*Ts,ytMFk,'r','filled')