A Função de Transferência de Malha Fechada
Por: Rafael Soles Barbosa • 5/6/2018 • Trabalho acadêmico • 523 Palavras (3 Páginas) • 389 Visualizações
Projeto de Controle Discreto
Planta do Processo | [pic 1] |
Controlador | [pic 2] |
Função de Transferência de Malha Fechada | [pic 3] |
O programa abaixo implementado em MATLAB permite obter a resposta do sistema contínuo ao degrau unitário, bem como o valor de alguns parâmetros, como o tempo de estabelecimento e a ultrapassagem (overshoot):
%Sistema contínuo (Período de Amostragem do processador T=0.001)
clear;clc;
tmax=20;k=1;%Dados
nplanta=[0 0 1];dplanta=[1 10 0];%Planta Contínua
ncontr=k;dcontr=1;%Controlador Contínuo
num=conv(nplanta,ncontr);
den=(conv(dplanta,dcontr)+num);
malha_fechada=tf(num,den);%Função de Transferência de Malha Fechada
t=0:0.001:tmax;
[y]=step(malha_fechada,t);
plot(t,y)%Plotando a saída
grid on; title('Resposta ao Degrau Unitário do Sistema Contínuo');
xlabel('t(s)');ylabel('Amplitude')
%Valor dos Parâmetros
Sistema_Continuo=malha_fechada
Periodo_de_amostragem_do_processador=t(2)-t(1)
Ultrapassagem_em_porcentagem=(max(y)-1)*100
for i=length(y):-1:1
if y(i)<0.98||y(i)>1.02
Tempo_de_estabelecimento=t(i+1)
break
end
end
Programa 01: Sistema Contínuo.
Plotando a resposta ao degrau unitário do sistema contínuo:
[pic 4]
Figura 1: Resposta ao degrau unitário, sistema contínuo.
Visualizando na comand window do MATLAB a ultrapassagem e o tempo de estabelecimento:
[pic 5]
O programa abaixo implementado em MATLAB permite obter a resposta do sistema discreto ao degrau unitário, bem como o valor de alguns parâmetros de interesse, como o tempo de estabelecimento e a ultrapassagem (overshoot), para valores de tempo de amostragem de :[pic 6]
%Sistema Discreto, períodos de amostragem: T=0.1;0.2;0.4;0.6;0.8;1.0;1.2:
clear;clc;
Tsample=0.1;Tmax=30;k=1;%Dados
nplanta_cont=[0 0 1];dplanta_cont=[1 1 0];%Planta Contínua
[a1,b1,c1,d1]=tf2ss(nplanta_cont,dplanta_cont);[a,b]=c2d(a1,b1,Tsample);
[nplanta_discr,dplanta_discr]=ss2tf(a,b,c1,d1,1);%Planta Discreta
ncontr_discr=k;dcontr_discr=1;%Controlador Discreto
num=conv(nplanta_discr,ncontr_discr);
den=(conv(dplanta_discr,dcontr_discr)+num);
malha_fechada=filt(num,den,Tsample);%Função de Transferência de Malha Fechada
L=fix(Tmax/Tsample);
t=(0:L-1)*Tsample;
y=dstep(num,den,L);
plot(t,y,'.')%Plotando a Saída
grid on; title('Resposta ao Degrau Unitário do Sistema Discreto para T = 0.
1 s');
xlabel('t(k) (s)');ylabel('y(k)')
%Parâmetros de Interesse
Processo_Discreto=malha_fechada
Ultrapassagem_porcentagem=(max(y)-1)*100
for i=length(y):-1:1
if y(i)<0.98||y(i)>1.02
Tempo_de_estabelecimento=t(i+1)
break
end
end
Programa 02: Sistema Discreto.
Plotando a resposta ao degrau unitário do sistema discreto para :[pic 7]
[pic 8]
Figura 2: Resposta ao degrau unitário, sistema discreto, .[pic 9]
Visualizando na comand window do MATLAB a ultrapassagem e o tempo de estabelecimento:
[pic 10]
Plotando a resposta ao degrau unitário do sistema discreto para :[pic 11]
[pic 12]
Figura 3: Resposta ao degrau unitário, sistema discreto, .[pic 13]
Visualizando na comand window do MATLAB a ultrapassagem e o tempo de estabelecimento:
[pic 14]
Plotando a resposta ao degrau unitário do sistema discreto para :[pic 15]
[pic 16]
Figura 4: Resposta ao degrau unitário, sistema discreto, .[pic 17]
...