Está en la página 1de 10

LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

EXPERIENCIA No4

Sintonizacin de Parmetros PID por Optimizacin Toolbox

I. OBJETIVO

Obtener los parmetros K, T y b de una funcin conocida que se supone


desconocida mediante la optimizacin probando valores arbitrarios llegar a
deducirlos.

II. MARCO TERICO

Un controlador PID es un mecanismo de control por realimentacin ampliamente


usado en sistemas de control industrial. Este calcula la desviacin o error entre un valor
medido y un valor deseado.
El algoritmo del control PID consiste de tres parmetros distintos: el proporcional, el
integral, y el derivativo. El valor Proporcional depende del error actual. El Integral
depende de los errores pasados y el Derivativo es una prediccin de los errores futuros.

La suma de estas tres acciones es usada para ajustar al proceso por medio de un
elemento de control como la posicin de una vlvula de control o la potencia
suministrada a un calentador.

Cuando no se tiene conocimiento del proceso, histricamente se ha considerado qu


el controlador PID es el controlador ms adecuado. Ajustando estas tres
variables en el algoritmo de control del PID, el controlador puede proveer una
accin de control diseado para los requerimientos del proceso en especfico.

La respuesta del controlador puede describirse en trminos de la


respuesta del control ante un error, el grado el cual el controlador sobrepasa el
punto de ajuste, y el grado de oscilacin del sistema.
Ntese que el uso del PID para control no garantiza control ptimo del sistema
o la estabilidad del mismo.

Algunas aplicaciones pueden solo requerir de uno o dos modos de los que prov
eeeste sistema de control. Un controlador PID puede ser llamado tambin PI, PD, P
o I en la ausencia de las acciones de control respectivas.

Los controladores PI son particularmente comunes, ya que la accin derivativa es


muy sensible al ruido, y laausencia del proceso integral puede evitar que se alcanc
e al valor deseado debido a la accin de control.
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

SINTONIZACIN DEL PID

En esta seccin presentaremos las formas de obtener los valores ptimos de las
constantes [P],[I],[D], de un controlador en base a los parmetros encontrados por
experimentos hechos en el sistema.

Existen fundamentalmente 2 tipos de experimentos para reconocer un sistema, estos son


de lazo abierto o respuesta al escaln y los de respuesta en frecuencia o lazo cerrado.

Los experimentos debern hacerse siempre midiendo el tiempo en segundos.

Para los 2 tipos de experimento se presentarn las frmulas clsicas de Ziegler-Nichols y


las ms recientes (1994) desarrolladas por Astron y Hagglund.

Estas frmulas entregan los valores ptimos K,T,Td para la ecuacin PID de libro

Los que podrn usarse en cualquier controlador PID sin importar el fabricante, pero
cuidando de convertirlas al formato de unidades apropiado.

Por ejemplo, en el caso particular en un controlador Arian, para usar los 3 nmeros
obtenidos K,T,Td , deben convertirse con las formulas:

Donde [SP] es el set point y [P],[I],[D] son los valores a ser introducidos por el teclado.
Para otros fabricantes habr que identificar la frmula del control PID que usan e igualar
coeficientes para encontrar la relacin.

RESPUESTA AL ESCALN (LAZO ABIERTO).

En la seccin 1.4 desarrollamos un experimento para reconocer los parmetros del


modelo de sistema de primer orden con tiempo muerto. En la prctica tendremos que
modificar ligeramente este experimento para poder obtener resultados. Esto se debe a
que nuestro modelo es una aproximacin lineal y entonces habr diferencias con el
sistema real, por ej. el mximo valor de la derivada no estar exactamente en t=L.
Adems, no es recomendable (o ni siquiera posible) aplicar el 100% de potencia en
forma continua y esperar a ver qu pasa.

El experimento recomendado ahora es el siguiente:

Deseamos por ejemplo controlar la temperatura de un horno a 150 grados. Usando un


controlador conectado al sistema en modo manual (lazo abierto) se le programa una
salida constante u1 de un valor similar al que tendra en operacin normal del sistema
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

(por Ej. 55%). Luego se debe esperar a que el sistema se estabilice y la salida y(t) llegue
a su valor estacionario y(t)=y1
(por Ej. 120 grados)

Entonces aplicaremos nuestro escaln subiendo la potencia a otro valor razonable U2


como para observar un cambio en la salida (por Ej. 75%).
Hecho esto la salida subir hasta estabilizarse en un valor final y(t)=y2(por Ej.190 grados).

En este caso K lo obtendremos de la formula siguiente :

Ahora debemos determinar el punto de la curva donde la tangente tiene su


mxima pendiente. Definido ese punto, tenemos los nmeros ym,tm entonces
la pendiente buscada se obtiene calculando:

Con este valor y sabiendo que

calculamos

En tanto que L lo estimaremos con la interseccin de la recta tangente a el eje


horizontal.

III. SOFTWARE Y MATERIALES A UTILIZAR

Software MatLab
Herramienta Simulink
Manual de System Identification
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

IV. PROCEDIMIENTO DE EJECUCIN

1. A continuacin, procederemos a mostrar la forma de onda de entrada y


respuesta que se le aplica al sistema en estudio.

a) El diagrama de Bloques realizado en Simulink fue el siguiente:

La Funcion de Transferencia
de Estudio:
10
G (s)
0.1s 1

b) Step

Respuesta
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

c) Band Limited White Noise

d) Chirp Signal

e) Uniform Random Number


LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

f) Generator Pulse

2. Del Scope1 exportamos los datos de salida

En este caso solo tomaremos de la seal step


para realizar la determinacin de sus parmetros
K,T,b.

El cual ser almacenado con el nombre de la


variable Yreal.

Como observamos en la grfica obtenida por la seal step el valor al que llega como
mximo es de 10.

Entonces escribimos un conmando en Matlab para obtenr aquellos datos que


tengan como salida 10 y escogemos que nos muestre el primer valor

a=find(abs(Yreal(:,2)-10) < 0.00001)


>> Yreal(a(1)-4,:)
ans =
2.3500 10.0000

Antes de eso la seal STEP tiene un retraso de un segundo. Entonces nuestro tiempo
en realidad seria:

1.3500 10.0000

De esto sabemos que su valor en el Tiempo T que desconocemos que valor es ser
de 63.2% donde es:

6.23
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

Este valor nos servir para realizar una restriccin. Ya que usaremos la herramienta de
Optimizacin de Matlab.

Para esto necesitamos conocer nuestra funcin objetivo:

K
G (s)
Ts b
sabiendo que la seal de entrada es un entrada tipo escaln unitario entonces
hallamos su respuesta y obtenemos:

K 1 1
Y( s )
b s s 1/ T

El convertida en funcin de tiempo mediante la inversa de Laplace resulta:


K
y (t )
b
1 e t /T

Esta de aqu ser nuestra funcin objetivo que como resultado que deber obtener
es 10 ya que t ser 1.35, K,T y b sern nuestras variables para hallar.

Entonces creamos funciones en Matlab para nuestra funcin objetivo:

Posteriormente para nuestra restriccin:


Aqu solo se utiliza x(3) que representa a T ya que K y b son una constante en conjunto
y pueden adquirir infinidad de valores con los que pueden llegar 10 asi que se definen
dos restricciones:

Ahora programamos para ejecutar la herramienta de optimizacin mediante


comando de lneas.

PROGRAMACION REALIZADA

clc
clc,format compact,format short g
disp(' PROGRAMA DE OPTIMIZACION ')
find_system('Name','simsintoniza');
open_system('simsintoniza');
set_param(gcs,'SimulationCommand','Start');
%Escogemos Valores iniciales Para los Parametros K,b,T
datos=[9.29 3.25 1.25]
dK=1+round(19*(rand(5,1)),2);
dT=0.01+round(1.99*(rand(5,1)),2);
db=0.1+round(9.9*(rand(5,1)),2);

val=[dK dT db];
dat1=[datos;val]
%Nuestro limites que establecimos fue deron de:
LI=[ 1 0.1 0.01]; %Limite Inferior
LS=[20 10 2]; %Limite superior
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

a=find(abs(Yreal(:,2)-10) < 0.00001);


value=Yreal(a(1),:);
value(1)=value(1)-1
disp('La funcion de transferencia conocida')
sys=tf([10],[0.1 1])
step(sys)
hold on
grid on
for iter=1:6
options = optimoptions(@fmincon,'Display','iter','Algorithm','interior-
point');
options2 = optimset('TolFun',1e-5,'TolCon',1e-5)
[x,fval] =
fmincon(@stepprimerorden,dat1(iter,:),[],[],[],[],LI,LS,@rescigual,options);
[x,fval] =
fmincon(@stepprimerorden,dat1(iter,:),[],[],[],[],LI,LS,@rescigual,options2);
x
disp('La funcion de transferencia obtenida con los valores calculados')
sys2=tf(x(1),[x(3) x(2)])
step(sys2)
end
axis([0 1.5 0 14])
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

V. ANALISIS DE RESULTADOS

En los resultados pudimos apreciar que el valor de T se aproxima a 0.1 y en algunos casos
K, b se aleja o acerca al valor real este es debido a que en la ecuacin la formula K/b
es una constante y pueden dquirir infinidad hasta que lleguen a 10.

El resultado mas cercano fue la curva C1 que se acerca a la curva real en el grafico
anterior.
LABORATORIO DE CONTROL 2 Escuela de Ingeniera Elctrica

VI. RECOMENDACIONES Y CONCLUSIONES

1. Se demostr que es posible obtener los parmetros de la funcin de


transferencia con resultado.

2. Se utiliz el toolbox de optimizacin y se llegaron a resultado concordantes

3. Es recomendable utilizar seales conocidas para las pruebas como tipo


escaln, rampa o senoidal en las que se pueda obtener sus ecuaciones
para utlizarlas como funcin objetivo.

4. Se utiliz Simulink para obtener o simular que se desconoce los datos y solo
se tiene la informacin de entrada y de salida.

VII. BIBLIOGRAFIA

http://www.tervenet.com/itmaz/control2/SystemID.pdf

http://www.depeca.uah.es/depeca/repositorio/asignaturas/32
328/Tema6.pdf

También podría gustarte