Vous êtes sur la page 1sur 39

Laboratorio de Control Avanzado

Luis Edo Garca Jaimes

PRACTICAS DE LABORATORIO DE SISTEMAS DE CONTROL AVANZADO

1. OBJETIVO
El objetivo fundamental del laboratorio de Control Avanzado es establecer una
relacin entre los conceptos y mtodos tericos explicados en la asignatura y las
aplicaciones prcticas de los mismos. Para ello se realizarn por un lado, prcticas
de laboratorio utilizando paquetes de software que permitan la simulacin de
diferentes algoritmos de control y por el otro, prcticas en sistemas reales que
permitan confrontar la teora con los resultados prcticos.

2. CONTENIDOS FUNDAMENTALES
La idea bsica del laboratorio es la revisin y aplicacin de los conceptos
fundamentales de la Teora de Control Avanzado, intentando en lo posible resolver
problemas lo ms parecidos a aqullos que un ingeniero se puede encontrar en su
prctica profesional. Para ello, se realizaran las siguientes prcticas:
PRACTICA N 1: Identificacin de sistemas dinmicos.
PRACTICA N 2: Diseo de controladores en el espacio e estado.
PRACTICA N 3: Controladores autoajustables por asignacin de polos.
PRACTICA N 4: Controladores de Mnima Varianza.
PRACTICA N 5: Controlador PI Adaptativo por asignacin y cancelacin de polos.
PRACTICA N 6: Control adaptativo por Modelo de Referencia (MRAC).
PRACTICA N 7: Control adaptativo con Ganancia Programable.
PRACTICA N 8: Control Predictivo.

3. PROCEDIMIENTO
Utilizando el MATLAB y el SIMULINK y durante todo el curso, el alumno realizar
un proyecto de modelado, simulacin y control de un proceso seleccionado
previamente (Un proceso de flujo, de nivel, de temperatura o el correspondiente a
un motor de DC). En dicho proyecto deber aplicar uno a uno los conceptos que
se tratan en la teora de Control Avanzado.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRACTICA N 1
IDENTIFICACIN DE SISTEMAS DINMICOS.

Objetivo
El objetivo general de esta prctica es lograr que el alumno desarrolle, en un
marco prctico, los conceptos y tcnicas estudiadas sobre el modelado
matemtico de sistemas fsicos y que comprenda la importancia de una correcta
identificacin del sistema para realizar un adecuado control del mismo.
Producto final
Generar un programa en MATLAB que lea un archivo en formato xx.dat obtenido
a partir de la aplicacin de una seal de entrada al proceso seleccionado (Nivel,
flujo, presin, temperatura o motor DC) y permita estimar el modelo matemtico
que describa su comportamiento dinmico aproximndolo a sistemas discretos de
primero, segundo y tercer orden con su respectiva validacin.
Se recomienda, para obtener mejores resultados, realizar una identificacin previa
del sistema utilizando identificacin no paramtrica, aproximarlo a un sistema de
primer orden con retardo (POR), discretizarlo con el periodo de muestreo
adecuado y utilizar estos parmetros como punto de partida para la identificacin
pedida.

MARCO TERICO
Identificacin de sistemas
Se entiende por identificacin de sistemas a la obtencin en forma experimental
de un modelo que reproduzca con suficiente exactitud, para los fines deseados,
las caractersticas dinmicas del proceso objeto de estudio.
Procedimiento para la identificacin.
Como primer paso se debe seleccionar el proceso o planta con la cual se va a
trabajar durante el curso. Esta puede ser un sistema de nivel, de flujo, de presin
de temperatura o un motor de DC.
Para la identificacin se utiliza el mtodo de Mnimos cuadrados recursivos (RLS)
El proceso de identificacin a realizar comprende los siguientes pasos:

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

1. Obtencin de datos de entrada - salida. Para ello se debe excitar el sistema


seleccionado mediante la aplicacin de una seal de entrada (Escalones en este
caso) y registrar la evolucin de sus entradas y salidas durante un intervalo de
tiempo. Es necesario disear adecuadamente el experimento y aplicar como
mnimo cuatro escalones, obtener el modelo del sistema para cada uno de ellos y
luego promediar los resultados, en las prcticas subsiguientes se trabaja con el
modelo promediado.
2. Tratamiento previo de los datos registrados. Los datos registrados pueden
estar acompaados de ruidos indeseados u otro tipo de imperfecciones que es
necesario corregir antes de iniciar la identificacin del modelo. Si es necesario se
deben preparar los datos para facilitar y mejorar el proceso de identificacin, para
ello se pueden filtrar previamente utilizando el MATLAB.
3. Eleccin de la estructura del modelo. Si el modelo que se desea obtener es
un modelo paramtrico, el primer paso es determinar la estructura deseada para
dicho modelo. En la prctica que se va a realizar se debe generar un programa
con el cual se puedan obtener modelos de primer orden, segundo orden y tercer
orden.
4. Obtencin de los parmetros del modelo. Una vez seleccionado el modelo y
desarrollado el software de identificacin, se procede a la estimacin de los
parmetros de la estructura que mejor ajustan la respuesta del modelo a los datos
de entrada-salida obtenidos experimentalmente.
5. Validacin del modelo. El ltimo paso consiste en determinar si el modelo
obtenido satisface el grado de exactitud requerido para la aplicacin en cuestin.
Si se llega a la conclusin de que el modelo no es vlido, se deben revisar los
siguientes aspectos como posibles causas:
a) El conjunto de datos de entrada-salida no proporciona suficiente informacin
sobre la dinmica del sistema.
b) La estructura seleccionada no es capaz de proporcionar una buena descripcin
del modelo.
c) El criterio de ajuste de parmetros seleccionado no es el ms adecuado.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Dependiendo de la causa estimada, deber repetirse el proceso de identificacin


desde el punto correspondiente.
Algoritmo de identificacin. Se supone que el sistema puede ser modelado
como un proceso estable, linealizable y con una sola entrada y una salida por lo
que puede ser descrito por una ecuacin en diferencias lineal de la forma:

En donde

son los datos de salida y

son los datos de entrada

La ecuacin 1 se puede escribir en forma vectorial as:

En donde:

El procedimiento para la identificacin es el siguiente:


1. Seleccionar

2. Obtener los nuevos valores de

3. Calcular el error:

4. Calcular L(k+1) mediante la ecuacin:

5. Calcular los nuevos parmetros estimados:

6. Actualizar la matriz de covarianza:

7. Actualizar el vector de medidas:


8. Hacer

y regresar al paso 2.

A continuacin se presenta el programa base para la identificacin en MATLAB


utilizando un modelo de segundo orden. El programa se debe reorganizar de

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

modo que tome los datos de un archivo (datos.dat) y permita seleccionar modelos
de primero, segundo y tercer orden y validarlos adecuadamente.
clc
u=[0 1 1 1 1 1 1]; % datos de entrada
y=[0 0.73 1.26 1.55 1.73 1.84 1.91]; % datos de salida
n=input('entre el orden del sistema n=');
p=1000*eye(2*n);
th=[zeros(1,2*n)]';
for k=1:length(y)-1
phit=[-y(k+1) -y(k) u(k+1) u(k)];
e=y(k+1)-phit*th
l=p*phit'/(1+phit*p*phit');
th=th+l*e;
p=eye(2*n)-l*phit*p;
end
u1=[1 1 1 1 1 1 1];
n=[th(3) th(4)];
d=[1 th(1) th(2)];
y1=dlsim(n,d,u1)
plot(y1)
hold
plot(y,'*')
grid

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRACTICA N 2
DISEO DE CONTROLADORES EN EL ESPACIO DE ESTADO

Objetivo
Con esta prctica se pretende que el alumno aplique los conceptos tericos que
le permitan abordar el diseo de sistemas de control digital utilizando tcnicas de
realimentacin del estado y asignacin de polos con el fin de conseguir que el
sistema a controlar cumpla unas especificaciones dadas.
Producto final
Generar un programa en MATLAB que permita estimar, para el proceso
seleccionado, la matriz de ganancia de realimentacin incluyendo integrador, la
matriz de ganancia de un observador de orden completo y la ley de control para el
mismo. El programa permitir simular el sistema con la ley de control diseada.
NOTA: Se debe presentar un informe de la prctica incluyendo las respuestas
obtenidas y los comentarios detallados pertinentes al diseo de los controladores.

MARCO TERICO
Sistemas tipo servo
La figura 2.1 muestra un sistema de control por realimentacin del estado
observado en el cual se utiliza un integrador adicional para estabilizar
adecuadamente el sistema y mejorar su exactitud. La ecuacin de estado de la
planta y su correspondiente ecuacin de salida son, respectivamente:

Figura 1. Sistema tipo Servo con realimentacin del estado

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Para realizar el diseo, utilizando la tcnica de asignacin de polos, se debe


estimar la matriz Ki correspondiente al integrador , la matriz K1 correspondiente a
la matriz de ganancia de realimentacin y la matriz L del observador de estados.
Se puede demostrar que:

En donde:

y:

Siendo

los coeficientes de la ecuacin caracterstica deseada para el

sistema en lazo cerrado.


La matriz de ganancia del observador se calcula con la frmula de Ackerman:

En donde:

Siendo

1,

2...

los coeficientes de la ecuacin caracterstica deseada para el

observador:

La ley de control para el sistema es:

Las matrices Ki y K1 se obtienen utilizando las ecuaciones 2.3, 2.4 y 2.5. La matriz
L, correspondiente a la matriz de ganancia del observador, se calcula a partir de la
ecuacin 2.6.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Procedimiento para el diseo del controlador


Obtener el modelo del sistema seleccionado en variables de estado en tiempo
discreto con el periodo de muestreo adecuado y simular su respuesta ante una
entrada en escaln unitario. Para la simulacin se puede utilizar el SIMULINK o
el MATLAB
Hallar la matriz de ganancia de realimentacin incluyendo integrador de modo
que el sistema tenga un sobreimpulso mximo del 10% y un tiempo de
establecimiento igual al 75% del correspondiente al sistema en lazo abierto.
Hallar la matriz de ganancia de un observador de estado de orden completo
con mximo sobreimpulso del 10% y tiempo de establecimiento igual al 50%
del correspondiente al sistema en lazo abierto.
Obtener la ley de control para el sistema con las especificaciones dadas.
Construir el modelo en SIMULINK incluyendo la ley de control y comprobar si
se cumplen las condiciones de diseo.
A continuacin se presenta el programa bsico en MATLAB para calcular las
matrices

. Como parte del informe se debe complementar el

programa para que estimar la ley de control y realizar la simulacin del sistema.
clc
nd1=input('Entre el numerador discreto nd1=');
dd1=input('Entre el denominador discreto dd1=');
[ad,bd,cd,dd]=tf2ss(nd1,dd1);
A1=[ad bd;zeros(1,length(ad)+1)];
B1=[zeros(length(ad),1);eye(1)];
pK=[0.1 0.2 0.4]; % Polos deseados para la matriz K
Kp=acker(A1,B1,pK);
KT=[Kp+[zeros(1,length(ad)) eye(1)]]*inv([ad-eye(length(ad))
bd;cd*ad cd*bd]);
K1=KT(1:length(ad))
Ki=KT(length(ad))
po=[0.3 0.4];

% Polos deseados para el observador

L=acker(ad',cd',po)

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRCTICA NMERO 3
CONTROLADORES AUTOAJUSTABLES POR ASIGNACIN DE POLOS

Objetivo
Aplicar la teora presentada para el diseo de reguladores autoajustables en el
clculo de un controlador por asignacin de polos para el sistema real
seleccionado.
Producto final
Generar un programa en MATLAB que permita calcular, para el proceso
seleccionado, un controlador por asignacin de polos de modo que el sistema
cumpla las especificaciones dadas. Para el clculo del regulador y la simulacin
del sistema con el controlador se puede introducir solamente la siguiente
informacin: el numerador y el denominador del sistema, el retardo

en

periodos de muestreo y los polos deseados para el mismo segn condiciones de


funcionamiento del proceso. El programa debe permitir la simulacin del sistema
con el controlador diseado para ello se puede utilizar el SIMULINK como
herramienta auxiliar.

MARCO TERICO
Ecuacin general para controladores lineales
Un controlador lineal se puede describir mediante la funcin de transferencia de
pulso:

En donde los grados de

y de

y los parmetros

deben seleccionarse

adecuadamente para satisfacer los requerimientos del sistema de control.


Se asume que el proceso lineal que se va a controlar tiene como funcin de
transferencia de pulso:

En donde

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Para el diseo del controladores adaptativos se pueden utilizar diferentes


mtodos: Asignacin de polos, optimizacin de parmetros, ajuste por tablas etc.
Mtodo de asignacin de polos: El objetivo de este mtodo es disear el
controlador de modo que los polos del sistema en lazo cerrado, queden ubicados
en el lugar deseado de acuerdo a sus especificaciones de funcionamiento.
La ecuacin caracterstica deseada para el sistema en lazo cerrado toma la forma:

El orden de en la ecuacin 3.3 est determinado por:

La ecuacin 3.3 genera

ecuaciones simultneas cuya solucin da como

resultado los parmetros del controlador.


Para asegurar error de estado estable igual a cero es necesario que el controlador
tenga un integrador, con esta condicin, el denominador del controlador
cumple con la igualdad:

Con la adicin del integrador se obtienen


parmetros desconocidos

ecuaciones y el controlador tendr


. La solucin de orden mnimo se

obtiene haciendo:

En este caso los parmetros del controlador se obtienen con la ecuacin:

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

A continuacin, a modo de ejemplo, se calcula un controlador por asignacin de


polos para un sistema discreto con funcin de transferencia dada por:

% STR
% Se debe escribir el sistema en potencias negativas de z
clc
n1=input('Entre el numerador del sistema discreto n1=');
d1=input('Entre el denominador del sistema discreto d1=');
m=input('Entre el valor de m=');
d=input('Entre el valor del retardo en periodos de muestreo d=');

polos=2*m+d;
fprintf('Entre %i polos \n',polos)
p0=input('Entre los polos deseados especificados p0=')
ec=poly(p0); % Ecuacin caracterstica deseada
S=[1 0 0 0 0 0;d1(2) 1 0 n1(1) 0 0;d1(3) d1(2) 1 n1(2) n1(1) 0;0 d1(3)
d1(2) 0 n1(2) n1(1);0 0 d1(3) 0 0 n1(2);1 1 1 0 0 0]

L1=[ec(2:length(d1))-d1(2:length(d1))];
L2=[ec((length(d1)+1):length(ec))];
L=[L1 L2 -1]'
param=(inv(S))*L;
nc=[param((m+d+1:length(param)))]'
dc=[1 [param(1:m+d)]']
disp('El controlador es:')
printsys(nc,dc,'z')
sim('STR1')
Para simular el sistema en SIMULINK realice el diagrama de la figura 3.1 y
gurdelo con el nombre STR1. Seleccione como periodo para el generador de
pulso 30 seg y amplitud unitaria.
Como trabajo de la prctica, se debe modificar el programa anterior para hacer
posible el diseo del controlador y la

simulacin de cualquier sistema sin

necesidad de entrar manualmente la matriz S.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

nc
Pulse
Generator

Add

n1

dc

d1

-1
Z

Discrete Filter 1

Discrete Filter

Integer Delay

Figura 3.1 Implementacin del controlador en SIMULINK

Scope

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRCTICA N 4
CONTROLADORES DE MINIMA VARIANZA

Objetivo
Con esta prctica se pretende que el alumno aplique los conceptos tericos que
le permitan abordar el diseo controladores de mnima varianza a partir del
conocimiento del modelo del sistema y el modelo de la perturbacin.
Producto final
Generar un programa en MATLAB que permita calcular, para el proceso
seleccionado, controladores de mnima varianza: MVR1 con factor de ponderacin
r=0.05, MVR2 y MVR3. El programa, en conjunto con el SIMULINK, debe permitir
la simulacin del sistema con la ley de control obtenida.
Para el regulador MVR3, aadir un trmino de accin integral que elimine el error
en rgimen permanente. Probar con distintos valores de . Comentar las
respuestas obtenidas.
NOTA: Se debe presentar un informe de la prctica realizada que incluya las
respuestas obtenidas as como los comentarios detallados pertinentes a cada uno
de los controladores.
Realizar el esquema SIMULINK correspondiente al sistema ARMAX en lazo
cerrado (ver figura 4.1). Simular tomando como entrada un generador de pulsos
con amplitud uno, periodo seleccionado segn el proceso analizado y visualizar la
entrada, la salida del controlador y la salida del sistema. Para representar las
funciones de transferencia (del proceso, del regulador y del filtro del ruido) se
utilizan bloques Discrete Filter, que permiten expresar las mismas en potencias
negativas de z. El bloque Simulink que proporciona un ruido blanco se encuentra
en la categora Sources y se denomina Band- Limited white noise. Un parmetro
determinante de este ltimo bloque es Power Noise, que de alguna forma
determina la amplitud del mismo. Para tener una amplitud de ruido aceptable se
fija el valor del mismo a 0.00005. El esquema, por tanto, queda de la siguiente
forma:

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

C(z)
Band -Limited
White Noise

A(z)
Discrete Filter 3

C(z)

Pulse
Generator

Scope

B(z)

FB(z)
Discrete Filter

A(z)
Add

Add 1

Discrete Filter 2
Discrete Filter 1
G(z)
FB(z)

Figura 4.1 Controlador de mnima varianza


MARCO TERICO
Controlador de mnima varianza: El controlador de mnima varianza tiene como
objetivo minimizar el efecto de las perturbaciones sobre la salida.
Este tipo de controlador puede englobarse dentro de los de sntesis ptima, ya que
se utiliza la minimizacin de un ndice de coste como criterio de diseo.
La estrategia control consiste en calcular la seal de control
disponibles en ese instante o sea

con los valores


, de tal

forma que se minimice uno de los siguientes criterios:

En donde:

, es el valor de consigna o referencia.

Si se supone que sobre el sistema actan perturbaciones estocsticas, el proceso


estar descrito por un modelo ARMAX de la forma (ver figura 4.1):

Donde:

Controlador de mnima varianza MVR3: Utilizando la ecuacin 4.1 y la


identidad:

En donde:

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Se obtiene la siguiente ecuacin para el clculo del controlador MVR3:

Eliminacin del offset: El controlador de mnima varianza presenta offset (Error


de estado estable) ante cambios en la referencia cambios en la perturbacin,
para eliminar el offset se puede adicionar al controlador un integrador as, la
ecuacin 3. 6 se puede escribir en la forma:

Control de mnima varianza con seguimiento de referencias (MVR2):


Utilizando la ecuacin 4.2 y la identidad dada en la ecuacin 4.5 Se obtiene la
siguiente ecuacin para el clculo del controlador MVR2:

Controlador de mnima varianza ponderado: Utilizando la ecuacin 4.3 y la


identidad dada en la ecuacin 4.5 Se obtiene la siguiente ecuacin para el clculo
del controlador MVR1:

Los parmetros correspondientes a

) se pueden obtener a partir de

la expresin:

|-------d--------|-----m-----|

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

A continuacin se da la base de un programa en MATLAB que permite calcular y


simular la respuesta del sistema con un controlador MV3. Para el informe de la
prctica complementar el programa para calcular los controladores MV2 y MV1 a
partir del conocimiento

de

. Para implementar la

simulacin, monte en SIMULINK el diagrama de la figura 4.1 y gurdelo como


minimavar11.

Realice

las

modificaciones

necesarias

para

simular

controladores MV1 y MV2


% Controlador de Mnima Varianza
B=input('Entre el numerador del sistema B=');
A=input('Entre el denominador del sistema A=');
C=input('Entre el numerador de la perturbacin C=');
m=input('Entre el valor de m=');
d=input('Entre el retardo d=');
C1=[C zeros(1,m+d)];
% calculo del vector F
F = zeros(1,d+1);
F(1) = 1;
for i = 2:d+1
F(i) = C1(i);
for j = 1:i-1
F(i) = F(i) - F(j)*A(i-j+1);
end;
end;
% calculo del vector G
G = zeros(1,m);
for i = 1:m

%m+1

G(i) = C1(d+i+1);
for j = 1:d+1
if i+d-j+2 <= length(A)
G(i) = (G(i)- F(j)*A(i+d-j+2));
end;

los

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

end;
end;
G=G
F=F
% calculo del vector FB
FB = conv(F,B);%clculo del vector de parmetros
minimavar11

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRCTICA N 5
CONTROLADOR PI ADAPTATIVO POR ASIGNACIN Y CANCELACIN DE
POLOS

Objetivo
Con esta prctica se pretende que el alumno aplique los conceptos tericos que
le permitan abordar el diseo controladores PI por asignacin y cancelacin de
polos para sistemas cuya dinmica se describe mediante un modelo de primer
orden con retardo
Producto final
Generar un programa en MATLAB que permita calcular, para el proceso
seleccionado, un controlador PI por asignacin y cancelacin de polos segn la
teora que se presenta a continuacin.

MARCO TERICO
Si la dinmica del sistema se aproxima a la de un sistema de primer orden con
retardo de la forma:

El modelo discreto correspondiente para dicho sistema es:

Para el diseo, se asume que la funcin de transferencia del controlador PI toma


la forma:

Procedimiento: seleccionar el cero del controlador de modo que cancele el polo


de la planta, es decir, hacer
La ecuacin caracterstica del sistema en lazo cerrado es:

Si al sistema en lazo cerrado se le condiciona a que tenga un polo estable en


, entonces, al evaluar

en

se obtiene:

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Despejando q0 resulta:

Entonces, conociendo

del modelo, los parmetros

del controlador

pueden calcularse especificando un polo dominante en lazo cerrado en

que

ha de cancelarse con el cero del controlador.


Este mtodo de diseo de controladores PI se recomienda especialmente cuando:

En donde T es el periodo de muestreo del sistema.


Para asignar el polo dominante se recomienda que la constante de tiempo del
sistema en lazo cerrado este dentro del rango:

El polo deseado se calcula con la ecuacin:

En donde

es la constante de tiempo deseada para el sistema en lazo cerrado y

el periodo de muestreo.
A continuacin se presenta un programa en MATLAB que permite el diseo del
controlador PI por asignacin y cancelacin de polos y la simulacin del sistema
con el controlador calculado.
% Controlador por PI por cancelacin y asignacin de polos.
clc
n1=input('Entre el numerador n1=');
d1=input('Entre el denominador d1=');
d=input('Entre el retardo en periodos de muestreo d=');
p=input('Entre el polo deseado p=');
k=d1(2);
qo=(p^d)*(1-p)/(n1(1+d)*p+n1(2+d));
nc=[qo qo*k];
dc=[1 -1];

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

disp('El controlador es:')


printsys(nc,dc,'z')
[ns,ds]=series(nc,dc,n1,d1);
[nw,dw]=cloop(ns,ds,-1);
dstep(nw,dw)
title('Respuesta con el controlador')
grid

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRCTICA N 6
CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC).

Objetivo
Con esta prctica se pretende que el alumno aplique los conceptos tericos que
le permitan abordar el diseo Controladores con Modelo de Referencia (MRAC)
tanto continuos como discretos.
Producto final
a) Para el sistema continuo: Implementar en SIMULINK los diagramas dados en la
figura 6.1 y 6.2 y simular el modelo del proceso seleccionado al principio del curso
aproximndolo a un sistema de primer orden y a uno de segundo orden.
Para el sistema de primer orden seleccionar

que

conclusiones se pueden obtener sobre la adaptabilidad del proceso al modelo de


referencia con respecto al valor de

Para el sistema de segundo orden seleccionar diferentes ternas de valores para


y

y explicar como influyen dichos valores en la adaptabilidad del proceso

al modelo de referencia.
b) Para el sistema discreto: calcular para el proceso seleccionado, Controladores
MRAC utilizando diferentes modelos de referencia discretos tanto de primer orden
como de segundo orden que puedan representar la dinmica adecuada para el
buen control del proceso. Simular para cada modelo de referencia la respuesta
que se obtiene ante una seal en escaln aplicada en la referencia.
Recordar que el modelo de referencia debe tener ganancia unitaria y que se
recomienda que:

, en donde

es la constante de tiempo de lazo

abierto del sistema que se va a controlar.

MARCO TERICO
En esta estrategia de control se selecciona como referencia un modelo

que

cumpla con las condiciones deseadas para el funcionamiento adecuado de la


planta y se desarrolla un mecanismo de control que permita que la planta siga el

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

modelo escogido. No es necesario un conocimiento extensivo de la planta, pero si


es necesaria la escogencia del modelo adecuado para lograr la salida deseada. El
modelo de referencia que se utiliza es usualmente lineal.
Control por modelo de referencia para un sistema de primer orden.
Sea el sistema de primer orden:

Si se toma como modelo de referencia:

La ley de control para el sistema, utilizando la teora de estabilidad de Lyapunov


es:

En donde:

La figura 6.1 muestra como se implementa el MRAC para el sistema de primer


orden.

ym

5
s+5
R

Modelo de Ref
u

yp

to

0.8s+1
Proceso

1
s
So
-2

1
s

Figura 6.1 MRAC para sistema de primer orden.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Control por modelo de referencia para un sistema de segundo orden.


Sea el sistema de segundo orden:

En donde

son parmetros del proceso variables en el tiempo.

Sea el modelo de referencia:

Se asume como ley de control para el sistema:

En donde:

La figura 6.2 muestra como se implementa el MRAC para el sistema de segundo


orden.
r

ym

s2 +1.6s+1
1
s

-2

q1
u

yp

s2 +2s+4

1
s

qo

1
s

du/dt

du/dt

Figura 6.1 MRAC para sistema de segundo orden.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Control por modelo de referencia para un sistema discreto: Al igual que en los
sistemas continuos, la idea bsica del control con modelo de referencia MRAC,
para sistemas discretos, es que el proceso con funcin de transferencia:

Con:

Siga el modelo:

En donde:

Mediante la aplicacin de la ley de control:

En donde:

La figura 6.3 muestra el diagrama en bloques del sistema de control con modelo
de referencia propuesto.

Figura 6.3 Control con modelo de referencia

La funcin de transferencia en lazo cerrado para el sistema de la figura 6.3 es:

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

El procedimiento para el diseo es el siguiente:


1. Seleccionar el modelo de referencia adecuado.
2. Reescribir el polinomio

En donde:

del proceso en la forma:

: Contiene los ceros estables del proceso.


: Contiene los ceros inestables del proceso.

3. Los ceros estables del proceso se incluyen en el polinomio

4. Los ceros inestables del proceso deben ser ceros de

es decir:

, es decir, ceros

de
5. Si el grado de

seleccionado es menor que el grado de

despus de la cancelacin de

, el lado derecho de

la ecuacin 6.10 se multiplica y divide por el polinomio


6. Los polinomios

quedan deteminados por las

ecuaciones:

NOTA: En caso de que el sistema tenga solo ceros estables se considera que
, en este caso la ley de control toma la forma:

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRCTICA N 7
CONTROL ADAPTATIVO CON GANANCIA PROGRAMABLE

Objetivo
Con esta prctica se pretende que el alumno aplique los conceptos tericos que
le permitan abordar el diseo Controladores con ganancia programable (Gain
scheduling) e implemente los controladores diseados en el proceso seleccionado.
Producto final: Tomando como base el proceso seleccionado y los modelos
obtenidos para cada punto de operacin, genere en MATLAB un programa que
permita calcular controladores PI con ganancia programable utilizando el criterio
IAE. El programa debe recibir los puntos de operacin, los diferentes modelos
correspondientes a cada punto de operacin, calcular los parmetros del
controlador para cada punto de operacin y obtener las ecuaciones de regresin
que relacionan los puntos de operacin con los parmetros del controlador

Finalmente, se debe simular el sistema de control con el controlador adaptativo


obtenido. Para este caso utilice tanto el sistema continuo como el sistema discreto
para la simulacin.

MARCO TERICO
La tcnica de la ganancia programable es un acercamiento al control de sistemas
no lineales que utiliza una familia de controladores lineales, para proporcionar el
control satisfactorio en diversos puntos de operacin del sistema.
Este enfoque asume que el sistema se puede representar mediante un modelo
parametrizado por ciertas variables, llamadas variables de tabulacin o de
programacin (scheduling variables), de modo que cuando estas variables
asumen un valor constante se obtiene un punto de funcionamiento. Para sintonizar
el controlador adecuado se utilizan una o ms s de las variables de programacin.
En este caso, se linealiza el sistema alrededor de distintos puntos de operacin
de inters, obtenindose una familia de modelos lineales para la cual se disea

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

una familia de controladores lineales. Luego, se implementa el esquema de control


con un controlador cuyos parmetros son cambiados acorde a los valores que
toman las variables de programacin, que debern monitorearse continuamente.
La literatura no documenta reglas generales para el diseo de controladores con
ganancia programable. Sin embargo, se pueden establecer los siguientes pasos:
Determinar las variables de programacin: Estas variables deben reflejar las
condiciones de operacin de la planta y permitir establecer expresiones simples
que relacionen los parmetros del controlador con las variables de ajuste. Esto se
hace normalmente mediante la identificacin fsica del sistema.
Obtener el modelo del proceso para diferentes puntos de operacin: estos
puntos deben estar parametrizados por las variables de programacin. Si el
sistema es no lineal se linealiza alrededor de dichos puntos.
Calcular los parmetros del controlador para los diferentes puntos de
operacin: Se calculan los parmetros del controlador para un determinado
nmero de condiciones de trabajo, en funcin de las variables de programacin,
empleando algn mtodo de diseo apropiado. El controlador se calibra o
sintoniza para cada condicin de operacin.
Seleccionar el controlador en funcin de las variables de programacin:
segn el punto de operacin en que se encuentre el proceso, se selecciona el
controlador

diseado

para

dicho

punto

de

operacin.

Para

evitar

los

inconvenientes que puede causar la conmutacin de un controlador a otro se


puede generar una ecuacin de regresin que permita calcular los parmetros del
controlador en funcin de las variables de programacin.
En la figura 7.1 se presenta un diagrama bsico de la tcnica de control por
ganancia programable.

Parmetros del
Controlador

Programacin
Precalculada

Controlador
SP

Punto de
Trabajo

Planta
Seal de
Control

Salida

Figura 7.1 Control con ganancia programable.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Como ejemplo para el diseo del controlador con ganancia programable se


presenta el de un intercambiador de calor para el cual se obtuvieron modelos de
primer orden con retardo para diferentes zonas de operacin. Se discretizaron los
modelos y para cada uno de ellos se calcul un controlador PI utilizando el mtodo
de Ziegler-Nichols. Los resultados se dan en la tabla 7.1. El periodo de muestreo
es T=7.5 seg.
Modelos continuo y discreto:

Controlador PI:

Formulas empleadas para el clculo del controlador:

Tabla 7.1 Controladores obtenidos

22

1.5261

-1.2592

40

1.8289

-1.5233

52

1.6498

-1.3781

67

2.2663

-1.8818

78

1.7412

-1.4606

Las ecuaciones para el clculo de


controlador son:

y de

que se han de utilizar para estimar el

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Los datos presentados en la tabla 7.1 y las ecuaciones de regresin para estimar
los parmetros

del controlador, se obtienen a partir de los valores de los

puntos de operacin y de los modelos de primer orden con retardo


correspondientes. Para

ello se utiliz el programa en MATLAB que se da a

continuacin:
% GANANCIA PROGRAMABLE
% El programa calcula un controlador PI segn Ziegler-Nichols
% Para este caso, el es de primer orden con retardo POR
% Para cada punto de operacin se debe estimar el modelo
correspondiente.
%

Los

puntos

de

operacin

son

los

valores

respuesta %de la variable en cada escaln.


T=input('Entre los puntos de operacion V=');
L=length(T);
N=0;
while N<L
N=N+1
n=input('Entre el numerador n=');
d=input('Entre el denominador d=');
R=input('Entre el retardo R=');
TM=input('Entre el periodo de muestreo TM=');
[a,b,c,d1]=tf2ss(n,d);
[ad,bd,cd,dd]=c2dt(a,b,c,TM,R);
[nd1,dd1]=ss2tf(ad,bd,cd,dd);

medios

de

la

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

k=length(nd1);
for j=1:k
if

(abs(nd1(j)))<10^(-8)
nd1(j)=0;

else
nd1(j)=nd1(j);
end
end
printsys(nd1,dd1,'z')
theta=R+TM/2;
kc=0.9*d(1)/(n*theta);
ti=3.33*theta;
qo=kc*(1+TM/(2*ti))
q1=-kc*(1-TM/(2*ti))
qo1(N)=qo
q11(N)=q1
end
disp('Los coeficientes para el calculo de qo sn:')
coeqo=polyfit(T,qo1,4);
disp('Los coeficientes para el calculo de q1 son:')
coeq1=polyfit(T,q11,4);
T1=50:95;
qo2=polyval(coeqo,T1);
q12=polyval(coeq1,T1);
figure(1)
plot(T1,qo2,T,qo1,'*')
title('VALORES DE qo')
xlabel('T (C)')
ylabel('qo')
grid
figure(2)
plot(T1,q12,T,q11,'*')

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

title('VALORES DE q1')
xlabel('T (C)')
ylabel('q1')
grid

La figura 7.2 muestra la forma de simular el sistema con ganancia programable


con el controlador PI. Los polinomios para el clculo de

se incluyen en el

bloque f(u). Para disminuir el sobreimpulso los valores estimados para

se

multiplicaron por 0.75

r(k)

m(k)

1.5

42s+1

e(k)

20

-1
Z
-K-

qo

f(u)

To Workspace

-1
Z
e(k-1)

q1
-K-

f(u)

Figura 7.2 Simulacin para el ejemplo propuesto.

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

PRACTICA N 8
CONTROL PREDICTIVO

Objetivo: En el desarrollo terico del tema, se ha estudiado que el clculo de un


Controlador Predictivo Generalizado (GPC), se realiza en base a unos parmetros
de diseo: horizontes de prediccin y control, parmetros de ponderacin en el
ndice de coste, etc. Dichos parmetros condicionarn el comportamiento del
mismo.
Mediante la realizacin de esta prctica se pretenden tratar los siguientes
aspectos:
Diseo: Llegar a deducir cmo influye cada uno de estos parmetros en el
controlador y cul es su efecto sobre la accin de control y sobre la variable de
salida controlada del sistema. Estos dos aspectos son muy importantes a la hora
de disear este tipo de controladores.
Simulacin: Es interesante poder comprobar en todo momento si el controlador
se comporta adecuadamente incluso con los fenmenos que se producen en los
procesos reales (discrepancia entre modelo y proceso real).
Producto final: Se debe entregar un informe con todos los valores de los
reguladores calculados y con las grficas de simulacin que se crean oportunas.
Asimismo se debe adjuntar la respuesta razonada a todas las preguntas
propuestas y todos aquellos aspectos de la prctica que se deseen hacer notar.
MARCO TERICO
Control Predictivo Generalizado (GPC)
La idea bsica del GPC es calcular una secuencia de futuras acciones de control
de tal forma que minimice una funcin de coste multipaso. El ndice a minimizar es
una funcin cuadrtica que mide por un lado, la diferencia entre la salida predicha
del sistema y una cierta trayectoria de referencia hasta el horizonte de prediccin,
y por otro el esfuerzo de control necesario para obtener dicha salida.
Formulacin del control predictivo generalizado: El GPC utiliza un Modelo
Autorregresivo de Media Mvil (Controller Auto-Regressive Moving-Average

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

CARMA). Para aplicaciones industriales en las que las perturbaciones son noestacionarias resulta ms conveniente el uso de un modelo CARMA integrado,
dando lugar al CARIMA, que viene descrito por:

En donde:

Para simplificar se considera que

, as la ecuacin 8.1 se puede

escribir en la forma:

El algoritmo del Control Predictivo Generalizado consiste en aplicar una secuencia


de seales de control que minimice una funcin de coste de la forma:

En donde:
: Es la prediccin ptima de la salida del proceso pasos adelante.
: Horizonte mnimo de coste. (Horizonte mnimo de prediccin).
: Horizonte mximo de coste. (Horizonte mximo de prediccin).
: Horizonte de control.
y

:Secuencias de ponderacin. En la prctica

como parmetro de diseo.


: Es la trayectoria futura de referencia o Set-point.
La ecuacin del sistema se puede expresar en la forma:

Donde:

se toma

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Los dos ltimos trminos de la ecuacin 8.4 dependen solo del pasado por lo
tanto, pueden agruparse en un solo trmino , dando lugar a:

Obtencin de la ley de control:

Debido a que en el instante

solo se aplica al sistema de control la salida

solo interesa el primer elemento del vector . Por lo tanto, en la ecuacin 8.6 slo
interesa la primera fila de la matriz

as, la ley de control para el

GPC queda:

Siendo

, la primera fila de

Realizacin de la prctica: Para calcular el Controlador Predictivo Generalizado,


se da la funcin Matlab descrita a continuacin:
Function calcugpc
[H,R,S,TpRDelta]=calcugpc(BB,AA,T,param_gpc)
Siendo:
BB un vector que contiene los coeficientes del numerador del proceso en
-1

potencias decrecientes de z (incluido el retardo estructural del proceso).


AA un vector que contiene los coeficientes del denominador del proceso en
-1

potencias decrecientes de z .
Param_gpc es un vector que contiene:
o param_gpc(1) = N1
o param_gpc(2) = N2
o param_gpc(3) = Nu
o param_gpc(4) = coeficiente i de ponderacin de los errores

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

o param_gpc(5) = coeficiente j de ponderacin del esfuerzo de control


o param_gpc(6): si es igual a 0, se asume que no se conocen las
referencias futuras (w(k) = w(k+1) = w(k+2) = .= w(k+N)). En el caso
de que sea igual a 1, se asume que se conocen las referencias futuras
Los tres ltimos parmetros no son obligatorios y en caso de omisin de los
mismos se asume:
o param_gpc(4) = 1
o param_gpc(5) = 0
o param_gpc(6) = 0
Los valores que devuelve la funcin son:
H: es un escalar si no se conocen las referencias futuras. En caso contrario es
un vector que contiene los coeficientes de un polinomio en potencias
crecientes de z.
-1

R: es un vector que contiene los coeficientes del polinomio R(z ) en potencias


-1

crecientes de z .
-1

S: es un vector que contiene los coeficientes del polinomio S(z ) en potencias


-1

crecientes de z .
-1

-1

TpRDelta: es un vector que contiene los coeficientes de (T(z ) + R(z ))


Simulacin del bucle de control
Para simular el bucle de control construir el diagrama de bloques del controlador
(ver figura 8.1) en un diagrama Simulink al cual se aadir el resto del sistema (ver
figura 8.2).

Figura 8.1. Diagrama de bloques del controlador GPC

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

Figura 8.2. Esquema bsico para simulacin


Calcular y simular un GPC para el proceso seleccionado con cada uno de los
siguientes casos. Se asume que no se conocen las referencias futuras y que

Caso
1
2
3
4
5

N1
1
1
1
1
1

N2
10
15
20
10
20

Nu
10
15
20
10
20

i
1
1
1
1
1

i
1 , 5 y 10
1 , 5 y 10
1, 5 y 10
1, 10 y 100
1 ,10 y 100

PREGUNTAS
Desde el punto de vista de la accin de control generada y de la salida del
proceso:
Cul es el efecto de aumentar el horizonte de control N u?
Cul sera el efecto de variar el parmetro de ponderacin
Con que valor de

se observa mejor respuesta en el sistema de control?

Laboratorio de Control Avanzado


Luis Edo Garca Jaimes

INFORME FINAL
El informe incluye:
Un CD con los programas en MATLAB en los cuales se pueda realizar la
simulacin del sistema seleccionado con cada uno de los controladores analizados
en las diferentes prcticas realizadas.
Un artculo tipo IFAC en el cual se describa en forma muy resumida, la teora
bsica propuesta en cada una de las prcticas incluyendo los controladores, las
ecuaciones de clculo de los mismos y las grficas resultantes de la simulacin
del sistema con el controlador. Este artculo debe tener como mximo diez
pginas. Consultar el formato IFAC para escribir artculos cientficos.
Implementacin de las prcticas en el proceso real: La implementacin de
los controladores en el proceso real no conlleva informe pero forma parte de la
evaluacin. Las respuestas obtenidas en el control del proceso real se pueden
incluir en el artculo en lugar de las respuestas simuladas.
BIBLIOGRAFIA
Astrm, K. Wittenmark, B. Adaptive Control. Addison Wesley, 1989.
Bordons, C. Control Predictivo: metodologa, tecnologa y nuevas perspectivas.
Departamento de Ingeniera de Sistemas y Automtica. Universidad de Sevilla.
2000
Camacho,E. Bordons, C. Model Predictive Control. Springer Verlag, 1999.
Franklin, G. Powell, D. Digital Control of Dynamic Systems. Addison Wesley,
1990.
Garca, J Luis. Sistemas de control Avanzado. Notas de clase. Politcnico
Colombiano JIC. 2009.
Iserman,R. Lachman,K. Adaptive Control Systems. Prentice Hall 1991.
Ollero, A. Control por Computador. Descripcin interna y diseo ptimo.
Marcombo Boixareu Editores, 1991.
Phillips, C. Nagle, H. Digital control systems. Anlysis and Desing. Ediciones G.
Gili. 1997.
Rodriguez, R. Lopez, M. Control Adaptativo y Robusto. Universidad de
Sevilla.1996.

Vous aimerez peut-être aussi