Escolar Documentos
Profissional Documentos
Cultura Documentos
UFRRJ
2021
SUMÁRIO
2 RECURSOS AUXILIARES 9
3 TRANSFORMADAS DE LAPLACE 13
4 FUNÇÕES DE TRANSFERÊNCIA 17
4.1 Introdução 17
9 REFERÊNCIAS BIBLIOGRÁFICAS 52
Este tutorial foi escrito para servir de suporte às aulas da disciplina IT 359, Controle
de Processos, do DEQ/UFRRJ.
O principal objetivo deste tutorial é apresentar aos discentes uma ferramenta
computacional com interface amigável para o estudo das principais técnicas de controle de
processos, o Software de Computação Científica GNU Octave.
O uso desse software permitirá que a disciplina de Controle de Processos possa ser
muito mais bem explorada e compreendida por meio da simulação de processos e da
avaliação computacional das técnicas de controle abordadas no curso.
A habilidade na utilização de softwares de computação científica e em técnicas de
programação são demandas crescentes no mercado de trabalho do engenheiro químico,
assim como no meio acadêmico.
Outra opção para definir uma função é usar o comando “sym”, conforme exemplo
abaixo:
f=sym('exp(-2*t)');
printf('A função f(t) a ser integrada é: \n'), disp(f)
disp(' ')
A integral de f(t) é:
-2*t
-e
-------
2
A derivada de f(x) é:
3 2
a*x b*x
---- + ---- + c*x
3 2
P ( s ) = s 3 + 3s 2 + 4 (1)
sp=poly2sym(p);
printf('Representação algébrica (simbólica) do polinômio: \n'), disp(sp)
disp(' ')
n ( s ) = ( 3s 2 + 2s + 1) ( s + 4 ) (2)
sp=poly2sym(n);
printf('Representação algébrica do polinômio: \n'), disp(sp)
disp(' ')
==================== RESULTADO =========================
Coeficientes de um polinômio, p(s): 3 2 1
Raízes de p(s):
-3.35530 + 0.00000i
0.17765 + 1.07730i
0.17765 - 1.07730i
em que, cn são os coeficientes das frações parciais; pn são as raízes ou pólos de D(s); en é a
multiplicidade das raízes ou pólos de D(s) e ki são os termos constantes da expansão.
N (s) s2 − s − 6
Y (s) = = (4)
D ( s ) s 3 − 2s 2 − s + 2
[c,p,k,e]=residue(N,D);
printf('Coeficientes das frações parciais (c_n): \n'), disp(c)
disp(' ')
printf('Raízes ou pólos de D(s) (p_n): \n'), disp(p)
disp(' ')
printf('Multiplicidade das raízes de D(s) (e_n): \n'), disp(e)
disp(' ')
printf('Termos constantes da expansão (k_i): \n'), disp(k)
s^2 - s - 6
y1: -------------------
s^3 - 2 s^2 - s + 2
Continuous-time model.
N (s) 3
Y (s) = =
D (s) s ( s 2 + 2s + 5 )
(5)
[c,p,k,e]=residue(N,D);
printf('Coeficientes das frações parciais (c_n): \n'), disp(c)
disp(' ')
printf('Raízes ou pólos de D(s) (p_n): \n'), disp(p)
disp(' ')
printf('Multiplicidade das raízes de D(s) (e_n): \n'), disp(e)
disp(' ')
printf('Termos constantes da expansão (k_i): \n'), disp(k)
3
y1: -----------------
s^3 + 2 s^2 + 5 s
Continuous-time model.
N (s) 2
Y (s) = =
D (s)
(6)
s ( s + 1)
3
[c,p,k,e]=residue(N,D);
printf('Coeficientes das frações parciais (c_n): \n'), disp(c)
disp(' ')
printf('Raízes ou pólos de D(s) (p_n): \n'), disp(p)
disp(' ')
printf('Multiplicidade das raízes de D(s) (e_n): \n'), disp(e)
disp(' ')
printf('Termos constantes da expansão (k_i): \n'), disp(k)
2
y1: -----------------------
s^4 + 3 s^3 + 3 s^2 + s
Continuous-time model.
4.1 Introdução
Uma Função de Transferência (FT) é uma equação algébrica que representa a
relação dinâmica entre uma entrada e uma saída do processo, representado por seu modelo
matemático. Os modelos na forma de função de transferência usam as transformadas de
Laplace. Estas transformadas são muito usadas em controle de processos, já que permitem
o desenvolvimento de representações dinâmicas bastante simples de processos químicos.
Elas transformam equações diferenciais lineares ou linearizadas em equações algébricas,
com as quais é muito mais fácil trabalhar, permitem uma análise rápida da dinâmica do
processo e fornecem uma relação direta entre as entradas e saídas do processo. Dessa
forma, uma função de transferência caracteriza as relações de entrada-saída de sistemas e
processos que podem ser descritos por equações diferenciais lineares ou linearizadas.
A função de transferência de um sistema linear, G(s), é definida como a relação entre
a transformada de Laplace do sinal de saída, Y’(s), e a transformada de Laplace do sinal de
entrada, F’(s), ambas definidas em termos de variáveis desvio e com condições iniciais
nulas, ou seja:
Y ' (s )
G(s ) = (7)
F ' (s )
onde Y’(s) é a transformada de Laplace da saída e U’(s) é a transformada de Laplace da
entrada.
Em geral, a função de transferência G(s) é a razão de dois polinômios:
clearvars
clc
disp('Forma Equivalente:')
N=4;
D=[1,6,11,6,0];
G2=tf(N,D)
6 s^2 - 12
y1: -------------------
s^3 + s^2 - 4 s - 4
Continuous-time model.
Zeros da FT (z_j):
-1.4142
1.4142
D =
4
y1: --------------------------
s^4 + 6 s^3 + 11 s^2 + 6 s
Continuous-time model.
Forma Equivalente:
4
y1: --------------------------
s^4 + 6 s^3 + 11 s^2 + 6 s
clearvars
clc
6 s^2 - 12
y1: -------------------
s^3 + s^2 - 4 s - 4
Continuous-time model.
Pólos da FT (p_i):
2.00000
-2.00000
-1.00000
Zeros da FT (z_j):
-1.4142
1.4142
Pólos da FT (p_i):
2.00000
-2.00000
-1.00000
Zeros da FT (z_j):
-1.4142
1.4142
clearvars
clc
1
y1: -----
s + 1
Continuous-time model.
---------------
Criando a Função de Transferência G2(s)
2
y1: -----
s + 2
Continuous-time model.
---------------
Adição de duas Funções de Transferência no Matlab: G1(s)+G2(s)
3 s + 4
y1: -------------
s^2 + 3 s + 2
Continuous-time model.
2
y1: -------------
s^2 + 3 s + 2
dy(t )
a1 + a0 y (t ) = bf (t ) (9)
dt
onde f(t) é a entrada do sistema. Se a0 0, então a equação acima pode ser escrita como:
a1 dy(t )
+ y (t ) = f (t )
b
a0 dt a0
(10)
Definindo p = a1 e K p = b , obtém-se:
a0 a0
dy(t )
p + y (t ) = K p f (t ) (11)
dt
dy(t )
p + y(t ) = K p f (t ) (12)
dt
Y (s ) Kp
G(s ) = =
F (s ) p s + 1
(14)
Kp
Y (s ) =
M
(15)
ps +1 s
− t
y(t ) = K p M 1 − exp (16)
p
clear all
clc
close all % Fecha todas as figuras abertas
figure
plot(t,y,'LineWidth',2)
grid
title('Resposta de um Processo de 1^a Ordem a um Degrau Unitário')
xlabel('t')
ylabel('y^,(t)')
print -djpg degrau1_sist1.jpg % Salvando a figura no formato png
% ----------------------------------------------------------------
% Aplicando um degrau de magnitude M ao processo
M=5; % Magnitude do degrau
[y2,t2]=step(M*G); % Aplicando um degrau unitário ao processo
figure
plot(t2,y2,'r','LineWidth',2)
grid
title('Resposta de um Processo de 1^a Ordem a um Degrau de Magnitude M')
xlabel('t')
ylabel('y^,(t)')
A função step, por padrão, traça a resposta com o tempo necessário para o processo
atingir o estado estacionário, o que corresponde a aproximadamente cinco constantes de
tempo para sistemas de 1ª ordem. No entanto, é possível obter a resposta ao degrau (ou a
qualquer outra entrada), definindo o tempo da simulação arbitrariamente por meio de um
parâmetro extra na chamada da função. Um exemplo dessa aplicação segue no Quadro 16.
clear all
clc
close all % Fecha todas as figuras abertas
0, t 0
f (t ) = (t ) = , t = 0 (17)
0, t 0
Kp
Y (s ) = B (19)
ps + 1
K pB −t
y(t ) = exp (20)
p
p
clear all
clc
close all % Fecha todas as figuras abertas
% ----------------------------------------------------------------
% Aplicando um impulso UNITÁRIO
[y,t]=impulse(G); % Aplicando um impulso unitário ao processo
figure
plot(t,y,'LineWidth',2)
grid
title('Resposta de um Processo de 1^a Ordem a um Impulso Unitário','fontsize',14)
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg impulso1_sist1.jpg % Salvando a figura no formato png
% ----------------------------------------------------------------
% Aplicando um impulso de magnitude B ao processo
B=5; % Magnitude do impulso
[y2,t2]=impulse(B*G);
figure
plot(t2,y2,'r','LineWidth',2)
grid
title('Resposta de um Processo de 1^a Ordem a um Impulso de Magnitude B')
xlabel('t')
ylabel('y^,(t)')
print -djpg impulso5_sist1.jpg
==================== RESULTADO =========================
Os resultados são apresentados na forma gráfica na Figura 4 e na Figura 5.
0, t0
f (t ) = P, 0 t t w L f (t ) = F (s ) = 1 − exp(− tw s )
P
(21)
0, s
t tw
Kp
Y (s ) =
P
1 − exp(− tw s ) (22)
ps +1 s
t −t − t
y(t ) = KpP exp w exp − exp (23)
p p p
Embora não haja uma função nativa no Octave para simular uma entrada do tipo
pulso, é possível usar a função lsim para simular a resposta de modelos lineares (LTI,
Linear Time Invariant) a praticamente qualquer tipo de entrada arbitrária.
A resposta ao pulso de um sistema de 1ª ordem foi obtida no Octave por meio dessa
função (lsim) e o código descrito no Quadro 18:
% ****************************************************************
% USO DA FUNÇÃO "lsim" para definir outros tipos de perturbação
% ****************************************************************
clear all
clc
close all
figure
subplot(2,1,1)
stairs(t,u,'r','LineWidth',2);
legend('Perturbação do tipo Pulso')
xlabel('t','fontsize',14)
ylabel('u^,(t)','fontsize',14)
subplot(2,1,2)
plot(t,y,'LineWidth',2);
grid
legend('Resposta de um Processo de 1^a Ordem')
figure
stairs(t,u,'r','LineWidth',2);
hold
plot(t,y,'b','LineWidth',2);
grid
legend('Perturbação do tipo Pulso','Resposta de um Processo de 1^a Ordem')
xlabel('t','fontsize',14)
ylabel('u^,(t) e y^,(t)','fontsize',14)
print -djpg P3tw5_sist1b.jpg % Salvando a figura no formato png
0 t 0
f (t ) = (24)
at t 0
F (s ) =
a
(25)
s2
Kp K p a p2 K p a p K p a
Y (s ) = Y (s ) =
a
− + 2 (26)
ps + 1 s2 ps + 1 s s
Para valores elevados de tempo (t >> τp), a equação acima pode ser aproximada por:
y(t ) K P a (t − p ) (28)
% ****************************************************************
% USO DA FUNÇÃO "lsim" para definir outros tipos de perturbação
% ****************************************************************
clear all
clc
close all
figure
stairs(t,u,'b--','LineWidth',2)
hold
plot(t,y,'r','LineWidth',2);
grid
title('Resposta de um Processo de 1^a Ordem a uma Rampa','fontsize',14)
legend('u(t) = at','y^,(t)')
xlabel('t','fontsize',14)
ylabel('u^,(t) e y^,(t)','fontsize',14)
print -djpg rampa_sist1.jpg % Salvando a figura no formato png
A
F ( s) = (30)
s + 2
2
K p A
Y (s ) =
s + 1 s 2 + 2 (31)
p
KpA
y(t ) = y = sen(t + ) (32)
t → p2 2 + 1
ou
y (t ) = y = Aˆ sen(t + ) (33)
t →
% ****************************************************************
clear all
clc
close all
figure
plot(t,u,'b--',t,y,'r','LineWidth',2);
grid
title('Resposta de um Processo de 1^a Ordem a uma Perturbação Periódica','fontsize',14)
legend('u(t) = seno(t)','y^,(t)')
xlabel('t','fontsize',14)
ylabel('u^,(t) e y^,(t)','fontsize',14)
print -djpg seno_sist1.jpg % Salvando a figura no formato png
figure
subplot(2,1,1)
plot(t,u,'b--',t,y,'r','LineWidth',2);
grid
title('Resposta de um Processo de 1^a Ordem a uma Perturbação Periódica','fontsize',14)
legend('u(t) = seno(t)','y^,(t)')
xlabel('t','fontsize',14)
ylabel('u^,(t) e y^,(t)','fontsize',14)
print -djpg seno_sist1b.jpg % Salvando a figura no formato png
d 2 y(t ) dy(t )
a2 2
+ a1 + a0 y(t ) = bf (t ) (34)
dt dt
a2 a b
onde = , 2 = 1 e K p = .
2
a0 a0 a0
Y ( s) K
G(s) = = 2 2 p (36)
F ( s) s + 2s + 1
% Sistema 1
Kp=1; % Ganho estacionário do processo de 2a ordem
N=Kp; % Numerador da função de transferência
D=[1 0.4 1]; % Denominador da função de transferência
G=tf(N,D) % Obtendo a função de transferência
% ----------------------------------------------------------------
% Aplicando um degrau de magnitude M ao processo
M=1; % Magnitude do degrau
[y,t]=step(M*G);
figure
plot(t,y,'LineWidth',2)
grid
title('Resposta de um Processo de 2^a Ordem a um Degrau Unitário','fontsize',14)
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg degrau_sist2a.jpg % Salvando a figura no formato png
% ----------------------------------------------------------------
% Aplicando um degrau de magnitude M ao processo
M=5; % Magnitude do degrau
[y2,t2]=step(M*G,t);
figure
plot(t2,y2,'LineWidth',2)
grid
title('Resposta de um Processo de 2^a Ordem a um Degrau M','fontsize',14)
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg degrauM_sist2a.jpg % Salvando a figura no formato png
% Sistema 1
Kp=1; % Ganho estacionário do processo de 2a ordem
tau1=1;
csi1=2;
N=Kp; % Numerador da função de transferência
D=[tau1^2 2*csi1*tau1 1]; % Denominador da função de transferência
G1=tf(N,D); % Obtendo a função de transferência
% Sistema 2
Kp=1; % Ganho estacionário do processo de 2a ordem
tau2=1;
csi2=1;
N=Kp; % Numerador da função de transferência
D=[tau2^2 2*csi2*tau2 1]; % Denominador da função de transferência
G2=tf(N,D); % Obtendo a função de transferência
% Sistema 3
Kp=1; % Ganho estacionário do processo de 2a ordem
tau3=1;
csi3=0.2;
N=Kp; % Numerador da função de transferência
D=[tau3^2 2*csi3*tau3 1]; % Denominador da função de transferência
G3=tf(N,D); % Obtendo a função de transferência
clear all
close all
clc
% Sistema 1
Kp1=1; % Ganho estacionário do processo de 1a ordem
taup1=0.5; % Constante de tempo do processo de 1a ordem
N1=Kp1;
D1=[taup1 1];
G1=tf(N1,D1)
% Alternativamente:
##D=conv([taup1 1],[taup2 1]); % Denominador da função de transferência
##G1=tf(N,D) % Obtendo a função de transferência
figure
subplot(2,1,1)
plot(t1,y1,'b','LineWidth',2)
grid
hold
plot(t2,y2,'r','LineWidth',2)
plot(t,y,'g','LineWidth',2)
title('Resposta ao Degrau de um Sistema Multicapacitativo de 2^a Ordem Sem
Interação','fontsize',14)
legend('Sitema de 1^a Ordem 1 (\tau_p = 0,5)','Sitema de 1^a Ordem 2 (\tau_p = 1)','Sitema
de 2^a Ordem 2 (G1*G2)')
xlabel('t','fontsize',14)
% Sistema 1
Kp=1; % Ganho estacionário do processo de 2a ordem
tau1=1;
csi1=2;
N=Kp; % Numerador da função de transferência
D=[tau1^2 2*csi1*tau1 1]; % Denominador da função de transferência
G1=tf(N,D); % Obtendo a função de transferência
% Sistema 2
Kp=1; % Ganho estacionário do processo de 2a ordem
tau2=1;
csi2=1;
N=Kp; % Numerador da função de transferência
D=[tau2^2 2*csi2*tau2 1]; % Denominador da função de transferência
G2=tf(N,D); % Obtendo a função de transferência
% Sistema 3
Kp=1; % Ganho estacionário do processo de 2a ordem
tau3=1;
csi3=0.2;
N=Kp; % Numerador da função de transferência
D=[tau3^2 2*csi3*tau3 1]; % Denominador da função de transferência
G3=tf(N,D); % Obtendo a função de transferência
% Sistema 1
Kp=1; % Ganho estacionário do processo de 2a ordem
N=Kp; % Numerador da função de transferência
D=[1 0.4 1]; % Denominador da função de transferência
G1=tf(N,D) % Obtendo a função de transferência
% Sistema 2
Kp=1; % Ganho estacionário do processo de 2a ordem
taup1=4; % Constante de tempo do processo de 2a ordem
taup2=1; % Constante de tempo do processo de 2a ordem
N=Kp; % Numerador da função de transferência
D=conv([taup1 1],[taup2 1]); % Denominador da função de transferência
G2=tf(N,D) % Obtendo a função de transferência
figure
subplot(2,1,1)
stairs(t,u,'g','LineWidth',2);
legend('Perturbação do tipo Pulso')
xlabel('t','fontsize',14)
ylabel('u^,(t)','fontsize',14)
subplot(2,1,2)
plot(t,y1,t,y2,'r','LineWidth',2);
grid
legend('Resposta de Sistemas de 2^a Ordem')
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg P1tw2_sist2.jpg % Salvando a figura no formato png
figure
title('Resposta de Processos de 2^a Ordem ao Pulso','fontsize',14)
stairs(t,u,'g','LineWidth',2);
hold
plot(t,y1,'b',t,y2,'r','LineWidth',2);
grid
legend('Perturbação','Resposta do Processo 1','Resposta do Processo 2')
xlabel('t','fontsize',14)
ylabel('u^,(t) e y^,(t)','fontsize',14)
print -djpg P1tw2_sist2b.jpg % Salvando a figura no formato png
figure
subplot(2,1,1)
plot(t1,y1,'b:','LineWidth',2)
hold
plot(t2,y2,'r--','LineWidth',2)
plot(t3,y3,'g-.','LineWidth',3)
grid
legend('Processo de 2^a Ordem','Processo de 2^a Ordem com Zero Negativo',...
'Processo de 2^a Ordem com Zero Positivo', "location", "southeast")
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg degrau_sists2aZeros.jpg % Salvando a figura no formato png
[g1,t]=step(G,t);
figure
plot(t,g1,'r','LineWidth',2);
grid
hold
[gzp1,t]=step(Gzp,t);
plot(t,gzp1,'b--','LineWidth',2);
legend('Processo de 2^a Ordem','Processo de 2^a Ordem com Zeros Positivos',"location",
"southeast")
title('Resposta de um Processo de 2^a Ordem com \xi > 1','fontsize',14)
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg degrau_respinversa1.jpg % Salvando a figura no formato png
[g1,t]=step(G2,t);
figure
plot(t,g1,'r','LineWidth',2);
grid
hold
[gzp1,t]=step(Gzp2,t);
plot(t,gzp1,'b--','LineWidth',2);
legend('Processo de 2^a Ordem','Processo de 2^a Ordem com Zeros Positivos')
title('Resposta de um Processo de 2^a Ordem com \xi < 1','fontsize',14)
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg degrau_respinversa2.jpg % Salvando a figura no formato png
==================== RESULTADO =========================
Os resultados são apresentados na forma gráfica na Figura 17.
dh(t )
A = qi (t ) − q (38)
dt
dh(t )
A = qi(t ) (39)
dt
H (s ) 1
=
Qi(s ) As
(40)
h(t ) =
M
t (41)
A
T1 (t ) = T (t − ) (42)
dy(t )
p + y(t ) = K p f (t − ) (44)
dt
Y (s ) K p e
− S
= (45)
F (s ) p s + 1
Y ( s) K e− S
= 2 2 p (46)
F ( s) s + 2 s + 1
A resposta ao degrau de um processo de 1ª ordem com tempo morto pode ser obtida
no Octave de acordo com o código descrito no Quadro 29:
figure
y1=step(G1,t); % Processo de 1a ordem
y2=step(G2,t); % Processo de 1a ordem com tempo morto
plot(t,y1,'b','LineWidth',2)
hold
plot(t,y2,'r','LineWidth',2);
legend('Processo de 1^a Ordem','Processo de 1^a Ordem com tempo morto',"location",
"southeast")
grid
title('Resposta de um Processo de 1^a Ordem com Tempo Morto a um Degrau
Unitário','fontsize',14)
xlabel('t','fontsize',14)
ylabel('y^,(t)','fontsize',14)
print -djpg degrau_tempomorto1.jpg % Salvando a figura no formato png
Figura 21: Diagrama de blocos de um sistema de controle feedback (Seborg et al., 2011).
em que Ysp ( s ) denota o valor interno do set-point expresso na forma equivalente a um sinal
de corrente elétrica, conforme descrito na equação abaixo:
K mGC ( s ) GF ( s ) GP ( s ) GD ( s )
Y ( s) = Ysp ( s ) + D ( s ) (49)
1 + GC ( s ) GF ( s ) GP ( s ) GM ( s ) 1 + GC ( s ) GF ( s ) GP ( s ) GM ( s )
• Processo de 1ª ordem:
KP
GP ( s ) = (52)
Ps +1
% =============================================
% Parâmetros do Sistema
% Controlador
Kc=5;
taui=2;
taud=0.35;
Gc=tf(Kc*[taui*taud,taui,1],[taui,0])
% Atuador
Kf=0.6;
tauf=0.2;
% Processo
Kp=1;
taup=4;
Gp=tf(Kp,[taup,1])
% Sensor
Km=3;
taum=0.1;
Gm=tf(Km,[taum,1])
Kl=0.8;
taul=2;
Gd=tf(Kl,[taul,1])
% =============================================
% Controlador Feedback: Problema Regulador
D=1; % Magnitude do degrau na carga
Nr=D*Gd; % Numerador do Problema Regulador
Dr=1+Gc*Gf*Gp*Gm; % Denominador do Problema Regulador
P=Nr/Dr; % Controlador Regulador
% =============================================
% Simulação em malha fechada:
ti=0; % Tempo inicial da simulação
tfim=20; % Tempo final da simulação
h=0.1; % Incremento no vetor de tempo
t=ti:h:tfim; % Vetor do tempo de simulação
[y,t]=step(P,t);
figure
plot(t,y,'LineWidth',2)
grid
title('Controle Feedback: Problema Regulador','fontsize',14)
xlabel('Tempo','fontsize',14)
ylabel('y^,(t)','fontsize',14)
% =============================================
% Parâmetros do Sistema
% Controlador
Kc=5;
taui=2;
taud=0.35;
Gc=tf(Kc*[taui*taud,taui,1],[taui,0])
% Atuador
Kf=0.6;
tauf=0.2;
Gf=tf(Kf,[tauf,1])
% Processo
Kp=1;
taup=4;
% Sensor
Km=3;
taum=0.1;
Gm=tf(Km,[taum,1])
% =============================================
% Controlador Feedback: Problema Servo
M=1; % Magnitude do degrau no set-point
Ns=Km*Gc*Gf*Gp; % Numerador do Problema Servo
Ds=1+Gc*Gf*Gp*Gm; % Denominador do Problema Servo
P=M*Ns/Ds; % Controlador Servo
% =============================================
% Simulação em malha fechada:
ti=0; % Tempo inicial da simulação
tfim=20; % Tempo final da simulação
h=0.1; % Incremento no vetor de tempo
t=ti:h:tfim; % Vetor do tempo de simulação
[y,t]=step(P,t);
figure
plot(t,y,'LineWidth',2)
grid
title('Controle Feedback: Problema Servo','fontsize',14)
xlabel('Tempo','fontsize',14)
ylabel('y^,(t)','fontsize',14)
(a) (b)
Figura 22 – Respostas em malha fechada de um processo de 1ª ordem a perturbações no
set-point (a) e na carga (b).
BEQUETTE, B.W. Process Control: Modeling, Design, and Simulation. Prentice Hall,
2002.
BEQUETTE, B.W. Process Dynamics: Modeling, Analysis and Simulation. Prentice Hall,
1998.
LUYBEN, W. L. Process Modeling, Simulation and Control for Chemical Engineers – 2nd
Ed. McGraw-Hill, 1990.
MELEIRO, L. A. C. Notas de aula da disciplina IT359, disponibilizadas no Quiosque.
OGUNNAIKE, B. A. and RAY; W. H. Process Dynamics, Modeling and Control. Oxford
University Press, 1994.
SEBORG, D. E.; EDGAR, T. F. and MELLICHAMP, D. A. Process Dynamics and
Control. John Wiley & Sons, 1989.
SOUZA JR., M. B. Sem Problemas – Cem Problemas de Controle de Processos. Apostila
UFRRJ, 1994.
SOUZA JR., M. B.; HENRIQUES, A. W. S. 100 Respostas Para “Sem Problemas”.
Apostila UFRRJ, 1995.
SOUZA JR., M. B.; TRICA, D. J. Introdução a Modelagem e Dinâmica para Controle de
Processos. PUBLIT Soluções Editoriais, 2013.
STEPHANOPOULOS, G. Chemical Process Control: An Introduction to Theory and
Practice. Prentice-Hall, 1984.