Sie sind auf Seite 1von 12

EJERCICIO RESUELTO

En el siguiente ejercicio se desarrollan diferentes técnicas para el calculo de los


parámetros de un controlador.

En la siguiente figura se muestra el diagrama de bloque del sistema.

R(S)
C(S)
+
Gc Gv Gp

Gm

Donde:

Función de transferencia de la válvula

0.54
𝐺𝑣 =
𝑆+1
Función de transferencia del proceso

0.15
𝐺𝑝 =
2.8 𝑆 + 1
Función de transferencia del canal de medición

1
𝐺𝑚 =
0.6 𝑆 + 1
Función de transferencia del controlador P.I.D.

1
𝐺𝑐 = 𝑘𝑐 ∗ [ 1 + + 𝑡𝑑 𝑆 ]
𝑡𝑖 𝑆
Ahora se harán los cálculos de los parámetros del regulador P.I.D. utilizando
diferentes métodos.

MÉTODO DE LAS OSCILACIONES PERMANENTES (MOP)

Se hará de forma analítica utilizando el diagrama de BODE.


Se traza el diagrama de BODE a lazo abierto con el controlador proporcional de
ganancia uno (kc=1).

𝐺𝑠𝑙𝑎 = 𝐺𝑐 ∗ 𝐺𝑣 ∗ 𝐺𝑝 ∗ 𝐺𝑚

Utilizando la programación en matlab que a continuación se muestra; se obtiene


los siguientes resultados:

clc;
hold off;
t=0:0.01:20;
%funcion de transferencia de la válvula
kv=0.54;
tv=1;
dv=[tv 1];
Gv=tf(kv,dv);

%funcion de transferencia del proceso


kp=.15;
tp=2.8;
dp=[tp 1];
Gp=tf(kp,dp);

%funcion de transferencia del canal de medicion


km=1;
tm=0.6;
dm=[tm 1];
Gm=tf(km,dm);

%funcion de transferencia a lazo cerrado


Gs=series(Gv,Gp);
Gslc=feedback(Gs,Gm,-1)

%raices de la ecuacion caracteristicas


[nsp,dsp] = tfdata(Gslc,'v');
roots(dsp);

% CALCULOS DE LOS PARAMETROS DEL REGULADOR UTILIZANDO


% EL METODO DE OSCILACIONES PERMANENTES (MOP) POR
% Diagrama de Bode

Gla=series(Gs,Gm); %FUNCION DE TRANSFERENCIA A LAZO ABIERTO


%margin(Gla); %DIAGRAMA DE BODE
grid
[Km,Pm,Wg,Wp] = margin(Gla);

% Km es K critica y Wg es w critica
kcrit=Km;
Pc=2*pi/Wg;

% PARAMETRO DEL CONTROLADOR PID SEGUN TABLA DE ZIEGLE-NICHOLS


kc=kcrit/1.7;
ti=Pc/2;
td=Pc/8;

% CONTROLADOR PID = KC*[1 + 1/tiS + tdS]


Gc=pidar(kc,ti,td); % pidar() es una funcion creada para el calculo
% de la funcion de tranferencia del P.I.D.
% FUNCION DE TRANFERENCIA DEL SISTEMA CON EL CONTROLADOR
Gst=series(Gs,Gc)
Gt=feedback(Gst,Gm,-1);

hold on;
step(Gslc,t); % Grafica del comportamiento del sistema sin PID
step(Gt,t); % Grafica del comportamiento del sistema con PID
grid

Para el calculo de la función de transferencia del controlador P.I.D. se realizo una

pidar.m
función en matlab llamada . Cuyos comandos son:

function [Gcf]=pidar(kcf,tif,tdf)

%programa de pid = Kc( 1 + 1/(tiS)+ tdS )

% CONTROLADOR PID = KC*[1 + 1/tiS + tdS]


Gcp=tf(1);
Gci=tf(1,[tif 0]);
Gcd=tf([tdf 0],1);
Gc1=parallel(Gcp,Gci);
Gc2=parallel(Gc1,Gcd);
% FUNCION DE TRANFERENCIA DEL CONTROLADOR PID
Gcf=series(Gc2,kcf);

End

Con el comando margin() se obtienen la “k” critica y “w” critico, y se calculan los
parámetros del controlador con la Tabla de Ziegler y Nichols. Que se observan en
el programa.
Y los resultados son los siguientes:

kcrit = 151.9187
Pc = 3.8824
kc = 89.3639
ti = 1.9412
td = 0.4853

En la figura se observa la respuesta del sistema sin el controlador y con el


controlador PID con los parámetros calculados anteriormente.
Se puede observar que la respuesta del sistema al escalón unitario es
sobreamortiguada y con el valor en estado estacionario de 0.08 aproximadamente.
En cambio, al colocarle el controlador el sistema se comporta ahora como sub-
amortiguado siguiendo la respuesta en estado estacionario a la entrada, es decir,
mejoro notablemente su respuesta.

MÉTODO DE LA CURVA DE REACCIÓN DEL PROCESO.

En este método se abre el lazo y se aplica el estímulo a la válvula directamente,


observándose que la respuesta a un paso escalón tiene una forma sigmoidal que
puede ser aproximada por un modelo de primer orden con retardo.
Para calcular los parámetros se traza una resta tangente al punto de inflexión.
Para tal fin se utilizo un polinomio interpolante a la función original.
Para tal fin se utilizo el siguiente programa

clc;
hold off;
t=0:0.01:25;
%funcion de transferencia de la válvula
kv=0.54;
tv=1;
dv=[tv 1];
Gv=tf(kv,dv);

%funcion de transferencia del proceso


kp=.15;
tp=2.8;
dp=[tp 1];
Gp=tf(kp,dp);

%funcion de transferencia del canal de medicion


km=1;
tm=0.6;
dm=[tm 1];
Gm=tf(km,dm);

%funcion de transferencia a lazo cerrado


Gs=series(Gv,Gp);
Gslc=feedback(Gs,Gm,-1);
%step(Gslc,t)

% CALCULOS DE LOS PARAMETROS DEL REGULADOR UTILIZANDO


% EL METODO DE CURVA DE REACCION del PROCESO
% B=Gv*Gp*Gm*M que es igual a lazo abierto = Gla
hold on;
step(Gla,t)
y=step(Gla,t);

% POLINOMIO INTERPOLANTE DEL SISTEMA ORIGINAL


k=t';
p=polyfit(k,y,7);
y1=polyval(p,t);
plot(t,y1,'r')
grid

%BUSCAR EL PUNTO DE INFLEXION CON LA SEGUNDA DERIVADA ES IGUAL CERO


p1=polyder(p);
p2=polyder(p1);
roots(p2)
y2=polyval(p,2.3826);

% hallar la ecuacion de la recta y2= mx + b


m=polyval(p1,2.3826);
b=y2-m*2.3826;
y2=polyval([m b],t);
plot(t,y2,'r')

% PARAMETROS DEL CONTROLADOR


% h=y(15/(0.01))*.632 % 63.2% del valor final
T=3.62;
L=0.88;
kcrp=y(15/0.01);
kc=1.2*T/(kcrp*L)
ti=2*L
td=L/2

% CONTROLADOR PID = KC*[1 + 1/tiS + tdS]


Gc=pidar(kc,ti,td);

% FUNCION DE TRANFERENCIA DEL SISTEMA CON EL CONTROLADOR


Gst=series(Gs,Gc);
Gt=feedback(Gst,Gm,-1);
%step(Gt,t)
%grid

Y los resultados fueron los siguientes:

Kc=1.2* T/K*L ; donde K = Amplitud del estado estacionario/ escalon unitario


T = 4.5 – 0.88 y L = 0.88

Es decir que:

kc = 61.5190
ti = 1.7600
td = 0.4400

y la respuesta del sistema fue el siguiente.


MÉTODO DE LAS OSCILACIONES AMORTIGUADAS

Con el controlador con ganancia proporcional solamente, se aumenta la ganancia


hasta que la respuesta al paso escalón oscile con una atenuación de ¼.

Para calcular el rango de K donde el sistema es estable se utilizo el método de


Ruth-Hurwitz. Dando como resultado
0 < 𝐾 < 151.888

Entonces con K a la mitad del rango máximo se empezó hacer las pruebas,
utilizando el programa
%clc;
hold off;
t=0:0.01:20;
%funcion de transferencia de la válvula
krh=1; % rango de k segun Routh-Hurwitz (0- 151.88)
kv=krh*0.54;
tv=1;
dv=[tv 1];
Gv=tf(kv,dv);

%funcion de transferencia del proceso


kp=.15;
tp=2.8;
dp=[tp 1];
Gp=tf(kp,dp);

%funcion de transferencia del canal de medicion


km=1;
tm=0.6;
dm=[tm 1];
Gm=tf(km,dm);

%funcion de transferencia a lazo cerrado


Gs=series(Gv,Gp);
%disp(' funcion de trasferencia a lazo cerrado')
Gslc=feedback(Gs,Gm,-1)

%step(Gslc,t); % salida del sistema a lazo cerrado


grid;
%raices de la ecuacion caracteristicas
[nsp,dsp] = tfdata(Gslc,'v'); %descompone la funcion de trasferencia en
%numerador y denominador
roots(dsp);

% CALCULOS DE LOS PARAMETROS DEL REGULADOR UTILIZANDO


% EL METODO DE OSCILACIONES AMORTIGUADAS (MOA)
% PARAMETRO DEL CONTROLADOR PID SEGUN %clc;
hold off;
t=0:0.01:20;
%funcion de transferencia de la válvula
krh=1; % rango de k segun Routh-Hurwitz (0- 151.88)
kv=krh*0.54;
tv=1;
dv=[tv 1];
Gv=tf(kv,dv);

%funcion de transferencia del proceso


kp=.15;
tp=2.8;
dp=[tp 1];
Gp=tf(kp,dp);

%funcion de transferencia del canal de medicion


km=1;
tm=0.6;
dm=[tm 1];
Gm=tf(km,dm);

%funcion de transferencia a lazo cerrado


Gs=series(Gv,Gp);
%disp(' funcion de trasferencia a lazo cerrado')
Gslc=feedback(Gs,Gm,-1)

%step(Gslc,t); % salida del sistema a lazo cerrado


grid;
%raices de la ecuacion caracteristicas
[nsp,dsp] = tfdata(Gslc,'v'); %descompone la funcion de trasferencia en
%numerador y denominador
roots(dsp);

% CALCULOS DE LOS PARAMETROS DEL REGULADOR UTILIZANDO


% EL METODO DE OSCILACIONES AMORTIGUADAS (MOA)

% PARAMETRO DEL CONTROLADOR PID SEGUN TABLA DE ZIEGLE-NICHOLS


P=4.85; %PERIODO ENTRE LOS DOS PICOS (1/4)
kc=70;
ti=P/1.5;
td=P/6;

% PARAMETROS METODO DE OSCILACIONES PERMANENTES


% kcrit 152 por Ruth-Hurwitz
% pcrit 3.8 MOP
% ti=pcit/2 y td=pcit/8
%kc=(152/2);
%ti=(3.8/2);
%td=(3.8/8);

% FUNCION DE TRANFERENCIA DEL SISTEMA CON EL CONTROLADOR


Gc=pidar(kc,ti,td);

Gst=series(Gs,Gc)
Gt=feedback(Gst,Gm,-1);
%hold on;
step(Gt,t)
grid

P=4.85; %PERIODO ENTRE LOS DOS PICOS (1/4)


kc=70;
ti=P/1.5;
td=P/6;

% PARAMETROS METODO DE OSCILACIONES PERMANENTES


% kcrit 152 por Ruth-Hurwitz
% pcrit 3.8 MOP
% ti=pcit/2 y td=pcit/8
%kc=(152/2);
%ti=(3.8/2);
%td=(3.8/8);

% FUNCION DE TRANFERENCIA DEL SISTEMA CON EL CONTROLADOR


Gc=pidar(kc,ti,td);

Gst=series(Gs,Gc)
Gt=feedback(Gst,Gm,-1);
%hold on;
step(Gt,t)
grid

después de hacer varias sintonizaciones se logro conseguir la relación de un “1/4”


entre los dos picos, como se observa en la figura. El periodo fue de (P) = 7.12 –
2.27 = 4.85.
utilizando la TABLA DE ZIEGLE-NICHOLS para el método, los parámetros dieron:

kc = 70
ti = 3.2333
td = 0.8083

y el resultado fue el siguiente.

Se observa que este es la mejor respuesta encontrada de los tres métodos, ya


que tiene un máximo sobre pico de 25% y un tiempo de estabilización en ts= 8
seg.

Das könnte Ihnen auch gefallen