6298312 r 173

Upload: mateo-quispe

Post on 22-Feb-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/24/2019 6298312 r 173

    1/45

    CONTROL PIMO ADAPTATIVO DE UN SISTEMA MULTIVARIABLE DEPNDULO INVERTIDO

    DIEGO ALEJANDRO RAMREZ GAVIRIA

    Cd: 1093222999

    ANDRS FELIPE RAMREZ GIRALDO

    Cd: 1088018655

    UNIVERSIDAD TECNOLGICA DE PEREIRAINGENIERA MECATRNICA POR CICLOS

    FACULTAD DE TECNOLOGAPEREIRA

    2015

  • 7/24/2019 6298312 r 173

    2/45

    CONTROL PTIMO ADAPTATIVO DE UN SISTEMA MULTIVARIABLE DEPNDULO INVERTIDO

    PROYECTO DE GRADO

    PARA OPTAR POR EL TTULO DE INGENIERO EN MECATRNICA

    Autores:

    DIEGO ALEJANDRO RAMREZ GAVIRIA

    ANDRS FELIPE RAMREZ GIRALDO

    Director:

    Ph.D. EDUARDO GIRALDO

    UNIVERSIDAD TECNOLGICA DE PEREIRAINGENIERA MECATRNICA POR CICLOS

    FACULTAD DE TECNOLOGAPEREIRA

    2015

  • 7/24/2019 6298312 r 173

    3/45

    3

    RESUMEN

    El control es uno de los pilares en la Ingeniera Mecatrnica, ya que gracias a estey a sus grandes avances, es posible controlar desde la velocidad de giro de unmotor hasta los grandes transbordadores espaciales, estos ltimos siendosistemas complejos que cambian en el tiempo y es necesario utilizar tcnicas decontrol moderno.

    Con base en lo anterior, se decidi controlar un pndulo invertido, el cual es unsistema inestable y variante en el tiempo, este ltimo controlado mediante elcontrol adaptativo ya que al cambiar en el tiempo un controlador fijo en algnmomento no llevara la variable de control a su punto deseado.

    Por otra parte se reduce el error a su mnimo posible y es all donde es de granrelevancia el control ptimo aplicado al sistema. Por ltimo estas dos tcnicas decontrol moderno se aplican en un modelo simulado y adems se prueban en unaplanta que es construida con el kit de LEGO MINDSTORMS NXT y software decontrol como LabVIEW y MATLAB.

  • 7/24/2019 6298312 r 173

    4/45

    4

    TABLA DE CONTENIDO

    1. DISEO DEL MODELO 82. IDENTIFICACIN DE LOS PARMETROS DEL SISTEMA 11

    2.1 ALGORITMO DE PROYECCIN 132.2 ALGORITMO DE MNIMOS CUADRADOS 14

    3. DISEO DEL CONTROLADOR ADAPTATIVO 154. DISEO DEL CONTROLADOR PTIMO 18

    4.1 CONTROLABILIDAD 194.2 OBSERVABILIDAD 204.3 CONTROL EN ESPACIO DE ESTADOS 20

    4.3.1 OBSERVADOR DE ESTADOS 21

    4.3.2 FRMULA DE ACKERMAN 224.4 CONTROL PTIMO CUADRTICO 244.4.1 DETERMINACIN DE LAS MATRICES Q Y R 254.4.2 CONTROL EN ESPACIO DE ESTADOS CON GANANCIA EN

    LAZO DIRECTO 275. IMPLEMENTACIN Y RESULTADOS 28

    5.1 ALGORITMO DE PROYECCIN 285.2 ALGORITMO DE MNIMOS CUADRADOS 305.3 CONTROL PID ADAPTATIVO 315.4 CONTROL PTIMO CUADRTICO 33

    5.5 IMPLEMENTACIN DEL CONTROL PTIMO SOBRE UNA PLANTAFSICA 36

    6. CONCLUSIONES 397. RECOMENDACIONES 408. ANEXOS 41

    8.1 CDIGO DE MNIMOS CUADRADOS EN MATLAB FUNCTION 418.2 CDIGO DE CONTROL PID ADAPTATIVO 428.3 CDIGO DE CONTROL PTIMO ADAPTATIVO 43

    9. BIBLIOGRAFA 45

  • 7/24/2019 6298312 r 173

    5/45

    5

    TABLA DE FIGURAS

    1.1 Diseo de pndulo invertido en SolidWorks 8

    1.2 Exportacin del diseo 9

    1.3 Diagrama de bloques del modelo en SimuLink 9

    1.4 Diagrama de bloques del sistema completo 10

    1.5Sistema importado en Matlab 10

    2.1Sistema de pndulo invertido [2] 11

    2.2Explicacin geomtrica del algoritmo de proyeccin. 13

    3.1Esquema general de un sistema de control adaptativo [5] 15

    3.2Lazo de control para PID tipo 2 16

    4.1Sistema de control en lazo cerrado con 214.2Diagrama esquemtico del observador de estados 21

    4.3Sistema de control regulado mediante la realimentacin del estado observado23

    4.4 Sistema de control en lazo directo mediante la realimentacin del estado

    observado 275.1Obtencin de entradas y salidas del sistema 28

    5.2Parmetros del sistema mediante proyeccin 29

    5.3Convergencia entre las salidas reales y las estimadas 29

    5.4Convergencia entre salidas estimadas y reales 30

    5.5Identificacin de parmetros mediante mnimos cuadrados 31

    5.6Implementacin de control PID adaptativo. 31

    5.7Respuesta del sistema 32

    5.8Respuesta del sistema simulado 32

    5.9Diagrama de bloques control ptimo 33

    5.10Respuesta del sistema con matrices de pesos identidad 34

  • 7/24/2019 6298312 r 173

    6/45

    6

    5.11Respuesta del sistema con matrices Q y R seleccionadas 35

    5.12Planta para control de ngulo construida con NXT 36

    5.13Visualizacin de la planta en el software LabView 37

    5.14Diseo del controlador en LabVIEW 37

    5.15Panel frontal en LabVIEW 38

  • 7/24/2019 6298312 r 173

    7/45

    7

    INTRODUCCIN

    El presente documento tiene como principal objetivo, dar a conocer el trabajo quese realiz con un sistema multivariable de pndulo invertido, donde las variablesdel sistema que se intervinieron fueron la posicin angular y traslacional.

    La finalidad del trabajo es realizar un control ptimo adaptativo del sistema. Paradicho desarrollo se hace fundamental una continua identificacin de losparmetros de la planta, debido a que sta los vara constantemente con eltiempo. Adicionalmente, se presentar un desarrollo con ecuaciones de estadosen el captulo de control ptimo, con la finalidad de determinar la seal de controlpara el sistema; dichas ecuaciones son requeridas para poder hacer usoadecuado de las funciones DLQR y Ackerman, que se hacen indispensables en eldesarrollo del trabajo.

    Adems, se hace uso del software MATLAB para poder realizar la respectivaprogramacin del proceso, que incluye cdigos de identificacin y cdigos decontrol. Adicionalmente, se realiza un modelo de la planta en SolidWorks yposteriormente se exporta a MATLAB para realizar la simulacin desde all. Pormedio de Simulink se obtienen los bloques que representan la planta importada ycon los cuales se realizan las operaciones anteriormente mencionadas.

    Es importante mencionar, que con ayuda del software LabVIEW se realiza una

    importante prueba en un LEGO MINSTORMS NXT. La prueba consiste encorroborar la funcionalidad del cdigo de identificacin y control ptimo para lavariable de posicin angular, usando como entrada para la obtencin de datos ungiroscopio.

    Finalmente, en el documento se encontrarn los resultados obtenidos frente atcnicas de control clsico.

  • 7/24/2019 6298312 r 173

    8/45

    8

    1. DISEO DEL MODELO

    Gracias a la variedad de herramientas con que se cuenta hoy en da en el campo

    del control, se decide construir la planta en un software de diseo asistido porcomputadora (CAD) y mediante el software MATLAB se desea validar y probartodas las etapas del proceso.

    Con base en lo anterior, el software CAD que se desea utilizar es SolidWorks2010, el cual es una potente herramienta 3D que mediante un toolbox llamadoSimMechanics Link es posible importar el diseo y de esta forma poder controlarloen MATLAB. En la figura 1.1 se muestra el diseo de un pndulo invertido simple,para el cual sus movimientos se encuentran restringidos nicamente en el planohorizontal y en el pvot del pndulo, es decir, las posiciones que se desean

    controlar (Angular y Traslacional).

    Figura 1.1 Diseo de pndulo invertido en SolidWorks. Los autores

  • 7/24/2019 6298312 r 173

    9/45

    9

    Una vez diseado el modelo se procede a su exportacin, para lo cual esnecesario que est activa la herramienta SimMechanics en ambos software, en lafigura 1.2 se muestra la opcin para exportar el diseo.

    Figura 1.2 Exportacin del diseo

    Finalmente, el archivo queda con extensin .xmly en la ventana de comandos deMATLAB se escribe el siguiente comando para importar el diseo:

    mech_import( 'Nombredelarchivo.xml ' )

    De la anterior sentencia se obtiene como resultado el diagrama de bloques enSimuLink, del cual se dispone para hacer el control.

    Figura 1.3 Diagrama de bloques del modelo en SimuLink

  • 7/24/2019 6298312 r 173

    10/45

    10

    Teniendo en cuenta el diagrama de bloques generados, y para tener unacercamiento a la realidad, se opt por adicionar al sistema sus respectivasfricciones, ya que esto permite tener un mejor control del sistema. A continuacin,en la figura 1.4 se puede observar el sistema final con sus respectivas fricciones.

    Figura 1.4. Diagrama de bloques del sistema completo

    Finalmente, se crea un subsistema el cual aloja la parte mecnica, y se corre elprograma para ver el diseo importado en la ventana de visualizacin de Matlab.

    Figura 1.5 Sistema importado en Matlab

  • 7/24/2019 6298312 r 173

    11/45

    11

    2. IDENTIFICACIN DE LOS PARMETROS DEL SISTEMA

    Para el control de sistemas, se conocen diversos procedimientos de diseo paracasos en los cuales los parmetros de la planta son constantes y el sistemaresultante es invariante en el tiempo. Cuando los parmetros de la planta sonescasamente conocidos o varan durante la operacin normal, el uso de tcnicasadaptativas se requiere para obtener un alto desempeo en los sistemas decontrol. El control adaptativo se considera como cualquier estrategia de controlque usa estimacin de los parmetros en tiempo real (identificacin recursiva). Elcontrolador adaptativo al ser diseado est basado en el principio de equivalenciade certidumbre: se disea el controlador suponiendo que los parmetros de laplanta son conocidos y debido a que estos en realidad no se conocen, en el

    tiempo k se reemplazan por su estimado. [1]

    A continuacin en la figura 2.1 se muestra el sistema a controlar, el cual es unsistema inestable.

    Figura 2.1 Sistema de pndulo invertido [2]

  • 7/24/2019 6298312 r 173

    12/45

    12

    Teniendo en cuenta la figura 2.1, el sistema es del tipo SIMO (Single input Multipleoutput) donde la variable de entrada es la fuerza ejercida al carro y las variablesde salida son la posicin angular y la posicin traslacional.

    La mayora de tcnicas para el diseo de sistemas de control se basan en un buenentendimiento de la planta bajo estudio y su ambiente. Sin embargo, en unnmero de tareas, la planta a ser controlada es muy compleja y los procesosbsicos internos de ella no se entienden del todo. Debido al poco conocimientoque se puede tener de un sistema, se hace el uso de tcnicas adaptativas quepermitan controlar el sistema [3].

    Bsicamente la tcnica de control se fundamenta en una identificacin paramtricaen lnea del sistema, modelo al cual se le pueden implementar diferentes tipos decontrol, generando as varias tcnicas de control adaptativo o controladores auto-

    sintonizados.Las caractersticas de entrada-salida de una amplia clase de sistemas dinmicosdeterministas tanto lineales como no lineales pueden ser descritas por un modelosimple de la siguiente forma:

    1 (1)Donde:

    Denota la salida estimada (escalar) del sistema en el tiempo t.

    Denota un vector linear o no linear en funcin de las entradas y salidasanteriores del sistema: 1 1, 2, 1 1, 2,

    Denota el vector de parmetros (desconocido).Con base en la ecuacin (1) es posible mostrar el siguiente algoritmo para laidentificacin de parmetros en lnea.

  • 7/24/2019 6298312 r 173

    13/45

    13

    2.1 ALGORITMO DE PROYECCIN

    1 11 (2)Siendo 1 1 El anterior algoritmo puede ser explicado geomtricamente como se observa en lafigura 2.2. Dados todos los posibles valores que satisfagan la ecuacin (1) se

    selecciona entre todos los valores candidatos a ser , aquel denotado por , elcual es el ms cercano a 1 . Entonces el criterio J dado a continuacin esminimizado:

    1 (3)Algunas propiedades de este algoritmo aseguran que nunca estar ms lejosde que 0. Otra propiedad implica que cuando el modelo de error , estapropiadamente normalizado, la suma de los errores al cuadrado es finita. Esto sevuelve una condicin suficiente para establecer una convergencia global [4].

    Figura 2.2 Explicacin geomtrica del algoritmo de proyeccin.

    Una alternativa para evitar la divisin por cero es agregar una pequea constantec en el algoritmo.

    1 + 11 (4)

  • 7/24/2019 6298312 r 173

    14/45

    14

    2.2 ALGORITMO DE MNIMOS CUADRADOS

    1

    + 11(5)

    1 + (6)Este algoritmo resulta de la minimizacin de la siguiente funcin cuadrtica [3]:

    = ( 1) 0 0 (7)Bsicamente, la funcin de costo anterior representa la suma de los errores alcuadrado. El segundo trmino de la derecha se incluy para tener en cuenta lascondiciones iniciales.

  • 7/24/2019 6298312 r 173

    15/45

    15

    3. DISEO DEL CONTROLADOR ADAPTATIVO

    Teniendo muy claro el mtodo de identificacin que se selecciona, en este caso

    mnimos cuadrados, se procede a disear un controlador el cual no es fijo, sinoque depende de los parmetros de la planta. En la figura 3.1 se puede observar elesquema general de un sistema de control adaptativo.

    Figura 3.1 Esquema general de un sistema de control adaptativo [5].

    Se asume el sistema lineal como una aproximacin de segundo orden el cual tiene

    funcin de transferencia de la siguiente forma:

    +++ (8)Donde a1, a2, b1y b2son los parmetros estimados en la etapa de identificacin.

    Se procede a implementar el controlador, el cual ser un control PID tipo 2 conreubicacin de polos, en realidad sern dos controladores ya que el modelo se

    asumir como dos lazos de control, uno para la posicin angular y otro para laposicin traslacional.

    En la figura nmero 3.2 se puede observar el diagrama de bloques para el lazo decontrol del sistema.

  • 7/24/2019 6298312 r 173

    16/45

    16

    Figura 3.2 Lazo de control para PID tipo 2

    Sobre el sistema aproximado de segundo orden se implementa el control PID el

    cual es de la forma:

    +++ (9)Teniendo en cuenta (8) y (9) se procede a determinar el polinomio caractersticoen lazo cerrado:

    0112211131 1122111221 0112211131 112211122 (10)De 10 se obtiene el polinomio caracterstico en lazo cerrado que se muestra acontinuacin:

    1 3 1 0 0

    2 3 1 1 3 0110 3223111202132(11)Una vez hallado el polinomio caracterstico se compara con el polinomio deseado:

    1 2 3 4 (12)

  • 7/24/2019 6298312 r 173

    17/45

    17

    Se iguala trmino a trmino donde se tiene un sistema de ecuaciones con 4incgnitas y 4 ecuaciones.

    1 3 1 0 0 1 (13)

    2 3 1 1 3 01 10 2 14322311120 3 152132 4 (16)Teniendo en cuenta lo anterior se plantea en trminos de matrices el sistema paraencontrar los valores de .

    0 0 0 1100 0 0 1 11 0 2 10 1 2 0123= 1 1 1 2 2 1 3 24 Planteado el sistema en trminos de matrices se pueden calcular las constantesdel controlador mediante

    (17)Siendo A la matriz de los coeficientes y B el vector de las constantes.

    Finalmente se procede a generar la accin de control, la cual es de la forma: 3 1 1 3 2 0 1 1 22 (18)

  • 7/24/2019 6298312 r 173

    18/45

    18

    4. DISEO DEL CONTROLADOR PTIMO

    Cuando se habla de optimizacin, se hace referencia a que el vector de control

    permite que el ndice de desempeo se minimice o se maximice, segn seael caso, para que el sistema trabaje restringiendo alguna de sus variables. Tmeseel ndice de desempeo como una funcin cuyo valor se considera una indicacinde qu tanto se parece el desempeo del sistema real al desempeo del sistemadeseado.

    Teniendo en cuenta lo anterior, lo ideal sera optimizar la seal de control delcontrolador PID diseado en el capitulo anterior, sin embargo se decide disear elcontrolador en espacio de estados ya que de esta forma es ms viable optimizar elproceso.

    Se plantea el sistema de la forma:

    1 (19) (20)

    Donde:

    (Vector de estado)

    (Vector de salida)

    (Vector de entrada) (Matriz de estado) (Matriz de entrada) (Matriz de salida)

    (Matriz de transmisin Directa)La presencia de la variable k en los argumentos de las matrices

    ,

    ,

    ,

    y implica que estas matrices varan con el tiempo.Teniendo en cuenta (19) y (20) se plantea la ecuacin de estados y de salidasegn la forma cannica controlador para el sistema de segundo orden.

  • 7/24/2019 6298312 r 173

    19/45

    19

    [1121 ] 1 21 0 [12] 10 (21)

    1 2 [12]

    (22)

    Una vez teniendo el sistema en espacio de estados, es relevante abordar loscriterios de controlabilidad y observabilidad los cuales fueron introducidos por R.E.Kalman. Tienen un papel importante en el control ptimo de sistemasmultivariables.

    4.1 CONTROLABILIDAD

    Se dice que un sistema de control es de estado completamente controlable, si esposible transferir el sistema de un estado inicial arbitrario a cualquier estado

    deseado (tambin un estado arbitrario), en un perodo finito. Es decir, un sistemade control es controlable si todas las variables de estado pueden ser controladasen un perodo finito, mediante alguna seal de control no restringida. Si cualquierade las variables de estado es independiente de la seal de control, entoncesresulta imposible controlar esa variable de estado, por lo tanto el sistema sera nocontrolable [6].

    Para definir si un sistema es controlable o no, se utiliza la matriz de controlabilidad

    (Matriz de controlabilidad)Con base en lo anterior, se puede observar que todos los estados que pueden seralcanzados desde el origen, estn abarcados por las columnas de la matriz. Por lotanto, si el rango de la matriz es n, entonces, para un estado arbitrario ,existir una secuencia de seales de control no acotadas 0, ,1.En conclusin, el sistema es totalmente controlable siempre y cuando:

    Rango > Entendindose el rango de una matriz como el nmero de lneas de esa matriz(filas o columnas) que son linealmente independientes. Una lnea es linealmenteindependiente de una u otras cuando no se puede establecer una combinacinlineal entre ellas.

  • 7/24/2019 6298312 r 173

    20/45

    20

    4.2 OBSERVABILIDAD

    La observabilidad se ocupa del problema de determinar el estado de un sistema

    dinmico a partir de observaciones de los vectores de salida y de control en unnmero finito de perodos de muestreo. Un sistema es observable si, con elsistema en el estado , se puede determinar el estado a partir de laobservacin de los vectores de salida y de control a lo largo de un nmero finito deperiodos de muestreo.

    Para determinar si un sistema es observable se utiliza el criterio de la matriz deobservabilidad, el cual ser mostrado a continuacin:

    (Matriz de observabilidad)

    Se determina que el sistema es observable si el rango de la matriz es mayor oigual a n.

    4.3 CONTROL EN ESPACIO DE ESTADOS

    Suponiendo que todas las variables de estado son medibles y disponibles para larealimentacin. Se podr llevar a cabo el control por reubicacin de polos en lazo

    cerrado mediante una matriz de ganancia de realimentacin del estado apropiada,siempre y cuando el sistema est considerado completamente controlable.

    Luego de determinar que el sistema es controlable, se procede a realizar uncontrolador de la forma:

    (23)Donde:

    :Seal de control.

    Matriz de ganancia de realimentacin del estado. Vector de estados.

  • 7/24/2019 6298312 r 173

    21/45

    21

    El sistema en lazo cerrado se muestra en la figura 4.1, el cual tiene como accinde control la ecuacin 23.

    Figura 4.1 Sistema de control en lazo cerrado con Tomando como base la seal de control de la ecuacin 23 se decide aplicar alsistema en espacio de estados de la ecuacin 21. Sin embargo no todas lasvariables de estado se encuentran disponibles para medicin directa, por lo tantoes necesario estimarlas mediante el observador de estados.

    4.3.1 OBSERVADOR DE ESTADOS

    Un observador de estados, tambin conocido como estimador de estados, es unsubsistema del sistema de control que lleva a cabo una estimacin de las

    variables de estado, a partir de las mediciones de las variables de salida y control.Aqu el concepto de observabilidad analizado en la seccin 4.2 juega un papelmuy importante.

    Para designar el vector de estados observado se utiliza la notacin , siendoeste vector utilizado posteriormente para generar el vector de control ptimo.

    Figura 4.2 Diagrama esquemtico del observador de estados

  • 7/24/2019 6298312 r 173

    22/45

    22

    Con el fin de resolver este tipo de casos, un mtodo muy poderoso para laestimacin del vector de estado es utilizar un modelo dinmico del sistemaoriginal, como sigue:

    1 (24) (25)Donde las matrices , son las mismas que las del sistema original (19) y (20)respectivamente. As mismo, se supone que el sistema dinmico est sujeto a lamisma seal de control que el modelo original. Si las condiciones inicialesson iguales tanto para el sistema original como para el estimado, entonces elestado y el estado sern igualesLos modelos dinmicos de las ecuaciones 24 y 25 no utilizan la salida medida

    .El desempeo de este ltimo se puede mejorar si se utiliza la diferencia entrela salida medida y la salida estimada . Teniendo como base loanteriormente dicho, el vector de estados estimado 1queda de la siguienteforma:

    1 (26)Donde L sirve como matriz de ponderacin para la diferencia entre la salida real yla estimada, de esta forma se reduce la diferencia entre el modelo dinmico y elreal.

    4.3.2 FRMULA DE ACKERMAN

    Para determinar la matriz de ganancia de realimentacin de estados L, existe unmtodo llamado frmula de Ackerman, la cual se puede utilizar siempre y cuandose haya verificado con anterioridad que el sistema sea completamente observable,es decir, que el rango de la matriz de observabilidad sea mayor o igual al nmerode estados del sistema.

    A continuacin se muestra la frmula de Ackerman [6].

    001 (27)Donde es el polinomio caracterstico deseado de la dinmica de error y tienela siguiente forma:

  • 7/24/2019 6298312 r 173

    23/45

    23

    1 (28)Siendo los coeficientes que acompaan al polinomio deseado.Con base en lo anterior, es posible calcular L y de esta forma determinar el vectorde estados estimados de la ecuacin 26.

    En la figura 4.3 se puede observar la estructura del sistema de control porregulacin utilizando el observador de estados

    Figura 4.3 Sistema de control regulado mediante la realimentacin del estadoobservado

  • 7/24/2019 6298312 r 173

    24/45

    24

    4.4 CONTROL PTIMO CUADRATICO

    El problema que logra solucionar el control ptimo es el de saber dnde han de

    reubicarse los auto-valores del sistema para conseguir unos fines determinados,como puede ser la minimizacin de una matriz de costo J. Esta funcin de costo, ondice de desempeo, suele estar relacionada con la energa y por lo tanto con elcosto econmico del proceso.

    Una forma general del ndice de desempeo cuadrtico es la siguiente:

    =

    =

    (29)

    Donde: Matriz de pesos para los estados. n x n Matriz de pesos para las entradas. q x 1Como se puede observar en la ecuacin 29, el vector de seales de entrada hace parte del ndice de comportamiento, debido a que son las seales de entradalas que hacen que el sistema exija un determinado consumo energtico, por lotanto, las que generan un costo.

    De forma general, son los coeficientes de las matrices los que inciden sobrelos valores de las seales , entre ms grandes son los coeficientes deestas matrices, mejor optimizada se ve la variable a la que corresponden.

    Finalmente, se considera el sistema de la ecuacin 21 para hacer el controladorptimo adaptativo del lazo de control de la posicin angular el cual ser porregulacin de estados, seleccionando ste ya que la referencia siempre es cero. Elndice de desempeo J est dado por la ecuacin 29 y la ley de control queminimiza a J est dada por:

    (30)Por lo tanto, se observa que hasta el momento ya se tiene el vector de estadosestimados calculado mediante la ecuacin 26, lo que falta es la ganancia derealimentacin ptima de estados que est dada por:

    (31)

  • 7/24/2019 6298312 r 173

    25/45

    25

    Donde P es la matriz de covarianza ptima del error del estimador de estado,obtenida a partir de la ecuacin de Riccati.

    (32)

    4.4.1 DETERMINACIN DE LAS MATRICES Q Y R

    El clculo presentado para el controlador LQR no considera ninguna restriccin enlos valores de las variables de control ni las variables de estado. De manera quecuando por criterio del diseador se desea introducir restricciones para una ovarias variables de estado o de control, sin necesidad de aumentar la complejidaddel problema, se pueden tener en cuenta estas restricciones y proponer lasmatrices Q y R apropiadas para que en ningn caso, se alcancen los lmites

    permitidos de diseo o saturacin fsica de las variables de estado y de control. Ladeterminacin de estas matrices puede ser intuitiva en mayor o menor medidadependiendo del control que se quiera sobre cada variable; pero la magnitud delos valores asignados influye decisivamente en la respuesta de las acciones decontrol y de los estados [7].

    Ser necesario, por tanto, proponer diferentes valores para las matrices Q y R,simular el comportamiento del sistema y escoger aquel control para el cual lasvariables de control y de estado se mantengan dentro de los lmites permitidos dediseo.

    Lo primero que se debe tener en cuenta para determinar las matrices Q y Rconsiste en determinar la configuracin que tendrn dichas matrices, estaconfiguracin depende principalmente del orden del sistema, el cual determinar eltamao de la matriz Q y de la cantidad de seales de control se determinar eltamao de la matriz R.

    Para este sistema se utilizan unas matrices Q y R con las siguientesconfiguraciones:

    Q diagonal

    11 0 0 (33)

  • 7/24/2019 6298312 r 173

    26/45

    26

    R diagonal

    11 0

    0 (34)

    En donde qii representa el peso que se le da al estado xiy rii representa el pesoque se le da a la seal de control.

    Los valores Q y R deben ser siempre positivos o cero. El conocimiento que seposea del sistema resulta siempre fundamental en la seleccin de estas matrices.

    Aun as, es conveniente calcular diferentes seales de control K, con base endistintos valores para las matrices Q y R, y verificar su efectividad mediantesimulacin.

    Una ventaja importante del control LQR es que, independiente al valor de lasmatrices Q y R, se preserva la estabilidad asintnica y la robustez del controlador.

    Para la determinacin de las matrices Q y R despus de tener en cuenta loanterior, no existen mtodos analticos simples que ayuden al diseador a definirlos valores que harn parte de dichas matrices, las cuales estn en funcin delsistema, del control que se desee realizar y de los esfuerzos de las variables decontrol.

    De modo que no existe ms opcin que proponer unas matrices Q y R, calcular elcontrolador y comprobar el comportamiento del sistema en lazo cerrado mediante

    simulacin. Luego verificando los resultados, se modifican los valores de lasmatrices, se recalcula el controlador y se simula de nuevo. Este proceso se repiteel nmero de veces necesario hasta llegar al comportamiento de diseoespecificado del sistema. En conclusin, se trata de un proceso iterativo, en dondeel conocimiento de la planta, por parte del diseador puede ser decisivo a la horade reducir el nmero de iteraciones. El proceso de simulacin, efectuado con unaherramienta informtica (Matlab), es simple pero puede ser extenso y tedioso entrminos de tiempo cuando hay que realizar un nmero elevado de simulaciones.

  • 7/24/2019 6298312 r 173

    27/45

    27

    4.4.2 CONTROL EN ESPACIO DE ESTADOS CON GANANCIA ENLAZO DIRECTO

    Para el caso del lazo de control de la posicin traslacional, se emplea el controlptimo cuadrtico mencionado anteriormente pero se le adiciona al sistema unaganancia en lazo directo, por lo tanto la accin de control en este caso sera de laforma:

    (35)Donde se calcula aplicando el teorema del valor final a la ecuacin en lazocerrado, quedando de la siguiente manera:

    + (36)En la figura 4.4, se muestra el sistema de control ptimo adaptativo sobre elsistema en espacio de estados con observador de estados y ganancia en lazodirecto.

    Figura 4.4 Sistema de control en lazo directo mediante la realimentacin delestado observado

  • 7/24/2019 6298312 r 173

    28/45

    28

    5. IMPLEMENTACIN Y RESULTADOS

    5.1 ALGORITMO DE PROYECCIN

    Se disea el algoritmo de identificacin de la ecuacin 4 para un sistema desegundo orden donde:

    1 1212 1 1201

    0 . 1

    Para el algoritmo es necesario tener una entrada

    , y como en este caso slo se

    pretende identificar se procede a generar una seal de control arbitraria. 0.5Teniendo claras las variables del algoritmo se procede a simular la identificacindel sistema, donde es necesario hacer uso de herramientas del toolboxSimMechanics como son losjoint sensor, los cuales se conectan al diagrama debloques para obtener la salida y tambin el joint actuator para la entrada.

    Figura 5.1 Obtencin de entradas y salidas del sistema

    Una vez diseado el algoritmo y organizada la interfaz, como es el caso de los

    visualizadores, se procede a identificar el sistema.

  • 7/24/2019 6298312 r 173

    29/45

    29

    Figura 5.2 Parmetros del sistema mediante proyeccin

    Figura 5.3 Convergencia entre las salidas reales y las estimadas

    Se aplic un controlador proporcional cualquiera ya que la intencin es verificarque el algoritmo de proyeccin converja, lo cual se puede comprobar en lafigura 5.3.

  • 7/24/2019 6298312 r 173

    30/45

    30

    5.2 ALGORITMO DE MNIMOS CUADRADOS

    Bsicamente el procedimiento para implementar este algoritmo es igual al anterior,

    lo nico es que para hallar el vector es necesario calcular previamente ,como lo indican las ecuaciones 5 y 6.En la figura 5.4 se puede observar en el bloque de visualizacin de SimuLink, laconvergencia entre los valores estimados y los valores reales y en la figura 5.5 losparmetros identificados.

    Finalmente se decide identificar el sistema con el algoritmo de mnimos cuadradosya que converge ms rpido y adems la matriz ,ayuda para que el algoritmono sea tan sensible al ruido.

    Figura 5.4 Convergencia entre salidas estimadas y reales

  • 7/24/2019 6298312 r 173

    31/45

    31

    Figura 5.5 Identificacin de parmetros mediante mnimos cuadrados

    5.3 CONTROL PID ADAPTATIVO

    Una vez calculadas las constantes del controlador PID adaptativo mediante elsistema de matrices (17) el cual para el polinomio caracterstico se reubicaron lospolos en un valor de 0.5. Se procede a generar la accin de control de la ecuacin(18), de esta forma se puede implementar en el software SimuLink, all se haceuso del bloque llamado matlab function, dicho bloque es de gran ayuda, ya que es

    posible programar la etapa de identificacin y de control mediante cdigo, y estosimplifica el programa debido a que las operaciones entre vectores y matrices nonecesariamente se hacen con bloques. En la figura 5.6 se muestran los bloquesutilizados para la implementacin del controlador.

    Figura 5.6 Implementacin de control PID adaptativo.

  • 7/24/2019 6298312 r 173

    32/45

    32

    Teniendo en cuenta el sistema, la referencia para el ngulo siempre va a ser cero,por lo tanto se coloc una constante, mientras que para la distancia se coloc unafuncin escaln, la cual se vara para probar el sistema.

    En la figura 5.7 se muestra la respuesta del sistema con referencias en 0 y -120para el ngulo y la distancia respectivamente, adems en la figura 5.8 se muestrael sistema en la referencia seleccionada.

    Figura 5.7 Respuesta del sistema

    Figura 5.8 Respuesta del sistema simulado

  • 7/24/2019 6298312 r 173

    33/45

    33

    5.4 CONTROL PTIMO CUADRTICO

    Para definir la seal de control ptima, se muestra el diagrama de bloques de lafigura 5.9

    Figura 5.9 Diagrama de bloques control ptimo

    Con base en el anterior diagrama de bloques se implementa el control ptimodescrito en el captulo 4, en el cual se muestran las respuestas a la seleccin dediferentes matrices de peso

    , las cuales actan sobre la seal de control de

    las ecuaciones 30 y 35.

  • 7/24/2019 6298312 r 173

    34/45

    34

    Seleccionando las matrices como identidad, se obtuvo la siguienterespuesta.

    Para el ngulo.

    1 00 1 1Para la distancia.

    1 00 1 1

    Figura 5.10 Respuesta del sistema con matrices de pesos identidad

    Se puede observar en la figura 5.10 que aunque la respuesta es mejor que en elcaso del controlador PID de la figura 5.7, se siguen presentando sobre picos, porlo cual se decide modificar los valores de las matrices

    llegando a una mejor

    respuesta como se muestra a continuacin.

  • 7/24/2019 6298312 r 173

    35/45

    35

    Para el ngulo.

    0.001 00 0.001

    0 . 0 1Para la distancia. 0.001 00 0.001 1

    Figura 5.11 Respuesta del sistema con matrices Q y R seleccionadas

    Finalmente en la figura 5.11 se observa que con dichas matrices el sistemaresponde mejor ante las referencias y ya se acentan mejor las seales conrespecto a la figura 5.10.

  • 7/24/2019 6298312 r 173

    36/45

    36

    5.5 IMPLEMENTACIN DEL CONTROL PTIMO SOBRE UNAPLANTA FSICA

    Con la finalidad de probar uno de los algoritmos de control ptimo cuadrtico, se

    decidi construir una planta para el control de ngulo utilizando la herramienta deLEGO MINDSTORMS NXT, la cual, mediante el software LabVIEW de NationalInstruments permite llevar a cabo el procedimiento.

    Primero que todo es necesario tener el toolkit de Lego instalado en el LabVIEW,ya que de lo contrario no sera posible crear la interfaz entre el computador y elsistema fsico. En la figura 5.12 se muestra la planta, la cual consta de unservomotor como elemento de accin, y un giroscopio para medir el ngulo,adems del ladrillo NXT. Seguidamente en la figura 5.13 se muestra el mismosistema pero en el software.

    Figura 5.12 Planta para control de ngulo construida con NXT

  • 7/24/2019 6298312 r 173

    37/45

    37

    Figura 5.13 Visualizacin de la planta en el software LabView

    Teniendo en cuenta la figura 5.13, para medir el ngulo es necesario integrar lasalida del giroscopio ya que ste mide es la velocidad angular, por otro lado esnecesario crear un umbral para que la medida no tenga tanto ruido.

    Seguidamente se genera un ciclo de tiempo, el cual corre el programa segn seael tiempo de muestreo establecido. Una vez teniendo la interfaz definida seprocede a generar el algoritmo de identificacin y de control en una herramientallamada Mathscrip, siendo esta ltima una ventana donde es posible programar enlenguaje C.

    Finalmente se disea el control en espacio de estados con ganancia en lazodirecto, optimizndolo con la funcin de costo de la ecuacin 29 sobre la accin decontrol de la ecuacin 35.

    Figura 5.14 Diseo del controlador en LabVIEW

  • 7/24/2019 6298312 r 173

    38/45

    38

    Figura 5.15 Panel frontal en LabVIEW

    En la figura 5.15 se puede observar la respuesta de la planta al implementar elcontrol ptimo cuadrtico en espacio de estados con ganancia en lazo directo.

  • 7/24/2019 6298312 r 173

    39/45

    39

    CONCLUSIONES

    - Se llev a cabo con xito el objetivo principal del trabajo el cual consista endisear un controlador ptimo adaptativo para un sistema de pnduloinvertido multivariable.

    - La identificacin de los parmetros del sistema fue fundamental paradisear el proceso, ya que estos parmetros son los que hacen parte delsistema en espacio de estados.

    - A pesar de que el control PID adaptativo que se dise en el captulo 3llevaba las variables a la referencia, fue necesario representar el sistema enespacio de estados para aplicar la tcnica de control ptimo cuadrtico.

    - Es importante concluir que el control ptimo se puede implementar para

    cualquier sistema, es decir, no tiene restriccin alguna pudindoseimplementar a sistemas lineales, no lineales, variantes e invariantes en eltiempo y multivariables.

    - Teniendo en cuenta que el control ptimo cuadrtico necesita realimentarlas variables de estado, es necesario medir cada una de dichas variables,sin embargo en muchos casos no se poseen los instrumentos de medida osimplemente se hace imposible medirlas, por lo tanto es all donde se hacenecesario recurrir a un observador de estados el cual mediante las salidas yentradas del sistema permite estimar las variables de estado.

    - Debido a que no se cuenta con una tcnica precisa para determinar las

    matrices de restriccin es necesario optar por el mtodo desintonizacin prueba y error, que a pesar de ser un poco tedioso permiteencontrar valores acertados.

    - Se puede concluir que el control ptimo mejor la respuesta del sistemacontrolado previamente mediante un PID. Siendo las tcnicas de controlmoderno unas herramientas muy potentes para implementar en cualquiersistema de la industria.

    - El tiempo de muestreo es un factor muy importante a la hora de simular eimplementar, ya que siendo ste muy grande la accin de control tendrretardos y el resultado no ser el esperado.

  • 7/24/2019 6298312 r 173

    40/45

    40

    RECOMENDACIONES

    - Como el diseo del controlador ptimo es la parte ms importante para estetrabajo, se hace fundamental el seleccionar unas matrices Q y Radecuadas, y es all donde es determinante conocer el comportamiento delsistema, ya que como no hay restricciones definidas a la hora de escogerlos valores de estas matrices, se pueden cometer errores que generenacciones de control y de estado que no mantengan estas variables dentrode los lmites de diseo permitidos. De igual forma, es recomendableseleccionar suficientes valores y hacer las respectivas simulaciones,encontrando as aqullos que entregan las mejores respuestas conrespecto a las necesidades y exigencias que son requeridas; teniendo en

    cuenta la relacin entre gasto energtico y respuesta del controlador.- En la implementacin de los controladores en el programa de simulacin,se present un inconveniente con la respuesta del sistema, ya que elpndulo no responda bien ante las referencias que se le ponan. Esteproblema era producto de un error en las unidades de la seal de entrada,que teniendo en cuenta las dimensiones con las que fue diseada la planta,eran desproporcionadas y por lo tanto no haba forma de que el controladormantuviera la planta dentro de los parmetros requeridos. Por lo tanto, sesugiere realizar un diagrama que permita tener presentes estos aspectos,ya que si bien en algunos casos no son fundamentales, en otros pueden

    determinar que un sistema funcione o no adecuadamente.- Implementar los controladores de posicin angular y posicin traslacional

    sobre una planta fsica eran una de las ideas a realizar, pero debido a unproblema de retardo que se presentaba con la comunicacin entre lacomputadora y el Lego, slo fue posible implementar el controlador para laposicin angular. Se recomienda tener en cuenta el mtodo que se quiereusar para una comunicacin entre sistemas, ya que si bien en la simulacinambos controladores funcionaban correctamente, en la planta fsica no seobtuvieron los mismos resultados.

  • 7/24/2019 6298312 r 173

    41/45

    41

    6. ANEXOS

    6.1 CDIGO DE MNIMOS CUADRADOS EN MATLAB FUNCTION

    function[u,x,yes] = fcn(r,y)%#codegen

    persistentu1 u2 e1 e2 teta y1 y2 pifisempty(u1)

    u1=0;u2=0;e1=0;e2=0;teta=[1;1];y1=0;y2=0;

    p=100*eye(4);

    endc=1;fi=[-y1; -y2;u1; u2];teta=teta+(fi*p/(c+fi'*p*fi))*(y-fi'*teta);p=p-p*fi*fi'*p/(1+fi'*p*fi)x=teta;yes=(fi'*teta);

    e=r-y;a1=x(1,1);a2=x(2,1);b0=x(3,1);b1=x(4,1);u = 0.5*e;

    ifu>=3;u=3;

    endifu

  • 7/24/2019 6298312 r 173

    42/45

    42

    6.2 CDIGO DE CONTROL PID ADAPTATIVO

    function[u,x,yes] = fcn(r,y)%#codegen

    persistentu1 u2 e1 e2 teta y1 y2 pifisempty(u1)

    u1=0;u2=0;e1=0;e2=0;teta=[-1.09;-0.9;1;-0.05];y1=0;y2=0;p=100*eye(4);

    endteta=teta+p*fi/(1+fi'*p*fi)*(y-fi'*teta);p=p-p*fi*fi'*p/(1+fi'*p*fi);x=teta;yes=(fi'*teta);e=r-y;a1=x(1,1);a2=x(2,1);b0=x(3,1);b1=x(4,1);

    d1=0.5;d2=0.5;d3=0.5;d4=0.5;

    T=[b0 0 0 1; b1 b0 0 (a1-1);0 b1 b0 (a2-a1); 0 0 b1 -a2 ];D=[(d1+1-a1);(d2-a2+a1);(d3+a2);d4];C=inv(T)*D;C0=C(1,1);C1=C(2,1);C2=C(3,1);C3=C(4,1);

    u=((-(C3-1)*u1)+C3*u2+C0*e+C1*e1+C2*e2);

    ifu>=1;u=1;

    endifu

  • 7/24/2019 6298312 r 173

    43/45

    43

    6.3 CDIGO DE CONTROL PTIMO ADAPTATIVO

    function[u,x,yes] = fcn(r,y)%#codegen

    persistentu1 u2 e1 e2 teta y1 y2 pifisempty(u1)

    u1=0;u2=0;e1=0;e2=0;teta=[-1.09;-0.9;1;-0.05];y1=0;y2=0;p=100*eye(4);

    endteta=teta+p*fi/(1+fi'*p*fi)*(y-fi'*teta);p=p-p*fi*fi'*p/(1+fi'*p*fi);x=teta;yes=(fi'*teta);

    e=r-y;a1=x(1,1);a2=x(2,1);b0=x(3,1);b1=x(4,1);

    G=[-a1 -a2; 1 0];H= [1;0];C=[b0 b1];Q=[0.001 0;0 0.001];R=0.01;

    coder.extrinsic('acker','dlqr');k=dlqr(G,H,Q,R);%k=acker(G,H,[0.5,0.5]);L=acker(G',C',[0,0])';xes1=G*xes1(:)+H*u1+L*(y-(C*xes1(:)));

    if(C*F*H)==0;Kg=1;elseKg=1/(C*F*H);end

    u=-k*xes1(:)+Kg*e;u=u(1,1);

    ifu>=0.2;u=0.2;

    end

  • 7/24/2019 6298312 r 173

    44/45

    44

    ifu

  • 7/24/2019 6298312 r 173

    45/45

    BIBLIOGRAFA

    [1] GIRALDO, Didier, TABARES, Ivn. Model reference adaptive control. 11THISPE/IEE/IFAC INTERNATIONAL CONFERENCE ON CAD/CAM, ROBOTICS,

    FACTORIES OF THE FUTURE: CARS & FOF, 1995.[2]GIRALDO, Didier, GIRALDO Eduardo. Teoria de Control Anlogo, Primeraedicin 2010.[3] SASTRY, Shankar, BODSON, Mark. Adaptive Control: Stability, Convergenceand Robutsness. PrenticeHall. USA. 1989.[4] GOODWIN G. , SIN, K. S. Adaptive Filtering,Prediction and Control. Prentice

    Hall, Inc. Englewood,New Jersey., 1984.[5] LOZANO, Leonardo, RODRGUEZ, Luis, GIRALDO, Didier. Diseo,implementacin y validacin de un controlador PID auto-sintonizado. Revista

    Tecno Lgicas. Enero-Junio 2012.[6] OGATA, K. Sistemas de control en tiempo discreto. Prentice-Hall, 2edicin,1996. Captulo 5,6 y 8.[7] BETANCUR, Carlos, TAFUR, Leonardo. Sintonizacin de un control ptimocuadrtico con computacin evolutiva para un puente gra. 2008. Captulo 4.