Controlo de Sistemas
LEMec, 1º Período 2023/24
Problemas 4ª semana
Conteúdo: Compensadores de avanço e de atraso. Sistemas com atraso.
Problema 1
a) Projete um controlador para o sistema com a seguinte função de transferência:
𝑠+3
𝐺𝑝 (𝑠) =
𝑠 3 + 0.8𝑠 2 + 1.2𝑠 + 0.416
que consiga garantir simultaneamente as seguintes especificações de desempenho:
• Margem de ganho infinita.
• Margem de fase de 20º (com tolerância máxima de 1%).
• Erro estacionário de posição inalterado relativamente ao sistema não compensado.
b) Projete um compensador em avanço para o mesmo sistema 𝐺𝑝 (𝑠) que garanta que duas das
raízes do anel fechado estejam localizadas em −3.85 ± 10𝑗 e confirme o resultado. (Sugestão:
use a função “angle” do Matlab).
c) Através da ferramenta de projeto “sisotool” do Matlab, sintonize os controladores projetados
anteriormente de forma a melhorar o desempenho da resposta do anel de controlo.
d) Uma Engenheira Mecânica afirma que o desempenho da resposta transitória do sistema de
controlo com compensador calculado na alínea b) é superior ao obtido com o compensador
projetado na alínea a). Concorda com a opinião da sua futura colega? Justifique a resposta
comparando os regimes transitório e estacionário de ambos os sistemas para uma entrada em
degrau unitário.
Problema 2
a) Projete um controlador para o sistema com a seguinte função de transferência:
𝑠 2 + 11𝑠 + 50
𝐺𝑝 (𝑠) =
𝑠 4 + 9𝑠 3 + 36.25𝑠 2 + 81.25𝑠
que consiga garantir simultaneamente as seguintes especificações de desempenho:
• Erro estacionário de velocidade de 12%.
• Margem de fase igual à margem de fase do sistema não compensado (tolerância de ±4%).
b) Compare os resíduos dos pólos do anel fechado com o compensador calculado na alínea anterior,
e sem este compensador, e conclua quanto à influência do(s) pólo(s) dominante(s) na resposta no
tempo em ambas as situações (NOTA: utilize a função “residue” do Matlab e apresente os
gráficos necessários para justificar a sua resposta).
c) Através da ferramenta de projeto “sisotool” do Matlab, sintonize os controladores projetados
anteriormente de forma a melhorar o desempenho da resposta do anel de controlo.
d) Um Engenheiro Mecânico afirma que, caso a segunda especificação de desempenho não fosse
necessária (margem de fase), seria possível com um simples controlador proporcional garantir a
2023/2024 Controlo de Sistemas – Problemas 1
primeira especificação de desempenho (erro estacionário de velocidade), para o sistema.
Concorda com a opinião do seu futuro colega? Justifique a resposta.
Problema 3
Um veículo para turismo aéreo é composto por um balão de
hélio com uma forma aproximadamente esférica, uma
barquinha para transporte de passageiros e um sistema de
propulsão, constituído por DOIS pares motor/hélice, como
representado na figura ao lado.
Este problema focará no desenho de controladores de altitude
para este veículo (ao longo do eixo dos XX), a implementar em
computador. Recorrendo à Transformada de Laplace, a saída
x(t) pode ser descrita como função da entrada de comando
u(t) e da força de perturbação vertical f(t):
𝑈(𝑠) + 1/30𝐹(𝑠)
𝑋(𝑠) =
𝑠(10𝑠 + 1)
a) Desenhe o diagrama de Bode do sistema não perturbado, com função de transferência
𝑋(𝑠)
𝐺𝑝 (𝑠) =
𝑈(𝑠)
b) Determine as margens de fase e de ganho analíticas deste sistema.
As especificações pretendidas para o sistema em anel fechado são as seguintes:
• Estabilidade: necessária
• Erro estacionário de posição = 0
• Margem de Ganho > 40 dB
• Margem de Fase > 45 graus
c) Recorrendo aos métodos estudados no curso, proponha uma estrutura para o controlador a ser
usado em anel fechado, justificando.
d) Dimensione os parâmetros do controlador selecionado, que cumpra todas as especificações
indicadas acima.
e) Calcule a largura de banda do sistema obtido em anel fechado. Caso não tenha resolvido a
questão anterior, considere o controlador (com desempenho muito pobre e que viola mesmo
algumas das especificações pretendidas)
2𝑠 + 100
𝐺𝑐 (𝑠) = 𝑠
𝑠 + 10
2023/2024 Controlo de Sistemas – Problemas 2
Problema 4
Considere o seguinte sistema de controlo:
onde:
• Controladores:
1
𝐺𝑐 1 (𝑠) = 𝑠 , 𝐺𝑐 2 (𝑠) = 50
• Processo físico:
3 𝑠+2
𝐺𝑝 (𝑠) = 𝐺𝑝 1 (𝑠). 𝐺𝑝 2 (𝑠) = .
𝑠2 + 4𝑠 + 2 𝑠(𝑠 + 10)
• Sensores:
𝐻1 (𝑠) = 1, 𝐻2 (𝑠) = 1
a) Identifique as estruturas e as estratégias de controlo que estão implementadas no sistema de
controlo, justificando a resposta através da indicação dos respetivos elementos característicos.
b) Aplique o critério de Routh-Hurwitz ao anel interior e verifique se este é estável ou instável.
c) Implemente o sistema de controlo da figura no ambiente “Simulink”.
d) Mostre num mesmo gráfico a entrada do anel de controlo (referência) e a respetiva saída que
resultam da simulação do sistema de controlo em ambiente Simulink, durante 300 segundos, para
as duas situações seguintes:
i) Referência, r(t), do anel de controlo corresponde a uma onda quadrada (square) de amplitude
unitária e frequência 0.008 Hz. (Sugestão: use o bloco “Signal Generator”).
ii) Referência, r(t), do anel de controlo corresponde a uma rampa de declive 2. (Sugestão: use o
bloco “Ramp”).
e) Introduza agora um atraso puro no tempo de θ= 0.1 segundos na saída do processo físico 𝐺𝑝 1 (𝑠),
e considere a referência, r(t), do anel de controlo a mesma rampa considerada na alínea anterior.
Mostre a influência que o termo de atraso exerce na saída do sistema de controlo. (Nota: o termo
de atraso pode ser introduzido em ambiente Simulink através do bloco “Transport Delay”).
f) Implemente o diagrama de blocos do Preditor de Smith em ambiente “Simulink”, e compare a
resposta do sistema com a obtida na alínea anterior. Justifique as diferenças.
2023/2024 Controlo de Sistemas – Problemas 3
Problema 5
2023/2024 Controlo de Sistemas – Problemas 4
Problema 6
2023/2024 Controlo de Sistemas – Problemas 5
Resoluções
Problema 1
1) Projete um controlador para o sistema com a seguinte função de transferência:
s+3
Gp (s) =
s + 0.8s + 1.2s + 0.416 3 2
que consiga garantir simultaneamente as seguintes especificações de desempenho:
• Margem de ganho infinita.
• Margem de fase de 20º (com tolerância máxima de 1%).
• Erro estacionário de posição inalterado relativamente ao sistema não compensado.
%% Projecto de compensador de avanço baseado na resposta em frequência
Gp = tf([1 3],[1 0.8 1.2 0.416]); %sistema estável
margin(Gp) %AA considera Gc=1, sistema AF instável com MG,MF<0
Bode Diagram
Gm = -12.1 dB (at 1.2 rad/sec) , Pm = -27.1 deg (at 1.7 rad/sec)
20
0
Magnitude (dB)
-20
-40
-60
-80
0
-45
Phase (deg)
-90
-135
-180
-225
-2 -1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
Warning: The closed-loop system is unstable.
figure,rlocus(Gp) %sistema AF instabiliza para Gc>0.2
2023/2024 Controlo de Sistemas – Problemas 6
%[Link] margem de fase do sistema não compensado Gp, MFp
[MGp,MFp,wcfp,wcgp] = margin(Gp)
MGp = 0.2473
MFp = -27.0523
wcfp = 1.2030
wcgp = 1.7008
%[Link] ângulo de avanço de fase necessário adicionar ao sistema não
compensado por forma a garantir a margem de fase pretendida, MFd=20º
MFd = 20;
ff = MFd-MFp
ff = 47.0523
%[Link] o valor do parâmetro aa do compensador de avanço
bb = 5; %valor para tolerância máxima
aa = (1/tand(-(ff+bb-90)/2))^2 %tand = tan em graus
aa = 8.4595
%[Link] o valor do parâmetro a do compensador de avanço
gdB = -20*log10(sqrt(aa))
gdB = -9.2735
[mag3D,phase3D,w] = bode(Gp);
mag = reshape(mag3D,size(w)); %mag 3D e phase 3D são vectores 3D
magdB = 20*log10(mag);
wcfl = interp1(magdB,w,gdB) % procura a wcf’ correspondente a gdB
wcfl = 2.3619
a = wcfl*sqrt(aa)
a = 6.8697
2023/2024 Controlo de Sistemas – Problemas 7
%[Link] especificações de desempenho, se não cumpridas recomeçar a
%partir do ponto 3. alterando bb
Gc = tf([aa a],[1 a])
Gc =
8.46 s + 6.87
-------------
s + 6.87
figure, margin(Gc*Gp) % confirmar que especificações de MG e MF são cumpridas
Bode Diagram
Gm = Inf dB (at Inf rad/sec) , Pm = 21.6 deg (at 2.36 rad/sec)
40
20
Magnitude (dB)
-20
-40
-60
-80
0
-45
Phase (deg)
-90
-135
-180
-2 -1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
Gaf1 = feedback(Gc*Gp,1);
step(Gaf1) % confirmar erro estacionário nulo
b) Projete um compensador em avanço para o mesmo sistema 𝐺𝑝 (𝑠) que garanta que duas das
raízes do anel fechado estejam localizadas em −3.85 ± 10𝑗 e confirme o resultado. (Sugestão: use
a função “angle” do Matlab).
2023/2024 Controlo de Sistemas – Problemas 8
%% Projecto de compensador de avanço baseado no LGR
Gp = tf([1 3],[1 0.8 1.2 0.416]);
pole(Gp) %pólos AA
ans =
-0.2000 + 1.0000i
-0.2000 - 1.0000i
-0.4000
%[Link]ção desejada dos pólos do AF
sd = [-3.85+10i, -3.85-10i];
%[Link] do sistema de modo a verificar se Gc(s)=K é suficiente
rlocus(Gp) %ganho insuficiente
Root Locus
8
2
Imaginary Axis
-2
-4
-6
-8
-3 -2.5 -2 -1.5 -1 -0.5 0 0.5 1
Real Axis
%[Link] parâmetros a e aa pela condição do argumento:
%arg(Gc(sd)*Gp(sd))=+-180
sd1 = sd(1);
Gp1 = (sd1+3)/(sd1^3+0.8*sd1^2+1.2*sd1+0.416);
A1 = 180-angle(Gp1)*180/pi %função angle em rad!
A1 =
54.6080
2023/2024 Controlo de Sistemas – Problemas 9
arg[Gc (sd )Gp (sd )] = 180
arg[Gc (sd )] + arg[Gp (sd )] = 180
arg[ sd + a] − arg[ sd + a] = 180 − arg[Gp (sd )]
A1
arg[ sd + a] − arg[ sd + a] = 54.61
arg[ (−3.85 + 10 j) + a] − arg[−3.85 + 10 j + a] = 54.61
10 10
arctan = 99.61 −3.85 + a = −5.9 = 6.43
−3.85 + a
10 10 a = 13.85
arctan = 45 (arbitrado) =1
−3.85 + a
−3.85 + a
a = 13.85; %obtidos analiticamente
aa = 6.43;
Gc = tf([aa a],[1 a]);
%4. determinar ganho K AA pela condição do módulo:
%|K*Gc(sd)*Gp(sd)|=1
[R,K] = rlocus(Gc*Gp,1) %K=1 não coloca os pólos onde desejado
R =
-13.5216
-0.0437 + 1.8328i
-0.0437 - 1.8328i
-1.0410
K =
1
rlocus(Gc*Gp)
rlocfind(Gc*Gp) %ganho aproximado que coloca os pólos onde desejado
Select a point in the graphics window
selected_point =
-3.8369 +10.0256i
ans =
25.7986
2023/2024 Controlo de Sistemas – Problemas 10
Root Locus
40
30
20
10
Imaginary Axis
-10
-20
-30
-40
-14 -12 -10 -8 -6 -4 -2 0
Real Axis
Gc1 = (aa*sd1+a)/(sd1+a);
M1 = abs(Gc1*Gp1); %módulo de complexos
condiçao do modulo: |KGc (sd )Gp (sd )|= 1
1
K=
|Gc (sd )Gp (sd )|
K = 1/M1 %obtido analiticamente
K =
25.7267
[R,K] = rlocus(Gc*Gp,K) %confirmação da colocação dos pólos desejada
R =
-3.8525 + 9.9995i
-3.8525 - 9.9995i
-5.1154
-1.8295
K =
25.7267
Gaf2 = feedback(K*Gc*Gp,1);
figure,step(Gaf2)
2023/2024 Controlo de Sistemas – Problemas 11
Step Response
1.6
1.4
1.2
1
Amplitude
0.8
0.6
0.4
0.2
0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
Time (sec)
c) Através da ferramenta de projeto “sisotool” do Matlab, sintonize os controladores projetados
anteriormente de forma a melhorar o desempenho da resposta do anel de controlo.
sisotool(Gp)
2023/2024 Controlo de Sistemas – Problemas 12
d) Uma Engenheira Mecânica afirma que o desempenho da resposta transitória do sistema de
controlo com compensador calculado na alínea b), é superior ao obtido com o compensador
projetado na alínea a). Concorda com a opinião da sua futura colega? Justifique a resposta
comparando os regimes transitório e estacionário de ambos os sistemas para uma entrada em
degrau unitário.
figure,step(Gaf1,Gaf2)
legend('Gaf1','Gaf2',0)
Step Response
1.6
1.4
1.2
1
Amplitude
0.8
0.6
0.4
0.2
Gaf1
Gaf2
0
0 5 10 15
Time (sec)
Comparação das características da resposta ao degrau para os sistemas em anel fechado com
controladores em avanço projetados:
Em frequência Por LGR
𝑀𝑝 55.7% 53.6%
𝑇𝑠𝑒𝑡𝑡𝑙𝑖𝑛𝑔 9.72s 1.28s
𝑇𝑟𝑖𝑠𝑒 0.464s 0.104s
Valor final 0.878 0.995
Sim, a Engenheira tem razão.
2023/2024 Controlo de Sistemas – Problemas 13
Problema 2
a) Projete um controlador para o sistema com a seguinte função de transferência:
s2 + 11 s + 50
Gp (s) =
s4 + 9 s3 + 36.25 s2 + 81.25 s
que consiga garantir simultaneamente as seguintes especificações de desempenho:
• Erro estacionário de velocidade de 12%.
• Margem de fase igual à margem de fase do sistema não compensado (tolerância de ±4%).
%% Projecto de compensador de atraso em frequência
Gp = tf([1 11 50],[1 9 36.25 81.25 0]); %TIPO 1
%especificações de desempenho desejadas
figure,margin(Gp),hold on
Bode Diagram
Gm = 21 dB (at 4.78 rad/sec) , Pm = 81.9 deg (at 0.619 rad/sec)
20
0
Magnitude (dB)
-20
-40
-60
-80
-90
Phase (deg)
-135
-180
-225
-1 0 1 2
10 10 10 10
Frequency (rad/sec)
[MGnc,MFnc,wcfnc,wcgnc] = margin(Gp) %sistema não compensado (Gc(s)=1)
MGnc =
11.2766
MFnc =
81.8872
wcfnc =
4.7761
wcgnc =
0.6190
2023/2024 Controlo de Sistemas – Problemas 14
MFcmax = MFnc*1.04 %+4% tolerância
MFcmin = MFnc*0.96 %-4% tolerância
MFcmax =
85.1627
MFcmin =
78.6117
essv = 0.12; %erro estacionário de velocidade desejado
Kvd = 1/essv %coeficiente do erro estacionário de velocidade desejado
Kvd =
8.3333
% Projecto de compensador de atraso baseado na resposta em frequência:
%1. coeficiente de erro estático de velocidade do sistema não compensado
s = tf('s');
Kvp = dcgain(s*Gp)
Kvp =
0.6154
%2. aumento de ganho K necessário para garantir precisão desejada do
%sistema compensado
K = Kvd/Kvp
K =
13.5417
%3. valor do parâmetro aa do compensador de atraso
aa = K
aa =
13.5417
%4. valor do parâmetro a do compensador de atraso:
a = wcgnc/20
a =
0.0310
2023/2024 Controlo de Sistemas – Problemas 15
%5. verificar especificações de desempenho com o sistema compensado
Gc = tf([1 a],[1 a/aa]) %compensador de atraso
Transfer function:
s + 0.03095
------------
s + 0.002286
Kvpc = dcgain(s*Gc*Gp) %ess cumpre especificação de 12%
Kvpc =
8.3333
margin(Gc*Gp), legend('nc','c',0)
Bode Diagram
Gm = 20.9 dB (at 4.75 rad/sec) , Pm = 79.2 deg (at 0.62 rad/sec)
150
100 nc
Magnitude (dB)
c
50
-50
-100
-90
Phase (deg)
-135
-180
-225
-4 -2 0 2
10 10 10 10
Frequency (rad/sec)
[MGc,MFc,wcfc,wcgc] = margin(Gc*Gp) %sistema compensado
MGc =
11.1312
MFc =
79.2293
wcfc =
4.7529
wcgc =
2023/2024 Controlo de Sistemas – Problemas 16
0.6198
(MFcmin < MFc) && (MFc < MFcmax) %MFc cumpre tolerância 4%
ans =
1
b) Compare os resíduos dos pólos do anel fechado com o compensador calculado na alínea anterior, e sem
este compensador, e conclua quanto à influencia do(s) pólo(s) dominante(s) na resposta no tempo em
ambas as situações (NOTA: utilize a função “residue” do Matlab e apresente os gráficos necessários para
justificar a sua resposta).
%pólos e resíduos do sistema em anel fechado não compensado, Gc(s)=1
Gafnc = feedback(Gp,1); %anel fechado com Gc(s)=1 (não compensado)
[Rnc,Pnc,Knc] = residue([Link]{1},[Link]{1})
Rnc =
-0.2394
-0.2960 + 0.0863i
-0.2960 - 0.0863i
0.8315
Pnc =
-4.7888
-1.7476 + 3.3951i
-1.7476 - 3.3951i
-0.7161
Knc =
[]
%pólos e resíduos do sistema em anel fechado compensado, Gc(s)=comp. atraso
Gafc = feedback(Gc*Gp,1); %anel fechado com compensador de atraso
[Rc,Pc,Kc] = residue([Link]{1},[Link]{1})
Rc =
-0.2375
-0.2946 + 0.0890i
-0.2946 - 0.0890i
0.8283
-0.0018
Pc =
-4.7902
-1.7492 + 3.3934i
2023/2024 Controlo de Sistemas – Problemas 17
-1.7492 - 3.3934i
-0.6812
-0.0325
Kc =
[]
Condensando em tabela, e relembrando que os resíduos correspondem ao peso dos pólos na resposta do
sistema:
Sistema Pólos Resíduos
Não -4.7888 -0.2394
compensado -1.7476 + 3.3951i -0.2960 + 0.0863i
-1.7476 - 3.3951i -0.2960 - 0.0863i
-0.7161 0.8315
Compensado -4.7902 -0.2375
-1.7492 + 3.3934i -0.2946 + 0.0890i ≈ pólos do
-1.7492 - 3.3934i -0.2946 - 0.0890i sistema não
compensado
-0.6812 0.8283
-0.0325 -0.0018 Pólo do
compensador com
resíduo ≈ 0
Não influencia
muito a resposta
transitória do
sistema
%resposta ao degrau
figure,step(Gafnc,'r--',Gafc,'b-')
legend('nc','c',0)
2023/2024 Controlo de Sistemas – Problemas 18
Step Response
1.4
1.2
Amplitude 0.8
0.6
0.4
nc
c
0.2
0
0 20 40 60 80
Time (sec)
%resposta à rampa
t = (0:0.1:80)'; u = t;
figure,lsim(Gafnc,'r--',Gafc,'b-',u,t)
legend('nc','c',0)
Linear Simulation Results
80
70
60
50
Amplitude
40
30 nc
c
20
10
0
0 20 40 60 80
Time (sec)
c) Através da ferramenta de projeto “sisotool” do Matlab, sintonize os controladores projetados
anteriormente de forma a melhorar o desempenho da resposta do anel de controlo.
2023/2024 Controlo de Sistemas – Problemas 19
sisotool(Gp)
d) Um Engenheiro Mecânico afirma que, caso a segunda especificação de desempenho não fosse necessária
(margem de fase), seria possível com um simples controlador proporcional garantir a primeira especificação
de desempenho (erro estacionário de velocidade), para o sistema Gp (s) . Concorda com a opinião do seu
futuro colega? Justifique a resposta.
%verificar estabilidade do sistema com controlo proporcional
figure,rlocus(Gp)
rlocfind(Gp)
Select a point in the graphics window
selected_point =
-0.0039 + 4.8082i
ans =
11.4695
2023/2024 Controlo de Sistemas – Problemas 20
Root Locus
20
15
10
5
Imaginary Axis
-5
-10
-15
-20
-6 -5 -4 -3 -2 -1 0 1 2
Real Axis
Relembrando a Tabela para os erros estacionários:
ess degrau rampa parábola
1
G(s) TIPO 0
1 + kp
1
G(s) TIPO 1 0
kv
1
G(s) TIPO 2 0 0
ka
com G(s) = Gc (s)* G(s) e k p = lim G(s) , kv = lim sG(s) e ka = lim s2G(s) , verificamos que se o sistema fosse estável
s→0 s→0 s →0
para Gc (s) = = 13.54 , era possível satisfazer as especificações de erro estacionário de velocidade apenas com
um controlador proporcional.
Gafc2 = feedback(aa*Gp,1); %anel fechado com controlador proporcional
%resposta à rampa
figure,lsim(Gafnc,'r--',Gafc,'b-',Gafc2,'g-.',u,t)
legend('nc','c','c2',0)
2023/2024 Controlo de Sistemas – Problemas 21
Linear Simulation Results
2500
2000
1500
1000
500
Amplitude
-500
-1000
nc
c
-1500
c2
-2000
-2500
0 10 20 30 40 50 60 70 80
Time (sec)
2023/2024 Controlo de Sistemas – Problemas 22
Problema 3
2023/2024 Controlo de Sistemas – Problemas 23
2023/2024 Controlo de Sistemas – Problemas 24
2023/2024 Controlo de Sistemas – Problemas 25
Problema 4
c)
% Implemente o sistema de controlo no Simulink.
1 50 s+2 3
r(t),y(t)
s 1 s2 +10s s2 +4s+2
Ramp Gc1(s) Gc2(s) Gp2(s) Gp1(s)
simout
1
To Workspace
1
H2(s)
tout
1 Clock To Workspace1
Signal Terminator 1
Generator H1(s)
d)
% Compare a saída e a referência do sistema de controlo para as seguintes
% entradas: onda quadrada de amplitude unitária e frequência 0.008Hz; rampa
% de declive 2
sim('TPC2_3.mdl'); %correr simulação para cada uma das entradas
figure,plot(tout,simout(:,1),tout,simout(:,2))
xlabel('Tempo [s]'),ylabel('Amplitude')
legend('r(t)','y(t)',0),grid
2.5
r(t)
2 y(t)
1.5
0.5
Amplitude
-0.5
-1
-1.5
-2
-2.5
0 50 100 150 200 250 300
Tempo [s]
2023/2024 Controlo de Sistemas – Problemas 26
60
50
40
Amplitude
30
20
10
r(t)
y(t)
0
0 5 10 15 20 25 30
Tempo [s]
e)
% Verificar influência no sistema de controlo de atraso em Gp1(s)
% variar atraso (tt): 0, 0.1, 0.5 and 1s
1 50 s+2 3
r(t),y(t)
s 1 s2 +10s s2 +4s+2
Ramp Gc1(s) Gc2(s) Gp2(s) Gp1(s) Transport
Delay
simout
1
To Workspace
1
H2(s)
tout
1 Clock To Workspace1
1
H1(s)
tt = 0; sim('TPC2_3.mdl'); tout0 = tout; simout0 = simout;
tt = 0.1; sim('TPC2_3.mdl'); simout01 = simout;
tt = 0.5; sim('TPC2_3.mdl'); simout05 = simout;
tt = 1.0; sim('TPC2_3.mdl'); simout1 = simout;
figure,plot(tout0(1:301),simout0(1:301,1),tout0(1:301),simout0(1:301,2),tout(1:301),simou
t01(1:301,2),tout(1:301),simout05(1:301,2),tout(1:301),simout1(1:301,2))
legend('r(t)','y(t) - sem atraso','y(t) - atraso 0.1s','y(t) - atraso 0.5s','y(t) -
atraso 1s',0)
2023/2024 Controlo de Sistemas – Problemas 27
grid
120
r(t)
100 y(t) - sem atraso
y(t) - atraso 0.1s
y(t) - atraso 0.5s
80
y(t) - atraso 1s
60
40
20
-20
-40
0 5 10 15 20 25 30
f) Preditor de Smith
% comparação da resposta do sistema controlado sem e com preditor de Smith,
% com modelação ideal, sem atraso
1 50 s+2 3
r(t),y(t)
s 1 s2 +10s s2 +4s+2
Ramp Gc1(s) Gc2(s) Gp2(s) Gp1(s) Transport
Delay
simoutp
1
To Workspace
1
H2(s)
toutp
Clock To Workspace1
erro
modelação
1 3
1 s2 +4s+2
H1^(s) Transport Gp^(s)
Delay^
1
1
H1(s)
tt = 0; sim('TPC2_3.mdl'); tout0 = tout; simout0 = simout;
tte = tt; sim('TPC2_6.mdl'); toutp0 = toutp; simoutp0 = simoutp;
figure,plot(tout0(1:301),simout0(1:301,1),tout0(1:301),simout0(1:301,2),toutp(1:301),
simoutp0(1:301,2))
2023/2024 Controlo de Sistemas – Problemas 28
legend('r(t)','y(t) - básico','y(t) - c/ preditor Smith',0)
grid, axis([0 30 -40 120])
120
100
80
60
40
20
r(t)
y(t) - básico
0 y(t) - c/ preditor Smith
-20
-40
0 5 10 15 20 25 30
% comparação da resposta do sistema controlado sem e com preditor de Smith,
% com modelação ideal, com atraso 1.0s
tt = 1.0; sim('TPC2_3.mdl'); tout1 = tout; simout1 = simout;
tte = tt; sim('TPC2_6.mdl'); toutp1 = toutp; simoutp1 = simoutp;
figure,plot(tout1(1:301),simout1(1:301,1),tout1(1:301),simout1(1:301,2),toutp1(1:301)
,simoutp1(1:301,2))
legend('r(t)','y(t) - básico','y(t) - c/ preditor Smith',0)
grid
2023/2024 Controlo de Sistemas – Problemas 29
120
r(t)
y(t) - básico
100
y(t) - c/ preditor Smith
80
60
40
20
-20
-40
0 5 10 15 20 25 30
% comparação da resposta do sistema controlado sem e com preditor de Smith,
% com erro de modelação, com atraso 1.0s
tt = 1.0; sim('TPC2_3.mdl'); tout1 = tout; simout1 = simout;
tte = 0.2; sim('TPC2_6.mdl'); toutp1 = toutp; simoutp1 = simoutp;
figure,plot(tout1(1:301),simout1(1:301,1),tout1(1:301),simout1(1:301,2),toutp1(1:301)
,simoutp1(1:301,2))
legend('r(t)','y(t) - básico','y(t) - c/ preditor Smith',0)
grid
120
r(t)
y(t) - básico
100
y(t) - c/ preditor Smith
80
60
40
20
-20
-40
0 5 10 15 20 25 30
2023/2024 Controlo de Sistemas – Problemas 30
Problema 5
2023/2024 Controlo de Sistemas – Problemas 31
Problema 6
2023/2024 Controlo de Sistemas – Problemas 32