Depto.

de Ingenier´ de Sistemas y Autom´tica ıa a

APUNTES DE INGENIER´ DE CONTROL IA

´ ANALISIS Y CONTROL DE SISTEMAS EN ESPACIO DE ESTADO ´ IDENTIFICACION DE SISTEMAS CONTROL ADAPTATIVO CONTROL PREDICTIVO

Daniel Rodr´ ıguez Ram´ ırez Carlos Bord´ns Alba o

Rev. 5/05/2005

´ Indice general

Lista de figuras

IX

1. Control de sistemas discretos en el espacio de estados 1.1. Representaci´n de sistemas discretos en el espacio de estados . . . . . . o 1.2. Obtenci´n de la representaci´n de en espacio de estados de sistemas o o discretos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1. M´todo de programaci´n directa . . . . . . . . . . . . . . . . . . e o 1.2.2. M´todo de programaci´n anidada . . . . . . . . . . . . . . . . . e o 1.3. La representaci´n en espacio de estados de un sistema no es unica . . . o ´ 1.4. Resoluci´n de las ecuaciones del espacio de estados . . . . . . . . . . . o 1.4.1. Procedimiento recursivo . . . . . . . . . . . . . . . . . . . . . . 1.4.2. Matriz de transici´n de estados . . . . . . . . . . . . . . . . . . o 1.4.3. M´todo basado en la transformada Z . . . . . . . . . . . . . . . e 1.4.3.1. Procedimiento alternativo para calcular (zI − G)−1 . . 1.5. Discretizaci´n de las ecuaciones de estado continuas . . . . . . . . . . . o 1.6. Controlabilidad y Observabilidad . . . . . . . . . . . . . . . . . . . . . i

1 1

2 3 5 6 7 7 8 9 10 12 15

. . . . . . . . . . . 1. . . . . . . . . . . . . 1. 1. . . . .9. . . . . Transformaci´n de un sistema en formas can´nicas o o . . 1. . . . . . . . . . . . . . . .9. Controlabilidad de la salida completa . . . . . .3. . . . .6. . .8.2. o 1. . . . .4. . .3. 1. . . . . . .3. . . . . .10. . . .2. . . ´ .7. . . . . . .8. . . . .8. . Observador de orden m´ ınimo . . . . . . . . .9. . . . . . . . . o o 1. . . . . . Efectos de la adici´n del observador . . . . . . . . . Comentarios acerca del papel de Ke . . . . o 1. . . . . . . . . . . . . .7. . . . . . . . . . . . . . . . . .1. . . . . . . 15 17 17 19 19 20 20 21 1. . . . . . . . . . .2.2.1.ii ´ INDICE GENERAL 1. . . . . . . . . . .9.2. . . Control Dead-Beat . 1. . . . . . . . . . . . . . . . o 1. Procedimientos para calcular K . . . . . . . . .6.1. 1. . . . . Colocaci´n de polos mediante realimentaci´n del vector de estados . . . . . .8. . .2. .7. . . . Observabilidad . . . Principio de Dualidad . . . . . . . . . . . . . . . Controlabilidad . . Obtenci´n de la forma can´nica observable . . . Condici´n necesaria y suficiente para la colocaci´n arbitraria de o o polos . . . . . . . . . . .1. . . 1. . . . Observador del estado completo . . . . . . . . . . .1. Procedimiento alternativo: la f´rmula de Ackermann . . a 1. . . . . C´lculo de Ke . Control optimo LQR . .8. . . . Procedimiento iterativo para la estimaci´n del estado .2. . . o o 1. . . . 21 22 24 24 27 28 30 32 34 35 36 41 1. .2. . . Observadores del estado . o o 1. . . . . . . . . . . . . . . . 1. . . . . . . . . . . . . Obtenci´n de la forma can´nica controlable . . . . .2. . . .9.6. . .6.9.9. .3. 1. . . . .1. . . . . . . .

. . . . . . . . . Modelos de procesos con ruidos . . .1.2. . . . . . . . . . . . . . .2. . .2. . . . o 3. . . .1. Selecci´n del tipo de modelo .2. . . . . . . . . .1. . .2. . . . .3. . . .2. o 3. . Introducci´n .2. . . . . . . a 2. . . . . . . . . . . . . Planificaci´n de los experimentos . . . . . . . .´ INDICE GENERAL iii 1.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. . . . Introducci´n .2. . . . . . . 3. o 3. . . . . . . . o 3. . Estimaci´n de los par´metros . . . . . . . . . . . . . . 45 45 46 46 48 3. . . . . . . . . . . . . . . . . . . . . . . . . . . .11. . . . . . . .4. . . . . . . . . . . . 3. . . . . . . . . . . . . .6. . . Perturbaciones deterministas a trozos . . . . . . o 3.4. . . .2. . . . . . . Procesos estoc´sticos .1. . . . . . . . . . . . o 2. .5. . . Algunas propiedades . . . o o 1. Modelos de procesos y perturbaciones 2. . . . . .4. Elecci´n de un criterio . . 43 43 2. . . . .2.1. Identificaci´n fuera de l´ o ınea . . . . . . . . 51 51 52 52 53 54 54 54 55 55 57 58 . . . . . . . . . . . . . Validaci´n del modelo . . . Resumen del proceso de identificaci´n . . . . . . . . . . . . . . Identificaci´n en l´ o ınea . . . . . . . . . . . . . . . . . . . . . . . . o 3. . . . . . . . . . . .2. . . . . . . . . . .4. . Filtro de Kalman . . Introducci´n a la identificaci´n de sistemas o o 3. . . Ideas b´sicas sobre identificaci´n de sistemas . . . . .2. . .3. . . . . o a 3. . . . . . . . . .10. . . Soluci´n de la ecuaci´n de Riccatti . . . . . . . . a o 3. .

3. . . . . Utilizaci´n de los incrementos de las variables . . . Importancia del orden del modelo . . . . .7. . . . . . . . Excitaci´n persistente . . . . . . . . . . . . . . . . . . . . . . Consideraciones finales .2. . . . . . o 3. . . . . 63 63 65 67 70 71 72 73 73 73 74 77 78 5.3. Interpretaci´n estad´ o ıstica . . . . . Introducci´n al control adaptativo o 5. . .3. . . . . . . . . . . . . . 3. . . . .3. . .6. . . . . . . o 3. . . . . . . . Planteamiento del problema . M´ ınimos cuadrados ponderados . . . . . . M´ ınimos cuadrados extendidos y generalizados . . 4. . . . . . o 4. . . . . . . . . . . .6. . . . . .3. 81 81 . . o 4. . . . . . . . . .1. . . . . . . . . . . . . Estimaci´n de una constante . . . . . . . . . . Identificaci´n en bucle cerrado . . . . . . . . . . . . . . . . . . . El m´todo de los m´ e ınimos cuadrados .9. . . .5. Niveles de supervisi´n y acondicionamiento . . . . .4.8. . . . . . . . . . . . . Estimaci´n de los valores de continua . . . . . .2. . . 4. . . . .1. . C´lculo de los valores medios . .1. . . . 4. o 4.6. . . . . Identificaci´n por m´ o ınimos cuadrados 4. . . . . o 4. . . . . . . . . . . . . . .1.iv ´ INDICE GENERAL 3. o 4. . .2. . . .3.2.1. . . 4. . . . . . . . . . . . . . . . . . . . . Convergencia e identificabilidad . . . . . o 58 59 60 62 4. . . . . . . . . a 4. . . . . . . . . . . . . .6.3. . . . . 4. . . Identificaci´n de sistemas con retardo o no lineales . . . . . . . . . . . . . . . . . . Algoritmo recursivo para identificaci´n en linea . . . .

. . . .3. . . . 105 o 7. . Estructura general de los STR . . .3. . . . . . Control por M´ ınima Varianza . . Reguladores Autoajustables (STR) 6. .1. . .3. Control adaptativo por modelo de referencia (MRAC) . . . . . . . .1. . . . . . . . Algoritmos con estructura impl´ ıcita y expl´ ıcita . . . . . . . . . . . Controladores PID con autoajuste y Ajuste por tabla 105 7. .3. . . . .1. . . . . . . . . . . 109 e 7. .1. . . . . . Clasificaci´n grosso modo de los sistemas de control adaptativo . . Funci´n de autoajuste (autotuning) . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 5. . . . . . . . . . . . 5. . 103 6. . . . . . . . . . . .1. .´ INDICE GENERAL v 5. . . M´todos basados en las oscilaciones producidas al realimentar e con un rel´ . . . . Introducci´n . . . . . . . . . . . .4. . . . . T´cnicas de ajuste basadas en la respuesta transitoria . . . .3. . . . . Asignaci´n de polos y ceros . . . 82 84 87 89 6. . . .1. . . Algoritmo con estructura impl´ ıcita. . . . . Algoritmo con estructura expl´ ıcita . . . . 108 e 7. . . . . . . . . . . . . . . . 100 o 6. . . . . .1. . . . . .2. .2. . . . . 6. .2. . Introducci´n. . . . . o 6. . . . .1. .3. . . 110 e . . . Funciones de autoajuste para PIDs . . . . . . . .2. . . .2. . . . . . . . 105 o 7. . . . . . . . Justificaci´n del uso de control adaptativo . . . . . . . 104 7. . 93 93 95 96 99 6. . . . . . . . 6. . . . . . La t´cnica de ajuste por tabla o gain scheduling . . . . o 5. .2. .3. 107 7.3. . . . . . . . . . . .1. . . . La regla del MIT . . . . . . .1. El regulador de m´ ınima varianza generalizado . . . .

. .5. . . . . . . .1. . . . . . . . . . .5. . . . .6. . . . . . . . . . Foxboro EXACT . . . . . . . . . . . . . . . . . . . . . .3. 118 a 8. Extended Horizon Adaptive Control .5.5. . Estrategia de los controladores predictivos .0. . . . . . . . . . . . . . . . . . . . . . . . . . 117 o 8. . . . . . . . . . . . . 119 8. . . . . .3. ABB Novatune . .5. . . . . Extended Prediction Self Adaptive Control .1. . 130 8. . . . . 125 8.4. . Controladores adaptativos industriales . .1.4.5. . . . . 132 8.1. . . . . . . . . . .5. . . 115 7. . .4. . .5. . . . . . . . . . . . . .5. 131 8. . . . . . . . . . . . . . . . . . . .3. 115 8. . . . . . . . Funci´n objetivo . . . . . 126 o 8. . Dynamic Matrix Control .1. . . . . . . .5. Control Predictivo Basado en Modelo (MPC) 117 8.0. . . . . Conceptos b´sicos de control predictivo . . . . . . . . . . . . . . . Obtenci´n de la ley de control . . 113 7. . . . Respuestas libre y forzada . . . . .2. . .0. . . . . . .vi ´ INDICE GENERAL 7. . . Model Algorithmic Control . . . 121 a 8. Perspectiva hist´rica .0. . . . . . . . . . . . 122 o 8. . . . . . . . .1.2.0. . . . . . . . . . .5. . . . . . . . . . . . . . . . . . . . . . .4. . SattControl ECA40 y Fisher-Rosemount DPR900 .4. . . . . . . . . . . . Predictive Functional Control . .0. . . . Elementos b´sicos . Revisi´n de los principales algoritmos . . .2. . . . . .5. . . Generalized Predictive Control . . . . . 134 . .2. . . . . . . 131 8. 133 8. . 115 7. . . . . Modelo de predicci´n . . .3. . . . . . . . . . . . . . 130 o 8. .4. . . . . 129 o 8. . .

. Gesti´n de restricciones o . . . . . . .3. 141 9. . . . Perturbaciones medibles . . .1. . . . . . . 155 o 10. . . . . . . . . . . Resoluci´n del problema .2. . 141 o 9. . . . . . . . . .1. . 146 o 9.2. . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . Tratamiento convencional de restricciones . . . . . . . . . .1. . . . . . . . . . . . . . . 142 o 9.1. . . . . . . . . . . . . 156 10. . . . .1. .1. . . . Formulaci´n del Control Predictivo Generalizado . . . . . . . .Otros aspectos del Control Predictivo 151 10. . .1. . . . Restricciones en Control Predictivo . . . 138 9. . . . . . .1. . . . 135 9. . . T´cnicas de b´squeda de soluciones factibles . . . . . Ejemplo de c´lculo . . . . . . . . 143 o ´ 9.1. . . . . . . . . . . . . . . . . Predicci´n . . . .4. . Caso multivariable .1. . . . . . . . El caso con restricciones . .1. . . . . . . .2. . .2. . .1. Algoritmo de control . . . . . . . . . Control Predictivo Generalizado . . . . . . . 147 a 9. .1. . . 151 10. . . .1. . 151 10. . . . . . . . Obtenci´n de la ley de control . .1. . . . .4. . 149 10. . . .1. . . . . . . .´ INDICE GENERAL vii 9. . . .2. .3. .2. Restricciones en Control Predictivo . . . . . . . . . . . . . .3. 140 9. . . Dynamic Matrix Control . . . .1. . . . . Predicci´n optima . . . .3.2. .2. . . 153 10. . . . . . .2. . . . . . . . . . . . 137 9. 135 o 9. . . . . . . . . . . . . .2. . . .1.3. . . . . . . . Extensi´n al caso multivariable .1. . .2. . . . 157 e u . . Controladores predictivos 135 9. . . . . . . . . . .

viii ´ INDICE GENERAL .

. . . . . .1. . . . . . . . . . Procesos estoc´sticos: realizaciones y variables aleatorias. . . Diagrama de bloques de un observador de orden completo. . Ejemplo de se˜al de entrada del tipo PRBSS. . . . . 1. . . . . . . . . . . . . . Diagrama de flujo del proceso de identificaci´n. . . . . . . 31 o 1. . .4. . . Modelo de Box-Jenkins. . . Esquema de la identificaci´n en l´ o ınea. . . .1. .1. . . . . . . . . . . . . . ix 67 75 . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . Diagrama de bloques de un sistema LTI controlado mediante una realimentaci´n del vector de estados que estima el estado con un observador. . . . .2 rad × s−1 . . . . 3. . . o 3. . . . . . . . . . . . . . . . . . Diagrama de bloques de la representaci´n en espacio de estados de un o sistema LTI. . Diagrama de Bode de un sistema de segundo orden (linea continua) y de un modelo de primer orden estimado para una entrada senoidal de frecuencia ω = 0. . . . Diagrama de bloques de un sistema controlado por una realimentaci´n o del vector de estados. n 4. . . . . . .1. . . . . .3. . . 31 2. . . .´ Indice de figuras 1. . . . . . 4. . . .3. . . 47 48 2. .2. . . . . . . 55 57 59 3. . . . . . . . . . . . . . . . . . .2. . . . . . . . . .2. . . . . . . . . . . a . . . . 2 21 1. . Diagrama de flujo del proceso de identificaci´n mediante m´ o ınimos cuadrados recursivos. .

. . . . 86 87 88 6. . . . 110 e e . .4.1.1. . 82 84 85 5. . . . . . . Evoluci´n de los par´metros identificados en un caso de sobreparametrizaci´n. . . Sistema realimentado con actuador con caracter´ ıstica v = f (u). . . Determinaci´n de T y L por areas. 109 o ´ 7. . 101 7. . . . . . .2. . . . . . . . . . 77 5. . o e 6. . . . . PID industrial moderno con funci´n de autoajuste (ABB modelo ECA). . . . .3. . . . . . . . . . 5. . . . . . . 6. . . . .5. . .1). Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (5. .2. . . 94 95 99 . . . . . . . .3. . . . . .3. . . o e 6. . . . . . . .4. . . . . . . . . Configuraci´n gen´rica de un controlador adaptativo por modelo de reo e ferencia (MRAC). . . . . . . 5. . . . . . . . . . o a o 76 4. o e 5. . . . . Configuraci´n gen´rica de un regulador o controlador autoajustable. o . . . Sistema realimentado con actuador con caracter´ ıstica v = f (u). . . .2. 5. . . . . . . . . . .x ´ INDICE DE FIGURAS 4. . . . . . 107 o 7. . . . . Misma situaci´n que en la figura 4. . o . . . . . .1. . . . . . . . Divisi´n de polinomios para el ejemplo 6. . Estructura para la asignaci´n de polos y ceros. . . Configuraci´n gen´rica de un controlador adaptativo. . . . . . . . . . . . . . .5. . . . . . . . . . . . . . . Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (5. Estructura usada en el m´todo basado en oscilaciones de rel´. . . . . . . . . .3. . . . Configuraci´n gen´rica de un regulador o controlador autoajustable. . . .2 pero con una se˜al de entrada o n −1 senoidal de frecuencia ω = 1 rad × s .6. . . . .2). .4. . . . . . . . . . . . Evoluci´n de unos par´metros frente a otros para el modelo sobreparametrizao a do. . . . . 75 4.2.

. . . 126 8. . . . . . Curva de pH para una soluci´n de HCl 0. . . . . 121 a 8. . . . 157 o . . . . . . . . . . . 111 7. . . . . . . . . . . . . . . . . .6. . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . 132 9. . . Estructura b´sica del MPC . . . . . . . Estrategia del Control Predictivo . . . . . . . Restricciones y punto de operaci´n optimo . . . . . . . . . . . . . . 123 o 8. . . . . . . . . . . . . . . . . Puntos de coincidencia . . . o 7.3.7. . . .001 M y NaOH 0. . . . . . . . . . . . . . . . . . . . . . . . . . Respuestas libre y forzada . . 113 7. 128 8. . . . . . .6. . . . . . .5. . . . . . . . .1. . . . . . . 120 8.3. . . . . . . . . . . Trayectoria de referencia .5. 153 n 10. . . . . . . . . . Punto de operaci´n optimo de un proceso t´ o ´ ıpico . . . . . 116 8.2. . . . Restricciones en la se˜al de control .2. 140 10. . Gesti´n de restricciones . . . . . . . . Ley de control . . . . . .1. . Respuesta impulsional y ante escal´n . . . . . .4.4. . . . . . . . . . . . . . . . . La herramienta Novatune se comercializa actualmente con el sistema Advant 410 de ABB. . . . .001 M. . . . . 152 o ´ 10. 112 . . . . . . .´ INDICE DE FIGURAS xi 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 9. . . . . . . . . . . . . . . . . Configuraci´n gen´rica de un controlador adaptativo con adaptaci´n en o e o bucle abierto. Caracter´ ıstica aproximada de una sonda lambda . . . . . . . . .1.

xii ´ INDICE DE FIGURAS .

que se agrupan en una ecuaci´n vectorial matricial en o diferencias.1 Concepto de estado: El estado de un sistema din´mico es el cono a junto m´s peque˜o de variables (llamadas variables de estado) tal que. o Las variables de estado se agrupan en el llamado vector de estado y el espacio ndimensional que determinan los posibles valores de esas variables.Cap´ ıtulo 1 Control de sistemas discretos en el espacio de estados 1. el conocimiento a n de esas variables en un determinado instante t0 junto con el conocimiento de los valores de la se˜al de entrada para los instantes t ≥ t0 . Definici´n 1. Representaci´n de sistemas discretos en el eso pacio de estados El m´todo de espacio de estados est´ basado en la descripci´n del sistema mediante e a o n ecuaciones en diferencias. La din´mica de un sistema se puede describir en funci´n del valor del vector de a o estados y de la se˜al de entrada (asumiendo que el sistema es no aut´nomo mediante n o 1 .1. permite determinar el comportamiento n y evoluci´n del sistema para cualquier instante de tiempo t ≥ t0 . se denomina espacio de estados.

k) donde la notaci´n ξ(k) indica el valor tomado por ξ en el instante de tiempo tk y f y g o pueden ser cualquier tipo de funci´n. o   .3) A continuaci´n se expondr´n dos de los m´todos disponibles para obtener la repreo a e sentaci´n en espacio de estados del sistema descrito por (1.2.´ ´ 2OBTENCION DE LA REPRESENTACION DE EN ESPACIO DE ESTADOS DE SISTEMAS DISCRETOS unas ecuaciones que tendr´n la forma: a x(k + 1) = f (x(k). u(k). o 1. Este tipo de sistemas son descritos mediante las siguientes ecuaciones: x(k + 1) = Gx(k) + Hu(k) y(k) = Cx(k) + Du(k) que corresponder´ al diagrama de bloques: ıan (1.1: Diagrama de bloques de la representaci´n en espacio de estados de un sistema LTI. u(k).1) D u(k) H + x(k+1) + z-1 x(k) C + + G Figura 1.2) Es bien conocido de anteriores temas de la asignatura que este sistema puede ser descrito por la siguiente funci´n de transferencia: o G(z) = Y (z) b0 + b1 z −1 + b2 z −2 + · · · + bn z −n = U (z) 1 + a1 z −1 + a2 z −2 + · · · + an z −n (1. Obtenci´n de la representaci´n de en espacio o o de estados de sistemas discretos Partiremos de un sistema discreto descrito por: y(k)+a1 y(k−1)+a2 y(k−2)+· · ·+an y(k−n) = b0 u(k)+b1 u(k−1)+· · ·+bn u(k−n) (1. k) y(k) = g(x(k). No obstante en esta asignatura nos centraremos o en los Sistemas Lineales e Invariantes en el tiempo (LTI).3).

2.9) ˜ Y (z) = (b1 − a1 b0 )z −1 Q(z) + (b2 − a2 b0 )z −2 Q(z) + · · · + (bn − an b0 )z −n Q(z) (1. implica que: zX1 (z) = X2 (z) zX2 (z) = X3 (z) ··· zXn−1 (z) = Xn (z) −(n−1) (1. M´todo de programaci´n directa e o Parte de la premisa que la funci´n de transferencia (1.7) Y (z) = 1 + a1 z −1 + a2 z −2 + · · · + an z −n ˜ Por otra parte. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 3 1.10) A continuaci´n se eligen las variables de estado como: o X1 (z) = z −n Q(z) X2 (z) = z ··· Xn (z) = z −1 Q(z) lo que teniendo en cuenta las propiedades de la transformada Z.8) De ah´ se obtiene que: ı Q(z) = −a1 z −1 Q(z) − a2 z −2 Q(z) − · · · − an z −n Q(z) + U (z) (1. teniendo en cuenta la expresi´n de Y (z) se puede definir un Q(z) que o cumple que: Q(z) = ˜ Y (z) U (z) = −1 + · · · + (b − a b )z −n −1 + · · · + a z −n (b1 − a1 b0 )z 1 + a1 z n n 0 n (1.6) (b1 − a1 b0 )z −1 + (b2 − a2 b0 )z −2 + · · · + (bn − an b0 )z −n ˜ (1.11) Q(z) .1.3) puede reescribirse como: o G(z) = b0 + (b1 − a1 b0 )z −1 + (b2 − a2 b0 )z −2 + · · · + (bn − an b0 )z −n 1 + a1 z −1 + a2 z −2 + · · · + an z −n Y (z) U (z) (1.CAP´ ITULO 1.5) (b1 − a1 b0 )z −1 + (b2 − a2 b0 )z −2 + · · · + (bn − an b0 )z −n U (z) 1 + a1 z −1 + a2 z −2 + · · · + an z −n que a su vez se puede expresar como: ˜ Y (z) = b0 U (z) + Y (z)U (z) con: (1.4) teniendo en cuenta que G(z) = Y (z) = b0 U (z) + se obtiene: (1.

.´ ´ 4OBTENCION DE LA REPRESENTACION DE EN ESPACIO DE ESTADOS DE SISTEMAS DISCRETOS lo que a su vez equivale a: x1 (k + 1) = x2 (k) x2 (k + 1) = x3 (k) ··· xn−1 (k + 1) = xn (k) N´tese que seg´n la ultima igualdad de (1.  u(k) . . .17) lo cual se puede escribir como:        xn−1 (k) xn (k) x1 (k) x2 (k) .  . . .15) y (1.      .12) obtenemos la siguiente expresi´n de la o ecuaci´n de estado: o        x1 (k + 1) 0 1 0 ··· 0 x1 (k) 0  x2 (k + 1)   0 0 1 · · · 0   x2 (k)   0            . . luego o u ´ teniendo en cuenta esto y el resto de las igualdades de (1.16) Esto se puede llevar a la ecuaci´n (1. . .3) que se denomina forma can´nica o o controlable.12) De esta manera y si tenemos en cuenta (1.18) Las ecuaciones (1.11) se tiene que Q(z) = zXn (z). . .   .  +  .9) como: o zXn (z) = −a1 Xn (z) − a2 Xn−1 (z) − · · · − an X1 (z) + U (z) o lo que es lo mismo: xn (k + 1) = −an x1 (k) − an−1 x2 (k) − · · · − a1 xn (k) + u(k) (1.10) teniendo en cuenta las igualdades e de (1. .11) podemos reescribir la expresi´n de Q(z) en (1.14) (1.13) (1. .18) forman una representaci´n en espacio de estados del o sistema descrito por la funci´n de transferencia (1. podemos reescribir tambi´n (1.  . .  = .   xn−1 (k + 1)   0 0 0 · · · 1   xn−1 (k)   0  xn (k + 1) −an −an−1 −an−2 · · · −a1 xn (k) 1 (1.6) de manera que antitransformando se obtiene: o y(k) = (bn − an b0 )x1 (k) + (bn−1 − an−1 b0 )x2 (k) + · · · + (b1 − a1 b0 )xn (k) + b0 u(k) (1.  .  .      + b0 u(k)   y(k) = bn − an b0 bn−1 − an−1 b0 · · · b1 − a1 b0 (1.15) Por otra parte. .11) de manera que: ˜ Y (z) = (b1 − a1 b0 )Xn (z) + (b2 − a2 b0 )Xn−1 (z) + · · · + (bn − an b0 )X1 (z) (1.

20) se puede o u o o reescribir en forma condensada como: Y (z) = b0 U (z) + Xn (z) (1.21) (1.21) y multio o plicando por z en ambos lados de cada igualdad se obtiene: zXn (z) = Xn−1 (z) − a1 Xn (z) + (b1 − a1 b0 )U (z) zXn−1 (z) = Xn−2 (z) − a2 Xn (z) + (b2 − a2 b0 )U (z) . zX2 (z) = X1 (z) − an−1 Xn (z) + (bn−1 − an−1 b0 )U (z) zX1 (z) = −an Xn (z) + (bn − an b0 )U (z) Antitransformando lo anterior: x1 (k + 1) = −an xn (k) + (bn − an b0 )u(k) x2 (k + 1) = x1 (k) − an−1 xn (k) + (bn−1 − an−1 b0 )u(k) .2. .2.20) (1. .23) . xn−1 (k + 1) = xn−2 (k) − a2 xn (k) + (b2 − a2 b0 )u(k) xn (k + 1) = xn−1 (k) − a1 xn (k) + (b1 − a1 b0 )u(k) (1.19) Sustituyendo esta expresi´n en la definici´n de las variables de estado (1. .3) se obtiene la o siguiente ecuaci´n: o Y (z) − b0 U (z) + z −1 (a1 Y (z) − b1 U (z)) + · · · + z −n (an Y (z) − bn U (z)) = 0 que a su vez se puede reescribir como: Y (z) = b0 U (z) + z −1 b1 U (z) − a1 Y (z) + z −1 (b2 U (z) − a2 Y (z) +z −1 (b3 U (z) − a3 Y (z) + · · ·) Teniendo en cuenta esto se definen las siguientes variables de estado: Xn (z) = z −1 (b1 U (z) − a1 Y (z) + Xn−1 (z)) Xn−1 (z) = z −1 (b2 U (z) − a2 Y (z) + Xn−2 (z)) . CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 5 1. X2 (z) = z −1 (bn−1 U (z) − an−1 Y (z) + X1 (z)) X1 (z) = z −1 (bn U (z) − an Y (z)) N´tese que seg´n esta definici´n de las variables de estado la expresi´n (1. . .22) (1.CAP´ ITULO 1. . M´todo de programaci´n anidada e o En este caso se parte de que de la funci´n de transferencia (1.

25) 1. .    xn−1 (k)  xn (k)     u(k)   (1. . Dicho de otro modo. . la representaci´n en espacio de estados de un sistema no es unica.   . .26) donde P es una matriz invertible. o dos expresiones anteriores se obtiene:    bn − a n b0 x1 (k) 0 · · · 0 0 −an   x2 (k)   bn−1 − an−1 b0 0 · · · 0 0 −an−1        . .  . . .1) podemos considerar que el vector de estado x(k) est´ relacionado con otro vector x(k) con variables de estado distintas mediante una a ˜ transformaci´n: o x(k) = P x(k) ˜ (1. al menos.  =  . . dos representaciones en espacio de estado distintas. +  . agrupando las    0 x1 (k + 1)  1  x2 (k + 1)      . . .3. De hecho. 0 0 ··· 0 1   + b0 u(k) . .    0  xn−1 (k + 1)  xn (k + 1) y(k) = (1. Esto se puede llevar a la ecuaci´n de estado del o sistema de manera que obtendr´ ıamos: P x(k + 1) = GP x(k) + Hu(k) ˜ ˜ Premultiplicando por P −1 : x(k + 1) = P −1 GP x(k) + P −1 Hu(k) ˜ ˜ .  . . .    0 · · · 1 0 −a2   xn−1 (k)   b2 − a2 b0 b1 − a 1 b0 xn (k) 0 0 · · · 0 1 −a1   x1 (k)  x2 (k)      . o ´ podemos tomar otras variables de estado que describan la din´mica del sistema que a sean a su vez combinaciones lineales de las variables de estado originales. dado un e sistema LTI como el descrito en (1. . .22) se obtiene: e o y(k) = xn (k) + b0 u(k) Finalmente. . o considerar que ´stas son a su vez combinaciones lineales de otras.3) se la denomina forma can´nica observable. .6 ´ ´ LA REPRESENTACION EN ESPACIO DE ESTADOS DE UN SISTEMA NO ES UNICA Antitransformando tambi´n la expresi´n (1. Por ejemplo. La representaci´n en espacio de estados de un o sistema no es unica ´ Se ha comprobado que a un mismo sistema descrito por su funci´n de transferencia o le corresponden. .24)  A esta representaci´n en espacio de estados del sistema descrito por la funci´n de o o transferencia (1.

.28) ˜ ˜ con C = CP y D = D.28) describen una repreı sentaci´n del sistema en espacio de estados que es diferente de la original pero equivao lente a ella1 . Resoluci´n de las ecuaciones del espacio de eso tados En esta secci´n se trata el tema de la resoluci´n de las ecuaciones de estado. . generalizando para cualquier k > 0: k−1 x(k) = G x(0) + j=0 1 k Gk−j−1 Hu(j) (1. 1.4. De la misma manera la ecuaci´n. As´ pues. 1.4.29) Obs´rvese que en la ecuaci´n (1. Procedimiento recursivo Iterando las ecuaciones del estado para un sistema LTI como (1. las ecuaciones (1. Es o o decir.27) ˜ ˜ con G = P −1 GP y H = P −1 H. de la salida del o sistema se puede expresar como: ˜˜ ˜ y(k) = C x(k) + Du(k) (1.1. La salida sin embargo si coincide con la del sistema original pues ambas representaciones son equivalentes. se presentar´n procedimientos para obtener el valor del vector de estado para a un determinado instante de tiempo k > 0 a partir del valor de x(0).CAP´ ITULO 1. es diferente al original. del valor inicial del vector de estados. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 7 por lo que la ecuaci´n de estado se puede expresar como: o ˜x ˜ x(k + 1) = G˜(k) + Hu(k) ˜ (1. es decir. .27) y (1.1) a partir de k = 0: x(1) = Gx(0) + Hu(0) x(2) = Gx(1) + Hu(1) = G2 x(0) + GHu(0) + Hu(1) x(3) = Gx(2) + Hu(2) = G3 x(0) + G2 Hu(0) + GHu(1) + Hu(2) .28) el estado aparece con ˜ indicando que el vector de estados e o .

1) e o o viene dada por: k−1 Ψ(0) = I x(k) = Ψ(k)x(0) + j=0 k−1 Ψ(k − j − 1)Hu(j) (1. Matriz de transici´n de estados o Consid´rese la ecuaci´n: e o x(k + 1) = Gx(k) (1.30) 1. Estos movimientos libres se refieren a los cambios de estado o evoluci´n del estado del sistema en ausencia de o entrada.4. al no tener se˜al de entrada la soluci´n de la ecuaci´n viene dada por: n o o x(k) = Ψ(k)x(0) con: Ψ(k + 1) = GΨ(k) es decir: Ψ(k) = Gk A Ψ(k) se le llama la matriz de transici´n de estados y contiene toda la informaci´n o o sobre los movimientos libres del sistema descrito por (1. En t´rminos de Ψ(k) la soluci´n de la ecuaci´n de estados para el sistema (1.8 ´ RESOLUCION DE LAS ECUACIONES DEL ESPACIO DE ESTADOS Obs´rvese que x(k) depende del estado inicial y de los valores de la entrada.31) En este caso.31).33) .32) = Ψ(k)x(0) + j=0 Ψ(j)Hu(k − j − 1) lo que lleva a: k−1 y(k) = CΨ(k)x(0) + C j=0 Ψ(j)Hu(k − j − 1) + Du(k) (1.2. la salida se puede expresar como: k−1 y(k) = CG x(0) + C j=0 k Gk−j−1 Hu(j) + Du(k) (1. Por otra e parte.

8) 5 1 5 1 − 3 z+0.1) con: G= 0 1 −0.2)(z+0.16 −1 H= 1 1 C= 1 0 Se pide calcular Ψ(k) = GK = Z−1 {(zI − G)−1 z}.8) z (z+0. En primer lugar calculamos: (zI − G)−1 = = = z −1 0.1) se obtiene: zX(z) − zx(0) = GX(z) + HU (z) y de ah´ ı: (zI − G)X(z) = zx(0) + HU (Z) Premultiplicando por (zI − G)−1 : X(z) = (zI − G)−1 zx(0) + (zI − G)−1 HU (Z) y antitransformando: x(k) = Z−1 (zI − G)−1 z x(0) + Z−1 (zI − G)−1 HU (z) Esta ecuaci´n la podemos comparar con la soluci´n mediante el procedimiento recursivo o o indicado en la ecuaci´n (1.4.2)(z+0.CAP´ ITULO 1.35) .2 + 3 z+0.16 z + 1 z+1 (z+0.2 1 1 − 0.8 3 3 (1.2)(z+0.8) 1 (z+0. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 9 1. Para ilustrar el procedimiento consid´rese el siguiente ejemplo: e Ejemplo 1.8 3 1 1 4 1 − 3 z+0.34) La dificultad de este m´todo consiste en realizar la transformada Z de las expresiones e anteriores.16 (z+0.2 + 0.2 1 4 1 − 1 z+0.8) −0.29).2)(z+0.8 3 z+0. e identificando t´rminos tenemos que: o e k−1 G =Z k −1 (zI − G) z −1 y j=0 Gk−j−1 Hu(j) = Z−1 (zI − G)−1 HU (z) (1.8 z+0.8 3 z+0. M´todo basado en la transformada Z e Aplicando la transformada Z a ambos lados de la ecuaci´n de estados del sistema o (1.8 z+0.3.1 Dado un sistema LTI como (1.

2.4.2 3.8)k 3 3 1 − 3 (−0.2)k + 22 (−0. antitransformando: x(k) = − 17 (−0. Esto puede ser muy engorroso cuando el orden de las matrices involucradas es superior a 3. o En primer lugar es conocido que. Procedimiento alternativo para calcular (zI − G)−1 Se observa en el ejemplo 1.8 (−0.1 que gran parte del c´lculo se emplea en calcular (zI − a G) .4 (−0.4 7 z z − 17.8)k 3 5 (−0.10 ´ RESOLUCION DE LAS ECUACIONES DEL ESPACIO DE ESTADOS Multiplicando lo anterior por z y antitransformando se obtiene: Ψ(k) = Gk = Z−1 (zI − G)−1 z = 4 (−0.2)k + 0.1.36) El ejemplo se puede completar resolviendo completamente la ecuaci´n de estado y la o de la salida para una se˜al de entrada dada por: n u(k) = 1 k = 0. · · · x(0) = 1 −1 Teniendo en cuenta la transformada Z de la entrada (escal´n unitario) y que se sabe o que: X(z) = (zI − G)−1 [zx(0) + HU (z)] se calcula: zx(0) + HU (z) = z −z + z z−1 z z−1 z2 z−1 −z 2 +2z z−1 = que premultiplicado por el resultado de la ecuaci´n (1.2)k − 1 (−0. por definici´n de matriz inversa: o −1 (zI − G)−1 = Adj(zI − G) |zI − G| . 1.2 Finalmente la ecuaci´n de salida ser´: o a y(k) = 1 0 x(k) 17 22 25 = − (−0.8)k + 6 9 3.2)k + 4 (−0.35) lleva a: o X(z) = y de ahi. A continuaci´n se detalla un procedimiento alternativo para esos casos.8 + z−1 z+0.8)k 3 3 0.2)k − 17.8 + z−1 z+0.6 (−0.2)k − 5 (−0.8 − 3 (−0.8)k + 6 9 25 18 7 18 22 25 z z − 17 z 6 9 18 + z+0.6 z 6 9 18 + z+0.3.8)k + 6 9 18 1.8)k 3 (1.2)k + (−0.

2 A continuaci´n se calcular´ la inversa de (zI − G) para el ejemplo 1. El determinante |zI − G| se puede expresar como: |zI − G| = z n + a1 z n−1 + a2 z n−2 + · · · + an Por otra parte se puede demostrar que: Adj(zI − G) = Iz n−1 + H1 z n−2 + H2 z n−3 + · · · + Hn−1 donde las matrices Hi se calculan mediante: H1 = G + a 1 I H2 = GH1 + a2 I .16 −1 1 1 −0. con lo ı que se puede calcular: 1 a2 = − traza 2 0 1 −0.CAP´ ITULO 1.16 . . . luego a1 = 1 y de ah´ se obtiene que H1 = G + I. Hn−1 = GHn−1 + an−1 I Hn = GHn−1 + an I = 0 y los ai se calculan a su vez como: a1 = −traza(G) 1 a2 = − traza(GH1 ) 2 1 a3 = − traza(GH2 ) 3 . .1 mediante este o a procedimiento alternativo. . Dado que el orden de la matriz es n = 2. 1 an = − traza(GHn−1 ) n Ejemplo 1. se tiene que: |zI − G| = z 2 + a1 z + a2 Adj(zI − G) = Iz + H1 donde: a1 = −traza(G) a2 = − 1 traza(GH1 ) 2 H1 = G + a 1 I La traza de G es igual a 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 11 donde ((Adj)) indica la matriz adjunta.16 0 = 0.

16 0 z+1 1 −0.40) .2)(z +0.16 z |zI −G| = z 2 +z +0. 1.8) que evidentemente es el mismo resultado obtenido en el ejemplo 1. por lo que se cumple que: u(t) = u(kT ) para kT ≤ t ≤ kT + T (1. es decir.8) 1 1 −0.16 z = (z + 0.2)(z + 0. · · ·. Para determinar el valor de G(T ) y H(T ) usaremos la soluci´n de la ecuaci´n de estado o o en tiempo continuo: t x(t) = eAt x(0) + eAt 0 e−Aτ Bu(τ )dτ (1.12 ´ DISCRETIZACION DE LAS ECUACIONES DE ESTADO CONTINUAS con lo que se obtiene: Adj(zI − G) = Iz + = Finalmente: (zI − G)−1 z+1 1 −0.5.37) Supondremos que la entrada s´lo cambia en ciertos instantes igualmente espaciados en o el tiempo. s´lo puede cambiar en t = kT .39) Supondremos que la entrada u(t) es muestreada mediante un mantenedor de orden cero. para k = 0. 2.1. 1.16 = (z +0. Al discretizar o la ecuaci´n de estado ´sta tomar´ la forma: o e a x((k + 1)T ) = G(T )x(kT ) + H(T )u(kT ) (1. Se partir´ de un sistema lineal e invariante en el tiempo continuo: a x = Ax + Bu ˙ y = Cx + Du (1. Discretizaci´n de las ecuaciones de estado cono tinuas En esta secci´n veremos c´mo se puede pasar de un modelo en espacio de estado o o continuo a discreto.38) donde puede observarse que las matrices G y H dependen del tiempo de muestreo T .

y por tanto interesante) de que A sea u una matriz invertible se tiene que: H(T ) = eAT − I A−1 B Por otra parte.42) por eAT y rest´ndola de la ecuaci´n (1.45) entonces la ecuaci´n (1.47) . En el caso particular (aunque muy com´n.40)) se puede sustituir u(τ ) por u(kT ). D matrices constantes e iguales a la de la ecuaci´n en tiempo continuo.43) Teniendo en cuenta la suposici´n de que u(t) es constante en el intervalo de integraci´n o o (ver (1.48) (1.42) x(kT ) = e AkT x(0) + e AkT 0 e−Aτ Bu(τ )dτ Mutiplicando la ecuaci´n (1. Aplicando esto y operando se llega a: T x((k + 1)T ) = eAT x(kT ) + eAT 0 T e−Aτ Bu(kT )dτ e−Aλ Bu(kT )dλ (1.46) que es la ecuaci´n a la que ten´ o ıamos que llegar y por tanto se ha obtenido la ecuaci´n o de estado continuo discretizada.44) = eAT x(kT ) + 0 donde λ = T − τ .41) se obtiene: o a o (k+1)T x((k + 1)T ) = eAT x(kT ) + eA(k+1)T kT e−Aτ Bu(τ )dτ (1. o Existen diferentes m´todos para calcular eAT . CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 13 Se tiene que: (k+1)T x((k + 1)T ) = eA(k+1)T x(0) + eA(k+1)T 0 kT e−Aτ Bu(τ )dτ (1.41) (1. Sea: G(T ) = eAT H(T ) = T 0 eAλ dλ B (1.44) queda: o x((k + 1)T ) = G(T )x(kT ) + H(T )u(kT ) (1. la ecuaci´n de la salida al ser discretizada queda: o y(kT ) = Cx(kT ) + Du(kT ) con C.CAP´ ITULO 1. Quiz´s el m´s sencillo de aplicar e a a cuando se trata de calcular la exponencial con papel y l´piz sea utilizar la equivalencia: a eAt = L−1 (sI − A)−1 (1.

3 Se ilustrar´ en este ejemplo el c´lculo de eAt siendo: a a A= Para ello se calcula: (sI − A) = s 0 0 s − 0 1 0 −2 = s −1 0 s+2 0 1 0 −2 y aplicando los m´todos vistos en la secci´n 1. Desde el punto de vista pr´ctico a −1 el m´todo consistir´ en calcular (sI −A) (n´tese que puede emplearse el m´todo para e ıa o e −1 calcular (zI − G) dado en la secci´n 1. cono sid´rese el siguiente sistema: e x = −ax + u ˙ y = x Usando las expresiones de (1.3.1) y aplicar a posteriori la transformada o de Laplace inversa a cada elemento de la matriz.45) se obtiene: G(T ) = eAT = e−aT y H(T ) = = = T Aλ e dλ 0 T −aλ e dλ 0 −aT 1−e a B .14 ´ DISCRETIZACION DE LAS ECUACIONES DE ESTADO CONTINUAS donde L−1 indica la transformada de Laplace inversa. Ejemplo 1.4 Como ejemplo de discretizaci´n de las ecuaciones de estado en tiempo continuo.5 y subsiguientes se calcula la inversa: e o (sI − A) −1 = 1 s 0 1 s(s+2) 1 (s+2) Finalmente se aplica la transformada inversa de Laplace a cada elemento de la matriz anterior de manera que se obtiene: eAt = L−1 (sI − A)−1 = 1 0 1 (1 2 − e−2t ) e−2t Ejemplo 1.4.

´ 1. Tambi´n puede decirse que e ser´ completamente controlable. donde n es el tama˜o del vector de estados.CAP´ ITULO 1. si cada variable de estado se puede controlar en un a tiempo finito por una se˜al de control que no est´ sujeta a ning´n tipo de restricci´n. Ambos conceptos se deben a Kalman y son claves en estrategias de control como la colocaci´n de polos por realimentaci´n del vector de estados o el control o o optimo. la controlabilidad y la observabilidad. n Recordemos que la soluci´n de la ecuaci´n de estados es: o o n−1 x(nT ) = G x(0) + j=0 n Gn−j−1 Hu(jT ) .6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 15 Luego: x(k + 1) = e−aT x(k) + y(k) = x(k) 1−e−aT a u(k) 1.6. En este n caso. la observabilidad tiene que ver con la posibilidad de determinar el valor del vector de estados de un sistema a partir de observaciones de las salidas y la entradas de dicho sistema.49) siendo la se˜al u(kT ) constante en el intervalo de tiempo kT ≤ t ≤ (k + 1)T . si es posible transferir al sistema desde un estado inicial arbitrario a cualquier estado deseado en un tiempo finito. la controlabilidad de estado completo implica que existe una se˜al de control n constante entre cada tiempo de muestreo que transfiere al sistema.1. desde un estado x(kT ) cualquiera a un estado deseado xf en como mucho n periodos de muestreo. Controlabilidad Definici´n 1. Por otro lado. El primero se refiere a la existencia a de una secuencia de actuaciones para llevar el sistema a un estado arbitrario. n e u o Como es habitual nos centraremos en el estudio de la controlabilidad de sistemas LTI: x((k + 1)T ) = Gx(kT ) + Hu(kT ) (1.2 Un sistema de control es completamente controlable o de estado como pletamente controlable. Controlabilidad y Observabilidad En esta secci´n se pasan a tratar dos conceptos clave en el estudio de sistemas o din´micos.

51) sea igual a n. el espacio de vectores generado por los vectores que forman la matriz de controlabilidad (es decir. .1 poo dr´ alcanzar cualquier estado como m´ximo en n periodos de muestreo.1 Dado un sistema LTI de orden n representado por (1. el sistema no ser´ controlable. ıa o . · · · . . Gn−1 H . Este resultado permite enunciar el siguiente lema.49). u(0)      x(nT ) − Gn x(0) = (1. . Sup´ngase un estado final arbitrario x(nT ) = xf . . . es condici´n o necesaria y suficiente para que el sistema sea completamente controlable que el rango de la matriz de controlabilidad (1. . Si el sistema fuera controlable o deber´ existir un vector de actuaciones que al multiplicarlo por la matriz de controlaıa bilidad (1. · · · . se tardar´a m´s.      u((n − 1)T ) u((n − 2)T ) . En el caso de que las hubiese.51) es la llamada matriz de controlabilidad . . En caso contrario. pero s´lo si no a a o existen restricciones sobre la se˜al de control. la controlabilidad se puede comprobar a partir de la funci´n de o transferencia de un sistema observando si hay cancelaciones de polos y ceros.51) diese como resultado xf − Gn x(0). el sistema ıa Y (z) z + 0.2 = U (z) (z + 0. Por tanto. Por otra parte. La condici´n necesaria y suficiente para que o se cumpla esto es que el rango de la matriz de controlabilidad sea n. se podr´ determinar la secuencia de valores de la entrada a necesaria para llevar al sistema a xf resolviendo el sistema de ecuaciones (1. Como xf y x(0) pueden ser cualquier par de valores del vector de estado. sus columnas) debe ser todo Rn . n ı a Si el sistema es controlable. H . Gn−1 H . .2) no ser´ controlable pues existe una cancelaci´n de un polo con un cero.16 CONTROLABILIDAD Y OBSERVABILIDAD = Gn x(0) + Gn−1 Hu(0) + Gn−2 Hu(T ) + · · · + Hu((n − 1)T ) de ah´ se obtiene: ı . GH . GH .8)(z + 0. H . . De esto se desprende que para que el sistema sea controlable. . Comentario 1. Lema 1. (1. es f´cil entender que xf −Gn x(0) puede ser cualquier a n vector de R .1 El sistema que cumpla la condici´n establecida en el lema 1.50).50) donde la matriz Mc = .

. De hecho. CGH . Se puede demostrar que la controlabilidad del estado no implica la controlabilidad de la salida. . · · · . CGn−1 H . CH . CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 17 1. se puede dar el caso que se pase de tener m−1 columnas linealmente independientes a tener m. o 1. . la presencia del t´rmino o o e Du(kT ) no empeora la controlabidad del sistema. cada transici´n del estado debe o afectar a todos los elementos del vector de salida. Sin embargo. CGn−1 H . por lo que se lograr´ la controlabilidad de la salida. D . .6. Controlabilidad de la salida completa En control autom´tico el objetivo m´s com´n es controlar la evoluci´n de la salida a a u o del sistema. . . sino justo lo contrario. =m (1.52) donde m es el n´mero de salidas. CH . Para que ello ocurra.3. . Observabilidad Consid´rese un sistema aut´nomo: e o x((k + 1)T ) = Gx(kT ) y(kT ) = Cx(kT ) (1. .2.6. podemos comprobar dicha controlabilidad de una manera an´loga a la de la controlabilidad del estado completo. al introducirse una columna extra en la matriz de controlabilidad (la correspondiente a D).53) (1. · · · .3 El sistema aut´nomo (1.54) N´tese que en esta segunda forma de la ecuaci´n de salida. =m (1. CGH . . Por otra parte. si la ecuaci´n de la salida es: u o y(kT ) = Cx(kT ) + Du(kT ) la condici´n a comprobar ser´ o ıa: Rango .56) es completamente observable si todo eso o tado inicial x(0) se puede determinar de la observaci´n de y(kT ) durante un n´mero o u finito de intervalos de muestreo.56) Definici´n 1.55) (1. Sea un sistema cuya a ecuaci´n de estado es (1.CAP´ ITULO 1. ıa encontrar m vectores linealmente independientes siempre ser´ igual o m´s f´cil entre a a a n + 1 vectores que entre s´lo n de esos vectores. .49) y la ecuaci´n de la salida es: o o y(kT ) = Cx(kT ) La condici´n para comprobar la controlabilidad de la salida completa ser´ que o ıa Rango . Dicho de otra manera. .

. . Se sabe que la soluci´n de la ecuaci´n de estado para el sistema aut´nomo (1. (G∗ )n−1 C ∗ . x2 (0). . xn (0). Como y(kT ) es un m-vector (asumiendo que el sistema tiene m salidas) el sistema de ecuaciones anterior es en realidad un sistema de n × m ecuaciones. no son medibles directamente. Es decir el sistema es completamente e observable si las ecuaciones: y(0) = Cx(0) y(T ) = CGx(0) . La raz´n de esto es o o o que la observabilidad de un sistema no aut´nomo se reduce a la del sistema aut´nomo o o equivalente. x2 (0). · · · . . .57) C ∗ . la observabilidad a de un sistema a partir de su funci´n de transferencia se puede asegurar si ´sta no o e presenta cancelaciones de polos y ceros. G∗ C ∗ . Esto se traduce en la siguiente condici´n de observabilidad o completa: . . xn (0) donde xi (0) indica la i´sima componente de x(0).18 CONTROLABILIDAD Y OBSERVABILIDAD La observabilidad juega un papel esencial en el control de aquellos sistemas en los que algunas de las variables de estado no son accesibles. . y(2T ). Rango =n (1. · · · . y((n − 1)T ) se pueden determinar x1 (0). es decir. · · · . o Por otra parte. o Para que la soluci´n de este sistema sea unica debe haber entre ellas n ecuaciones o ´ linealmente independientes. y((n − 1)T ) = CGn−1 x(0) permiten determinar x1 (0).56) o o o es: x(kT ) = Gk x(0) y de ah´ ı y(kT ) = CGk x(0) La observabilidad completa implica que usando y(0). y(T ). · · · . donde ∗ indica la conjugada traspuesta de una matriz y a la matriz que aparece en la condici´n se la llama matriz de observabilidad. N´tese que se ha considerado un sistema aut´nomo. en las que las inc´gnitas son las n componentes de x(0). de una manera an´loga a la de la controlabilidad.

.6.60) N´tese que los sistemas S1 y S2 son diferentes. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 19 Finalmente. es decir.1).7. entonces las matrices de controlabilidad y observabilidad del sistema equivalente tienen el mismo rango que M y N . Transformaci´n de un sistema en formas can´nicas o o Sea un sistema controlable y observable: x(k + 1) = Gx(k) + Hu(k) y(k) = Cx(k) + Du(k) 2 (1.59) Entonces se puede afirmar que2 : SI S1 CONTROLABLE OBSERVABLE ENTONCES S2 OBSERVABLE CONTROLABLE 1. Si se define una transformaci´n o como (1.4. Propiedad 1. se enuncia a continuaci´n una propiedad que ser´ util para poder obte– o a´ ner la representaci´n de un sistema en forma can´nica. Sea un sistema S1 : S1 : x((k + 1)T ) = Gx(kT ) + Hu(kT ) y(kT ) = Cx(kT ) x((k + 1)T ) = G∗ x(kT ) + C ∗ u(kT ) ˆ ˆ ˆ ∗ y (kT ) = H x(kT ) ˆ ˆ (1. cuya matriz de controlabilidad es M y la de observabilidad es N . sin que por ello pueda arguo o mentarse que existe la posibilidad de variar la controlabilidad u observabilidad del mismo. S2 no es una representaci´n alternativa o o de S1 . Principio de Dualidad Este principio.CAP´ ITULO 1. que es debido a Kalman. relaciona la controlabilidad y observabilidad de un sistema con la de otro sistema llamado dual del primero. 1.26) con: ˆ G = P −1 GP ˆ H = P −1 H ˆ C = CP siendo P una matriz invertible.58) Sea S2 el sistema dual de S1 : S2 : (1.1 Sea un sistema LTI dado en la forma usual (1.

Gn−1 H . C ∗ . . C = CQ.2. D = D y def´ ınase el estado x(k) como x(k) = Qˆ(k). Entonces el sistema (1. · · · .    W =        0  0 donde los coeficientes ai son los coeficientes de la ecuaci´n caracter´ o ıstica del sistema. . H = T −1 H. ˆ ˆ ˆ ˆ Sea G = Q−1 GQ.1. G∗ C ∗ . . Obtenci´n de la forma can´nica observable o o En este caso la matriz de transformaci´n es: o Q = (W N ∗ )−1 con N= . a o 1. Obtenci´n de la forma can´nica controlable o o Sea una matriz de transformaci´n T = M W con: o  an−1 an−2 an−2 an−3 . H . . x a o .7. . GH . C = CT .61) est´ en forma can´nica observable. se ver´ el procedimiento para obtener las formas can´nicas a partir de o a o ese sistema. H = Q−1 H. a1 1 1 0 · · · a1 ··· 1 . ··· ··· 0 0 1 0 . es decir: |zI − G| = z n + a1 z n−1 + · · · + an−1 z + an = 0 Se define el estado x(k) en funci´n de la transformaci´n de otro vector de estados x(k): o o ˆ x(k) = T x(k) ˆ Entonces el sistema: ˆx ˆ x(k + 1) = Gˆ(k) + Hu(k) ˆ ˆ ˆ y(k) = Cx(k) + Du(k) (1. 1. . · · · . . . . . . . . . .  M= . . D = D est´ en forma can´nica controlable.7. .20 ´ ´ TRANSFORMACION DE UN SISTEMA EN FORMAS CANONICAS A continuaci´n. (G∗ )n−1 C ∗ .61) ˆ ˆ ˆ ˆ con G = T −1 GT .

es decir. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 21 1. Condici´n necesaria y suficiente para la colocaci´n aro o bitraria de polos Sea un sistema LTI: x(k + 1) = Gx(k) + Hu(k) Se escoge una ley de control que tiene la forma: u(k) = −Kx(k) es decir. se asumir´ que todas las variables de estados a son accesibles. 1. y la ecuaci´n de estado del sistema en bucle cerrado resultar´ ser: o ıa x(k + 1) = (G − HK)x(k) ¡ -K H + x(k+1) z-1 x(k) .CAP´ ITULO 1. podemos medirlas directamente sin tener que estimarlas por otros procedimientos. Colocaci´n de polos mediante realimentaci´n o o del vector de estados En esta secci´n se presentar´ una estrategia de control que permite elegir la situaci´n o a o de los polos de bucle cerrado del sistema. Este tipo de ley de control se la denomina usualmente realimentaci´n del vector de estados.8.2: Diagrama de bloques de un sistema controlado por una realimentaci´n del vector de o estados. mediante la realimentaci´n lineal del vector o de estados. Con esta ley de control o el sistema en bucle cerrado quedar´ ıa: + G u(k) Figura 1.8. Se ver´ que la condici´n necesaria para que esto se pueda conseguir es que a o el sistema sea controlable. Por otra parte. la se˜al de control se obtiene de la realimentaci´n negativa del vector de n o estados multiplicado por una cierta matriz de ganancias K.1.

       δn δn−1 · · · δ1 Se define a continuaci´n: o  ˆ ˆ  HK =   δn δn−1 · · · δ1 . 1         =   0 0 ··· 0 δn δn−1 · · · δ1  0 0 . Si esta condici´n no se cumple. que nos permita colocar los autovalores de (G − HK) en unos valores elegidos a voluntad. . los autovalores de (G − HK) a son (o coinciden con) los polos de bucle cerrado del sistema.  −1 ˆ ˆ  . . . Por tanto. . Procedimientos para calcular K Sean µ1 . es decir. lo que buscamos es ver que condici´n es necesario cumplir para que exista una matriz de ganancias K o determinada. Se obtiene: o     0 1 0 ··· 0 0  0  0   0 1 ··· 0      . . .  . .µ2 .7.   .  . Lema 1.´ ´ 22 COLOCACION DE POLOS MEDIANTE REALIMENTACION DEL VECTOR DE ESTADOS De manera an´loga a lo que se da en sistemas continuos. . 0 0 . .8. . .1. . La ecuaci´n caracter´ o ıstica del sistema en bucle abierto es: |zI − G| = z n + a1 z n−1 + · · · + an = 0 Se define una matriz de transformaci´n T = M W exactamente igual que la matriz o de transformaci´n necesaria para obtener la forma can´nica controlable descrita en la o o secci´n 1.   0  0   0 0 ··· 1 −an −an−1 −an−2 · · · −a1 1 ˆ K = KT = Entonces:  0 0 .2.  .· · ·. para los autovalores de (G − HK).  T GT = G =  . . . T −1 H = H =  . no se podr´n elegir todos o a los polos de bucle cerrado.2 Se demuestra que la condici´n necesaria y suficiente para que por medio de o una realimentaci´n del vector de estados puedan escogerse los polos de bucle cerrado o (es decir. ··· ··· 0 0 . los autovalores de (G − HK)) es que el sistema en bucle abierto sea de estado completamente controlable. 1. . Aquellos que sean complejos siempre ir´n por pares a conjugados.µn los valores deseados para los polos de bucle cerrado.

. N´tese o que si el sistema en bucle abierto viene dado en forma can´nica controlable. la ecuaci´n caracter´ o ıstica del sistema en B. 0 1 .CAP´ ITULO 1. . CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 23 Por otra parte. . . . 1 − a1 (1. se verifica o que T = I = T −1 . . = . la ecuaci´n caracter´ o ıstica correspondiente a los autovalores deseados ser´: a (z − µ1 )(z − µ2 ) · · · (z − µn ) = z n + α1 z n−1 + α2 z n−2 + · · · + αn−1 + αn = 0 Igualando los coeficientes de ambas ecuaciones caracter´ ısticas: α1 = a 1 + δ 1 α2 = a 2 + δ 2 . . ··· ··· 0 0 .62) T −1 que coloca los polos de bucle cerrado del sistema en los valores deseados. 0 0 .  0 0 0 ··· 1 −an −an−1 −an−2 · · · −a1 0 0 . . . 0 0 δn δn−1 z 0 . = z . . . . . . 1 ··· ···       −     0 0 . .               ··· 0  · · · δ1 −1 ··· z ··· . n−1 − an−1 . 1 0 . 0 0 ··· −1 an + δn an−1 + δn−1 · · · z + a1 + δ1 n = z + (a1 + δ1 )z n−1 + · · · + (an−1 + δn−1 )z + (an + δn ) = 0 A su vez.α αn − an . . . . . es: ˆ ˆ |zI − G − HK| = |zI − G + HK|  1 0 ··· 0  0 1 ··· 0   .  .  0 0 ··· 0    +   =  0 0 ··· 0 0 0 0 .C. . . . .α . . . . . . . . . . αn = a n + δ n se obtiene la siguiente expresi´n para K: o ˆ K = KT −1 = δn δn−1 · · · δ1 T −1 . · · · . .

o Definici´n 1. . .2. todos los autovalores de (G − HK) igual a cero) se e consigue un control dead-beat. Gn−1 H . . Lema 1. a Finalmente. Para obtener este tipo de control se deben especificar los polos de bucle cerrado conforme a lo que se establece en el siguiente lema. donde n es a el orden del sistema. otro procedimiento que puede ser util para sistemas de bajo orden ´ consiste en tomar K = k1 k2 · · · k n plantear la ecuaci´n caracter´ o ıstica en funci´n de los ki : o |zI − G + HK| = 0 e igualar a los coeficientes de z n + α1 z n−1 + α2 z n−2 + · · · + αn−1 + αn = 0 0 0 ··· 0 1 . el que emplea la f´rmula de Ackermann.4 Dado un sistema LTI. . −1 φ(G) 1.´ ´ 24 COLOCACION DE POLOS MEDIANTE REALIMENTACION DEL VECTOR DE ESTADOS 1. Control Dead-Beat Este es un tipo de control que resulta ser un caso particular del control por colocaci´n de polos. GH . Seg´n esto. . Aqu´ mena ı cionaremos uno muy conocido.8.8. la o u expresi´n para K tomar´ la forma: o ıa K= donde: φ(G) = Gn + α1 Gn−1 + · · · + αn−1 G + αn I Los coeficientes αi se calcular´n como en el apartado anterior.3. · · · .3 Se demuestra que si se escogen los polos de bucle cerrado de manera que est´n todos en el origen (es decir.1. H . entenderemos como control dead-beat aquel que o consigue llevar el estado a cero en como m´ximo n intervalos de muestreo. Procedimiento alternativo: la f´rmula de Ackermann o Existen otros procedimientos alternativos para el c´lculo de la matriz K.

CAP´ ITULO 1.5 − j0. Por otra parte. De hecho en este tipo de control. .63) por tanto. En primer lugar hay que determinar la controlabilidad del sistema. La ecuaci´n o caracter´ ıstica de bucle cerrado deseada es: |zI − G + HK| = (z − 0.5 + j0.16 z + 1 por lo que los coeficientes ai son a1 = 1 y a2 = 0. Para ello. GH = 0 1 1 −1 cuyo rango es igual a dos (basta comprobar que su determinante es distinto de cero). de manera que para llevar el estado a a cero partiendo de un estado inicial arbitrario se precisar´ un valor muy alto de la a se˜al. A partir de aqu´ se puede aplicar ı cualquiera de los m´todos explicados anteriormente. n Ejemplo 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 25 Esto se lleva a la pr´ctica con una matriz de realimentaci´n del vector de estados a o calculada mediante: K = −an −an−1 · · · −a1 T −1 Este tipo de control no goza de una reputaci´n excesivamente favorable porque habito ualmente se precisa de una se˜al de control de amplitud muy grande para obtener la n respuesta dead-beat. se forma la matriz de controlabilidad: . el unico par´metro de dise˜o ´ a n que se ha de elegir es el tiempo de muestreo. por lo que el sistema es controlable y se puede proceder a calcular K.16 −1 0 1 Se desea determinar una matriz K. los n intervalos e n de muestreo supondr´n un tiempo total muy corto.5) = z 2 − z + 0.5 = 0 (1.5 Sea un sistema x(k + 1) = Gx(k) + Hu(k) con G= 0 1 −0.5 ± j0. tal que los polos de bucle cerrado sean el par complejo conjugado z = 0.5. H . la ecuaci´n caracter´ o ıstica de bucle abierto del sistema es: |zI − G| = z −1 0. los coeficientes αi son en este caso α1 = −1 y α2 = 0.16. Si ´ste es muy peque˜o.5. e .5)(z − 0.

63) e identificamos coeficientes: 1 + k2 = −1 k1 + 0.34 −2 M´todo 2 (f´rmula de Ackermann) e o En este caso la f´rmula de Ackermann ser´ o ıa: K= donde φ(G) es φ(G) = G2 − G + 0.5 .16 −1 + 0.34 la comparamos con la ecuaci´n caracter´ o ıstica deseada (1. H .5 0 0 0.16 = 0.34 por lo que K = = M´todo 3 e Este procedimiento es apropiado para sistemas de bajo orden como el que nos ocupa. −1 φ(G) − 0 1 −0.84 0. α2 − a 2 .16 −1 = 0. α 1 − a 1 .16 + k1 z + 1 + k2 2 = z + (1 + k2 )z + k1 + 0.5 0. se toma K = [k1 k2 ] y se formula la ecuaci´n caracter´ o ıstica de bucle cerrado en funci´n de K: o |zI − G + HK| = 0 1 z 0 + − −0.34 −2 0. por lo que T = I e o y por tanto: K = 0.34 −2 −1 0 1 .5I −0.16 −1 0 z z −1 = 0.16 0.32 2.34 −2 = 0.´ ´ 26 COLOCACION DE POLOS MEDIANTE REALIMENTACION DEL VECTOR DE ESTADOS M´todo 1 e . K= T −1 Obs´rvese que el sistema viene dado en forma can´nica controlable. En primer lugar. GH .32 2.16 = 0 0 1 k1 k2 0 1 0 1 1 −1 0.

que evidentemente coincide con el obtenido mediante los dos m´todos anteriores.16 1 x1 (k) x2 (k) Supongamos ahora que el estado inicial es x1 (0) x2 (0) entonces se tiene que: x1 (1) x2 (1) e iterando una vez m´s: a x1 (2) x2 (2) = 0 1 0 0 b 0 = 0 0 = 0 1 0 0 a b = b 0 = a b luego este control lleva al estado a cero en 2 pasos y es efectivamente un control deadbeat. por lo que se tiene ya el valor de K. En este caso: K= −a2 −a1 T −1 = −0. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 27 de donde se obtiene que k1 = 0. obtenemos la ecuaci´n de o estado del sistema en bucle cerrado: x1 (k + 1) x2 (k + 1) = = 0 1 −0.16 −1 Vamos a verificar que el control es dead-beat.CAP´ ITULO 1.34 y k2 = −2. Para ello. 1. En ocasiones. Observadores del estado En el control por colocaci´n de polos se asume que el estado se puede medir direco tamente. e Ejemplo 1.9. y comprobarlo calculando la evoluci´n del sistema a partir de un o estado inicial arbitrario. sin embargo. puede que esta suposici´n no se cumpla y todas o .16 − 1 x1 (k) 0 1 x2 (k) 0 0 x1 (k) x2 (k) + 0 1 0.6 Calcular para el mismo sistema del ejemplo anterior la matriz K que conlleva un control dead-beat.

o sino que se ha de acudir a un procedimiento iterativo para estimarlo. para poder controlar el sistema se deber´n estimar los valores de esas variables de estado no accesibles. Por tanto x(k + 1) se puede determinar. s´ y s´lo s´. o Lema 1. y(k − 1). Dado un o o sistema LTI. 1. Procedimiento iterativo para la estimaci´n del estado o Sea un sistema LTI x(k + 1) = Gx(k) + Hu(k) y(k) = Cx(k) (1. si el sistema es observable. donde n es el orden del sistema. Observador de orden reducido. 3. Es aqu´l que estima todas las variables de estae do.u(k − 1).4 Condici´n necesaria y suficiente para la observaci´n del estado.u(k − n + 1). Observador del estado completo. se puede determinar x(k + 1) a partir de y(k).· · ·. Este proceso de a estimaci´n es lo que se conoce como observaci´n. Por u esta raz´n no es posible utilizar un procedimiento algebraico para determinar el estado. formularemos en primer lugar las condiciones para o que se pueda llevar a cabo la observaci´n.64) . Es decir.1.y(k − n + 1) y u(k).28 OBSERVADORES DEL ESTADO o algunas de las variables de estado no puedan ser medidas. puede que haya variables de estado no accesibles.· · ·. el sistema ı o ı es completamente observable. En este caso s´lo se estiman aquellas variables de o estado que no son accesibles. Como en el caso de la colocaci´n de polos.9. no debe olvidarse que sobre el sistema act´an ruidos y perturbaciones. 2. que realiza la estimaci´n de las variables de estado bas´ndose en los valores medidos (observados) de o a las salidas y la se˜al de control. o o Un observador del estado es un subsistema del sistema de control. Observador de orden m´ ınimo. Sin embargo. en n pasos. En cualquier caso. Se distinguen tres tipos de observadores. En esta asignatura nos centraremos en los dos primeros tipos de observadores. Este tipo de observador estima todas las variables no accesibles y algunas de las accesibles. en funci´n n o de las variables de estado que se estimen: 1.

esta estrategia no es muy aconsejable. Por tanto. si x(0) = x(0) entonces se verifica ˆ que x(k) = x(k). definir el error de estimaci´n en k como: ˆ o e(k) = x(k) − x(k) ˆ Restando la ecuaci´n de estado aproximada (1. no se hace uso de la salida del siso tema. es decir: e(k) → 0 ⇒ x(k) → x(k) ˆ Por tanto. Esta convergencia al valor ıa real. si sus autovalores est´n dentro del c´ a ırculo unidad) el ((estado)) de este sistema tiende a cero. si las condiciones iniciales son diferentes entonces. sin embargo. la propia din´mica del sistema hace que la aproxia maci´n del estado tienda al valor real del mismo.65) Si las condiciones iniciales son las mismas. x(k) = x(k). puede ser muy lenta. Esto quiere decir que podr´ o ıamos usar la propia ecuaci´n del sistema para obtener en cualquier instante k una aproximaci´n o o del estado. de ˆ manera general. de manera que la ecuaci´n para e e o obtener la aproximaci´n del estado para el instante k + 1 ser´ o ıa: x(k + 1) = Gˆ(k) + Hu(k) + Ke (y(k) − C x(k)) ˆ x ˆ donde Ke es una matriz de ponderaci´n o ganancia. . Podemos pues.65) de la real (1. incluso si existen discrepancias entre las matrices del sistema y las del proceso real al que dicho sistema representa. y por otra parte no siempre se tratar´ con a sistemas estables. cuyo error ir´ decayendo a lo largo del tiempo.64): o x(k + 1) − x(k + 1) = G (x(k) − x(k)) ˆ ˆ que teniendo en cuenta la definici´n del error de aproximaci´n es equivalente a: o o e(k + 1) = Ge(k) que se puede considerar como un sistema din´mico aut´nomo. que denotaremos x(k). que siempre ser´ accesible. Sin embargo. N´tese que en el esquema que se ha presentado. ´sta evoluo ˆ e cionar´ seg´n la din´mica del sistema a u a x(k + 1) = Gˆ(k) + Hu(k) ˆ x y (k) = C x(k) ˆ ˆ (1. si el sistema es estable. es decir. Esto puede ser aprovechado para mejorar el rendimiena to del observador introduci´ndose un t´rmino corrector. Este t´rmino se puede elegir de o e manera que se mejore el rendimiento. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 29 Si se dispone de una aproximaci´n del estado en k. Si G es una matriz a o estable (es decir.CAP´ ITULO 1.

2.9. pueden representarse mediante un o diagrama de bloques que se ilustra en las figuras 1. u(k) = −Kx(k) siendo el estado del sistema x(k) no accesible pero s´ observable. se o ver´ a continuaci´n que marcan la din´mica de la evoluci´n del error de observaci´n.4.3 y 1. se realiza utilizando o informaci´n disponible en el instante k. a o a o o En efecto. Una manera evidente de lograr esto es colocar todos los polos del observador en cero.64) se llega a o que e(k + 1) = (G − Ke C)e(k) de lo que puede observarse que los polos del observador determinan la din´mica del a error. de manera que se consiga que el error de aproximaci´n o muestre una respuesta dead-beat.64) con una ley de control por realimentaci´n o negativa del vector de estados. el error converger´ a cero independientemente de la a estimaci´n del estado inicial x(0). . Esto se consigue eligiendo de manera apropiada Ke .9. Finalmente. Por tanto. o ˆ La ecuaci´n del observador y del propio sistema en espacio de estados controlado o por la realimentaci´n lineal del vector de estados. o x(k + 1) = Gˆ(k) + Hu(k) + Ke (y(k) − y (k)) ˆ x ˆ = (G − Ke C)ˆ(k) + Hu(k) + Ke y(k) x = (G − Ke C − HK)ˆ(k) + Ke y(k) x (1.1 se obtiene ı. podemos ı sustituir el valor del estado por una aproximaci´n de manera que o u(k) = −K x(k) ˆ y de ah´ aplicando las consideraciones de la secci´n 1. es evidente que interesa que la estimaci´n del estado converja r´pidao a mente al valor real de dicho estado. y como se hizo en la secci´n 1. A los autovalores de la matriz (G − K e C) o se les suele denominar polos del observador. Si G − Ke C es estable.30 OBSERVADORES DEL ESTADO 1.9. si se resta la ecuaci´n del observador de la del sistema real (1. La palabra predictivo se utiliza o para indicar que la estimaci´n del valor futuro del estado en k + 1.1.66) ´ Esta es la llamada ecuaci´n del observador predictivo. Observador del estado completo Sea un sistema LTI observable (1.

CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 31 + G u(k) x(k) y(k) u(k) OBSERVADOR Figura 1. ¦ H + z-1 ¤ + x(k+1) x(k) § ¥ £ -K ¢ u(k) H + x(k+1) z-1 x(k) C + y(k) C + - y(k) .3: Diagrama de bloques de un sistema LTI controlado mediante una realimentaci´n del vector o de estados que estima el estado con un observador. x(k) u(k) + + y(k) G Ke Figura 1.4: Diagrama de bloques de un observador de orden completo.CAP´ ITULO 1.

G∗ C ∗ . a1 1 1 0   Ke = (W N ∗ )−1   · · · a1 ··· 1 . ··· ··· 0 0      0  0 1 0 . · · · . Tambi´n puede emplearse la f´rmula de Ackermann. .  (1. . Si la ecuaci´n caracter´ o ıstica deseada del observador es: z n + α1 z n−1 + · · · + αn−1 z + αn = 0 y la del sistema es z n + +a1 z n−1 + · · · + an−1 z + an = 0 entonces  αn − a n αn−1 − an−1 .7 Consid´rese un sistema como (1.64) con e G= 3 1 1 0 1 H= 0. . . . .   .1.8. .9.   . (G∗ )n−1 C ∗ . CGn−1 1 φ(G) = Gn + α1 Gn−1 + · · · + αn−1 G + αn I = 0 Ejemplo 1. .67) N= . N´tese que si el sistema viene indicado en forma can´nica observable o o ∗ −1 (W N ) = I. . α1 − a 1      donde    W =    an−1 an−2 an−2 an−3 .32 OBSERVADORES DEL ESTADO 1. que para este caso e o es: −1    0 C  CG   0      Ke = φ(G)    . C´lculo de Ke a El procedimiento para elegir Ke de manera que se coloquen los polos del observador en unos valores especificados es an´logo al de la colocaci´n de polos vista en la secci´n a o o 1. donde es decir. la misma matriz W empleada en la colocaci´n de polos y la matriz de obo 3 servabilidad . . .  . . . a a´n a pesar de que esto pueda alargar la exposici´n del tema al repetirse ecuaciones y expresiones. C ∗ .2. . .5 1 C= 1 0 A fin de obtener un texto m´s legible se evita en lo posible hacer referencias a material anterior. . . u o .

Deseamos que el observador tenga una respuesta dead-beat. = rango 1 1 0 1 =2 luego el sistema es completamente observable. G∗ C ∗ . se ha de comprobar que el n sistema es observable.CAP´ ITULO 1. Para ello se comprueba que rango . C ∗ . En primer lugar. El siguiente paso es hallar la ecuaci´n o caracter´ ıstica del sistema en bucle abierto: |zI − G| = z 0 1 1 − 0 z 0 1 = z 2 − 2z + 1 = 0 luego a1 = −2 y a2 = 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 33 dise˜aremos un observador del estado. luego la ecuaci´n caracter´ o ıstica deseada del observador ser´: a z 2 = 0 ⇒ α 1 = α2 = 0 A continuaci´n se calcular´ Ke : o a Ke = (W N ∗ )−1 con N= resultando Ke = −1 2 −2 1 1 0 1 1 0 1 W = a1 1 1 0 2 1 = C´lculo de Ke mediante la f´rmula de Ackermann a o En este caso la f´rmula de Ackermann es: o Ke = φ(G) con φ(G) = G2 + α1 G + α2 I = G2 resultando Ke = 1 1 0 1 2 C CG −1 0 1 1 0 1 1 −1 0 1 = 2 1 que evidentemente es el mismo resultado que el obtenido con el procedimiento anterior. .

Comentarios acerca del papel de Ke Se ha visto que Ke se utiliza para corregir la estimaci´n. Sea u x(0) = entonces e(0) = x(0) − x(0) = ˆ adem´s se tiene que a G − Ke C = el error evoluciona.9. disminuyendo el efecto de o las incertidumbres que se tengan sobre la din´mica real de la planta.2. Si estas incera tidumbres son importantes (es decir.2. seg´n u e1 (k + 1) e2 (k + 1) = −1 1 −1 1 e1 (k) e2 (k) −1 1 −1 1 a1 b1 x(0) = ˆ a2 b2 = a b a1 − a 2 b1 − b 2 por lo que se calcula la evoluci´n de este error: o e1 (1) e2 (1) = = e1 (2) e2 (2) = = −1 1 −1 1 −a + b −a + b −1 1 −1 1 0 0 a b −a + b −a + b luego. tal y como se pretend´ la estimaci´n del vector de estados coincide con el ıa. e o Finalmente. por tanto. la ecuaci´n del observador es: o x1 (k + 1) ˆ x1 (k + 1) ˆ = −1 1 −1 1 x1 (k) ˆ x1 (k) ˆ + 0. o valor real de dicho vector dos tiempos de muestreo despu´s de iniciarse la estimaci´n.34 OBSERVADORES DEL ESTADO Estudio de la evoluci´n del error de estimaci´n o o Vamos a comprobar que el error cae a cero seg´n una respuesta dead-beat.5 1 u(k) + 2 1 y(k) 1. si se tiene poca confianza en que el modelo de la .

CAP´ ITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

35

planta coincida con la din´mica real de la misma) este t´rmino corrector deber´ tomar a e ıa un valor alto. Sin embargo, si la se˜al de salida est´ contaminada por perturbaciones y n a ruido en general procedente, por ejemplo, de los sensores de medida, entonces la se˜al n de salida no es fiable en el sentido de que no proviene unicamente de la din´mica real de ´ a la planta. Por tanto, en estas situaciones el t´rmino corrector deber´ ser m´s peque˜o. e ıa a n Al seleccionar Ke se debe pensar no s´lo en reducir el error en base a una correcci´n o o en´rgica, sino que hay que tener en cuenta que cuando hay ruidos o perturbaciones, e una ganancia Ke alta no contribuir´ a reducir el error, porque las correcciones no ir´ ıa ıan en la ((direcci´n)) correcta. Es decir, hay que llegar a un compromiso entre la velocidad o de respuesta y la sensibilidad a ruidos y perturbaciones.

1.9.2.3.

Efectos de la adici´n del observador o

Hemos supuesto que al no disponerse de x(k) para calcular la se˜al de control, se n usa el observador para producir una estimaci´n x(k), de manera que o ˆ u(k) = −K x(k) ˆ (1.68)

Cabe preguntarse si al usar el observador, se colocan los polos del sistema en el sitio que se pretende al calcularse la ganancia de realimentaci´n del vector de estado K. o ¿Que efectos tiene el observador sobre los polos de bucle cerrado? Para estudiar esto, se analizar´ el efecto que tiene la adici´n del observador sobre la ecuaci´n caracter´ a o o ıstica del sistema en bucle cerrado. Sea el sistema (1.64) controlado mediante (1.68). La ecuaci´n de estado puede o reescribirse como: x(k + 1) = Gx(k) − HK x(k) ˆ = (G − HK)x(k) + HK(x(k) − x(k)) ˆ = (G − HK)x(k) + HKe(k) donde e(k) es el error de observaci´n en el instante k. Recordemos que el error de o observaci´n viene dado por: o e(k + 1) = (G − Ke C)e(k) La ecuaci´n de estado y la del error, se pueden combinar en la ecuaci´n de un sistema o o aut´nomo aumentado que describe la din´mica del sistema observado (es decir, de todo o a el conjunto sistema-controlador-observador): x(k + 1) e(k + 1) = G − HK HK 0 G − Ke C x(k) e(k)

36

OBSERVADORES DEL ESTADO

La ecuaci´n caracter´ o ıstica de este sistema es zI − G + HK −HK 0 zI − G + Ke C es decir, |zI − G + HK||zI − G + Ke C| = 0 Dado que las ra´ de esta ecuaci´n son las ra´ de cada uno de los dos determinantes ıces o ıces que aparecen, esto implica que los polos del sistema completo son los polos del sistema en bucle cerrado, tal y como se han colocado mediante el dise˜o de K junto con los n polos del observador. Por tanto, la colocaci´n de polos y la observaci´n son dos cosas o o independientes, porque la adici´n del observador no modifica los polos de bucle cerrado o del sistema tal y como se eligieron al dise˜ar K. Por tanto: n =0

Los polos del sistema se eligen para que se cumplan las especificaciones del sistema de control. Los polos del observador se escogen de manera que la respuesta del observador sea m´s r´pida que la del sistema (para que esta ultima resulte dominante), a a ´ t´ ıpicamente 4 o 5 veces m´s r´pida. a a

1.9.3.

Observador de orden m´ ınimo

Sup´ngase que x(k) es un n-vector y que y(k) es un m-vector. Como las m salidas o son combinaciones lineales del estado, hay m variables que no necesitan ser estimadas. El observador de orden m´ ınimo ser´ el que estime las n − m restantes. a Para dise˜ar el observador de orden m´ n ınimo estableceremos una partici´n del vector o de estados:   xa (k) x(k) =  · · ·  xb (k) donde el m-vector xa (k) son las variables medibles (accesibles) y el n − m-vector xb (k) son las variables no medibles (no accesibles). Esta partici´n del vector de estados o

CAP´ ITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

37

donde Gaa ∈ Rm×m , Gab ∈ Rm×(n−m) , Gba ∈ R(n−m)×m , Gbb ∈ R(n−m)×(n−m) , Ha ∈ Rm×1 , Hb ∈ R(n−m)×1 . La ecuaci´n de la parte del estado que es accesible (medible) o ser´ ıa: xa (k + 1) = Gaa xa (k) + Gab xb (k) + Ha u(k) N´tese que en esta ecuaci´n hay t´rminos que no son medibles, por lo tanto la podemos o o e reescribir agrupando los t´rminos medibles a la izquierda y los no medibles a la derecha: e xa (k + 1) − Gaa xa (k) − Ha u(k) = Gab xb (k) (1.69)

determina una partici´n en la ecuaci´n de estados: o o   .       Gaa . Gab . xa (k + 1) Ha   xa (k)   =  · · · . · · ·   · · ·  +  · · ·  u(k) . ··· .   . xb (k + 1) xb (k) Hb . Gbb Gba .   xa (k) . . 0  ···  y(k) = I . xb (k)

Por otro lado, la parte del vector de estados que no se puede medir se puede escribir como: xb (k + 1) = Gba xa (k) + Gbb xb (k) + Hb u(k) Obs´rvese que en esta ecuaci´n, los t´rminos que dependen de xa (k) y u(k) son conoe o e cidos mientras que el t´rmino que depende de xb (k) es desconocido. Esta ecuaci´n la e o podemos reescribir como xb (k + 1) = Gbb xb (k) + [Gba xa (k) + Hb u(k)] (1.70)

El dise˜o del observador de orden m´ n ınimo se realiza tomando como referencia el del observador de orden completo, cuya ecuaci´n de estados es o x(k + 1) = Gx(k) + Hu(k) En el caso del observador de orden m´ ınimo, la ecuaci´n (1.70), es decir, la ecuaci´n o o que describe la evoluci´n de la parte del estado no medible, es la que hace el papel o de ecuaci´n de estado. Por otra parte, se conoce que la ecuaci´n de salida para el o o observador de orden completo es: y(k) = Cx(k) donde y(k) es medible y Cx(k) es no medible (por serlo x(k)). Obs´rvese que se puede e establecer un paralelismo entre los t´rminos de esta ecuaci´n y los de la ecuaci´n (1.69). e o o En el caso del observador de orden m´ ınimo, por tanto, se considera como ecuaci´n de o salida la ecuaci´n (1.69). o

71) se obtiene o xb (k + 1) = (Gbb − Ke Gab )ˆb (k) + Ke y(k + 1) + (Gba − Ke Gaa )y(k) + (Hb − Ke Ha )u(k) ˆ x que ser´ la ecuaci´n del observador de orden m´ ıa o ınimo.38 OBSERVADORES DEL ESTADO Recordemos que la ecuaci´n del observador de orden completo es o x(k + 1) = (G − Ke C)ˆ(k) + Hu(k) + Ke y(k) ˆ x Comparando las ecuaciones de estado y salida del observador de orden completo y las del observador de orden m´ ınimo. Obs´rvese. Se puede demostrar (no se har´ aqu´ que esta ecuaci´n se puede a ı). de la ecuaci´n del sistema sabemos que a o y(k) = xa (k) luego. sin embargo. Los polos del observador de orden m´ ınimo ser´ los autovalores de (Gbb − Ke Gab ). o reescribir como: xb (k) = η (k) + Ke xa (k) ˆ ˆ η (k + 1) = (Gbb − Ke Gab )ˆ(k) + [(Gbb − Ke Gab )Ke + Gba − Ke Gaa ] y(k) ˆ η +(Hb − Ke Ha )u(k) La ecuaci´n caracter´ o ıstica del observador de orden m´ ınimo es: |zI − Gbb + Ke Gab | = 0 y como en el caso del observador de orden completo. Como es l´gico el valor o e o de la salida en k + 1 no est´ disponible en el instante k. aplicando esto en la ecuaci´n (1. que en ıan e esta ecuaci´n aparece un t´rmino que multiplica a y(k + 1).71) Adem´s. Ke se puede elegir para colocar los polos del observador donde se desee mediante los m´todos indicados en la secci´n e o (1. se establecen las siguientes analog´ ıas: Observador de orden completo Observador de orden m´ ınimo x(k) ˆ G Hu(k) y(k) C Ke ∈ Rn×m Teniendo en cuenta esto. se obtiene xb (k+1) = (Gbb −Ke Gab )ˆb (k)+Gba xa (k)+Hb u(k)+Ke [xa (k + 1) − Gaa xa (k) − Ha u(k)] ˆ x (1.72) xb (k) ˆ Gbb Gba xa (k) + Hb u(k) xa (k + 1) − Gaa xa (k) − Ha u(k) Gab Ke ∈ R(n−m)×m . por lo que esta ecuaci´n ha a o de ser modificada.

 .  . . Por ejemplo. se comprueba que la ecuaci´n a o caracter´ ıstica del conjunto formado por el observador de orden m´ ınimo y el sistema controlado por una realimentaci´n lineal del vector de estados es: o |zI − G + HK||zI − Gbb + Ke Gab | = 0 por lo que. si la salida y(k) es un escalar. se ha de comprobar la controlabilidad y observabilidad del sistema: rango rango .02 0. Ejemplo 1. . G∗ C ∗ = rango = rango 0.8 Sea un sistema LTI cuyas matrices son G= se pide 1. La ecuaci´n caracter´ o ıstica del controlador es: z − 1 −0.06 =2 0. C ∗ . En primer lugar. La f´rmula de Ackermann. . CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 39 1.2.9. .2 0.2 C= 1 0 Luego el sistema cumple ambas condiciones. GH . es decir m = 1.4. H . Gab Gn−2 bb 1 donde φ(Gbb ) = Gn−1 + α1 Gn−2 + · · · + αn−1 I bb bb De manera an´loga a la del observador de orden completo. dise˜ar un observador ´ n de orden m´ ınimo con respuesta dead-beat.6 ± j0.02 0. nuevamente se ve que los problemas de dise˜o del controlador y del obsern vador son independientes. n 2. Asumiendo que y(k) = x1 (k) es el unico estado accesible.2 1 1 =2 0 0. por ejemplo. quedar´ o ıa:  −1   Gab 0  Gab Gbb   0      Ke = φ(Gbb )    . se tienen que estimar n − 1 variables.CAP´ ITULO 1.2 |zI − G| = = z 2 − 2z + 1 0 z−1 . Dise˜ar un controlador que coloque los polos de bucle cerrado en z = 0.1.2 0 1 H= 0.2 1 0.    .

0.2 x1 (k) x2 (k) ˆ =− 8 3.2)ˆ(k) + [(1 − 5 × 0. 0. como a 25 −2. Gab .1u(k) x2 (k) = Ke y(k) + η (k) ˆ ˆ = 5y(k) + η (k) ˆ .4) = z 2 − 1.2z + 0.     1 .2 la ley de control se formular´ por tanto. 0.2 − 5 × 0. Gbb Gba .02 Ha  .02 −0. Gaa . 1 .2) × 5 + 0 − 5 × 1] y(k) + (0.40 OBSERVADORES DEL ESTADO luego a1 = −2 y a2 = 1.2)−1 (1) = 5 Las ecuaciones del observador ser´ ıan η (k + 1) = (Gbb − Ke Gab )ˆ(k) + [(Gbb − Ke Gab )Ke + Gba − Ke Gaa ] y(k) ˆ η +(Hb − Ke Ha )u(k) = (1 − 5 × 0. K= α2 − a 2 α1 − a 1 T −1 = a1 1 1 0 −0. = En cuanto al observador de que es de orden 1.     ··· .52 luego α1 = −1.2 y α2 = 0. ´ste estimar´ una sola variable.    .52.4)(z − 0.2 y(k) x2 (k) ˆ 8 3. Por tanto.6 − j0.  . GH . orden m´ ınimo.48 0. ···  =  . H .2 Hb 0 .5 .  ···  =  ···  ··· . por lo e a de la ecuaci´n de estado en este caso ser´: o a  . La partici´n o    .6 + j0.2 0.2 . . ···  .5 25 2. .2 T −1 donde la matriz T se calcula como T = y T −1 = lo que lleva a K= u(k) = −K x(k) ˆ = − 8 3.02)u(k) η = −5y(k) + 0. La ecuaci´n caracter´ o ıstica de bucle cerrado deseada es: (z − 0.8 0.02 0. La ecuaci´n caracter´ o ıstica deseada del observador es Φ(z) = z = 0 luego Ke = φ(Gbb )[Gab ]−1 [1] = (1)(0.

se encona trar´ la ley de control que lleva el estado al origen m´s r´pidamente y manteni´ndolo a a a e . e Las estrategias de control optimo calculan la ley de control de manera que se opti´ miza una cierta medida del rendimiento del controlador. o N´tese que este ´ o ındice de funcionamiento pondera la diferencia entre el estado y el origen el instante inicial.2ˆ(k) η 1. hasta un tiempo infinito. No obstante.10. a u(k) = = = = −K x(k) ˆ −8y(k) − 3. y se ha ıa. Control optimo LQR ´ Las t´cnicas de control optimo conforman una de las ramas del control autom´tico e ´ a m´s importantes en el desarrollo de las estrategias modernas de control m´s utilizadas a a hoy en d´ Se han escrito numerosas monograf´ dedicadas a su estudio.2(5y(k) + η (k)) ˆ −24y(k) − 3. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 41 y la ley de control ser´ por tanto. Se parte de un sistema descrito por x(k + 1) = Gx(k) + Hu(k) El objetivo es calcular una ley de control u(k) = −Kx(k) de tal manera que se minimiza el funcional (que expresa un ´ ındice de funcionamiento) 1 J= 2 ∞ (x∗ (k)Qx(k) + u∗ (k)Ru(k)) k=0 (1.2ˆ2 (k) x −8y(k) − 3. cuanto m´s r´pido se llegue a a al origen menor valor de J se tendr´. Esto implica que al minimizarse J. R∗ = R > 0.CAP´ ITULO 1. Por tanto. en estos apuntes s´lo se dar´ una pincelada sobre este particular. tambi´n conocido como LQR e de r´gimen permanente. ıas publicado una ingente cantidad de art´ ıculos en revistas especializadas. centr´ndonos en el o a a caso particular del control LQR con horizonte infinito.73) siendo Q y R matrices de ponderaci´n que cumplen que Q∗ = Q > 0.

4´ . cuando existen discrepancias entre o el modelo del sistema y su din´mica real (algo que ocurre casi siempre. B = H y C = R−1 H ∗ P . Por ejemplo. Este e n o t´rmino impide que se obtenga una ley de control que lleve el estado al origen a expene sas de una actuaci´n muy grande. Por otra parte. pues puede que se obtenga una o ley de control que provoque que el estado no se acerque al origen todo lo posible al principio pero que lo lleve a dicho origen muy r´pidamente en los instantes siguientes. Esta es una interpretaci´n que hay que tomar con cierto cuidado. o a Para calcular la ley de control que minimiza el ´ ındice (1. manteniendo pues el valor de J a muy bajo. pero mana teniendo un nivel de actuaciones moderado. Se demuestra que la matriz K = (R + H ∗ P H)−1 H ∗ P G es la que minimiza el ´ ındice (1. por tanto.42 ´ CONTROL OPTIMO LQR siempre lo m´s cerca posible del origen4 . como por ejemplo moderar el gasto de energ´ o combustible necesario para proporcionar la se˜al de actuaci´n.73) se define una matriz P que satisface la siguiente ecuaci´n de Riccatti: o P = Q + G∗ P G − G∗ P H(R + H ∗ P H)−1 H ∗ P G (1. encontr´ndose por tanto. se observa que en el funcional a hay otro t´rmino que pondera el valor de la secuencia de se˜ales de actuaci´n.73) mediante la ley de control u(k) = −(R + H ∗ P H)−1 H ∗ P Gx(k) La ecuaci´n de estado del sistema en bucle cerrado ser´ por tanto: o a x(k + 1) = (G − H(R + H ∗ P H)−1 H ∗ P G) x(k) = (I + HR−1 H ∗ P )−1 Gx(k) Para este desarrollo se ha empleado el lema de inversi´n o (A + BC)−1 = A−1 − A−1 B(I + CA−1 B)−1 CA con A = I. se conseguir´ una ley de o a control que por una parte acerque el estado al origen lo mas r´pido posible. una soluci´n de a o compromiso entre el rendimiento del controlador y su nivel de actuaci´n.74) La soluci´n de esta ecuaci´n es una matriz P que es herm´ o o ıtica y definida positiva. ıa n o Existen razones m´s sutiles pero no por ello menos importantes para incorporar esta a ponderaci´n del esfuerzo de control. pues los modea los matem´ticos no pueden recoger todas las complejidades de los sistemas o procesos a reales) esta ponderaci´n del esfuerzo de control resulta en un sistema m´s estable. Al minimizarse J. El sentido de o este compromiso puede venir dictado por diferentes razones.

esto es.1. Para ello formularemos un a proceso iterativo en que tomando como valor inicial de P = 0 (es decir una matriz de ceros) se calcular´ el valor de la matriz P en el paso i + 1 como a Pi+1 = Q + G∗ Pi G − G∗ Pi H (R + H ∗ Pi H)−1 H ∗ Pi G La condici´n de parada del bucle o proceso iterativo ser´ que Pi+1 − Pi ≈ 0.11. e Sea un sistema: x(k + 1) = Gx(k) + Hu(k) + ω(k) y(k) = Cx(k) + (k) donde ω(k) y (k) son variables aleatorios que act´an como ruidos aditivos. o a que la diferencia entre Pi+1 y Pi sea una matriz cuyos elementos est´n todos cerca del e cero. Filtro de Kalman El filtro de Kalman es un estimador del estado (en realidad tambi´n se puede e interpretar como filtro y como predictor). En este sentido es un estimador optimo. Se deu muestra que se puede obtener una estimaci´n optima del vector de estados mediante o ´ el siguiente esquema: x(k + 1) = Gˆ(k) + Hu(k) + Ke (k) (y(k) − C x(k)) ˆ x ˆ ∗ ∗ −1 Ke (k) = GPk C (R + CPk C ) Pk+1 = Q + (G − Ke (k)C) Pk G∗ donde R = E { (k) ∗ (k)} Q = E {ω(k)ω ∗ (k)} P0 = E { (0) ∗ (0)} (1.10. pero si podeo mos resolverla f´cilmente si se dispone de un computador. Al igual que en el a o caso del control LQR no se entrar´ en profundidad en el estudio de este estimador. Esto no es algo trivial en general.CAP´ ITULO 1. 1.74). Soluci´n de la ecuaci´n de Riccatti o o Para calcular la ley de control optima LQR en r´gimen permanente es necesario ´ e resolver la ecuaci´n de Riccatti (1. pues o ´ la estimaci´n obtenida tiene el menor error posible teniendo en cuenta que al haber o ruidos actuando. nunca se podr´ obtener una estimaci´n perfecta. sino a que s´lo se presentar´ la formulaci´n de un caso particular. el filtro de Kalman para o a o r´gimen permanente. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 43 1. que tiene en cuenta la presencia de ruidos en la ecuaci´n de estados y la salida.75) .

Usando a esto. N´tese que para e o resolver la ecuaci´n de Riccatti se puede usar el mismo m´todo usado en el LQR.75) se pueden reescribir como: o x(k + 1) = Gˆ(k) + Hu(k) + Ke (y(k) − C x(k)) ˆ x ˆ ∗ ∗ −1 Ke = GP C (R + CP C ) P = Q + GP G∗ − GP C ∗ (R + CP C ∗ )−1 CP G∗ (1. Se demuestra a que conforme k → ∞: Pk+1 → P Ke (k) → Ke donde P y Ke son matrices constantes y adem´s P es semidefinida positiva.76) que son las ecuaciones del filtro de Kalman de r´gimen permanente.Q se asumen constantes.44 FILTRO DE KALMAN donde E {·} denota la esperanza matem´tica y R. las ecuaciones de estimaci´n (1. o e .

Escalones. en cuanto la perturbaci´n aparece o o o 45 .Cap´ ıtulo 2 Modelos de procesos y perturbaciones 2. Todos estos modelos tienen en com´n que son absolutamente predecibles en su evoluu ci´n en funci´n de las condiciones iniciales. Sinusoides. Es importante tener en o cuenta que los modelos de procesos con perturbaciones tienen su origen en el modelado de perturbaciones y no al rev´s. Es por tanto com´n en esta teor´ el considerar que las perturbaciones van a tener la u ıa forma de Pulsos. Introducci´n o En este cap´ ıtulo se expondr´n diversos tipos de formas de modelar perturbaciones a y procesos cuya evoluci´n se ve afectada por perturbaciones. Rampas. Es decir.1. Dichas perturbaciones se modelaban siempre de manera muy simplificada. e En la teor´ cl´sica del control autom´tico siempre se ha tenido en cuenta el comıa a a portamiento de los sistemas frente a perturbaciones a la hora de dise˜ar sistemas de n control.

la evoluci´n de la o salida y(k) es perfectamente predecible pues la din´mica del sistema es conocida. Sin embargo. en el que la entrada es cero excepto en ciertos instantes de tiempo separados por m´s de n tiempos de muestreo. o Estoc´stico: relativo a una variable aleatoria. se pueden considerar las perturbaciones deterministas a trozos. Procesos estoc´sticos a Es natural utilizar el concepto de aleatorio o estoc´stico1 para describir una amplia a clase de perturbaciones. En este tipo de sistemas. Es una suposici´n com´n en estos casos. Surgen de la necesidad de estudiar el efecto de perturbaciones m´s realistas en sistemas a de control que se basan en alg´n tipo de esquema predictivo para calcular la se˜al u n de control.3. 1 . Esto es lo que le da variabilidad a la fuente de perturbaciones. La amplitud y momento de aparici´n de esos pulsos n o son desconocidos. donde n es el orden a del sistema: C(z −1 ) w(k) y(k) = A(z −1 ) suponi´ndose que el grado de C(z −1 ) es igual al grado de A(z −1 ). usualmente con varianza finita. De a ah´ el nombre de determinista a trozos. ı 2. una vez que aparecen y se conoce la amplitud del pulso. algo que sigue una determinada distribuci´n de a o probabilidad. pues se a pueden considerar directamente en el c´lculo de la ley de control. el considerar una perturbaci´n absolutamente o predecible (como en el caso de los modelos cl´sicos) no tiene utilidad alguna.2. Si la entrada es e cero excepto en ciertos instantes de tiempo que est´n separados. Perturbaciones deterministas a trozos Como fuente de perturbaciones con una mayor variabilidad que los modelos cl´sicos a antes comentados. a 2. consi– o o u derar que estas perturbaciones vienen generadas por sistemas din´micos.46 PERTURBACIONES DETERMINISTAS A TROZOS podemos predecir su evoluci´n futura. suficientemente realistas para formular problemas de predicci´n con postulados cercanos a la realidad. a Los modelos de perturbaciones deterministas a trozos parten de la suposici´n de o que son generados por un sistema lineal. quiere decir que la a se˜al w(k) es un tren de pulsos.

lo que denotaremos como X(:. En la figura 2. Puede observarse que el valor de la funci´n en cada instante es un o valor aleatorio que en la figura se considera variable en un determinado rango. o 2 Es decir. que denotaremos como X(t0 . En estos procesos.. a Definici´n 2... MODELOS DE PROCESOS Y PERTURBACIONES 47 El concepto de proceso estoc´stico es complejo y alcanza su madurez en los trabajos a de Kolmogorov (1930). es decir t = t0 . w=w0 t0 t1 t2 t3 t4 . w) donde t es la variable tiempo con su significado habitual y w es una variable aleatoria. Un proceso ı o a estoc´stico puede ser considerado como una funci´n de dos variables a o X(t. cuando se habla de una realizaci´n no es m´s que una funci´n com´n que o a o u depende de t.1: Procesos estoc´sticos: realizaciones y variables aleatorias. Para aplicaciones basadas en predicci´n no son muy interesantes. Si consideramos un valor fijo de w. Esta realizaci´n es una funci´n o o o temporal com´n sin ning´n tipo de car´cter aleatorio una vez que se conoce que w = u u a w0 . w0 ) estaremos hablando de una ((realizaci´n)) del proceso. Si por otra parte se considera un instante de tiempo fijo. esto es w = w0 y dejamos la variable t libre.1 se ilustran a n estos conceptos. Figura 2. Aqu´ presentaremos s´lo algunas ideas b´sicas.CAP´ ITULO 2. . haciendo evolucionar hacia delante un modelo lineal. que la evoluci´n del o proceso est´ dictada por un generador de se˜ales aleatorias. :) X(t0 ) tendremos una variable aleatoria... el car´cter estoc´stico s´lo se manifiesta en la aleatoriedad de las a a o condiciones iniciales. Se puede considerar por tanto. a aqu´l cuya evoluci´n o a e o 2 puede ser predicha exactamente con un predictor lineal en base a medidas pasadas. Por otra parte.1 Se denomina proceso estoc´stico determinista.

Esta estructura es demasiado general. el cual se ilustra en la a figura 2.2 Se denomina proceso estoc´stico estacionario. o ı Definici´n 2. . Se suele suponer que ı o e E {x(k)} = 0 es decir. X(t2 + o ı τ ). n 2.4.2. X(t2 ).X(tn + τ ). Es decir. a aqu´l cuya distribuo a e ci´n estad´stica para X(t1 ). a un proceso aleatorio que se puede o considerar como una secuencia cuyos elementos son variables aleatorias independientes entre s´ cuya distribuci´n es id´ntica. simplificaciones de las cuales veremos a continuaci´n las m´s comunes: o a " ¨ ©  ¨  ©    − − y(k)      !   . y normalmente se utilizan diversas v(k) u(k) − − Figura 2.48 MODELOS DE PROCESOS CON RUIDOS Definici´n 2. Modelos de procesos con ruidos En esta secci´n veremos c´mo se pueden generar diversos tipos de procesos eso o toc´sticos. . . su distribuci´n no var´a con el tiempo. que el valor esperado es cero y adem´s a E {x(i)x(j)} = 0 si i = j (por ser variables independientes) σ 2 si i = j Al ruido blanco se le suele considerar prototipo de una se˜al impredecible.2: Modelo de Box-Jenkins. . e El caso m´s general es el llamado modelo de Box-Jenkins.3 Se denomina ruido blanco discreto. cuando a un sistema lineal se le inyecta un ruido blanco v(k) adem´s de a a una entrada externa u(k) a trav´s de sendas funciones de transferencia. .. ..X(tn ) es la misma que para X(t1 + τ ).

Viene descrito por y(k) + a1 y(k − 1) + · · · + an y(k − n) = b1 u(k − 1) + · · · + bn u(k − n) + v(k) Como su nombre indica se utiliza en la identificaci´n por el m´todo de los m´ o e ınimos cuadrados (v´ase el tema 4). MODELOS DE PROCESOS Y PERTURBACIONES 49 Modelo de Media M´vil (MA : Moving Average). Tamo o bi´n llamado modelo CARMA (Controlled ARMA). Es la combinaci´n de los dos o o anteriores. Modelo Autoregresivo de Media M´vil (ARMA). Viene descrito por e y(k) + a1 y(k − 1) + · · · + an y(k − n) = b1 u(k − 1) + · · · + bn u(k − n) +v(k) + c1 v(k − 1) + · · · + cn v(k − n) Modelo Autoregresivo con entrada ex´gena para m´ o ınimos cuadrados (ARX-LS ). Sin embargo. no incluye a los valores pasados de la salida por lo que no servir´ para modelar procesos que tengan din´mica.CAP´ ITULO 2. Sin embargo. Este modelo surge como versi´n simplificada del anterior. para el caso en el que o no se necesita que la fuente de perturbaciones tenga una estructura tan compleja. a desde el punto de vista del control es interesante poder considerar el efecto de una entrada externa. la parte aleatoria correspondiente a la perturbaci´n tiene una eso tructura muy simple porque no depende de los valores pasados. Viene descrito por y(k) + d1 y(k − 1) + d2 y(k − 2) + · · · + dn y(k − n) = v(k) En este caso. por lo que se considera el siguiente tipo de modelos de procesos con ruidos. por lo que tomar´ la forma a y(k) + d1 y(k − 1) + · · · + dn y(k − n) = v(k) + c1 v(k − 1) +c2 v(k − 2) + · · · + cn v(k − n) Este modelo permite describir procesos m´s ricos que los anteriores. Modelo Autoregresivo de Media M´vil con una entrada ex´gena (ARMAX). e . a a Modelo Autoregresivo (AR). Es el caso m´s sencillo y viene o a descrito por y(k) = v(k) + c1 v(k − 1) + c2 v(k − 2) + · · · + cn v(k − n) Con este modelo se pueden describir muchos tipos de perturbaciones aleatorias.

por lo que viene descrito por y(k) + a1 y(k − 1) + · · · + an y(k − n) = b1 u(k − 1) + · · · + bn u(k − n) v(k) + c1 v(k − 1) + · · · + cn v(k − n) + ∆ donde ∆ = 1−z −1 . de ruido blanco. . de manera que sean capaces de rechazar perturbaciones en escal´n. Este tipo de modelos es util en esquemas de control predictivo ´ para formular leyes de control que incorporen un efecto integral. o Los modelos anteriores pueden escribirse en forma condensada utilizando polinomios en z −1 tal y como se muestra en la siguiente tabla resumen: Modelo Expresi´n o MA AR ARMA ARMAX ARX-LS ARIMAX y(k) = C(z −1 )v(k) D(z −1 )y(k) = v(k) D(z −1 )y(k) = C(z −1 )v(k) A(z −1 )y(k) = B(z −1 )u(k − 1) + C(z −1 )v(k) A(z −1 )y(k) = B(z −1 )u(k − 1) + v(k) −1 A(z −1 )y(k) = B(z −1 )u(k − 1) + C(z ∆)v(k) Cuando en los modelos anteriores el polinomio que convoluciona con la se˜al v(k) es n distinto de la unidad se habla de ruido coloreado. y en caso contrario.50 MODELOS DE PROCESOS CON RUIDOS Modelo Autoregresivo de Media M´vil integrada y con una entrada ex´gena o o (ARIMAX o CARIMA). Este modelo incorpora un integrador en la fuente de perturbaciones.

Esta estrategia ser´ el objeto de este tema. y por tanto es una herramienta importante en el dise˜o y an´lisis a n a de sistemas de control. Normalmente. o bien obtenerlo mea diante experimentaci´n sobre el proceso que se quiere modelar. La primera opci´n o o requiere un conocimiento muy preciso del proceso que se quiere modelar. Un solo modelo no suele ser a suficiente para describir un proceso. Hay dos maneras de abordar la construcci´n de un modelo: obtenerlo mediante o principios y leyes f´ ısicas que describan la din´mica del proceso. y esto puede ser un problema. Sin embargo. o a 51 . hay que elegir las variables que vayan a ser los estados del sistema. Es. Introducci´n o Un modelo de un proceso es una forma de resumir el conocimiento que se tiene sobre su din´mica. seg´n sea el uso destinado al modu elo este deber´ ser mas o menos detallado. excepto en casos muy simples.Cap´ ıtulo 3 Introducci´n a la identificaci´n de o o sistemas 3. Por tanto. se debe combinar con la otra estrategia que es la denominada identificaci´n de sistemas.1. Por otra parte. Por ejemplo. en general un proceso complicado y muy arduo. se establece una jerarqu´ de a ıa modelos que describe al proceso con mayor o menor detalle. al construir modelos estamos obteniendo representaciones simplificadas de la din´mica real del proceso.

Consiste en obtener un modelo a partir de observaciones obtenidas directamente del propio sistema que se pretende modelar. o a 3. a Estas t´cnicas. Algunas t´cnicas son muy e sencillas.52 ´ ´ IDEAS BASICAS SOBRE IDENTIFICACION DE SISTEMAS 3. etc.1. Esto no es siempre posible. Por tanto. en general. de las que podemos destacar: Planificaci´n de los experimentos. Otras t´cnicas de identificaci´n pueden emplear o e o casi cualquier tipo de se˜al de entrada (es decir. Como comentario general. es necesario tener en cuenta que. Otro aspecto es que a veces no se puede identificar en bucle abierto y hay que hacerlo en bucle cerrado. o A continuaci´n. sin embargo. Puede que el proceso a modelar no pueda ser sometido a este tipo de entradas por consideraciones de seguridad o motivos econ´micos. en el sentido de que una vez hecho el experimento es f´cil obtener el modelo. M´s all´ de eso.2. es necesario que en el experimento se utilicen se˜ales de entrada que exciten todos los modos del sistema. La identificaci´n de un sistema conlleva o una serie de actividades y herramientas. o Estimaci´n de los par´metros del modelo. pero una vez realizado el experimento es m´s complicado a obtener el modelo. . es necesario elegir una t´cnica que nos sea lo m´s rentable e a desde el punto de vista del tipo de experimentos necesarios. es muy costoso experimentar con procesos industriales.2. requieren que en los experimentos se utilicen se˜ales de e n entradas preestablecidas de manera muy precisa: pulsos. pues aunque el sistema sea identificable en . se ir´n desglosando las principales ideas de cada uno de estos aspectos. . Planificaci´n de los experimentos o Dado que la identificaci´n de sistemas involucra experimentar con el proceso a modo elar. o Selecci´n del tipo de modelo. o a Validaci´n del modelo obtenido. Ideas b´sicas sobre identificaci´n de sistemas a o La identificaci´n de sistemas es la aproximaci´n experimental al modelado de siso o temas. n a a un buen m´todo de identificaci´n debe ser insensible a las caracter´ e o ısticas de la entrada. o Elecci´n de un criterio para expresar la bondad del modelo que se va a obtener. sinusoides. son menos exigentes en el tipo de n experimentos necesarios).

´ ´ CAP´ ITULO 3. los modelos los clasificaremos como: Modelos de Caja Blanca. En los primeros se tienen una serie de par´metros que hay que ajustar. Corresponden a un tipo intermedio entre los dos anteriores.2. m´s f´cil ser´ la identificaci´n en bucle a a a a o cerrado. 3. Son los obtenidos a partir de leyes f´ ısicas (esto no ser´ ıa realmente identificaci´n porque no se estar´ haciendo experimentos). INTRODUCCION A LA IDENTIFICACION DE SISTEMAS 53 bucle abierto esta propiedad puede perderse en bucle cerrado. Selecci´n del tipo de modelo o En teor´ la selecci´n del tipo de modelo deber´ venir dada por un conocimiento ıa. mediante leyes f´ ısicas podemos determinar la estructura del modelo (o de parte de ´l) y usar experimentos para terminar de e caracterizar el modelo. si los perfiles de la consigna o referencia que se usan son muy simples. En modelos de espacio de estados tendr´ ıamos la misma situaci´n pero o con las matrices del sistema. o ıa del proceso y de las perturbaciones que deban ser tenidas en cuenta. Modelos de Caja Gris. el modelo no tiene una e serie de par´metros que definen la din´mica sino que se compone de una cantidad de a a informaci´n sobre la misma. En los modelos no param´tricos. Por ejemplo.2. o ıan Modelos de Caja Negra. En el caso que aqu´ nos ocupa los modelos que emplearemos ı ser´n de caja negra y param´tricos. Parte del modelo se obtiene mediante leyes f´ ısicas y otra parte. se ajusta usando medidas experimentales. a en una funci´n de transferencia se tendr´ que ajustar el orden y los coeficientes de o ıan los polinomios. cuanto m´s complejos sean los a lazos de control y m´s se mueva la consigna. si los e lazos de control son demasiado simples. En estos modelos se postula una estructura matematica con una serie de par´metros libres. Tambi´n. por ejemplo los modelos basados en la respuesta en freo cuencia de un sistema. En general. Por ejemplo. por ejemplo. Esto ocurre. a e . a los cuales se les da valor a partir de los a datos obtenidos en los experimentos. Dependiendo de si conocemos mucho o poco la estructura del proceso elegiremos entre uno u otro tipo de modelo. En general. Tambi´n se pueden clasificar los tipos de modelos en param´tricos y no param´trie e e cos.

1. Identificaci´n en l´ o ınea En los m´todos de identificaci´n en l´ e o ınea la estimaci´n se efect´a usando medidas o u que se van obteniendo en tiempo real. y normalmente se usan c´lculos recursivos. a 3. a El esquema de este tipo de identificaci´n ser´ el mostrado en la figura 3. e(k) es el error de estimaci´n a o para la medida k.2. un tipo de modelo y un criterio. que exprese la calidad del modelo obtenido.54 ´ ´ IDEAS BASICAS SOBRE IDENTIFICACION DE SISTEMAS 3. como por ejemplo de la a amplitud y contenido frecuencial de la se˜al de entrada. el proceso de ajuste del modelo se realiza de manera que se busca el valor del vector de par´metros θ que hace m´ a ınimo al ´ ındice o criterio J(θ). el a problema es de estimaci´n estad´ o ıstica. o a Usualmente. Estimar los par´metros es resolver un problema de optimizaci´n en el a o cual.1. es decir.4. Elecci´n de un criterio o En el proceso de estimaci´n del modelo y su subsiguiente validaci´n es necesario o o contar con un criterio que exprese la bondad del ajuste del modelo a los datos. El m´todo e m´s antiguo que emplea esta estrategia es el de los m´ a ınimos cuadrados. debido a Gauss. es aquella que distingue entre o o identificaci´n en l´ o ınea e identificaci´n fuera de l´ o ınea. Una distinci´n amplia. que o . se utilizan criterios que toman la forma: N J(θ) = k=1 g(e(k)) donde θ es el vector de par´metros que se trata de ajustar. Estimaci´n de los par´metros o a Para resolver el problema de estimaci´n de los par´metros del modelo se requiere o a de los elementos comentados anteriormente: datos experimentales. es el del e estimador de m´xima verosimilitud. Normalmente. 3. el mejor modelo es el que hace m´ ınimo el criterio. Hay diversas formas de llevar n a cabo el proceso de estimaci´n. por ejemplo.4. N es el n´mero de observaciones o medidas disponibles y g(·) es una u funci´n usualmente cuadr´tica.2.3. Es necesario tener en cuenta que el modelo obtenido depender´ de los elementos anteriores. cuando los procesos se describen mediante modelos estoc´sticos. Un m´todo muy popular en este caso. Por otra parte.2. En este o ıa esquema aparece un nivel de supervisi´n que es necesario para evitar.

INTRODUCCION A LA IDENTIFICACION DE SISTEMAS 55 u(k) PLANTA y(k) IDENTIFICACIÓN MODELO ACTUALIZADO SUPERVISIÓN MODELO CORREGIDO Figura 3. o N´tese que aunque el proceso real no corresponder´ en general exactamente con el modelo (pues o a todo modelo implica un cierto grado de simplificaci´n de la realidad) se asume que existe un valor del o vector de par´metros que es el que mejor describe al proceso. ıa a 3. Validaci´n del modelo o La validaci´n del modelo consiste en comprobar la bondad del modelo que se ha o obtenido por el proceso de identificaci´n. el modelo actualizado se salga de ciertos l´ ımites o cambie bruscamente (esto no ser´ ıa bueno para ciertas leyes de control basadas en modelos). Este tipo de procedimientos suelen obtener modelos m´s precisos y son m´s fiables en cuanto a a a la convergencia de los par´metros estimados a los par´metros reales del proceso1 . Identificaci´n fuera de l´ o ınea En este caso se toman los datos del experimento (es decir. Una t´cnica muy com´n para comprobar la o e u bondad de un modelo identificado es la validaci´n cruzada. se ajusta el modelo usando para ello todo el conjunto de datos. o a 3.´ ´ CAP´ ITULO 3.1: Esquema de la identificaci´n en l´ o ınea.4. dependiendo de la situaci´n unos funcionar´n mejor que otros. por tanto.2.2. a 1 . En a a cualquier caso. series de medidas) y posteriormente. o el proceso var´ su din´mica con el tiempo.5.2. Este m´todo suele ser el unico e ´ apropiado cuando se pretende usar una estrategia de control adaptativo. existe un consenso general en que no existe un m´todo universalmente e bueno.

θ) = y(t) − y (t. la t´cnica de validaci´n cruzada. o Conjunto de prueba o validaci´n. el criterio VCP no tiene por qu´ ser el mismo e que el VCE . lo que se trata de ver es d´ menor F e e o si el modelo es capaz de reproducir los datos de salida para entradas que no se han empleado en la estimaci´n. estos residuos tienen que ser independientes . o Como se ha comentado anteriormente. CP) La idea tras el concepto de validaci´n del modelo es estimar distintos tipos de modelos o (por ejemplo con distintos ordenes) y quedarse con el que mejor ajusta (es decir. Tampoco puede descartarse la posibilidad de no usar criterio de validaci´n alguno y o efectuar una inspecci´n visual sobre una simulaci´n. CE) ın θ donde VCE es el criterio de estimaci´n. CP) = 2dimensi´n(θ) o 1+ N 1 N N e2 (t. es decir e(t) = y(t) − y (t. θ). el que ´ ˆCE ). Con este modelo se eval´a el estimador obtenido o u mediante un criterio de prueba. Si el ˆ modelo estimado es suficientemente bueno. de tal manera que el vector de par´metros o a ˆCE ser´ estimados sobre el conjunto de estimaci´n θ o ıa ˆ θCE = arg m´ VCE (θ. Finalmente. que puede ser el mismo que el usado en la estimaci´n u otro distinto: o ˆ ˆ FCE = VCP (θCE . e o ´ Otra t´cnica que a veces se utiliza es el an´lisis de residuos. aunque muy popular no es la unica. Mediante esta t´cnica de validaci´n cruzada. el cual asumiendo que las perturbaciones siguen una distribuci´n gaussiana se calcula mediante la f´rmula o o VCP (θ. Es usado para estimar el modelo mediante la resoluci´n o o de un problema de optimizaci´n. se puede usar como criterio para validaci´n el conocido criterio o de Akaike o criterio AIC (Akaike’s Information Criterion). θ) t=1 donde e(t.56 ´ ´ IDEAS BASICAS SOBRE IDENTIFICACION DE SISTEMAS La idea del m´todo de validaci´n cruzada es dividir el conjunto de datos disponible e o en dos partes o subconjuntos: Conjunto de estimaci´n. Se entiende por residuos e a los errores que comete el modelo una vez ajustado. θ) es el error de estimaci´n para los datos obtenidos en el ˆ o instante t. Por ejemplo. en la que se usa el modelo estimado o o para predecir la salida en base a datos de entradas experimentales.

´ ´ CAP´ ITULO 3. o repiti´ndose a e los experimentos hasta que se obtenga un buen modelo. indica que puede que en cada . que depende de u(t − τ ) no ha sido reproducida por el modelo en y (t.2.6. el modelo no estar´ reproduciendo toda la din´mica del ˆ ıa a proceso.2: Diagrama de flujo del proceso de identificaci´n.2. se realizan numerosas repeticiones de esta secuencia de pasos. θ). el residuo en t tiene que o ser incorrelado con las medidas obtenidas en los instantes anteriores). Por tanto. En lugar de esto. Resumen del proceso de identificaci´n o El proceso de identificaci´n de un sistema rara vez se concluye con la sola ejecuci´n o o de los pasos anteriormente descritos. quiere decir que o una parte del valor de y(t). o pueda retornar a cualquiera de las pasos intermedios. 3. a veces vari´ndose el tipo de modelo. Esto es as´ por ı que si existe correlaci´n entre e(t) y alguna entrada pasada u(t − τ ). Por tanto. podemos ver el proceso de identificaci´n como un m´todo iterativo que se puede describir mediante o e el diagrama de flujo mostrado en la figura 3. INTRODUCCION A LA IDENTIFICACION DE SISTEMAS 57 de la informaci´n disponible en el instante anterior (es decir. En esa figura el hecho de que el flujo INICIO TOMA DE DATOS ACONDICIONAMIENTO DE DATOS ELEGIR ESTRUCTURA DEL MODELO AJUSTAR MODELO VALIDAR MODELO NO ¿ VALIDO ? SI USAR MODELO Figura 3.

58

ALGUNAS PROPIEDADES

iteraci´n no se realicen todos los pasos. Por otra parte, aparece un paso sobre el que no o se ha comentado nada, el acondicionamiento de datos. Esta tarea consiste en manipular los datos de manera que sean apropiados para el m´todo de ajuste elegido. Es algo e que es espec´ ıfico para cada procedimiento. As´ por ejemplo, una tarea muy com´n de ı u acondicionamiento de datos es la eliminaci´n de los valores de continua de las se˜ales o n de entrada y salida. Esto ser´ tratado en mayor profundidad en el tema 4. Finalmente, a en el caso de la identificaci´n en linea el proceso es m´s simple, ya que por ejemplo o a no es posible cambiar la estructura del modelo sin descartar el resultado que se ha obtenido hasta ese momento. Adem´s, los datos se toman seg´n van llegando, pues a u recordemos que en este tipo de identificaci´n la identificaci´n se hace como su propio o o nombre indica en tiempo real, es decir, ((en l´ ınea)).

3.3.

Algunas propiedades

En esta secci´n, veremos algunas propiedades relacionadas con la identificaci´n de o o sistemas. Concretamente se tratar´n los conceptos de excitaci´n persistente, convergena o cia e identificabilidad. Adem´s, se ver´n las tareas de supervisi´n y acondicionamiento a a o que aparecen en las figuras 3.1 y 3.2.

3.3.1.

Excitaci´n persistente o

Se ha comentado en la secci´n 3.2.1, que para poder identificar correctamente un o sistema la se˜al de entrada debe excitar (es decir, poner de manifiesto) todos los modos n del sistema (toda su din´mica). Formalmente, se dice que si el sistema es de orden n a se deber´ contar con una se˜al persistentemente excitadora de orden n. ıa n Se puede probar que una se˜al de entrada u(k) es persistentemente excitadora de n orden n, s´ y s´lo s´ se cumple que ı o ı 1 l´ ım N →∞ N
N 2

A(z )u(k)
k=1

−1

>0

para todo polinomio A(z −1 ) no nulo de grado inferior a n. Usando este resultado se pueden caracterizar las se˜ales m´s comunes: n a

Pulso: no excita persistentemente para ning´n orden n. u

´ ´ CAP´ ITULO 3. INTRODUCCION A LA IDENTIFICACION DE SISTEMAS

59

Escal´n: excita persistentemente para orden 1. o Ruido blanco: excita persistentemente para todo orden n.

Esto quiere decir que el ruido blanco ser´ una se˜al de entrada muy buena para identiıa n ficar sistemas. En la pr´ctica, sin embargo, es muy dif´ obtener una se˜al de entrada a ıcil n que se comporte como un ruido blanco ideal, porque es muy dif´ obtener una seıcil cuencia de valores puramente aleatorios. Es posible obtener sin embargo, secuencias de valores seudoaleatorios, por lo que en la pr´ctica se recurre a secuencias seudoaleatorias a de escalores binarios (PRBSS: Pseudo Random Binary Step Sequence). En la figura 3.3 se muestra una de esas secuencias. N´tese que los escalones no tienen por qu´ tener o e amplitud unitaria, el concepto de binario se refiere solamente a dos niveles de entrada distintos. Por otra parte, la aleatoriedad est´ en la duraci´n de los escalones y en el a o momento de aparici´n de los mismos. o
6.5

6

5.5

voltaje

5

4.5

4

3.5

3

0

20

40

60

intervalos de muestreo

80

100

120

140

160

180

200

Figura 3.3: Ejemplo de se˜al de entrada del tipo PRBSS. n

3.3.2.

Convergencia e identificabilidad

Se dice que un sistema es identificable cuando usando un m´todo de identificaci´n e o adecuado se tiene que ˆ l´ E(θ)) = θ0 ım
N →∞

y adem´s la salida obtenida mediante el modelo estimado es posible. Es decir, para a un sistema identificable el valor del vector de par´metros estimado converger´ con un a a n´mero de observaciones suficientes al valor real de esos par´metros. No obstante, esta u a

60

ALGUNAS PROPIEDADES

convergencia tiene a su vez una serie de requisitos o condiciones que se pueden resumir en:

El orden del modelo y el retardo deben ser conocidos. Los valores de continua de la se˜al de entrada y la de salida deben ser conocidos. n Si el sistema es de orden n, la se˜al de entrada debe ser persistentemente excitan dora de orden n o mayor. Las perturbaciones sobre la salida deben ser ruidos estacionarios. El error en el instante k debe ser incorrelado con los elementos de los que depende la salida en el instante k (es decir, de los valores pasados de la entrada y la salida). El valor esperado (esperanza matem´tica) del error en k debe ser cero, es decir a E{e(k)} = 0. Finalmente, la convergencia tambi´n depende de los valores iniciales del estie mador.

3.3.2.1.

Identificaci´n en bucle cerrado o

Como se coment´ en la secci´n 3.2.1, a veces resulta bastante dif´ identificar en o o ıcil bucle cerrado. Esto es especialmente cierto cuando el lazo de control es simple, el regulador lineal y adem´s no se emplean se˜ales externas (a modo de perturbaciones) para a n excitar toda la din´mica del sistema. Existen una serie de condiciones para establecer a la identificabilidad de un sistema en bucle cerrado. Sup´ngase que se parte del siguiente o modelo para identificar un sistema: A(z −1 )y(k + d) = B(z −1 )u(k) + C(z −1 )e(k + d) donde d es el retraso del proceso, y los grados de los polinomios A(z −1 ), B(z −1 ), C(z −1 ) son ma , mb , mc respectivamente. Sup´ngase adem´s que el sistema est´ gobernado por o a a un regulador que toma la expresi´n: o u(t) = − Q(z −1 ) y(t) P (z −1 )

donde los grados de Q y P son v y w respectivamente. Teniendo en cuenta todo esto, se formulan las siguientes condiciones de identificabilidad en bucle cerrado.

n − 1 + d) ≥ n a Esto implica que para que el sistema sea identificable en bucle cerrado. d ≥ 1. por lo que esta condici´n se puede u o expresar como m´x(w. puede que exista otro modelo del mismo orden mejor.´ ´ CAP´ ITULO 3. N´tese que por ıa o estos procedimientos lo que se consigue es que el proceso de identificaci´n converja a o un valor del vector de par´metros que corresponde con el que da un menor error. tambi´n e podr´ usarse esto para lograr la identificabilidad en bucle cerrado. ıa ıa u Un caso com´n es que p = 0 y ma = mb = n. Si fuera factible aumentar el retraso. Otra soluci´n ser´ fijar un par´metro. o ıa a .1 Supongamos que ma = mb = n y que u(k) = − G(z −1 ) y(k) zB(z −1 )F (z −1 ) y que los ordenes de G(z −1 ) y F (z −1 ) son n − 1 y d respectivamente. Es decir. INTRODUCCION A LA IDENTIFICACION DE SISTEMAS 61 Primera condici´n de identificabilidad en bucle cerrado o Los ordenes del modelo del proceso y de las perturbaciones deben ser conocidos con ´ exactitud. No a quiere decir que el sistema real se describa mejor por ese modelo. Segunda condici´n de identificabilidad en bucle cerrado o Si los polinomios A(z −1 ) y C(z −1 ) tienen p ceros comunes (en caso de que sean primos entre si. Entonces se cumple que v =n−1 w =n+d−1 por lo que la condici´n de identificabilidad ser´ que o ıa m´x(n + d − 1. p = 0) se ha de cumplir que m´x(w − mb . pero si no se toman las medidas indicadas no se llegar´ a ese modelo ni probablemente se converger´ a ning´n otro. la soluci´n pasa por fijar alguno de los par´metros del modelo o a a fin de bajar los grados ma o mb . v + d) ≥ n a Ejemplo 3. d + v − ma ) ≥ p a Si esto no se cumpliese.

o Monitorizar la introducci´n de riqueza din´mica al sistema: paradas temporales o a del identificador e inyecci´n de perturbaciones. o . que el valor del vector de par´metros identificado no converja o a o converja a un valor incorrecto.3.3. Supervisar que la evoluci´n de los par´metros est´ dentro de unos rangos detero a e minados. a Acondicionamiento de se˜ales: eliminaci´n de los valores de continua y escalado n o de las variables. Las tareas que se pueden realizar en estos niveles incluyen: Filtrado de datos a la entrada del identificador para evitar cambios bruscos en los par´metros estimados. es decir. Niveles de supervisi´n y acondicionamiento o En la identificaci´n en l´ o ınea es habitual introducir un nivel de supervisi´n y tratamieno to de las se˜ales a fin de evitar que se produzcan situaciones que desestabilicen la n identificaci´n. Monitorizar otros elementos del algoritmo de identificaci´n.62 ALGUNAS PROPIEDADES 3.

2) Este m´todo se puede aplicar sin cambios conceptuales a modelos multivariables. El mayor interes pr´ctico rea a side. sin embargo. Es inmediato comprobar que este modelo corresponde a la siguiente funci´n de transferencia: o G(z −1 ) = b1 z −1 + · · · + bn z −n 1 + a1 z −1 + · · · + an z −n El modelo (4. en la identificaci´n de los primeros. n 63 .1) se puede reescribir como: y(k) = m(k)θ 1 (4. a modelos a lineales y no lineales que sean lineales en los par´metros. El m´todo de los m´ e ınimos cuadrados Este m´todo permite la identificaci´n en tiempo real de modelos con el unico reqe o ´ uisito de que estos sean lineales en los par´metros.1) N´tese que este modelo es determinista en el sentido de que no considera ruidos aleatoo rios como en los modelos vistos en el tema 2. Consider´se el siguiente modelo param´trico lineal monovariable1 : e e y(k) + a1 y(k − 1) + · · · + an y(k − n) = b1 u(k − 1) + · · · + bn u(k − n) (4. Sin embargo por e simplicidad nos ce˜iremos al caso de modelos monovariables. dado que son los m´s utilizados o a en control. Esto incluye. por tanto.1.Cap´ ıtulo 4 Identificaci´n por m´ o ınimos cuadrados 4.

θ) = Y (N ) − M (N )θ donde los vectores E(N ) e Y (N ) son E(N. Esta es o o 2 precisamente la estrategia del m´todo de m´ e ınimos cuadrados . θ) T y(n) · · · y(N ) T En un contexto matem´tico se dir´ que el vector de par´metros que se calcula es la pseudosoluci´n a ıa a o en el sentido de los m´ ınimos cuadrados de un sistema sobredeterminado incompatible.64 ´ EL METODO DE LOS M´ INIMOS CUADRADOS donde el vector m(k) = −y(k − 1) · · · −y(k − n) u(k − 1) · · · u(k − n) θ= a1 · · · a n b 1 · · · b n T (4. Si el proceso a identificar correspondiese exactamente con un modelo como (4. se formar´ ıa un sistema de 2n ecuaciones con el que se podr´ determinar el valor ((real)) de θ. Es decir.1) se podr´ determinar el valor del vector de par´metros a partir de 2n medidas u ıa a observaciones de la salida para una serie de entradas conocidas. θ) · · · e(N. Es decir. Sin embargo si se puede encontrar un valor del vector de par´metros a que haga m´ ınimo el error de predicci´n. el sistema de ecuaciones o es incompatible. Dado un valor del vector de par´metros θ. θ) = Y (N ) = 2 e(n. o la expresi´n (4. ıa El m´todo de los m´ e ınimos cuadrados parte de N pares (y(k). el error de a a predicci´n para el instante k ser´ o a ˆ ˆ e(k.2) es una ecuaci´n en las que las 2n incognitas son los par´metros que o o a forman θ. En el supuesto poco realista de que el proceso coincida con un modelo como el que se intenta ajustar. Las medidas obtenidas desde k = n hasta k = N se agrupan en vectores de manera que se obtiene: E(N. de manera que tendr´ soluci´n y el error de predicci´n ıa o o alcanzado ser´ cero para todas las medidas del conjunto de estimaci´n.3) es llamado regresor y ˆ es el vector de par´metros. de manera m´s precisa que haga m´ o a ınima la suma de los cuadrados de los errores de predicci´n del conjunto de estimaci´n. ıa o en la pr´ctica el proceso no se puede describir a la perfecci´n mediante un modelo lineal a o del tipo (4. . se tendr´ un sistema de ecuaciones ıa sobredeterminado compatible. m(k)) donde N es generalmente mucho mayor de 2n (este ser´ el conjunto de estimaci´n) y permite ıa o ajustar un modelo del tipo (4. θ) = y(k) − y (k) = y(k) − m(k)θ ˆ N´tese que conocido el valor de los valores presentes y pasados de la salida y la entrada.1) por lo que el sistema de ecuaciones no tiene soluci´n en el sentido de que o no existe un valor del vector de par´metros que haga que el error de predicci´n sea cero a o para todas las medidas del conjunto de estimaci´n.1). Sin embargo.

θ) J(θ) = (Y (N ) − M (N )θ)T (Y (N ) − M (N )θ) El m´ ınimo valor de J(θ) se dar´ en el valor del vector de par´metros que cumpla que a a dJ(θ) =0 dθ es decir.4) implica la inversi´n de una matriz que puede tener unas dimeno o siones apreciables. a N´tese que para que el problema de identificaci´n tenga soluci´n la matriz [M T (N )M (N )] o o o tiene que ser invertible al igual que M (N ). θ) Este ´ ındice lo podemos reescribir como y la matriz M (N ) est´ formada por los regresores correspondientes. tal condici´n se verifica cuando la entrada cumple las condiciones de excitaci´n persistente del o o sistema. 2(M (N )θ − Y (N ))T M (N ) = 0 de donde se obtiene que el valor del vector de par´metros que hace m´ a ınimo el ´ ındice de bondad de ajuste es θ∗ = [M T (N )M (N )]−1 M T (N )Y (N ) y ese es por tanto el valor del vector de par´metros del modelo identificado.´ CAP´ ITULO 4. (4.2. Sin entrar en demasiados detalles.4) 4. IDENTIFICACION POR M´ INIMOS CUADRADOS 65 Se define el ´ ındice de bondad de ajuste como J(θ) = E(N. . M (N ) =   . Se deber´ acudir por tanto a se˜ales de entrada parecidas al ruido blanco (ver a n tema 3). es decir a   m(n)   . tanto m´s si se tiene en cuenta que para identificar correctamente a . Algoritmo recursivo para identificaci´n en lino ea La expresi´n (4. m(N ) N 2 = k=n e2 (k.

o Esta formula da lugar al llamado algoritmo de minimos cuadrados recursivos. Se puede comprobar que P −1 (k − 1) = P −1 (k) − mT (k)m(k) Por otra parte tambien se puede obtener que ˆ M T (k − 1)Y (k − 1) = P −1 (k − 1)θ(k − 1) ˆ ˆ = P −1 (k)θ(k − 1) − mT (k)m(k)θ(k − 1) Combinando las dos ultimas expresiones con (4.66 ´ ALGORITMO RECURSIVO PARA IDENTIFICACION EN LINEA un sistema se deben tener suficientes medidas para eliminar el efecto de ruidos y perturbaciones ajenas a la din´mica del sistema.5) P (k) = [M (k)M (k)] T −1 = i=n m (i)m(i) T es la llamada matriz de covarianza.5) se obtiene ˆ θ(k) = = = ˆ ˆ θ(k − 1) − P (k)mT (k)m(k)θ(k − 1) + P (k)mT (k)y(k) T ˆ ˆ θ(k − 1) + P (k)m (k)(y(k) − m(k)θ(k − 1)) ˆ ˆ θ(k − 1) + K(k)(y(k) − m(k)θ(k − 1)) (4. a T´ngase en cuenta que el hardware industrial no se renueva tan r´pidamente como el usado e a en inform´tica personal y que adem´s tampoco se incorporan las ultimas tecnologias con la misma a a ´ rapidez.6) ˆ donde K(k) = P (k)mT (k). Dar valores iniciales a la matriz P y al vector de par´metros θ. Intentar efectuar estos c´lculos en linea a a 3 es bastante ambicioso para el hardware de control habitual . 3 . o La estimaci´n para el instante k usando las medidas obtenidas desde el instante n o vendr´ dada por a ˆ θ(k) = [M T (k)M (k)]−1 M T (k)Y (k) = P (k)M T (k)Y (k) = P (k)(M T (k − 1)Y (k − 1) + mT (k)y(k)) donde k −1 (4. Por tanto este algoritmo se destina a la identificaci´n fuera de linea. Por tanto θ(k) se puede expresar en forma recursiva. que consiste en 1. En linea se emplea otro procedimiento que o se muestra a continuaci´n. es decir en funci´n del valor del estimador en el instante anterior m´s un t´rmino corrector o a e que consiste en el error de predicci´n en el instante actual cometido por el estimador o calculado en el instante anterior multiplicado por una ganancia de adaptaci´n K(k).

En cada instante k a) Leer los valores de y(k) y u(k).1. AGF EDC &% #$ ( ' A@9 86 7 10) 23 5 4 ARQ PH ARSQI VQ IUT I R A@9 78B . 4. b) Formar el vector regresor m(k) seg´n la expresi´n (4.3). u o c) Calcular P (k) mediante P (k) = P (k − 1) − P (k − 1)mT (k)m(k)P (k − 1) 1 + m(k)P (k − 1)mT (k) d ) Calcular K(k) segun la expresi´n o K(k) = P (k)mT (k) e) Calcular θ(k): ˆ ˆ ˆ θ(k) = θ(k − 1) + K(k)[y(k) − m(k)θ(k − 1)] Este algoritmo puede intepretarse gr´ficamente como se ilustra en la figura 4. IDENTIFICACION POR M´ INIMOS CUADRADOS 67 2. a PLANTA + FORMAR REGRESOR Σ - ALGORITMO RECURSIVO + Z-1 θ Figura 4.1: Diagrama de flujo del proceso de identificaci´n mediante m´ o ınimos cuadrados recursivos. Interpretaci´n estad´ o ıstica En esta secci´n se presentan las propiedades estad´ o ısticas del estimador obtenido por el m´todo de m´ e ınimos cuadrados en funci´n de las caracter´ o ısticas del proceso que se trata de identificar.3.´ CAP´ ITULO 4.

por lo que existe una correlaci´n entre la matriz o T M (k) y V (K). Eso implica que seg´n la expresi´n (4. a a . En el ARMAX cn > 0 por lo que la variable aleatoria v(k) y sus valores pasados hasta el instante k − cn afectan al valor de la salida en k. Se comprueba que ˜ θ = E [M T (k)M (k)]−1 M T (k)V (k) (4. Es decir y(k) = mT (k)θ ∗ + C(z −1 )v(k) Resulta muy interesante saber si al aplicar el m´todo de los m´ e ınimos cuadrados.7) θ u o est´ garantizada la convergencia del vector de par´metros estimados con el ((real)). es decir su esperanza matem´tica. En el caso del ARX − LS el grado de C(z −1 ) es cero.3)). y(k) es a su vez una variable aleatoria al ser el ruido aditivo.4).7) donde V (K) es una matriz donde la fila correspondiente al instante k est´ formada por a los valores v(k). el ∗ ˆ ˆ vector de par´metros estimados θ(k) coincide con θ . Esto implica a su vez que el valor ˆ del vector de parametros estimado θ tambien es una variable aleatoria que se puede estudiar desde un punto de vista estad´ ıstico. Por responder el proceso exactamente a uno de los dos tipos de modelos considerados existe un valor del vector de par´metros a ∗ θ que consideraremos como verdadero. Los primeros dependen de los valores de la se˜al de n ruido y los segundos son deterministas. Considerese que la variable o aleatoria v(k) corresponde a un ruido blanco. La diferencia entre estos dos tipos de modelos es el grado del polinomio coloreador del ruido C(z −1 ) que denotaremos por cn . por lo que la salida en k viene afectada por el valor de la se˜al n de ruido en el instante k exclusivamente. Claramente existe relaci´n entre los como ponentes de la matriz M (k) y V (k). o Considerese el caso del modelo ARMAX.· · ·. Por tanto no y V (k). la matriz de regresores est´ formada por a valores de la salida y la entrada. Un hecho a tener en cuenta es que al ser v(k) una variable aleatoria.k −n pero no los del instante k (ver expresi´n (4.68 ´ INTERPRETACION ESTAD´ ISTICA Supongase que el proceso que se pretende modelar responde bien a un modelo ARMAX o bien a un modelo ARX-LS (vease la secci´n 2.v(k − cn ). Se define a el sesgo de la estimaci´n como o ˆ ˜ θ = E θ(k) − θ∗ ˆ es decir como la diferencia entre el valor esperado de θ(k) y el valor ((verdadero)) θ ∗ . Dado que θ(k) es una variable a aleatoria estudiaremos su valor esperado.· · ·. Esto implica que en el caso del ARMAX la salida depende de los valores pasados de v(k) mientras que en el caso del ARX-LS esta dependencia es exclusivamente con el valor actual de v(k). En efecto. N´tese adem´s que la fila de M (k) correspondiente al o a instante k contiene los valores de la salida y de la entrada en los instantes k −1. Por lo tanto tambien existe esa correlaci´n entre [M (k)M (k)]−1 M T (k) o ˜ es distinto de cero.

es evidente que a medida que el numero de observaciones N crece la suma N mT (k)m(k) k=n . en general no se tendr´ demasiada a confianza en que el valor inicial del vector de par´metros estimados. por lo que se usa como una medida de la n exactitud de la estimaci´n. por ejemplo P (0) = a pI donde p es un n´mero muy alto (por ejemplo 10000). La varianza del a a estimador se puede calcular como ˆ ˆ ˆ varianza(θ(k)) = E (θ(k) − θ ∗ )T (θ(k) − θ ∗ ) = σ 2 P (k) donde σ = E{v(i)v(j)} para i = j.´ CAP´ ITULO 4. En el caso del proceso ARMAX el ruido presenta una cierta din´mica . N´tese que para que la varianza sea peque˜a o n interesa que P (k) sea ((peque˜a)) o que al menos decrezca a medida de que k aumenta. a a Por otra parte. el estimador por m´ ınimos ˜ = 0 y por tanto el valor esperado del estimador cuadrados es insesgado. es decir θ coincide con el valor real del vector de par´metros. n Una medida del tama˜o de P (k) es su traza. Otra propiedad que resulta interesante conocer es la varianza del estimador. Este n´mero ser´ mas peque˜o u u a n ∗ si se sabe que el valor inicial del vector de par´metros est´ cerca de θ . mientras que en el caso del ARX-LS el ruido no a presenta din´mica alguna y responde unicamente a un ruido proveniente del sensor a ´ de medida. Por tanto. al ser cn = 0. De esa manera. el hecho que de que el proceso responda a uno u otro tipo de modelo tiene una interpretaci´n f´ o ısica inmediata. IDENTIFICACION POR M´ INIMOS CUADRADOS 69 La situaci´n es diferente con el modelo ARX-LS. por lo que se a escoger´ una matriz P (0) ((grande)) para reflejar esa desconfianza. solo est´ formada por los a valores presentes de v(k) para cada instante k). Claramente interesa que esta varianza sea peque˜a o por lo menos que disminuya conforme n se acumulan medidas disponibles para usarlas en la estimaci´n. En este caso los valores de M (k) o no pueden estar relacionados con V (k) (que. o Esta interpretaci´n estadistica del tama˜o de P (k) tambien proporciona una regla o n para dar un valor inicial a la matriz P (k). Es en este ultimo caso cuando el m´todo de m´ ´ e ınimos cuadrados produce estimaciones consistentes. de manera que se busca que la traza vaya decreciendo. el veco tor de par´metros estimados estar´ con seguridad cerca del vector real. En efecto. es decir a ˆ E θ(k) = θ∗ Por otra parte.

Recuerdese que. es decir. θ)  w(N )   (4. de manera que se use N J(θ) = E(N. En este o a caso w(k) = λN −K . θ) siendo W (N ) la matriz diagonal de pesos  w(n)  .4. pues estas ser´n las que reflejen la a a a din´mica m´s actualizada. Adem´s la ganacia de adaptaci´n K(k) tambien decrece a a o (vease su definici´n en la secci´n 4. que cada vez se obtiene un estimador o m´s cercano al valor real. Esto quiere decir que la n incertidumbre en la estimaci´n decrece. Se puede demostrar que si el 1 tama˜o del regresor no cambia demasiado P decrece como N .2 o o k −1 P (k) = i=n mT (i)m(i) lo que implica que a medida que N crece P decrece..8) La soluci´n del problema de ajuste es en este caso o θ∗ = [M T (N )W (N )M (N )]−1 M T (N )W (N )Y (N ) El esquema de ponderaci´n m´s habitual es el llamado olvido exponencial .2) lo cual es congruente con el hecho de que cuanto o o m´s exacta es la estimaci´n menos correcci´n de su valor se necesita. 4. W (N ) =  T 2 = k=n w(k)e2 (k.70 M´ INIMOS CUADRADOS PONDERADOS crece. pero si esto no es as´ habr´ que a ı a modificar este esquema. M´ ınimos cuadrados ponderados A veces es conveniente dar m´s peso a algunas medidas que a otras en la estia maci´n. Para conseguir esto hay que modificar el ´ a a ındice de bondad de ajuste. Esto es bueno a o o si la din´mica del proceso no cambia con el tiempo.. Por ejemplo si se identifica un proceso cuya din´mica cambia con el tiempo o a interesar´ dar mas peso a las medidas m´s recientes. θ) W (N )E(N. segun se defini´ en la secci´n 4.

es conveniente que la din´mica se identifique sobre un conjunto amplio de medidas ya que si no se a identificar´ el ruido m´s que la din´mica del proceso. IDENTIFICACION POR M´ INIMOS CUADRADOS 71 . En aquellos casos que la din´mica del proceso cambie muy r´pidamente se a a puede optar por valores m´s bajos (por ejemplo. En estos casos se n a debe recurrir a un modelo ARMAX. λ = 0. la ganancia de adaptaci´n K(k) o depende de λ y a menor λ mayor ganancia de adaptaci´n. De esta manera las medidas muy antiguas se olvidan. M´ ınimos cuadrados extendidos y generalizados Seg´n se explic´ en la secci´n 4.99 el estimador tendr´ una ((memoria)) de unas 100 ıa muestras.3 el estimador obtenido mediante m´ u o o ınimos cuadrados es insesgado si el proceso responde a un modelo ARX-LS. Por tanto en estos casos conviene ıa a a que λ no sea muy peque˜o. La soluci´n es incluir los coeficientes del o o −1 polinomio C(z ) en el vector de par´metros del estimador. El m´todo de los m´ e ınimos cuadrados extendidos trata de resolver el problema del sesgo en la estimaci´n de modelos ARMAX. Habitualmente se usa n o λ ∈ [0. Esto quiere decir que a menor o λ mejor se adaptar´ la identificaci´n a una din´mica cambiante. Por tanto hay que llegar a un compromiso entre la capacidad n de seguir una din´mica cambiante y el rechazo del ruido en la identificaci´n. es decir a θ= a1 · · · a n b 1 · · · b n c 1 · · · c n T .98. a o 4. Por ejemplo. ya que se considerar´ a o a ıa en la optimizaci´n solo la informaci´n m´s reciente.´ CAP´ ITULO 4. 1). pues su peso es tan peque˜o que es como si no se contribuyesen a la estimaci´n. pero no si responde a un modelo ARMAX. a En el caso de la t´cnica de olvido la formulaci´n recursiva puede aplicarse modifie o cando las expresiones para el calculo de P (k) de manera que: P (k) = P (k − 1) P (k − 1)mT (k)m(k)P (k − 1) − λ λ + m(k)P (k − 1)mT (k) Puede observarse que. En la pr´ctica.95). dado que K(k) = P (k)mT (k). si λ = 0. o o a Sin embargo si en el sistema o en las medidas hay mucho ruido. si la relaci´n se˜al-ruido es baja el proceso ha de a o n modelarse con un modelo de perturbaciones m´s complejo que el del ARX-LS ya que a la se˜al de ruido y su influencia sobre la din´mica son importantes. 1) es el llamado factor de olvido.5. Es f´cil entender por que se le llama a olvido exponencial: el peso dado a la medida disminuye exponencialmente cuanto m´s a antigua sea. donde λ ∈ (0.

entonces si los parametros evolucionasen en la direcci´n correcta la aproxa o imaci´n de los valores de los ruidos por los errores cada vez ser´ m´s correcta y o ıa a eventualmente se igualar´ ıan. Con este m´todo se consiguen estimaciones insesgadas y consistentes e para procesos que respondan como un modelo ARMAX. tanto en las formulaciones fuera de linea como en linea. Para estimar dichos valores existen diversas n opciones.6. es decir v(k) = e(k). Sin entrar en demasiados detalles. existe otra variante de los m´ ınimos cuadrados que son los m´ ınimos cuadrados generalizados. θ)N −1 e(k.72 ´ ESTIMACION DE LOS VALORES DE CONTINUA Sin embargo. El regresor se formar´ entonces a como. n a Finalmente. m(k) = −y(k − 1) · · · −y(k − n) u(k − 1) · · · u(k − n) e(k − 1) · · · e(k − n) El resto del procedimiento es exactamente igual. esta formulaci´n se usa o −1 cuando se tiene alg´n conocimiento del valor real del polinomio C(z ) o de la matriz u P (matriz de covarianza). Estimaci´n de los valores de continua o Una de las condiciones necesarias para asegurar la convergencia que se mencionaron en el tema 3 era que es necesario conocer los valores de continua de la se˜al y eliminarlos n de las medidas usadas en la identificaci´n. θ) 4. En este caso si la matriz N definida como N = E vv T es distinta de la matriz identidad se obtienen mejores resultados si el criterio que se utiliza es J(θ) = eT (k. Los problemas son un aumento de la carga de calculo y una menor velocidad de convergencia en los par´metros ci a debido a que la se˜al de ruido no es la m´s preponderante. es decir o ˆ e(k) = y(k) − m(k)θ(k − 1) Si el proceso coincidiera exactamente con el modelo para algun valor del vector de par´metros. . los valores pasados de la se˜al de ruido v(k) no son medibles. por lo que n no se pueden incluir en el regresor. Lo que se hace es aproximarlos por los errores de predicci´n. Es decir para identificar un proceso hay que o utilizar se˜ales sin componente continua: n u(k) = U (k) − U∞ y(k) = Y (k) − Y∞ donde U (k) e Y (k) son los valores reales de la salida y la entrada y U∞ e Y∞ son los valores de continua de ambas se˜ales.

n 4.1. es decir n uID (k) = u(k) − u(k − 1) = (U (k) − U∞ ) − (U (k − 1) − U∞ ) = U (k) − U (k − 1) donde la se˜al uID (k) es la se˜al de entrada que se utiliza en la identificaci´n. Como n n o se puede observar.6. es decir U∞ = 1 N N u(i) i=1 Y∞ = 1 N N y(i) i=1 para la identificaci´n en linea.6. al usarse el incremento. es decir mediante algoritmos recursivos.´ CAP´ ITULO 4.2.6. es decir formulado en incrementos de y(k) y u(k) y este incremento se tendr´ que deshacer si a lo que se quiere son los valores no incrementales de dichas se˜ales. Estimaci´n de una constante o La idea en este caso es que el modelo que se pretende identificar puede reescribirse como Y (k) − Y∞ = −a1 (Y (k − 1) − Y∞ ) − a2 (Y (k − 1) − Y∞ ) − · · · − an (Y (k − n) − Y∞ ) +b1 (U (k − d − 1) − U∞ ) + · · · + bn (U (k − d − n) − U∞ ) .3. n En el caso de la formulaci´n fuera de linea estos valores medios se calculan mediante o las expresiones tradicionales. se emplean las o siguientes expresiones U∞ (k) = U∞ (k − 1) + Y∞ (k) = Y∞ (k − 1) + 1 (U (k) − U∞ (k − 1)) k 1 (Y (k) − Y∞ (k − 1)) k 4. IDENTIFICACION POR M´ INIMOS CUADRADOS 73 4. C´lculo de los valores medios a La idea es aproximar los valores de continua por los valores medios de las se˜ales. lo que se obtiene al identificar es un modelo incremental. se resta de manera implicita la componente continua. Lo mismo se hace con la salida yID (k) = y(k) − y(k − 1) = (Y (k) − Y∞ ) − (Y (k − 1) − Y∞ ) = Y (k) − Y (k − 1) Evidentemente. Utilizaci´n de los incrementos de las variables o En este caso se toman los incrementos de las se˜ales.

Esto quiere decir que se pueden dar situaciones de mala estimaci´n del o orden del modelo por defecto (incurriendose en lo que se llama infraparametrizaci´n) o o por exceso (sobreparametrizaci´n). En ambas se muestra el diagrama de bode de un sistema de segundo orden sobre el que ha sido identificado un modelo de primer orden mediante dos entradas senoidales de distinta frecuencia.9) Para estimar la componente continua se modifica el algoritmo de manera que en el vector de par´metros se incluye K a θ= a1 · · · a n b 1 · · · b n K T y en el regresor se incluye un 1 m(k) = −y(k − 1) · · · −y(k − n) u(k − 1) · · · u(k − n) 1 Una vez estimado el valor de K. Puede observarse en ambas figuras que .3.2 y 4. o 4. por ejemplo igual al valor de la referencia o consigna.7. Si esto sucede se llega a una situaci´n en la que el modelo solo puede o aproximar al sistema real en una banda de frecuencia relativamente estrecha. Importancia del orden del modelo El orden del sistema a identificar es algo que debe ser conocido para asegurar la convergencia e identificabilidad (ver tema 3). y se a debe recurrir a probar con varios modelos de ordenes y estructuras distintas a ver cual resulta mejor. el modelo estimado (es decir su vector de par´metros) evoluciona hasta a aproximar al sistema en torno a la nueva banda de frecuencias.9).74 IMPORTANCIA DEL ORDEN DEL MODELO lo cual a su vez se puede poner como Y (k) = −a1 Y (k − 1) − · · · − an Y (k − n) +b1 U (k − d − 1) + · · · + bn U (k − d − n) + K siendo K una constante que vale K = (1 + a1 + · · · + an )Y∞ − (b1 + · · · + bn )U∞ (4. Este problema se a n ilustra en las figuras 4. Con ese valor se calcula U∞ mediante la expresi´n (4. Todo esto implica que se obtendr´ un modelo distinto dependiendo de la se˜al de entrada. o Veamos que ocurre cuando se intenta aproximar un sistema por un modelo de orden inferior. En la pr´ctica esto no es sencillo. lo que se hace es dar un valor arbitrario a Y∞ . Si durante el transcurso del proceso de identificaci´n la se˜al de entrada cambia su contenido o n frecuencial.

2 pero con una se˜al de entrada senoidal de frecuencia o n −1 ω = 1 rad × s .3: Misma situaci´n que en la figura 4. IDENTIFICACION POR M´ INIMOS CUADRADOS 75 20 10 amplitud dB 0 −10 −20 −30 −40 −1 10 10 0 10 1 0 −50 desfase (grados) −100 −150 −200 −250 −1 10 10 frecuencia rad/s 0 10 1 Figura 4.´ CAP´ ITULO 4. .2 rad × s −1 . 20 10 amplitud dB 0 −10 −20 −30 −40 −1 10 10 0 10 1 0 −50 desfase (grados) −100 −150 −200 −250 −1 10 10 frecuencia rad/s 0 10 1 Figura 4.2: Diagrama de Bode de un sistema de segundo orden (linea continua) y de un modelo de primer orden estimado para una entrada senoidal de frecuencia ω = 0.

76

IMPORTANCIA DEL ORDEN DEL MODELO

el modelo obtenido no es sino una aproximaci´n del sistema original en el entorno de o la frecuencia de la entrada. Esto ocasiona por tanto que ambos modelos sean distintos.

A la vista de lo que ocurre cuando existe infraparametrizaci´n, parecer´ l´gico que o ıa o resulte mejor sobreestimar el orden del modelo para evitar el continuo cambio de los par´metros del modelo estimado. Sin embargo esto no es una buena idea, pues puede a ocurrir que haya par´metros del modelo estimado que puedan tomar cualquier valor sin a que cambie la relaci´n que liga las entradas del modelo con las salidas. Esto se manifiesta o en que algunos par´metros experimentan una deriva tomando valores arbitrarios muy a altos o muy bajos. Esto ocasionar´ problemas num´ricos. Esta situaci´n se ilustra ıa e o en la figura 4.4. En ella se muestra la evoluci´n de los par´metros de un modelo de o a cuarto orden identificado sobre el sistema de segundo orden utilizado en las figuras 4.2 y 4.3. Puede observarse que algunos de los ocho par´metros identificados convergen y a permanecen estables a lo largo del proceso de identificacion. Sin embargo otros no solo no convergen sino que derivan hacia valores muy altos o muy bajos.
1.5 1 0.5

uey

0 −0.5 −1 −1.5 0 5 10 15 20 25 30 35 40

1.5 1

a , b estimados

0.5 0 −0.5 −1

i

i

−1.5 −2 0 5 10 15 20 tiempo (s) 25 30 35 40

Figura 4.4: Evoluci´n de los par´metros identificados en un caso de sobreparametrizaci´n. o a o

Matem´ticamente el exceso de par´metros conduce a una situaci´n en la que m´s a a o a de una combinaci´n de los valores del vector de par´metros producen la misma relaci´n o a o entre la entrada y la salida. Por tanto la sobreparametrizaci´n se manifiesta tambi´n si o e se traza la gr´fica de un par´metro del modelo frente a otros por que aparecen relaciones a a lineales. Esta situaci´n se ilustra en la figura 4.5. En ella se muestran dos ejemplos en o los que se presentan los valores de un par´metro en funci´n del otro a medida que a o el proceso de identificaci´n avanza. Puede observarse que existe un marcado patron o lineal, que indica una dependencia lineal entre ambos par´metros. a

´ CAP´ ITULO 4. IDENTIFICACION POR M´ INIMOS CUADRADOS
0.025 0.02 0.015 0.01 0.005 0 −0.005 −2 −1.8 k=180 −1.6 −1.4 −1.2 −1 −0.8 −0.6 k=100 k=30

77

b

3

a1

1.5 1 0.5 0 −0.5 −2 k=30 −1.8 −1.6 −1.4 a1 −1.2 −1 −0.8 −0.6 k=180 k=100

Figura 4.5: Evoluci´n de unos par´metros frente a otros para el modelo sobreparametrizado. o a

4.8.

Identificaci´n de sistemas con retardo o no lio neales

El m´todo de los m´ e ınimos cuadrados puede aplicarse a procesos con retardo, siempre que se tengan en cuenta algunas cuestiones. El modelo determinista de un sistema con retardo puro de d periodos de muestreo se puede poner como A(z −1 )y(k) = B(z −1 )u(k − d − 1) Eso quiere decir que el regresor en el instante k debe contener valores pasados de la entrada desde k − d − 1 a k − d − n donde n es el grado del polinomio B(z −1 ). Por tanto el regresor queda m(k) = −y(k − 1) · · · −y(k − n) u(k − d − 1) · · · u(k − d − n)

Con esta modificaci´n cualquiera de los algoritmos de m´ o ınimos cuadrados vistos anteriormente se puede aplicar a procesos con retardo. El problema estriba en que se ha de conocer exactamente el retardo (vease tema 3). El m´todo usual para conocer este e dato es provocar un cambio en la entrada y observar cuando se manifiesta dicho cambio en la salida (ha de tenerse en cuenta que en todo sistema muestreado los cambios en la entrada se manifestar´n como mucho en el siguiente periodo de muestreo). Este a sencillo esquema se puede complicar por ejemplo si el retardo es variable. Esto es m´s a com´n de lo que se cree, pues el retardo as´ como el resto de par´metros de un sistema u ı a suele depender del punto de funcionamiento (por ejemplo, los retardos de transporte ocasionados por tuberias dependen del caudal de material que se transporta). El problema es que, aunque los m´todos de identificaci´n propuestos puedan seguir cambios e o

a

2

78

CONSIDERACIONES FINALES

en los parametros del modelo (se adaptan a esos cambios) no recogen la posibilidad de un retardo variable (existen remedios a este problema, pero no se tratar´n aqu´ a ı). Otro problema que puede suceder es que el retardo no sea multiplo exacto del tiempo de muestreo. Aunque existen formas para describir retardos no enteros (por ejemplo, el uso de una expansi´n de Pad´) es mas sencillo y menos problem´tico emplear si es o e a posible otro tiempo de muestreo para hacer que el retardo sea entero. Finalmente se coment´ al principio del tema que el m´todo de m´ o e ınimos cuadrados tambien permite la identificaci´n de sistemas no lineales con la limitaci´n de que el o o modelo a identificar sea lineal en los par´metros. De este modo, si el sistema se pretende a identificar con un modelo que por ejemplo podr´ ser ıa y(k) + ay(k − 1) = bu2 (k − 1) el regresor y el vector de par´metros ser´ a ıan m(k) = respectivamente. −y(k − 1) u2 (k − 1) y θ(k) = a b
T

4.9.

Consideraciones finales

En esta secci´n se enunciar´n algunas cuestiones pr´cticas a tener en cuenta cuando o a a se implementa alguno de los algoritmos presentados en este tema. En primer lugar si no se emplea la t´cnica de factor de olvido, la ganancia de adaptaci´n K(k) decrece e o hasta hacerse casi cero, por lo que cuando eso ocurre ya no se pueden seguir cambios posteriores de la din´mica. Por tanto para identificar sistemas cuya din´mica var´ a a ıa lentamente se ha de emplear m´ ınimos cuadrados ponderados. Por otra parte, existen situaciones en las que la matriz de covarianzas P puede crecer demasiado, por lo que el identificador se har´ muy sensible a cualquier peque˜o cambio de la din´mica o al ıa n a ruido. Esto ocurre por ejemplo cuando el punto de funcionamiento no var´ Lo que se ıa. puede hacer en este caso es utilizar un factor de olvido variable, de manera que si la traza de P crece demasiado se toma λ = 1. Si la traza de P baja mucho se va bajando λ, pero sin sobrepasar un cierto l´ ımite que evita que el proceso de identificaci´n se haga o demasiado sensible al ruido. Otro aspecto es la elecci´n del valor inicial de P . Se ha comentado que en el caso de o que no se tenga mucha confianza en el valor del vector de par´metros inicial, se propone a elegir P como una matriz diagonal pI siendo p un n´mero arbitrariamente alto. Por u

es posible tomar como valor inicial u a P (0) = M T (2n)M (2n) −1 y como valor inicial del vector de par´metros se puede usar θ = P (0)M (2n)Y (2n). a . IDENTIFICACION POR M´ INIMOS CUADRADOS 79 otra parte si antes de comenzar la identificaci´n ya se dispone de 2n observaciones.´ CAP´ ITULO 4. o donde 2n es el n´mero de par´metros a estimar.

80 CONSIDERACIONES FINALES .

a a o La configuraci´n t´ o ıpica de un controlador adaptativo es la que se ilustra en la figura 5. En general se acepta que el control adaptativo es un tipo de control no lineal en el que el estado del proceso puede ser separado en dos escalas de tiempo que evolucionan a diferente velocidad.Cap´ ıtulo 5 Introducci´n al control adaptativo o 5. se obtiene un cierto ´ndice de actuaci´n en el cual se expresa ı o la bondad o comportamiento del controlador. En o efecto. Un regulador adaptativo ser´ aquel que pueda a modificar su comportamiento en respuesta a cambios en la din´mica del sistema y/o en a las perturbaciones a las que se ve sometido dicho sistema. Planteamiento del problema En el contexto del control autom´tico el t´rmino adaptativo se refiere a la facultad a e de cambiar el comportamiento o par´metros del control en respuesta a cambios en las a circunstancias del sistema controlado. el control realimentado fundamenta su efectividad en el hecho de que es capaz de reaccionar a los cambios del estado o salida del proceso (los cuales pueden venir motivados por perturbaciones o tambi´n cambios en la din´mica del proceso) actuando e a de manera que dicho estado o salida se mantenga controlado. En realidad esto es tambi´n e lo que se persigue cuando se introduce la realimentaci´n en un sistema de control.1. Como se puede observar hay un bucle principal de realimentaci´n negativa en el que o aparece un regulador ajustable y otro bucle que se utiliza para ajustar los par´metros de a dicho regulador. Dicho ´ ındice de actuaci´n se compara con o un cierto comportamiento deseado y seg´n el resultado de dicha comparaci´n se ajustan u o 81 . Para ello. La escala lenta corresponde a los cambios en los par´metros del a regulador y la escala r´pida a la din´mica del bucle ordinario de realimentaci´n.1.

a o 5. En algunos casos se a˜ade un tercer bucle que n n tiene como tarea la supervisi´n del sistema de manera que. Clasificaci´n grosso modo de los sistemas de control o adaptativo De una manera general los sistemas de control adaptativo se pueden clasificar en dos grandes grupos: `Y–•‰UyrebYyi Wiv W ƒq ‰ s”ƒ“’Wuq… ‰` gˆr‘rqsˆƒ ‡ ƒq i ‰q †b…fpg „ i `i + `Y–•‰“Wyeb „ uri i iq ƒs—X ‡ ’x‰yfi“W‚ƒ ‡ q ` eg‚re€xywvui ƒ ib t dX igXdb hsqrphfec`aXYW - + u y ` ‰ ‰Wƒ h’•˜’x‚Yrq .4. a Es f´cil ver que en el esquema anterior el mecanismo de adaptaci´n realiza la tarea a o de resolver en tiempo real el problema de dise˜ar un regulador apropiado (en el caso n m´s sencillo con una estructura predefinida) para un sistema dado de manera que se a cumplan unas determinadas especificaciones de dise˜o (dadas por el ((comportamiento n deseado))). por ejemplo.82 PLANTEAMIENTO DEL PROBLEMA REFERENCIA + COMPORTAMIENTO DESEADO Figura 5. Existen otros controladores que proporcionan una cierta capacidad de adaptaci´n o pero que no encajan en la definici´n anterior ya que la adaptaci´n se realiza en bucle o o abierto. se garantice la o estabilidad del sistema en bucle cerrado o se eviten ciertos comportamientos indeseados tales como cambios demasiado abruptos en los par´metros del regulador ajustable. Para ello se utiliza un mecanismo de adaptaci´n que en a o algunos casos (no siempre) tambi´n puede actuar directamente sobre la actuaci´n o e o se˜al de control que recibe el proceso. para adaptar la ley de control no se usan las medidas de la salida o estado de la planta. o e los par´metros del regulador. Este es el caso de los controladores gain scheduling los cuales se tratar´n en la secci´n 7.1.1: Configuraci´n gen´rica de un controlador adaptativo. es decir.1.

salida. la capacidad de adaptaci´n e o de estas estrategias dependen en gran medida de la riqueza din´mica de la se˜al de a n control (esto es an´logo a lo que ocurre en la identificaci´n de sistemas. Es decir. Tambi´n e se puede considerar en este grupo el control predictivo basado en modelo (al que dedicaremos un amplio cap´ ıtulo m´s adelante) cuando este tipo de control se utiliza como a controlador ajustable en alguno de los esquemas de control adaptativo referidos al principio del tema. . etc. ). n Los MRAC intentan alcanzar un comportamiento en bucle cerrado deseado que viene especificado por un modelo de referencia. Sin embargo. los STR se adaptan bien en casi todas las situaciones y son f´ciles de a implementar pues admiten t´cnicas de programaci´n modular. tambi´n e o e presentan sus propios inconvenientes como se ver´ m´s adelante. o n Las dos t´cnicas tienen sus ventajas e inconvenientes. Por otra parte. En este grupo estudiaremos los controladores de m´ ınima varianza y m´ ınima varianza generalizado. En este esquema podemos a encontrarnos: Controladores adaptativos con dise˜o mediante criterio optimo. Ambas estrategias suponen que para cualquier juego de valores de los par´metros del a sistema y las perturbaciones. a a Otra posible clasificaci´n de los sistemas de control adaptativos es aquella que o atiende a la forma de obtener los par´metros del controlador. Sin embargo. Las ventajas del MRAC pasan e por una r´pida adaptaci´n y la posibilidad de utilizar formulaciones que garanticen a o estabilidad (usando m´todos de Lyapunov). n ´ En los primeros el valor de los par´metros se obtiene buscando entre los posibles valores a aquellos que hacen optimo un cierto criterio de comportamiento del sistema. Por otra parte. INTRODUCCION AL CONTROL ADAPTATIVO 83 Controladores adaptativos por modelo de referencia (MRAC). ´ optimizan un criterio de comportamiento o funcionamiento.´ CAP´ ITULO 5. los STR intentan alcanzar un control lo mejor posible (´ptimo) a partir de un tipo de controlador prefijado y o la informaci´n obtenida del proceso (se˜ales de entrada. v´ase el tema a o e 3). . . Reguladores autoajustables (STR). n ´ Controladores adaptativos con dise˜o mediante criterio no optimo. existe un controlador lineal que hace que el sistema en bucle cerrado cumpla los requisitos de dise˜o.

donde ξ es una cierta constante y A la apertura porcentual de la v´lvula.3 se muestra dicha caracter´ ıstica instalada (trazo s´lido). hay que ver en que situaciones puede ser ventajoso su uso y en que situaciones es mejor quedarse con controladores m´s sencillos. su sinton´ no suele ser tan sencilla como la de los cl´sicos ıa a controladores PID. a Supongamos que el caudal de salida de la v´lvula viene dado por una expresi´n C = a o 4 ξ ∗ A . de manera que a pesar de los cambios en el n proceso se sigan cumpliendo las especificaciones de dise˜o. Sin embargo. a Por ejemplo. Esta situaci´n corresponde por o + u f(u) v G(s) Figura 5. ejemplo a la caracter´ ıstica instalada de un v´lvula que usualmente suele ser no lineal. Por tanto.84 ´ JUSTIFICACION DEL USO DE CONTROL ADAPTATIVO Los controladores adaptativos sin criterio optimo buscan los par´metros del contro´ a lador no mediante la optimizaci´n de un criterio de funcionamiento sino entre aquellos o que cumplen unas ciertas especificaciones. n 5. puede suceder que el punto ıan de trabajo var´ frecuentemente y en algunos sistemas puede suponer una variaci´n de ıe o su din´mica lo suficientemente importante para afectar al rendimiento del controlador. o corresponde m´s o menos con la de un sistema que suele operar siempre cerca de un a determinado punto de operaci´n y cuyas perturbaciones no son grandes (en relaci´n a o o la variable controlada) y no var´ demasiado. En tiempo real se resolver´ el o a problema de dise˜ar dichos controladores. A la hora de dise˜ar o n el sistema de control se intentar´ obtener un modelo linealizado del actuador. a En general un controlador convencional est´ pensando para controlar sistemas cuyos a par´metros permanecen constantes (es decir. Justificaci´n del uso de control adaptativo o El control adaptativo conlleva una serie de inconvenientes que pueden hacernos cuestionar su uso. por ejemplo. En estos esquemas el controlador ajustable puede ser por ejemplo un regulador PID. su din´mica no var´ Esta suposici´n se a a ıa).2: Sistema realimentado con actuador con caracter´ ıstica v = f (u). un controlador dead-beat como los estudiados anteriormente o un controlador por asignaci´n de polos o de ceros y polos.2.2). la colocaci´n de los ceros y los o polos de bucle cerrado. que ıa . Por ejemplo. En la a figura 5. supongamos un sistema realimentado en el que el actuador presenta una caracter´ ıstica de transferencia no lineal (figura 5.

Una soluci´n ser´ trabajar con un modelo linealizado a tramos o ıa de la caracter´ ıstica de la v´lvula (figura 5. 0. En a n 16 14 12 10 caudal (m /h) 3 8 6 4 2 0 0 10 20 30 40 apertura (%) 50 60 70 80 90 100 Figura 5.4 (derecha) se muestra la . Sin embargo. Parecer´ que el sistema var´ lo suficiente como para ıa ıa justificar el uso del control adaptativo.01. cuando la variaci´n en los par´metros del sistema o los actuadores se conoce o a de antemano y adem´s se puede establecer una dependencia entre dichos par´metros a a y el punto de operaci´n (o una variable auxiliar) se puede recurrir a t´cnicas sencillas o e de control adaptativo como el gain scheduling (v´ase la secci´n 7. la configuraci´n que realmente o nos interesa es la del sistema realimentado.3 trazo discontinuo). e a Otro hecho a tener en cuenta es que no siempre es f´cil juzgar la necesidad o a no de utilizar el control adaptativo. En caso contrario e o tendr´ ıamos que recurrir a t´cnicas m´s sofisticadas.3: Sistema realimentado con actuador con caracter´ ıstica v = f (u). Como se ilustra en la figura 5. 0. En la figura 5.´ CAP´ ITULO 5. Consid´rese el sistema dado por la funci´n de e o transferencia G(s) = 1 (s + 1)(s + a) donde a = −0.4 (izquierda).01 (5.1) La primera aproximaci´n a este sistema ser´ hallar su respuesta ante escal´n. INTRODUCCION AL CONTROL ADAPTATIVO 85 evidentemente saldr´ diferente en funci´n del punto de operaci´n. general. Si el controlador ıa o o se ve forzado a trabajar en distintos puntos de operaci´n su rendimiento no podr´ ser o a igual de bueno en todos. pasando de hecho de ser un ıa o a sistema estable a otro inestable.4). de manera que en cada a punto de funcionamiento el controlador adaptar´ su comportamiento (variando sus a par´metros de dise˜o) de acuerdo al modelo linealizado que se tenga en cada caso. dicha respuesta var´ mucho en funci´n de los valores del par´metro a. para o ıa o los diversos valores de a. de manera que este esquema ir´ bien si el punto de operaci´n a o no se mueve demasiado.

0.1). no ser´ necesario usar control o ıa adaptativo.015.2 500 1 Amplitude Amplitude 400 0.4 600 1.5 derecha).4: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (5. Es f´cil poner un ejemplo en el que la situaci´n sea la inversa de la anterior.8 300 0. Cona o sid´rese el sistema dado por la funci´n de transferencia e o G(s) = 20(1 − T s) (s + 1)(s + 20)(T s + 1) donde T = 0. sin embargo. En efecto.2) En este caso la respuesta en bucle abierto del sistema es muy parecida independientemente de los valores de T (figura 5.2) pero utilizando una realimentaci´n unitaria (esto es. o o sino que hay que tener en cuenta cu´les van a ser las condiciones de operaci´n particua o lares en las que se va a trabajar. Es por tanto que en este caso s´ estar´ o ı ıa justificado el uso de t´cnicas de control adaptativo. El lector puede comprobar adem´s e a que no s´lo hay que juzgar en funci´n del comportamiento en bucle cerrado en general. u = (ref −y)) o entonces las respuestas son esencialmente iguales independientemente del valor de T .2 0 0 20 40 60 80 100 Time (sec) 120 140 160 180 200 0 0 2 4 6 Time (sec) 8 10 12 Figura 5. si se obtiene la respuesta en bucle cerrado para el sistema (5. 0. Step Response Step Response 700 1.4 100 0.86 ´ JUSTIFICACION DEL USO DE CONTROL ADAPTATIVO respuesta del sistema en bucle cerrado (realimentaci´n unitaria).03 (5. Cuando se le realimenta usando como entrada u = 15(ref − y) se obtienen. En contra de lo que o podr´ ıamos suponer la respuesta en bucle cerrado es m´s o menos la misma.5 izquierda). comportamientos muy diferentes en funci´n del valor de T (figura 5.6 200 0. a siendo esta la configuraci´n en la que se va a trabajar. . por lo que.

´sta vaya e tendiendo a cero progresivamente). 5.7 1 0. El mecanismo de adaptaci´n o es el que se va a encargar de ajustar los par´metros del control primario para que la a diferencia entre la salida de la planta y el modelo de referencia sea lo m´s peque˜a a n posible (es decir. La figura a 5. sabemos que ´ste especifica o e el comportamiento en bucle cerrado deseado. En cuanto al modelo de referencia.8 0.3. Por tanto. el controlador y n la ley de adaptaci´n. Adem´s de utilizar las se˜ales tomadas de las salidas de la planta y el modelo. Es decir.3 0.2 0. En suma. INTRODUCCION AL CONTROL ADAPTATIVO Step Response Step Response 87 1.2). a n el mecanismo de adaptaci´n puede utilizar las se˜ales de entrada. como su nombre e a indica. En dicha figura puede observarse un controlador primario ajustable que en principio puede ser cualqier tipo de controlador. que independientemente del valor inicial de esa diferencia. el modelo ha de ser tal que . toda la informaci´n disponible o sobre la planta y el comportamiento del sistema en bucle cerrado.5 3 Figura 5. Para dise˜ar un MRAC se ha de definir el modelo de referencia.5 0. El controlador ajustable deber´ adaptar sus par´metros para que el modelo de bucle cerrado a a del conjunto coincida o se acerque lo m´s posible al modelo de referencia.5 0.6 Amplitude 0.9 0.6 muestra la configuraci´n m´s popular (no es la unica sin embargo) para este tipo o a ´ de controladores. de referencia y si o n estuviesen disponible las variables de estado.´ CAP´ ITULO 5. Control adaptativo por modelo de referencia (MRAC) Es una de las t´cnicas m´s antiguas de control adaptativo y se basa.4 Amplitude 0.5 1 1. se debe partir de un conjunto de especificaciones deseadas de bucle cerrado que se expresan mediante el modelo de referencia. en disponer de un modelo de bucle cerrado que es el que se desea que describa al conjunto controlador-planta.5: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (5.5 Time (sec) 2 2.1 0 0 0 1 2 3 Time (sec) 4 5 6 0 0.5 0.

entre ellos que la se˜al de control debe ser una funci´n n o lineal de los par´metros. Se deben cumplir sin embargo varios requisitos. a a Por otra parte para el controlador primario se puede pensar en casi cualquier estructura de control lineal. toeU€i s jg j + e s r‚xydfhwn˜oeUefk™ Yr j u k p v ™ u j v g j j‚ ri jgh h d †fjqYi pdPn ˜ d phkY€ˆ“oflg’mafje p™ - SjYf{ezrYPˆzd|kr pu h ™ erh r v k fdtipz r u yp . etc.88 CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC) ym + - REFERENCIA + Figura 5. incluyendo los populares PI. o e el conjunto controlador ajustable-planta pueda reproducir dicho modelo. Por a a o supuesto es normal escoger la din´mica de bucle cerrado m´s r´pida que la de bua a a cle abierto. PID. Tambi´n (suponi´ndose fijado el modelo) se debe escoger un a e e controlador ajustable que permita reproducir el modelo. principalmente sobre el orden del mismo. para la ley de adaptaci´n existen diferentes estrategias en la literatura o de las cuales nombraremos el m´todo de hiperestabilidad y la estrategia basada en la e teor´ de estabilidad de Lyapunov (ambas estrategias aseguran la estabilidad de bucle ıa cerrado del sistema) y la primera y m´s popular. . ya que ello a desembocar´ en problemas de convergencia en los par´metros del controlador. Finalmente. . Es decir. el enfoque de sensibilidad o regla del a MIT.6: Configuraci´n gen´rica de un controlador adaptativo por modelo de referencia (MRAC). pero no se puede escoger de manera arbitrariamente r´pida. Esto impone una serie de requisitos sobre el modelo. Tampoco es realista escoger un modelo de referencia con una din´mica muy r´pida en comparaci´n con la de la planta en bucle abierto. no se puede escoger el comportamiento deseado de bucle cerrado sin pensar si el controlador ajustable es capaz de lograr (para alguna combinaci´n de sus par´metros) dicho o a comportamiento.

t+T ∂J ∂e(τ ) θ(t + T ) = θ(t) − Γ = θ(t) − Γ dτ (5. Es a decir. de manera que haga decrecer J. a ıcil Por tanto. Este ı esquema funciona porque despu´s de un tiempo el comportamiento en bucle cerrado del e sistema acaba convergiendo al del modelo de referencia. a o no sobre la del modelo. INTRODUCCION AL CONTROL ADAPTATIVO 89 5. la ganancia de adaptaci´n no debe ser muy grande pues si no puede aparecer un comportamiento o inestable (especialmente si hay discrepancias iniciales fuertes entre la sensibilidad del proceso y la del modelo. ı En la pr´ctica la sensibilidad de la salida del proceso puede ser dif´ de conocer. luego ∂yproceso (τ ) ∂e(τ ) = ∂θ ∂θ Finalmente. que mide la bondad de o a la adaptaci´n en base a las discrepancias entre las salidas del modelo y la planta a lo o largo de un intervalo de tiempo: t+T J(t + T ) = t e2 (τ )dτ con e(t) = yproceso (t) − ymodelo (t) (5. de a ah´ el nombre alternativo de ((enfoque de sensibilidad)). De hecho la formulaci´n original del MIT se basaba en el ´ o ındice 1 J(t) = e2 (T ) 2 .5) dt ∂θ N´tese que ∂yproceso representa c´mo var´ la salida del proceso frente a variaciones del o o ıa ∂θ vector de par´metros. Por tanto ymodelo (t) no depende de θ y al variar ´ste tampoco e lo hace ymodelo (t). se la suele sustituir por la del modelo de referencia (que s´ es conocido). La regla del MIT Se basa en un ´ ındice de actuaci´n. La idea de la regla del MIT es ajustar el vector de par´metros del controlador en el instante t + T . u o Es f´cil entender que el controlador s´lo tiene influencia sobre la salida de la planta.´ CAP´ ITULO 5.4) y teniendo en cuenta lo anterior se llega a dθ ∂yproceso = −2Γe(t) (5.3. usualmente cuadr´tico.1. podemos conocer la variaci´n instant´nea de los par´metros del controo a a lador tomando T → 0 en el segundo miembro de (5. En cualquier caso. o Finalmente hay que decir que esta regla presenta diversas formulaciones alternativas. porque las correcciones al valor de θ ser´n muy en´rgicas y en a e la direcci´n equivocada). es decir la sensibilidad de yproceso (t) frente a variaciones de θ.3) donde T es un periodo fijo de tiempo.4) 2e(τ ) ∂θ ∂θ t donde Γ ∈ Rn×n es una matriz definida positiva que act´a como ganancia de adaptaci´n.

90 CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC) que resulta en la regla dθ ∂e(t) = −γe(t) dt ∂θ y hay otras posibilidades como J(t) = |e(t)| que resulta en dθ ∂e(t) = −γ signo(e(t)) dt ∂θ o directamente ajustar mediante dθ = −γ signo dt ∂e(t) ∂θ signo(e(t)) Ejemplo 5. Se supone una a configuraci´n del sistema de control tal que θ es una ganancia feed-forward .1 Supongamos que tenemos un proceso cuya funci´n de transferencia viene dada por o G(s) = kF (s) donde k es ganancia desconocida y F (s) es perfectamente conocida. El controlador ajustable del que se dispone tiene la estructura u = θuc donde u es la entrada que se aplica a la planta y uc es la entrada al controlador (es decir el par´metro θ que se ha de ajustar es simplemente una ganancia). o la funci´n de transferencia desde uc a la salida del proceso yp es o Y (s) = θkF (s) UC (s) Como se pretende que la funci´n de transferencia sea como en (5.6) donde k0 es una ganancia conocida (es un dato de entrada del problema).7) . El error es en este caso e(t) = yp (t) − ym (t) = kF (s)θuc (t) − k0 F (s)uc (t) (5. Se pretende que el sistema en bucle cerrado se comporte acorde al modelo de referencia GM (s) = k0 F (s) (5.6). es decir. porque se desconoce el valor de k. Se propone ajustar θ mediante la regla del MIT en el contexto de un control adaptativo MRAC. lo l´gico ser´ o o ıa tomar k0 θ= k pero es evidente que esto no se puede hacer.

Esto no es correcto y quiz´s ser´ mejor utilizar la notaci´n n a ıa o d F (p) donde p = dt . F (s)uc (t) = por lo que llevando esto a (5. de (5.8) se obtiene ∂e(t) k = ym (t) ∂θ k0 La variaci´n de los par´metros seg´n la regla del MIT ser´ o a u a k dθ = −γ ym (t)e(t) dt k0 N´tese que se sigue desconociendo el valor de k0 .8) Con el objeto de simplificar las cosas en la ecuaci´n (5.7) se obtiene que −ym (t) = −k0 F (s)uc (t) luego.7) se ha abusado notablemente de la o notaci´n pues se est´n incluyendo simult´neamente funciones en el dominio s (de la transformada de o a a Laplace) y se˜ales en el dominio temporal. sustituir las funciones en s por su equivalente en el operador derivada. 1 . pues como γ es una constante cualquiera podemos agrupar las constantes que aparecen en una sola γ . INTRODUCCION AL CONTROL ADAPTATIVO 91 La sensibilidad1 vendr´ dada por a ∂e(t) = kF (s)uc (t) ∂θ ahora bien. sin embargo esto no plantea problema o alguno.´ CAP´ ITULO 5. de manera que la regla ser´ ıa dθ = −γ ym (t)e(t) dt ym (t) k0 (5. es decir.

92 CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC) .

Este a conocimiento se va actualizando en tiempo real de manera que el ajuste se mantiene lo m´s cercano posible al optimo. o La estructura general de un STR se ilustra en la figura 6.1. N´tese que al a o ser la estructura del controlador fija. a ´ Los STR se basan en el principio de equivalencia cierta que consiste en suponer que los par´metros del proceso coinciden con los que se obtienen por identificaci´n a o de manera que se dise˜a el controlador usando esos par´metros. En esta se observa que hay tres partes diferenciadas: Algoritmo recursivo de identificaci´n. Para o n ello se utilizar´ el modelo actualizado que se tenga de la planta. Mecanismo de adaptaci´n que desarrolla la tarea de dise˜o del regulador.1. ((dise˜ar)) el controlador es equivalente a n 93 . Estructura general de los STR o Los reguladores autoajustables (del ingl´s Self Tuning Regulator) constituyen un e tipo de control adaptativo muy popular en el que en funci´n del conocimiento que se o tiene de la din´mica del proceso a controlar son capaces de ajustarse a si mismos.Cap´ ıtulo 6 Reguladores Autoajustables (STR) 6. el a e principio de equivalencia cierta no es una suposici´n demasiado arriesgada. y los par´metros se actualizan tambi´n en cada paso. Como el controlador n a se recalcula en cada paso. Al tener que actualizarse los par´metros o a en tiempo real es evidente que se debe utilizar un algoritmo recursivo (v´ase el e cap´ ıtulo 4). Introducci´n.

2) se intentan a o minimizar las variaciones con respecto a cero de la salida (se considera un problema de regulaci´n con referencia nula). Por lo general la estructura es fija y puede a ser cualquier tipo de controlador lineal en el que los par´metros se puedan ajustar.94 ´ INTRODUCCION. Cuando el dise˜o ser realiza usando un planteamiento no estoc´stico. a ıa Regulador con par´metros ajustables. Por ejemplo en el regulador de m´ ınima varianza (el cual se ver´ en la secci´n 6. como por ejemplo el tiempo de subida y Œ„ ‹U{P†Sft‚“ƒ}„ „uŽ ‚A€ƒ z‹ … „  €ˆ  p ‰ „ „ P€ˆp‚ƒ Œ REFERENCIA ƒ Š„ „ €   ~ ‹ …€‚ƒ ‚~V‰ ‚ ~ eˆPppfe“€“p†„†ˆ‡ †}  ~p‹p‚ ‰ †~ eˆˆ…‘f~ƒ ‚e‚‚A‹~ €“p… †} ƒ…„  - u y . de tal manera que podemos usar modelos deterministas (v´ase el e cap´ ıtulo 2). En realidad. es decir a J = E y 2 (k + d) siendo d el retraso. que al ser una se˜al ruidosa se consigue minimizando o n la esperanza matem´tica de la salida en k + d. se est´ conn a a siderando que las perturbaciones que inciden sobre el sistema son conocidas con exactitud de antemano. a + COMPORTAMIENTO DESEADO Figura 6. En este caso el ´ ındice de actuaci´n se da en funci´n de unas especificao o ciones que debe cumplir la salida del sistema. e o Tambi´n se pueden considerar procesos estoc´sticos en los STR. n a a a En el caso de que sea un criterio estoc´stico normalmente se obtienen los par´metros a a del regulador mediante la minimizaci´n de un cierto ´ o ındice de funcionamiento. por tanto.1: Configuraci´n gen´rica de un regulador o controlador autoajustable. o e En los STR cl´sicos se suele suponer que los procesos son deterministas (es decir no a se consideran fuentes de perturbaciones estoc´sticas como las vistas en el cap´ a ıtulo 2). El dise˜o se podr´ hacer. Por otra parte es com´n que el controlador ajustable sea del tipo PID. utilizando un criterio estoc´stico o no estoc´stico. ESTRUCTURA GENERAL DE LOS STR obtener los mejores valores de los par´metros de sinton´ en base al modelo. u como es la estructura de un STR es modular. se puede usar cualquier combinaci´n de o controlador/m´todo de identificaci´n. Es com´n entonces e a u que la estructura escogida para el modelo sea la de tipo ARMAX (v´ase el cap´ e ıtulo 2).

Un algoritmo con estructura expl´ ıcita constar´ de los siguientes pasos: ıa 1.1. Estimar los par´metros del modelo mediante un algoritmo de identificaci´n rea o cursivo. Obs´rvese en esta figura que no se est´ pasando por la fase de dise˜o del e a n - + Figura 6.CAP´ ITULO 6. . a 3. Calcular la se˜al de control y aplicarla. etc. .2 como la identificaci´n toma como datos de entrada las n o e†˜  ¦ VPhz˜z˜ Ÿ ˜– “ ™ – • ž“ ¥ ˜ – ž ¢   ¡ ” ‚ £“ ¤pzp€’™˜ž’— o¥Yf¤8††™žž”—• ™   ˜•”˜ V†z8— Ÿ REFERENCIA — – t†Vz8t8“˜— €pe†t˜”š•› p’ – “ ž ™‚˜z w•œ 8 “ u y COMPORTAMIENTO DESEADO . Por eso en la figura 6.1. Lo que se hace en ellos es reparametrizar el modelo de la planta y el controlador en funci´n de los par´metros del controlador. Tambi´n se emplear´ especificaciones que definan la din´mica e ıan a resultante como la colocaci´n de los polos de bucle cerrado.2: Configuraci´n gen´rica de un regulador o controlador autoajustable.2. Algoritmos con estructura impl´ ıcita y expl´ ıcita Entre los STR podemos distinguir dos tipos de algoritmos. ıan Los algoritmos de estructura impl´ ıcita son m´s complicados desde el punto de vista a conceptual. unos que identifican directamente los par´metros de la planta y luego dise˜an el controlador para cumplir con a n los requisitos (estructura expl´ ıcita) y otros que lo que hacen es estimar el controlador directamente sin pasar por la estimaci´n previa de la planta (estructura impl´ o ıcita). 2. Calcular los par´metros del controlador. o 6. El esquema ser´ el mostrado o a ıa en la figura 6. n Estos pasos se repetir´ en cada tiempo de muestreo. de manera que cumpla con las especificaciones de dise˜o. REGULADORES AUTOAJUSTABLES (STR) 95 establecimiento. o e controlador sino que este se identifica.

Control por M´ ınima Varianza El regulador de m´ ınima varianza es un regulador optimo que pretende reducir el ´ efecto de las perturbaciones sobre la salida. se calcula como una funci´n de u(k−1) . el cual se indica a continuaci´n o A(z −1 )y(k + d) = B(z −1 )u(k) + C(z −1 )v(k + d) donde A(z −1 ) = 1 + a1 z −1 + · · · + an z −n B(z −1 ) = b1 z −1 + b2 z −2 + · · · + bn z −n C(z −1 ) = 1 + c1 z −1 + · · · + cn z −n (6. o de manera que se minimice J = E y 2 (k + d|k) donde E{} es el operador esperanza matem´tica. la se˜al de control que se aplica en el instante k. y(k−na ). se obtiene un modelo de la planta que puede ser utilizado para otras tareas diferentes de la de control. n Al igual que en caso anterior estos pasos se repiten cada tiempo de muestreo. por ejemplo para simulaci´n o supervisi´n. Por otra parte no siempre es posible obtener a el modelo reparametrizado. Calcular y aplicar la se˜al de control. a 2. Ambos tipos tienen ventajas e inconvenientes. En este tipo de algoritmo a n los pasos suelen ser: 1. 6. . . En el caso de los de estructura impl´ o ıcita se necesitan menos c´lculos. pero la identificaci´n es m´s dif´ (pueden aparecer proba o a ıcil lemas de convergencia con m´s facilidad). Tambi´n se puede tener un banco de controladores o o e seleccionables en funci´n del modelo obtenido.2. y la notaci´n y(k + d|k) indica la a o predicci´n del valor de y en el instante k + d hecha en base a la informaci´n disponible o o en el instante k. es n decir u(k). Efectivamente. Estimar los par´metros del modelo reparametrizado. El modelo del proceso que se considera es del tipo ARMAX. la carga computacional suele ser mayor pero a cambio.1) .96 CONTROL POR M´ INIMA VARIANZA medidas de la planta y adem´s las especificaciones de dise˜o. . En el caso de los de estructura expl´ ıcita. minimiz´ndose para ello un cierto ´ a ındice de funcionamiento. . u(k−nb ) y(k)y(k−1) .

REGULADORES AUTOAJUSTABLES (STR) 97 y d es el retraso puro1 .2) se obtiene o 1= que se puede reescribir como 1− A(z −1 )F (z −1 ) z −(d+1) G(z −1 ) = C(z −1 ) C(z −1 ) (6. Por otra parte si dividimos por C(z −1 ) la expresi´n (6. Por otra parte el termino z −1 G(z −1 ) v(k) A(z −1 ) representa el efecto sobre la salida de las perturbaciones en instantes anteriores a k.1). Por tanto podremos reescribir la conocida expresi´n dividendo igual a divisor por coo ciente m´s resto as´ a ı C(z −1 ) = A(z −1 )F (z −1 ) + z −(d+1) G(z −1 ) donde F (z −1 ) = 1 + f1 z −1 + · · · + fd z −d G(z −1 ) = g0 + g1 z −1 + · · · + gn−1 z −(n−1) N´tese que el grado de F (z −1 ) es d y el de G(z −1 ) es n − 1.2) Por otra parte seg´n el modelo ARMAX u v(k) = 1 A(z −1 ) B(z −1 ) −d y(k) − z u(k) C(z −1 ) C(z −1 ) N´tese que el polinomio B(z −1 ) no tiene t´rmino independiente. A continuaci´n dividiremos o o −1 ambos miembros de la ecuaci´n (6. El cociente lo denoa taremos por F (z −1 ) y el resto se factoriza de manera que se denote por z −(d+1) G(z −1 ).3). Sup´ngase que se desea dividir C(z −1 ) entre A(z −1 ). Veamos el significado a de algunos de los t´rminos de (6.3) A(z −1 ) A(z −1 ) en donde adem´s se ha tenido en cuenta que z −d v(k + d) = v(k).1) por A(z ) y usaremos (6. El t´rmino F (z −1 )v(k + d) es una combinaci´n e e o lineal de los valores de v(k) a v(k + d) cuyo efecto sobre y(k + d) no depende de u(k). lo que se refleja en la forma de o e describir el proceso ARMAX en la ecuaci´n (6. o .4) A(z −1 )F (z −1 ) z −(d+1) G(z −1 ) + C(z −1 ) C(z −1 ) (6. Dicha divisi´n de polinomios o o producir´ en general un polinomio cociente y un polinomio resto.2) de manera que se o obtiene B(z −1 ) z −1 G(z −1 ) y(k + d) = u(k) + F (z −1 )v(k + d) + v(k) (6.CAP´ ITULO 6.

Por tanto.4) y sustit´yase en la anterior para obtener e o u y(k + d) = F (z −1 )v(k + d) + z −1 G(z −1 ) F (z −1 )B(z −1 ) y(k) + u(k) C(z −1 ) C(z −1 ) A partir de esta ecuaci´n podemos calcular J y ver que valor de u(k) hace m´ o ınimo J: E y 2 (k + d) = E F (z −1 )v(k + d) 2 +E +2E F (z −1 )v(k + d) z −1 G(z −1 ) F (z −1 )B(z −1 ) u(k) + y(k) C(z −1 ) C(z −1 ) F (z −1 )B(z −1 ) z −1 G(z −1 ) u(k) + y(k) C(z −1 ) C(z −1 ) 2 Si se intenta minimizar la expresi´n anterior se tiene que el primer t´rmino no depende o e de u(k). .5) F (z −1 )B(z −1 ) que se puede reescribir tambi´n como (y as´ aparece en algunos textos) e ı u(k) = − G(z −1 ) y(k) zB(z −1 )F (z −1 ) (6.3) de manera que se obtiene o y(k + d) = operando y(k + d) = B(z −1 ) z −1 G(z −1 ) G(z −1 )B(z −1 ) −(d+1) u(k) + F (z −1 )v(k + d) + y(k) − z u(k) A(z −1 ) C(z −1 ) A(z −1 )C(z −1 ) B(z −1 ) z −1 G(z −1 ) A(z −1 ) B(z −1 ) −d u(k) + F (z −1 )v(k + d) + y(k) − z u(k) A(z −1 ) A(z −1 ) C(z −1 ) C(z −1 ) que. Por tanto. Como los valores de v(k + i) i = 0 . ese t´rmino puede ser descartado. agrupando los t´rminos que contienen u(k). o a El resultado es z −1 G(z −1 ) u(k) = − y(k) (6. por lo que no influye a la hora de calcular el valor de u(k) que hace m´ ınimo J. d multiplican valores actuales y pasados de y(k) o y u(k). Por otra parte. . el tercer t´rmino es la e e esperanza matem´tica de una expresi´n la que aparece t´rminos en los que los valores a o e de la perturbaci´n v(k + i) i = 0 . . o e Para ello basta con calcular el valor que hace cero lo que est´ dentro de las llaves y a as´ el cuadrado ser´ cero (que es el m´ ı a ınimo valor posible de una funci´n cuadr´tica).98 CONTROL POR M´ INIMA VARIANZA Esto se puede sustituir en la ecuaci´n (6. es a su vez es igual a e 1 z −1 G(z −1 ) G(z −1 )z −(d+1) y(k) + y(k + d) = F (z )v(k + d) + 1− B(z −1 )u(k) −1 ) −1 ) −1 ) C(z A(z C(z −1 Recu´rdese ahora la ecuaci´n (6.6) . nos queda s´lo el segundo t´rmino que es el que hay que minimizar. d son independientes (incorrelados) de los de y(k) y u(k) la esperanza matem´tica que aparece en ese tercer t´rmino es a e cero. .

REGULADORES AUTOAJUSTABLES (STR) 99 Ejemplo 6. por que en la pr´ctica a o a puede que los ceros cambien de posici´n. por lo que es evidente que en este caso G(z −1 ) = a2 .1. Recordemos que se ha de dividir C(z −1 ) entre A(z −1 ) hasta que el grado del cociente F (z −1 ) sea d. En este caso es f´cil ver que a A(z −1 ) = 1 − az −1 B(z −1 ) = bz −1 C(z −1 ) = 1 y por otra parte d = 1. o sea en este caso F (z −1 ) tiene la forma F (z −1 ) = 1+ f1 z −1 . Evidentemente esto ultimo llevar´ a la inestabilidad del sistema.3: Divisi´n de polinomios para el ejemplo 6. que adem´s de perseguir el objetivo de o a ª© ¬ « 8¤¢­§ ¬ ¢«8S©w¨§ ª ® A« ®ª © ® « ª®8 ¬ « «¬¨© ª8© ª8© ¬ «¢8S©w¨§§ ª . o Por tanto F (z −1 ) = 1 + az −1 . En este caso los ceros no se cancelar´ a ıan con los polos con lo cual a˜adir´ n ıamos polos inestables al sistema.1 Consid´rese el siguiente sistema lineal e yk = ayk−1 + buk−2 Se pide encontrar la expresi´n del regulador de m´ o ınima varianza. El resto que en este caso es a2 z −2 debe identificarse con Figura 6. Esta situaci´n no es deseable. La figura 6.2. Luego o recordando la expresi´n (6.CAP´ ITULO 6.5) obtenemos que el regulador de m´ o ınima varianza para este caso es −z −1 a2 a2 uk = yk = − yk (1 + az −1 )bz −1 (1 + az −1 )b 6.3 nos muestra la divisi´n hecha paso a paso a la manera tradicional.2. Existen variaciones del regulador de m´ ´ ıa ınima varianza que tratan este problema y adem´s incorporan seguimiento de referencias a y ponderaci´n del esfuerzo de control (es decir. bien por imprecisi´n en el modelo del sistema o o o por variaciones de la din´mica del sistema. o la expresi´n z −2 G(z −1 ). El regulador de m´ ınima varianza generalizado El control por m´ ınima varianza tal y como se ha presentado aqu´ presenta problemas ı cuando el sistema es de fase no m´ ınima ya que al tener ceros inestables estos se cancelar´n mediante polos inestables.

8) 6. Asignaci´n de polos y ceros o De entre los m´todos basados en criterios no estoc´sticos se recoge aqu´ el m´todo e a ı e de asignaci´n de polos y ceros debido a Astr¨m y Wittenmark.3. Finalmente existen otras variaciones de la formulaci´n presentada aqu´ Por ejemplo o ı. La idea de este regulador es la de considerar el siguiente ´ ındice de funcionamiento J =E Q(z −1 )y(k + d) + R(z −1 )u(t) − P (z −1 )ref(t + d) 2 donde Q(z −1 ).7) En las expresiones anterior R(z −1 ) se utiliza para ajustar la velocidad de la respuesta del controlador. Dicha estructura se presenta en la figura 6. R(z −1 ) y P (z −1 ) son funciones de ponderaci´n estables que tienen la o forma Rd (z −1 ) Pn (z −1 ) Qn (z −1 ) R(z −1 ) = P (z −1 ) = Q(z −1 ) = Qd (z −1 ) Rd (z −1 ) Pd (z −1 ) Bajo estas condiciones la se˜al de control que minimiza J es n u(k) = Rd (z −1 ) (C(z −1 )P (z −1 )ref(t) − G(z −1 )y(t)) Qd (z −1 )(Rd (z −1 )F (z −1 )zB(z −1 ) + C(z −1 )Rd (z −1 )) (6. con el objeto por ejemplo de prevenir la saturaci´n de los actuadores. El m´todo que e aqu´ se presenta se basa por tanto en una estructura m´s compleja que permite colocar ı a los polos y los ceros en las posiciones deseadas. El objetivo del procedimiento es que la funci´n de transferencia de bucle cerrado o . o −1 −1 Por otra parte se suele tomar Qd (z ) = 1 − z de manera que la ley de control resultante tiene un integrador por lo que se rechazan perturbaciones constantes. Es conocido que con un s´lo controlador no se pueden asignar polos y ceros o arbitrariamente. En el cap´ o o ıtulo 1 ya se trat´ el problema de la asignaci´n de polos mediante realimentaci´n lineal del vector o o o de estados. La m´s conocida es la del regulador de a m´ ınima varianza generalizado.100 ´ ASIGNACION DE POLOS Y CEROS m´ ınimizar las variaciones de la salida con respecto a la referencia se intenta hacer esto usando el menor esfuerzo de control posible). una versi´n del regulador de m´ o ınima varianza que s´lo soluciona el seguimiento de o referencia (no ir´ bien con sistemas de fase no m´ ıa ınima) resulta en la expresi´n o u(t) = − C(z −1 ) G(z −1 ) y(t) − ref(t + d) zB(z −1 )F (z −1 ) zB(z −1 )F (z −1 ) (6. por lo que usualmente se prefiere asignar los polos.4.

9) se llega a o o (A(z −1 )M (z −1 ) + B(z −1 )G(z −1 )z −d )Rm (z −1 ) = S(z −1 )B(z −1 )Pm (z −1 ) (6.4 y aplicando el algebra de bloques se llega a la conclusi´n ´ o de que la funci´n de transferencia entre w(k) (la referencia a seguir) y y(k) es o y(k) = S(z −1 )B(z −1 )z −d w(k) A(z −1 )M (z −1 ) + B(z −1 )G(z −1 )z −d Igualando esta expresi´n con la funci´n de transferencia deseada (6.CAP´ ITULO 6.10) Como se ha comentado en la secci´n 6. REGULADORES AUTOAJUSTABLES (STR) 101 Figura 6.4: Estructura para la asignaci´n de polos y ceros. de manera e que tendremos M (z −1 ) = M1 (z −1 )B + (z −1 ) ¢²S±° Ó º ’¶µc´ ¸ º » ¼ ³ ¶¹ˆ¶µ · ³¸ Ë È Æ ÊÀ1É{Ç ½ Å ’Á¿À¾ à Ä ÐÒ Î Ì ÑψpÍ &²± “¯ ° .1 no es conveniente que se cancelen ceros o inestables con polos inestables.9) donde se asume que Rm (z −1 ) y Pm (z −1 ) no tienen factores comunes y adem´s el sistema a −1 −1 es causal por lo que el grado de Pm (z ) es mayor o igual al de Rm (z ).2. Por tanto lo que se hace es que se factoriza e B(z −1 ) como B(z −1 ) = B − (z −1 )B + (z −1 ) donde B − (z −1 ) contiene las ra´ inestables de B(z −1 ) y B + (z −1 ) las estables. o sea igual a una dada. por lo que se imponen que las ra´ ıces inestables de B(z −1 ) formen parte tambi´n de Rm (z −1 ). que supondremos denotada por y(k) = Rm (z −1 ) −d z w(k) Pm (z −1 ) (6. Como ıces las primeras deben estar en Rm (z −1 ) factorizamos este ultimo polinomio como ´ Rm (z −1 ) = B − (z −1 )Rm1 (z −1 ) Impondremos adem´s que las ra´ a ıces estables de B(z −1 ) est´n en M (z −1 ). A partir de la figura 6.

Esto se puede hacer si el sistema es de fase m´ o ınima. donde se ver´n otros m´todos para resolverla. grado(G(z −1 )) = grado(A0 (z −1 )) + grado(Pm (z −1 )) − grado(B − (z −1 )) − d grado(M1 (z −1 )) = grado(B − (z −1 )) + d − 1 Se puede demostrar que el control por asignaci´n de polos y ceros es equivalente al o MRAC. Por otra parte seg´n el sistema podemos tener casos simplificados: u 1. a e 2 . grado(G(z −1 )) = grado(A(z −1 )) − 1 grado(M1 (z −1 )) = grado(A0 (z −1 )) + grado(Pm (z −1 )) − grado(A(z −1 )) 2. donde las inc´gnitas son M1 (z −1 ) y G(z −1 ). se tiene un polinomio A0 (z −1 ) que se utiliza para definir S(z −1 ) mediante la expresi´n o S(z −1 ) = A0 (z −1 )Rm1 (z −1 ) Con todo lo anterior y la ecuaci´n (6. Quiz´s el m´s simple (pero no m´s e a a a eficiente) sea plantear un sistema de ecuaciones lineales donde las inc´gnitas sean los o −1 −1 coeficientes de los polinomios M1 (z ) y G(z ). Aplicando consideraciones algebraicas que no mostraremos aqu´ se llega a que ´ ı. que o o 2 puede resolverse mediante diferentes m´todos .10) se llega a o A(z −1 )M1 (z −1 ) + B − (z −1 )G(z −1 )z −d = A0 (z −1 )Pm (z −1 ) (6. Este tipo de ecuaciones las encontraremos de o a nuevo en el cap´ ıtulo 9. como parte de los datos de entrada del o problema.102 ´ ASIGNACION DE POLOS Y CEROS Por otra parte se asume que. 1. −1 −1 existen dos posibles opciones para los grados de M1 (z ) y G(z ).11) Esto es una ecuaci´n polinomial. En este caso B + (z −1 ) = B(z −1 ) B − (z −1 ) = 1 Rm (z −1 ) = Rm1 (z −1 ) = K S(z −1 ) = KA0 (z −1 ) M (z −1 ) = M1 (z −1 )B(z −1 ) por lo que la ecuaci´n quedar´ como o ıa A(z −1 )M1 (z −1 ) + G(z −1 )z −d = A0 (z −1 )Pm (z −1 ) De hecho es una ecuaci´n polinomial diof´ntica. adem´s de especificarse el retraso y los polinomios que a definen la funci´n de transferencia deseada. Cancelaci´n de todos los ceros. En cualquier caso se deben imponer condiciones sobre los grados de dichos polinomios para que la ecuaci´n tenga soluci´n o o unica.

a ´ se pueden considerar un ((subproducto)) del proceso de identificaci´n del controlador. Obs´rvese que al identificarse dicho e modelo reparametrizado se estar´n identificando los par´metros del controlador adem´s a a a de parte de los par´metros de la planta. REGULADORES AUTOAJUSTABLES (STR) 103 2.CAP´ ITULO 6. Los pasos de los que constar´ en cada instante de muestreo son ıa los siguientes .3. N´tese que multiplicando ambos miembros de la ecuaci´n (6. Pm (z −1 )). 6. Comenzaremos derivando un algoritmo con estructura impl´ ıcita.12) La ecuaci´n (6. Pm (z −1 ). u ıces En este caso B + (z −1 ) = 1 B − (z −1 ) = B(z −1 ) S(z −1 ) = KA0 (z −1 ) M (z −1 ) = M1 (z −1 ) Rm (z −1 ) = KB(z −1 ) por lo que ahora la ecuaci´n quedar´ como o ıa A(z −1 )M (z −1 ) + B(z −1 )G(z −1 )z −d = A0 (z −1 )Pm (z −1 ) Con este tipo de control se puede ilustrar la diferencia entre algoritmo con estructura impl´ ıcita y expl´ ıcita. por lo que se llega a A0 (z −1 )Pm (z −1 )y(k) = B − (z −1 )z −d M (z −1 )u(k) + G(z −1 )y(k) (6. ıa −1 retraso d y Rm1 (z ). M (z −1 ). para ver despu´s el de estructura expl´ e ıcita. Algoritmo con estructura impl´ ıcita. G(z −1 )) que son los que deben ser identificados (ajustados mediante un m´todo de identificaci´n recursivo).12) expresa una relaci´n entre la entrada y la salida que constituye o o un modelo reparametrizado del sistema en bucle cerrado. el ı. usando los e o valores experimentales de la entrada y la salida. y tres polinomios (B − (z −1 ) .1. Estos ultimos no son sin embargo necesarios. Esto ocurre si todos las ra´ de B(z −1 ) son inestables. el retraso d que se supone conocido. o El algoritmo de control en s´ tomar´ como datos de entrada A0 (z −1 ).11) por y(k) se obtiene o o A(z −1 )M1 (z −1 )y(k) + B − (z −1 )G(z −1 )z −d y(k) = A0 (z −1 )Pm (z −1 )y(k) que dado que A(z −1 )y(k) = B(z −1 )z −d u(k) es equivalente a M1 (z −1 )B(z −1 )z −d u(k) + B − (z −1 )G(z −1 )y(k) = A0 (z −1 )Pm (z −1 )y(k) Por otra parte sabemos que M (z −1 ) = M1 (z −1 )B + (z −1 ) y B(z −1 ) = B + (z −1 )B − (z −1 ). En dicho modelo aparecen polinomios conocidos de antemano (A0 (z −1 ). No se cancela ning´n cero.

11). o 2. Sin embargo desde el punto de vista pr´ctico suele tener a menos problemas. . 3. Calcular y aplicar u(k) = 1 S(z −1 )w(k) − G(z −1 )y(k) M (z −1 ) donde S(z −1 ) = A0 (z −1 )Rm1 (z −1 ) y M (z −1 ) = M1 (z −1 )B + (z −1 ). en particular la a a a −1 factorizaci´n de B(z ) y la resoluci´n de la ecuaci´n polinomial (6. 6. o 4. tal y como se ha comentado al comienzo del cap´ ıtulo. Este procedimiento puede presentar problemas para aquellos sistemas que sean de fase no m´ ınima. Obtener una estimaci´n actualizada de A(z −1 ) y B(z −1 ) mediante la identifio caci´n del modelo o B(z −1 ) −d y(k) = z u(k) A(z −1 ) 2.104 ´ ASIGNACION DE POLOS Y CEROS 1.3. tareas ambas o o o que pueden ser costosas en un hardware industrial no muy potente (adem´s de m´s a a complicadas de implementar).2. Algoritmo con estructura expl´ ıcita En este caso los datos de entradas al algoritmo ser´ A0 (z −1 ). el retraso ıan −1 d y Rm (z ). Pm (z −1 ). Es f´cil ver que este algoritmo tiene m´s c´lculos que el anterior.11). Factorizar B(z −1 ) = B + (z −1 )B − (z −1 ). Los pasos de los que constar´ en cada instante de muestreo son los ıa siguientes 1. B − (z −1 ) mediante la o identificaci´n del modelo reparametrizado (6. G(z −1 ). Esta mayor dificultad es inherente a los algoritmos con estructura impl´ ıcita. Calcular y aplicar u(k) = 1 S(z −1 )w(k) − G(z −1 )y(k) −1 ) M (z donde S(z −1 ) = A0 (z −1 )Rm1 (z −1 ). Resolver la ecuaci´n (6. Obtener una estimaci´n actualizada de M (z −1 ).12).

A fin a de poder obtener esa informaci´n lo mas f´cilmente posible. es decir los MRAC y STR. Estas no son tan ambiciosas como algunas de las presentadas o hasta ahora y sin embargo son definitivamente estrategias de control avanzado que han demostrado ser utiles en la pr´ctica. que ıa obten´ dicha informaci´n b´sica. se estaban desarrollando t´cnicas para poder ajustar autom´ticae a mente controladores de tipo PID sin necesidad de intervenci´n del operario.2.Cap´ ıtulo 7 Controladores PID con autoajuste y Ajuste por tabla 7.1. 7. Lo que o 105 . Adem´s de las t´cnicas referidas en el t´ ´ a a e ıtulo del cap´ ıtulo se concluir´ el temario relativo a control adaptativo con un breve repaso a a algunos sistemas comerciales. ıa o a Paralelamente. necesitan para poder funcionar correctamente un conocimiento b´sico a priori de la planta. Funci´n de autoajuste (autotuning ) o Los reguladores adaptativos vistos hasta ahora. Introducci´n o En este cap´ ıtulo se revisaran algunas de las t´cnicas de control adaptativo con mayor e ´ aplicaci´n en la industria. los fabricantes introdujeron o a en los controladores adaptativos comerciales un modo de sinton´ previa (pre-tune).

desde el mundo industrial una de las caracter´ ısticas m´s demandadas a era una funci´n de autoajuste inicial. e Finalmente hay que hacer notar la diferencia fundamental entre un controlador autoajustable del tipo STR y un controlador con autoajuste. e Por tanto un controlador con autoajuste realiza tareas de modelado (identificaci´n). Al instalarse el controlador se activar´ dicha o ıa funci´n (apretando un bot´n en el panel de control) a lo que el controlador responder´ o o ıa realizando una bater´ de tests pre-programados que dar´ como resultado el ajuste ıa ıan autom´tico del controlador. y usualmente s´lo cuando se instala o se cambia sustancialmente o las condiciones del equipo a controlar. a Desde el punto de vista pr´ctico. o y dise˜o del controlador. Esta demanda surge de la dificultad y el engorro de ajustar a un controlador inicialmente. Por otra parte o no incrementan en mucho el coste final del controlador y son una manera de introducir t´cnicas de control adaptativo en la industria. el modo normal en el cual funcionan como cualquier controlador y el de ajuste. a fin de poderse realizar de manera autom´tica. En el modo de ajuste el control se desconecta. Para conseguir el autoajuste se puede utilizar cualquier t´cnica de control adape tativo que permita estimar los par´metros adecuados. o a a En un controlador con funci´n de autoajuste. . es que se vio que para poder ajustar un PID autom´ticamente bastaba con la o a informaci´n b´sica que proporcionaban los modos pre-tune de los controladores adapo a tativos. por lo que se simplifican n mucho las tareas de instalaci´n y puesta en marcha de los controladores. con el unico requisito de que a ´ los ensayos requeridos sean sencillos. Lo que hicieron los fabricantes de PID fue aprovechar los resultados obtenidos en el desarrollo de funciones pre-tune en controladores adaptativos para dotar a sus PID de una funci´n de autoajuste como la que demandaban los o usuarios.106 ´ FUNCION DE AUTOAJUSTE (AUTOTUNING) ocurri´. Por otra parte. los controladores con autoajuste tendr´n dos modos a a de funcionamiento. dicho autoajuste s´lo se realiza bajo deo o manda del operador. En los primeros el controlador de manera aut´noma va adapt´ndose de una manera m´s o menos continuada. de manera transparente al usuario. se realizan los ensayos necesarios y despu´s se vuelve al modo normal con el controlador ajustado.

a fin de evitar cambios bruscos en la salida del proceso. sino o una fracci´n del mismo. f (·) es una posible (se suele dar casi n o siempre) no-linealidad debida al actuador y v(t) = P (t) + I(t) + D(t) . Con esto se consigue que. As´ mismo a la hora de calcular la parte proporcional ı de la acci´n de control no se suele usar el valor exacto de la referencia a seguir. consiste en que cuando el actuador se satura (alcanza su l´ a ımite f´ ısico de operaci´n). CONTROLADORES PID CON AUTOAJUSTE Y AJUSTE POR TABLA 107 7. se deja de integrar el error. Otro o detalle muy importante es que se suele incorporar una funci´n de anti-windup que. sino que se a usa una aproximaci´n de la misma que reduce la ganancia en altas frecuencias.1: PID industrial moderno con funci´n de autoajuste (ABB modelo ECA). n o Sin entrar en demasiados detalles un PID m´s realista que la versi´n acad´mica a o e vendr´ dado por la siguiente expresi´n: ıa o u(t) = f (v(t)) donde u(t) es la se˜al de actuaci´n que se aplica.CAP´ ITULO 7. en lugar de considerarse la derivada del error se suele usar la derivada de la salida y adem´s a veces ni siquiera se emplea la derivada exacta de la salida. o b´sicamente. a fin de o minimizar los efectos del ruido. Por e n a Figura 7. el actuador deja de estar saturado. es decir que se consigue que el descenso del error se manifieste en un decremento de la se˜al de actuaci´n. cuando empieza a o disminuir el error. o ejemplo.3.1) no son exactamente iguales a las formulaciones acad´micas que se ense˜an en cursos b´sicos de control. Funciones de autoajuste para PIDs Antes de tratar las distintas t´cnicas existentes para ajustar autom´ticamente PIDs e a es importante hacer notar que los PIDs industriales (figura 7.

la gran mayor´ e a ıa est´n basadas en experimentos simples que el PID puede llevar a cabo por si solo. o o Por otra parte la acci´n derivativa se calcula usando o dy Td dD = −D − Kc Td N dt dt donde el par´metro N es fijo y suele tomarse igual a 10. Hay que mencionar que en los PID industriales el ajuste autom´tico e a viene realizado por el propio PID.108 FUNCIONES DE AUTOAJUSTE PARA PIDS donde P (t) es la acci´n proporcional que se calcula mediante o P (t) = Kc (βref(t) − y(t)) I(t) es la acci´n integral que se calcula mediante o dI Kc 1 = (ref(t) − y(t)) + (u(t) − v(t)) dt Ti Tt En la expresi´n anterior el ultimo t´rmino que se suma se usan para lograr el efecto o ´ e anti-windup de manera que la acci´n integral se mantenga acotada cuando el actuador o se sature. . Estos a experimentos podr´n ser en bucle abierto o cerrado. Este m´dulo deber´ ser compatible con los distintos modelos de PID que se usen en o a la planta.7 ≤ β ≤ 1 7.3. . y que devuelve los valores de los par´metros del a PID. Estos e programas monitorizan en paralelo el funcionamiento de la planta y cuando se producen cambios de referencia o perturbaciones importantes los aprovechan para analizar la din´mica de la planta. T´cnicas de ajuste basadas en la respuesta transitoria e Estas son t´cnicas de ajuste en bucle abierto que se basan en aplicar un escal´n en e o la se˜al de entrada del lazo que se quiere sintonizar y ajustar un modelo simple del n tipo k e−sL (7.1. Estos par´metros son los que luego se usar´n para sintonizar a a el PID. estim´ndose valores para par´metros como ganancias. o por un m´dulo separado que se coloca en lugar del o PID para realizar los experimentos. ya que para calcular los par´metros deben conocerse todas las peculiaridades a de los algoritmos usados por cada PID.1) G(s) = 1 + sT . El par´metro Tt es una constante de tiempo para reinicializar la acci´n a o integral cuando aparezca la saturaci´n y suele ser una fracci´n del tiempo integral T i . 0. Esta t´cnica se utiliza por ejemplo en controladores de las marcas Foxboro o e Fenwal. a En cuanto a las t´cnicas para sintonizar autom´ticamente PIDs. factores de a a a amortiguamiento. etc . Otros m´todos m´s sofisticados son los que e a se basan en t´cnicas de inteligencia artificial principalmente sistemas expertos. de ah´ que luego distingamos dos a ı tipos de t´cnicas.

2.CAP´ ITULO 7. De estas e t´cnicas veremos la que est´ basada en las oscilaciones producidas al realimentar con e a un rel´. la cual se usa para obtener T mediante ı T = eA1 k donde e es la base de los logaritmos neperianos. Consid´rese la figura 7. Una vez que se conoce L + T y T se puede obtener L y con eso ya est´n estimados todos los par´metros. Las t´cnicas basadas en experimentos en bucle cerrado no tienen este problema. M´todos basados en las oscilaciones producidas al reale imentar con un rel´ e Los m´todos de ajuste basados en la respuesta transitoria son simples.3. Otros m´todos est´n basados en medida de areas e a ´ como la que se describe a continuaci´n. a a k A0 A1 L+T Figura 7. El procedimiento o e para calcular T y L comienza por el c´lculo de A0 . pero muy e sensibles a las perturbaciones. 1 . ya que las pruebas se realizan en bucle abierto.3.2: Determinaci´n de T y L por areas. De ah´ se determina a ı L+T = A0 k y de ah´ se puede medir A1 . o ´ 7. Baste saber que son oscilaciones con entrada nula o referencia constante que aparecen en ciertos sistemas y que pueden provocarse con la estructura presentada aqu´ ı. CONTROLADORES PID CON AUTOAJUSTE Y AJUSTE POR TABLA 109 Conocidos los par´metros del modelo el PID se puede ajustar usando t´cnicas del a e tipo Ziegler-Nichols de bucle abierto. La estructura para realizar el ajuste es la que se muestra en la figura 7. e La idea clave es que la mayor´ de los procesos exhiben oscilaciones autosostenidas ıa 1 (conocidas como ciclos l´mite ) cuando son realimentados con un rel´ en la cadena ı e El estudio de los ciclos l´ ımite no pertenece a esta asignatura.2.

e 7. o Un esquema de control t´ ıpico que utiliza la estructura de la figura 7.4. De ah´ que a ı se diga que la adaptaci´n es en bucle abierto. si el ciclo e l´ ımite resultante tiene amplitud a y frecuencia ωu entonces los par´metros del m´todo a e de Ziegler-Nichols de bucle cerrado. En la salida comenzar´n a aparecer oscilaciones que se eme a pezar´n a repetir peri´dicamente cuando el ciclo l´ a o ımite aparezca. a El procedimiento consiste en desconectar el controlador a la hora de hacer el ajuste y sustituirlo por el rel´. los par´metros del controlador que a . e e directa. el ajuste de los par´metros no se realiza en funci´n del a o comportamiento del sistema.110 ´ LA TECNICA DE AJUSTE POR TABLA O GAIN SCHEDULING PID r + RELÉ u y PROCESO Figura 7. Este esquema. m´s limitado se ilustra en la figura 7.4. Puede a observarse que en este caso. sino que se utilizan los valores de una variable auxiliar para decidir cuales son los mejores valores de los par´metros del regulador. En este esquema.4 es el popular gain scheduling o ajuste por tabla. La t´cnica de ajuste por tabla o gain schedule ing Existen otros controladores que proporcionan una cierta capacidad de adaptaci´n o pero que no encajan en el esquema t´ ıpico discutido en el cap´ ıtulo 5 ya que la adaptaci´n o se realiza en bucle abierto. Una vez que se han determinado los par´metros del ciclo l´ a ımite se calculan los del PID y se vuelve a conectar el controlador. es decir.3: Estructura usada en el m´todo basado en oscilaciones de rel´. Los par´metros del ciclo l´ a ımite contienen informaci´n suficiente para calcular o los par´metros de ajuste del PID. Suponiendo una referencia nula. la ganancia cr´ ıtica Ku y el periodo cr´ ıtico Tu son iguales a 4d 2π Ku = Tu = πa ωu donde d es la amplitud del rel´. El m´todo m´s conocido para calcular los par´metros del PID es el e a a m´todo de Ziegler-Nichols de bucle cerrado.

sin embargo.CAP´ ITULO 7. CONTROLADORES PID CON AUTOAJUSTE Y AJUSTE POR TABLA 111 REFERENCIA MEDIO AMBIENTE Figura 7. Tal y como se vio en la secci´n 5. en sistemas de control de vuelo. a Control de pH. Algunas de las aplicaciones t´ n ıpicas son: Linealizaci´n de la caracter´ o ıstica de ciertos actuadores. bombas. se pueden encontrar en diversos sistemas t´ ıpicos de control. este tipo de control funciona bien si entre la variable auxiliar y la din´mica del sistema existe una fuerte relaci´n. o e o se usan en cada instante vienen determinados por una tabla precalculada para varios puntos de funcionamiento o valores de la variable auxiliar.2 la caracter´ o ıstica no lineal de un actuador se puede aproximar por un modelo linealizado a trozos. sino que para cada aplicaci´n ha de verse como llevar a la pr´ctica las ideas o a del gain scheduling. por ejemplo. de manera que en funci´n del punto de operaci´n del o o actuador se escoger´n unos valores u otros para el controlador. De hecho no existe una metodolog´ o ıa universal. Por ultimo encontrar la variable auxiliar apropiada no siempre es ´ posible. Esta rapidez en el cambio de los par´metros puede ser. sin embargo. principalmente debido a su sencillez y efectividad cuando est´n bien a dise˜ados. Estos controladores. en los que los par´metros del a controlador se seleccionan de un conjunto de par´metros precalculados en funci´n de a o la altura de vuelo. que permite determinar a o el valor de los par´metros en funci´n del valor observado de la variable auxiliar. contraproducente. Una a o ventaja que tiene este esquema es que los par´metros del control se pueden cambiar a (adaptar) a la misma velocidad a la que cambia la din´mica del sistema pues estos a cambios se reflejan sobre la variable auxiliar a la vez que se producen. Por otra parte la a construcci´n de la tabla puede ser muy complicada. En estos sistemas se presentan no linealidades originadas tanto por los elementos de control (v´lvulas.4: Configuraci´n gen´rica de un controlador adaptativo con adaptaci´n en bucle abierto. Este tipo de control es muy popular. sensores) como por las reacciones a pãÖyڂ٠â Ú× + Ö åÔ f’éfãÚU× â ڑ‘Ú Û áèçÕ ä æßåãÖyooá ä Û ÚÔ á“o‘ÚUe{AÞÝ‘Ú Ùà ×ß ØuÜÛyڂ…ÕyU{uuÔ Õ Ù Ø× ÖÕ - u y Ø å åíÞ ‘–Úaٖ‘è‘Ú áÙà åØ ‚f‘Úˆu‘Ú ì ړë‘ê‘Û–èYá ä Ù áÛ Ú åÛ . Por supuesto.

6 Diferencia entre las concentraciones acido−base −0.5 En realidad el nombre t´cnico es curva de titraci´n.5: Curva de pH para una soluci´n de HCl 0.001 M. a o En este caso se presenta otra no linealidad debida al sensor utilizado para medir la proporci´n de aire y combustible.8 x 10 1 −3 Figura 7. Usando dichas variables se busca en una tabla (usualmente de 16x16 entradas) en la que se obtienen los valores de los par´metros del controlador (si los valores de las variables no coina ciden con los de ninguna entrada se interpola con las m´s pr´ximas).112 ´ LA TECNICA DE AJUSTE POR TABLA O GAIN SCHEDULING qu´ ımicas propias del proceso.5 se muestra dicha curva para una soluci´n acuosa de acido clorh´ o ´ ıdrico y sosa c´ustica (es decir un par acido-base). Puede observarse que en este caso a ´ la no linealidad tambi´n se puede aproximar bien por un modelo linealizado a e tramos. Este sensor denominado sonda lambda tiene o una caracter´ ıstica que de manera aproximada viene representada por la figura 7.6 0. La no linealidad principal proviene de la relaci´n o entre las concentraciones de los reactivos y el pH de la soluci´n resultante.8 −0. Dicha o 2 relaci´n se representa en la llamada curva de pH . De hecho la se˜al de error que se env´ al PI se genera mediante la expresi´n n ıa o e= 2 1 si V > 0.6.001 M y NaOH 0. o Control de la mezcla aire combustible en un motor de combusti´n.4 −0. En dicha curva se representa o el pH en funci´n de las diferencias en las concentraciones de los reactivos. La variable a o de control es el tiempo de apertura de la v´lvula de inyecci´n de combustible.4 0. En la o figura 7. 12 11 10 9 8 pH 7 6 5 4 3 2 −1 −0.2 0 0. aunque tales detalles no son relevantes en e o esta asignatura . En este caso se o utilizan como variables para decidir el ajuste del controlador (un PI usualmente) la velocidad del motor y la cantidad de aire que entra.5 −1 si V ≤ 0.2 0.

entre las cuales podemos distinguir las siguientes.4 0. podemos decir que la t´cnica de gain scheduling se puede o e usar con ´xito cuando las no linealidades que se pretendan compensar se conocen bien e a priori.5. a 7.3. Herramientas para sintonizar controladores.5 0.9 0.6 0.5 Figura 7. En este caso la din´mica considerada para o a el control de la direcci´n depende de la velocidad del barco y de ciertas variables o relacionadas con el tiempo atmosf´rico. se puede encontrar una a relaci´n entre los par´metros optimos del controlador y la altura.6 0.3 0. e a sino a la de las perturbaciones que este sufre). Por otra parte como la adaptaci´n es en bucle abierto.8 0.5 0. A veces se encuentran como componentes o .2 1. A modo de conclusi´n.9 1 1.6: Caracter´ ıstica aproximada de una sonda lambda Control de vuelo. Controladores adaptativos industriales Las t´cnicas de control adaptativo han llegado al mundo industrial en distintas e formas y capacidades.7 113 Voltaje de salida (V) 0.3 1.CAP´ ITULO 7.7 0.1 1. como la fuerza y direcci´n del viento (en e o realidad dichas variables atmosf´ricas no afectan a la din´mica del barco en si.4 1. Es el ejemplo cl´sico.2 0. es necesario conocer o bien tanto la din´mica del proceso como la de las perturbaciones. en este caso. u Control de la direcci´n de un barco.8 Relación combustible − aire (λ) 0. CONTROLADORES PID CON AUTOAJUSTE Y AJUSTE POR TABLA 1 0. la velocidad y o a ´ el n´mero de Mach. Est´n basadas en experimentos como a los que se han descrito en la secci´n 7.1 0 0.

automoci´n. Estos combinan reglas emp´ ıricas y t´cnicas e de colocaci´n de polos usando experimentos en bucle abierto. como el SattControl ECA40. Estos controladores ajustan los par´metros a de manera m´s o menos continua. Protuner (Techmation) o PIDWIZ (BST Control). o Soluciones a medida. y ciertas industrias. o A continuaci´n se analizar´n en mayor detalle algunos controladores especialmente o a interesantes. como patibles con determinadas familias de controladores. las capacidades de gain scheduling tambi´n est´n presentes en ciertos controladores como el SattControl ECA 400 o el e a DPR910 (Fisher-Rosemount). Controladores adaptativos estandar. SLPC-171/271 (Yokogawa) o UDC 6000 de Honeywell. Supertuner (Toyo). Una tercera posibilidad es que estas herramientas formen parte de sistemas de control distribuido como en el caso de Looptune (Honeywell) e Intelligent Tuner (Fisher-Rosemount). Los aut´matas o o programables ganan terreno d´ a d´ en cualquier aplicaci´n industrial de control.114 CONTROLADORES ADAPTATIVOS INDUSTRIALES opcionales del controlador como en el caso de los sistemas Protonic (Hartman & Braun) o UDC 6000 (Honeywell). Controladores adaptativos basados en aut´matas programables. Por otra parte exiso e ten otros m´s ambiciosos que est´n basados en sistemas expertos y en t´cnicas de a a e reconocimiento de patrones como EXACT (Foxboro). Se encuentran en barcos. Algunos. aviones. no identio fican un modelo param´trico sino que usan reglas del tipo Ziegler-Nichols de bucle e cerrado. 3 Mas tarde Alfa-Laval y actualmente ABB. . Finalmente. En este tipo encontramos ejemplo como SIEPID (Siemens). Las estrategias de o oscilaciones mediante rel´ tambi´n son comunes como por ejemplo en el SattCone e 3 trol ECA40 y en el DPR900 (Fisher-Rosemount). Otra posibilidad es que estas herramientas para sintonizar controladores sean m´dulos independientes. Los hay que est´n basados en la identificaci´n a a o de un modelo mediante m´ ınimos cuadrados recursivos como los CLC04 (Bailey Controls) y SLPC-181/281 (Yokogawa) que adem´s utilizan una estrategia de a control por colocaci´n de polos. A veces en determinadas aplicaciones se encuentran controladores adaptativos a medida y que por tanto son exclusivos de cada sistema. a partir de experimentos de realimentaci´n con rel´. ıa ıa o 3M y General Electric tienen en su cat´logo aplicaciones de control adaptativo a basados en sus aut´matas. Estos sistemas utilizan una base de reglas (100-200) con las que se pretende reproducir el conocimiento de un experto (humano) en sintonizar controladores.

concretamente una estimaci´n previa de Kc . Este controlador requiere informaci´n previa para poder sintonizar auo tom´ticamente. as´ como de la a o ı escala de tiempos del proceso. 7.CAP´ ITULO 7. SattControl ECA40 y Fisher-Rosemount DPR900 Estos controladores est´n basados en oscilaciones inducidas mediante realimentaci´n a o con un rel´. En cuanto se observa que las oscilaciones comienzan a repetirse.5. El ajuste ofrece tres perfiles diferentes: control normal. Ti y Td . Lo que se emplea e es un escal´n o perturbaci´n aplicada al sistema y de la evoluci´n de la salida a paro o o tir de ese instante se obtiene informaci´n que permite ajustar el controlador usando o Ziegler-Nichols. ABB Novatune Esta herramienta de control STR (figura 7. a o encontr´ndose particularmente util en industrias que no tienen personal especializado a ´ en todos los turnos.7) est´ basada entre otras cosas en el a control de m´ ınima varianza y ofrece la capacidad de especificar la posici´n de 1 de los o . A modo de an´cdota la planta de Atlantic Copper en Huelva utiliza este controlador en algunos e de sus procesos. se calcula la amplitud y periodo de las mismas y a partir de ah´ se calculan los par´metros. Incluyen una funci´n de ”sinton´ pulsando un bot´n”. Foxboro EXACT Este sistema est´ basado en la respuesta transitoria de bucle cerrado. Adem´s tiene cae o ıa o a pacidades limitadas de gain scheduling con una tabla de tres entradas. La aceptaci´n comercial e o de este producto ha sido excelente y se han vendido miles de unidades.1.3. Previamente al ajuste el proceso se deja evolucionar con una entrada constante. es decir es a de bucle cerrado pero no usa las oscilaciones inducidas por un rel´. lento o a r´pido. El procedimiento de ajuste comienza con la detecci´n del ciclo l´ o ımite.5. CONTROLADORES PID CON AUTOAJUSTE Y AJUSTE POR TABLA 115 7. La reacci´n de la comunidad industrial a estos productos ha sido muy buena. Es neceo o sario sin embargo que el proceso est´ en regimen permanente. Para ello se utilizan una versi´n modificada del ı a o m´todo de Ziegler-Nichols. Una vez se calculan los par´metros el controlador conmuta e a a modo autom´tico. 7. Si esta informaci´n se desconoce se puede usar el modo o de pre-tune incorporado que la obtiene mediante la aplicaci´n de un escal´n.2.5. El controlador adaptativo multivariable EXACT MV se distribuye actualmente en forma de software de control avanzado como parte del sistema I/A Series de Foxboro.

Por otra o parte la ley de control tiene la forma (σ + B ∗ (z −1 ))∆u(t) = (1 − Pl )(ref(t) − y(t)) − A(z −1 )∆y(t) − C(z −1 )∆v(t) donde σ es un factor de ponderaci´n.7: La herramienta Novatune se comercializa actualmente con el sistema Advant 410 de ABB. Utiliza m´ ınimos cuadrados recursivos con factor de olvido para Figura 7.116 CONTROLADORES ADAPTATIVOS INDUSTRIALES polos de bucle cerrado. . La experiencia en el uso de esta herramienta o demuestra que da mejores resultados que el control PID convencional. identificar un modelo que tiene la estructura (1 − Pl z −1 )y(t + kd ) − (1 − Pl )y(t) = A(z −1 )∆y(t) + B(z −1 )∆u(t) + C(z −1 )∆v(t) donde Pl es el polo que se puede especificar y kd es el horizonte de predicci´n.

Por un lado.Cap´ ıtulo 8 Control Predictivo Basado en Modelo (MPC) 8. Estas formulaciones eran de naturaleza heur´ ıstica y algor´ ıtmica e intentaban aprovechar el creciente potencial de los computadores digitales por aqu´lla e ´poca.1. La mayor´ o ıa de las aplicaciones fueron llevadas a cabo sobre sistemas multivariables incluyendo restricciones. las cuales eran determinadas minimizando el error predicho sujeto a restricciones de operaci´n. a Independientemente fue surgiendo otra l´ ınea de trabajo en torno a las ideas del control adaptativo. Dynamic Matrix Control). Los algoritmos utilizados fueron principalmente el idcom (IdentificationCommand) y el dmc (Control con Matriz Din´mica. desarrollando estrategias esencialmente para procesos monovariables 117 . a finales a de los a˜os setenta surgieron diversos algoritmos que usaban expl´ n ıcitamente un modelo din´mico del proceso para predecir el efecto de las acciones de control futuras en la a salida. que aunque posea muchos m´s par´metros que las o a a formulaciones en el espacio de estados o funci´n de transferencia suele ser preferido o por ser intuitivo y necesitar menos informaci´n a priori para identificar. Perspectiva hist´rica o El Control Predictivo se desarroll´ en base a dos l´ o ıneas b´sicas. e R´pidamente el mpc adquiri´ gran popularidad en las industrias de procesos qu´ a o ımicos principalmente debido a la simplicidad del algoritmo y al uso del modelo de respuesta impulsional o en escal´n. La optimizaci´n se repet´ en cada instante de muestreo con informaci´n o o ıa o actualizada del proceso.

a Las ideas que aparecen en mayor o menor medida en toda la familia de controladores predictivos son b´sicamente: a Uso expl´ ıcito de un modelo para predecir la salida del proceso en futuros instantes de tiempo (horizonte).2. Conceptos b´sicos de control predictivo a El Control Predictivo Basado en Modelo. encontrando gran aceptaci´n tanto en aplicao ciones industriales como en el mundo acad´mico. a Los distintos algoritmos de mpc difieren entre s´ casi exclusivamente en el modelo ı usado para representar el proceso y los ruidos y en la funci´n de coste a minimizar. El Control Predictivo no es una estrategia de control espec´ ıfica. pueden provocar distintos n comportamientos en bucle cerrado.118 ´ CONCEPTOS BASICOS DE CONTROL PREDICTIVO formuladas con modelos entrada/salida. control multivariable o control a con restricciones. sino que se trata m´s bien de un campo muy amplio de m´todos de control desarrollados en torno a a e ciertas ideas comunes. repitiendo el c´lculo en cada instante de muestreo. En este contexto se extendieron las ideas del Controlador de M´ ınima Varianza y se desarroll´ el Control Predictivo Generalizado o (Generalized Predictive Control gpc) que es uno de los m´todos m´s populares en la e a actualidad. lo que implica aplicar la primera se˜al de control en cada n instante y desechar el resto. control ´ estoc´stico. Estos m´todos de dise˜o conducen a controladores lineales que e n poseen pr´cticamente la misma estructura y presentan suficientes grados de libertad. a n o Estrategia deslizante. Model (Based) Predictive Control (mbpc o mpc) constituye un campo muy amplio de m´todos de control desarrollados en torno ´ e a ciertas ideas comunes e integra diversas disciplinas como control optimo. de forma que en cada instante el horizonte se va desplazando hacia el futuro. siendo cr´ ıticas para el ´xito de un determinado e algoritmo en una determinada aplicaci´n. o Aunque las diferencias puedan parecer peque˜as a priori. C´lculo de las se˜ales de control minimizando una cierta funci´n objetivo. 8. o El Control Predictivo es un tipo de control de naturaleza abierta dentro del cual se han desarrollado muchas realizaciones. control de procesos con tiempos muertos. En la actualidad existen numerosas e .

o Resulta conceptualmente simple la extensi´n al tratamiento de restricciones. l´gicamente. entre las que destacan: e Resulta particularmente atractivo para personal sin un conocimiento profundo de control.3. o a Puede ser usado para controlar una gran variedad de procesos. Pero quiz´s el mayor ina o a conveniente venga marcado por la necesidad de disponer de un modelo apropiado del proceso. Posee intr´ ınsecamente compensaci´n del retardo. a la vez que la sintonizaci´n es relativamente f´cil. pero resulta evidente que las prestaciones obtenidas depender´n e a de las discrepancias existentes entre el proceso real y el modelo usado. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 119 aplicaciones de controladores predictivos funcionando con ´xito. que o pueden ser incluidas de forma sistem´tica durante el proceso de dise˜o. tambi´n presenta inconvenientes. Permite tratar con facilidad el caso multivariable. representada en la figura 8. desde aqu´llos con e din´mica relativamente simple hasta otros m´s complejos incluyendo sistemas con a a grandes retardos. 8. Unos de ellos es la carga de o e c´lculo necesaria para la resoluci´n de algunos algoritmos.CAP´ ITULO 8. tanto en la industria e de procesos como en control de motores o Rob´tica. de fase no m´ ınima o inestables. Estrategia de los controladores predictivos La metodolog´ de todos los controladores pertenecientes a la familia del mpc se ıa caracteriza por la estrategia siguiente. El buen funcionamiento de estas o aplicaciones muestra la capacidad del mpc para conseguir sistemas de control de elevadas prestaciones capaces de operar sin apenas intervenci´n durante largos per´ o ıodos de tiempo.1: . Es una metodolog´ completamente abierta basada en algunos principios b´sicos ıa a que permite futuras extensiones. Pero. puesto que los conceptos resultan muy intuitivos. a n Es muy util cuando se conocen las futuras referencias (rob´tica o procesos en ´ o batch). El algoritmo de dise˜o est´ basado en el conocimiento previo del modelo y es n a independiente de ´ste. El mpc presenta una serie de ventajas sobre otros m´todos.

llamado horizonte de predicci´n. 2. k = 0 . 3. t+k . N dependen de los valores conocidos ˆ hasta el instante t (entradas y salidas pasadas) y de las se˜ales de control futuras n u(t + k | t). o . incluyendo en muchos casos el esfuerzo de control. La se˜al de control u(t | t) es enviada al proceso mientras que las siguientes n se˜ales de control calculadas son desechadas. . puesto que en el siguiente instante n de muestreo ya se conoce y(t + 1) y se repite el paso 1 con este nuevo valor y todas las secuencias son actualizadas. el modelo lineal y no existen restricciones se puede obtener una a soluci´n expl´ o ıcita. Este criterio suele tomar la forma de una funci´n o e o cuadr´tica de los errores entre la salida predicha y la trayectoria de referencia a tambi´n predicha.. como por ejemplo que va a ser constante a partir de cierto instante. N − 1 que se pretenden mandar al sistema y que son las que se quieren calcular. en otro caso se debe usar un m´todo iterativo de optimizaci´n. En cada instante t y haciendo uso del modelo del proceso se predicen las futuras salidas para un determinado horizonte N . . .. Se calcula por tanto u(t + 1 | t + 1) (que en 1 la notaci´n indica el valor de la variable en el instante t + k calculado en el instante t. t+N Figura 8.120 ESTRATEGIA DE LOS CONTROLADORES PREDICTIVOS u(t+k|t) u(t) ^ y(t+k|t) y(t) N t-1 t t+1 . . El conjunto de se˜ales de control futuras se calcula optimizando un determinado n criterio en el que se pretende mantener el proceso lo m´s pr´ximo posible a la a o trayectoria de referencia w(t + k) (que puede ser directamente el setpoint o una suave aproximaci´n a ´ste). e o Adicionalmente se hace alguna suposici´n sobre la estructura de la ley de control o futura... y (t + k | t) para k = 1 . Si el criterio e es cuadr´tico. Estas o 1 salidas predichas.1: Estrategia del Control Predictivo 1.

Elementos b´sicos a Todos los controladores predictivos poseen elementos comunes y para cada uno de estos elementos se pueden elegir diversas opciones. e e a a 8. bas´ndose en las futuras se˜ales de control propuestas.2: Estructura b´sica del MPC a principio ser´ diferente al u(t + 1 | t) al disponer de nueva informaci´n). Estas se˜ales son calculadas a n n por el optimizador teniendo en cuenta la funci´n de coste (donde aparece el futuro o error de seguimiento) as´ como las restricciones.CAP´ ITULO 8. El optimizador es otra parte fundamental de la estrategia pues proporciona las acciones de control. Por tanto el modelo juega un papel ı decisivo en el controlador. Si la funci´n de coste es cuadr´tica. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 121 Entradas y salidas pasadas Salidas predichas Modelo Controles futuros + - Trayectoria de referencia Optimizador Errores futuros Funcion de coste Restricciones Figura 8. Para llevar a cabo esta estrategia. haciendo a o uso del concepto de horizonte deslizante. cuando existen restricciones de desigualdad la soluci´n debe o ser calculada por m´todos num´ricos con m´s carga de c´lculo. . El modelo elegido debe ser capaz de capturar la din´mica del a proceso para poder predecir las salidas futuras al mismo tiempo que debe ser sencillo de usar y de comprender. se usa una estructura como la mostrada en la figura 8. Se hace uso de un modelo para predecir las salidas futuras del proceso. dando lugar a distintos algoritmos.4.2. Sin embargo. el m´ o a ınimo se puede obtener como una funci´n expl´ o ıcita de las entradas y salidas pasadas y de la trayectoria de referencia.

que pueden ser compensadas por acci´n feedforward. Modelo de predicci´n o La piedra angular del mpc es el modelo. Las diferentes estrategias ˆ de mpc pueden usar distintos modelos para representar la relaci´n de las salidas con o las entradas medibles. el cual debe ser lo sufio cientemente rico para capturar al maximo la din´mica del proceso y debe ser capaz de a permitir el c´lculo de las predicciones a la vez que sea intuitivo y permita un an´lisis a a te´rico. La salida viene relacionada con la entrada por la ecuaci´n o o ∞ y(t) = i=1 hi u(t − i) . para o a a intentar describir el comportamiento que no aparece reflejado en el modelo del proceso. El uso del modelo del proceso viene determinado por la necesidad del c´lcuo a lo de la salida predicha en instantes futuros y (t + k | t). Para el estudio se puede separar el modelo en dos partes: el modelo del proceso propiamente dicho y el modelo de las perturbaciones. o Modelo del Proceso Casi todas las formas posibles de modelar un proceso aparecen en alguna formulaci´n de mpc siendo las m´s usadas las siguientes: o a Respuesta impulsional.1.122 ´ ELEMENTOS BASICOS Estos elementos son: Modelo de predicci´n o Funci´n objetivo o Obtenci´n de la ley de control o 8. algunas de las cuales ser´n variables manipuladas y otras se a pueden considerar como perturbaciones medibles. el ruido y los errores de a ı modelado. un dise˜o completo debe incluir los mecann ismos necesarios para la obtenci´n del mejor modelo posible.4. Cualquier m´todo usar´ ambas e a partes para la predicci´n. Tambi´n conocida por secuencia de ponderaci´n o modelo e o de convoluci´n. Adem´s se tendr´ en cuenta un modelo de las perturbaciones. englob´ndose aqu´ el efecto de las entradas no medibles.

teniendo N y(t) = i=1 −1 −1 −2 hi u(t − i) = H(z −1 )u(t) g N t+N (8. Esta suma es truncada y s´lo se consideran N valores (por tanto s´lo permite representar o o procesos estables y sin integradores).1) donde H(z ) = h1 z + h2 z + · · · + hN z −N . Respuesta ante escal´n. La predicci´n vendr´ dada por: o a N y (t + k | t) = ˆ i=1 hi u(t + k − i | t) = H(z −1 )u(t + k | t) Este m´todo es ampliamente aceptado en la pr´ctica industrial debido a que e a es muy intuitivo y no requiere informaci´n previa sobre el proceso... Figura 8.3: Respuesta impulsional y ante escal´n o donde hi son los valores muestreados obtenidos al someter al proceso a un impulso unitario de amplitud igual al per´ ıodo de muestreo (ver figura 8. con lo que o el procedimiento de identificaci´n se simplifica. g2 h1 t+N t g t+1 t+2 b) .. ya que N suele ser un valor elevado u a (del orden de 40-50).2) . a la vez que permite describir o f´cilmente din´micas complejas como fase no m´ a a ınima o retardos. Es muy similar al anterior s´lo que ahora la se˜al de o o n entrada es un escal´n. Para sistemas estables se tiene la respuesta truncada que o ser´ a N y(t) = y0 + i=1 gi u(t − i) = y0 + G(z −1 )(1 − z −1 )u(t) (8.CAP´ ITULO 8. Un inconveniente de este m´todo e es el gran n´mero de par´metros que necesita.. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 123 h2 i hi y(t) t hN y(t) g1 t+1 t+2 a) .3a).

e Funci´n de transferencia.124 ´ ELEMENTOS BASICOS donde las gi son los valores muestreados ante la entrada en escal´n y u(t) = o u(t) − u(t − 1). B y C las matrices del sistema. aunque es fundamental un conocimiento a priori a del proceso sobre todo en cuanto al orden de los polinomios A y B. . Para este modelo la predicci´n viene dada por o k y (t + k | t) = C x(t + k | t) = C[Ak x(t) + ˆ ˆ i=1 Ai−1 Bu(t + k − i | t)] Posee la ventaja de que sirve tambi´n para sistemas multivariables a la vez que e permite analizar la estructura interna del proceso (aunque a veces los estados obtenidos al discretizar no tienen ning´n significado f´ u ısico). con la necesidad adicional de incluir un observador si los estados no son accesibles. Los c´lculos pueden a ser complicados. Se utiliza el concepto de funci´n de transferencia G = o o B/A con lo que la salida viene dada por: A(z −1 )y(t) = B(z −1 )u(t) A(z −1 ) = 1 + a1 z −1 + a2 z −2 + · · · + ana z −na B(z −1 ) = b1 z −1 + b2 z −2 + · · · + bnb z −nb Por tanto la predicci´n vendr´ dada por o a y (t + k | t) = ˆ B(z −1 ) u(t + k | k) A(z −1 ) Esta representaci´n es v´lida tambi´n para procesos inestables y posee la ventaja o a e de necesitar pocos par´metros.3b. seg´n se muestra en la figura 8. con lo cual el predictor ser´: e a N y (t + k | t) = ˆ i=1 gi u(t + k − i | t) Este m´todo presenta las mismas ventajas e inconvenientes que el anterior. de entrada y de salida respectivamente. Espacio de estados. Tiene la siguiente representaci´n: o x(t) = Ax(t − 1) + Bu(t − 1) y(t) = Cx(t) siendo x el estado y A. El valor de y0 puede tomarse u 0 sin p´rdida de generalidad.

1. en el que las perturbaciones. las diferencias entre la salida medida y la calculada por el modelo vienen dadas por n(t) = C(z −1 )e(t) D(z −1 ) donde el polinomio D(z −1 ) incluye expl´ ıcitamente el integrador = 1 − z −1 . uf (t − j) = u(t − j) para j = 1. N´tese ıa) e o que al incluir un integrador se consigue un control con error nulo en r´gimen permanente e (offset-free). Respuestas libre y forzada Una caracter´ ıstica t´ ıpica de la mayor´ de los controladores mpc es el empleo de los ıa conceptos de repuesta libre y forzada. es decir. Como caso particular del arima se puede incluir la perturbaci´n constante o n(t) = e(t) 1 − z −1 cuya mejor predicci´n ser´ n(t + k | t) = n(t). · · · uf (t + j) = u(t − 1) para j = 0. o aˆ 8. Un modelo bastante o extendido es el Autorregresivo Integrado de Media M´vil (Auto-Regressive and Inteo grated Moving Average. e(t) es un ruido de media cero y normalmente el polinomio C se considera igual a uno. Es ´ decir.4.1.CAP´ ITULO 8. 2. arima). 2. 1. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 125 Modelo de las perturbaciones De tanta importancia como la elecci´n de un determinado modelo del proceso es la o elecci´n del modelo utilizado para representar la perturbaciones. · · · . Este modelo se considera apropiado para dos tipos de perturbaciones: cambios aleatorios ocurridos en instantes aleatorios (por ejemplo cambio en la calidad del material) y movimiento browniano (en procesos con balance de energ´ y es usado en varios m´todos. La idea es expresar la secuencia de acciones de control como la suma de dos se˜ales: n u(t) = uf (t) + uc (t) La se˜al uf (t) corresponde a las entradas pasadas (anteriores al instante t) y en el n futuro se mantiene constante e igual al ultimo valor de la variable manipulada.

· · · La predicci´n de la secuencia se salida se separa en dos partes. · · · uc (t + j) = u(t + j) − u(t − 1) para j = 0. u y Process t t u f uc y f yc t t t t Figura 8. y la otra. 2. la repuesta forzada (yc (t)).3) En algunos m´todos el segundo sumando. 1. La respuesta libre corresponde a la evoluci´n del proceso debido a su estado o actual (incluido por tanto el efecto de acciones pasadas) mientras que la respuesta forzada es la debida a las acciones de control futuras.2. N u) = j=N1 δ(j)[ˆ(t + j | t) − w(t + j)]2 + y j=1 λ(j)[ u(t + j − 1)]2 (8. 2.4.4. En general se persigue que la salida futura en el horizonte o considerado siga a una determinada se˜al de referencia al mismo tiempo que se puede n penalizar el esfuerzo de control requerido para hacerlo.4: Respuestas libre y forzada 8. La expresi´n general de tal o funci´n objetivo ser´: o a N2 Nu J(N1 .126 ´ ELEMENTOS BASICOS La se˜al uc (t) vale cero en el pasado y corresponde a las se˜ales de control en los n n instantes futuros: uc (t − j) = 0 para j = 1. Funci´n objetivo o Los diversos algoritmos de mpc proponen distintas funciones de coste para la obtenci´n de la ley de control. como se ve en o la figura 8. que considera el esfuerzo de control. N2 . corresponde a la predicci´n de la salida cuando la se˜al de control es o n uc (t). Una de ellas (yf (t)). corresponde a la predicci´n de o la salida cuando la variable manipulada se hace igual a uf (t). la respuesta libre. no e .

provocando un control m´s brusco. servos o procesos en batch. dando lugar a un control m´s a o a suave y con menor esfuerzo. As´ si se toma un valor grande de N1 es porque ı. en otras aplicaciones aunque la referencia sea o constante. obtea o niendo un abanico muy amplio de posibilidades con las que se puede cubrir una extensa gama de opciones. a En el criterio de minimizaci´n (8. Usualmente se consideran valores constantes o secuencias exponenciales. desde un control est´ndar hasta una estrategia dise˜ada a n a medida para un proceso en particular. N´tese que para procesos con tiempo muerto d no tiene o sentido que N1 sea menor que dicho valor puesto que la salida no empezar´ a a evolucionar hasta el instante t + d. evitando los efectos del retardo en la respuesta del proceso. El significado de N1 y N2 rea a sulta bastante intuitivo: marcan los l´ ımites de los instantes en que se desea que la salida siga a la referencia. que no tiene por qu´ coincidir con el o e horizonte m´ximo. lo cual provocar´ una rea spuesta suave del proceso. En muchas aplicaciones la evoluci´n futura de la referencia r(t + k) es conocida de antemano. Trayectoria de referencia: Una de las ventajas del control predictivo es que si se conoce a priori la evoluci´n futura de la referencia. como se ver´ posteriormente. α > 1 es que se penalizan m´s a los primeros errores. Adem´s. Normalmente ser´ una suave aproximaci´n desde el valor actual de la salida a o . este par´metro permite eliminar de la funci´n objetivo los primeros instantes de a o respuesta inversa.3). Si. por el contrario. Por ejemplo se puede conseguir un peso exponencial de δ(j) a lo largo del horizonte usando: δ(j) = αN2 −j Si α est´ comprendido entre 0 y 1 indica que se penaliza m´s a los errores m´s a a a alejados del instante t que a los m´s pr´ximos. a Todos estos valores pueden ser usados como par´metros de sintonizaci´n. si el proceso es de fase no m´ a ınima. se puede conseguir una sensible mejora de prestaciones simplemente conociendo el instante de cambio de valor y adelant´ndose a esa circunstancia. mientras que en otros tambi´n aparecen directamente los valores de e la se˜al de control (no sus incrementos). En la funci´n de coste se pueden considerar: n o Par´metros: N1 y N2 son los horizontes m´ a ınimo y m´ximo de coste (o de predica ci´n) y N u es el horizonte de control. el sistema puede empezar o a reaccionar antes de que el cambio se haya efectivamente realizado. Los coeficientes δ(j) y λ(j) son secuencias que ponderan el comportamiento futuro. como en o Rob´tica.CAP´ ITULO 8. no importa que haya errores en los primeros instantes. la mayor´ de los m´todos suelen usar una o ıa e trayectoria de referencia w(t + k) que no tiene por qu´ coincidir con la referencia e real. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 127 se tiene en cuenta.

para valores peque˜os de este par´metro se tiene un seguimiento r´pido n a a (w1 ) mientras que si aumenta. como es el caso de las v´lvulas. de seguridad o medioambientales o bien los propios alcances de los sensores pueden causar l´ ımites en las variables de proceso. Todo lo expuesto anteriormente hace necesaria la introducci´n de restricciones en la funci´n a minimizar.5: Trayectoria de referencia Restricciones: En la pr´ctica. a r(t+k) w1(t+k) y(t) w2 (t+k) t Figura 8. tales como niveles en dep´sitos. Razones constructivas. la trayectoria de referencia ser´ w2 dando lugar a a una respuesta m´s suave. limitadas por las posia ciones de totalmente abierta o cerrada y por la velocidad de respuesta. caudales en tuber´ o temperaturas y presiones m´ximas. . o o Muchos algoritmos predictivos tienen en cuenta el tema de las restricciones por lo cual han tenido gran ´xito en la industria. Adem´s. En la figura 8. . todos los procesos est´n sujetos a restricciones. o ıas a a normalmente las condiciones de operaci´n vienen definidas por la intersecci´n o o de ciertas restricciones por motivos fundamentalmente econ´micos. Los a a actuadores tienen un campo limitado de acci´n as´ como una determinada velocio ı dad de cambio (slew rate). con lo que el o sistema de control operar´ cerca de los l´ a ımites.5 se muestra la forma de la a trayectoria cuando la referencia r(t + k) es constante y para dos valores distintos de α.4) α es un par´metro comprendido entre 0 y 1 (mientras m´s pr´ximo a 1 m´s a a o a suave ser´ la aproximaci´n) que constituye un valor ajustable que influir´ en a o a la respuesta din´mica del sistema.128 ´ ELEMENTOS BASICOS y(t) a la referencia conocida mediante un sistema de primer orden: w(t) = y(t) w(t + k) = αw(t + k − 1) + (1 − α)r(t + k) k = 1 . Normalmente se considerar´n l´ e a ımites en la amplitud y el slew rate de la se˜al de control y l´ n ımites en las salidas: umin ≤ u(t) ≤ umax ∀t . N (8.

8.3.4. Para ello se calculan los valores de las salidas predichas y (t + k | t) o ˆ en funci´n de valores pasados de entradas y salidas y de se˜ales de control futuras. que consiste en considerar que tras un cierto intervalo N u < N2 no hay variaci´n en las se˜ales de control propuestas. la se˜al de control se recalcula en el siguiente e n muestreo. debido fundamentalmente a que el hecho de permitir la libre evoluci´n de o las variables manipuladas (sin estructurar) puede conducir a se˜ales de control de alta n frecuencia no deseables y que en el peor de los casos podr´ conducir a la inestabilidad. en otro caso se debe usar un m´todo iterativo de optimizaci´n. El caso l´ ımite ser´ considerar N u igual a 1 con lo que todas las acciones ıa futuras ser´ iguales a u(t)2 . 2 .3). Para el o o criterio cuadr´tico si el modelo es lineal y no existen restricciones se puede obtener una a soluci´n anal´ o ıtica. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 129 dumin ≤ u(t) − u(t − 1) ≤ dumax ymin ≤ y(t) ≤ ymax ∀t ∀t con la adici´n de estas restricciones a la funci´n objetivo. valor que puede ser elevado (del orden a de 10 a 30). Adem´s se ha encontrado que esta estructuraci´n de a o la ley de control produce una mejora en la robustez y en el comportamiento general del sistema. Obtenci´n de la ley de control o Para obtener los valores u(t + k | t) ser´ necesario minimizar la funcional J de la a ecuaci´n (8. o n haciendo uso del modelo que se haya elegido y se sustituyen en la funci´n de coste. es decir: o n u(t + j − 1) = 0 j > Nu lo cual es equivalente a dar pesos infinitos a las cambios en el control a partir de cierto instante. la minimizaci´n resulta o o o m´s compleja. o obteniendo una expresi´n cuya minimizaci´n conduce a los valores buscados. ıan Recu´rdese que debido al horizonte deslizante. ıan Esta estructura de la ley de control se plasma en el uso del concepto de horizonte de control (N u). e o De cualquiera de las maneras la obtenci´n de la soluci´n no resulta trivial pues o o existir´n N2 − N1 + 1 variables independientes. no pudiendo obtenerse la soluci´n anal´ a o ıticamente como en el caso sin restringir. Con la idea de reducir estos grados de libertad se puede proponer cierta estructura a la ley de control.CAP´ ITULO 8.

e a el segundo los valores pasados de las acciones de control (conocidas) y el ultimo rep´ resenta las perturbaciones. Dynamic Matrix Control Este m´todo usa la respuesta ante escal´n (8. En el tema siguiente se estudiar´n en detalle los dos m´todos considerados m´s representativos: dmc y gpc. igual al valor medido de la salida (ym ) menos el estimado por el modelo y (t | t)). asumiendo por tanto que el proceso es estable. Nc En este caso la optimizaci´n debe ser num´rica y se lleva a cabo en cada periodo de o e muestreo. Los principales inconvenientes de este m´todo son el e e tama˜o del modelo empleado y la imposibilidad de tratar procesos inestables. n . La funci´n de coste puede considerar s´lo errores futuros o o o incluir tambi´n el esfuerzo de control.2) para modelar el proceso. En o e cuanto a las perturbaciones. que se traduce en inecuaciones de la forma o gen´rica: e N j j Cyi y (t + k | t) + Cui u(t + k − i) + cj ≤ 0 ˆ i=1 j = 1 . Revisi´n de los principales algoritmos o Se presentan a continuaci´n los principales algoritmos de control predictivo. ˆ n(t + k | t) = n(t | t) = ym (t) − y (t | t) ˆ ˆ ˆ y por tanto el valor predicho de la salida ser´: a k N y (t + k | t) = ˆ i=1 gi u(t + k − i) + i=k+1 gi u(t + k − i) + n(t + k | t) ˆ donde el primer t´rmino contiene las acciones de control futuras (que ser´n calculadas). en cuyo caso toma la forma gen´rica (8. .1.0. a n como en todos los m´todos mpc. .5. considerane o do s´lo los N primeros t´rminos.3).5. a e a 8. es decir. envi´ndose la se˜al u(t) y recalculando todo en el nuevo periodo de muestreo. mostrano do sus principales caracter´ ısticas pero sin entrar en detalles. e e Una de las caracter´ ısticas de este m´todo que lo ha hecho muy popular en la ine dustria es la inclusi´n de restricciones.130 ´ REVISION DE LOS PRINCIPALES ALGORITMOS 8. se considera que su valor permanence constante e igual al existente en el instante actual durante todo el horizonte.

a o o j = 1.6) se emplea para simplificar los c´lculos considerando s´lo un subconjunto de puntos en el horizonte de predicci´n hj . La salida deseada y la predicha deben coincidir en dichos puntos. Predictive Functional Control Este controlador fue desarrollado por Richalet para procesos r´pidos. . el ancho de banda y la robustez del bucle cerrado. ya que la mayor´ de referencias se pueden esa ıa pecificar como combinaci´n de estas funciones. Model Algorithmic Control Este m´todo se conoce tambi´n como Model Predictive Heuristic Control y el proe e ducto comercial se llama idcom (Identification-Command). El m´todo tambi´n e e considera restricciones en los actuadores. Las perturbaciones se pueden tratar como en el m´todo anterior o se o e pueden estimar seg´n la siguiente expresi´n: u o n(t + k | t) = αˆ (t + k − 1 | t) + (1 − α)(ym (t) − y (t | t)) ˆ n ˆ con n(t | t) = 0. por lo que permite el manejo de procesos inestables. El concepto de puntos de coincidencia (ver figura 8. o La otra idea innovadora de este m´todo es la parametrizaci´n de la se˜al de cone o n trol como una combinaci´n lineal de ciertas funciones base. y tambi´n la extensi´n al caso no lineal. 8. rampas o 2 (B2 (k) = k) o par´bolas (B3 (k) = k ).3. un perfil de entrada o .5. Este esquema de control tiene dos carace o ter´ ısticas que lo distinguen del resto de controladores de la familia: el uso de puntos de coincidencia y de funciones base. en las variables internas o en salidas secundarias. no en todo el horizonte de predicci´n.0. Es muy similar al dmc con la diferencia principal de usar un modelo de respuesta impulsional (8. Introduce el concepto de trayectoria de referencia como un sistema de primer orden que evoluciona desde la salida actual al setpoint seg´n una determinada constante de tiempo. nH . Con esta estrategia.CAP´ ITULO 8.0. . CONTROL PREDICTIVO BASADO EN MODELO (MPC) 131 8.2. .5. que son elegidas seg´n la o u naturaleza del proceso y la referencia: nB u(t + k) = i=1 µi (t)Bi (k) Normalmente estas funciones son de tipo polin´mico: escalones (B1 (k) = 1). La varu ianza del error entre esta trayectoria y la salida es lo que marca la minimizaci´n de la o funci´n objetivo.1). α es un par´metro ajustable (0 ≤ α < 1) relacionado con el tiempo ˆ a de respuesta. Emplea un a modelo en el espacio de estados. .

Para obtener la se˜al de control de minimiza una n funci´n de coste de la forma: o N γ(k)[w(t + k) − P (z −1 )ˆ(t + k | t)]2 y k=d .132 ´ REVISION DE LOS PRINCIPALES ALGORITMOS Puntos de coincidencia Figura 8. o a 8. que son pr´cticas en aplicaciones de servocontrol.0. horizonte de control a igual a 1): u(t + k) = 0 para k > 0.4. o o La funci´n a minimizar es: o nH J= j=1 [ˆ(t + hj ) − w(t + hj )]2 y El algoritmo pfc tambi´n puede manejar restricciones de m´ximo y m´ e a ınimo en la aceleraci´n. Este modelo puede ampliarse para tratar o perturbaciones medibles a˜adiendo un t´rmino D(z −1 )d(t) para incluir efecto feedforn e ward. ya que se considera que la se˜al n de control permanecer´ constante a partir del instante t (es decir.5. Extended Prediction Self Adaptive Control El algoritmo epsac usa un modelo de funci´n de transferencia o A(z −1 )y(t) = B(z −1 )u(t − d) + v(t) donde d es el retardo y v(t) la perturbaci´n.6: Puntos de coincidencia complejo se puede especificar usando un peque˜o n´mero de par´metros desconocidos n u a µi que son las inc´gnitas del problema de minimizaci´n. La estructura de la ley de control es muy simple.

El unico coeficiente de ´ ajuste es el horizonte de predicci´n N . La se˜al de control se puede calcular anal´ o n ıticamente de la forma: N hk γ(k)[w(t + k) − P (z −1 )ˆ(t + k | t)] y u(t) = k=d N k=d γ(k)h2 k siendo hk los coeficientes de la respuesta impulsional del sistema. lo cual simplifica el uso pero proporciona poca o libertad para el dise˜o. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 133 donde P (z −1 ) es un polinomio de dise˜o con ganancia unitaria y γ(k) es una secuencia n de ponderaci´n.5. 8. La soluci´n a este problema no es unica (a menos ˆ o ´ que N = d). Por o o tanto la ley de control depende s´lo de los par´metros del proceso y puede hacerse o a f´cilmente adaptativa si se emplea un identificador en l´ a ınea. ni tampoco la ponderaci´n del esfuerzo o o de control. Obs´rvese que no puede usarse trayectoria de referencia porque n e el error se considera s´lo en un instante (t+N ). una posible estrategia es considerar horizonte de control igual a 1: u(t + k − 1) = 0 o minimizar el esfuerzo de control N −d 1<k ≤N −d J= k=0 u2 (t + k) Este m´todo utiliza un predictor de N pasos de la forma e y (t + N | t) = y(t) + F (z −1 ) ˆ y(t) + E(z −1 )B(z −1 ) u(t + N − d) donde E(z −1 ) y F (z −1 ) son polinomios que satisfacen la relaci´n o (1 − z −1 ) = A(z −1 )E(z −1 )(1 − z −1 ) + z −N F (z −1 )(1 − z −1 ) con el grado de E igual a N − 1. . con N ≥ d.5.CAP´ ITULO 8. dada por u(t) = u(t − 1) + α0 (w(t + N ) − y (t + N | t)) ˆ N −d k=0 2 αi siendo αk el coeficiente correspondiente a u(t + k) en la ecuaci´n de predicci´n. Extended Horizon Adaptive Control Esta formulaci´n tambi´n emplea un modelo de funci´n de transferencia y pretende o e o minimizar la discrepancia entre la salida calculada y la referencia en el instante t + N : y (t + N | t) − w(t + N ).0. Una ventaja de este m´todo es que se puede encontrar e f´cilmente una soluci´n expl´ a o ıcita.

e .5. gpc usa una funci´n de coste cuadr´tica de la forma o a N2 Nu J(N1 . al igual que otros que usan el modelo de funci´n de transferencia.6. a ıcil se puede emplear como par´metro de dise˜o para rechazo de perturbaciones o mejora de a n la robustez. para distintos conjuntos de par´metros. Generalized Predictive Control Este m´todo propuesto por Clarke et al. o se puede implementar f´cilmente en forma adaptativa usando un algoritmo de identia ficaci´n en l´ o ınea como los m´ ınimos cuadrados recursivos. Las bases te´ricas del algoritmo gpc has sido ampliamente estudiadas y se puede o demostrar que. o ´ o a lo cual puede hacerse eficazmente de forma recursiva. La predicci´n optima se lleva a cabo resolviendo una ecuaci´n diof´ntica. el algoritmo es estable y que a otros controladores como por ejemplo el dead beat son casos incluidos en ´ste. N2 . Como en la pr´ctica es dif´ encontrar el verdadero valor de este polinomio. Nu ) = j=N1 δ(j)[ˆ(t + j | t) − w(t + j)] + y j=1 2 λ(j)[ u(t + j − 1)]2 donde las secuencia de ponderaci´n δ(j) y λ(j) se eligen normalmente constantes o o exponenciales y la trayectoria de referencia w(t+j) se puede generar como una secuencia que empieza en el valor actual de la salida y tiende exponencialmente al setpoint.134 ´ REVISION DE LOS PRINCIPALES ALGORITMOS 8. emplea un modelo carima (Controlled e Auto-Regressive Integrated Moving Average) para la predicci´n de la salida: o e(t) A(z −1 )y(t) = B(z −1 )z −d u(t − 1) + C(z −1 ) donde la perturbaci´n viene dada por un ruido blanco coloreado por el polinomio o −1 C(z ).0. Este algoritmo.

Predicci´n o El modelo de proceso que se emplea es el de respuesta temporal. considerando la perturbaci´n como constante a lo largo del horizonte.1. secuencias de ponderaci´n) sobre la estabilidad del bucle cerrado n o as´ como de resultados de robustez.Cap´ ıtulo 9 Controladores predictivos 9. ı 9. Actualmente dmc es algo m´s que un algoritmo y parte a de su ´xito se debe al hecho de que el producto comercial resuelve otros temas como e identificaci´n u optimizaci´n global de la planta. En esta secci´n s´lo se analiza el o o o o algoritmo standard sin abordar detalles t´cnicos propios del producto de mercado que e no son de dominio p´blico. principalmente por las industrias petroqu´ ımicas.1. este m´todo adolece quiz´s de la ausencia e a e a de un an´lisis te´rico ma´ completo que estudie la influencia de los par´metros de a o s a dise˜o (horizontes. Dynamic Matrix Control El m´todo Dmc se desarroll´ a finales de los setenta por Cutler y Ramaker de Shell e o Oil Co. u Pero a pesar de este ´xito en la pr´ctica. y ha sido aceptado ampliamente en el mundo industrial. El procedimiento para obtener o la predicci´n se describe a continuaci´n.1. o o 135 .

1) Si el proceso es asint´ticamente estable.136 DYNAMIC MATRIX CONTROL Como se emplea un modelo de respuesta ante escal´n: o ∞ y(t) = i=1 gi u(t − i) los valores predichos a lo largo del horizonte ser´n: a ∞ y (t + k | t) = ˆ i=1 k gi u(t + k − i) + n(t + k | t) = ˆ ∞ = i=1 gi u(t + k − i) + i=k+1 gi u(t + k − i) + n(t + k | t) ˆ Las perturbaciones se consideran constantes. n(t+k | t) = n(t | t) = ym (t)− y (t | t). i>N y por tanto la respuesta libre se puede calcular como N f (t + k) = ym (t) + i=1 (gk+i − gi ) u(t − i) N´tese que si el proceso no es estable. los coeficientes gi de la respuesta ante o escal´n tienden a un valor constante despu´s de N periodos de muestreo. la parte de la respuesta que no depende de las acciones de control futuras. . ˆ ˆ ˆ por lo que se puede escribir: k ∞ y (t + k | t) = ˆ i=1 ∞ gi u(t + k − i) + i=k+1 k gi u(t + k − i) + ym (t) − − i=1 gi u(t − i) = i=1 gi u(t + k − i) + f (t + k) donde f (t + k) es la respuesta libre del proceso. y viene dada por: ∞ f (t + k) = ym (t) + i=1 (gk+i − gi ) u(t − i) (9. es decir. entonces no existe N y no se puede calcuo lar f (t + k) (aunque existe una generalizaci´n en el caso de que la inestabilidad sea o producida por integradores puros). por lo que se o e puede considerar que gk+i − gi ≈ 0.

2) se puede usar para calcular la predicci´n del efecto de las perturbaciones o o en la salida de la siguiente forma: yd = D d + f d ˆ . .. . . Perturbaciones medibles El efecto de las perturbaciones medibles se puede a˜adir f´cilmente a las anteriores n a ecuaciones de predicci´n. CONTROLADORES PREDICTIVOS 137 Ahora las predicciones se pueden calcular a lo largo del horizonte de predicci´n o (k = 1. . . 9. .  . y es un vector de dimensi´n p o ˆ o que contiene las predicciones de la salida. Esta es la expresi´n que relaciona las o respuestas futuras con los incrementos en las se˜ales de control.1. . considerando m acciones de control. .  . . . . ya que ´stas se pueden tratar como entradas al sistema. por lo que usar´ para n a calcular las acciones necesarias para conseguir el comportamiento deseado del sistema. p). g1 ..2) Obs´rvese que G est´ formada por m (horizonte de control) columnas de la respuesta e a ante escal´n apropiadamente desplazadas hacia abajo. ··· .CAP´ ITULO 9. . u representa el vector de incrementos de control y f es el vector de respuestas libres. . . G =   gm gm−1  . La o e expresi´n (9. . 0 0 .2. . . gp gp−1 se puede escribir que: ··· ··· .           · · · gp−m+1 y = Gu + f ˆ (9.. y (t + 1 | t) = g1 ˆ y (t + 2 | t) = g2 ˆ .  .. y (t + p | t) = ˆ i=p−m+1 u(t) + f (t + 1) u(t) + g1 p u(t + 1) + f (t + 2) gi u(t + p − i) + f (t + p) Si se define la matriz din´mica G como: a  g1 0  g g1  2  .

o En el caso m´s general de perturbaciones medibles y no medibles. El objetivo del controlador dmc es llevar el proceso los m´s cerca posible al setpoint a en el sentido de m´ ınimos cuadrados con la posibilidad de incluir una penalizaci´n en los o movimientos de la se˜al de control. o o donde e es el vector de errores futuros a lo largo del horizonte de predicci´n y u es el o .1. la respuesta libre a completa del sistema (la fracci´n de la salida que no depende de la variable manipulada) o se puede considerar como la suma de cuatro efectos: la respuesta a la entrada u(t). D es una matriz ˆ o similar a G que contiene los coeficientes de la respuesta del sistema a un escal´n en la o perturbaci´n. d es el vector de incrementos en la perturbaci´n y fd es la parte de la o o respuesta que no depende de la perturbaci´n. Por ello se seleccionan las variables manipuladas de n forma que minimicen un objetivo cuadr´tico que puede incluir s´lo los errores futuros a o p J= j=1 [ˆ(t + j | t) − w(t + j)]2 y o tambi´n el esfuerzo de control. En o o esta secci´n se describe el algoritmo de control comenzando por el caso m´s simple o a de un sistema monovariable sin restricciones y extendi´ndolo posteriormente al caso e general multivariable con restricciones.3. presentando la forma gen´rica e e p m J= j=1 [ˆ(t + j | t) − w(t + j)] + y j=1 2 λ[ u(t + j − 1)]2 Si no existen restricciones. Algoritmo de control El ´xito en la industria del dmc se ha debido principalmente a su aplicaci´n a e o sistemas multivariables de gran dimensi´n con la consideraci´n de restricciones. a la perturbaci´n medible d(t). la minimizaci´n de la funci´n de coste J = eeT + λuuT .138 DYNAMIC MATRIX CONTROL donde yd es la contribuci´n de las perturbaciones medibles a la salida. a la perturbaci´n no medible y al estado actual del proceso: o o f = fu + D d + f d + fn Por tanto la predicci´n se puede expresar en la forma general o y = Gu + f ˆ 9.

.3) Recu´rdese que. o Resulta interesante analizar en qu´ consiste realmente la ley de control.1. No es aconsejable implementar la secuencia completa sobre los siguientes m intervalos. n Se puede decir por tanto que el incremento de la se˜al de control es proporcional (por n medio de K) a los errores futuros y por tanto habr´ cambios en la se˜al de control a n siempre que el controlador detecte que va a haber una discrepancia en el futuro entre el objetivo deseado y el comportamiento esperado del sistema. CONTROLADORES PREDICTIVOS 139 w + K - u Proceso y f Calculo Resp. . . Esta idea queda reflejada en la figura 9.CAP´ ITULO 9. lo que e proporciona el resultado general: u = (GT G + λI)−1 GT (w − f ) (9. que es la se˜al o n que efectivamente se env´ a la planta. no es posible anticiparse a las perturbaciones inevitables que provocan que la salida real difiera de las predicciones que se emplean para calcular la secuencia futura de acciones de control. el setpoint puede cambiar durante los a pr´ximos m intervalos. s´lo se env´ al proceso e o ıa el primer elemento del vector u ( u(t)). se puede n hacer de forma anal´ ıtica calculando la derivada de J y haci´ndola igual a 0. es el producto de la primera fila de la matriz ıa T −1 T (G G+λI) G (llam´mosle K) por la diferencia entre la trayectoria de referencia y la e respuesta libre. como en todas las estrategias predictivas. Analizane do la expresi´n 9. que es el error futuro si no hubiera incrementos en la se˜al de control. . .3 se observa que el primer elemento del vector u. libre Figura 9. u(t + m).1: Ley de control vector de futuros incrementos en la se˜al de control u(t). ya que al ser imposible estimar de forma exacta las perturbaciones. Adem´s.

operacion optimo Zona segura 1 Punto operacion 1 Restriccion zona segura 2 Restriccion Punto operacion 2 Figura 9. . . es necesario mantener una zona segura alrededor del punto de operaci´n.2. como se ver´ con m´s a a detalle en el tema dedicado a restricciones. cuya soluci´n es num´rica. o a o e Todo lo relacionado con las restricciones ser´ abordado con mayor grado de detalle a en el tema dedicado a ello.1. El caso con restricciones Aunque computacionalmente m´s complicado que otros algoritmos m´s simples. ya que el efecto de las o perturbaciones puede hacer que la salida del proceso viole las restricciones.2: Punto de operaci´n optimo de un proceso t´ o ´ ıpico 9. las salidas se o pueden expresar en funci´n del vector de incrementos de control a trav´s de la matriz o e din´mica. Nc que deben tenerse en cuenta para la minimizaci´n.3. o Las restricciones tanto en entrada como en salida se pueden reducir a desigualdades de forma gen´rica e N j j Cyi y (t + k | t) + Cui u(t + k − i) + cj ≤ 0 ˆ i=1 j = 1 . Esta zona se puede reducir (y por tanto aumentar los beneficios econ´micos) si el controlador es o capaz de manejar restricciones (punto de operaci´n 1). por que las restricciones tanto en la entrada como en la salida se pueden a recoger en una desigualdad matricial de la forma Ru ≤ c. Por razones de seguridad. . ya que en general el punto de operaci´n a o optimo seg´n criterios econ´micos se encuentra normalmente en la intersecci´n de las ´ u o o restricciones.140 DYNAMIC MATRIX CONTROL P.1. como se muestra en la figura 9. Como se ha visto. Ahora la minimizaci´n es un problema de o Programaci´n Cuadr´tica qp. la a a capacidad de manejar restricciones que posee este m´todo (y mpc en general) lo hace e muy atractivo para aplicaciones pr´cticas.

. y1 (t + p1 | t). .1. f1 (t + p1 | t). . n Con estas definiciones. Gny1 Gny2 · · · Gnynu Cada submatriz Gij contiene los coeficientes de la respuesta ante escal´n i-´sima o e correspondiente a la entrada j-´sima. . . . . . . . . . yny (t + pny | t)]T ˆ y el de se˜ales de control de la forma: n u = [ u1 (t). . CONTROLADORES PREDICTIVOS 141 9. . . El proceso de minimizaci´n es an´logo s´lo que la e o a o ponderaci´n tanto de los errores como de los esfuerzos de control se realiza con matrices o de peso.  . . . unu (t). . .2. . . unu (t + mnu − 1)]T as´ como la respuesta libre: ı f = [f1 (t + 1 | t). yny (t + 1 | t). Al tratarse de modelos lineales. . . en 1987 y se ha convertido en uno de los m´todos m´s populares en el ambito del Control e a ´ . . . . . se puede aplicar el principio de superposici´n para o obtener el valor de las salidas ante las diversas entradas. .CAP´ ITULO 9. Control Predictivo Generalizado El Control Predictivo Generalizado gpc fue propuesto por Clarke et al. . . .  . . fny (t + pny | t)]T teniendo en cuenta que la respuesta libre de la salida i depende tanto de valores pasados de yi como de valores pasados de todas las se˜ales de control. . . . u1 (t + m1 − 1). Para ello se define el vector de salidas futuras como: y = [y1 (t + 1 | t).  .. 9. la ecuaci´n de predicci´n es igual que en el caso monovariable o o simplemente considerando que la matriz G toma la forma:   G11 G12 · · · G1nu  G21 G22 · · · G2nu    G =  . .. .3. . . Extensi´n al caso multivariable o El esquema previo se puede extender f´cilmente al caso de sistemas con varias a entradas y varias salidas. fny (t + 1 | t). .2. . Las ecuaciones b´sicas se mantienen igual a excepci´n de que a o las matrices y vectores cambian de dimensi´n para poder incluir todas las entradas y o salidas. .

1.142 CONTROL PREDICTIVO GENERALIZADO Predictivo tanto en el mundo industrial como en el acad´mico. pueden ser descritos de la siguiente forma: A(z −1 )y(t) = z −d B(z −1 )u(t − 1) + C(z −1 )e(t) donde u(t) y y(t) son respectivamente la se˜al de control y la salida del proceso y e(t) n es un ruido blanco de media cero.. Se ha empleado con e ´xito en numerosas aplicaciones industriales.. B y C son los siguientes polinomios en el operador de desplazamiento hacia atr´s z −1 : a A(z −1 ) = 1 + a1 z −1 + a2 z −2 + .. algunas de las cuales pueden ser consideradas como subconjuntos o casos l´ ımites del gpc... es capaz de a a proporcionar una soluci´n expl´ o ıcita (en ausencia de restricciones). Puede resolver muchos problemas de control diferentes para un amplio campo de procesos con un n´mero razonable de variables de dise˜o. Las diversas posibilidades disponibles para el gpc conducen a una gran variedad de objetivos de control comparado con otras realizaciones. 9.2. + cnc z −nc donde d es el tiempo muerto del sistema. + ana z −na B(z −1 ) = b0 + b1 z −1 + b2 z −2 + .. A. El ´ o ındice a minimizar es una funci´n cuadr´tica que mide por un lado la distancia entre la salida predicha del o a sistema y una cierta trayectoria de referencia hasta el horizonte de predicci´n. El Control Predictivo Generalizado tiene muchas ideas en com´n con otros conu troladores predictivos previamente mencionados ya que est´ basado en las mismas a ideas pero posee a su vez algunas diferencias. Formulaci´n del Control Predictivo Generalizado o La mayor´ de los procesos de una sola entrada y una sola salida (single-input singleıa output. al ser considerados en torno a un determinado punto de trabajo y tras ser linealizados. + bnb z −nb C(z −1 ) = 1 + c1 z −1 + a2 z −2 + . La idea b´sica del gpc es calcular una secuencia de futuras acciones de control a de tal forma que minimice una funci´n de coste multipaso. mostrando buenas prestaciones a la vez e que un cierto grado de robustez respecto a sobreparametrizaci´n o retardos mal conoo cidos. siso). y por o otro el esfuerzo de control necesario para obtener dicha salida. Como se ver´ m´s adelante. puede trabajar con procesos inestables o de fase no m´ ınima e incorpora el concepto de horizonte de control as´ como la consideraci´n en la funci´n de coste de ponderaci´n de los incrementos en ı o o o las acciones de control. . que son especificadas por el u n operario dependiendo del conocimiento previo del proceso y de los objetivos de control.

N2 . a partir de ahora el polinomio C se va a tomar igual a 1. N1 y N2 son los horizontes m´ ınimo y m´ximo a de coste. dando lugar al carima. CONTROLADORES PREDICTIVOS 143 Este modelo es conocido como Autorregresivo de Media M´vil (Controller Autoo Regressive Moving-Average carma). 9.5.2. Consid´rese la siguiente ecuaci´n o ´ e o diof´ntica: a 1 = Ej (z −1 ) A + z −j Fj (z −1 ) ˜ 1 = Ej (z −1 )A + z −j Fj (z −1 ) (9. Predicci´n optima o ´ Con la intenci´n de minimizar la funci´n de coste. o .1. Se pueden obtener dividiendo 1 entre A(z −1 ) hasta que el resto pueda ser fac−j −1 torizado como z Fj (z ). El algoritmo del Control Predictivo Generalizado consiste en aplicar una secuencia de se˜ales de control que minimice una funci´n de coste de la forma: n o N2 Nu J(N1 . que se puede calcular seg´n u se muestra en la figura 8. N u)..1. N´tese o −1 que en el caso de que C pueda ser truncado se puede absorber en A y B. El objetivo es pues el c´lculo de la futura secuencia de control u(t). En muchas aplicaciones industriales en las que las perturbaciones son no-estacionarias resulta m´s conveniente el uso de un modelo a carma integrado. En muchas situaciones se considera δ(j) igual a 1 y λ(j) constante. N u) = j=N1 δ(j)[ˆ(t + j | t) − w(t + j)] + y j=1 2 λ(j)[ u(t + j − 1)]2 (9. N2 .CAP´ ITULO 9. se obtendr´ previamente la o o a predicci´n optima de y(t + j) para j ≥ N1 y j ≤ N2 .5) donde y (t + j | t) es la predicci´n optima j pasos hacia delante de la salida del proceso ˆ o ´ con datos conocidos hasta el instante t. N u es el horizonte de control y δ(j) y λ(j) son las secuencias de ponderaci´n o mientras que w(t + j) es la futura trayectoria de referencia.6) Los polinomios Ej y Fj est´n unicamente definidos con grados j − 1 y na respectia ´ ˜ vamente.. u(t + 1). que viene descrito por: A(z −1 )y(t) = B(z −1 )z −d u(t − 1) + C(z −1 ) e(t) con = 1 − z −1 (9.4) Por simplicidad. o Esto se logra minimizando J(N1 .. El cociente de la divisi´n es entonces el polinomio Ej (z −1 ). de a tal manera que la salida futura del proceso y(t + j) permanezca pr´xima a w(t + j).

es decir. A continuaci´n se muestra una demostraci´n simple de la recursividad o o de la ecuaci´n diof´ntica.1 z −1 + · · · + fj.8) Al ser el grado del polinomio Ej (z −1 ) igual a j − 1 los t´rminos del ruido en la e ecuaci´n (9.4) por Ej (z −1 ) z j o ˜ A(z −1 )Ej (z −1 )y(t + j) = Ej (z −1 )B(z −1 ) u(t + j − d − 1) + Ej (z −1 )e(t + j) (9.1 z −1 + · · · + ej.j−1 z −(j−1) Sup´ngase que se utiliza el mismo procedimiento para obtener Ej+1 y Fj+1 . o ˜ dividir 1 entre A(z −1 ) hasta que el resto se pueda factorizar como z −(j+1) Fj+1 (z −1 ) con Fj+1 (z −1 ) = fj+1.144 CONTROL PREDICTIVO GENERALIZADO Si se multiplica la ecuaci´n (9. o ˜ Consid´rense que los polinomios Ej y Fj se han obtenido dividiendo 1 entre A(z −1 ) e hasta que el resto haya sido factorizado como z −j Fj (z −1 ) .na z −na Est´ claro que solamente es necesario dar un paso m´s en la divisi´n para obtener a a o los polinomios Ej+1 y Fj+1 .6).0 + fj.na z −na Ej (z −1 ) = ej. la ecuaci´n (9.1 z −1 + · · · + fj+1.7) queda: o (1 − z −j Fj (z −1 ))y(t + j) = Ej (z −1 )B(z −1 ) u(t + j − d − 1) + Ej (z −1 )e(t + j) La cual se puede escribir como y(t + j) = Fj (z −1 )y(t) + Ej (z −1 )B(z −1 ) u(t + j − d − 1) + Ej (z −1 )e(t + j) (9. Al ser Ej+1 el nuevo cociente de la divisi´n.0 + ej. de forma que los nuevos valores en el paso j + 1 (Ej+1 y Fj+1 ) sean funci´n de o los del paso j. ser´ igual al o a .8) est´n todos en el futuro. Existen otras formulaciones del gpc que no est´n basadas o a a en la recursividad de esta ecuaci´n. Con: Fj (z −1 ) = fj.0 + fj+1. La mejor predicci´n de y(t + j) ser´ por cono a o a siguiente: y (t + j | t) = Gj (z −1 ) u(t + j − d − 1) + Fj (z −1 )y(t) ˆ donde Gj (z −1 ) = Ej (z −1 )B(z −1 ) Resulta simple demostrar que los polinomios Ej y Fj se pueden obtener recursivamente.7) Teniendo en cuenta (9.

F1 = z(1 − A) 2. . e o a n haciendo N1 > d + 1 los primeros puntos de la secuencia de salida.j+i = gj. la salida s´lo se ver´ influenciada por la se˜al u(t) despu´s del o a n e instante d + 1. (siendo fj. que ser´n los mejor a estimados.0 z −j B Es decir. No tiene sentido hacer N1 < d + 1 ya que los t´rminos de (9. y (t + d + N | t) = Gd+N ˆ u(t) + Fd+1 y(t) u(t + 1) + Fd+2 y(t) u(t + N − 1) + Fd+N y(t) . Al tener el proceso un retardo de o d per´ ıodos de muestreo. .0 ai+1 i = 0 · · · na ˜ En resumen. Por tanto: el divisor (A) o Ej+1 (z −1 ) = Ej (z −1 ) + ej+1..j+i + fj. Ir a˜adiendo nuevos t´rminos a Ej con ej+1. los primeros j coeficientes de Gj+1 ser´n id´nticos a los de Gj mientras a e que el resto viene dado por: gj+1. los coeficientes del polinomio Fj+1 se pueden expresar como: fj+1.i+1 − fj.i+1 − fj.0 pues ıa a e a ˜ es m´nico. CONTROLADORES PREDICTIVOS 145 cociente que hab´ hasta el momento (Ej ) m´s un nuevo t´rmino.0 bi para i = 0 · · · nb Para resolver el gpc es necesario obtener el conjunto de se˜ales de control u(t). Calcular fj+1..j = fj.i = fj. a El conjunto de las j predicciones optimas: ´ y (t + d + 1 | t) = Gd+1 ˆ y (t + d + 2 | t) = Gd+2 ˆ . no se tendr´n en cuenta.j = fj.0 z −j )B = Gj + fj. la forma de obtener los polinmios Ej y Fj es la siguiente: ˜ 1. ˜ El polinomio Gj+1 puede ser obtenido recursivamente como sigue: Gj+1 = Ej+1 B = (Ej + fj. n u(t + 1).na+1 = 0). Por otro lado.5). . Los valores N1 .0 n e 3.CAP´ ITULO 9.j z −j con ej+1.5) s´lo depender´n de las se˜ales de control pasadas.0 ai+1 i = 0 · · · na. N2 = d + N y N u = N .i = fj..0 Teniendo en cuenta que el nuevo resto ser´ el resto anterior menos el producto del a cociente por el divisor.u(t + N ) que minimizan la ecuaci´n (9. que ser´ el fj. N2 y N u que marcan los horizontes pueden ser definidos como N1 = d + 1. Comenzar con E1 = 1.

Obtenci´n de la ley de control o Entonces la ecuaci´n (9... 0 g0 . . u(t + N − 1)      gN −1 gN −2 .2. . aunque en este e o caso la respuesta libre es distinta. . .11) (9. pueden ´ e o o agruparse en f. . . y (t + d + N | t) ˆ g0 g1 .12) . . . . Fd+N (z −1 )       Al depender los ultimos t´rminos de la ecuaci´n (9.. dando lugar a: y = Gu + f (9.1. 9.        u=   u(t) u(t + 1) . .9)  y (t + d + 1 | t) ˆ y (t + d + 2 | t) ˆ ..  .146 CONTROL PREDICTIVO GENERALIZADO puede ser escrito en forma matricial como: y = Gu + F(z −1 )y(t) + G (z −1 ) Donde   y =     G =     G (z −1 ) =     F(z ) =   −1 u(t − 1) (9. . . . .9) s´lo del pasado.10) Obs´rvese que es la misma expresi´n que se obtuvo para el dmc.2. ..       0 0 . g0  z(Gd+1 (z −1 ) − g0 ) 2 z (Gd+2 (z −1 ) − g0 − g1 z −1 ) . .. .5) puede escribirse como: o J = (Gu + f − w)T (Gu + f − w) + λuT u donde: w= w(t + d + 1) w(t + d + 2) · · · w(t + d + N ) T (9. . z N (Gd+N (z −1 ) − g0 − g1 z −1 − · · · − gN −1 z −(N −1) )  Fd+1 (z −1 ) Fd+2 (z −1 )    .

13) Debido al uso de la estrategia deslizante. asumiendo que las se˜ales de control permanecer´n en un valor a n a constante a partir del intervalo N u < N . s´lo se aplica realmente el primer elemento del o vector u. Por tanto la dimensi´n de la matriz que hay o que invertir queda reducida a N u × N u. lo cual conduce a: u = −H−1 bT (9. Se dise˜ar´ el controlador para un sistema de primer n a orden. lo cual conlleva una gran carga de c´lculo.8. Al discretizar el proceso continuo se obtiene el siguiente equivalente discreto: (1 + az −1 )y(t) = (b0 + b1 z −1 )u(t − 1) + e(t) Se va a considerar un retardo d igual a 0 y un polinomio de ruido C(z −1 ) igual a 1. CONTROLADORES PREDICTIVOS 147 La ecuaci´n (9. Se usar´ el algoritmo descrito previamente para obtener la ley de control.6. 9. se reduce al caso escalar) aunque restringiendo la optimalidad.CAP´ ITULO 9.4 y b1 = 0. La soluci´n propuesta involucra la inversi´n (o al menos la triangularizaci´n) de una o o o matriz de dimensi´n N × N . Ejemplo de c´lculo a Se presenta a continuaci´n un ejemplo de c´lculo de un Controlador Predictivo o a Generalizado en un caso sencillo. El concepto ya o a usado en otros m´todos de horizonte de control se emplea con la finalidad de reducir e la cantidad de c´lculo. siendo e a . obteniendo a resultados num´ricos para valores de los pa´metros a = 0. b0 = 0. siempre que no existan restricciones en la se˜al de control.2. quedando la carga de c´lculo reducida (en el a caso l´ ımite de N u = 1.11) se puede poner como: o 1 J = uT Hu + bu + f0 2 donde: H = 2(GT G + λI) b = 2(f − w)T G f0 = (f − w)T (f − w) El m´ ınimo de J.14) (9.2. puede n ser calculado igualando a cero el gradiente de J. repitiendo de nuevo el mismo procedimiento al siguiente instante de muestreo.

32z −1 +2.8z −1 Cualquiera que sea el m´todo empleado. los elementos Gi (z −1 ) resultan ser: G1 = 0. estos polinomios se ˜ pueden obtener directamente dividiendo 1 por A(z −1 ).44z −1 E3 = 1 + 1.154 −0.952y(t − 1) f El paso siguiente es el c´lculo de H−1 b.4+1.14). es decir: o E1 (z −1 ) = 1 F1 (z −1 ) = 1.056  0.8y(t − 1) u(t − 1) + 2.4 0   1.6z −1 G2 = 0. se calcular´n los valores a predichos de la salida del proceso en el horizonte haciendo uso de la ecuaci´n (9.4  y (t + 2 | t)  =  1.952y(t) − 1.286 0.8z −1 + 0.8z −1 + 2.4+0.32 ˆ y (t + 3 | t) ˆ 2.165 0. Como se ha explicado antes.08z −2 G3 = 0. con ˜ A(z −1 ) = A(z −1 )(1 − z −1 ) = 1 − 1.44 − 1.133 0.8 − 0.6z −1 .4 + 0.8z −2 En este caso sencillo donde el horizonte no es demasiado largo.952z −1 Con estos valores y el polinomio B(z −1 ) = 0.154 0. Tomando λ igual a 0.286  −0.8 se tiene que: a  0. o −1 Fj (z ) desde j = 1 hasta j = 3. Como se ha mostrado.056z −2 +1.08 1.44z −2 F3 = 2. o Resolviendo la ecuaci´n (9.8y(t) − 0.029 −0.44y(t − 1)  u(t − 1) + 2. tambi´n se pueden calcular recursivamente.464  0 0 0.8z −1 F2 = 2.147 (GT G + λI)−1 GT =  −0.952 − 1.6) se obtienen los polinomios del predictor Ej (z −1 ).4+1. o obteniendo la ley de control de la expresi´n (9.464z −3 y por tanto se pueden escribir las salidas predichas como:    y (t + 1 | t) ˆ 0.6 +  1.4  u(t) u(t + 1)  + u(t + 2)  u(t − 1) + 1.44y(t) − 1.32 0.1334  .9).148 CONTROL PREDICTIVO GENERALIZADO los horizontes N1 = 1 y N = Nu = 3. comenzando con los valores obtenidos en e el primer paso de la divisi´n.32z −1 +1. los valores obtenidos son: e E2 = 1 + 1.

dada por: u(t) = 0. Caso multivariable Al igual que en el dmc todo lo visto para el caso de sistemas con una sola entrada y una sola salida se puede extender al caso multivariable. o e Entonces la se˜al de control resulta ser una funci´n de la referencia deseada y de n o entradas y salidas pasadas.371y(t) + 0. con lo que resulta la siguiente expresi´n para la ley de control: o u(t) = −0. s´lo se emplea realmente la o a o primera fila de la matriz.15) donde A(z −1 ) y C(z −1 ) son matrices polinomiales m´nicas de dimensi´n n×n y B(z −1 ) o o es una matriz polinomial de dimensi´n n × m.133w(t + 1) + 0. CONTROLADORES PREDICTIVOS 149 Como s´lo se necesita el valor de u(t) para los c´lculos.805y(t − 1) + + 0.CAP´ ITULO 9.6042u(t − 2) − 1.2.133w(t + 1) + 0.147w(t + 3) donde w(t + i) es la trayectoria de referencia que se puede considerar bien constante e igual a la referencia actual o bien una suave aproximaci´n de primer orden a ´sta.371y(t) + 0.286w(t + 2) + 0. aunque los c´lculos son m´s a a complejos.6042 u(t − 1) − 1.3958u(t − 1) + 0. 9.3. En este caso el modelo carima para un sistema de m entradas y n salidas se puede expresar como: 1 A(z −1 )y(t) = B(z −1 )u(t − 1) + C(z −1 )e(t) (9. definidos como: o A(z −1 ) = In×n + A1 z −1 + A2 z −2 + · · · + Ana z −na B(z −1 ) = B0 + B1 z −1 + B2 z −2 + · · · + Bnb z −nb C(z −1 ) = In×n + C1 z −1 + C2 z −2 + · · · + Cnc z −nc .805y(t − 1) + + 0. calculando o a G en base a los coeficientes de la respuesta ante escal´n (que se pueden calcular en o funci´n de los coeficientes de la funci´n de transferencia) y calculando la respuesta o o libre haciendo evolucionar hacia delante el modelo mientras la entrada se mantiene constante.147w(t + 3) Al mismo resultado se puede llegar sin emplear la ecuaci´n diof´ntica.286w(t + 2) + 0.

que tambi´n o o o e puede calcularse de forma recursiva. N3 ) = j=N1 y (t + j | t) − w(t + j) ˆ 2 R + j=1 u(t + j − 1) 2 Q donde R y Q son matrices de ponderaci´n definidas positivas que normalmente se eligen o diagonales. o La predicci´n conlleva la resoluci´n de una ecuaci´n diofantica matricial. el criterio a minimizar tendr´ la forma general a N2 N3 J(N1 . u(t) y e(t) son de dimensi´n n × 1. . m × 1 y n × 1 respectivamente. o Una vez obtenido el modelo. En muchas ocasiones el problema radica en la obtenci´n adecuada del modelo en o esta forma a partir de una matriz de transferencia en continuo que puede haberse obtenido a partir de la curva de reacci´n.150 CONTROL PREDICTIVO GENERALIZADO Las variablesy(t). . N2 . u2 (t) . La minimizaci´n se realiza igual que en el caso monovariable dando como o resultado un vector de se˜ales de control a enviar a la planta en el instante actual: n u1 (t). um (t). .

Tambi´n existen l´ a e ımites de seguridad (por ejemplo presiones o temperaturas m´ximas). limitaciones de calidad del producto (no salirse de cierta zona) o normativa medioambiental.Cap´ ıtulo 10 Otros aspectos del Control Predictivo 10. m´s lejos del punto de operaci´n optimo. Sin embargo. Los actuadores tienen a a un campo limitado de acci´n impuesto por l´ o ımites f´ ısicos (por ejemplo una v´lvula no a puede abrir m´s de un 100 % o un calentador no puede aportar m´s de su potencia a a m´xima. lo que normalmente equivale a una a o ´ disminuci´n de la calidad y/o cantidad en la producci´n. operando lejos de la restricci´n.1. las restricciones en la variable controlada (salida) no pueden abordarse. requerimientos tecnol´gicos (por ejemplo mantener temperaturas en un rana o go dado). 10. Tratamiento convencional de restricciones El tratamiento convencional de restricciones en control de procesos se basa en que las restricciones en la variable manipulada (entrada) se cumplen saturando la salida del controlador.1. Por seguridad se trabaja con una consigna o inferior. ya que normalmente el punto o o optimo se encuentra en la intersecci´n de las restricciones obligando a acercarse lo m´s ´ o a 151 .1. se intenta evitar su violaci´n trabajando alejados de los l´ o ımites (en zona segura). Restricciones en Control Predictivo En la pr´ctica todos los procesos est´n sujetos a restricciones.

152 RESTRICCIONES EN CONTROL PREDICTIVO P Pmax P1 P2 t Q1 Q2 Q Figura 10. e Si el controlador fuera capaz de tener en cuenta las restricciones y evitar su violaci´n. Incluso puede que no se viole la ıa ıa restricci´n en el instante actual pero s´ en el futuro (figura 10.2a se o muestra un caso con horizonte de control igual a 2. o En cuanto a la forma de operar de un controlador predictivo que no considera restricciones el procedimiento es similar: si la se˜al de control calculada viola la restricci´n. Esta forma de proceder no garantiza el car´cter optimo de la soluci´n y en a ´ o ning´n caso garantiza el cumplimiento de las restricciones en la salida.1 muestra un ejemplo donde existe una limitaci´n de presi´n m´xima y se observa o o a c´mo al alejar el punto de operaci´n del l´ o o ımite la producci´n Q disminuye.2b) con lo que la se˜al o ı n enviada al sistema (sin saturar) no es la mejor para el problema de dimensi´n 2 que se o est´ optimizando. Este hecho puede llevar a valores mayores de la funci´n objetivo y a un comportamiento no deseado (incluso inestabiliad). o el proceso podr´ operar m´s cerca de ´stas y por tanto de forma m´s eficiente. Las se˜ales futuras ni siquiera se tienen en cuenta. n o se satura. La violaci´n de u o los l´ ımites de las variables controladas puede ser m´s costoso y peligroso. La figura ıa a e a 10.1: Restricciones y punto de operaci´n optimo o ´ posible a las ´stas pero sin superarlas. donde se observa que si se satura la se˜al de control u(t) a umax el valor de la funci´n de coste no es el mejor que se n o podr´ conseguir (que ser´ el correspondiente a uc ). a . n e o La figura 10. ya que normalmente no n se calculan. produciendo a da˜os en equipos y p´rdidas en la producci´n. En 10.2 muestra con claridad el fen´meno de p´rdida de la soluci´n optima o e o ´ cuando las variables manipuladas se mantienen en sus l´ ımites por el programa de control o por el propio actuador.

e Para formular el algoritmo mpc con restricciones hay que expresar ´stas en funci´n e o de la variable sobre la que se puede actuar. es decir.2: Restricciones en la se˜al de control n b) 10.CAP´ ITULO 10. o n Cualquier controlador predictivo calcula la predicci´n como: o y = Gu + f por lo que tanto entradas como salidas se pueden expresar en funci´n del vector de o incrementos de la se˜al de control. siendo esta caracter´ a n ıstica una de las razones de su gran ´xito en la industria. OTROS ASPECTOS DEL CONTROL PREDICTIVO 153 u(t+1) u(t+1) u max u max uc u max u u(t) uc u u max u(t) a) Figura 10. Restricciones en Control Predictivo En la actualidad el mpc es la unica metodolog´ capaz de incorporar las restricciones ´ ıa de forma sistem´tica en la fase de dise˜o del controlador. n Las restricciones que aparecen ser´n b´sicamente amplitud y velocidad de cambio a a en la se˜al de control y amplitud en la salida y se pueden expresar como: n . Las restricciones o en la entrada est´n ya expresadas en funci´n de u y para las restricciones en la salida a o se hace uso de las ecuaciones de predicci´n que expresan el valor futuro de las salidas o en funci´n de las se˜ales de control futuras y valores conocidos en el instante t.1. Parece l´gico que al disponer de un e o modelo din´mico del proceso se pueda conocer la evoluci´n futura de su salida y por a o tanto se pueda saber si ´sta va a violar o no las restricciones y actuar en consecuencia. en funci´n de u.2.

1) siendo     R=     IN ×N −IN ×N T −T G −G              c=     lu −l u l U − lu(t − 1) −l U + lu(t − 1) l y−f −l y + f          Aparte de las restricciones en amplitud. las restricciones se pueden expresar como: 1 U ≤ T u + u(t − 1) 1 ≤ 1 U 1u ≤ u ≤ 1u 1y ≤ Gu + f ≤ 1y donde l es una matriz de dimensi´n (N × n) × m formada por N m × m matrices o identidad y T es una matriz triangular inferior por bloques cuyos elementos no nulos son matrices identidad de dimensi´n m × m. As´ se puede hablar de: ı. se puede hacer otra clasificaci´n atendiendo a la e o forma de tratarlas. Restricciones duras como aqu´llas que no se pueden violar bajo ning´n concepto. En forma condensada se pueden expresar o como: Ru≤c (10.). e e Adem´s de la clasificaci´n en restricciones en la entrada y en la salida seg´n a a o u qu´ tipo de variable se apliquen. . etc. evitar respuesta inicial inversa.1). comportamiento mon´tono.154 RESTRICCIONES EN CONTROL PREDICTIVO U ≤ u(t) ≤ U ∀t u ≤ u(t) − u(t − 1) ≤ u ∀t y ≤ y(t) ≤ y ∀t Para un proceso de m entradas y n salidas y restricciones en el horizonte N . e u En este grupo se incluyen las restricciones relacionadas con la operaci´n segura o del proceso. o pudiendo expresarlas tambi´n de la forma gen´rica (10. a la salida se le pueden aplicar otro tipo de restricciones de para forzar un determinado comportamiento temporal (movimiento dentro de una banda.

CAP´ ITULO 10. OTROS ASPECTOS DEL CONTROL PREDICTIVO

155

Restricciones blandas, que son aqu´llas que pueden ser violadas en un momento e dado por no ser cruciales, pero la violaci´n se penaliza en la funci´n objetivo o o como un t´rmino m´s. Es una forma de relajar la restricci´n. e a o

10.1.3.

Resoluci´n del problema o

Con la adici´n de restricciones el problema general de control predictivo cambia se o puede formular como minimizar J(u) sujeto a Ru ≤ c Es decir, el problema consiste en la minimizaci´n de una funci´n cuadr´tica con o o a restricciones lineales, lo que se conoce como Programaci´n Cuadr´tica, qp. En este o a caso no se puede encontrar una soluci´n anal´ o ıtica como en el caso sin restricciones, sino que hay que recurrir a m´todos iterativos. e Resulta evidente que la carga de c´lculo ser´ considerable, ya que hay que encontrar a a la soluci´n resolviendo el algoritmo iterativo en cada periodo de muestreo. Normalmente o el esfuerzo est´ justificado por el beneficio econ´mico obtenido al trabajar m´s cerca del a o a punto de operaci´n optimo. Para resolver el problema qp existen diversos algoritmos o ´ suficientemente probados. Un problema asociado a la implementaci´n del control con restricciones es el an´lisis o a de la estabilidad del bucle cerrado. Como es necesario utilizar m´todos num´ricos para e e resolver el problema de la optimizaci´n, la ley de control resultante no se puede describir o de forma expl´ ıcita, haciendo el problema muy dif´ de atacar mediante la teor´ cl´sica ıcil ıa a de control. En los ultimos a˜os se ha trabajado mucho sobre la estabilidad en estas circun´ n stancias, proponi´ndose soluciones basadas en la teor´ de Lyapunov. La idea b´sica e ıa a consiste en que la funci´n de coste cuando el horizonte es infinito es mon´tona decreo o ciente (si existe soluci´n factible) y se puede interpretar como funci´n de Lyapunov o o que garantiza por tanto la estabilidad. Sin embargo, como la soluci´n tiene que ser o num´rica, el n´mero de variables de decisi´n tiene que ser finito, por lo que se han e u o propuesto dos ideas. En la primera, se descompone la funci´n objetivo en dos partes: o una con horizonte finito y restricciones y otra con horizonte infinito y sin restricciones. La segunda idea es en esencia equivalente y consiste en imponer restricciones terminales al estado y usar un horizonte infinito.

156

RESTRICCIONES EN CONTROL PREDICTIVO

En cualquier caso es un tema muy abierto, sobre todo si se quieren considerar las incertidumbres en el modelo y los temas asociados con la factiblidad.

10.1.4.

Gesti´n de restricciones o

Durante la etapa de optimizaci´n puede aparecer problemas de no existencia de o soluci´n optima para unas restricciones dadas (no existe compatibilidad entre las reo ´ stricciones), por ejemplo por el planteamiento de unos objetivos inalcanzables para unas restricciones dadas. Existen otras posibles causas de inexistencia de soluci´n, coo mo es el caso de que una perturbaci´n saque al proceso fuera de la zona de trabajo o usual. La factibilidad de un problema de optimizaci´n significa que la funci´n objetivo o o est´ acotada y que todas las restricciones sean satisfechas. e La no factibilidad puede aparecer en r´gimen permanente o en el transitorio. El e problema de la falta de soluci´n en r´gimen permanente puede venir provocado por o e un objetivo de control irrealizable. Sin embargo, este tipo de no factibilidad puede ser f´cilmente eliminado en la etapa de dise˜o evitando la inclusi´n de tales objetivos. a n o Tambi´n puede ser debido a cambios en referencias que hagan incompatibles las ree stricciones (se quiera llevar alguna variable a un punto que es imposible de alcanzar con una entrada que est´ acotada). a En el r´gimen transitorio puede aparecer no factibilidad incluso cuando las restrice ciones impuestas parezcan razonables. Restricciones que no causan problemas en operaci´n normal pueden producir problemas bajo ciertas circunstancias. Puede que una o perturbaci´n o cambio de referencia grande fuerce a una variable fuera de su l´ o ımite y sea imposible introducirla de nuevo en su zona permitida con se˜ales de control de energ´ n ıa limitada. En estos casos las restricciones se hacen temporalmente incompatibles. Las soluciones no factibles aparecen con mayor frecuencia en casos en que el optimo ´ se encuentre cerca de las restricciones y el sistema est´ sujeto a perturbaciones, llevando e a la salida a regiones prohibidas”.

CAP´ ITULO 10. OTROS ASPECTOS DEL CONTROL PREDICTIVO

157

Límites físicos

Límites de operación

Restricciones reales

Figura 10.3: Gesti´n de restricciones o

10.1.4.1.

T´cnicas de b´ squeda de soluciones factibles e u

Los m´todos de gesti´n de restricciones tratan de recuperar la factibilidad actuando e o sobre las restricciones seg´n diferentes criterios. u Los l´ ımites de las restricciones se pueden considerar de los siguientes tipos: Limites fisicos: nunca se pueden sobrepasar, principalmente por motivos de seguridad o por la propia construcci´n de los equipos (p.ej. actuadores) o Limites de operaci´n: son fijados por los operarios para mantener las condiciones o nominales de funcionamiento. Se pueden sobrepasar bajo ciertas circunstancias Limites reales: son los que usa el algoritmo de control en cada instante. Son los que proporciona el gestor de restricciones, quien debe calcularlos de forma que nunca superen los limites f´ ısicos. Es decir, el gestor de restricciones calcular´ los l´ a ımites reales (los que se env´ al ıan algoritmo qp) en base a los l´ ımites de operaci´n pero sin salirse nunca de los l´ o ımites f´ ısicos, seg´n se observa en la figura 10.3. u Se analizan a continuaci´n posibles soluciones para este problema, que se pueden o agrupar en: 1. Desconexi´n del controlador. o

o 4. Adicionalmente. e cuando aparecen problemas de incompatibilidad de restricciones es porque el sistema en bucle cerrado se encuentra en un estado cr´ ıtico donde normalmente el operador tendr´ muy poca experiencia en la operaci´n. 2. e 1. Cada vez que existe un problema de incompatibilidad de restricciones. por lo que la eliminaci´n o de restricciones se realiza de forma temporal. Eliminaci´n de restricciones. como se puede comprender tiene serias desventajas. las decisiones llevadas a cabo o cuando aparecen problem´ticas de compatibilidad de restricciones suelen ser cr´ a ıticas dado que en estos casos alguno de los objetivos del control no puede ser satisfecho.158 RESTRICCIONES EN CONTROL PREDICTIVO 2. Se pueden distinguir en la metodolog´ de eliminaci´n de restricciones o ıa o varios tipos. quedando o la optimizaci´n de un problema sin restricciones. Eliminaci´n de restricciones o La factibilidad se analiza en cada periodo de muestreo. se forma un conjunto de restricciones no admisibles que no se tienen en cuenta en el proceso de optimizaci´n. Relajaci´n de restricciones. Normalmente. o a o Este m´todo. El m´todo suele ser utilizado cuando los problemas de incompatibilidad de restrice ciones no son frecuentes. Desconexi´n del controlador o La forma m´s sencilla de resolver de este tipo de problemas es pasar el controlador a a posici´n manual cuando aparecen las incompatibilidades de restricciones y volver a o operaci´n autom´tica cuando se recupera la admisibilidad de la soluci´n. Eliminaci´n indiscriminada Con esta estrategia todas las restricciones se elimio nan cada vez que aparezcan problemas de existencia de soluci´n factible. Otras t´cnicas. si las restricciones est´n a o a relacionadas con aspectos de seguridad o econ´micos. No es un m´todo muy optimo para o e ´ . o 3. Peri´dicamente se chequea la factibilidad o para poder reinsertar restricciones eliminadas. La eliminaci´n de un grupo de restricciones ha de realizarse en aquellos casos en que o el conjunto completo de restricciones que se imponen sobre el sistema sea incompatible.

se pueden mejorar las prestaciones desplazando la ventana hacia el futuro. La eliminaci´n indiscriminada de restricciones no es adecuada en todas las aplicao ciones. con ≥ 0) para asegurar la existencia de soluci´n. Algunos controladores industriales como el qdmc usan el concepto de constraint window. Eliminaci´n jer´rquica En este caso s´lo se eliminan las restricciones que provocan o a o problemas de incompatibilidad. que da un grado de importancia relativa de dicha restrico ci´n frente a las otras. OTROS ASPECTOS DEL CONTROL PREDICTIVO 159 resolver el problema de la existencia de soluci´n admisible. No debe ser por ejemplo usada en casos en que las restricciones est´n directae mente relacionadas con l´ ımites de seguridad.CAP´ ITULO 10. Otras t´cnicas e Existen t´cnicas que se basan en la manipulaci´n del horizonte m´ e o ınimo de las restricciones. cada vez que haya problemas de factibilidad o existencia de soluci´n el gestor o de restricciones va eliminando por orden las restricciones menos prioritarias hasta que se restablece la factibilidad de la soluci´n. si conviene u eliminar m´s restricciones a costa de no eliminar una con prioridad superior. En este m´todo se asigna en la etapa de dise˜o una e n prioridad a cada restricci´n. e o o a 4. a la hora de eliminar restricciones se pueden establecer diferentes tipos de reglas para establecer el n´mero de restricciones que se eliminan. que se chequea cada periodo de muestreo o para reinsertar restricciones que hubieran sido temporalmente eliminadas. el o t´rmino de penalizaci´n en la funci´n objetivo llevar´ las variables auxiliares a cero. Si existe din´mica del tipo de fase no m´ a ınima. pero es la forma m´s r´pida o a a de tener en cuenta incompatibilidad de restricciones. Se puede hacer una relajaci´n de los l´ o o ımites de forma temporal o convertir restricciones duras (Ru ≤ c). etc. a 3. Relajaci´n de restricciones o Otro m´todo para tener en cuenta el problema de existencia de soluci´n es la ree o lajaci´n de las restricciones. a˜adiendo un o n t´rmino T T a la funci´n de coste de forma que se penalice la violaci´n de la ree o o stricci´n y obtener un mejor comportamiento del sistema controlado. La constraint window comienza en alg´n punto en el futuro y contin´a hasta u u el estado estacionario. lo que equivale a ignorar las restricciones duras en la salida durante la fase inicial de la respuesta. cambi´ndolas en restricciones blana das (Ru ≤ c + . Esta prioridad se usar´ para clasificar las restricciones de una o a forma jer´rquica (se asigna un n´mero que indica su posici´n en la jerarqu´ De este a u o ıa). . A largo plazo. modo. En este sentido.

160 RESTRICCIONES EN CONTROL PREDICTIVO .

Sign up to vote on this title
UsefulNot useful