en3711 relatório 2 final

Upload: alepadua91

Post on 23-Feb-2018

246 views

Category:

Documents


0 download

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;