en3711 relatório 2 final
TRANSCRIPT
-
7/24/2019 EN3711 Relatrio 2 Final
1/33
UNIVERSIDADE FEDERAL DO ABC
Centro de Engenharia, Modelagem e Cincias Sociais AplicadasCECS
EN3711Controle Discreto
RELATRIO 2
Efeito de compensadores
Prof. Dr. Magno Meza
Alexandre Pdua RA: 11018710Guilherme Guerreiro RA: 11017110Luis Gustavo Ribeiro RA: 11122911
Santo Andr
Dezembro de 2015
-
7/24/2019 EN3711 Relatrio 2 Final
2/33
Sumrio
Introduo ..................................................................................................................................... 3
Objetivos ....................................................................................................................................... 3
Metodologia .................................................................................................................................. 3
Resultados ..................................................................................................................................... 6
Concluso .................................................................................................................................... 22
Referncia ................................................................................................................................... 23
Cdigos MATLAB ......................................................................................................................... 24
-
7/24/2019 EN3711 Relatrio 2 Final
3/33
Introduo
O conceito de resposta em frquncia tem um papel poderoso no controlede sistemas digitais. A razo bsica a simplicidade dos mtodos para efetuartestes de resposta em frequncia em sistemas discretizados, sendo aamplitude e a fase as nicas grandezas que precisam ser averiguadas.
Trs controladores sero calculados e discutidos ao longo do trabalho,sendo eles compensador pro avano de fase, controlador PI e PID. Oscontroladores sero condicionados a situaes semlhantes afim de se verificarqual entre os mesmos apresenta melhor resultado.
As tcnicas de projeto utilizadas foram extradas da bibiliografia, para ocontrole PI e PID material utilizado foi do Prof Magno, quanto ao compensadorpor avano de fase a referncia foi livro de autor Ogata.
Objetivos
O objetivo desta experincia desenvolver sistemas de realimentao(Compensador por avano de fase,PD, PI e PID) com o intuito de controlar aposio do eixo de rotao da carga de um servomotor SRV02 da Quanser. Oscompensadores devero ser projetados para satisfazer um conjunto deespecificaes no domnio do tempo:
= 50 1 65
10
Os compensadores devero ser projetados, simulados e implementados nodomnio discreto (plano z).
Metodologia
Para esse experimento foram utilizados os seguintes materiais:
- Computador Digital- Servomecanismo SRV02 da Quanser.
O modelo matemtico fornecido da Planta :
As especificaes da planta so conforme a Tabela 1.
-
7/24/2019 EN3711 Relatrio 2 Final
4/33
Tabela 1
Taxa de amostragem mnima do sistema
Um boa taxa de amostragem um fator crucial para o bom funcionamentodo sistemas digitais controlados. O crtrio de 5% do ganho DC da planta foiutilizado para determinar a frequncia de corte e, consequentemente, afrequncia de amostragem mnima ser 2x (duas vezes) a frequncia de corte.
Planta do sistema discretizada:
A planta do sistema foi discretizada atravs da igualdade = esT
Transformada Bilinear
A tcnica de projeto de controladores por resposta em frequncia, depoisda discretizao do sistema, utiliza a transformada bilinear para traar odiagrama de Bode.
=
1 +
2
1 2
-
7/24/2019 EN3711 Relatrio 2 Final
5/33
3.1 Compensador Por Avano de Fase
Dessa forma do compensador por avano de fase pode ser calculado paraatender os critrios do projeto. O Compensador por avano de fase tem o
seguinte formato:
Para o clculo do compensador por avano de fase foi utilizado o seguinteprocedimento:
1. Calcula-se o Kc do compensador para se atender o Kv do projeto;2. Traa-se o diagrama de bode de malha aberta com ganho ajustado;
3. Determine-se , que o ngulo que necessita ser adicionado paraatender o critrio de margem de fase, mais uma variao entre 5 e 12graus;
4. Calcula-se , que dado pela seguinte relao
;5. Achar a frequncia, onde a magnitude do sistema no compensado
igual 20 log(1/ ).
6. Por fim, determinar , sendo o mesmo dado: =
1
Compensador PI
A forma do compensador PI :
Para o clculo do compensador PI foi utilizado o seguinte procedimento:
1. Como o circuito tem dois polos em zero, o critrio Kv atendido, assimpodemos fazer Kc =1.
2. Determine-se a frequncia, 1, para o sistema no compensado, que igual -180 mais o critrio de fase com uma variao de 8 graus, ouseja, -180+MF+8;
3. Determina-se a fase do sistema no compensado para a frequncia 1;
-
7/24/2019 EN3711 Relatrio 2 Final
6/33
4.Determina-se o ganho do sistema no compensado para a frequncia1
5. Calcula-se Kp, sendo o mesmo:
6. Calcula-se Ki, sendo o mesmo :
Compensador PID
A forma do compensador PID :
1. Como o circuito tem dois polos em zero, o critrio Kv atendido, assimpodemos iniciar Ki=1 .
2. Atravs da tabela, escolher uma frequncia, 1, na qual
3. Verificar se os parmetros do projetos so atendidos.4. Caso contrrio, aumentar w1 e/ou diminuir Ki gradativamete at que
todos os critrios sejam atendidos
Resultados e Discusso
Taxa de amostragem do sistema
|()| =1.53
((0.0253w) + 1)= 5%
= 1208.84 => = 192.393
A frequncia de amostragem de ser duas vezes a frequncia de critica:
= 2
= 1/
Dessa forma a taxa de amostragem mnima deve ser:
-
7/24/2019 EN3711 Relatrio 2 Final
7/33
= 0.0026
Nas simulaes utilizamos T=1ms para obter resultados mais precisos.
Funo do sistema discretizada
O modelo do motor discretizado pode ser descrito como:
2.9727e-05 (z+0.987)
--------------------
(z-1) (z-0.9614)
Sample time: 0.001 seconds
Discrete-time transfer function.
Transformada Bilinear
Temos como resultado da transformao linear da planta do sistema
discretizada:
-9.8797e-08 (w+3.048e05) (w-2000)
---------------------------------
w (w+39.36)
Compensador Por Avano de Fase
-
7/24/2019 EN3711 Relatrio 2 Final
8/33
Figure 1- Diagrama de Bode malha aberta
Kv = lim
()() = 50
Dessa forma, Kc ser :
= 50 0.653594771241829 = 32.679738562091437
O diagrama de bode para o sistema no compensado:
-150
-100
-50
0
50
Magnitude(dB)
100
101
102
103
104
105
106
107
90
135
180
225
270
Phase(deg)
Bode Diagram
Gm = 32.1 dB (at 282 rad/s) , Pm = 46 deg (at 36.6 rad/s)
Frequency (rad/s)
-
7/24/2019 EN3711 Relatrio 2 Final
9/33
Figure 2 - Diagrama de Bode malha aberta com ganho ajustado
Se adicionarmos 20 ao sistema ser suficiente para atender o critrio de fasedessa forma:
=(1 (20 + 12))(1 + (20 + 12))
= 0.307258524522468
Dessa forma podemos calcular o ganho que corresponde :
= 20 10(1/
) = 5.124960592902877
Verificando na tabela:
w w_w |G(w_w)| |G(w_w)|dB fase
53.450 53.463 0.555 -5.115 -145.15053.500 53.513 0.554 -5.129 -145.17753.550 53.563 0.553 -5.142 -145.204
Temos que = 53.5
Esse ser o novo ganho de crossover, corresponde a relao abaixo :
-150
-100
-50
0
50
Magnitude(dB)
100
101
102
103
104
105
106
107
90
135
180
225
270
Phase(deg)
Bode Diagram
Gm = 32.1 dB (at 282 rad/s) , Pm = 46 deg (at 36.6 rad/s)
Frequency (rad/s)
-
7/24/2019 EN3711 Relatrio 2 Final
10/33
1
=
= 0.033720518790120
Portanto, todos os parmetro do compensador por avano de fase foramencontrados. A estrutura do compensador no plano w :
1.102 w + 32.6797-----------------
0.010361 w + 1
Figure 3 - Diagrama de Bode do sistema compensado
Estrutura do compensador por avano de fase no plano z
102.97 (z-0.9708)-----------------(z-0.9079)
Sample time: 0.001 secondsDiscrete-time zero/pole/gain model.
Como resultado da resposta ao degrau do sistema controlado temos:
-100
-80
-60
-40
-20
0
20
Magnitude(dB)
101
102
103
104
105
106
107
90
135
180
225
270
Phase(deg)
Bode Diagram
Gm = 30.5 dB (at 463 rad/s) , Pm = 66.8 deg (at 53.5 rad/s)
Frequency (rad/s)
-
7/24/2019 EN3711 Relatrio 2 Final
11/33
Figure 4 - Reposta ao degrau unitrio - compensador por avano de fase
Podemos observar que todos os critrios foram atendidos e alm disso aresposta do sistema a um sinal degral nos dm tempo de assentamento ts0.098 e mximo sobre sinal de 1.69%.
Implementao no Simulink compensador por avano de fase
Para efeitos de simulao adicionamos o contralador por avano de faseencontrado no simulink.
Figure 5 - Compensador por avano de fase Simulink
Como prximo passo, simulamos o efeito para um entrada onda quadrada e onda triangular.
0 2 4 6 8 10 12 14 16 18 200
0.2
0.4
0.6
0.8
1
1.2
1.4
Mp= 1.6917% ts=0.098
Respostaaodegrauunitrio
Tempo [s]
-
7/24/2019 EN3711 Relatrio 2 Final
12/33
Figure 6 - Resposta a onda quadradada
Figure 7 - V(m) no compensador
-
7/24/2019 EN3711 Relatrio 2 Final
13/33
Figure 8 - Resposta a onda triangular
Figure 9 V(m) do compensador
4.3 Compensador PI
Como o critrio de Kv atendido pelo sistema propriamente devido o mesmoser de segunda ordem. Devemos nos preocupar em atender os demais critriosde projeto. O critrio de fase de 65 com uma variao de 8 graus, assimverificando a tabela para o sistema no compensado temos:
w w_w |G(w_w)| |G(w_w)|dB fase...
9.900 9.908 0.150 -16.481 -106.938
9.950 9.958 0.149 -16.528 -107.02010.000 10.008 0.148 -16.574 -107.103
-
7/24/2019 EN3711 Relatrio 2 Final
14/33
...
Dessa forma encontramos a frequncia 1
A definio de tetha ser- -180+ 65 + 8 a fase do sistema em 1, portantotetha =-0.02. Dessa forma, os valores de KP e KI podem ser calculados:
= 6.704634977164434e
= 0.023456616749257
A resposta do sistema para o circuito compensado atende todos os critrios doprojeto, conforme o diagrama de Bode apresentado abaixo
Figure 10 - Diagrama de Bode - sistema compensado
A resposta ao degrau tambm apresentado bom resultados, sendo Mp abaixo de 10% e o
tempode de assentamento por volta de 0.25s
-80
-60
-40
-20
0
20
40
Magnitude(dB)
100
101
102
103
104
105
90
135
180
225
270
Phase(deg)
Bode Diagram
Gm = 26.4 dB (at 91.8 rad/s) , Pm = 73 deg (at 9.95 rad/s)
Frequency (rad/s)
-
7/24/2019 EN3711 Relatrio 2 Final
15/33
Figure 11 - Resposta ao degrau unitario
Assim a forma final do controlador PI discretizado por ser escrita como:
0.0026526 (z+0.8771)--------------------(z-1) (z-0.6746)
Sample time: 0.01 secondsDiscrete-time zero/pole/gain model.
Simulao Simulink Controlador PI Digital
Representamos o controlador PI como um bloco de espao de estado noSimulink, dessa forma foi possvel verificar seu comportamento a uma ondaquadrada e uma onda triangular
Figure 12 - Bloco controlador PI Simulink
0 2 4 6 8 10 12 14 16 18 200
0.2
0.4
0.6
0.8
1
1.2
1.4
Mp= 0.050664% ts=0.25
Respostaaodegrauunitrio
Tempo [s]
-
7/24/2019 EN3711 Relatrio 2 Final
16/33
Figure 13 - Onda quadradada
Figure 14 - Vm do sistema
-
7/24/2019 EN3711 Relatrio 2 Final
17/33
Figure 15 - Onda tringular
Figure 16 - Vm do sistema
Compensador PID
Primeiramente, com a ajuda da tabela encontramos o valor de w, tal que|Gc(w)| =1/|G(w)|.
w w_w 1/|G(w_w)| |G(w_w)|dB fase |Gc(w_w)|
...
1.700 1.700 1.112 -0.923 -92.521 1.1781.750 1.750 1.145 -1.176 -92.595 1.125
1.800 1.800 1.178 -1.421 -92.669 1.077...
-
7/24/2019 EN3711 Relatrio 2 Final
18/33
Assim verificamos se os critrios do projeto foram atendidos,
Figure 17 - Diagrama de Bode sistema compensado
Vemos, que o MG est abaixo do esperado, dessa forma aumentamos o valorde w gradativamente at esse parmetro seja atendido. Portanto, para o valor
w = 10 rad/s a o diagrama de Bode apresentou um resultado satisfatrio.
-100
-50
0
50
100
Magnitude(dB)
10-2
100
102
104
106
180
225
270
315
Phase(deg)
Bode Diagram
Gm = -251 dB (at 6.64e-07 rad/s) , Pm = 65 deg (at 1.75 rad/s)
Frequency (rad/s)
-
7/24/2019 EN3711 Relatrio 2 Final
19/33
Figure 18 - Diagrama de Bode sistema compensado
Aps as alteraes efetuadas, todos os critrios foram atendidos. Porm,
quando observamos a resposta ao degrau, o tempo de assentamento ainda
no est abaixo de 0.2s.
-50
0
50
100
150
Magnitude(dB)
10-2
100
102
104
106
0
90
180
270
Phase
(deg)
Bode Diagram
Gm = 15 dB (at 47 rad/s) , Pm = 65 deg (at 10 rad/s)
Frequency (rad/s)
-
7/24/2019 EN3711 Relatrio 2 Final
20/33
Figure 19 - Resposta ao degrau unitrio
O valor do tempo de assentamento pode ser melhorado diminuindo
gradativamente o valor de Ki. Encontramos o valor de Ki = 0.1 tal qual o tempo
de assentamento corresponde a 0.2s.
0 2 4 6 8 10 12 14 16 18 20-0.2
0
0.2
0.4
0.6
0.8
1
1.2
Mp= 2.8463% ts=0.366
Respostaaodegrauunitrio
Tempo [s]
-
7/24/2019 EN3711 Relatrio 2 Final
21/33
-
7/24/2019 EN3711 Relatrio 2 Final
22/33
Figure 21 - Controlador PID Simulink
Figure 22 - Reposta a onda quadrada
Figure 23 - Vm do sistema
-
7/24/2019 EN3711 Relatrio 2 Final
23/33
Figure 24 - Respota a onda triangular
Figure 25 - Vm do sistema
Concluso
Somente o controlador PID no apresentou resultados satisfatrios para o projeto
proposto, assim seu mtodo de projeto deve ser revisado. Nesse caso, houve
saturao do compensador para uma onda triangular, assim no foi possvel a atuao
correta de controlador.
Ambos controladores PI e PD apresentaram bons resultados, porm o controlador PD
foi mais preciso quanto o controle da fase do motor, contudo o mesmo exije mais dosistema apresentando um pico de Vm prximo de 8 (oito) volts.
-
7/24/2019 EN3711 Relatrio 2 Final
24/33
Referncia
Apostila do curso Controle Discreto Universidade Federal do ABC ProfDr. Magno
K. Ogata.
Discrete-Time Control Systems.
Prentiece Hall, New Jersey, 1995.
C. L. Phillips and H. T. Nagle.
Digital Control System Analysis and Design.
Prentice Hall, New Jersey, thrid edition, 1995.
Cdigos MATLAB
% Projeto do% COMPENSADOR POR AVANO DE FASE%%%close allclear allclc
format long;
K =1.53tau =0.0254% Sistema contnuonp=K;dp=conv([1 0],[tau 1]);
disp('F.T. contnua da planta')p=tf(np,dp)
% Aplicando a transformada z% T o perodo de amostragemdisp('Perodo de amostragem')%T=0.0187 % Calculado pelo critrio de 5% ganho DC e fs=10*fc%T=0.01T=0.001
disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )disp('F.T. Pulsada da planta')disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )pd=c2d(p,T)[n_pd,d_pd]=tfdata(pd,'v');polo_pd=roots(d_pd)
-
7/24/2019 EN3711 Relatrio 2 Final
25/33
-
7/24/2019 EN3711 Relatrio 2 Final
26/33
%% calculo de alpha%MF 65 > ou igual a 65MF=pi*20/180;alpha=(1-sin(MF+(12*pi/180)))/(sin(MF+(12*pi/180))+1); % fator deatenuao
%% Calculo de T1G_v=-20*log10(1/sqrt(alpha)); %Ponto onde a magninute do sistema nocompensando%achar Wv que corresponde G_v no grfico%T1=1/(25.55*sqrt(alpha));%T1=1/(25.4*sqrt(alpha));T1=1/(53.5*sqrt(alpha));
%% Diagrama de Bode circuito compensado%w1=1.6;ncw=Kc*[T1 1];dcw=[alpha*T1 1];pcw=tf(ncw,dcw);
G=pw*pcw;figure(3)margin(G);grid;
%% Transformar Gc(w) em G(z)[ncd,dcd]=w2z(ncw,dcw,T);
disp('Funo de Transferncia Discreta do controlador em z')zpk(tf(ncd,dcd,T))%%disp('Funo de Transferncia em malha fechada')num_ma=conv(n_pd,ncd)den_ma=conv(d_pd,dcd)
h_ma=tf(num_ma,den_ma,T)
sysd_mf=feedback(h_ma,1)[num_mf,den_mf]=tfdata(sysd_mf, 'v')
n=round(20/T)+1;tempo=(0:1:n-1)*T;
%% Figura mostra a resposta do sistema entrada degrau unitria%
figure(4);x2=dstep(num_mf,den_mf,n);%x2=dstep(G);stairs(tempo,x2)grid;S=stepinfo(sysd_mf,'RiseTimeLimits',[0.02,0.98]);Mp=S.Overshootts=S.SettlingTimetitle(['\fontsize{18} M_p= ',num2str(Mp),'%',...
' \fontsize{18} t_s=', num2str(ts)])line([0 (n-1)*T],[1.02 1.02],'LineStyle','-.');line([0 (n-1)*T],[0.98 0.98],'LineStyle','-.');ylabel('Resposta ao degrau unitrio');
xlabel('Tempo [s]');box on;hold off;
-
7/24/2019 EN3711 Relatrio 2 Final
27/33
% Projeto do% CONTROLADOR PI
%%close allclear allclc
format long;
K =1.53tau =0.0254% Sistema contnuonp=K;dp=conv([1 0],[tau 1]);
disp('F.T. contnua da planta')p=tf(np,dp)
% Aplicando a transformada z% T o perodo de amostragemdisp('Perodo de amostragem')%T=0.0187 % Calculado pelo critrio de 5% ganho DC e fs=10*fcT=0.01%T=0.001
disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )disp('F.T. Pulsada da planta')disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )pd=c2d(p,T)[n_pd,d_pd]=tfdata(pd,'v');polo_pd=roots(d_pd)zpk(pd)
%% Transformao de z para w% 1+T*w/2% z = --------% 1-T*w/2[nw1,dw1] = z2w(n_pd,d_pd,T)pw=tf(nw1,dw1);%%
disp('F.T. Pulsada da planta em w')
printsys(nw1,dw1,'w')zpk(pw)%% Calculo de KcKv= 50; %Kv deve ser 50 s^-1dw2=[dw1(1) dw1(2)];Kc=1
G1_w=Kc*tf(nw1,dw1);
figure(1);
-
7/24/2019 EN3711 Relatrio 2 Final
28/33
margin(nw1,dw1);grid;
figure(2);margin(G1_w);grid;
%% Tabela para circuito no compensadodado=[];sysw=G1_w;
forww=0.1:0.05:20w1=j*ww;m1=abs(evalfr(sysw,w1));m1db=20*log10(m1);f1=angle(evalfr(sysw,w1))*180/pi;w_w=2/T*tan(ww*T/2);iff1>0,
f1=angle(evalfr(sysw,w1))*180/pi-360; end
w_w=2/T*tan(ww*T/2);dado=[dado; ww w_w m1 m1db f1];
end
[l1,c1]=size(dado);
fprintf(' w w_w |G(w_w)| |G(w_w)|dBfase\n')fprintf(' \n')forxx=1:l1,
fprintf(' %8.3f %8.3f %8.3f %8.3f %8.3f \n',dado(xx,:));end%% Ponto que corresponde
%MF1=65+8;auxi=-180+MF1w1=9.95 % da tabelaf1=angle(evalfr(sysw,j*w1))*180/pi; %gain crossover frequenceiff1>0,
f1=angle(evalfr(sysw,j*w1))*180/pi-360; end%%m1w1=abs(evalfr(sysw,j*w1));tetha=-180+MF1-(f1);
Kp=cos(tetha*pi/180)/m1w1;Ki=-sin(tetha*pi/180)*w1/m1w1;wo=Ki/Kp;wp=0
Kc1=Kp*(wo*T+2)/2zo=(2-wo*T)/(2+T*wo)zp=1
ifcos(tetha*pi/180)>m1w1disp('Verifica');
elsedisp('Tente novamente');
end
a1=(1-m1w1*cos(tetha*pi/180))/(w1*m1w1*sin(tetha*pi/180));
-
7/24/2019 EN3711 Relatrio 2 Final
29/33
b1=(cos(tetha*pi/180)-m1w1)/(w1*sin(tetha*pi/180));
a0=1;
wo=a0/a1wp=1/b1
%% Numerador e denominador do controlador no plano zKc2=a0*Kp/2*(T*wo+2)z_0=(2-wo*T)/(2+wo*T)z_p=1
%% Transformar Gc(w) em G(z)ncz=Kc2*Kc*[1 -z_0]dcz=[1 -z_p]disp('Funo de Transferncia Discreta do controlador em z')zpk(tf(ncz,dcz,T))%% Diagrama de Bode circuito compensado[A,B,C,D] = tf2ss(ncz,dcz);[ncw,dcw]=z2w(ncz,dcz,T);pcw=tf(ncw,dcw);G=pw*pcw;figure(3)margin(G);grid;
%%disp('Funo de Transferncia em malha fechada')num_ma=conv(n_pd,ncz)den_ma=conv(d_pd,dcz)
h_ma=tf(num_ma,den_ma,T)
sysd_mf=feedback(h_ma,1)[num_mf,den_mf]=tfdata(sysd_mf, 'v')
n=round(20/T)+1;tempo=(0:1:n-1)*T;
%% Figura mostra a resposta do sistema entrada degrau unitria%figure(4);x2=dstep(num_mf,den_mf,n);stairs(tempo,x2)grid;S=stepinfo(sysd_mf,'RiseTimeLimits',[0.02,0.98]);Mp=S.Overshootts=S.SettlingTimetitle(['\fontsize{18} M_p= ',num2str(Mp),'%',...
' \fontsize{18} t_s=', num2str(ts)])line([0 (n-1)*T],[1.02 1.02],'LineStyle','-.');line([0 (n-1)*T],[0.98 0.98],'LineStyle','-.');ylabel('Resposta ao degrau unitrio');xlabel('Tempo [s]');box on;hold off;
-
7/24/2019 EN3711 Relatrio 2 Final
30/33
% Projeto do% CONTROLADOR PID
%%close allclear allclc
format long;
%K =1.528565072223069;K =1.53tau =0.0254% Sistema contnuonp=K;dp=conv([1 0],[tau 1]);
disp('F.T. contnua da planta')p=tf(np,dp)
% Aplicando a transformada z% T o perodo de amostragemdisp('Perodo de amostragem')%T=0.0187 % Calculado pelo critrio de 5% ganho DC e fs=10*fc%T=0.01T=0.001
disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )disp('F.T. Pulsada da planta')
disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )pd=c2d(p,T)[n_pd,d_pd]=tfdata(pd,'v');polo_pd=roots(d_pd)zpk(pd)
%% Transformao de z para w % Projeto do% CONTROLADOR PID
%%close allclear allclc
format long;
%K =1.528565072223069;K =1.53tau =0.0254% Sistema contnuonp=K;dp=conv([1 0],[tau 1]);
disp('F.T. contnua da planta')p=tf(np,dp)
% Aplicando a transformada z% T o perodo de amostragem
-
7/24/2019 EN3711 Relatrio 2 Final
31/33
disp('Perodo de amostragem')%T=0.0187 % Calculado pelo critrio de 5% ganho DC e fs=10*fc%T=0.01T=0.001
disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )
disp('F.T. Pulsada da planta')disp('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' )pd=c2d(p,T)[n_pd,d_pd]=tfdata(pd,'v');polo_pd=roots(d_pd)zpk(pd)
%% Transformao de z para w% 1+T*w/2% z = --------% 1-T*w/2%[nw1,dw1] = z2w(n_pd,d_pd,T)
pw=tf(nw1,dw1);
dw2=[dw1(1) dw1(2)];
disp('F.T. Pulsada da planta em w')
printsys(nw1,dw1,'w')zpk(pw)Kv=50;%Kc=Kv/abs(evalfr(tf(nw1,dw2),0))Kc=1;
G1_w=Kc*tf(nw1,dw1);
figure(1);margin(nw1,dw1);grid;
%%dado=[];sysw=G1_w;
forww=0.1:0.05:20w1=j*ww;m1=abs(evalfr(sysw,w1));m1db=20*log10(m1);f1=angle(evalfr(sysw,w1))*180/pi;w_w=2/T*tan(ww*T/2);iff1>0,
f1=angle(evalfr(sysw,w1))*180/pi-360; end
m1w1=abs(evalfr(sysw,j*w1))tetha=-180+65-(f1)Kp=cos(tetha*pi/180)/m1w1Ki = 1Kd=sin(tetha*pi/180)/(m1w1*w1)+Ki/(w1)^2 ncw=[Kd Kp Ki]dcw=[0 1 0]
-
7/24/2019 EN3711 Relatrio 2 Final
32/33
n_maw=conv(nw1,ncw);d_maw=conv(dw1,dcw);Gc=tf(n_maw,d_maw);mc=abs(evalfr(Gc,w1));
w_w=2/T*tan(ww*T/2);
dado=[dado; ww w_w 1/m1 m1db f1 mc];end
[l1,c1]=size(dado);
fprintf(' w w_w 1/|G(w_w)| |G(w_w)|dBfase |Gc(w_w)| \n')fprintf(' \n')forxx=1:l1,
fprintf(' %8.3f %8.3f %8.3f %8.3f %8.3f %8.3f\n',dado(xx,:));end
%%w1= 10;f1=angle(evalfr(sysw,j*w1))*180/pi;iff1>0,
f1=angle(evalfr(sysw,j*w1))*180/pi-360; endm1w1=abs(evalfr(sysw,j*w1))tetha=-180+65-(f1)ifcos(tetha*pi/180)>m1w1
disp('Verifica');else
disp('Tente novamente');end%%Kp=cos(tetha*pi/180)/m1w1Ki = 0.1;Kd=sin(tetha*pi/180)/(m1w1*w1)+Ki/(w1)^2 ncw=[Kd Kp Ki]dcw=[0 1 0]n_maw=conv(nw1,ncw);d_maw=conv(dw1,dcw);figure(3)margin(n_maw,d_maw)grid;%%Gw_c=tf(ncw,dcw);Gz_c = c2d(Gw_c,T,'tustin');%dC=tf(ncz,dcz,T);[ncz,dcz]=tfdata(Gz_c,'v');[A,B,C,D] = tf2ss(ncz,dcz);
disp('Funo de Transferncia Discreta do controlador')zpk(tf(ncz,dcz,T))
num_ma=conv(n_pd,ncz)den_ma=conv(d_pd,dcz)
h_ma=tf(num_ma,den_ma,T)
sysd_mf=feedback(h_ma,1)[num_mf,den_mf]=tfdata(sysd_mf, 'v')
-
7/24/2019 EN3711 Relatrio 2 Final
33/33
n=round(20/T)+1;tempo=(0:1:n-1)*T;
% Figura mostra a resposta do sistema entrada degrau unitria
figure(4);x2=dstep(num_mf,den_mf,n);stairs(tempo,x2)grid;S=stepinfo(sysd_mf,'RiseTimeLimits',[0.02,0.98]);Mp=S.Overshootts=S.SettlingTimetitle(['\fontsize{18} M_p= ',num2str(Mp),'%',...
' \fontsize{18} t_s=', num2str(ts)])line([0 (n-1)*T],[1.02 1.02],'LineStyle','-.');line([0 (n-1)*T],[0.98 0.98],'LineStyle','-.');ylabel('Resposta ao degrau unitrio');xlabel('Tempo [s]');box on;hold off;