Você está na página 1de 6

Sintonia de controlador PID

Projete um controlador PID (tipo paralelo) ,usando a sintonia ZN


e a sintonia Lambda para os quatro processos apresentados
abaixo.Compare os resultados obtidos pela sintonia ZN e a
sintonia Lambda.

1 ()



Assumindo que se tem o seguinte sistema de 1 ordem ,com
atraso de 5 segundos e com entrada um degrau unitrio a
resposta ao degrau unitrio da planta ser:


>> num = 1 ; den = [20 1];% funo de transferncia da planta
>> [n,d] = pade(5,1);%aproximao de pad de primeira ordem
para um atraso de transporte de 5 segundos
>> [nump,denp] = series(num,den,n,d);%produto da FT da planta
e a aproximao de pad
>> step(nump,denp),grid %rsposta ao degrau unitrio da planta
com atraso de transporte


Figura 1

Da curva obtemos:
L = 3,85 segundos
T = 30,1 3,51 = 26,25 segundos

De acordo com a regra de Ziegler Nichols baseada na resposta ao degrau :





A funo de transferncia do controlador tipo paralelo :

()


Onde :






()



Aplicando o controlador ao processo , obtemos a seguinte resposta:

>> num = 1 ; den = [20 1];% funo de transferncia da planta
>> [n,d] = pade(5,1);%aproximao de pad de primeira ordem para um atraso de transporte de 5 segundos
>> [nump,denp] = series(num,den,n,d);%produto da FT da planta e a aproximao de pad
>> step(nump,denp),grid %rsposta ao degrau unitrio da planta com atraso de transporte
>> nc = [16.97 8.818 1.145];dc = [0 1 0] ; %FT do controlador
>> [nu,de] = series(nump,denp,nc,dc);%produto da FT do processo e FT do controlador
>> [num1,den1] = cloop(nu,de);%obteno da FT em malha fechada com realimentao unitria
>> step(num1,den1)









4 ()

[()()]


Abaixo segue a resposta ao degrau da planta para uma entrada em degrau unitrio.





Da curva obtemos:
L = 8,18 segundos
T = 48,1 8,18 = 39,92 segundos

De acordo com a regra de Ziegler Nichols baseada na resposta ao degrau :





A funo de transferncia do controlador tipo paralelo :

()


Onde :






()




A resposta da planta com o controlador PID com Kp , Ki e Kd calculados acima :

>> num1 = [-5 1];
>> den1 = [200 30 1];
>> step(num1,den1)
>> numc = [23.95 5.856 0.357];denc = [0 1 0];
>> [nu,de] = series(numc,denc,num1,den1);
>> [n,d] = cloop(nu,de);
>> step(n,d)

Você também pode gostar