Sei sulla pagina 1di 8

Controlador de nivel de agua mediante el

metodo de ziegler-nichols con mtodos


numricos
Water level controller using the Ziegler-Nichols method with numerical methods

ORLANDO OLAYA TRINIDAD


WILLIAMS VEGA CHICLA
PROFESOR: VILLAFUERTE BARRETO, HERNN
Curso: Mtodos Numricos

Facultad de Ingeniera Electrnica y Elctrica, Universidad Nacional Mayor


de San Marcos, Lima,Per

Resumen Este trabajo el resultado de un


aplicativo realizado en GUIDE de Matlab para
el clculo de parmetros de control de nivel de
agua usando el mtodo de curva de reaccin de
Ziegler-Nichols, con el cual se hace el
sintonizado de un controlador PID, para esto,
primero se considera la respuesta al escaln del
sistema en un lazo abierto es decir que se
encienda una bomba, luego por cada tiempo se
tendr un nivel de agua, con estos datos se
obtiene una grfica de la cual se obtiene una
pendiente a la recta tangente del primer punto
de inflexin y con esto los parmetros L y T, y
as se hallara los parmetros de control Kp, Ki
y Td, luego sintonizando el controlador como
puramente proporcional es decir ganancia uno
lo cual significa que no realiza ningn cambio
sobre la planta, se detiene el anlisis cuando el
sistema llega a su punto mximo y se estabilice.
Los clculos de la solucin del modelo
matemtico se realizan con mtodos numricos
Abstract-This paper presents the results of an
application performed in Matlab GUIDE for
calculating control parameters water level using
the reaction curve method of Ziegler-Nichols,
with which the tuning of a PID controller is
made, for this, first consider the step response of
the system in an open loop that is a bomb, then
each time a level of water will, with this data a
graph which is obtained is turned on is obtained
a slope to the tangent line of the first inflection
point and with this the L and T parameters, and
thus parameters Kp, Ki and Td Control be found,
then tuning the controller as purely proportional

ie gain one which means it does not make any


change on the plant, the analysis stops when the
system reaches its peak and stabilize. Estimates
of the solution of the mathematical model are
performed with numerical methods
Palabras
clave
Mtodo
numrico,
aplicativo, curva de reaccion, Ziegler-Nichols,
controlador PID, interpolacion, biseccion.

I. INTRODUCCIN

os controles automticos tienen una

intervencin cada vez ms importante en la


vida diaria, desde los simples controles que
hacen funcionar un tostador automtico hasta
los complicados sistemas de control
necesarios en vehculos espaciales, en guiado
de proyectiles, sistemas de pilotajes de
aviones, etc. Adems el control automtico se
ha convertido en parte importante e integral
de los procesos de manufactura e industriales
modernos. Por ejemplo el control automtico
resulta esencial en operaciones industriales
como el control de presin, temperatura,
humedad, viscosidad y flujo en las industrias
de procesos, maquinado manejo y armado de
piezas mecnicas en las industrias de
fabricacin, entre muchas otras. En la

actualidad en las modernas fbricas e


instalaciones industriales, se hace cada da
ms necesario de disponer de sistemas de
control o de mando, que permitan mejorar y
Figura 1
optimizar una gran cantidad de procesos, en
donde la sola presencia del hombre es
insuficiente para gobernarlos. La industria
III.
ELECCIN DEL
espacial y de la aviacin, petroqumica,
CONTROLADOR
papelera, textil, del cemento, etc. son algunos
ejemplos de lugares en donde se necesitan Controlador P
sistemas de control, cuya complejidad ha
trado como consecuencia el desarrollo de En ciertos tipos de procesos es posible
tcnicas dirigidas a su proyecto y trabajar con una ganancia elevada sin tener
construccin.
ningn problema de estabilidad en el
controlador. Muchos procesos que poseen una
constante de tiempo dominante o son
II.
CONTROLADORES PID
integradores puros caen en esta categora. Una
alta ganancia en un controlador P significa
Las estrategias de control PID se incorporan que el error en estado estacionario ser
en el ambiente industrial en el primer cuarto pequeo y no se necesitar incluir accin
de este siglo, con un esquema de ajuste integral.
puramente emprico. En la actualidad, y pese
al sorprendente desarrollo de la teora de Su funcin de transferencia est dada por:
control y del soporte tecnolgico necesario
para su implementacin, el controlador de
U (s)
=Kp
estructura PID se emplea casi con
E (s )
exclusividad en el ambiente industrial de todo
el mundo, en particular para controlar Donde Kp se denomina ganancia proporcional
procesos trmicos y qumicos.
La asimilacin de los controladores PID en el
mbito industrial ha llegado a un grado tal que
permite observar el siguiente hecho en
apariencia contradictorio: por una parte los
usuarios se resisten a todo reemplazo del
controlador PID por controladores que
presenten una estructura diferente (por ms
simple y robusta que esta sea), y por otro lado
Figura 2. Diagrama de bloques de Controlado P
se
aceptan
controladores
adaptables
sofisticados si estos vienen bajo una
empaquetadura PID. Probablemente es debido Controlador PD
a esta razn que en los ltimos aos varios
grupos que se encuentran en la vanguardia de En lneas generales, el control PD puede ser
la investigacin han invertido un considerable apropiado cuando el proceso a controlar
esfuerzo en el desarrollo de nuevos algoritmos incorpore ya un integrador. Tambin son
de control basados en estructuras PID. El vlidos procesos en que es posible trabajar
controlador PID surge como consecuencia de con ganancias elevadas en el controlador sin
la combinacin de tres acciones bsicas de que sea necesario introducir la accin integral.
control accin proporcional, integral y La accin derivativa es sensible al ruido, ya
derivativa cuyos efectos ya eran conocidos a que a altas frecuencias tiene una ganancia
principios de siglo. A los fines de recordar los relativamente elevada. Por lo tanto, en
efectos de estas tres acciones considrese el presencia de altos niveles de ruido se debe
limitar dicha ganancia, o prescindir de la
esquema de control indicado en la figura 1
accin derivativa.

Su funcin de transferencia est dada por:

U (s)
=Kp(1+Tvs)
E (s )
Donde TV se denomina duracin predicha.

Figura 3. Diagrama de bloques de Controlado PI

Controlador PID

Figura 3. Diagrama de bloques de Controlado PD

Controlador PI
Es la estructura ms usual del controlador. La
introduccin de la accin integral es la forma
ms simple de eliminar el error en rgimen
permanente. Otro caso en el que es comn
utilizar la estructura PI es cuando el desfase
que introduce el proceso es moderado. La
accin derivativa, ms que una mejora en esta
situacin es un problema ya que amplifica el
ruido existente. Tambin se recomienda la
accin PI cuando hay retardos en el proceso,
ya que, es este tipo de procesos la accin
derivativa no resulta apropiada en este tipo de
sistemas. Un tercer caso en el que se debera
prescindir de la accin derivativa es cuando el
proceso est contaminado con niveles de ruido
elevados.

La accin derivativa suele mejorar el


comportamiento del controlador, ya que
permite
aumentar
las
acciones
proporcional e integral. Se emplea para
mejorar el comportamiento de procesos
que no poseen grandes retardos pero que s
presentan grandes desfases. Este es el caso
tpico de procesos con mltiples constantes
de tiempo.
Su funcin de transferencia est dada por:

U (s)
1
=Kp(1+
+Tvs)
E (s )
Tns

Su funcin de transferencia est dada por:

U (s)
1
=Kp(1+
)
Tns
E (s )
Donde Kp es la ganancia proporcional y
Tn se denomina tiempo de accin integral.
Figura 3. Diagrama de bloques de Controlado PID

IV.

CALIBRACIN DE
CONTROLADORES

El proceso de seleccionar los parmetros del


controlador para que el sistema cumpla con
las especificaciones de diseo se conoce como

calibracin o ajuste del controlador. Las reglas


de Ziegler-Nichols sugieren un mtodo para
afinar controladores PID basndose en la
respuesta experimental ante una seal escaln
de entrada. La regla de Ziegler-Nichols es
muy conveniente cuando no se conocen los
modelos matemticos de las plantas.

primer orden con un retardo de transporte del


modo siguiente:

Ziegler y Nichols propusieron unas reglas


para determinar los valores de la ganancia
proporcional Kp, del tiempo integral Ti y del
tiempo derivativo Td, con base en las
caractersticas de respuesta transitoria de una
planta especifica.
Existen dos mtodos denominados reglas de
sintonizacin de Ziegler-Nichols. En ambos se
pretende obtener un 25% de sobre-pico
mximo en la respuesta escaln. Esto se puede
observar en la Figura 4.

Figura 5.

Tabla I

Figura 4.

Mtodo mediante lazo abierto


En el primer mtodo, la respuesta de la planta
a una entrada escaln unitario se obtiene de
manera experimental. Si la planta no contiene
integradores ni polos dominantes complejos
conjugados, la curva de respuesta escaln
unitario puede tener forma de S, como se
observa en la Figura 3. Si la respuesta no
exhibe una curva con forma de S, este mtodo
no es pertinente. Tales curvas de respuesta
escaln se generan experimentalmente o a
partir de una simulacin dinmica de la
planta. La curva con forma de S se caracteriza
por dos parmetros: el tiempo de retardo L y
la constante de tiempo T. El tiempo de retardo
y la constante de tiempo se determinan
dibujando una recta tangente en el punto de
inflexin de la curva con forma de S y
determinando las intersecciones de esta
tangente con el eje del tiempo y la lnea
c(t)=K, como se aprecia en la Figura 5. En
este caso, la funcin de transferencia
C(s)/U(s) se aproxima mediante un sistema de

Las tcnicas en lazo abierto se suelen usar


slo en procesos lentos tales como control de
temperatura, mientras que en procesos rpidos
(caudal, presin) el enfoque en lazo cerrado es
mucho ms rpido y seguro. Si la planta no
presenta una respuesta en forma de S se puede
utilizar este mtodo para sintonizar el PID.
V.

PLANTEAMIENTO DEL
PROBLEMA

Se desea controlar el nivel de agua de un


tanque mediante un controlador, como se
muestra en la figura 6.

Figura 6.

Para esto se ha escogido un controlador PID


digital, para calibrar el controlador se ha
escogido el mtodo de Ziegler y Nichols.

A continuacin se presenta el esquema


conceptual, sobre el planteamiento del
problema

Seleccin de
Controlador

Clculo de parmetros

Introducir los
parmetros en
Controlador
VI. SELECCIN DEL CONTROLADOR
Por esta serie de motivos se ha usado una
implantacin digital. Para la implantacin
digital se podra usar un PLC (autmata
programable) o un microcontrolador. Un PLC
es un microprocesador mucho ms potente y
robusto, tiene un software ms amplio y ms
posibilidades de entradas y salidas. En su
contra son ms lentos y tienen un coste ms
elevado.

Entradas analgicas para tomar los valores


de la variable a controlar a travs de
sensores.
Salidas digitales para poder manejar
actuadores de dos sentidos.
Salidas analgicas para el mando del
actuador
(cabe
recordar
que
el
microcontrolador no tiene conversor D/A
interno).
Conexin serie RS 485 para poder
conectarse con otros dispositivos.
Display para poder visualizar las variables
ms significativas del regulador PID.
VII. CALCULO DE PARAMETROS

Se ha procedido a usar el mtodo de Ziegler y


Nichols descrita en la parte IV, con la ayuda
de los conceptos de mtodos numricos de
polinomio de lagrange, mtodo de biseccin,
se ha realizado los clculos.
A continuacin se presenta el esquema
conceptual sobre el clculo de parmetros:

Introducir
datos
Tiempo vs
capacidad
Interpolacin
Modelo
matemtico
Pendiente a la
tangente del primer
punto de inflexin

Figura 7. Diagrama de bloques del controlador

Partiendo de la figura se han diseado los


siguientes componentes:

Calcular
parmetros L y T

Fuente de alimentacin para alimentar los


distintos componentes electrnicos.
Usar la tabla para
encontrar
Micontrolador PIC16F1937 (pines y
valores
de PID
conexiones).
Entradas digitales (pulsadores) para poder VIII. CALCULO DE L Y T CON MATLAB
cambiar el PID manualmente.

Para el clculo de los valores se ha usado


algoritmos y se han desarrollado en matlab,
para una mayor facilidad se ha usado la
interface GUIDE, vamos a ir describiendo
paso por pasos cada parte del script y el
mtodo de clculo segn el esquema
conceptual anterior.
1. Introducimos
capacidad.

los

valores

tiempo

vs

el polinomio que interpola un conjunto de


puntos dado.
Dado un conjunto de k + 1 puntos

Donde todos los xj se asumen distintos, el


polinomio interpolador en la forma de
LaGrange es la combinacin lineal

Para es creamos una tabla y un pop-up men


de bases polinmicas de LaGrange

Utilizamos el siguiente algoritmo en matlab


basndonos
en
la
teora
descrita
anteriormente.
function dimension_Callback(hObject, eventdata,
handles)

%obtenemos el valor de la dimensin de la tabla


obtenida del pop-up men
g=get(handles.dimension,'Value');
switch g
case 1
set(handles.tabla,'Visible','off');
set(handles.error,'string','Seleccione la dimensin
del polinomio');
case 2
set(handles.tabla,'Visible','on');
num_elem=cell(2,2);
num_elem(:,:)={''};
set(handles.tabla,'data',num_elem);
set(handles.tabla,'ColumnEditable',true(1,1));
case 3
set(handles.tabla,'Visible','on');
num_elem=cell(3,2);
num_elem(:,:)={''};
set(handles.tabla,'data',num_elem);
set(handles.tabla,'ColumnEditable',true(1,1));

2.

Calculamos el modelo matemtico

Para esto usamos el mtodo de LaGrange


En anlisis numrico, el polinomio de
LaGrange, llamado as en honor a JosephLouis de LaGrange, es una forma de presentar

function calcular_Callback(hObject, eventdata, handles)


%obtenemos las dimensiones
g=get(handles.dimension,'Value');
%obtenemos los valores de la tabla
t=(get(handles.tabla,'data'));
%convertimos los valores de tabla a nmeros
t=str2double(t);
%guardamos los valores de X
X=t(:,1);
%guardamos los valores de Y
Y=t(:,2);
%calculamos el tamao de X
d=length(X);
%aplicamos el algoritmo de lagrange para obtener el
polinomio
for k=1:d
V=1;
for j=1:d
if k~=j
V=conv(V,poly(X(j)))/(X(k)-X(j));
end
end
L(k,:)=V;
end
C=Y'*L;
%convertimos los vectores en un polinomio
Q=poly2sym(C);
pol=inline(Q);
%convertimos el polinomio en caracteres
Q=char(Q);
%enviamos los caracteres obtenidos en string para el
modelo matemtico
set(handles.lagra,'String',Q);
%enviamos la grafica
fplot(handles.cuadro,pol,[0 (max(X)+1)]);
grid on;
zoom on;
hold on;

tantas veces como sea necesario para alcanzar


la precisin que se requiera.
Utilizamos el siguiente algoritmo en matlab
basndonos
en
la
teora
descrita
anteriormente.
a=min(X);
b=max(X);
n=ceil(log((b-a)/(1e-3))/log(2));
for i=1:n
xb=(a+b)/2;
if A(a)*A(xb)<0
b=xb;
else
a=xb;
end
end
3.

Calculando el primer punto de inflexin

siendo xb el punto de inflexin

Para el clculo del primer punto de inflexin 4. Calculando la recta tangente al punto de
inflexin y al polinomio
calculamos la 2da derivada del polinomio
Para
esto usaremos ecuacin
calculado anterior mente
%Primer punto de inflexin
R=poly2sym(C);
%Usaremos el metodo de biseccin para el valor del
punto de inflexin
A=diff(diff(R));
A=inline(A);

Con la sentencia inline obtenemos un


polinomio, pero el primer punto de inflexin
lo optemos calculando las races del
polinomio
Para esto usaremos el mtodo de biseccin
El Teorema de Bolzano arma que si una
funcin es continua en un intervalo cerrado y
acotado y en los extremos del mismo sta
toma valores con signos opuestos, entonces
existe al menos una raz de la funcin en el
interior del intervalo.
Supngase que queremos encontrar los ceros
de una funcin f(x) continua. Dados dos
puntos a y b tal que f(a) y f (b) tengan signos
distintos, sabemos por el Teorema de Bolzano
que f(x) debe tener, al menos, una raz en el
intervalo [a, b]. El mtodo de biseccin divide
el intervalo en dos, usando un tercer punto c =
(a + b)/2. En este momento, existen dos
posibilidades: f(a) y f(c), f(c) y f (b) tienen
distinto signo. El mtodo de biseccin se
aplica al subintervalo donde el cambio de
signo ocurre. Este proceso puede aplicarse

Yt(x) = f(x) + f(x0)*(x-x0)


Llevando esto a matlab
%Hallando la recta tangente al punto de inflexin
syms xt;
f1x=diff(R);
f1x=inline(f1x);
yt=pol(xb)+f1x(xb)*(xt-xb);
%ecuacin de la recta tangente
yt=inline(yt);
%graficamos la recta tangente
fplot(yt,[0,(max(X)+1),0,(max(Y)+1)],'g');
hold off

5. Hallando los valores de T y L


Una vez hallada la ecuacin de la recta,
podemos calcular los valore de T y L como lo
muestra en la figura 5.
Ya que tenemos ecuacin de la recta
procederemos hallar su raz con el teorema de
la biseccin lo cual ser el valor de L
%Hallando el valor de L con mtodo de biseccin
al=min(X);
bl=max(X);
n=ceil(log((bl-al)/(1e-3))/log(2));
for i=1:n
L=(al+bl)/2;
if yt(al)*yt(L)<0
bl=L;
else
al=L;
end
end
set(handles.valorl,'String',L);

De la misma manera para el valor de T, solo


que para esto modificaremos un poco la
ecuacin trasladando el eje y en un valor de
max(Y)
%Hallando el valor de T con mtodo de biseccin
yT=pol(xb)+f1x(xb)*(xt-xb)-max(Y);
yT=inline(yT);
alT=min(X);
blT=max(X);
n=ceil(log((blT-alT)/(1e-3))/log(2));
for i=1:n
T=(alT+blT)/2;
if yT(alT)*yT(T)<0
blT=T;
else
alT=T;
end
end
set(handles.valort,'String',T);

6. Hallando los valores Kp, Td, Ti


Ya calculado los valores de L y T podemos
remplazarlos en la tabla I, descrita
anteriormente. En matlab tendramos:
%Hallando los valores de Kp, Ti, Tp
set(handles.kpp,'String',T/L);
set(handles.kppi,'String',T*0.9/L);
set(handles.kpid,'String',T*1.2/L);
set(handles.tipi,'String',L/0.3);
set(handles.tipid,'String',2*L);
set(handles.tdpid,'String',0.5*L);

IX. PROGRAMANDO EL CONTROLADOR


Finalmente al calcular los valores del
sintonizador
podemos
programar
el
controlador siguiendo los siguientes pasos

Figura 8. Diagrama de flujo modo manual

X.

CONCLUSIONES

Se ha elaborado un aplicativo con una


interface de usuario para el clculo de
parmetros de control, y calibrar un
controlador PID, haciendo uso de los mtodos
aprendidos en el curso de mtodos numricos,
el mismo aplicativo puede sernos til para
cualquier controlador que use el mtodo de
Ziegler y Nichols
XI.

REFERENCIAS

[1] Chapra S. & Canales R. / Mtodos numricos para


ingenieros. / Edit. Mc Graw Hill ., 124p, 516p.
[2] Katsuhiko Ogata/ Ingeniera de Control Moderna /
Edit. Mc Graw Hill ., 13p, 567p
[3] John H. Mathews & Kurtis D. Fink / Metodos
Numericos con matlab / Edit. Prentice Hall. 64p, 236p.
[4] Jos Antonio Fernndez Ramrez / REGULADOR
PID / Escuela Tcnica Superior de Ingeniera (ICAI) /
Madrid

Potrebbero piacerti anche