Sei sulla pagina 1di 13

Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

INDICE
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

INTRODUCCION

El control predictivo integra disciplinas como el control óptimo, control estocástico,


control de procesos con retardo de tiempo, control multivariable, control con
restricciones.

El control predictivo tiene como objetivo resolver de forma efectiva, problemas de


control y automatización de procesos industriales que se caractericen por presentar un
comportamiento dinámico complicado, multivariable, y/o inestable. La estrategia de
control en que se basa este tipo de control, utiliza el modelo matemático del proceso a
controlar para predecir el comportamiento futuro de dicho sistema, y en base a este
comportamiento futuro puede predecir la señal de control futura.

El control predictivo basado en modelo se puede definir como una estrategia de control
que se basa en la utilización de forma explícita de un modelo matemático interno del
proceso a controlar (modelo de predicción), el cual se utiliza para predecir la evolución
de las variables a controlar a lo largo de un horizonte temporal de predicción
especificado por el operador, de este modo se puede calcular las variables manipuladas
futuras (señal de control futura) para lograr que en dicho horizonte, las variables
controladas converjan en sus respectivos valores de referencia.

Merece la pena destacar que el control predictivo es una técnica muy potente que
permite formular controladores para sistemas complejos y con restricciones. Esta
potencia tiene un precio asociado: el coste computacional y la sintonización del
controlador. Recientes avances en el campo del MPC proveen un conocimiento más
profundo de estos controladores, obteniéndose resultados que permiten relajar estos
requerimientos. Así por ejemplo, se han establecido condiciones generales para
garantizar la estabilidad (Mayne 2001), condiciones bajo las cuales se puede relajar el
carácter optimal del controlador garantizando su estabilidad (Scokaert & Mayne 1998).
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

CAPÍTULO I

1. CONTROL PREDICTIVO
1.1. CONTROL PREDICTIVO BASADO EN MODELOS
Es un algoritmo de control que computa una secuencia temporal discreta de
las variables manipuladas a futuro con el objetivo de optimizar el
comportamiento de la planta o proceso a controlar.
El control predictivo basado en modelos, fue concebido para dar solución al
control de plantas químicas y plantas de potencia aunque actualmente puede
encontrarse en diversas áreas: metalúrgica, automotriz, procesamiento de
pulpa y papel, alimentos, robótica, etc.
El control predictivo es un campo muy amplio de métodos de control
desarrollados en tornos a ciertas ideas comunes:
 Uso explícito de un modelo para predecir la salida del proceso en
futuros instantes de tiempo (horizonte).
 Calculo de señales de control minimizando una cierta función
objetivo.
 Estrategia deslizante: en cada instante el horizonte se va desplazando
hacia el futuro.
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

1.2. VENTAJAS Y DESVENTAJAS DE CONTROL PREDICTIVO

Entre las ventajas se pueden citar:

 Formulación en el dominio del tiempo, lo cual le permite ser una


técnica flexible, abierta e intuitiva.
 Permite tratar con sistemas lineales y no lineales, monovariables y
multivariables utilizando la misma formulación para los algoritmos
del controlador.
 La ley de control responde a criterios de optimización.
 Permite la incorporación de restricciones en la síntesis o
implementación del controlador.
 Brinda la posibilidad de incorporar restricciones en el cálculo de las
actuaciones.

Entre las desventajas se pueden citar:

 Requiere el conocimiento de un modelo dinámico del sistema


suficientemente preciso.
 Requiere un algoritmo de optimización, por lo que solo se podría
implementarse por medio de una computadora.
 Requiere un alto coste computacional, lo que hace difícil su
aplicación a sistemas rápidos.
 Hasta hace relativamente poco, no se podía garantizar la estabilidad
de los controladores, especialmente en el caso con restricciones. Esto
hacía que el ajuste de estos controladores fuese heurístico y sin un
conocimiento de cómo podían influir los parámetros en la estabilidad
del sistema.

Usualmente se suele considerar un horizonte de control 𝑁𝑢 < 𝑁, de manera


que para los instantes futuros más allá del horizonte de control se supone que
la señal de control es constante. Estos conceptos se ilustran en la figura 1.
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

1.3. PRINCIPIOS DEL CONTROL PREDICTIVO BASADO EN


MODELOS

El control predictivo pronostica la salida de la planta en un escenario de


tiempo de duración 𝑁2 (el horizonte de tiempo 𝑁2 ). Tal precisión depende de
las salidas y entradas pasadas, pero también del escenario del control futuro.
La obtención del modelo que refleje lo más fielmente posible la evolución
dinámica de la planta, es la llave del éxito en las aplicaciones.
La notación usada para derivar los principios del control predictivo es la
siguiente:
 𝑡, representa el tiempo discreto (𝑡 = 0,1,2, …).
 𝑢(𝑡), denota la entrada del proceso y constituye la variable
manipulada o señal de control.
 𝑦(𝑡), es la salida del proceso y constituye la variable controlada.
 𝑤(𝑡), representa la trayectoria deseada (“set point).
 𝑟(𝑡), denota la trayectoria de referencia.
 𝑢(𝑡 + 𝑘⁄𝑡 ), denota los valores futuros de la entrada del tiempo 𝑡 + 𝑘
postulados en el tiempo 𝑡, o simplemente, dado 𝑡.
 𝑦(𝑡 + 𝑘⁄𝑡 ), denota los valores futuros de la salida basado en las
mediciones disponibles en el tiempo 𝑡:
{𝑦(𝑡), 𝑦(𝑡 − 1), … , 𝑢(𝑡 − 1), 𝑢(𝑡 − 2), … }
Y en los valores futuros de la entrada postulados en el tiempo 𝑡:
{𝑢(𝑡⁄𝑡), 𝑢(𝑡 + 1⁄𝑡 ), … }

Con relación a la siguiente figura 2, el principio del control predictivo se


caracteriza por la siguiente estrategia:
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

 En cada tiempo 𝑡, la salida del proceso 𝑦 = (𝑡 + 𝑘) se pronostica


sobre un horizonte 𝑘 = 1 … 𝑁2. Los valores pronosticados se
denotan como 𝑦(𝑡 + 𝑘⁄𝑡) y a 𝑁2 se le denomina el horizonte de
predicción. La predicción se realiza mediante el modelo de proceso,
el cual se asume que está disponible. El pronóstico en cuestión
depende de las entradas y salidas pasadas, pero también del escenario
del control futuro 𝒖(𝑡 + 𝑘⁄𝑡), 𝑘 = 0, … , 𝑁2 − 1; es decir, de las
ecuaciones de control que se intentan aplicar a partir del tiempo 𝑡.
 Una trayectoria de referencia 𝑟(𝑡 + 𝑘⁄𝑡 ), 𝑘 = 1, … , 𝑁2 , que se inicia
en 𝑟(𝑡⁄𝑡) = 𝑦(𝑡) y se define sobre el horizonte de predicción. Esta
trayectoria describe la forma de guiar la salida del proceso desde su
valor actual 𝑦(𝑡) hasta la trayectoria deseada 𝑤(𝑡).
 El vector de control 𝒖(𝑡 + 𝑘⁄𝑡 ), 𝑘 = 0, . . . , 𝑁2 − 1, se calcula para
minimizar una función de costo especifica que depende del error del
control predictivo 𝑟(𝑡 + 𝑘⁄𝑡) − 𝑦(𝑡 + 𝑘⁄𝑡 ), 𝑘 = 1, … , 𝑁2 .
 Al proceso real solo se aplica el primer elemento del vector del
control optimo calculado 𝒖(𝑡 + 𝑘⁄𝑡), 𝑘 = 0, . . . , 𝑁2 − 1, mientras
que se dejan de lado los demás elementos de dicho vector. En el
próximo instante de muestreo, todas las secuencias temporales se
desplazan para dar cabida a las nuevas mediciones de la salida 𝑦(𝑡 +
1) y a las del vector de control 𝒖(𝑡 + 𝑘 + 1⁄𝑡 + 1), cuyo primer
elemento del vector 𝒖(𝑡 + 𝑘⁄𝑡), previamente calculado. Este
principio se denomina estrategia del “horizonte retroactivo”.
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

La estrategia de control predictivo comprende: el proceso de predicción a


través de un modelo del proceso, la especificación de la trayectoria de
referencia, la estructuración de la futura ley de control, la definición de la
función de costo (y su restricciones) y el cálculo del escenario de control
óptimo. Tal estrategia puede ser visualizada en el diagrama de bloques
mostrado en la figura 3.

2. EL MODELO DE PROCESO
El proceso de una entrada y una salida, probablemente no lineal, puede
modelarse como:
𝑦(𝑡) = 𝑥(𝑡) + 𝑛(𝑡)
Tal como se ilustra en la siguiente figura 4, donde 𝑢(𝑡) es la salida medible del
proceso, 𝑢(𝑡) es la entrada al proceso (la señal de control), 𝑥(𝑡) es la salida del
modelo y 𝑛(𝑡) es el disturbio en el proceso.

4
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

2.1. EL DISTURBIO 𝒏(𝒕)

La señal de disturbio 𝑛(𝑡) incluye todos los efectos no deseados en la salida


𝑦(𝑡). Esta señal representa el efecto conjunto de todos los disturbios sobre el
proceso, otras entradas no medibles, ruido de medición, errores de
modelado, incertidumbres, etc. El disturbio 𝑛(𝑡), que es de carácter
estocástico, puede ser modelado mediante un filtro coloreado de la forma:

𝑛(𝑡) 𝐶(𝑧 −1 )
=
𝑒(𝑡) 𝐷(𝑧 −1 )

Donde 𝑧 −1 es el operador de desplazamiento, 𝑒(𝑡) es un ruido blanco no


correlacionado con medida cero, y los polinomios son de la forma:

𝐶(𝑧 −1 ) = 1 + 𝑐1 𝑧 −1 + ⋯ + 𝑐𝑛𝑐 𝑧 −𝑛𝑐

𝐷(𝑧 −1 ) = 1 + 𝑑1 𝑧 −1 + ⋯ + 𝑑𝑛𝑑 𝑧 −𝑛𝑑

El filtro de disturbio debe diseñarse: para eliminar los disturbios en el estado


estable (cuando 𝑧 = 1), como filtro selectivo (para eliminar una determinada
frecuencia) y para incrementar la robustez del sistema en la presencia de
errores de medición. Estructuras típicas de los polinomios de filtro pueden
ser:
𝐶(𝑧 −1 ) = 1 + 𝑐𝑧 −1

𝐷(𝑧 −1 ) = (1 + 𝑑𝑧 −1 )(1 − 𝑧 −1 )

2.2. SALIDA 𝒙(𝒕) DEL MODELO

La señal 𝑥(𝑡) representa el efecto del proceso en la salida 𝑦(𝑡) debido a la


entrada 𝑢(𝑡). De nuevo, 𝑥(𝑡) no es una señal medible. En general, la
relación entre 𝑢(𝑡)y 𝑥(𝑡) puede representarse mediante un modelo dinámico
genérico de la forma:

𝑥(𝑡) = 𝑓(𝑠(𝑡 − 1), 𝑥(𝑡 − 2), … , 𝑢(𝑡 − 1), 𝑢(𝑡 − 2), … )

Donde 𝑓(. ) es una función que puede estructurarse de diversas formas. Es


decir, 𝑓(. ) puede ser una ecuación de diferencias, una red neuronal o una
caja negra con parámetros a ser estimados.
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

3. EL CONTROLADOR PREDICTIVO
3.1.OBJETIVO DEL CONTROLADOR

El objetivo del controlador predictivo es determinar el vector de control


𝒖(𝑡 + 𝑘⁄𝑡), 𝑘 = 0, . . . , 𝑁2 − 1 , que minimice la siguiente función de costo:

𝑁2 𝑁𝑢 −1

𝐽 = ∑ [𝑟(𝑡 + 𝑘⁄𝑡) − 𝑦(𝑡 + 𝑘⁄𝑡 )] 2 + 𝜆 ∑ [∆𝑢(𝑡 + 𝑘⁄𝑡)] 2


𝑘=𝑁1 𝑘=0

Dónde:

∆𝑢(𝑡 + 𝑘⁄𝑡) = 𝑢(𝑡 + 𝑘⁄𝑡) − 𝑢(𝑡 + 𝑘 − 1⁄𝑡 )

Con ∆𝑢(𝑡 + 𝑘⁄𝑡) = 0 para 𝑘 ≥ 𝑁𝑢 . La trayectoria de referencia esta


representada por la ecuación:

𝑟(𝑡 + 𝑘/𝑡) = 𝛼𝑟(𝑡 + 𝑘 − 1/𝑡) + (1 − 𝛼)𝑤(𝑡 + 𝑘/𝑡)

Evaluada para 𝑘 = 1, … , 𝑁2 , con 𝑟(𝑡⁄𝑡) = 𝑦(𝑡).


Los parámetros de diseño son:

 𝑁1 : horizonte de predicción mínimo.


 𝑁2 : horizonte de predicción máximo; por defecto podemos considerar
𝑁2 = 𝑁1 + 1, … , 𝑁1 + 10.
 𝑁𝑢 : horizonte de control; por defecto considerar 𝑁𝑢 = 1.
 𝑁1 , … , 𝑁2 : horizonte de coincidencia; por defecto considerar
𝑁1 (tiempo muerto).
 𝜆: parámetro de ponderación; por defecto considerar cero.
 ∝: parámetro de filtraje; por defecto considerar cero.

Si la trayectoria 𝑤(𝑡) se programa previamente, entonces los valores futuros


𝑤(𝑡 + 𝑘) se pueden emplear para determinar 𝑤(𝑡 + 𝑘⁄𝑡). Es decir, 𝑤(𝑡 +
𝑘⁄𝑡) = 𝑤(𝑡 + 𝑘) para 𝑘 = 1, … , 𝑁2 . Si no deseamos una estrategia de
control predictivo en avance, el valor actual 𝑤(𝑡) se puede usar como un
valor de predicción 𝑤(𝑡 + 𝑘⁄𝑡 ) = 𝑤(𝑡) para 𝑘 = 1, … . , 𝑁2 .

a) La trayectoria de referencia dada constituye un filtro de primer orden


para 𝑤(𝑡). Este filtro se puede representar mediante la siguiente función
de transferencia:
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

𝑟(𝑧) 1−∝ 𝑧(1−∝)


= −1
=
𝑤(𝑧) 1−∝ 𝑧 𝑧−∝

b) El filtro para 𝑤(𝑡) se puede implementar fuera del lazo de control, no


afectando de esta manera a la estabilidad del sistema, pero si
contribuyendo al rechazo del ruido.

CAPITULO II

4. EJEMPLOS DE CONTROL PREDICTIVO

Tenemos un proceso:
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

La constante de tiempo del sistema:

Calculamos los polos en constante de time 1:

Siendo todos los parámetros del sistema, entramos al entorno MPCTOOL donde
podemos graficar la salida del sistema de control predictivo.

Simulamos la planta y nos mostrara el resultado:


Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

El resultado es la evolución de las entradas y la salida con una consigna de 4


donde el sistema alcanza esa consigna.

EJEMPLO 2
Se emplea la ley de control discreta donde el la ley de control del tipo escalar
(𝑁𝑢 = 1) con 𝑁1 = 1 y 𝑁2 = 12.

∑𝑁2
𝑘=𝑁1 𝑔(𝑘)[𝑟(𝑡 + 𝑘 ⁄𝑡 ) − 𝑦𝑙𝑖𝑏𝑟𝑒(𝑡 + 𝑘 ⁄𝑡 )]
∆𝑢 =
∑𝑁2
𝑘=𝑁1 𝑔
2 (𝑘) + 𝜆

% SIMULACION DEL SISTEMA DE CONTROL PREDICTIVO


clear all
% PARAMETROS DEL PROCESO NO LINEAL
Lo = 0.776;
JL = 3.5e-7; bL = 1e-5; Ro = 0.01;
Jm = 1.9062e-6; bm = 1.8338e-6; g = 9.81;
E = 31.035e-3; RR = 7.38; m = 0.06377;
Kact = 14.9; cc = 0.25; Mo = 0.045; % también 0,.01,.020
K = 31.071e-3; n = 19.741; L = 4.64e-3;
B = n^2*bm + bL;
Jeff = n^2*Jm +JL;
M = Jeff + (1/3)*m*Lo^2 + Mo*Lo^2 + (2/5)*Mo*Ro^2;
N = g*Lo*(Mo+m/2);
% MODELO LINEAL CONTINUO DEL PROCESO DE SEGUNDO ORDEN
Ac = [0 1;-N/M -(B + n^2*K*E/RR)/M];
Bc = [0;n*K*Kact/(RR*M)];
Cc = [1 0]; Dc = [0];
% MODELO LINEAL DISCRETO DEL PROCESO DE SEGUNDO ORDEN
T = 0.01; % PERIODO DE MUESTREO
[G,H,C,D]=c2dm(Ac,Bc,Cc,Dc,T,'zoh');
[num,den]=ss2tf(G,H,C,D);
a1 = den(2); a2 = den(3);
b1 = num(2); b2 = num(3);
% HORIZONTES
N1 = 1; N2 =12; Nu =1; % LEY DE CONTROL ESCALAR
% RESPUESTA AL ESCALON
g(1) = b1; g(2) = -a1*b1 + b1 + b2;
for k=3:N2
g(k) = -a1*g(k-1) -a2*g(k-2) + b1 + b2;
end
% CONDICIONES INICIALES
yf(1)=0; yf(2)=0; yf(3)=0; r(1)=0; r(2)=0; r(3) =0;
u(1) =0; u(2) =0; u(3) =0; w(1)=0; w(2)=0; w(3) =0;
q(1) =0; q(2) =0; q(3) =0;
alf = 0.01; lambda = 0.; frec = 0.0063; GW = 1;
MM = 2000;
% LAZO DE CONTROL
for t = 2:MM+2
for k = 1:N2
W(t+k) = GW*sign(sin(frec*(t)));
r(t+k) = alf*r(t+k-1) + (1-alf)*W(t+k);
yf(t+k) = -a1*yf(t+k-1)-a2*yf(t+k-2)+(b1 + b2)*u(t-1);
Control Predictivo

UNIVERSIDAD ANDINA NÉSTOR CÁCERES VELÁSQUEZ

end % yf: RESPUESTA LIBRE


% LEY DE CONTROL
du(t) = (g(1)*(r(t+1)-yf(t+1))+g(2)*(r(t+2)-yf(t+2)) + ...
g(3)*(r(t+3)-yf(t+3))+g(4)*(r(t+4)-yf(t+4)) + ...
g(5)*(r(t+5)-yf(t+5))+g(6)*(r(t+6)-yf(t+6)) + ...
g(7)*(r(t+7)-yf(t+7))+g(8)*(r(t+8)-yf(t+8)) + ...
g(9)*(r(t+9)-yf(t+9))+ g(10)*(r(t+10)-yf(t+10)) + ...
g(11)*(r(t+11)-yf(t+11))+ g(12)*(r(t+12)-yf(t+12)))/...
(g(1)^2 + g(2)^2 + g(3)^2+ g(4)^2 + g(5)^2 + ...
g(6)^2 + g(7)^2 + g(8)^2+ g(9)^2 + g(10)^2 + ...
g(11)^2 + g(12)^2 + lambda);
u(t) = u(t-1) + du(t); % LEY DE CONTROL ACTUAL
% LIMITANDO LA FUERZA DE CONTROL
fu = 1.4;
if(u(t) > 0 & u(t) > fu)
u(t) = fu;
elseif(u(t) < 0 & u(t) < -fu)
u(t) = -fu;
end
% PROCESO LINEAL
q(t+1) = -a1*q(t) -a2*q(t-1) + b1*u(t) + b2*u(t-1);
end
% GRAFICOS
ejex = (3:MM); ejex = ejex*T;
subplot(2,1,1)
plot(ejex,W(3:MM),ejex,q(3:MM)); grid
ylabel('Posicion q(t) (rad)')
xlabel('Tiempo en segundos')
subplot(2,1,2)
plot(ejex,u(3:MM)); grid
ylabel('Control u(t) (voltios)')
xlabel('Tiempo en segundos')
print -f -deps dispred1

Los resultados fueron:

Potrebbero piacerti anche