1. Control Predictivo a d Pasos

Documentos relacionados
1. Control con Modelo de Referencia

1. Control con Modelo de Referencia

1. Control de Mínima Varianza

1. Diseño Óptimo en Función de Transferencia. 1. Diseño Óptimo en Función de Transferencia 1

1. Regulador PID Introducción Discretización Operador Derivada Discretización por Partes 5

1. Realimentación Basada en el Modelo 1

1. Implementación de Controladores

1.1. Introducción Método de Identificación por Mínimos Cuadrados Forma Recursiva: Inclusión del Factor de Olvido.

1. Diferentes Algoritmos de Identificación

EJERCICIOS DE LA UNIDAD DIDÁCTICA 1

1. Análisis de Sistemas Discretos

1. Diseño Óptimo en Variables de Estado 1

1. Mínimos Cuadrados. 05-Mínimos Cuadrados.doc 1

Identificación Paramétrica

TECNICAS DE DISEÑO Y COMPENSACION

1. Modelos Matemáticos y Experimentales 1

ESTABILIDAD. El procedimiento en el criterio de estabilidad de Routh es el siguiente: 1) Escriba el polinomio en s en la forma siguiente:

Ejercicio 3 Un sistema de control de velocidad de un motor de corriente continua se modela mediante la ecuación

Clase 10 Diseño Óptimo Variables de Estado.doc 1

1. Ajuste de los Modelos 1

Unidad I Análisis de Sistemas Realimentados

PRIMERA PARTE. F roz 1 K Ms

Control Automático. Compensador de adelanto en el lugar de las raíces

CONTROL APLICADO MODELADO DE SISTEMAS DINÁMICOS

Diseño Básico de Controladores

0.1. Error en Estado Estacionario

SISTEMAS ELECTRÓNICOS DE CONTROL

Aplicaciones Industriales del Control Automático ESC

CONTROL DIGITAL Catedrático: Dr. Manuel Adam Medina Alumno: Ing. Jaimes Maldonado José Luis

Lugar Geométrico de las Raíces Herramienta para diseño de sistemas de control

Aplicación de un método grafico para la sintonización del control PID utilizando Matlab Israel.Cerón-Morales 1

DISEÑO DE COMPENSADORES USANDO LOS DIAGRAMAS DE BODE

IDENTIFICACION DE SISTEMAS IDENTIFICACIÓN PARAMÉTRICA

COMPENSADOR DE TEMPERATURA PARA CELDAS DE CARGA

El modelo matemático tiende a ser lo más simple posible, con una representación. A la hora de desarrollar un modelo matemático:

REGA - Regulación Automática

Estructuras de control I

CONTRIBUCION AL DESARROLLO DE SISTEMAS DE CONTROL DE ESTRUCTURAS DE EDIFICACION MEDIANTE CABLES ACTIVOS

Introducción al Control Óptimo

Modelado en el dominio de la frecuencia Utilizar la transformada Laplace para representar ecuaciones diferenciales lineales

ANEXO 2. Realizado: Versión: Páginas: Grupo SUPPRESS Laboratorio Remoto de Automática (LRA-ULE) Universidad de León

1. Modelos Matemáticos y Experimentales Modelos Stepha Modelos Matemáticos y Experimentales

Prefacio. 1 Sistemas de control

TEORÍA DE CONTROL CONTROLADOR PID

Víctor M. Alfaro. Sistemas de control. proporcional, integral y derivativo. Algoritmos, análisis y ajuste

PRÁCTICA N 2 ESTUDIO TEMPORAL Y FRECUENCIAL DE SISTEMAS DINÁMICOS DE PRIMER Y SEGUNDO ORDEN

DESCRIPCIÓN DEL PRINCIPIO BÁSICO

Capítulo 6: Diseño de controladores

11 REPRESENTACIÓN EN EL ESPACIO DE ESTADO. 1.3 SOLUCIÓN DE ECUACIONES DE ESTADO EN TIEMPO

CAPÍTULO. Control Proporcional Integral Generalizado. II.1 Introducción. II. Control Proporcional Integral Generalizado

1.1. Algoritmo de Proyección Actualización de Parámetros y Variables de Estados 7

Control II Diseño de Compensadores utilizando el Lugar de las Raíces. Fernando di Sciascio

Estimación de Estados Observadores Reducidos o de Orden Mínimo. Fernando di Sciascio (2016)

Para localizar un punto o un objeto en el espacio necesitamos un sistema de referencia. R es una cuaterna { O,i, j, k}

REGULACIÓN AUTOMÁTICA

Control Avanzado de. Más allá del PID

Ejercicios resueltos 2: Horno de Carbón Cátedra de Control y Servomecanismos

4.1 Introducción al filtrado adaptativo

Examen Ingeniería de Control 12/2014

GUÍA DE APLICACIÓN POR FRACCIONES PARCIALES

COLECCIÓN DE PROBLEMAS DE EXÁMENES DE INGENIERÍA DE CONTROL

Clase 08.doc Aproximación de Controladores Continuos. 1. Aproximación de Controladores Continuos 1

1. Aproximación de Controladores Continuos... 1

Control Multivariable

1. Muestreo de Sistemas Continuos. 1. Muestreo de Sistemas Continuos 1

10. Diseño avanzado de controladores SISO

Nombre del formato: Formato para la Instrumentación Didáctica del Periodo. Referencia a la Norma ISO 9001: , 7.2.1, 7.5.1, 7.

Sistemas de Control lineal óptimo con realimentación de estado

Estabilidad en sistemas realimentados

CORPORACIÓN TECNOLÓGICA INDUSTRIAL COLOMBIANA PROGRAMA DE INGENIERÍA MECATRÓNICA TERCER CICLO PROPEDÉUTICO - INGENIERÍA EN MECATRÓNICA

XI. COMPENSACIÓN UTILIZANDO EL LUGAR GEOMÉTRICO DE LAS RAÍCES

OBJETIVO DEL ACTUADOR. Regular el movimiento de un cuerpo que se debe trasladar controladamente de una posición a otra.

Control por realimentación del estado

MODELOS DE SERIES DE TIEMPO 1. Modelos capaces de predecir, interpretar y evaluar hipótesis con datos económicos y financieros.

1.5. Seguimiento de Referencias Acción Integral Controlador con Dos Grados de Libertad 35

Identificación n de SIStemas

c-inversa o inversa generalizada de Rao

Respuesta en la Frecuencia

CONTROL POR REALIMENTACIÓN DE ESTADOS

Problema de seguimiento de un conjunto de señales de referencia. Especificaciones de diseño del régimen permanente

Problemas de Estructuras de Filtros Digitales.

es el lugar geométrico de los puntos p tales que p 0 p n o p 0 p o. p x ; y ; z perteneciente a y un vector no

Schmeigel Nicolas. Marzo 2014

3 y un vector Y 2 que contenga el cálculo de Y2 = 4X

AUTOMATIZACION Y CONTROL DE PROCESOS FACEyT UNT ESTABILIDAD DE LOS SISTEMAS EN LAZO CERRADO

AUTOMATIZACION Y CONTROL DE PROCESOS FACEyT UNT ESTABILIDAD DE LOS SISTEMAS EN LAZO CERRADO

Antecedentes de Control

Capítulo 5: CONTROL INVERSO ADAPTATIVO

Sintonización de Controladores

Escuela de Ingeniería Eléctrica. Departamento de electricidad aplicada. Materia: Teoría de Control (E )

Conceptos Básicos de Errores y Lugar de la Raíz

Control Analógico II M.I. Isidro Ignacio Lázaro Castillo

4 IDENTIFICACIÓN DE MODELOS LINEALES DE LA PLANTA SOLAR

Control Automático DIAPOSITIVAS. Dr. Roberto Cárdenas Dobson Profesor de la Asignatura

Ejercicios III SISTEMAS AUTOMÁTICOS Y DE CONTROL

Determinar el comportamiento transitorio y estacionario del sistema. Especificar e identificar las condiciones de operación

15. LUGAR DE LAS RAICES - CONSTRUCCION

Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica Departamento de Electrónica

Transcripción:

. Control Predictivo a d Pasos. CONTROL PREDICTIVO A D PASOS..... INTRODUCCIÓN...3.. PREDICTOR A D PASOS...4... Polos Ceros del Predictor...6.3. CONTROLADOR PREDICTIVO A D PASOS...9.4. CONTROLADOR PREDICTIVO A D PASOS PONDERADO....5. CONTROL PREDICTIVO A D PASOS PONDERADO POR POLINOMIOS...4.6. NOTAS SOBRE EL CONTROL PREDICTIVO...3.6.. Indeterminación del Retardo...3.6.. Sensibilidad Frente a Variaciones de Parámetros...4.7. CASO ADAPTATIVO DEL CONTROL PREDICTIVO...6.8. CONTROL PREDICTIVO PONDERADO ADAPTATIVO...3.9. CONTROL PREDICTIVO PONDERADO ADAPTATIVO CON FILTRO EN LA ACTUACIÓN...3.. COMPENSACIÓN DE VELOCIDAD...37.. SIMULACIONES...54... Predictor a d Pasos...54... Control Predictivo Ponderado Por Polinomios...56 Clase Control Predictivo.doc

..3. Cálculo de los Polinomios P R...6..4. Control Predictivo Ponderado Por Polinomios Adaptativo...63 Clase Control Predictivo.doc

.. Introducción Uno de los problemas del control es el retardo, + = a + bu (.) le de control u = ( r+ a) (.) b Sistema con retardo: = a + bu (.3) + + = a + bu + + = a + bu + ( ) = a a + bu + bu + + (.4) = a + bu + abu (.5) u = ( r+ a abu ) (.6) b concepto de predicción de la salida Clase Control Predictivo.doc 3

.. Predictor a d Pasos A = B u (.7) donde - - -n A = + az + a z + + an z B= z B = z + z + z + + z ( b b b bm ) -d -d - - -m se puede reescribir: = G + F B u +d donde F G se relacionan por: (.8) (.9) -d = F A + z G (.) con F = + f + f + + f - - -d+ z z d-z - - -n+ z z n-z G= g + g + g + + g (.) Clase Control Predictivo.doc 4

Los coeficientes de F de G tienen la siguiente expresión: i f = f a i = d i j i j j= d g = f a i = n i j i+ d j j= Demostración: ( z ) -d F A = F B u = F B u -d -d - G = F B u z d z z = G + F B u (.) (.3) Clase Control Predictivo.doc 5

... Polos Ceros del Predictor ( ) H q ( ) ( ) d q B q = (.4) A q el predictor es d d = q G( q) + q F( q ) B ( q) d d ( q G( q) ) = q F( q ) B ( q) u H p ( q) ( ) ( ) d q G( q) u (.5) F q B q = (.6) d q G( q) debe tener las raíces de A( q ) F ( q ) problemas numéricos si se utiliza la ecuación del predictor para simular el comportamiento del sistema. las raíces de F ( q ) se distribuen simétricamente respecto de las raíces de A( q ). Clase Control Predictivo.doc 6

Ejemplo.. Sistema con Retardo 3 Sea el sistema =, 5 -,7 + u -, 8 u (.7) - - A= -, 5q +,7q B=q - (, 8q ) 3 F G deberán cumplir -3-4 (.8) 3 ( f f )(, +,7 ) + ( g g ) = + q + q - 5q q q + q ( f, ) + (,7, f + f ) (,7 f, f g ) (,7 f g ) = + - 5 q - 5 q + 5 + q + + q resultando 3 4 f =, 5 = - a f f =, 5 f -,7 =,55 = - a f - a f g =, 5 f -,7f =. 75 = - a f - a f g = -,7 f = -,85 = - a f (.) (.9) Clase Control Predictivo.doc 7

(, 75,85 ) (,,5 ) (, ) = q + + 5q + 5 q - 8q u +3 =, 75,85 + u +, 7 u +,35 u, 4 u +3 - - - -3 (.).5.5.5 5 5 5 Ilustración - Predictor a d Pasos Clase Control Predictivo.doc 8

.3. Controlador Predictivo a d Pasos le de control: M u +d (.) F B = - G d ε r + d F B u q -d B A G ε = q G M d d F A A d d q q B = ε + ( ) FAq = q - G d M d F A + Gq q = q + B Fd d d M d = + BFd M d + B Fd (.3) (.4) Clase Control Predictivo.doc 9

ε u= F B -d M d G z ε = z - ε = F A A M u= -d z B u es estable si B' lo es. M z d F A F A + G z -d Otra forma de interpretar este control es el encontrar una le para u de modo que minimice el siguiente funcional: J = - J = M +d +d +d u Resolviendo esta ecuación se llega a la misma conclusión anterior. Este control es mu sencillo e intuitivo pero tiene dos problemas: se requieren grandes esfuerzos en u es demasiado estricto en cuanto a B'. Se verá a continuación cómo se pueden resolver estos dos problemas. (.5) (.6) Clase Control Predictivo.doc

.4. Controlador Predictivo a d Pasos Ponderado Para hacer más flexible el diseño del control se definirá el funcional de la siguiente forma: J +d λ = - + M +d +d u Es decir, se ha agregado un término que pesa el esfuerzo del control o la energía consumida. Si se reemplaza + dpor su valor según la expresión (.9) se deriva con respecto a u se obtendrá la nueva le de control. M λ J +d = G + F B u - +d + u J +d M = G + F B u - +d b+ λ u= u M [ F B b+ λ] u= b +d - G [ ] M F B b+ λ u= b +d - G (.7) (.8) (.9) Clase Control Predictivo.doc

r + d b + - FB b + λ u z - d B A G Si se analiza la función de transferencia entre referencia salida se obtiene lo siguiente: ε = - G M d z -d z B b = A ( F B b + λ ) ( λ ) A F B b + -d z B b ε M d + G = z M Bb = B + λ A b (.3) (.3) Clase Control Predictivo.doc

Es decir, la relación referencia-salida a no es sino que tiene cierta dinámica dependiendo del valor de λ. Sólo en el caso de λ= se eliminaría esta dinámica. Se verá ahora cómo varía la estabilidad de la variable de control. De la misma figura se desprende, ε -d M d M d G z B = - G = - u b u= ε F B b + λ z z A b u b A = M B b + λ A -d b M d G z B u= z - u F B + λ A Por lo tanto, variando λ se puede hacer estable el polinomio bb ' + λ A lo que implica la posibilidad de estabizar u. Con esto se consigue reducir considerablemente los esfuerzos de control. Pero aún subsisten dos inconvenientes: (.3) No todo sistema puede hacerse estable variando λ. No tiene suficientes grados de libertad. Para intentar solucionar esto se elegirá una nueva especificación del control. Clase Control Predictivo.doc 3

.5. Control Predictivo a d Pasos Ponderado por Polinomios Con el fin de aumentar la libertad se definirá una nueva especificación de modo que no se considere u directamente sino una nueva variable filtrada: J +d λ = + M +d - +d u P u = R u P = + p + + p - -p z pz - -r R= + rz + + rz r Haciendo similar trabajo algebraico se llega a la le de control. λ J u u (.33) (.34) M +d = G + F B - +d + (.35) M λ +d = G + F B - +d + ( - P ) + R J u u u Clase Control Predictivo.doc 4

J +d M = G + F B u- +d b+ λ ( - P ) u + R u = u M b G - +d + λ( - P ) u + [ F B b+ λ R ] u= M b G - +d + λ( - P ) u + ( b+ λ) u ( F B + b- b) z u-+ ( λ R - λ) z u -= u Cabe notar que la forma que tienen los polinomios es la siguiente: ( )( f ) F B b = b b + b + + + = b + + - - - z z z - R = + + λ λ λ r z por lo tanto, si se despeja u se logra la expresión que sigue: ( ) - ( ) - G - λ - P z - F B - + λ R - λ z M b +d u b b u- = + λ o sea b (.37) M u= [ b+d - bg - bg- - b + λ - ( fb b + λr ) u - ( fb b + λr ) u + λ p u + λ p u (.38) - - - - ] (.39) (.36) Clase Control Predictivo.doc 5

Si se lo expresa en forma de bloques resulta la Ilustración -. Igual que antes se puede analizar la forma de la salida la estabilidad de la variable de control. Es conveniente hacer previamente una modificación de los bloques para facilitar el estudio. De la figura se puede inferir: λ (P-) R P r + - - b + + FB'b +Rλ u z -d B' A G Ilustración - Control Predictivo a d pasos ponderado por polinomios Clase Control Predictivo.doc 6

(P -) R ( ) + b ε+ u λ P - bε λ u P u = = F B b+ λ R F B b+ λ R (P -) R (F B b+ λ R) u - λ u= εb P (F B P b + λ R P - λ R P + λ R) u = P εb con lo que la le de control resulta: u M ( ) P = b - G b +d F B P + λ R O sea que se puede modificar la Ilustración - lograr la Ilustración -3. (.4) r + d + - bp FB bp+ λr u z - d B A G Ilustración -3Versión Simplificada Clase Control Predictivo.doc 7

Ahora si, se analizará la relación entre la referencia la salida. El error es: ( F B P + λ R) ε = - G M d z d M z = b A + G = -d z B P b -d z B P b A F B P b + R ( λ ) ε (.4) por lo tanto la relación entre e M tiene la siguiente forma: A F B P b + λ A R + G B P b = B P b B P b = B P b + λ A R M d = - G -d z M Se puede analizar la estabilidad de la variable de control como sigue: b P u = ε F B P b + λ R ε ε z -d M d G z B = - u z A M (.43) (.4) Clase Control Predictivo.doc 8

-d d b P G z B b P M u z + = A ( F B P b+ λ R) F B P b+ λ R -d M d u A F B P b+ λ A R + b P G B z = b A P z (.44) u b A P = M B P b + λ A R Nótese que ahora los grados de libertad que se tienen para hacer estable u son maores. Las tres figuras siguientes muestran al sistema del primer ejemplo controlado por los tres tipos de reguladores vistos. Primero, por un regulador predictivo sin ponderación, luego se inclue el factorλ por último se introducen los polinomios de ponderación. Clase Control Predictivo.doc 9

.5.5 -.5 - -.5 5 5 5 Ilustración -4 Control Predictivo Clásico Clase Control Predictivo.doc

.5.5 -.5 - -.5-5 5 5 Ilustración -5 Control Predictivo Ponderado Clase Control Predictivo.doc

.5.5 -.5 - -.5 5 5 5 Ilustración -6 Control Predictivo Ponderado con Polinomios Los polinomios de ponderación se podrían calcular considerando el denominador de la función de transferencia en lazo cerrado posicionando sus raices en algún lugar deseado. Clase Control Predictivo.doc

.6. Notas Sobre el Control Predictivo Se verá a continuación algunas consideraciones a tener en cuenta en este tipo de control..6.. Indeterminación del Retardo En este control es imprescindible conocer el retardo de la planta muchas veces no es posible hacerlo con exactitud. Suponiendo que el sistema tiene el siguiente polinomio en el numerador -m B = b+ + bm z bm= cc cmb (.45) bm b donde los c i son los diferentes ceros del sistema Además se supone b pequeño despreciable. El regulador con este nuevo polinomio será: -m B = ε z + b+ + bm z = ε z + Bn (.46) Bn = B - ε z O sea que el regulador no estaría ajustado exactamente la nueva función de transferencia se calculará como sigue: Clase Control Predictivo.doc 3

-d = A F + G z -d M z B +d - G = A F Bn - G B = A F - G ( n + ε z ) = A F M -d z Bn M -d z B Bn M -d+ ( Bn + ε z ) = ( Bn + z ε G ) Ahora el último paréntesis es el que debe ser estable. Es útil esto para analizar la robustez del sistema (partiendo de B estable). ' n (.47).6.. Sensibilidad Frente a Variaciones de Parámetros Sea el sistema real como el de la ecuación: -d A = z B u (.48) sea el modelo o sistema nominal: -d An = z B nu (.49) El regulador se calcula para el sistema nominal. Derivando la transferencia respecto a los parámetros del sistema obtenemos: Clase Control Predictivo.doc 4

-d = n F + G A z -d M z B +d - G = A F Bn B = = M A F B + z G B M -d n M - G = = No dice mucho. Si - C = - z c C = - -? c z -i -d -i z Bn Bn z z bi Bn -i M - z F Bn Bn -i z ai n = = - F B z ( - z G ) -i -d B n (.5) (.5) Clase Control Predictivo.doc 5

.7. Caso Adaptativo del Control Predictivo Se desconoce el proceso real. Habrá que proponer un modelo de la planta: ˆ -d A = z B ˆ u (.5) donde ˆ - - -n A= + aˆz + aˆ z + + aˆn z (.53) ˆ - - -m B = bˆ + ˆ + ˆ + + ˆ bz b z bm z Estos polinomios se usarán en el cálculo del regulador. En el caso de conocimiento absoluto teníamos el predictor = G + F B u +d (.54) Para expresarlo en una forma vectorial compacta se define +d [ ] [ ] T p = g fb fb T x = -n+u u -m-d+ (.55) T = x p La le de control ideal será: p = T M x (.56) +d Clase Control Predictivo.doc 6

Al no conocer el vector de parámetros se lo reemplaza por su estimación: pˆ = T M x +d (.57) Si se despeja la actuación, queda: M u= ˆ ˆ ˆ - ˆ +d - p - - p n- -n+ - p n u - - p n+m+d u-m-d+ pˆ (.58) n Se puede usar cualquier método de identificación con una modificación: T pˆ ˆ -d -d ˆ = p-- P x x p-- (.59) Se observa que en el término correspondiente al error se considera el vector de muestras x previo al retardo. Esto es porque el producto de x por p da la salida luego del retardo. Un posible problema es que ˆb sea cero. Esto se soluciona poniendo algún tipo de filtro lógico que evite esta división. Esta forma se denomina control adaptativo indirecto Clase Control Predictivo.doc 7

- Algoritmo directo. Otra expresión de la planta: x (.6) = T +d p = p T u x (.6) donde p g g fb T n- = fb fb fb fb x [ u- u-m-d+ ] = - - - - T -n+ +d La le de control también se dejará en una forma explícita vectorial: T u = x pˆ (.6) (.63) donde T M x = - - -n+- u - - u -m-d+ +d T pˆ ˆ -d -d ˆ = p -- P x x p -- u -d (.64) Clase Control Predictivo.doc 8

En esta forma, el estimador a no calcula los parámetros del sistema sino los del regulador. Comentario: e = x ˆ - u = x ˆ - x ˆ = x ˆ - x ˆ + x ˆ - x ˆ T T T = x -d ˆ -d [ ˆ ˆ -d - x p -+ x p -- p -d] M = - + ˆ ε T T T T T T T -d p - -d -d p - -d p-d -d p - -d p -d -d p - -d p - e ε + ˆ ε = (.66) siendoε el error de seguimiento de la salida ˆε un error auxiliar (.65) Clase Control Predictivo.doc 9

.8. Control Predictivo Ponderado Adaptativo El control predictivo ponderado resultaba: ( F B b ) ( M + λ u b +d - G ) u = (.67) = b ( ) M +d - G - F B - u b + λ La le de control, conociendo el sistema expresada en forma vectorial es: = p (.68) T u x (.69) donde: p b b g b g b fb b fb = b b b b b T n- m+d- + λ + λ + λ + λ + λ T M x = +d - - -n+ - u - - u -m-d+ (.7) Clase Control Predictivo.doc 3

Para la forma directa del algoritmo se introduce una modificación en el modelo de la planta: = G + F B u +d (.7) u +d (.7) F B = - G = +d - G - (F B - ) u (.73) b u b b b u + λ + [ u] = +d - G - (F B - ) b λ (.74) b λ u = ( + u ) - G - (F B - ) u b b +d + λ (.75) Ahora la nueva expresión vectorial de la planta es: = p T u x (.76) donde x p λ = +,- - - - b T +d u -n+ u- u-m-d+ b b g b g b fb b fb = b b b b b T n- m+d- + λ + λ + λ + λ + λ (.77) Clase Control Predictivo.doc 3

.9. Control Predictivo Ponderado Adaptativo con Filtro en la Actuación En este caso la Le de control era: M u = +d ( ) b b g fb b + λr u + + λpu-+ λpu - b + λ (.78) Por lo tanto, u en forma vectorial resulta: = p T u x (.79) donde p T M x = - d - -n+- u- u- + b b g fb b + λr λp λp =, b λ b λ b λ b λ b λ T + + + + + Aquí también se requiere alguna consideración para utilizar la versión directa del controlador. Se expresará al sistema del siguiente modo: = G + F B u +d b u (.8) ( ) = - G F B b u (.8) +d ( λ) + u = +d - G - (F B - ) + λ (.83) b b b b b u u (.8) Clase Control Predictivo.doc 3

por otro lado, ( ) λu λ u λ λu λ u λ = P - R u = + p -- ru- (.84) reemplazando, λ u b b ( b λr) u b b = +d + u - G - fb + - + λpu- + λ (.85) por lo tanto: T u = x p (.86) donde x p λ = + u,- - - b b b g fb b + λr λp λp =, b λ b λ b λ b λ b λ T + d -n+ u- u- T + + + + + con lo que queda expresada u de igual forma que antes con la excepción de la aparición en su cálculo de la variable filtrada. (.87) Clase Control Predictivo.doc 33

Ejemplos: cambio en la muestra 5: se reduce a la mitad la ganancia..5.5.5.5 -.5 -.5 - - -.5 -.5-5 5-5 5 Clase Control Predictivo.doc 34

.5.5.5.5 -.5 -.5 - - -.5 -.5-5 5-5 5.5.5.5.5 -.5 -.5 - - -.5 -.5-5 5-5 5 Clase Control Predictivo.doc 35

4 3 - - -3 5 5 Clase Control Predictivo.doc 36

.. Compensación de Velocidad as as + bs bs u = + ad ad + bd bd u + as as + bs bs u+ = + ad ad + = + bd bd u + ad ad + ad + ad as + as as as = + as as bs bs u bs bs u+ + ad ad bd bd + u bd bd u (.88) (.89) (.9) Clase Control Predictivo.doc 37

+ asas as + as asbs+ asbd asbs + asbd u bs bs u + = + + adad ad ad adbs adbd adbs adbd u + bd bd u + + + + asas as + as asbs+ asbd asbs + asbd u bs bs u + = + + adad ad ad adbs adbd adbs adbd u + bd bd u + + + + u+ R M = + + u u La le de control es (.9) (.9) (.93) Clase Control Predictivo.doc 38

Clase Control Predictivo.doc 39 r u M R u r u + + + = (.94)

Ejemplo.. Péndulo Invertido d dt = u (.95) dv u dt = (.96) T T + = + u + u (.97) v + = v + Tu (.98) predictor T T T T T T + = + + u+ + u = + u + u + u+ + u = T T = 3 + u+ + 3 u + T u v+ = v+ + Tu+ = = v + Tu + Tu + (.99) (.) Clase Control Predictivo.doc 4

T T u u T u v = v + Tu + Tu + = 3 + + + 3 + (.) + + cálculo de la actuación T T u u T u Tu + Tu = v v + + 3 = + 3 + (.) + + T T 3 3 + + u r T u u = v T T la u u = ( r 3 + T u ) + v (.4) T T El regulador predictivo clásico para la posición sería ucp = ( r + ucp ) (.5) T (.3) Clase Control Predictivo.doc 4

para la velocidad uvc = ( rv v) (.6) T reescribiendo el compensado u = ( r 3 + T u ) + v = T T = ( r + ) u ( ) u ( r 3 + T u ) + v T T T T quedando finalmente, r = u ucp v T T es como tener dos controladores predictivos clásicos, uno dependiente de la posición otro de la velocidad con una velocidad de referencia igual a la que debería tener el sistema para llegar en forma recta a la referencia de posición en una muestra. Otra alternativa sería calcular la velocidad como diferencia entre muestras consecutivas, pero esto introduce una imprecisión en la velocidad que degrada el control. Se analiza el efecto en la simulación. (.7) (.8) Clase Control Predictivo.doc 4

- Algoritmo: %Sistema continuo ganancia = ; num= ganancia ; den=pol([, ]); sscont = tf( num,den); %Sistema en variables de estado Pss = ss(sscont); [a,b,c,d] = ssdata(pss); % su respuesta al escalón... t = :.:; u = ones(size(t)); = lsim(sscont,u,t); = lsim(pss,u,t); T=.; p =.5; Tfin = 3; precision= T/; t = :precision:t; ref = ; aux = zeros(size(t)); l = length(t); x= zeros(,); = ; uu = ; ref = ; n = 53; A=[ - ]; %A=[ -.5]; Clase Control Predictivo.doc 43

=; B=*T^/*[ ]; M=[B() -A()*B();B() -A()*B()-B()]; IM=inv(M); AB=[(-A())^-A(3) -A()*A(3) ; (-A())^-A(3) -A(3) A()*B()]; = zeros(n,); d = zeros(n,); u = zeros(n,); UU = zeros(n,); %predictivo clásico = zeros(n,); d = zeros(n,); u = zeros(n,); x= zeros(,); aux = zeros(size(t)); uaux = zeros(size(t)); = ; uu = ; for i = 3:Tfin/T % Sistema Discreto d(i)=-a(:length(a))*flipud(d(i-length(a)+:i-))+b*flipud(u(i-length(b)+:i)); % Sistema Continuo [aux, tt, x] = lsim(pss,uaux,t,x(length(x),:)); = [ ; aux]; uu = [uu ; uaux']; % Regulador (i)= aux(l); u(i)=(/t^)*(ref-*(i)+(i-))-u(i-); % bloqueador de orden cero nivelu=u(i); Clase Control Predictivo.doc 44

uaux = nivelu * ones(size(t)); end; plot([]);grid.6.4.4...8.8.6.6.4..4. 5 5 5 3 5 5 5 3 stairs([u(:tfin/t)]);grid Clase Control Predictivo.doc 45

4 3 - - -3-4 5 5 5 3 Clase Control Predictivo.doc 46

Compensación Por Velocidad = zeros(n,); d = zeros(n,); v = zeros(n,); u = zeros(n,); x= zeros(,); aux = zeros(size(t)); uaux = zeros(size(t)); = ; uu = ; M=[ganancia*T^/ 3*ganancia*T^/; ganancia*t ganancia*t]; IM=inv(M); for i = 3:Tfin/T % Sistema Discreto d(i)=-a(:length(a))*flipud(d(i-length(a)+:i-))+b*flipud(u(i-length(b)+:i)); % Sistema Continuo [aux, tt, x] = lsim(pss,uaux,t,x(length(x),:)); = [ ; aux]; uu = [uu ; uaux']; % Regulador (i)= aux(l); v(i)= (aux(l)-aux(l-))/precision; u(i)=(/t^)*(ref-3*(i)+*(i-))-u(i-)+/t*v(i); % ó esta alternativa: u(i)=(/t^)*(ref-*(i)+(i-))-u(i-)-/t*((ref-(i))/tv(i)); % bloqueador de orden cero nivelu=u(i); uaux = nivelu * ones(size(t)); Clase Control Predictivo.doc 47

end; plot([]);grid.5.4..8.6.5.4. 5 5 5 3 5 5 5 3 stairs([u(:tfin/t)]);grid Clase Control Predictivo.doc 48

8 6 4 - -4-6 -8 5 5 5 3 Clase Control Predictivo.doc 49

Compensación con Cálculo de velocidad Se calcula la velocidad como diferencia entre muestras = zeros(n,); d = zeros(n,); v = zeros(n,); u = zeros(n,); x= zeros(,); aux = zeros(size(t)); uaux = zeros(size(t)); = ; uu = ; M=[ganancia*T^/ 3*ganancia*T^/; ganancia*t ganancia*t]; IM=inv(M); for i = 3:Tfin/T % Sistema Discreto d(i)=-a(:length(a))*flipud(d(i-length(a)+:i-))+b*flipud(u(i-length(b)+:i)); % Sistema Continuo [aux, tt, x] = lsim(pss,uaux,t,x(length(x),:)); = [ ; aux]; uu = [uu ; uaux']; % Regulador (i)= aux(l); % esta es la diferencia, se calcula la velocidad como diferencia entre muestras v(i)= ((i)-(i-))/t; u(i)=(/t^)*(ref-3*(i)+*(i-))-u(i-)+/t*v(i); % ó esta alternativa: u(i)=(/t^)*(ref-*(i)+(i-))-u(i-)-/t*((ref-(i))/tv(i)); Clase Control Predictivo.doc 5

% bloqueador de orden cero nivelu=u(i); uaux = nivelu * ones(size(t)); end; plot([]);grid.4..8.6.4. 5 5 5 3 plot([(:tfin/t)]);grid Clase Control Predictivo.doc 5

.4..8.6.4. 5 5 5 3 stairs([u(:tfin/t)]);grid Clase Control Predictivo.doc 5

5-5 - -5 5 5 5 3 Clase Control Predictivo.doc 53

.. Simulaciones... Predictor a d Pasos n = 3; o = zeros(n,); p = zeros(n,); u = zeros(n,); for i = 7:n u(i)=; o(i)=.5*o(i-)-.7*o(i-)+u(i-3)-.8*u(i-4); p(i)=.75*p(i-3)-.85*p(i-4)+u(i-3)+.7*u(i-4)+.35*u(i-5)-.4*u(i-6); end; stairs([o(6:n) p(6:n)]);grid Clase Control Predictivo.doc 54

.5.5.5 5 5 5 Clase Control Predictivo.doc 55

... Control Predictivo Ponderado Por Polinomios cambioref = 5; ciclos = 5; n = cambioref * ciclos; e =.*randn(n,); = zeros(n,); Ap = [ -.74.77]; Bp = * [..9]; A = Ap; B = Bp; na = length(ap); nb = length(bp); C = [. -..9 -.7 ]; nc = 4; n = ; ref = ones(cambioref,); for i = :ciclos-, ref = [ref; (-)^i*ones(cambioref,)]; end; u = zeros(n,); uf = zeros(n,); lambda = ; P=[ -.9 ]; R=[ -.8 ]; P=[ -.398.4976 ]; R=[ -.9473.5 ]; Clase Control Predictivo.doc 56

% calculo del vector F F = zeros(n,); F() = ; for i = : n for j = :i- if i-j+ <= length(a) F(i) = F(i) - F(j)*A(i-j+); end; end; end; % calculo del vector G G = zeros(na,); for i = : na for j = :n- if i+n-j <= length(a) G(i) = G(i) - F(j+)*A(i+n-j); end; end; end; % calculo del vector FB FB = conv(f,b)'; % cálculo del vector de parámetros ParReg = ones(na+nb+n-3+length(p),)*b() /( B()*B()+lambda); ParReg(:na) = ParReg() * G(:na-); ParReg(na+:na+nb+n-) = (FB(:nb+n-)+lambda*R(:nb+n-)'/B()) * ParReg(); ParReg(na+nb+n-:na+nb+n+length(P)-3) = -lambda*p(:length(p))/b()*parreg(); for i = n+nb+5 : n Clase Control Predictivo.doc 57

% Sistema (i) = ; for j = :na (i) = (i) - A(j)*(i-j+); end; for j = :nb (i) = (i) + B(j)*u(i+-j-n); end; % (i)=fliplr(b(:length(b)))*u(i-length(b):i-)-%fliplr(a(:length(a)))*(ilength(a)+:i-); for j = :nc (i) = (i) + C(j)*e(i-j); end; % Regulador % cálculo de la uf filtrada: uf = (R/P)u uf(i-)=; for j = :length(r) uf(i-) = uf(i-) + u(i-j)*r(j); end; for j = :length(p) uf(i-) = uf(i-) - uf(i-j)*p(j); end; % cálculo del vector de valores para el control predictivo ValReg = zeros(na+nb+n-3+length(p),); ValReg() = ref(i); ValReg(:na) = -flipud((i-na+:i)); ValReg(na+:na+nb+n-) = -flipud(u(i-nb-n+:i-)); ValReg(na+nb+n-:na+nb+n+length(P)-3) = -flipud(uf(i-length(p)+:i-)); % actuación u(i) = ValReg' * ParReg; end Clase Control Predictivo.doc 58

plot();grid; hold on; stairs(u,'r'); hold off Clase Control Predictivo.doc 59

.5.5 -.5 - -.5 5 5 5 Clase Control Predictivo.doc 6

.5.5 -.5 - -.5 5 5 5..3. Cálculo de los Polinomios P R M=pol([.5.5.5.5]); A=[ -.74.77]; B=[..8]; Clase Control Predictivo.doc 6

lambda=; MM=[B()^ lambda ; B()*B() B()^ lambda*a() lambda; B()*B() lambda*a(3) lambda*a(); lambda*a(3)]; ind= M(:length(M))'*(B()^+lambda)-[B()*B()+lambda*A(); lambda*a(3); ;]; %ind= M(:length(M))'-[B()*B()+lambda*A(); lambda*a(3); ;]; pp=inv(mm)*ind; P=[ pp(:)' ]; R=[ pp(3:4)' ]; roots([conv(b,p)*b() ]+lambda*conv(a,r)) ans =.5.5 +.i.5 -.i.4999 Clase Control Predictivo.doc 6

..4. Control Predictivo Ponderado Por Polinomios Adaptativo cambioref = 3; ciclos = 5; n = cambioref * ciclos; e =.*randn(n,); = zeros(n,); Ap = [ -.74.77]; Bp = * [..9]; A = Ap; B = Bp; %A = [ -.7995.8]; %B = e-3 * [.8344.5749]; na = length(ap); nb = length(bp); C = [. -..9 -.7 ]; nc = 4; n = ; ref = ones(cambioref,); for i = :ciclos-, ref = [ref; (-)^i*ones(cambioref,)]; end; u = zeros(n,); uf = zeros(n,); lambda = ; P=[ -.398.4976 ]; Clase Control Predictivo.doc 63

R=[ -.9473.5 ]; u = zeros(n,); % inicialización identificación np=na+nb+n+length(p)--; Aest = ones(n,np); lam=.99; p=*ee(np); th=eps*ones(np,); % calculo del vector F F = zeros(n,); F() = ; for i = : n for j = :i- if i-j+ <= length(a) F(i) = F(i) - F(j)*A(i-j+); end; end; end; % calculo del vector G G = zeros(na,); for i = : na for j = :n- if i+n-j <= length(a) G(i) = G(i) - F(j+)*A(i+n-j); end; end; end; % calculo del vector FB Clase Control Predictivo.doc 64

FB = conv(f,b)'; % cálculo del vector de parámetros ParReg = ones(na+nb+n-3+length(p),)*b() /( B()*B()+lambda); ParReg(:na) = ParReg() * G(:na-); ParReg(na+:na+nb+n-) = (FB(:nb+n-)+lambda*R(:nb+n-)'/B()) * ParReg(); ParReg(na+nb+n-:na+nb+n+length(P)-3) = -lambda*p(:length(p))/b()*parreg(); for i = n+nb+5 : n % Sistema (i) = ; for j = :na (i) = (i) - A(j)*(i-j+); end; for j = :nb (i) = (i) + B(j)*u(i+-j-n); end; for j = :nc (i) = (i) + C(j)*e(i-j); end; % Regulador % cálculo de la uf filtrada: uf = (R/P)u uf(i-)=; for j = :length(r) uf(i-) = uf(i-) + u(i-j)*r(j); end; for j = :length(p) uf(i-) = uf(i-) - uf(i-j)*p(j); end; % cálculo del vector de valores para el control predictivo ValReg = zeros(na+nb+n-3+length(p),); Clase Control Predictivo.doc 65

ValReg() = ref(i); ValReg(:na) = -flipud((i-na+:i)); ValReg(na+:na+nb+n-) = -flipud(u(i-nb-n+:i-)); ValReg(na+nb+n-:na+nb+n+length(P)-3) = -flipud(uf(i-length(p)+:i-)); % actuación u(i) = Aest(i-,:np) * ValReg(:np); % Cálculo del vector X para el identificador x = zeros(np,); x()=(i)+lambda/bp()*uf(i-n); x(:na)=-flipud((i-na+-n:i-n)); x(na+:na+nb+n-) = -flipud(u(i-nb-n+-n:i--n)); x(na+nb+n-:na+nb+n+length(p)-3) = -flipud(uf(i-length(p)+-n:i--n)); % Identificación h=x'*aest(i-,:np)'; epsi=u(i-n)-h; K=p*x/(lam + x'*p*x); p=(p-k*x'*p)/lam; Aest(i,:np)=(Aest(i-,:np)'+K*epsi)'; epsilon=u(i)-aest(i,:np)*x; end plot();grid; hold on; stairs(u,'r'); hold off axis([ n - ]) plot(aest);grid; Clase Control Predictivo.doc 66

- Referencias. Goodwin, G. Sin: Adaptive Filtering, Prediction and Control, Prentice Hall 984. Compensación de Velocidad: p 8/68 Clase Control Predictivo.doc 67