Transcript
Page 1: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante

sistemas híbridos.

Fernando Bote Ortega

Page 2: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

2

Índice

1. Objetivos ............................................................ 8

2. Introducción ...................................................... 9

2.1. Sistema hardware ........................................ 9

2.1.1. Motor lineal ............................................... 9

2.1.2. Péndulo invertido ........................................ 12

2.1.3. Instalación ................................................. 13

2.1.3.1. Motor lineal ............................................................... 14

2.1.3.2. Armario y panel de control ...................................... 15

2.1.3.3. Potenciómetro ........................................................... 16

2.1.3.4. Péndulo invertido ..................................................... 16

2.2. Software y conexión ..................................... 17

2.3. Sistemas híbridos ......................................... 20

2.3.1. Introducción .............................................. 21

2.3.2. Diferentes enfoques en el modelado y

análisis de sistemas híbridos .......................... 22

3. Modelado .......................................................... 27

3.1. Introducción ................................................ 27

3.2. Variables continuas y discretas ..................... 27

Page 3: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

3

3.3. Modelado de la parte continua ..................... 28

3.3.1. Modelo del carro ........................................ 29

3.3.2. Modelo no lineal ......................................... 37

3.3.3. Modelo de los rebotes .................................. 42

3.3.4. Modelo linealizado ...................................... 52

3.4. Modelado de la parte discreta ...................... 55

3.5. Integración de las variables continuas

y discretas ................................................... 56

4. Control .............................................................. 57

4.1. Estrategia global de control híbrido ............. 57

4.2. Alzamiento del péndulo ............................... 58

4.2.1. Impulso inicial ........................................... 58

4.2.2. Control de alzamiento ................................. 64

4.3. Equilibrio del péndulo ................................ 73

4.3.1. Introducción ............................................. 73

4.3.1.1. Principio de optimalidad ........................................ 74

4.3.1.2. Nota histórica .......................................................... 76

4.3.1.3. Control LQ discreto ............................................... 77

4.3.1.4. Transición [N – 1] → [N] ........................................ 77

4.3.1.5. Transición [N –2] → [N] ......................................... 79

4.3.1.6. Transición [k] → [N] .............................................. 80

4.3.1.7. Control LQ en tiempo continuo ............................ 83

4.3.1.8. Control LQ de Horizonte Infinito ......................... 85

4.3.1.9. Estimadores óptimos .............................................. 88

Page 4: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

4

4.3.1.10. Modelos de sistemas con ruidos ............................ 88

4.3.1.11. Filtro de Kalman discreto ..................................... 90

4.3.1.12. Notas ....................................................................... 99

4.3.2. Implementación del control LQG ................. 103

4.3.2.1. Diseño de control LQR .......................................... 103

4.3.2.2. Diseño del filtro de Kalman .................................. 108

5. Resultados ........................................................ 113

5.1. Simulación del modelo global ...................... 113

5.2. Ejecución en laboratorio del modelo global .. 118

6. Conclusiones y posibles extensiones .............. 123

ANEXO 1 ............................................................. 125

Bibliografía .......................................................... 131

Page 5: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

5

Índice figuras.

Figura 2.1 Representación de un motor lineal................................................... 10

Figura 2.2 Motor lineal con plataforma móvil.................................................. 15

Figura 2.3 Armario y panel de control............................................................... 15

Figura 2.4 Péndulo invertido............................................................................... 16

Figura 2.5 Pantalla ControlDesk........................................................................ 18

Figura 2.6 Diagrama de conexionado del motor lineal..................................... 20

Figura 3.1 Modelo usado en función del ángulo del péndulo........................... 28

Figura 3.2 Diagrama simulink para accionamiento del motor lineal.............. 29

Figura 3.3 Bloque Simulink del motor lineal..................................................... 30

Figura 3.4 Respuesta real del motor a un escalón............................................. 32

Figura 3.5 Diagrama de estados del carro.......................................................... 34

Figura 3.6 Modelo Simulink del carro................................................................ 36

Figura 3.7 Respuesta simulada del carro ante un escalón u=0.3...................... 36

Figura 3.8 Diagrama de fuerzas que actúan en el sistema................................ 37

Figura 3.9 Varilla con eje perpendicular por el centro..................................... 38

Figura 3.10 Varilla con eje perpendicular por uno de sus extremos............... 39

Figura 3.11 Diagrama de masas con respecto a un eje..................................... 39

Figura 3.12 Valor del péndulo apoyado sobre la izquierda.............................. 43

Figura 3.13 Valor del péndulo apoyado sobre la derecha................................. 43

Figura 3.14 Caída libre del péndulo hacia la izquierda.................................... 45

Figura 3.15 Caída libre del péndulo hacia la derecha....................................... 45

Figura 3.16 Zona de rebotes de la izquierda...................................................... 46

Figura 3.17 Modelo simulink del péndulo.......................................................... 49

Figura 3.18 Simulación de caída libre del péndulo hacia la izquierda............ 50

Figura 3.19 Simulación de la zona de rebotes izquierda................................... 50

Figura 3.20 Simulación normalizada.................................................................. 51

Figura 3.21 Modelo del autómata híbrido del péndulo..................................... 56

Figura 4.1 Péndulo girando................................................................................. 59

Figura 4.2 Modelo Simulink de impulso inicial................................................. 61

Figura 4.3 Impulso inicial de entrada................................................................. 62

Figura 4.4 Respuesta del sistema al impulso inicial........................................... 62

Page 6: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

6

Figura 4.5 Variación de la velocidad del carro ante el impulso inicial............ 63

Figura 4.6 Variación del ángulo del péndulo ante el impulso inicial............... 64

Figura 4.7 Modelo Simulink del controlador de alzamiento............................ 66

Figura 4.8 Modelo Simulink del comparador de entradas............................... 67

Figura 4.9 Ángulo para K=0.1............................................................................. 67

Figura 4.10 Ángulo para K=0.2........................................................................... 68

Figura 4.11 Ángulo para K=0.3........................................................................... 68

Figura 4.12 Ángulo para K=0.4........................................................................... 69

Figura 4.13 Modelo del controlador de alzamiento para el laboratorio.......... 69

Figura 4.14 Señal del ángulo con ruido............................................................... 70

Figura 4.15 Bloque compara ángulo.................................................................... 71

Figura 4.16 Respuesta real alzamiento para K=0.3........................................... 72

Figura 4.17 Respuesta real alzamiento para K=0.4........................................... 72

Figura 4.18 Posibles trayectorias de 1 a 8........................................................... 75

Figura 4.19 Evolución del estado en lazo cerrado.............................................. 82

Figura 4.20 Evolución de las ganancias.............................................................. 83

Figura 4.21 Evolución de los estados del sistema y los estimados.................... 99

Figura 4.22 Modelo Simulink del controlador LQG......................................... 103

Figura 4.23 Bloque cálculo de velocidad angular.............................................. 105

Figura 4.24 Velocidad angular para Impulso=10 y K=5.................................. 105

Figura 4.25 x5 para v = 1 m/s.............................................................................. 106

Figura 4.26 Esquema control LQR..................................................................... 107

Figura 4.27 Resultado simulación control LQR................................................ 107

Figura 4.28 Diagrama de bloques del filtro de Kalman.................................... 108

Figura 4.29 Medida del ruido de la señal de posición........................................ 109

Figura 4.30 Medida del ruido de la señal de velocidad..................................... 110

Figura 4.31 Medida del ruido de la señal de ángulo.......................................... 110

Figura 4.32 Esquema de control LQG................................................................ 111

Figura 4.33 Esquema Simulink del filtro de Kalman........................................ 111

Figura 4.34 Resultado simulación del control LQG.......................................... 112

Figura 5.1 Modelo global de simulación............................................................. 113

Figura 5.2 Diagrama Simulink del filtro de Kalman......................................... 114

Figura 5.3 Diagrama Simulink del bloque condiciones de cambio.................. 115

Figura 5.4 Diagrama Simulink para calcular el estado x5............................... 116

Page 7: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

7

Figura 5.5 Resultado de la simulación global.................................................... 117

Figura 5.6 Simulación de la señal de ángulo...................................................... 118

Figura 5.7 Modelo global para el laboratorio................................................... 119

Figura 5.8 Resultado fallido de ejecución del modelo global........................... 120

Figura 5.9 Resultado de ejecución del modelo global para K=0.4.................. 121

Figura 5.10 Resultado de ejecución del modelo global para K=0.3................ 122

Page 8: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

8

1. Objetivos. El objetivo del este proyecto es realizar un estudio del péndulo invertido sobre

vehículo móvil que se encuentra implementado en los laboratorios de automática de la

Escuela Superior de Ingenieros de Sevilla empleando un modelo de sistema híbrido que

modele su comportamiento .

Dicho estudio consistirá en una primera parte en la que se realice un modelado

matemático del sistema en cuestión, obteniendo las ecuaciones que lo describen y

realizando un modelo del mismo a partir de ellas, de forma que las variables teóricas

que se manejen tengan correspondencia con las variables que se emplearán en el modelo

físico.

En la segunda parte se realizará el diseñó de una estrategia de control usando la

herramienta Simulink de Matlab de tal forma que actuando sobre el carrito consigamos

en un primer momento el alzamiento del péndulo partiendo de un estado de reposo y

posteriormente mantener la verticalidad del mismo.

Page 9: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

9

2. Introducción.

2.1. Sistema hardware.

2.1.1. Motor Lineal.

Los motores eléctricos más comunes son motores rotatorios, es decir, que

generan el movimiento a lo largo de un eje. Cuando es requerido un motor de tipo lineal

son necesarios sistemas que trasformen el movimiento rotatorio en lineal. Estos

sistemas de transmisión del motor son generalmente compuestos de engranajes y

correas siempre sometidos a roces que causan perdidas de la potencia generada.

En un motor lineal se implementa el motor a lo largo de una dirección sin que

necesite ningún mecanismo de transmisión, esto conlleva una menor dispersión de la

potencia generada. Un ejemplo, una de las áreas en las que ha encontrado aplicación el

uso de motores lineales es en el transporte con monorraíl. En este tipo de transporte se

ha podido combinar la aplicación de propulsión mediante motores lineales con sistemas

magnéticos de levitación, debido al hecho de que tales motores no necesitan transferir al

suelo la potencia producida. El resultado es una fuerte disminución de las pérdidas por

roces y por eso un alto rendimiento.

A pesar de que el desarrollo de los primeros motores lineales se remonta al

último decenio del 1800, tales motores no han suscitado sustanciales intereses prácticos

antes del 1950. Hoy en día son siempre más empleados en campos de aplicación en los

que sean requeridos movimientos lineales de alta precisión de desplazamiento y

velocidad. Algunos de estos son las máquinas de desplazamiento, maquinas textiles,

puertas corredizas, sistemas ópticos, transporte monorraíl, etc.

Los motores lineales presentan ventajas y límites. Las principales ventajas son:

• Alta velocidad y precisión. El límite a la máxima velocidad depende del

cableado y del control electrónico.

• Respuesta rápida, gracias a la ausencia de transmisiones mecánicas.

• Fiabilidad.

Page 10: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

10

• Vida larga.

• Escasa necesidad de manutención.

• Robusteza.

• Extensión ilimitada. Con algunas configuraciones puede resultar bastante simple

la ampliación del recorrido del motor, pudiendo llegar a distancias grandes como

las de las monorraíles.

Los límites son:

• La fuerza de atracción entre las dos partes del motor puede ser de 2 a 5 veces

más grande que la fuerza horizontal de propulsión.

• La temperatura del motor conlleva limitaciones al rendimiento.

• El hierro que en algunos casos forma el núcleo alrededor del que son envueltas

las bobinas genera atracción, en caso de utilización con imanes, también si el

motor no está en funcionamiento.

Ilustramos brevemente los principios operativos de los motores lineales. La

física que está a la base es simple, se disfruta de la atracción entre polos magnéticos

iguales y la repulsiones entre polos diferentes. Este tipo de motores disfruta de los

mismos principios que los motores eléctricos rotatorios al punto que se puede ver un

motor lineal como uno rotatorio que haya sido abierto a lo largo de una generatriz y

extendido encima de un piano, como se ilustra en la figura.

Figura 2.1: Representación de un motor lineal.

Page 11: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

11

Los motores lineales son compuestos por dos partes que toman el nombre de

primario y secundario. El primario consta de un conjunto de bobinas de cobre a las que

se aplica una corriente para crear una fuerza electromagnética. Número y extensión de

las espiras determinan la fuerza del motor. El secundario es el componente que

reacciona a la fuerza electromotriz y consiste solamente en una serie de imanes

permanentes. Tanto el primario como el secundario pueden ser el elemento estacionario

o móvil.

Cuando una corriente pasa por una bobina crea un campo magnético entre las

dos partes del motor. Como resultado los imanes generan una fuerza sobre el conjunto

de bobinas y alternando oportunamente la corriente causan el moto lineal de la parte

móvil del motor. En la práctica a través del control de la corriente que circula en las

espiras, es decir del campo electromagnético, se puede obtener el motor lineal continuo

deseado.

Existen varios tipos de motores lineales:

• Según la forma:

Llano: la parte estática es un llano sobre el que se desliza la

móvil.

Tubular: la parte móvil se desliza sobre un núcleo central que la

atraviesa. Este tipo de motores aprovechan óptimamente el flujo

magnético pero presenta límites debidos a la necesidad de puntos

de apoyo en los extremos.

En U: la parte móvil pasa entre dos filas de imanes. Uno de los

inconvenientes de los motores lineales a imanes permanentes es

el fuerte campo magnético presente alrededor del motor, sobre

todo por motores llanos y tubulares con secundario en la parte

fija. Para la configuración en U el inconveniente se reduce

notablemente.

Page 12: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

12

• Con primario móvil o secundario móvil.

• En alternada síncrono o en alternada a inducción.

• Paso a paso.

• En continua con escobillas o sin escobillas.

Por último, otra cosa importante a tener en cuenta es el calor que se genera por

efecto Joule en las bobinas y que puede causar desde pérdidas de rendimiento a daños

irreparables, por eso muchas veces el implante necesita un sistema de refrigeración.

2.1.2. Péndulo Invertido.

Este sistema constituye un caso concreto de sistema físico en el que se ponen de

manifiesto importantes problemas, lo que ha hecho de él un banco de pruebas

(benchmark) para sistemas de control.

El interés en el estudio de este tipo de sistema radica en que, salvando las

particularidades de cada caso, su modelo matemático presenta una formulación basada

en ecuaciones diferenciales, que guarda cierta analogía con procesos reales de mayor

complejidad, como por ejemplo: el generador sincrónico conectado a un bus infinito y

el sistema de control de vuelo para aeronaves. Por tanto, su estudio sirve como una

primera aproximación a los problemas que plantean sistemas de mayor complejidad.

El control del péndulo invertido presenta una enorme variedad de problemas que

han hecho de él uno de los sistemas concretos para el ensayo de leyes de control más

analizados en estos últimos tiempos. Los primeros péndulos invertidos se construyeron

en los años 70, y aún hoy, treinta años después, se sigue experimentando con el péndulo

invertido y tratando de analizarlo desde un punto de vista teórico. Es notable que

después de tantos años aún no se haya conseguido un estudio unitario y satisfactorio de

dicho problema.

En el control del péndulo invertido se presentan básicamente dos problemas: el

problema de la estabilidad local en torno a la posición de equilibrio, que es análogo al

Page 13: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

13

problema del malabarista que pretende mantener un palo en la punta de un dedo; y el

problema de levantar el péndulo desde su posición de reposo hasta la posición en la que

se mantiene erguido hacia arriba. Este último problema se conoce con su denominación

inglesa de problema del swing up.

El primero de los problemas, el de la estabilización local, puede resolverse

satisfactoriamente mediante la linealización en torno a la posición de equilibrio. Sin

embargo, la ley de control así obtenida tiene un carácter exclusivamente local. Para

perturbaciones de una cierta magnitud el control del péndulo se pierde.

En el problema del swing up es necesario considerar todo el espacio de estados,

de modo que el problema no puede abordarse con una perspectiva local. Se trata, por

tanto, de un problema al que se aplican las consideraciones realizadas a lo largo de este

capítulo, relativas a la imposibilidad de linealizar el sistema y de tratarlo

exclusivamente en forma local. El problema del swing up es, por su propia naturaleza,

un problema no lineal que se desenvuelve en una amplia región del espacio y que, por

tanto, no admite una reducción local y hay que abordarlo con toda la problemática

inherente a su globalidad y a su no linealidad.

Por último, para terminar esta sección sobre el problema de control del péndulo

invertido, conviene resaltar que se puede considerar como un problema arquetipo de lo

que es la ingeniería. No existe un método universal para resolverlo, y ante él el

ingeniero tiene que desarrollar sus facultades imaginativas y creativas, combinando

diferentes métodos para resolver los distintos aspectos del complejo problema que

representa el control de este sistema, aparentemente simple, pero en realidad muy

complejo en sus formas de comportamiento.

2.1.3. Instalación.

La instalación sobre la que ha sido aplicado el control, presente en la planta baja

del Instituto da Automática y Robótica (IAR) de la Escuela Superior de Ingenieros de

Sevilla, consta de los siguientes elementos:

Page 14: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

14

• Motor lineal 1FN3 Siemens.

• Sistema óptico de medida lineal LC181 Heidenhein.

• Guías de rodamiento.

• Péndulo invertido.

• Potenciómetro VISHAY.

• Armario y panel de control.

• PC con tarjeta dSpace.

2.1.3.1. Motor Lineal.

El motor 1FN3 050-2W00-0AA de Siemens es un motor lineal síncrono a

imanes permanentes que puede alcanzar la velocidad de 373 m/min.

El primario es la parte móvil, es decir que en su interior se hallan las bobinas que

generan el campo electromagnético. Su dimensiones son 254*67*47.7 mm.

El secundario es compuesto da 21 imanes con 4 pares de polos cada uno de los

que mide 120*58*11.8 mm. La extensión total del secundario resulta ser 2520 mm.

Entre primario y secundario está presente un entrehierro de 1.3 mm.

Las guías LAS20ALZ de NSK-RPH miden 2985 mm.

La cabeza captadora del sistema de medida LC181 está fija en la parte móvil y

impone un limite de 120 m/min porque sea garantizado un correcto funcionamiento.

A continuación se muestra una fotografía del montaje que se encuentra en los

laboratorios. En el todavía no se ha montado la estructura de péndulo invertido que se

mostrará más adelante.

Page 15: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

15

Figura 2.2: Motor lineal con plataforma móvil que se encuentra

en los laboratorios de automática de la Escuela de Ingenieros.

2.1.3.2. Armario y panel de control.

El armario y panel de control contiene las protecciones, la distribución de

potencia, el cableado y los pulsadores. Además se encuentra aquí la unidad de

regulación SimoDrive 611 Universal de Siemens.

Figura 2.3: Armario y panel de control.

Page 16: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

16

Esa unidad es una tarjeta que funciona de interfaz directa con el motor además

que de unidad de regulación. Presenta bornes para el acceso directo a salidas y entradas

digitales y analógicas. La tarjeta está conectada por un lado al módulo que proporciona

la potencia al motor y al captador del sistema de medida, por el otro al PC. Las

conexiones con el PC son una directa a la puerta serie de ése a través del bus RS-232 y

la otra a través de los bornes con la tarjeta dSpace que se halla en el PC. Veremos este

aspecto más detalladamente luego.

2.1.3.3. Potenciómetro.

El potenciómetro VISHAY Spectrol 157-9002-103 OI nos ofrece una medida

del ángulo del péndulo. Posteriormente esa señal eléctrica la convertiremos mediante un

bloque de Simulink en una señal que irá desde pi/6 a -pi/6 que son los ángulos máximo

y mínimo respectivamente que puede alcanzar el péndulo invertido.

2.1.3.4. Péndulo invertido.

El péndulo invertido se coloca sobre la plataforma móvil fijándolo mediante

tornillos.

Figura 2.4: Péndulo invertido.

40 mm

10mm

Page 17: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

17

Como ya se ha dicho arriba el péndulo tiene como ángulo máximo y mínimo

respectivamente +pi/6 y –pi/6 con respecto a su vertical ya que tiene unos topes que

impiden que pueda inclinarse más.

2.2. Software y conexión.

El módulo SimoCom 611 Universal proporciona la interfaz directa al motor

además de funcionar como unidad de regulación. Esta tarjeta puede operar tanto como

regulador de posición como de velocidad, tiene un módulo de memoria no volátil

FEPROM para almacenar el firmware (software del sistema) y los datos del usuario.

Para acceder a la SimoCom 611 Universal como unidad de regulación se emplea

un software de la Siemens SimoComU que comunica con la tarjeta a través del bus

serial RS-232. Con SimoComU se pueden especificar los parámetros del motor

controlado, actualizar los parámetros internos del regulador, definir una secuencia de

desplazamiento y poner en marcha el seguimiento, hacer un diagnosis del sistema,

parametrizar las salidas y las entradas digitales y analógicas de la tarjeta, administrar las

alarmas, etc….

Además se puede cargar la configuración corriente en la FEPROM. A través de

SimoComU no se puede, sin embargo, controlar en tiempo real el sistema. Los dos tipos

de control pueden ser planteados y aplicados, pero no se puede obrar sobre ellos durante

su ejecución. Puede además ser empleado para desplazar el motor manualmente desde

PC.

Por lo que concierne el presente proyecto ese software ha sido útil para la

definición de las puertas de entrada y salida directas, de los parámetros de final de

carrera software y para la gestión de las alarmas que, una vez que se activan, inhiben el

funcionamiento del motor. Tales acciones no pueden ser efectuadas a través del modulo

que permite la aplicación del control, esto es, el dSpace.

Page 18: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

18

La dSpace DS1103 PPC es una tarjeta colocada en el PC. Está basada en el

procesador PowerPC 604e a 400 MHz y puede ser programada vía Simulink con la

propia librería a bloques RTI (Real-Time Interface).

El software que acompaña la dSpace, además de proporcionar la instalación de

los bloques Simulink de interfaz, permite diseñar paneles de control en manera simple y

intuitiva.

Veamos ahora el panel empleado:

Figura 2.5: Pantalla del ControlDesk desde la que podemos variar los parámetros

de control.

Tenemos un botón de habilitación del control (On/Off), input numéricos para la

plantear los valores de amplitud y frecuencia de la señal de colocación y de amplitud

para la ganancia del controlador de alzamiento. Hay además tres plotter:

1. Para la visualización en tiempo real de la velocidad y posición del carrito.

2. Para la visualización en tiempo real de la velocidad angular y ángulo del

péndulo.

Page 19: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

19

3. Para la visualización en tiempo real de la señal de control.

Una vez realizado, compilado y cargado en la CPU el modelo Simulink de

interfaz o control del motor, se puede usar el panel para modificar valores del modelo y

visualizar las señales en lectura desde el motor; todo en tiempo real. Particularidades

sobre como se ha aplicado el control, como el modelo Simulink a través del dSpace

serán presentadas más adelante.

Ilustramos brevemente para terminar este apartado, las conexiones entre la

tarjeta dSpace y SimoCom 611 Universal. En el panel de control hay conexiones a la

SimoCom 611. Las señales necesarias en nuestro caso son las 4 descritas después más la

tierra y una referencia por la salida del motor y han sido parametrizadas mediante

SimoComU. Como nota, la tarjeta dSpace dispone de seis conectores con 50 pines cada

uno: P1A y P1B analógicos, P2A y P2B digitales, P3A y P3B diferenciales.

Veamos las conexiones:

• La señal que llega al bloque convertidor analógico-digital DS1103ADC_C18 es

analógica y es la lectura de la velocidad real del motor. La conexión es entre el

borne SimoCom 611 Salidas Analógicas X441 16.A y el pin P1A 23

(convertidor analógico-digital canal 18). Además se ha conectado el borne de

referencia X441 15 al pin P1A 24 (tierra).

• Las dos señales digitales en entrada al motor llegan al bloque Simulink

DS1103BIT_OUT_G0, en particular a los bits 5 y 7. Estos bits son relativos a

P2A pin 19 y P2A pin 3, además la tierra es aquella de P2A pin 1. En este caso

pero las señales han valores de 0 V (bajo) y 4,6 V (alto), mientras en entrada a la

SimoCom 611 el nivel bajo tiene que ser entre -3 y 5 V y el nivel alto entre 15 y

30 V. Por eso es necesario amplificar las señales TTL en llagada desde la

dSpace; se emplea una tarjeta compuesta por dos negadores y un Darlington

alimentada con 24 V. Las señales en salida son amplificadas a los valores altos

de 16.5 V y entonces conexos a la SimoCom 611. En particular a los bornes del

Modulo Opcional de Bornes X422 identificados con I8 y I9 y la tierra en salida

de la tarjeta a la tierra de la SimoCom 611.

Page 20: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

20

• Para terminar la señal en salida del bloque DS1103DAC_C6 tiene un rango de

+/- 10 V (en realidad se utiliza sólo entre 0 y 10 V) y se halla en el conector P1A

pin 10 (convertidor digital-analógico canal 6). Esto es conectado al primer de los

bornes libre que se hallan en bajo en el panel. En realidad tal convertidor

amplifica por 10 la señal que llega de Simulink; por ejemplo si la señal en el

modelo es de 0.2, en el pin (y por eso también en entrada a la SimoCom 611)

hará 2 V.

Mostramos un esquema de las conexiones;

Figura 2.6: Diagrama de conexionado del motor lineal.

Las conexiones con los botones presentes en el panel, que permiten el

desplazamiento manual, han sido cortados para evitar conflictos.

2.3. Sistemas híbridos.

Los sistemas híbridos son una clase de sistemas dinámicos donde el

comportamiento a analizar es definido por la interacción de dinámicas continuas y

discretas. Debido a la complejidad y a la diversidad de los sistemas híbridos, es muy

Page 21: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

21

difícil que una herramienta se pueda aplicar a cualquier sistema y conservar las mismas

ventajas y propiedades.

Por está razón, actualmente no existe una herramienta o metodología general y

sistemática para la modelación de sistemas híbridos, como las existentes en la industria

de manufactura o procesos.

2.3.1. Introducción.

El término “sistema híbrido” es usado para definir una clase de sistemas con

comportamientos definidos por entidades o procesos de distintas características. Estos

sistemas contienen típicamente variables o señales que toman valores de manera

continua y variables discretas que toman valores dentro de un conjunto finito de

posibilidades.

Existen muchas razones para usar modelos híbridos para representar el

comportamiento dinámico de tales sistemas. Una razón importante es la reducción de

complejidad del modelo en orden, por ejemplo, en lugar de tener que representar las

relaciones dinámicas a partir de un conjunto de ecuaciones diferenciales no lineales de

orden superior, se puede representar el mismo sistema por un conjunto de ecuaciones

simples, obteniendo así modelos simples mediante una logística de conmutación entre

dichos modelos, usualmente la teoría de grafos; esta es la teoría más común en el

modelado físico de fenómenos.

En control, la conmutación entre sistemas dinámicos simples ha sido usada en la

práctica por muchas décadas. Los esfuerzos recientes en la investigación de sistemas

híbridos típicamente se centran en el análisis del comportamiento dinámico de los

mismos y tienen como meta el diseño de controladores con una estabilidad y

funcionamiento garantizados.

La mayoría de los procesos industriales se pueden considerar sistemas dinámicos

ya que sus salidas dependen de entradas y salidas anteriores. En la mayoría de las

industrias existen procesos que pueden ser del tipo continuo, tipo discreto y los que

Page 22: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

22

combinan ambos aspectos. Éstos últimos dan lugar a lo que se conoce como sistemas

dinámicos híbridos. Durante su operación, siempre será importante el poder realizar un

análisis y evaluación del desempeño de los procesos actuales para verificar si éstos

cumplen las especificaciones de acuerdo a lo planeado.

También, es importante el contar con una herramienta para realizar la

modelación de dichos sistemas. Esta herramienta debe auxiliar en la realización de una

simulación del modelo del proceso obtenido, con el fin de conocer y entender su

comportamiento ante diferentes condiciones o variaciones en la operación. Sin embargo,

en la actualidad, la mayoría de los métodos y herramientas utilizadas para el análisis,

modelación y simulación de procesos se encuentran orientados ya sea a procesos

continuos, o bien, a procesos basados en eventos discretos. La limitación de estas

metodologías y herramientas aparece cuando se aplican a un proceso con características

continuas y discretas, por ejemplo: los procesos batch donde en general no se puede

realizar una simulación en la cual se observe explícitamente la evolución dinámica tanto

de la entidad discreta como de la entidad continua así como la interacción que existe

entre ambas entidades.

2.3.2. Diferentes enfoques en el modelado y análisis de sistemas

híbridos.

Al observar la literatura, salta a la vista que existen muchos enfoques para el

modelado, análisis y síntesis de los sistemas híbridos. En términos generales, los

enfoques difieren en lo relativo al énfasis en las dinámicas continuas y discretas o en la

complejidad de las mismas, y en cuanto a si enfatizan los resultados de análisis y

síntesis, sólo el análisis o únicamente la simulación.

En un extremo del espectro se encuentran los enfoques en los que se abordan los

sistemas híbridos que representan extensiones de ideas teóricas de sistemas que se

describen por medio de ecuaciones diferenciales ordinarias para incluir tiempo y

variables discretas que presentan saltos, o extender los resultados a sistemas

conmutados.

Page 23: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

23

Típicamente, estos enfoques son capaces de manejar dinámicas continuas

complejas y enfatizan los resultados de estabilidad. En el otro extremo del espectro,

hallamos enfoques a los sistemas híbridos que están incorporados a los modelos y

métodos de la ciencia computacional, que representan extensiones de las metodologías

de verificación de los sistemas discretos a los sistemas híbridos.

Además, estos enfoques son capaces de manejar dinámicas discretas complejas

descritas por autómatas finitos y enfatizan los resultados de análisis (verificación) y las

metodologías de simulación. Existen metodologías adicionales que comprenden el resto

del espectro, las cuales combinan conceptos de los sistemas de control continuo

descritos por ecuaciones diferenciales o de diferencia lineales y no lineales y el control

supervisorio de los sistemas de eventos discretos que son descritos por autómatas finitos

y redes de Petri (Antsaklis et al., 1998).

Se han empleado diferentes paradigmas matemáticos para modelar sistemas

híbridos que revelan la diversidad de las investigaciones. (Tavernini, 1987) usó

autómatas diferenciales, en (Nerode et al., 1993) adoptaron un enfoque teórico de

autómatas para los sistemas compuestos de ecuaciones diferenciales ordinarias en

interacción y autómatas finitos, en (Antsaklis et al, 1993) adoptaron un enfoque de

sistemas dinámicos de eventos discretos; (Brockett, 1993) combinó las ecuaciones

diferenciales ordinarias y los fenómenos discretos para describir sistemas de

movimiento; (Back et al., 1993) proporcionan un marco de referencia adecuado para la

simulación numérica. En (Alur et al., 1993) usaron autómatas híbridos, una extensión

de los autómatas temporizados, y (Benveniste, 1998) propuso un marco de referencia de

comportamiento de modelado de sistemas híbridos con énfasis en la naturaleza de

composición y el uso de tiempo multiforme.

Los autómatas temporizados y los autómatas híbridos han sido usados por varios

investigadores para el modelado y verificación de los sistemas híbridos. (Alur y Dill,

1994) propusieron autómatas temporizados para modelar el comportamiento de los

sistemas de tiempo real en el tiempo.

Los autómatas temporizados se estudian desde la perspectiva de la teoría del

lenguaje formal. La teoría se aplica a la verificación automática de los requisitos de

Page 24: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

24

tiempo real de las máquinas de estado finito. En (Alur et al, 1995) introdujeron el marco

de referencia de autómatas híbridos como un modelo y el lenguaje de especificación

para sistemas híbridos.

En (Puri y Baraya, 1994) se presentan dos métodos para la verificación de

sistemas híbridos. El formalismo de modelado usado es el de los autómatas híbridos. La

verificación está basada en abstraer la dinámica continua del sistema híbrido mediante

dinámicas continuas más simples. (Desphande y Baraya, 1996) usan autómatas finitos

no determinísticos para modelar el comportamiento discreto e inclusiones diferenciales

para modelar el comportamiento continuo de los sistemas híbridos y se diseña un

controlador híbrido que produce trayectorias viables.

En (Branicky 1998) se presenta algunas herramientas de análisis para los

sistemas conmutados e híbridos. En particular, se usan funciones múltiples de Lyapunov

para el análisis de estabilidad de los sistemas conmutados y se usan sistemas de

funciones iterativas para la estabilidad de Lagrange. (Henzinger et al., 1998) presenta

una metodología para analizar algorítmicamente sistemas híbridos no lineales

traduciéndolos primero a autómatas híbridos lineales, y entonces usando herramientas

de verificación de modelos automatizados.

El autómata finito es un modelo de base para representar las dinámicas discretas

de los sistemas y su interacción con el medio. Como este modelo estaba muy limitado

se hizo una ampliación del mismo, introduciendo el tiempo en los estados discretos,

como una forma de interacción continua. Sin embargo, debido a la creciente demanda

de modelos más exactos y generales para los diferentes sistemas que tenían en su

estructura fenómenos tantos discretos como continuos, se realizó una extensión del

autómata finito, agregando aparte del tiempo en los estados discretos, ecuaciones

continuas, lo que dio lugar al autómata híbrido (Favela et al., 1998).

Así, el modelo del autómata híbrido está basado en una representación explicita

tanto de las dinámicas continuas del sistema como de las discretas. Las dinámicas

continuas se representan por modelos de estados mediante ecuaciones diferenciales que

las describen. Las dinámicas discretas se representan mediante el modelo del autómata

Page 25: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

25

finito, donde se observa explícitamente la lógica de conmutación del mismo (Favela et

al., 1999).

En (Balluchi et al., 2003) se introducen las nociones genéricas para determinar

los estados estables asintóticos en los sistemas híbridos y se dan las condiciones

suficientes para alcanzar un estado final. Dichas condiciones se pueden verificar aún si

alguno de los subsistemas continuos del sistema hibrido no es observable y se

relacionan con el tiempo de permanencia mínimo y máximo en cada estado.

En (Morari, 2005) se ilustra la evolución de los sistemas híbridos en el campo

del control, primero con algunos ejemplos históricos y luego en el área emergente de

sistemas híbridos. Resaltan los desarrollos teóricos y se menciona el software extenso

que ayuda a traer la teoría a ejemplos prácticos. Se presenta una perspectiva para los

sistemas híbridos en el área de control.

Se han propuesto numerosas herramientas de simulación para la simulación,

verificación e implementación de los sistemas híbridos. (Henzinger y Ho, 1995)

propusieron HYTECH como una herramienta automática para analizar sistemas

híbridos. (Taylor y Kebede, 1996) desarrollaron herramientas en MATLAB para el

modelado y simulación de sistemas híbridos. En (Daws et al., 1996) desarrollaron

KRONOS como plataforma de verificación para sistemas complejos en tiempo real. En

(Inihov et al., 1997) desarrollaron el programa Model Vision Studium como una

herramienta para la investigación numérica de sistemas híbridos utilizando la tecnología

de programación orientada a objetos.

SHIFT, propuesto por (Desphande et al., 1998) es un lenguaje de programación

para describir redes dinámicas de autómatas híbridos. Los modelos de SHIFT ofrecen el

nivel apropiado de abstracción para describir aplicaciones complejas como los sistemas

automatizados para autopistas cuya operación no puede ser capturada fácilmente por los

sistemas convencionales. (Fourlas et al., 2004) propone un marco de referencia para el

modelado de sistemas de potencia usando sistemas híbridos. El sistema se construye y

simula en el ambiente SimulinkTM y StateflowTM de MatLabTM.

Page 26: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

26

En el análisis del comportamiento dinámico de sistemas influenciados por la

ocurrencia de eventos discretos, hay dos importantes líneas de investigación: la que se

basa en el modelo del autómata y la que se basa en las redes de Petri. El interés de este

trabajo se basa en la modelación y análisis de sistemas híbridos mediante el modelo del

autómata híbrido continuo lineal invariante en el tiempo, propuesto por (Favela et al,

1999).

Page 27: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

27

3. Modelado.

3.1. Introducción.

Para modelar este sistema vamos a utilizar un modelo de sistema híbrido. Para

obtener dicho modelo debemos seguir los siguientes pasos:

1. Identificar las variables continuas y discretas que integran el

proceso.

2. Modelado de la parte continua: esto implica seleccionar el modelo

matemático que más se ajuste a las propiedades físicas del

comportamiento continuo a modelar. Hay que recordar que se pueden

utilizar desde ecuaciones diferenciales simples hasta muy complejas para

representar las dinámicas continuas.

3. Modelado de la parte discreta: aquí se determinan el número de

estados discretos necesarios basado en los diferentes modos de

comportamiento físico, las entradas y las salidas discontinuas.

4. Analizar las acciones de control. .

5. Integración de las variables continuas y discretas: utilizaremos el

modelo del autómata híbrido para realizar la integración de las entidades.

6. Análisis del sistema híbrido obtenido: con el fin de asegurar que todas

las condiciones previamente establecidas se cumplan.

7. Simulación del sistema y evaluación de resultados.

3.2. Variables continuas y discretas.

Variables continuas.

Page 28: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

28

• Posición del carro (plataforma móvil).

• Velocidad del carro.

• Ángulo del péndulo con respecto a la vertical.

Variables discretas.

• Activación de la fuerza que simula el comportamiento de los rebotes

ya que esta fuerza únicamente actúa cuando el ángulo es mayor que

el de los topes. Por tanto podemos suponer que tenemos un

interruptor que se activa cuando se cumple esta condición.

3.3. Modelado de la parte continua.

El modelo del sistema irá cambiando dependiendo de la zona en la que se

encuentre el péndulo en cada momento:

Figura 3.1: Modelo usado en función del ángulo del péndulo.

-pi/6 pi/6

0 -pi/36pi/36

Modelo de rebotes

Modelo de rebotes

Modelo no lineal

Modelo no lineal

Modelo lineal

Page 29: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

29

En la figura podemos observar como tendremos que utilizar tres modelos

diferentes para modelar el comportamiento del péndulo invertido en todas sus

posiciones además de para poder modelar el efecto de los rebotes. En cambio el modelo

del carro es exactamente el mismo en cualquiera de los estados ya que no depende de la

posición del péndulo.

3.3.1. Modelo del carro.

Para obtener el modelo del carrito utilizamos el siguiente esquema Simulink que

posteriormente cargamos en la tarjeta dSpace.

Figura 3.2: Diagrama Simulink para accionamiento del motor lineal.

Este esquema es el más simple pues únicamente tenemos en cuenta el motor.

Para ello en el laboratorio hemos atado el péndulo contra uno de sus topes para que no

influya en el comportamiento del carro.

En el esquema sólo hay dos bloques de interés, el input que introducimos

mediante el Signal Generador y el Motor Lineal. El resto de bloques nos sirve

únicamente para ver las salidas, las señales intermedias y para habilitar o deshabilitar la

entrada.

Page 30: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

30

Posteriormente, a partir de este esquema, iremos modificándolo y añadiéndole

todo lo demás por tanto lo que a continuación vamos a explicar sobre el bloque Motor

Lineal es valido para los esquemas Simulink que iremos analizando después de este

apartado..

El Signal Generator lo configuraremos para que nos ofrezca a la salida un

escalón. La amplitud de dicho escalón la podremos modificar después en el

ControlDesk.

En cuanto al bloque del Motor Lineal se muestra en la siguiente figura:

Figura 3.3: Bloque Simulink Motor Lineal.

En este esquema podemos observar los siguientes bloques:

• DS1103BIT_OUT_G0: es una puerta digital. Podemos observar como se emplean

dos bits (el 5 y el 7) de la puerta para proporcionar la dirección del movimiento

del motor. Cuando la señal de control asume valores positivos, el bit 5 se pone a

nivel alto mientras que el bit 7 permanece en nivel bajo, así se activa el

movimiento hacia la derecha (relacionado al bit 5). Viceversa si la entrada de

control tiene valores negativos, entonces el bit 7 se pone a nivel alto mientras el

Page 31: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

31

bit 5 permanece a nivel bajo causando un movimiento hacia izquierda

(relacionado al bit 7). Obviamente los dos bits, que no pueden estar

simultáneamente a nivel alto, serán nulos si la entrada es cero. En realidad

debido a los retrasos de conmutación 1/0 y 0/1 en las señales de entrada a la

unidad SimoDrive 611 Universal, dichas entradas podrían estar simultáneamente

a nivel alto. Por ejemplo, si el motor está parado podría ocurrir que a causa de

las pequeñas oscilaciones alrededor del valor 0 de la señal de salida del motor, el

controlador generara entradas de control demasiado pequeñas como para causar

algún movimiento del motor (a causa de la presencia de la fricción) pero que

generarían frecuentes y rápidas conmutaciones izquierda-derecha. Puede así

ocurrir que una señal no tenga suficiente tiempo para pasar a nivel bajo antes de

que el otro conmute a nivel alto, las señales están en ese caso ambas a nivel alto

y esto comportaría una parada del motor. Para evitar ese efecto indeseado hemos

introducido una zona muerta en la lectura, si la señal de salida del motor no

alcanza amplitudes apreciables, la señal de salida del bloque es fijada a cero.

Esto, además que eliminar la posible causa del bloqueo, evita que el motor una

vez parado oscile alrededor del punto de referencia. El bloque que realiza esto lo

estudiaremos más adelante.

• DS1103DAC_C6: convertidor digital-analógico. La señal de entrada del bloque es

la amplitud, es decir el valor absoluto, de la entrada de control. Este señal una

vez convertida es proporcionada al motor como amplitud de la entrada.

Prácticamente, si la señal de control no es nula, en cada instante llega al motor

un valor a nivel alto del bit 5 o 7 (el otro será a nivel bajo) que hace moverse al

motor en la dirección correcta y un valor analógico que proporciona la amplitud

de la entrada.

• DS1103ADC_C18: convertidor analógico-digital. Este bloque convierte la señal

analógica de posición proporcionada por el motor, la transforma a digital y la

ofrece a la salida del bloque.

• DS1103ADC_C19: convertidor analógico-digital. Este bloque convierte la señal

analógica de ángulo proporcionada por el potenciómetro, la transforma a digital

y la ofrece a la salida del bloque.

Page 32: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

32

• DS1103ADC_C20: convertidor analógico-digital. Este bloque convierte la señal

analógica de velocidad proporcionada por el motor, la transforma a digital y la

ofrece a la salida del bloque.

Veamos a continuación lo que ocurre cuando introducimos un escalón al motor:

1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5-5

0

5

10

15

20

25

30

35

40Respuesta real del carro ante un escalón.

tiempo

velo

cida

d

Figura 3.4: Respuesta real del motor a un escalón.

Observando la gráfica se ve que podemos aproximar el comportamiento de la

velocidad como un sistema de segundo orden subamortiguado.

A partir de esta gráfica obtendremos los datos necesarios para obtener la función

de transferencia de orden dos:

22

2

2)(

nn

n

sssF

ωδωω

++=

Las ecuaciones que utilizaremos para obtener los parámetros de la función de

transferencia son las siguientes:

Page 33: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

33

• ωπ

=pT

• 21 δ

ωω−

=n

donde:

• Tp = Tiempo de pico, es decir, tiempo que tarda la velocidad en alcanzar el valor

máximo que se obtiene en el sobrepico.

• ωn = frecuencia natural de los polos.

• δ = coeficiente de sobreoscilación.

Midiendo en la gráfica obtenemos que:

• Tp = 0.35 seg.

• δ = 0.5.

Por tanto operando con las ecuaciones:

3646.105.01

9760.81

8.976035.0

22n =−

=−

=

===

δ

ωω

ππωpT

Por tanto la función de transferencia que nos queda es:

107.424310.3646s107.4243)( 2 ++

=s

sF

Pero a nosotros lo que nos interesa es tener el sistema representado en espacio

de estados como sigue:

Page 34: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

34

Figura 3.5: Diagrama de estados del carro.

Partimos de la función de transferencia del sistema de segundo orden

subamortiguado.

xs

y

xs

xs

xu

ux

xy

ss

ssF

n

nn

nn

n

2

2

2

2

2

2

2

2

21)(

ω

ωδω

ωδω

ω

=

++=

⋅=++

=

A partir de estas ecuaciones en continua obtendremos las ecuaciones del estado

en el instante k+1 a partir del instante k.

)()()1(5

222

52

2

kxT

kxkx

xx

nm

n

ω

ω

=−+

=&

u

-2δωn

-ωn2

x

ωn2

x5=x/s x2=x/s2

y

Page 35: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

35

))()(()()21()1(

)()()(2)()1(

22

)()()1(

255

2555

252

22

55

52

22

kxkuTkxTkx

kukxkxT

kxkx

xxuxxux

kxTkxkx

mnm

nm

nnn

n

nm

−+−=+

+−−=−+

−−=−−=

+=+

δω

δω

δωωω

δω

ω

&

A estas ecuaciones hay que añadirle otra para describir la posición del carrito

que la obtendremos integrando la velocidad:

)()()1(

)()1()(

211

112

.

12

kxTkxkx

Tkxkxkx

xx

m

m

+=+

−+=

=

Por tanto el sistema del carro en espacio de estados es:

)(01.000

)()()(

8964.001.000742.110001.01

)1()1()1(

)(00

)()()(

21010

01

)1()1()1(

5

2

1

5

2

1

3

2

12

5

2

1

kukxkxkx

kxkxkx

kuTkx

kxkx

TTT

T

kxkxkx

mnmm

nm

m

⎥⎥⎥

⎢⎢⎢

⎡+

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−=

⎥⎥⎥

⎢⎢⎢

+++

⎥⎥⎥

⎢⎢⎢

⎡+

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−−=

⎥⎥⎥

⎢⎢⎢

+++

δωω

Comprobemos ahora mediante la simulación realizada en el Simulink si el

modelo se asemeja a la realidad. Para la simulación utilizamos el siguiente esquema:

Page 36: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

36

Figura 3.6: Modelo Simulink del carro.

Pulsamos play para realizar la simulación y comprobar si el resultado que

obtenemos coincide con el obtenido en el laboratorio:

0 0.25 0.5 0.75 1 1.25 1.5 1.75 2 2.25 2.50

5

10

15

20

25

30

35

40Respuesta simulada del carro ante escalón.

tiempo

velo

cida

d

Figura 3.7: Respuesta simulada del carro ante un escalón u=0.3.

Observamos como se comporta de forma bastante parecida a la respuesta real

que mostramos en la Figura 3.5 tanto en el tiempo de sobrepico como en el coeficiente

de sobreoscilación. Más adelante cuando expliquemos el modelo lineal del péndulo

veremos como introducimos estas ecuaciones para realizar el modelo global del sistema.

Page 37: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

37

3.3.2. Modelo no lineal.

En la siguiente figura se muestra el diagrama de fuerzas que actúan sobre el

péndulo:

Figura 3.8: Diagrama de fuerzas que actúan en el sistema.

M masa del carro m masa del péndulo Bc fricción del carro Bv fricción del péndulo L longitud al centro de masa del péndulo I inercia del péndulo F fuerza aplicada al carro X coordenadas de posición del carro Θ ángulo del péndulo respecto de la vertical

Para obtener la ecuación que describe el movimiento del péndulo, sumamos las

fuerzas perpendiculares al péndulo. Si resolvemos el sistema a lo largo de este eje nos

ahorramos un montón de álgebra. De esta forma obtenemos la siguiente ecuación:

FrvxmmgNP +=−+ )cos()sin()cos()sin(..

θθθθ

Para librarse de los términos P y N en la ecuación anterior, sumamos los

momentos sobre el centroide del péndulo para obtener la siguiente ecuación:

..)cos()sin( θθθ INlPl =+

Page 38: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

38

Combinando estas dos últimas ecuaciones obtenemos el siguiente resultado:

FrvxmlmI +=− )cos()sin(lg....

θθθ

Para calcular el momento de inercia del péndulo lo aproximaremos al momento

de inercia de una varilla. La fórmula general que se aplica es:

∫= dmxI 2

Donde dm es un elemento de masa situado a una distancia x del eje de rotación.

Vamos a calcular en primer lugar el momento de inercia de una varilla de masa

M y longitud L respecto de un eje perpendicular a la varilla que pasa por el centro de

masas.

Figura 3.9: Varilla con eje perpendicular por el centro.

La masa dm del elemento de longitud de la varilla comprendido entre x y x+dx

es:

El momento de inercia de la varilla es

Pero a nosotros lo que nos interesa es que el eje perpendicular a la varilla no

atraviese por el centro de masas sino por uno de los extremos tal y como se puede

observar en la siguiente figura:

Page 39: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

39

Figura 3.10: Varilla con eje perpendicular por uno de sus extremos.

Aplicando el teorema de Steiner, podemos calcular el momento de inercia de la

varilla respecto de un eje perpendicular a la misma que pasa por uno de sus extremos.

El teorema de Steiner es una fórmula que nos permite calcular el momento de

inercia de un sólido rígido respecto de un eje de rotación que pasa por un punto O,

cuando conocemos el momento de inercia respecto a un eje paralelo al anterior y que

pasa por el centro de masas.

El momento de inercia del sólido respecto de un eje que pasa por O es:

El momento de inercia respecto de un eje que pasa por C es:

Para relacionar IO e IC hay que relacionar ri y Ri.

Figura 3.11: Diagrama de masas con respecto a un eje.

Page 40: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

40

En la figura, tenemos que

MdII

mdxmdRmI

CO

iiciiiO

2

22 2

+=

++= ∑ ∑∑

El término intermedio en el segundo miembro es cero ya que obtenemos la

posición xC del centro de masa desde el centro de masa.

Por tanto aplicando este resultado a nuestro caso obtenemos el siguiente valor

para el momento de inercia del péndulo.

22222 )2(121

121 mllmmlmLmlII C +=+=+=

En la anterior ecuación hemos supuesto que la distancia al centro de masas es la

mitad de la longitud del péndulo. Así obtenemos finalmente:

2

34 mlI =

Tanto la fricción del carro con el suelo como la fricción de la varilla con el eje

vienen dadas por:

)(var

)(

θdtdBillaFr

dtxcdBFrcarro

v

c

=

=

A partir de todas estas ecuaciones obtenemos la fórmula que nos describe el

comportamiento de la velocidad angular del péndulo:

.....)cos()sin(lg θθθθ vBxmlmI +=−

Page 41: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

41

.....)sin(lg)cos( θθθθ vBmxmlI ++=

IB

gxI

ml v

.....

)sin()cos(θ

θθθ +⎟⎠⎞

⎜⎝⎛ +=

Estas ecuaciones nos describen el comportamiento de la aceleración angular del

péndulo de una forma continua pero nosotros necesitamos las ecuaciones discretas tanto

del ángulo como de la velocidad angular.

angularVelocidadkx

Angulokx

_)(

)(

.

4

3

≡=

≡=

θ

θ

( )

( )( ))())(sin())(cos()()()1(

)())(sin())(cos()(

)()1(

)()()1(

43344

433

44

433

kxBkxgkxkamlI

Tkxkx

IkxB

kxgkxkaI

mlT

kxkx

kxTkxkx

vm

v

m

m

+++=+

++=−+

+=+

Para calcular a(k) (aceleración del carrito) lo hacemos a través de la velocidad

del mismo de la siguiente manera:

mTkxkxka

carritoVelocidadxkx

)1()()(

_)(

22

.

2

−−=

==

Por tanto el estado del péndulo en la zona no lineal ya lo tenemos perfectamente

definido.

Page 42: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

42

3.3.3. Modelo de los rebotes.

Para simular el comportamiento del péndulo cuando llega a los topes e impacta

contra ellos, lo modelaremos mediante un muelle que aplica al péndulo una fuerza en

dirección opuesta a su movimiento, proporcional a la deformación y a la velocidad

angular. ])6/([ ωαπθ ⋅+±⋅−= rr KF

• Fr = fuerza del rebote.

• Kr = constante de rebote que penaliza la deformación, mientras más penetre

mayor será la fuerza de reacción.

• θ = ángulo del péndulo.

• α = constante de rebote que penaliza la velocidad angular, mientras mayor sea la

velocidad angular con la que llegue mayor será la fuerza de reacción.

• ω = velocidad angular del péndulo.

El ± π/6 de debe a que estos son los ángulos máximo y mínimo respectivamente.

Para que este modelo se ajuste a lo que ocurre realmente es obvio que la

constante de deformación debe ser muy grande para que así el péndulo penetre muy

poco y simule un rebote brusco como el que se produce al chocar contra los topes.

Esta fuerza actuará sobre la velocidad angular del péndulo por lo que la

ecuaciones que nos quedan son las siguientes:

( )( )

)(6

)(

)())(sin())(cos()()()1(

)()()1(

43

43344

433

kxkxkF

FTkxBkxgkxkamlI

Tkxkx

kxTkxkx

rr

rmvm

m

απ+⎟

⎠⎞

⎜⎝⎛ ±=

++++=+

+=+

Page 43: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

43

A continuación vamos a intentar calcular las constantes del rebote a partir de las

gráficas obtenidas en el laboratorio.

Para empezar comprobamos si el potenciómetro se encuentra bien calibrado.

Para ello situamos el péndulo a cada uno de los extremos y observamos la medida que

obtenemos:

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.07

0.0725

0.075

0.0775

0.08

0.0825

0.085

0.0875

0.09

0.0925

0.095

tiempo

angu

lo

Figura 3.12: Valor del péndulo apoyado sobre la izquierda.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.108

-0.1068

-0.1055

-0.1043

-0.103

-0.1017

-0.1005

-0.0993

-0.098

-0.0968

-0.0955

-0.0943

-0.093

tiempo

angu

lo

Figura 3.13: Valor del péndulo apoyado sobre la derecha.

Page 44: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

44

Aplicando en Matlab un programita para calcular la media de cada una de estas

gráficas obtenemos que:

• Izquierda = 0.0835

• Derecha = -0.1000

Comprobamos como el potenciómetro se encuentra descalibrado y las medidas

de ángulo que nos ofrece no se encuentran entre ± π/6. Para que esto sea así tendremos

que restarle una constante y después normalizarlo a ± π/6 dividiendo entre una norma.

Veamos a continuación como obtener dicha constante y norma:

( ) ( )1752.0

6

21.00835.0

6

2

0083.02

1.00835.02

tan

=+

=−

=

−=−

=+

=

ππ

DerechaIzquierdaNorma

DerechaIzquierdateCons

Por tanto para obtener el ángulo entre ± π/6 aplicamos la siguiente fórmula:

NormateConsMEDIDO

ONORMALIZADtan−

θ

El método que vamos a seguir para obtener las constantes el siguiente:

• Obtener la gráfica del péndulo en caída libre hacia cada uno de los

extremos con la sucesión de rebotes contra los topes. Hay que decir que

para obtener las constantes utilizaremos las gráficas del ángulo sin

normalizar, ya que para esta no nos es necesario la normalización.

• Realizar un zoom sobre dicha zona de rebotes.

• Obtener a partir de dichas gráficas una serie de puntos que se encuentren

en la zona de θ > π/6 ó θ < π/6.

Page 45: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

45

• A partir de esos puntos y con los ecuaciones despejar dichas constantes

del sistema de ecuaciones y resolverlo.

Como hemos dicho obtenemos las gráficas de la caída libre:

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.01

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

tiempo

angu

lo

Figura 3.14: Caída libre del péndulo hacia la izquierda.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.12

-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02

tiempo

angu

lo

Figura 3.15: Caída libre del péndulo hacia la derecha.

Page 46: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

46

Realizamos el zoom sobre la zona de rebotes sobre la gráfica de caída libre hacia

la izquierda:

2.5 3 3.5 40.06

0.0835

tiempo

angu

lo

Figura 3.16: Zona de rebotes de la izquierda.

Podemos observar como al producirse el rebote, durante unos instantes,

aproximadamente dos tiempos de muestreo, el valor del ángulo es mayor que 0.0835

que era el valor máximo impuesto por el tope de la izquierda.

Ahora analizamos las ecuaciones para ver el número puntos que nos es necesario

obtener para despejar las constantes.

Dichas ecuaciones se corresponderán con las ecuaciones de la velocidad angular

tal y como se realiza a continuación ya que es sobre la velocidad angular sobre la que

actúa el muelle imaginario con el que hemos simulado los rebotes.

( ) rmvm FTkBkgkkamlI

Tkk +⎟

⎠⎞

⎜⎝⎛ +++=+ )())(sin())(cos()()()1(

...θθθθθ

Page 47: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

47

Al realizarse estas pruebas con el carrito completamente inmovilizado por unos

topes que se han colocado para que no afecten las fuerzas de interacción del carro sobre

el modelo del péndulo se obtiene lo siguiente:

rmvm FTkBkmI

Tkk +⎟

⎠⎞

⎜⎝⎛ ++=+ )())(sin(lg)()1(

...θθθθ

Como vamos a calcularlo en la parte izquierda:

⎟⎠⎞

⎜⎝⎛ ++−= )()

6)((

.kkkF rr θαπθ

Al ser dos las constantes que queremos obtener necesitaremos al menos dos

ecuaciones para hallarlas, por lo que la usaremos en dos instantes de tiempo

consecutivos.

)1(6

)1()1())1(sin(lg

)1()2(

)(6

)()())(sin(lg

)()1(

....

....

+−⎟⎠⎞

⎜⎝⎛ ++−+++++=+

−⎟⎠⎞

⎜⎝⎛ +−++=+

kTkkTkIBT

kImT

kk

kTkkTkIBT

kImT

kk

mrmvmm

mrmvmm

θαπθθθθθ

θαπθθθθθ

Teniendo en cuenta que:

m

m

m

Tkkk

Tkkk

Tkkk

)1()2()2(

)()1()1(

)1()()(

.

.

.

+−+=+

−+=+

−−=

θθθ

θθθ

θθθ

Observamos que nos hacen falta al menos cuatro puntos para poder resolver el

sistema al menos dos de ellos contenidos en la región de los rebotes.

Page 48: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

48

Dichos puntos serán los siguientes:

• 0752.01 =θ

• 07956.01 =θ

• 0835.01 =θ

• 0854.01 =θ

Estos puntos han sido obtenidos de la gráfica de la caída libre hacia la izquierda

que representamos en la figura 3.17.

Por tanto despejando lo que nos queda es:

⎥⎥⎥

⎢⎢⎢

+−+++

−++⎥

⎤⎢⎣

⎥⎥⎥⎥

⎢⎢⎢⎢

+−⎟⎠⎞

⎜⎝⎛ ++−

−⎟⎠⎞

⎜⎝⎛ +−

=⎥⎥

⎢⎢

+

+

)1())1(sin(lg

)1(

)())(sin(lg

)(

)1(6

)1(

)(6

)(

)2(

)1(..

..

.

.

.

.

kIBT

kImT

k

kIBT

kImT

kk

kTkT

kTkT

k

kvmm

vmm

r

mm

mm

θθθ

θθθ

αθπθ

θπθ

θ

θ

⎥⎥⎥

⎢⎢⎢

+++−+−+

+−−+

⎥⎥⎥⎥

⎢⎢⎢⎢

+−⎟⎠⎞

⎜⎝⎛ ++−

−⎟⎠⎞

⎜⎝⎛ +−

=⎥⎦

⎤⎢⎣

)1())1(sin(lg

)1()2(

)())(sin(lg

)()1(

)1(6

)1(

)(6

)(

...

...1

.

.

kIBT

kImT

kk

kIBT

kImT

kk

kTkT

kTkTkvmm

vmm

mm

mmr

θθθθ

θθθθ

θπθ

θπθ

α

Realizando todo esto mediante una rutina diseñada en matlab obtenemos el valor

de estas constantes:

• 4.4714=rk

• 6.54=α

Una vez que hemos hallado estas dos constantes debemos comprobar mediante

simulación si efectivamente el comportamiento de las ecuaciones es aproximadamente

igual al que se produce en la realidad. Esto lo realizaremos mediante el Simulink tal y

como se muestra en el siguiente esquema.

Page 49: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

49

Figura 3.17: Modelo simulink del péndulo.

En el diagrama el MATLAB Function Pendulo es un programa que simula el

comportamiento del péndulo con sus ecuaciones no lineales y añadiendo además la

simulación de los rebotes cuando el ángulo es superior a los máximos permitidos por los

topes este programa se puede encontrar en el ANEXO 1 . Las salidas de este bloque

serían el estado del sistema que se realimenta nuevamente mediante un delay.

La señal de control en este caso aunque está presente en el esquema será cero ya

que este se encuentra desactivado ya que todavía no nos interesa.

En cuanto a la señal de “on” más adelante en el apartado cinco se explicará su

funcionamiento de momento no la tendremos en cuenta

Para simular el mismo comportamiento que el que se da en el laboratorio el

programa simula que la señal del ángulo está descalibrada por eso a la salida colocamos

el normalizador que tal y como calculamos antes le resta una constante y la multiplica

por la norma.

Page 50: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

50

Veamos cual es el resultado de la simulación sin normalizar:

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.01

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

tiempo

angu

lo

Figura 3.18: Simulación de caída libre del péndulo hacia la izquierda.

Realicemos un zoom sobre los rebotes:

1.9 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8

0.065

0.07

0.075

0.08

0.085

0.09

tiempo

angu

lo

Figura 3.19: Simulación de la zona de rebotes izquierda.

Page 51: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

51

Si comparamos las figuras 3.19 y 3.20 con las figuras 3.15 y 3.17 comprobamos

que efectivamente el modelo se aproxima bastante a la realidad como podemos

comprobar con las siguientes cifras:

Simulación Realidad

Amplitud del primer rebote 0.0635 0.0635

Amplitud del segundo rebote 0.0758 0.076

Amplitud del tercer rebote 0.0795 0.082

Duración primer rebote 0.38 sg 0.35 sg

Duración segundo rebote 0.24 sg 0.19 sg

Por tanto podemos dar por bueno el modelo de los rebotes ya que la amplitud de

los dos primeros rebotes es la misma, la duración del primer rebote tiene menos de un

10% de diferencia.

Por último comprobamos si el normalizador funciona correctamente:

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

0.5236

tiempo

angu

lo

Figura 3.20: Simulación normalizada.

Page 52: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

52

Se comprueba como efectivamente tiende a π/6 = 0.5236 por lo que el

normalizador funciona correctamente.

Los mismos resultados que hemos obtenido para la caída hacia a la izquierda se

dan cuando se realiza la caída hacia la derecha.

3.3.4. Modelo linealizado.

Veamos el conjunto de ecuaciones de las que partimos para la linealización:

• Posición del carrito:

)()()1( 211 kxTkxkx m+=+

• Velocidad del carrito:

)()()1( 52

22 kxTkxkx nmω+=+

• Aceleración del carrito:

( ) ( ))()()(21)1( 255 kxkuTkxTkx mnm −+−=+ δω

• Angulo del péndulo:

)()()1( 433 kxTkxkx m+=+

• Velocidad angular del péndulo:

( )( ))())(sin())(cos()()()1( 43344 kxBkxgkxkamlI

Tkxkx v

m +++=+

Page 53: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

53

Observamos que la única ecuación que tenemos que linealizar es la velocidad

angular del péndulo ya que todas las otras ya son lineales.

Como en esta zona el péndulo debe mantenerse en posición vertical puede

suponerse que:

• θθ =)sin(

• 1)cos( =θ

Haciendo uso de estas linealizaciones se llega a las siguientes ecuaciones que

describen al sistema de una manera mas sencilla:

( )( )

)(lg)1()(1)1(

)(lg

)(1)1(

)()()()()1(

322

4

34

4344

kxImT

Tkxkx

ImlT

BI

Tkx

kxImT

kaImlT

BI

Tkx

kxBkgxkamlI

Tkxkx

m

m

mv

m

mmv

m

vm

+−−

+⎟⎠⎞

⎜⎝⎛ +=+

++⎟⎠⎞

⎜⎝⎛ +=+

+++=+

Partiendo del modelo del carrito podemos obtener:

v )()1()(

5222

52

.

2252 kx

Tkxkx

xxxsx

nm

nn ωωω =−−

⇒=⇒=

Sustituyendo este resultado en la ecuación de la velocidad angular obtenemos lo

siguiente:

)(lg

)(1)1( 35

2

4 kxImT

kxI

mlTB

IT

kx mnmv

m ++⎟⎠⎞

⎜⎝⎛ +=+

ω

Page 54: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

54

Los sistemas lineales se describen según las siguientes ecuaciones:

)()(

)()1(

__

__

kxCky

BukxAkx

=

+=+

Describiendo nuestro sistema de esta forma obtenemos:

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

+

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

−−

+

=

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

+++++

)()()()()(

001000001000001

)()()(

)(0000

)()()()()(

21000

1lg

00

01000010

0001

)1()1()1()1()1(

5

4

3

2

1

3

2

1

5

4

3

2

1

2

2

5

4

3

2

1

kxkxkxkxkx

kykyky

ku

Tkxkxkxkxkx

TTI

mlTB

IT

ImT

TT

T

kxkxkxkxkx

mmnm

nmv

mm

m

mn

m

δω

ω

ω

El valor de cada una de las constantes es:

Constante Valor

M 1 kg

L 0.375 m

G 9.8 m/s2

Tm 0.01 s

Bv 0.015

Page 55: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

55

3.4. Modelado de la parte discreta.

Podemos definir cinco estados discretos:

• S1: El péndulo se encuentra en la zona de rebotes de la izquierda. El único

estado al que se puede evolucionar desde este es que el péndulo pase al S2 (aire).

Esto se hace proporcionando un pequeño impulso inicial.

• S2: El péndulo se encuentra en el aire. Nuestro objetivo sería que el péndulo

permaneciera en este estado hasta que consiguiera estabilizarse en posición

vertical. Si esto no sucede existen dos posibles evoluciones para el estado, por

un lado podría suceder que el péndulo no tuviese la suficiente velocidad angular

como para alcanzar la zona de estabilización vertical y volviese hacia atrás y

pasaría al S5 (colisión izquierda), o por otro lado podría ser que el péndulo

llegara con una velocidad angular excesiva y tal como alcanza la zona de

estabilización vertical el control no fuera capaz de controlarlo y la abandonara

bien nuevamente hacia el S5 o hacia el S4 (colisión derecha).

• S3: El péndulo se encuentra pegado al tope de la derecha en reposo. El único

estado al que se puede evolucionar desde este es que el péndulo pase al S2 (aire).

Esto se hace proporcionando un pequeño impulso inicial.

• S4: El péndulo colisiona con el tope de la derecha. Este estado es de transición y

por tanto obligatoriamente desde él hay que evolucionar a S2.

• S5: El péndulo colisiona con el tope de la izquierda. Este estado es de transición

y por tanto obligatoriamente desde él hay que evolucionar a S2.

Recordar que todo esto de ir cambiando de modelo se refiere al modelo del

péndulo invertido ya que el modelo del carro permanece invariable en todo momento.

Page 56: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

56

3.5. Integración de las variables continuas y discretas.

Para conseguir dicha integración vamos a implementar el modelo del autómata

híbrido definido de la siguiente manera:

{ }

{ }

{ }

{ }

rebotedelfuerzaFr

inicialimpulsoimpulso

TTTTTTT

SSSSSS

kxkxkxkxkxX

dondeimpulsoFrESXH

=

=

=

=

=

=

6,5,4,3,2,1

5,4,3,2,1

)(),(),(),(),(

:,,,,,

54321

Figura 3.21: Modelo del autómata híbrido del péndulo.

S1 S2 S3

S4 S5

Fr = 0 Fr = 0

Fr = 0

Fr = –[Kr (θ – π / 6) + αω] Fr = –[Kr (θ + π / 6) + αω]

T1 T2

T3

T4

T5

T6

impulso impulso

θ > π / 6

θ < π / 6

θ < – π / 6

θ > – π / 6

Page 57: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

57

4. Control.

4.1. Estrategia global de control híbrido. El problema de swing up va a ser solucionado en dos pasos:

1. Hacer que el péndulo comience a rebotar contra los topes hasta alcanzar una

amplitud próxima del equilibrio en posición vertical. Problema que

afrontaremos realizando un estudio de la energía del péndulo.

2. Estabilización en esta posición, denominado subproblema local de

estabilización.

El controlador que se propone es un controlador híbrido, formado por una

combinación de una ley de control orientada a aumentar la energía del péndulo que

actúa lejos de la posición de equilibrio, y por una ley de control lineal que lo estabiliza

cuando está cerca de él.

Los dos subproblemas pueden ser combinados de una forma muy simple a través

de la siguiente función objetivo:

( ) )()(1)()(),( kCkCkC EQUILIBRIOALZAMIENTO θµθµθ −+=

donde µ(θ) es una función que depende del valor del ángulo del péndulo con respecto a

la vertical de tal manera que µ(θ) = 1 para 6πθ > , y µ(θ) = 0 en caso contrario.

Mediante este tipo de controlador híbrido se han obtenidos resultados

satisfactorios como se comprobará más adelante en la simulación.

Este tipo de control híbrido se denomina de transición abrupta ya que esta se

realiza de forma instantánea al cumplirse la condición de cambio. Más adelante para

modelar esto usaremos la señal “on”.

Page 58: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

58

4.2. Alzamiento del péndulo.

4.2.1. Impulso inicial. El péndulo inicialmente se encuentra apoyado sobre uno de los topes por lo que

para sacarlo de ese estado inicial necesitamos darle un impulso inicial. Para calcular la

amplitud de dicho impulso recurriremos a las ecuaciones de la energía del péndulo.

La energía potencial de la varilla es la energía potencial de una partícula de masa

m situada en el c.m. de la varilla E=mg(L/2)·cosθ0. La energía potencial se convierte en

energía cinética de rotación. El principio de conservación de la energía se escribe:

θω cos23

121 22 LmgmLE +⎟

⎠⎞

⎜⎝⎛=

Ahora vamos a calcular el trabajo que tendría que realizar la fuerza del carrito

para hacer pasar el péndulo desde su posición de reposo en 6π hasta un ángulo de

7π .

Tanto en el momento inicial(estado de reposo) como en el final (momento en el que

cambia el signo de la velocidad angular) toda la energía es energía potencial por lo que

nos queda la siguiente ecuación:

JLmgW

LmgLmgEEW

1284.07

cos6

cos2

7cos

26cos

2

76

7676

−=⎟⎠⎞

⎜⎝⎛ −=

−=−=

ππ

ππ

ππ

ππππ

Vemos como efectivamente el trabajo tiene signo negativo lo cuál nos indica que

para pasar de una posición a otra debemos aportar energía al sistema. Hay que señalar

también que en estas ecuaciones hemos despreciado las pérdidas de energía asociadas

al rozamiento de la varilla contra su eje.

Page 59: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

59

A continuación vamos a intentar obtener la magnitud del impulso. Para ello

supondremos que la fuerza que ejerce el carrito es constante durante la duración del

mismo.

Figura 4.1: Péndulo girando.

Considérese un cuerpo rígido que puede girar alrededor de un eje fijo tal como

se indica en la figura 4.1. Supongamos que se aplica una fuerza exterior F en el punto P.

El trabajo realizado por dicha fuerza a medida que el cuerpo gira recorriendo una

distancia infinitesimal ds=rdq en el tiempo dt es:

F·senφ es la componente tangencial de la fuerza, la componente de la fuerza a

lo largo del desplazamiento. La componente radial de la fuerza no realiza trabajo, ya

que es perpendicular al desplazamiento.

El trabajo total cuando el sólido gira un ángulo θ es:

∫∫ ⋅=⋅=→

7

6

7

676

π

π

π

πππ θφ rdFsendrFW

Page 60: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

60

Si comparamos la figura 4.1 con la figura 3.1 que nos mostraba el diagrama de

fuerzas que actúan sobre el péndulo llegamos a la conclusión que el ángulo φ usado

para hallar la componente tangencial de la fuerza es igual al ángulo θ que nos mide el

desplazamiento del péndulo que dicha componente tangencial se relaciona con el

coseno y no con el seno de tal modo que lo que nos quedaría es:

∫∫ ⋅=⋅=→

7

6

7

676

cos

π

π

π

πππ θθ rdFdrFW

Suponiendo como hemos dicho que la aceleración que produce el carrito es

constante y por tanto la magnitud de la fuerza también:

⎥⎦

⎤⎢⎣

⎡⎟⎠⎞

⎜⎝⎛−⎟

⎠⎞

⎜⎝⎛⋅=⋅⋅= ∫→ 67

cos7

676

ππθθ

π

πππ sensenrFdrFW

Nsensensensenr

WF 1788.5

67275.0

1284.0

67

76 =

⎥⎦

⎤⎢⎣

⎡⎟⎠⎞

⎜⎝⎛−⎟

⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

−=

⎥⎦

⎤⎢⎣

⎡⎟⎠⎞

⎜⎝⎛−⎟

⎠⎞

⎜⎝⎛

=→

ππππ

ππ

Como ya sabemos el carrito es controlado por velocidad por tanto a partir de esta

fuerza tenemos que hallar el incremento de velocidad necesario para producirla.

Una fuerza aplicada durante un tiempo modifica el momento lineal (la velocidad

del carrito).

∫ ∆=−=⋅t

vmmvmvdtF0

0

Aplicando la misma aproximación de que F es constante y tomando una

duración para el impulso de 0.25 sg obtendremos el incremento de velocidad buscado.

Page 61: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

61

∫∆

=∆⇒∆=∆=⋅t

mtFvvmtFdtF

0

2947.11

25.01788.5=

⋅=∆v

Comprobemos ahora mediante simulación si los cálculos y aproximaciones que

hemos realizado son correctos. Veamos a continuación el bloque simulink diseñado

para simular dicho impulso inicial:

Figura 4.2: Modelo simulink de impulso inicial.

Este modelo es muy sencillo tenemos dos pulse generador que generan dos

escalones uno que empieza en a los 0 sg con una amplitud de 1 y otro que lo hace 0.15

sg después con una amplitud de -1. Posteriormente al sumarlos se nos generará un

impulso cuya amplitud será de 0.7 ya que después lo multiplicamos por dicha ganancia.

No olvidemos que aunque la ganancia sea de 0.7 la variación será de 1.4 ya que

conmuta entre -0.7 y 0.7. Esto lo hacemos así porque el actuador está limitado entre ±1

y por tanto no podemos introducirle una amplitud de 1.4.

El hecho de que introduzcamos una variación de 1.4 en lugar de 1.3 es para

intentar compensar los posibles efectos del rozamiento que no hemos tenido en cuenta a

la hora de hacer los cálculos.

Otra precisión es que la duración del pulso es de 0.15 en lugar de 0.25 es porque

al comportarse el carro como un sistema de segundo orden aunque introduzcamos 0.15

Page 62: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

62

después realmente durará unos 0.25 sg como podremos comprobar en la simulación.

Veamos la entrada del impulso:

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

tiempo

u

Figura 4.3: Impulso inicial de entrada.

Veamos a continuación los resultado que se producen ante una entrada como

esta:

0 0.5 1 1.5 2 2.5-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

tiempo

Posición VelocidadAngulo

Figura 4.4: Respuesta del sistema al impulso inicial.

Page 63: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

63

Analicemos detenidamente está gráfica y veamos si se cumplen las

aproximaciones que hemos realizado así como los resultados que habíamos obtenido.

Comprobamos en primer lugar la suposición que hicimos de que la aceleración

que proporcionaba el carrito y por tanto la fuerza que transmitía al péndulo era

constante. Hagamos un zoom en la figura 4.4 en el momento en el que se produce el

cambio en la entrada de positivo a negativo:

0.15 0.2 0.25 0.3 0.35 0.4 0.45-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

tiempo

Posición VelocidadAngulo

Figura 4.5: Variación de la velocidad de carro ante el impulso inicial.

Observando la figura 4.5 podemos observar como la velocidad al pasar de 0.65 a

-0.65 se comporta aproximadamente como una línea recta por lo que su derivada, es

decir la aceleración del carro, sería una constante, por tanto la suposición realizada es

era correcta. Además se comprueba también que el tiempo que duraría este impulso es

aproximadamente de 0.25 sg tal y como tomamos al realizar los cálculos.

Se comprueba también que aunque el impulso introducido tenía una amplitud de

0.7, la salida solamente llega hasta 0.65 aproximadamente, esto se debe al rozamiento y

a que el tiempo de pico del carro es mayor que la duración del impulso y por tanto no da

tiempo a que alcance dicho valor. Aun así que el valor de 0.65 tenemos suficiente ya

que al realizar los cálculos obtuvimos que la variación debía ser de 1.2947 y con este

resultado obtenemos una variación de 1.3.

Page 64: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

64

Veamos a continuación si el resultado del péndulo es el esperado. Nuestra

intención era que con el impulso el péndulo pasará de la posición de

reposo ⎟⎠⎞

⎜⎝⎛ = 5236.0

6π a ⎟

⎠⎞

⎜⎝⎛ = 4488.0

7π . Comprobemos realizando nuevamente un zoom

sobre la figura 4.4 pero esta vez fijándonos en el ángulo:

0 0.1 0.2 0.3 0.4 0.5 0.60.4

0.42

0.44

0.46

0.48

0.5

0.52

0.54

0.56

0.58

0.6

tiempo

Posición VelocidadAngulo

Figura 4.6: Variación del ángulo del péndulo ante el impulso inicial.

En la figura se comprueba como efectivamente el ángulo pasa de 0.5236 a

0.4388 es decir alzándose incluso un poco más de lo esperado (un 2.5% más) por lo que

se contrastan los cálculos realizados.

4.2.2. Control de alzamiento.

Una vez que hemos introducido el impulso inicial y ya tenemos el péndulo en

movimiento tenemos que aplicar una ley de control para conseguir llevar el péndulo

hasta la zona lineal.

Page 65: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

65

Para realizar nuestro objetivo lo que tendremos que lograr es que la energía del

péndulo vaya aumentando progresivamente. La ecuación de la energía del péndulo era

la siguiente

θω cos23

121 22 LmgmLE +⎟

⎠⎞

⎜⎝⎛=

La forma que tenemos de modificar la energía es actuando sobre la velocidad

angular ya que su fórmula como ya vimos en apartados anteriores es:

( )( ))())(sin())(cos()()()1( kBkgkkamlI

Tkk v

m ωθθωω +++=+

La forma de que la energía vaya aumentando es haciendo que el módulo de la

velocidad angular vaya aumentando ya que se encuentra elevado al cuadrado en la

fórmula de la energía. Lo que haremos para conseguir esto es que la aceleración en el

instante k siempre tenga el mismo signo que la velocidad angular en dicho instante de

tal forma que ocurrirá lo siguiente:

• Si el péndulo está subiendo desde la izquierda al centro su velocidad angular

será negativa. Si el péndulo partiera con una velocidad angular negativa inicial y

nosotros no actuáramos podría ocurrir dos cosas: que esa velocidad fuera lo

suficientemente grande como para llegar al centro, cosa que no es nuestro caso

porque simplemente hemos dado un pequeño impulso inicial o la otra

posibilidad, que es la nuestra, que el péndulo comenzara a ascender hasta que la

componente de la gravedad que se encuentra multiplicada por el seno del ángulo

consiguiera anular dicha velocidad negativa y el péndulo comenzara a descender

con una velocidad angular positiva. El hecho de que la aceleración tenga el

mismo signo que la velocidad angular retrasará dicho momento haciendo que el

péndulo ascienda más y aumentando su energía por tanto.

• Si el péndulo se encuentra descendiendo hacia la izquierda su velocidad angular

será positiva. En este caso la componente de la gravedad contribuye a aumentar

la velocidad angular. El péndulo continuará descendiendo hasta que choque con

el tope. Al chocar con el tope perderá parte de energía y cambiará nuevamente el

Page 66: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

66

signo de la velocidad angular. Para intentar compensar esa perdida de energía

intentamos ir aumentando la energía del péndulo mientras está descendiendo

para lo que le sumamos además la componente de la aceleración que tendrá el

mismo signo que la velocidad angular.

Como la actuación que se realiza sobre el carro es en velocidad la única forma

que tenemos de conseguir que la aceleración tenga el signo que deseamos es haciendo

que la velocidad del carro vaya conmutando con el mismo signo de la velocidad angular

del péndulo y multiplicándola por una ganancia determinada tal y como sigue:

)(* ωsignoKu =

Para determinar el valor de la constante K recurriremos a la simulación mediante

el simulink. Analicemos el modelo que debemos implementar para integrar este

controlador con el impulso inicial:

Figura 4.7: Modelo Simulink del controlador de alzamiento.

Por un lado tenemos la señal procedente del bloque Impulso inicial que ya

analizamos en la figura 4.2 y por otro tenemos la señal de control que obtenemos al

aplicarle a la velocidad angular del péndulo la función signo y multiplicarla por una

ganancia. Estas dos señales se introducen en el multipuerto y en un bloque comparador

de entradas que lo que hace es generar una señal que determina cuál de las dos señales

Page 67: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

67

del multipuesto se debe introducir en el carro. Veamos como es este bloque en su

interior para estudiar su funcionamiento:

Figura 4.8: Modelo Simulink del comparador de entradas.

El criterio de selección que utilizamos es que la señal que pasa es la que tiene un

módulo mayor. Si el impulso es el mayor la salida del Relational Operator es 0 a la que

sumaríamos 1 y por tanto la salida del comparador de entradas sería 1 lo que haría que

la señal del multipuerto que pasaría sería la primera, es decir el impulso inicial. Cuando

la señal de control es la mayor entonces la salida del Relational Operator es 1 al que le

sumamos 1 y por tanto la salida del comparador de entradas sería 2 lo que haría que la

señal del multipuerto que pasara sería la segunda, es decir la señal de control.

A continuación mediante la simulación iremos variando el valor de la ganancia

del controlador para ver con que valor conseguimos el alzamiento del péndulo de una

forma adecuada.

0 0.5 1 1.5 2 2.5 30.4

0.42

0.44

0.46

0.48

0.5

0.52

0.54

0.56

0.58

0.6

tiempo

ángu

lo

Figura 4.9: Angulo para K=0.1.

Page 68: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

68

Vemos que para K=0.1 el comportamiento del péndulo prácticamente es el

mismo que cuando no ejercíamos control ninguno y por tanto sólo afecta el impulso

inicial.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

tiempo

controlángulo

Figura 4.10: Angulo para K=0.2.

Para K=0.2 vemos que en un primer momento la energía empieza a crecer para

al final se acaba imponiendo el término gravitatorio y la energía que se va perdiendo en

cada uno de los rebotes hace que el péndulo vuelva a la posición de reposo.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

tiempo

controlángulo

Figura 4.11: Angulo para K=0.3.

Page 69: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

69

Para K=0.3 conseguimos levantarlo con dos rebotes. Vemos como el

comportamiento de la señal de control es el esperado ya que el signo de la pendiente

del ángulo (es decir la velocidad angular) es igual al signo de la señal de control.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

tiempo

controlángulo

Figura 4.12: Angulo para K=0.4.

Vemos como para K=0.4 conseguimos levantarlo con un único rebote.

Una vez que hemos comprobado mediante la simulación que efectivamente la

ley de control que hemos propuesto funciona debemos comprobarlo en el laboratorio.

Antes veamos el modelo simulink del control de alzamiento que se ha implementado en

el laboratorio:

Figura 4.13: Modelo del controlador de alzamiento para el laboratorio.

Page 70: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

70

Al igual que para la simulación aquí se generan dos señales una que se

corresponde con el impulso inicial y otra con la señal de control propiamente dicha.

Ambas señales se generan de la misma forma que ya hemos explicado en la simulación.

La forma en que se selecciona la señal de entrada es la misma que en la simulación

mediante el comparador de entradas.

Las diferencias con el controlador de la simulación es que en este caso además

de tener la velocidad angular como señal de entrada, tenemos también la señal del

ángulo de forma que el controlador no empezará a funcionar hasta que la señal de

ángulo no sea menor que un ángulo límite que veremos ahora como determinamos (todo

esto lo realiza el bloque compara ángulo).

El sentido de esto es que no se produzca ninguna señal de control debida al ruido

mientras estamos esperando a que se produzca el impulso inicial. Observemos el ruido

en la señal del ángulo:

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20.46

0.48

0.5

0.52

0.54

0.56

0.58

0.6

0.62

tiempo

angu

lo

Figura 4.14: Señal del ángulo con ruido.

Observando la figura vemos que tomando como ángulo límite 0.5 nos basta para

que no nos afecte la señal de ruido. A continuación se muestra el interior del bloque

compara ángulo:

Page 71: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

71

Figura 4.15: Bloque compara ángulo.

Vemos como efectivamente compara el módulo de la entrada In1 con 0.5 de tal

forma que si In1 es menor o igual a 0.5 a la salida del Relational Operator1 tendremos

un 0 por lo que a la salida del bloque se pondrá un 1 que hará que el multipuerto deje

pasar la señal de control que se está generando. Si In1 es mayor que 0.5 entonces a la

salida del Relational Operator1 tendremos un 1 por lo que a la salida del bloque se

pondrá un 2 que hará que el multipuerto deje pasar la constante 0.

Otra diferencia con el controlador de la simulación es que en este tenemos otros

dos multipuertos más asociados a las señales de Colocación y de On/Off que se

modifican a través de la interfaz del ControlDesk que se puede ver en la figura 2.5.

La señal de On/Off nos permite habilitar/deshabilitar el controlador mientras que

la señal Colocación cuando está habilitada lo que hace es dejar pasar la señal de

colocación que también podemos modificar a través de la interfaz y que nos permite

mover el carrito a la izquierda o la derecha con más o menos rapidez dependiendo del

signo y la magnitud de dicha señal.

Por tanto para que el control esté activo la señal de On/Off se debe encontrar

habilitada y la señal de Colocación deshabilitada.

Una vez que hemos analizado el interior del controlador de alzamiento que

tenemos implementado en el laboratorio veamos lo que ocurre al aplicárselo al sistema

del carro-péndulo. Lo que haremos será analizar el comportamiento para unas ganancias

de control de 0.3 y 0.4.

Page 72: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

72

1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

tiempo

ángulo control

Figura 4.16: Respuesta real alzamiento para K=0.3.

Observamos como al igual que sucedía en la simulación de la figura 4.11

necesitamos dos rebotes para que se produzca el alzamiento.

1 1.2 1.4 1.6 1.8 2-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

tiempo

ángulo control

Figura 4.17: Respuesta real alzamiento para K=0.4

Se comprueba también que al igual que sucedía en la simulación de la figura

4.12 el alzamiento de produce realizando un rebote previo.

Observando ambas gráficas comprobamos también que el comportamiento de la

señal de control es el esperado siendo igual al signo de la pendiente del ángulo por K.

Page 73: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

73

4.3. Equilibrio del péndulo.

4.3.1. Introducción.

Una vez tenemos el péndulo alzado y nos encontramos en la zona lineal

usaremos para estabilizar el péndulo en torno a la posición θ = 0 un control LQR. Para

poder utilizar este método de control además deberemos utilizar un observador ya que

nos hace falta conocer todos lo estados y nosotros tenemos únicamente acceso directo a

tres de ello: posición, velocidad y ángulo.

El método de diseño combinado de observador y realimentación de estados es

una herramienta fundamental en el control de sistemas en variable de estados. Sin

embargo, no es siempre el método más útil; tres dificultades obvias:

1. La traducción de especificaciones de diseño a ubicación de polos no es

directa, especialmente en sistemas complejos; ¿cuál es la mejor configuración de polos

para especificaciones dadas?.

2. Las ganancias de realimentación en sistemas MIMO no son únicas; ¿cuál es la

mejor ganancia para una configuración de polos dada?.

3. Los autovalores del observador deben elegirse más rápidos que los del

controlador, pero, ¿tenemos algún criterio adicional para preferir una configuración a

otra?.

Los métodos que introduciremos en este capítulo dan respuestas a estas

preguntas. Veremos que las ganancias de realimentación de estados y del observador

pueden elegirse de forma que minimicen un criterio de optimización dado.

El criterio particular que veremos es un funcional cuadrático del estado y la

entrada de control:

( ) [ ]∫ +=T

t

TT dRuuQxxtutxJ τττττ )()()()()(),(

Page 74: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

74

donde Q y R son matrices constantes (aunque no necesariamente) semi-definida y

definida positivas respectivamente.

El control que se obtiene de minimizar este criterio es lineal. Como el criterio se

basa en funcionales cuadráticos, el método se conoce como lineal-cuadrático (LQ:

linear-quadratic), del que se obtiene el regulador lineal cuadrático (LQR).

Criterios similares de optimización se siguen para el diseño de observadores,

sólo que el funcional depende del error de estimación, y se basa en una caracterización

estadística de los ruidos que afectan al sistema. Este estimador óptimo lineal-cuadrático

se conoce como el filtro de Kalman.

Cuando se combinan la ganancia de realimentación de estados LQ con el filtro

de Kalman, obtenemos lo que se conoce como un controlador lineal-cuadrático-

gaussiano (LQG). Lo de gaussiano viene de la caracterización estadística del ruido

empleada.

4.3.1.1. El principio de optimalidad. Para entender la idea de criterio de optimización en variable de estados, la

introduciremos con sistemas de tiempo discreto, que son más simples.

El estado de un sistema discreto describe una trayectoria haciendo transiciones

discretas de un estado a otro bajo el efecto de una entrada también aplicada en tiempo

discreto.

Cuando se asocia un criterio de optimización al sistema, cada transición de

estado tiene asociado un costo o penalidad. Por ejemplo, pueden penalizarse las

transiciones de estado que se alejan demasiado del estado final deseado, o las acciones

de control de valores demasiado elevados. A medida que el sistema evoluciona de

estado en estado, los costos se suman hasta acumular un costo total asociado a la

trayectoria.

Page 75: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

75

Ilustramos el concepto con el grafo de la figura 4.18, que representa 8 estados de

un sistema discreto con sus transiciones posibles. El estado inicial es el 1, y el final el 8.

El sistema pasa de un estado a otro en cada tiempo k determinado por la entrada u[k] y

las ecuaciones x[k + 1] = Ax[k] + Bu[k].

Figura 4.18: Posibles trayectorias de 1 al 8.

Las transiciones posibles se representan por los arcos que conectan el estado

inicial al final a través de los estados intermedios. El costo asociado a cada transición se

representa con la letra J; por ejemplo, el costo de moverse del estado 3 al 5 es J35.

Asumiendo que los costos se acumulan en forma aditiva, vemos que la

trayectoria marcada en rojo, por ejemplo, tiene un costo total J13 + J35 + J56 + J68.

Como hay varias rutas alternativas del estado 1 al 8, el costo total dependerá de

la trayectoria elegida. La señal de control u*[k] que determina la trayectoria de menor

costo es la estrategia óptima. Como ya veremos, en sistemas de tiempo continuo, la

acumulación de costos se representa mediante integración, en vez de suma.

La herramienta matemática que usaremos para determinar la estrategia óptima es

el principio de optimalidad de Bellman:

“En cualquier punto intermedio Xi en una trayectoria óptima entre X0 y Xf , la

estrategia desde Xi al punto final Xf debe ser en sí una estrategia óptima.”

Page 76: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

76

Este obvio principio nos permitirá resolver en forma cerrada nuestros problemas

de control óptimo. También se usa en el cómputo recursivo de las soluciones óptimas en

un procedimiento llamado programación dinámica.

4.3.1.2. Nota histórica.

El nacimiento del control óptimo se atribuye al problema del braquistocrono,

propuesto por el matemático suizo Johann Bernoulli en 1696.

El problema consistía en determinar cuál, entre todas las trayectorias posibles,

era la que llevaba a una partícula (sin rozamiento) en el menor tiempo posible, desde un

punto A a un punto B en el mismo plano vertical, sujeta sólo a la acción de la gravedad.

Una formulación matemática moderna del problema del braquistocrono es la

siguiente: encontrar la señal control ⎥⎦

⎤⎢⎣

⎡)()(

tvtu

que lleve al sistema:

)()()(

)()()(

.

.

tytvty

tytutx

=

=

desde el punto ⎥⎦

⎤⎢⎣

A

A

yx

al punto ⎥⎦

⎤⎢⎣

B

B

yx

en mínimo tiempo, sujeto a la restricción:

Page 77: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

77

122 =+ vx

Típico problema de control óptimo.

4.3.1.3. Control LQ discreto.

Consideremos el sistema en tiempo discreto definido por:

kkk BuAxx +=+1 , pn ux ℜ∈ℜ∈ , . (4.1)

El problema de control que queremos resolver es: Encontrar la secuencia de

control uk que lleve al sistema de la condición inicial 0xxi = al estado final fN xx = ,

minimizando el funcional cuadrático:

∑−

=

++=1

, 21

21 N

ikk

Tkk

TkN

TNNi RuuQxxSxxJ (4.2)

El funcional puede interpretarse como el costo total de la transición de xi a xN y,

en particular, el término NTN Sxx penaliza el error en alcanzar el estado final deseado.

Las matrices de peso S, Q y R pueden seleccionarse para penalizar ciertos

estados/entradas más que otros. Como veremos, las matrices S y Q deben ser semi-

definidas positivas, y la R definida positiva.

4.3.1.4. Transición [N – 1] → [N]. Para encontrar el control a aplicar al sistema de forma que se minimice (4.2),

supongamos que estamos en el paso N – 1 de la trayectoria óptima. Así, el costo (4.2)

de la transición de N – 1 a N es:

( )111,1 21

−−−− ++= NTNN

TNN

TNNN RuuQxxSxxJ (4.3)

Page 78: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

78

Usando (4.1), substituimos Nx como una función de 1−Nu , lo que da:

( )11111111,1 )()(21

−−−−−−−−− ++++= NTNN

TNNN

TNNNN RuuQxxBuAxSBuAxJ

Como J es cuadrático en u, podemos minimizarlo diferenciando

( )

( ) 11

111

1

,1

0

0

0

−−

−−−

++=

++=

∂=

NT

NT

NNNT

N

NNT

SAxBuSBBR

RuBuAxSB

uJ

(4.4)

De (4.4) obtenemos el último elemento de la secuencia de control óptima:

( ) 11*

1 −

− +−= NTT

N SAxBSBBRu (4.5)

que resulta ser un mínimo, ya que:

021

,12

>+=∂

− SBBRuJ T

N

NN

Como vemos, (4.5) es un control lineal por realimentación de estados de la

forma habitual:

11*

1 −−− −= NNN xKu

donde

( ) SABSBBRK TTN

11

− +≡ (4.6)

Page 79: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

79

El valor del costo mínimo *,1 NNJ − obtenido con *

1−Nu es:

( )

( )

)7.4(21

)()(21

)()(21

111*

,1

111111*

,1

111111111111*

,1

−−−−

−−−−−−−

−−−−−−−−−−−−−

++−−=

++−−=

NNTNNN

NNTNN

TN

TNNN

NNTN

TNN

TNNNN

TNNNNN

xSxJ

xRKKQBKASBKAxJ

xRKKxQxxxBKAxSxBKAxJ

donde definimos:

11111 )()( −−−−− ++−−≡ NTNN

TNN RKKQBKASBKAS

La elección de la notación 1−NS en (4.7) surge de que si estamos en el paso final

N, no hay ninguna acción de control que tomar y NTNNNNN SxxJJ

21*

,, == ,es decir:

11111

1

)()(

)(

−−−−−

++−−=

+=

=

NTNNN

TNN

NT

NT

N

N

RKKQBKASBKAS

ASBBSBRK

SS

4.3.1.5. Transición [N – 2] → [N].

Tomamos otro paso para atrás en el cómputo del control óptimo y consideremos

ahora que estamos en el paso N – 2. Notemos primero de (4.2) que:

NNNNNN JJJ ,11,2,2 −−−− +=

Page 80: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

80

Por lo tanto, para calcular la estrategia óptima para ir del estado en N – 2 al

estado final en N, usamos el principio de optimalidad para deducir que:

*

,11,2*

,2 NNNNNN JJJ −−−− +=

y así reducimos el problema al de calcular la estrategia óptima para ir de N – 2 a N – 1

(la de N – 1 a N ya la obtuvimos). Así, ahora el paso N – 1 es el “final”, y podemos

usar la misma ecuación (4.3) pero con N – 1 en vez de N, y N – 2 en vez de N – 1.

Obtenemos:

( )22221111,2 21

−−−−−−−−− ++= NTNN

TNNN

TNNN RuuQxxxSxJ

Igual que antes, podemos minimizar 1,2 −− NNJ sobre todos los posibles 2−Nu , y es

fácil ver que las expresiones son las mismas pero con N – 1 en vez de N, y N – 2 en vez

de N – 1:

22*

2 −−− −= NNN xKu

donde

ASBBSBRK NT

NT

N 11

12 )( −−

−− +≡

4.3.1.6. Transición [k] → [N].

Retrocediendo en los pasos N – 2, N – 3, . . . , k, se generan la siguientes

expresiones recursivas para el control óptimo:

kkk xKu −=* (4.8)

Page 81: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

81

ASBBSBRK kT

kT

k 11

1 )( +−

++= (4.9)

kTkkk

Tkk RKKQBKASBKAS ++−−= + )()( 1 (4.10)

Notar que la ecuación en diferencias (4.10) de kS se resuelve para atrás,

comenzando en SS N = . El costo óptimo de k a N es:

kkTkNk xSxJ

21*

, =

El conjunto de ecuaciones (4.8), (4.9) y (4.10) representa el controlador LQ

completo para el sistema discreto (4.1), que resulta, en general, inestacionario. La

ecuación en diferencias (4.10) se conoce como la ecuación matricial en diferencias de

Riccati. El hecho de que se resuelva para atrás en el tiempo le da a kK la peculiaridad

de que los transitorios aparecen al final del intervalo [k, T], en vez de al principio.

Ejemplo 4.1: (Control LQ en tiempo discreto). Simulamos el sistema

kkk uxx ⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡−

=+ 10

1112

1 ⎥⎦

⎤⎢⎣

⎡−

=3

2)0(x

con el controlador LQ óptimo que minimiza el costo:

29

11010 2

1.0002

21

5005

21

kkk

Tk

T uxxxxJ +⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡= ∑

=

.

Las siguientes líneas de código MATLAB computan kK y kx en lazo cerrado.

% Costo

Q=[2 0;0 0.1];R=2;S=diag([5,5]);

k=10;

% Sistema

Page 82: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

82

A=[2 1;-1 1];B=[0;1];x0=[2;-3];

% Solución de la ecuación de Riccati

while k>=1

K(k,:)=inv(R+B’*S*B)*B’*S*A;

S=(A-B*K(k,:))’*S*(A-B*K(k,:))+Q+K(k,:)’*R*K(k,:);

k=k-1;

end

% Simulación del sistema realimentado

x(:,1)=x0;

for k=1:10

x(:,k+1) = A*x(:,k)-B*K(k,:)*x(:,k);

end

La matriz de realimentación kK debe calcularse en tiempo invertido y

almacenarse para ser aplicada posteriormente al sistema en tiempo normal.

Figura 4.19: Evolución del estado en lazo cerrado: line1 x1[k], line2 x2[k].

Page 83: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

83

Aunque la planta a lazo abierto es inestable (autovalores en 23

23± ), vemos que

el estado es estabilizado asintóticamente por *ku . Notar que la planta a lazo cerrado es

inestacionaria, ya que el control lo es.

La figura 4.20 muestra la evolución de las ganancias de control. Podemos

comprobar que sus valores cambian más sobre el final del intervalo, más que al

comienzo, donde permanecen casi constantes.

Figura 4.20: Evolución de las ganancias K[k] =[ k1[k] , [k2[k] ] (line 1 y line 2).

4.3.1.7. Control LQ en tiempo continuo.

La deducción del control óptimo LQ para el sistema en tiempo continuo:

)()()(.

tButAxtx += (9.11)

Page 84: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

84

sigue los mismos pasos que el de tiempo discreto, sólo que las “transiciones” se reducen

a “incrementos” infinitesimales. El costo es ahora:

( ) ( )∫ ++=ft

t

TTff

T dttRututQxtxtSxtxttutxJ0

)()()()(21)()(

21),(),( 000

Haciendo tender los incrementos a cero se obtienen los equivalentes de tiempo

continuo de las ecuaciones (4.8), (4.9) y (4.10), que definen el control óptimo LQ:

)()()(* txtKtu −= (4.12)

)()()( 1 txtPBRtK T−= (4.13)

)()()()()( 1.

tPAAtPQtPBBRtPtP TT −−−= − (4.14)

La ecuación (4.14) es la famosa ecuación diferencial matricial de Riccati, que,

como en el caso discreto, también debe resolverse hacia atrás en el tiempo, con

condiciones “iniciales” StP f =)( . Como en el caso discreto:

• El control óptimo LQ es una realimentación lineal de estados, aunque

inestacionaria.

• Los “transitorios” en P(t) y K(t) ocurrirán sobre el final del intervalo [t0, t f ].

Pero, la ecuación diferencial (4.14) es en general de difícil solución. Aún,

haciéndolo numéricamente, ¿cómo pueden guardarse los (infinitos) valores de P(t)

calculados en tiempo invertido para ser aplicados luego al sistema?.

Esta dificultad lleva a buscar una solución óptima estacionaria, K(t) = K, que

surge de considerar el caso de horizonte infinito ∞⎯→⎯ft .

Page 85: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

85

4.3.1.8. Control LQ de Horizonte Infinito.

La figura 4.20 del ejemplo sugiere que si hacemos tender el tiempo final a ∞ las

soluciones de la ecuación de Riccati permanecerían constantes en el valor del instante

inicial. Bajo esta suposición, P(t) es constante y 0)(.

=tP , que lleva la ecuación (4.14) a

la forma que se conoce como la ecuación algebraica de Riccati (ARE):

01 =−++ − PBPBRQPAPA TT (CARE)

Con el correspondiente control óptimo LQ (ahora estacionario):

)()()( 1* tPxBRtKxtu T−−=−= (4.15)

En el caso discreto tenemos kSSk ∀= , , que da, de (4.10), (4.9)

QSABSBBRSBASAAS TTTT ++−= −1)( (DARE)

SABSBBRK TT 1)( −+=

La ecuación (DARE) es la ecuación algebraica discreta de Riccati.

En rigor, sin embargo, no sabemos aún si estas soluciones constantes de

“régimen permanente” resuelven los correspondientes problemas óptimos de horizonte

infinito. Analizamos este punto a continuación.

Solución del problema de horizonte infinito. Queremos controlar el sistema:

)()()(.

tButAxtx +=

con una realimentación estática de estados )()( tKxtu −= tal que se minimice el

funcional de costo:

Page 86: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

86

( )∫∞

+=0

)()()()( dttRututQxtxJ TT

Con la realimentación, el sistema a lazo cerrado queda:

)()()(.

txBKAtx −= (4.16)

incurriendo en un costo:

( )∫∞

+=0

)()()()( dttKRKxtxtQxtxJ TT

Como sabemos que la solución de (4.16) es ( )0)( xetx tBKA −= , la

reemplazamos en la expresión del costo, y obtenemos:

( ) ( ) ( )0

00 xdteRKKQexJ tBKATtBKAT T

⎟⎟⎠

⎞⎜⎜⎝

⎛+= ∫

∞−−

00 PxxJ T≡ (4.17)

donde hemos definido la matriz ( ) ( ) ( )∫∞

−− +≡0

dteRKKQeP tBKATtBKA T

.

Recordando el Teorema de Lyapunov, sabemos que el sistema ( )xBKAx −=.

es

asintóticamente estable si y sólo si la matriz P definida en (4.17) es la única solución

definida positiva de la ecuación de Lyapunov:

0)()( =++−+− RKKQBKAPPBKA TT (4.18)

Page 87: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

87

Por lo tanto, para cualquier ganancia K que estabilice asintóticamente el sistema,

la matriz P solución de (4.18) dará un costo finito.

Supongamos que consideramos en particular la ganancia PBRK T1−= ,

correspondiente al candidato a control óptimo LQ (4.15). Substituyendo esta K en

(4.18) obtenemos:

PBPBRQPAPA

PBPBRQPBPBRPAPBPBRPA

PBPBRQPBBRAPPPBBRA

TT

TTTT

TTTT

1

111

111

0

0

)()(0

−−−

−−−

−++=

++−+−=

++−+−=

Esto es exactamente la ecuación algebraica de Riccati (CARE). Por lo tanto, la

solución del problema de control óptimo LQ con horizonte infinito está dado por la

solución de la ecuación (CARE), cuando ésta existe. El mismo resultado vale en el caso

discreto que es el que nos interesa a nosotros.

Esto no quiere decir que las soluciones de las ecuaciones (CARE) o (DARE)

serán únicas. Si existe una solución única que estabilice al sistema, entonces es la

óptima. Cabe entonces la pregunta: ¿Cuándo existirá una solución de las ecuaciones

algebraicas de Riccati, y bajo qué condiciones será única? La respuesta la dan los

siguientes resultados:

Teorema 4.1. Si (A,B) es estabilizable, entonces, independientemente del peso S, existe

una solución estática finita P(S) de la ecuación diferencial (diferencia) de Riccati (4.14)

( (4.10)). Esta solución será también una solución de la ecuación algebraica de Riccati

correspondiente, y será la solución óptima en el caso de horizonte infinito.

Teorema 4.2. Si la matriz de peso Q puede factorizarse en la forma Q = TTT, entonces

la solución estática P(S) de la ecuación diferencial (diferencia) de Riccati es la única

solución definida positiva de la correspondiente ecuación algebraica si y sólo si (A,T) es

detectable. En conclusión, si (A,B) es estabilizable y (A,T) detectable, existe una

solución única de (CARE) ((DARE)) que da la ganancia óptima de realimentación. Con

Page 88: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

88

MATLAB, K se puede calcular con K = lqr(A,B,Q,R) (continuo) y K = dlqr(A,B,Q,R)

(discreto).

4.3.1.9. Estimadores óptimos.

Uno de los factores más importantes en el desempeño de sistemas de control, a

menudo no tenido en cuenta, es el efecto de perturbaciones y ruido. Todos los sistemas

están sujetos a ruido, sea en la forma de:

• Alinealidades de entrada no modeladas.

• Dinámica no modelada.

• Señales de entrada no deseadas.

En esta sección trataremos algunos modelos simples de ruido y determinaremos

formas de tenerlos en cuenta en el diseño de observadores y realimentación de estados.

Consideraremos primero ruido perturbando la observación del estado de un

sistema. Con un modelo en ecuaciones de estado que incluye ruido, generaremos el

mejor observador posible, es decir, el que mejor rechaza el efecto del ruido. Estos

observadores suelen llamarse estimadores, y el particular que desarrollaremos es el

estimador conocido como el filtro de Kalman.

4.3.1.10. Modelos de sistemas con ruido.

Consideramos el siguiente sistema en tiempo discreto:

kkk

kkkk

Cxy

GvBuAxx

ω+=

++=+1

(4.19)

Page 89: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

89

Las nuevas señales de entrada kv y kω que aparecen en este modelo son

procesos aleatorios, consistentes en ruido blanco estacionario, con media cero, y no

correlacionados entre sí.

Esto quiere decir que tienen las siguientes propiedades:

[ ]

[ ]

[ ]

[ ] .,,0

0

0

kjvE

vE

vvE

VvvE

kTj

k

jTk

kTk

∀=

=

=

=

ω

[ ]

[ ]

[ ] 0

,0

=

≠=

=

k

jTk

kTk

E

jkcuandoE

WE

ω

ωω

ωω

La función [ ]⋅E denota la media estadística.

Consideraremos además que el estado inicial 0x del sistema (4.19) es también

una variable aleatoria — ya que raramente podemos conocerlo con exactitud.

Consideramos que es ruido blanco, con varianza:

[ ]( ) [ ]( )[ ] 00000 SxExxExE T ≡−−

Asumimos que 0x no está correlacionado con kv y kω .

La entrada kv se llama ruido de planta, o de proceso, y la entrada kω , que actúa

a la salida, ruido de medición. El ruido de planta modela el efecto de entradas ruidosas

que actúan en los estados mismos, mientras que el ruido de medición modela efectos

tales como ruido en los sensores. La entrada ku es la habitual entrada de control,

considerada determinística.

Page 90: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

90

4.3.1.11. Filtro de Kalman discreto.

Reconsideramos nuestra derivación anterior del observador, esta vez tomando en

cuenta los efectos de ruido en la selección de la matriz de ganancia L. Esta matriz

deberá elegirse de forma de dar la mejor estima del estado del sistema rechazando al

mismo tiempo cualquier influencia de los ruidos kv y kω . La elección que haremos

define el observador óptimo conocido como filtro de Kalman.

Hay varias formas de derivar el filtro de Kalman. Vamos a presentar una

variante basada en un observador modificado, llamado observador actual, que permite

una simplificación en las derivaciones.

Observador actual

Recordemos las ecuaciones del observador de orden completo, en este caso,

dicreto:

( )kkkkk xCyLBuxAx ˆˆˆ 1 −++=+

Suponiendo por el momento que no hay ruidos ( kv = 0 = kω ), modificamos el

observador con una ligera variante: separamos el proceso de observación en dos etapas:

1. Predicción del estado estimado en k +1 en base a datos en k (estima anterior +

entrada actual):

kkk BuxAx +=+ ˆ1( (4.20)

2. Corrección de la estima en k + 1 con los datos medidos en k + 1.

( )1111ˆ ++++ −+= kkkk xCyLxx (( (4.21)

La diferencia con el observador convencional es que ahora corregimos la estima

con la medición “actual” ( )11 ˆ ++ − kk yy en vez de utilizar la medición “vieja” ( )kk yy ˆ− .

Este observador modificado se conoce como observador actual Bay [1999].

De (4.20) y (4.21), las ecuaciones del observador actual son:

Page 91: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

91

( )

( ) ( ) 11

11

ˆˆ

)ˆ(ˆˆ

++

++

+−+−=

+−++=

kkkk

kkkkkk

LyuLCBBxLCAAx

BuxACyLBuxAx (4.22)

El observador actual será conveniente para derivar el filtro de Kalman discreto,

pues permite considerar los efectos de los ruidos kv y kω por separado.

Notar que la ecuación del observador (4.22) difiere significativamente de la que

presentamos anteriormente con sistemas continuos:

( ) )()()(ˆ)(ˆ.

tLytButxLCAtx ++−=

Para el observador actual la dinámica del error está dada por:

( ) kk xLCAAx ~~1 −=+

por lo que los autovalores para el observador son los de la matriz (A – LCA), en vez de

los de (A – LC) como vimos antes. En este caso, la observabilidad del par (A,C) no

garantiza que se puedan asignar los autovalores de (A – LCA) arbitrariamente.

Sin embargo, si la matriz A es de rango completo, el rango de CA es el mismo

que el de C, y podemos considerar CAC ≡ como una nueva matriz de salida y asignar

los autovalores de ( )CLA − como de costumbre.

Estructura del observador

Usamos la variante del observador actual para derivar el filtro de Kalman. La

mejor predicción del estado que podemos hacer cuando hay ruido es el valor esperado:

[ ]

[ ] 0,ˆ

ˆ

1

1

=+=

++=

+

+

kkkk

kkkk

vEquedadoBuxAx

GvBuxAEx

(

(

Page 92: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

92

Ésta suele denominarse la estima a priori, porque se hace antes de medir la

salida (o sea que no tiene corrección). Una vez disponible la salida en el instante k+1,

terminamos de armar el observador actualizando la estima obteniendo la, a menudo

llamada, estima a posteriori:

[ ]11111ˆ +++++ −+= kkkkk xCyLxx (( (4.23)

Notar que usamos una ganancia de observación L variante en el tiempo, lo que,

como veremos, es necesario.

En observadores determinísticos, L se seleccionaba para asignar la dinámica del

error de estimación. En este caso, además, trataremos de minimizar el efecto de los

ruidos.

Criterio de optimización

El filtro de Kalman es óptimo en el sentido de que da la mejor estima del estado

y al mismo tiempo minimiza el efecto de los ruidos. Su derivación surge de minimizar

el error de estimación a posteriori:

kkk xxe ˆ−=

Como ke está afectado por ruido, y por lo tanto depende de variables aleatorias,

su valor en un instante dado puede no ser representativo de las bondades de la

estimación. Buscamos entonces tratar de minimizar su valor “en promedio” para todo el

conjunto de ruidos posibles. Definimos entonces la covarianza a posteriori:

[ ]Tkkk eeES ≡

Cuanto menor sea la norma de la matriz kS , menor será la variabilidad del error

de estimación debida a ruidos, y mejor el rechazo de éstos.

Page 93: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

93

Pretendemos determinar 1+kL para minimizar la variabilidad del error de

estimación:

[ ] [ ]112

111

minmin +++++

= kTkLkL

eeEeEkk

[ ] [ ])(minmin 112

111

+++++

= kTkLkL

eetrEeEkk

[ ] [ ] 1112

1111

minminmin +++++++

== kL

TkkLkL

trSeeEtreEkkk

(4.24)

Para obtener una expresión para 1+kS , derivamos la dinámica del error:

[ ]

[ ] [ ][ ]

[ ] [ ]

[ ][ ] 1111

11111

111

11111

111

ˆˆ

ˆ

ˆ

++++

+++++

+++

+++++

+++

−+−=

−−+−=

+−+++−+−=

−+−−−++=

−=

kkkkkk

kkkkkkk

kkkkkkkkkkk

kkkkkkkkkk

kkk

LGvAeCLIe

LvCGLGeCALAe

BuxACGvBuAxCLGvxAAxe

xCCxLBuxAGvBuAxe

xxe

ω

ω

ω

ω (

Usando esta expresión de 1+ke obtenemos:

( )( )[ ] ( )( )[ ][ ]Tkkkkkkkkkkk LGvAeCLILGvAeCLIES 1111111 +++++++ −+−−+−= ωω

( )( )( ) ( )[

[ ]( ) ]Tk

Tkkk

Tk

TTk

TTkkk

Tk

Tkkkkkk

LLCLIGvAeL

CLIGvAeGvAeCLIES

1111111

111

2 +++++++

+++

+−+−

−++−=

ωωω

Page 94: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

94

De las hipótesis sobre las propiedades estadísticas de los ruidos vistas en 4.2.11,

tenemos que:

[ ]

[ ]

[ ] 01

11

=

=

=

+

++

Tkk

kTk

kTk

vE

WE

VvvE

ω

ωω (4.26)

Además, no es difícil ver que:

[ ] ( )[ ]

[ ] [ ] [ ] 0ˆ

ˆ

111

11

=−=

−=

+++

++

Tkk

Tkk

Tkk

Tkkk

Tkk

xExEeE

xxEeE

ωωω

ωω (4.27)

ya que kx y kx̂ no están correlacionadas con 1+kω . Y por otro lado:

[ ] [ ]

[ ] [ ] [ ] 0ˆ

)ˆ(

=−=

−=

Tkk

Tkk

Tkk

Tkkk

Tkk

xvExvEevE

xxvEevE (4.28)

ya que kx y kx̂ tampoco están correlacionadas con kv . Usando (4.26), (4.27) y (4.28)

en (4.25), llegamos a la expresión:

[ ] [ ][ ] Tkk

Tk

TTk

Tkk WLLCLIGVGAASCLIS 11111 +++++ +−+−= (4.29)

La expresión recursiva (4.29) representa la dinámica de la covarianza del error

de estimación. Esta expresión, sin embargo, no es enteramente útil, pues todavía no

conocemos 1+kL , que determinaremos en lo que sigue.

Determinación de la ganancia de observación óptima.

Para determinar el valor de la ganancia 1+kL que minimiza el criterio de

optimización (4.24), expandimos 1+kStr de (4.29) en:

Page 95: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

95

[ ] [ ] [ ][ ]

[ ][ ] [ ]Tkk

TTkk

Tk

TTTkk

TTkk

WLLtrGVGAASCLtr

LCGVGAASCLtrGVGtrAAStrStr

111

111

2 +++

+++

++−

+++= (4.30)

Ahora derivamos (4.30) con respecto a 1+kL . Los dos primeros términos dan

cero, pues no dependen de 1+kL . Para los siguientes términos usamos las siguientes

propiedades de la derivada de la traza de una matriz:

[ ]

[ ] TT

T

ZYYXZtrX

XYXYXtrX

=∂∂

=∂∂ 2

Así obtenemos de (4.30)

[ ] [ ] WLCGVGAASCGVGAASCL

StrL

kTTT

kTTT

kk

kk

11

11

2220

0

++

++

++−+=

∂∂

=

que tiene como solución:

[ ] [ ][ ] 11

+ +++= WCGVGAASCCGVGAASL TTTk

TTTkk (4.31)

Esta es la ganancia óptima para el estimador dado por la ecuación (9.23), y se

conoce como la ganancia de Kalman. Como supusimos, es inestacionaria, ya que

depende de kS , que se obtiene resolviendo la ecuación en diferencias (4.29).

Procedimiento para computar el filtro de Kalman discreto

Page 96: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

96

Resumimos los pasos necesarios para programar el filtro de Kalman. Partimos

del conocimiento de las propiedades estadísticas, valor esperado y varianza, de los

ruidos kv y kω , y la condición inicial 0x .

1. Calculamos la estima a priori del estado (predicción):

kkk BuxAx +=+ ˆ1( (4.32)

inicializada con la estima inicial [ ]00xExk = .

2. Calculamos la ganancia de Kalman de (9.31):

[ ] [ ][ ] 11

+ +++= WCGVGAASCCGVGAASL TTTk

TTTkk (4.33)

que inicializamos con la covarianza original [ ] 0000SxxES T

k == .

3. Calculamos la estima a posteriori, corregida con la salida medida 1+ky mediante

(4.23), que puede simplificarse a:

[ ]11111ˆ +++++ −+= kkkkk xCyLxx (( (4.34)

4. Calculamos, de (4.29), la matriz de covarianza para la próxima iteración:

[ ] [ ][ ] Tkk

Tk

TTk

Tkk WLLCLIGVGAASCLIS 11111 +++++ +−+−= (4.35)

y el proceso se repite el siguiente paso.

Ejemplo 4.2 (Filtro de Kalman discreto). Consideremos el sistema en tiempo

discreto:

Page 97: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

97

kkkk vuxx ⎥⎦

⎤⎢⎣

⎡−

+⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡−

=+ 0474324.00430570.0

0452456.00021886.0

8146405.0081767.00817367.08146405.0

1 (4.36)

donde el término de ruido v tiene media cero y covarianza V = 0,09. El ruido de

medición se asume de media cero y covarianza W = 0,25.

El sistema (4.36) es la discretización exacta, con período de muestreo T = 0,05s,

del sistema de tiempo continuo:

[ ] ω+=

⎥⎦

⎤⎢⎣

⎡−

+⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡−−

−=

xy

vuxx

01

11

10

4224.

Construimos un filtro de Kalman discreto para estimar la evolución del estado

del sistema (4.36) cuando se le aplica la entrada u = sen kT, con período de muestreo

T=0.05s, y sobre el intervalo kT ∈ [0, 10]s. Las ecuaciones del filtro de Kalman, (4.32),

(4.33), (4.34) y (4.35), no son difíciles de programar en MATLAB, por ejemplo de la

siguiente manera:

% Ejemplo filtro de Kalman discreto

% Sistema en tiempo continuo

Ac=[-4,2;-2,-4];

Bc=[0;1];

Gc=[1;-1];

C=[1,0];

% Discretización exacta - Sistema en tiempo discreto

T=0.05; % tiempo de muestreo

A=expm(Ac*T);

B=inv(Ac)*(A-eye(2,2))*Bc;

G=inv(Ac)*(A-eye(2,2))*Gc;

% Covarianzas de Ruidos

V=0.09; % ruido de proceso

Page 98: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

98

W=0.025; % ruido de medición

% Condiciones iniciales del sistema (para simular)

t=0:T:10;

u=sin(t);

x0=[0;0];

x=x0;

y=C*x0;

% Conjetura de condiciones iniciales para el filtro de kalman

xh=[0.5;-0.5]; % xh(0)

xp=xh; % xp(0)

S=eye(2,2); % S0

% Simulación

for k=1:length(t)-1

% sistema

x(:,k+1)=A*x(:,k)+B*u(k)+G*sqrt(V)*randn;

y(k+1)=C*x(:,k+1)+sqrt(W)*randn;

% filtro de Kalman inestacionario

xp(:,k+1)=A*xh(:,k)+B*u(k); % estima a priori

L=(A*S*A’+G*V*G’)*C’*inv(C*(A*S*A’+G*V*G’)*C’+W);

xh(:,k+1)=xp(:,k+1)+L*(y(k+1)-C*xp(:,k+1)); % estima

S=(eye(2,2)-L*C)*(A*S*A’+G*V*G’)*(eye(2,2)-L*C)’+L*W*L’;

end

Corriendo este programa simulamos el sistema discreto y al mismo tiempo

vamos calculando la estima del estado. La figura 4.21 muestra la evolución de los

estados del sistema y los estados estimados por el filtro de Kalman inestacionario.

Puede verse como las variables ruidosas son filtradas por el estimador, dando versiones

((suavizadas)) de la evolución de los estados luego de un breve transitorio de

aproximadamente 0.5 s.

Page 99: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

99

Figura 4.21: Evolución de los estados del sistemas y los estimados.

4.3.1.12. Notas.

• La ecuación diferencia de Riccati (4.29) que determina la matriz de covarianza

kS se calcula para adelante en el tiempo, a diferencia del dual caso de control

óptimo LQ. Esto implica que el filtro de Kalman puede implementarse en su

forma inestacionaria en tiempo real.

• El filtro de Kalman derivado es el mejor estimador si los ruidos de proceso y

medición son Gausianos. Para otras distribuciones probabilísticas, el filtro de

Kalman es el mejor estimador lineal.

• El filtro de Kalman puede obtenerse también en tiempo continuo, aunque es

raramente usado en la práctica, ya que casi siempre se implementa en una

computadora digital, para la que la versión discreta es más natural. La derivación

de las ecuaciones es similar al caso continuo, y lleva a una ecuación diferencial

de Riccati, dual al caso de control LQ.

Page 100: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

100

• Como en el caso de control óptimo LQ, también en el caso del filtro de Kalman

pueden calcularse soluciones estacionarias de la ecuación diferencia (diferencial)

de Riccati que determina la matriz de covarianza. Esta solución será

“aproximadamente óptima”, y única si y sólo si ( )TT CA , es estabilizarle, y

( )TT TA , detectable, donde TT TTGCG = .

• En MATLAB, la función kalman computa el filtro de Kalman estacionario

(continuo o discreto).

• Naturalmente, el filtro de Kalman puede combinarse con cualquier control por

realimentación de estados. Cuando el controlador elegido es el óptimo LQ, la

combinación da lo que se conoce como controlador lineal cuadrático gausiano

(LQG).

• La robustificación de un regulador LQG mediante agregado de acción integral

exactamente igual al caso visto en asignación de polos y se aplica de la misma

manera (la acción integral es parte del diseño de la arquitectura de control, y no

del control en sí).

Útiles en MATLAB

DLQR Diseño de regulador lineal cuadrático para sistemas de tiempo discreto.

[K,S] = dlqr(A,B,Q,R) calcula la ganancia óptima de realimentación de estados K tal

que el control u = -Kx minimiza el costo:

( )∑∞

=

+=0k

kTkk

Tk dtRuuQxxJ

y estabiliza asintóticamente el sistema de tiempo discreto:

kkk BuAxx +=+1

La matriz S resuelve la ecuación algebraica de Riccati discreta:

Page 101: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

101

( )( ) ( ) 01=++−−

− QSABSBBRSBASSAA TTTT

LQR Diseño de regulador lineal cuadrático para sistemas de tiempo continuo.

[K,P] = lqr(A,B,Q,R) calcula la ganancia óptima de realimentación de estados K tal que

el control u = -Kx minimiza el costo:

( )dtRuuQxxJ TT∫∞

+=0

y estabiliza asintóticamente el sistema de tiempo continuo:

BuAxx +=.

La matriz P resuelve la ecuación algebraica de Riccati:

( ) ( ) 01 =+−+ − QPBRPBPAPA TT

DLQE Diseño de filtro de Kalman para sistemas discretos. La función L =

dlqe(A,G,C,Q,R) calcula la ganancia L del filtro de Kalman estacionario:

( )kkkkk

kkk

DuxCyLxx

BuxAx

−−+=

+=

+++

+

ˆˆ

ˆ

111

1

(

(

para estimar el estado x del sistema en tiempo discreto:

kkkk

kkkk

vDuCxy

GBuAxx

++=

++=+ ω1

donde w y v son ruidos de proceso y de medición, respectivamente, de media nula y

con covarianzas:

Page 102: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

102

[ ] [ ] [ ] NvERvvEQE TTT === ωωω ,,

Notar que si w y v son no correlacionados (como generalmente se asume),

entonces N = 0.

LQE Diseño de filtro de Kalman para sistemas continuos. La función L =

lqe(A,G,C,Q,R,N) calcula la ganancia L del filtro de Kalman estacionario:

( )DuxCyLBuxAx −−++= ˆˆˆ

para estimar el estado x del sistema en tiempo continuo:

donde w y v son ruido de

proceso y de medición,

respectivamente, de media nula y

con covarianzas:

[ ] [ ] [ ] NvERvvEQE TTT === ωωω ,,

Notar que si w y v son no correlacionados (como generalmente se asume),

entonces N = 0.

vDuCxy

GBuAxx

++=

++= ω.

Page 103: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

103

4.3.2. Implementación del control LQG.

Veamos como implementamos mediante el simulink este tipo de control. El

bloque control LQG contiene lo siguiente:

Figura 4.22: Modelo Simulink del controlador LQG.

Las entradas que tiene el bloque son la salida del instante k, la señal de control

del instante k y la señal de activación del control LQG. La entrada “salida” únicamente

contiene los tres estados accesibles del sistema por lo que tenemos que utilizar un filtro

de Kalman para estimar los otros dos estados. Al filtro de Kalman introducimos las

mismas tres entradas. Una vez que el filtro de Kalman a ha realizado la estimación

completa del estado para el instante k la pone a su salida.

Para hallar el señal de control para el instante k+1 lo único que tenemos que

hacer es multiplicar el estado en el instante k estimado por el filtro de Kalman por la

ganancia óptima de realimentación de estados K de tal manera que implementamos la

ley de control:

( ) ( )kKxku −=+1

4.3.2.1. Diseño del control LQR.

Para calcular la ganancia óptima de realimentación de estados utilizamos el

comando de matlab K = dlqr(A,B,Q,R), donde A y B son las matrices del sistema

linealizado que hallamos en el apartado 3.5:

Page 104: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

104

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

=

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

−−

+

=

001000001000001

0000

21000

1lg

00

01000010

0001

2

2

C

T

B

TTI

mlTB

IT

ImT

TT

T

A

mmnm

nmv

mm

m

mn

m

δω

ω

ω

Para calcular las matrices de peso Q y R, utilizaremos las siguientes fórmulas

que nos servirán como punto de partida:

2max

2max

2max

2max

2max

2max

1

510000

041000

003100

000210

000011

uR

x

x

x

x

x

Q =

⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

Midiendo encontramos que x1max = 1.2 metros, x2max = 1 m/s. Para x3max

tendríamos que tomar el ángulo máximo para el que consideraríamos que estamos en

zona lineal, que en nuestro caso será de ±5º, por tanto x3max = 0.0873 radianes.

Para calcular x4max como no podemos tomar una medida directa lo que haremos

es hacer que el péndulo comience a rebotar de un extremo a otro lo más rápido posible

de forma que obtendremos la velocidad angular máxima a partir de la derivada del

ángulo con el siguiente bloque:

Page 105: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

105

Figura 4.23: Bloque calculo de velocidad angular.

Como podemos ver este bloque lo que se limita es a hacer la derivada de la señal

del ángulo según la fórmula:

( ) ( ) ( )mT

kkk θθω −+=+

11

Veamos el resultado de aplicar este bloque:

1 1.5 2 2.5 3 3.5 4 4.5 5-10

-8

-6

-4

-2

0

2

4

6

8

10

tiempo

velocidadangular ángulo control

Figura 4.24: Velocidad angular para Impulso=10 y K=5.

Page 106: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

106

Observando la figura podemos determinar que x4max = 5.

Para el cálculo de x5max como tampoco podemos acceder directamente a la

medida lo estimaremos a partir de la simulación del carro sometiéndolo a la velocidad

máxima a la que puede operar es decir 1 m/s:

0 0.5 1 1.5-0.2

-0.15-0.1

-0.050

0.050.1

0.150.2

0.250.3

0.350.4

0.450.5

0.550.6

0.650.7

0.750.8

0.850.9

0.951

1.051.1

1.151.2

tiempo

x5 velocidad

Figura 4.25: x5 para v = 1 m/s.

Observnado la gráfica vemos que x5max = 0.05 m/s2.

Ya solamente nos falta decir que umax = 1. Por tanto los pesos quedan de la

siguiente forma:

1

4000000004.0000002.131000001000006944.0

=

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

= RQ

A continuación y antes de seguir con el filtro de Kalman comprobaremos

mediante simulación y suponiendo que todos los estados fueran accesibles si con estas

Page 107: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

107

matrices de pesos funcionaría el control LQR. Para realizarlo utilizaremos el siguiente

esquema:

Figura 4.26: Esquema control LQR.

Suponiendo como condiciones iniciales: x1 = 0.4 metros, x2 = -0.25 m/s, x3 =

0.083 rad, x4 = -1 rad/sg y x5 =0.02 m/s2 obtenemos el siguiente resultado:

0 1 2 3 4 5 6 7 8 9 10-1

-0.5

0

0.5

tiempo

posición velocidadángulo velocidadangular x5

Figura 4.27: Resultado simulación control LQR.

Page 108: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

108

En la figura se observa como efectivamente el ángulo, que es nuestra variable

objetivo, tiende a cero por lo que las matrices de pesos en principio funcionarían

correctamente. Además se comprueba que ninguna de las variables excede sus

máximos.

Todo esto es en la simulación, más adelante tendremos que comprobar en el

laboratorio el funcionamiento.

4.3.2.2. Diseño del filtro de Kalman.

Como ya se ha explicado el filtro de Kalman se utiliza para obtener una

estimación del estado del sistema, cuando no tenemos acceso a todas la variables, a

partir de la siguientes ecuaciones:

( )kkkkk

kkk

DuxCyLxx

BuxAx

−−+=

+=

+++

+

ˆˆ

ˆ

111

1

(

(

El diagrama de bloques que implementa dichas ecuaciones es el siguiente:

Figura 4.28: Diagrama de bloques del filtro de Kalman.

L

C z-1

A

+

B

xe(k)

+

+

+

u(k) y(k) H

Page 109: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

109

A, B y C son las matrices del sistema linealizado y L la ganancia del filtro de

Kalman . La función L = dlqe(A,G,C,Q,R) calcula la ganancia L del filtro de Kalman

estacionario.

Vamos a ver como obtener las matrices G, Q y R. Como ya vimos en el apartado

4.2.1.11:

[ ] [ ] [ ] NvERvvEQE TTT === ωωω ,,

donde kv es el ruido de planta o proceso y kω es el ruido de medición. Como dijimos el

ruido de planta modela el efecto de entradas ruidosas que actúan en los estados mismos.

Como podemos comprobar en el laboratorio si nosotros no introducimos una u

en los estados no se produce ninguna variación aunque así lo indiquen las mediciones

por lo que supondremos que el ruido de planta es cero y que únicamente tenemos ruidos

de medición. Para calcular este último calcularemos la varianza de las mediciones

obtenidas:

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 51.4275

1.428

1.4285

1.429

1.4295

1.43

tiempo

posi

ción

Figura 4.29: Medida del ruido de la señal de posición.

Utilizando matlab para hallar la varianza de esta señal obtenemos 8101556.4 −⋅ .

Page 110: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

110

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

tiempo

velo

cida

d

Figura 4.30: Medida del ruido de la señal de velocidad.

La varianza de la velocidad es 0.0313.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.07

0.075

0.08

0.085

0.09

0.095

tiempo

ángu

lo

Figura 4.31: Medida del ruido de la señal de ángulo.

La varianza es de 6103407.2 −⋅ . Por tanto la matriz que nos queda es:

⎥⎥⎥

⎢⎢⎢

⋅=

6

8

103407.20000313.0000101556.4

R

Page 111: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

111

Implementemos el filtro de Kalman para comprobar mediante simulación si el

funcionamiento es correcto:

Figura 4.32: Esquema de control LQG.

Comprobando el interior del bloque Filtro de Kalman:

Figura 4.33: Esquema Simulink del filtro de Kalman.

vemos como se implementa el esquema que se presentaba en la figura 4.28.

A continuación veremos el resultado de ejecución introduciendo como

condiciones iniciales del sistemas las mismas que introdujimos para el control LQR.

Page 112: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

112

0 1 2 3 4 5 6 7 8 9 10-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

tiempo

posición velocidadángulo

Figura 4.34: Resultado simulación control LQG.

Se comprueba que el control LQG funciona correctamente y de forma similar a

como lo hacía el control LQR cuando se suponía que todos los estados eran accesibles y

por tanto conocidos.

Page 113: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

113

5. Resultados.

5.1. Simulación del modelo global.

A continuación mostraremos el modelo que engloba los dos controladores que

hemos diseñado en el apartado cuatro:

Figura 5.1: Modelo global de simulación.

Para sincronizar el uso de los dos controladores utilizamos la señal “on”. Ésta es

generada en el relay de forma que cuando el ángulo está fuera de la zona lineal la señal

de “on” se encuentra a 1 y el controlador que actúa sobre el sistema “péndulo”, que se

puede ver en la figura 3.18, es el controlador de alzamiento cuya estructura ya

mostramos en la figura 4.7. Posteriormente cuando el ángulo se encuentra en la zona

lineal el relay conmuta a 2 y el control que actúa sobre el sistema es el controlador

Page 114: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

114

LQG. La introducción de esta señal “on” hace que tengamos que introducir unas

modificaciones en el controlador LQG diseñado en el apartado anterior.

A continuación veremos cuáles han sido estas modificaciones implementadas

en el filtro de Kalman:

Figura 5.2: Diagrama Simulink de filtro de Kalman.

Tenemos que tener en cuenta que a nosotros lo que nos interesa es que el filtro

de Kalman empiece a funcionar una vez que el péndulo haya sido alzado y se encuentre

en la zona lineal. Esta sincronización la logramos con la variable de entrada “on” que

pone en marcha el funcionamiento del filtro cuando esto sucede.

Page 115: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

115

Cuando “on” es igual a 1 tanto la u(k) como el e(k) = y(k) – ye(k) que se

introducen al filtro son nulos como podemos ver en los multipuertos del diagrama,

además la realimentación del estado en este caso es unitaria. Todo esto hace que

mientras “on” se mantenga con valor 1:

)()1( kxkx ee =+

Cuando “on” es igual a 2 los multipuertos conmutan y el filtro comienza a

funcionar.

Otro problema al que nos tenemos que enfrentar es el hecho de capturar el

estado del sistema justo en el momento del cambio ya que estas serán las condiciones

iniciales del filtro de Kalman. Para ello tenemos el bloque condición de cambio:

Figura 5.3: Diagrama Simulink del bloque Condiciones de cambio.

Para calcular la condición de cambio lo que hace es que mientras “on” es igual 1

se queda con el valor de los tres estados accesibles medidos ( posición, velocidad y

ángulo) y calcula los otros dos mediante ecuaciones teóricas. Para calcular la velocidad

Page 116: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

116

angular lo que hacemos es realizar la derivada del ángulo de la misma forma que en la

figura 4.22 y para calcular x5 utilizamos la ecuación que dedujimos en el apartado 3.2

cuando analizamos el modelo del carro.

Figura 5.4: Diagrama Simulink para calcular el estado x5.

Cuando “on” es igual a 2 el multipuerto conmuta y lo que hace es mantener en

el tiempo el último valor para el estado del sistema del instante anterior a que la señal

“on” conmutara. Por último para introducir esta condición inicial usaremos un modelo

de pequeña señal:

.var

.

.tan

:

estadodeliaciónlaalmacenaqueseñalPequeñax

inicialessCondicioneX

kteinsensistemadelEstadoX

dondexXX

k

I

k

kI

k

+=

Ikkk

Ik XXxxXX −=⇒+= ++++ 1111

Este es el motivo por el que en la figura 4.28 primero restamos las condiciones

iniciales y posteriormente después del delay se las sumamos. Primero se restan las

condiciones iniciales para obtener la pequeña señal que se introduce en el delay y

Page 117: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

117

posteriormente para obtener el estado actual del sistema a la pequeña señal le sumamos

las condiciones iniciales.

En la figura 5.1 podemos observar también un bloque saturador. Este bloque se

coloca para evitar que aun cuando la señal de control generada por el controlador LQG

sea mayor que uno, como máximo sea este valor el que se introduce al sistema ya que la

señal de control que este es capaz de seguir es precisamente de ±1.

A continuación se muestra el resultado de la simulación de este modelo global

del sistema:

0 1 2 3 4 5 6 7 8-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

tiempo

control posición velocidadángulo

Figura 5.5: Resultado de la simulación global.

Podemos observar como el péndulo es alzado sin violar ninguno de los límites

de los límites de las variables de estado , es decir, la velocidad nunca supera en módulo

1 y la posición en módulo nunca supera 1.2. Pero hagamos un zoom para obserbar

mejor el comportamiento de la variable de estado ángulo que es la que nos describe el

comportamiento del péndulo.

Page 118: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

118

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

tiempo

ángu

lo

Figura 5.6: Simulación de la señal de ángulo.

En la gráfica se puede observar perfectamente como el péndulo después de un

rebote contra los topes, asciende y es controlado en torno al ángulo cero manteniéndose

en equilibrio tal y como era nuestro objetivo.

En el siguiente apartado tendremos que comprobar si este resultado teórico

obtenido mediante simulación se reproduce también en el laboratorio.

5.2. Ejecución en laboratorio del modelo global.

En primer lugar tenemos que diseñar el modelo simulink. A continuación

debemos cargar en el Workspace de Matlab la serie de variables y matrices que hemos

ido calculando en los distinto apartados del proyecto mediante el m-file “matrizlqr” que

se muestra en el ANEXO 1. Posteriormente generaremos una aplicación en lenguaje C

asociado a este modelo, esto lo realizaremos ejecutando la opción de Simulink “RTW

Build”. Una vez generado este código tendremos que abrir el programa “dSpace” y

Page 119: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

119

nuestro proyecto, en el que hemos generado el layout que se observa en la figura 2.5. A

continuación debemos cargar la aplicación en los microprocesadores de la unidad

“SimoDrive 611” y ya estará listo para ser ejecutado. Veamos el modelo simulink

utilizado en los laboratorio:

Figura 5.7: Modelo global para el laboratorio.

Únicamente explicaremos las diferencias con el modelo visto en la figura 5.1. En

este caso el controlador de levantado es el visto en la figura 4.12. Además tenemos el

Motor Lineal visto en la figura 3.4. En la salida de la velocidad de dicho bloque se ha

introducido una ganancia de 0.01 ya que la medida que ofrece está en cm/s mientras que

a nosotros nos interesa en m/s. Otra diferencia es que aquí para calcular la velocidad

angular que introducimos en el controlador de alzamiento utilizamos el bloque

derivador del ángulo que se mostró en la figura 4.22. Además en este caso antes de

Page 120: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

120

dicha introducción se hace pasar la velocidad angular por un filtro discreto paso bajo

para intentar eliminar parte del ruido.

Veamos los resultados obtenidos:

4 5 6 7 8 9 10

-1

-0.5

0

0.5

1

tiempo

velocidadángulo rojo control

Figura 5.8: Resultado fallido de ejecución modelo global.

Observando el gráfico vemos como el péndulo después de dar un rebote

asciende pero después no es capaz de mantenerlo en equilibrio sin violar por ejemplo el

máximo de la posición que provoca que al llegar al tope el carro se pare y el péndulo

caiga hacia la derecha.

Por tanto debemos intentar que el carro no viole esta restricción. Para ello

sabiendo que el control LQR intenta minimizar el funcional:

∑−

=

++=1

, 21

21 N

ikk

Tkk

TkN

TNNi RuuQxxSxxJ

Page 121: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

121

Lo que tenemos que hacer es aumentar el peso de la posición en la matriz de

pesos Q que calculamos en el apartado 4.2.2.1, haciendo pruebas comprobamos que

para un peso de la posición de 30 se obtiene el siguiente resultado:

5 10 15 20-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

tiempo

angulo velocidadposición

Figura 5.9: Resultado de ejecución de modelo global para K=0.4.

Comprobamos como ahora efectivamente conseguimos controlar la variable

ángulo y por tanto el péndulo una vez alzado después de dar un rebote se mantiene en

equilibrio en torno a cero.

Para obtener este resultado hemos utilizado un impulso inicial de 0.7 y ganancia

del control de alzamiento de 0.4 de ahí que el péndulo se alce después de un rebote.

Comprobemos ahora si bajando la ganancia de control de alzamiento a 0.3 y

manteniendo el impulso inicial en 0.7 también se consigue controlar el péndulo. Para

este caso también se mantendrá la modificación de la matriz de pesos que hemos

realizado anteriormente. Comprobemos cuál es el resultado:

Page 122: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

122

8 10 12 14 16 18 20-0.5

0

0.5

1

tiempo

ángulo velocidadposición

Figura 5.10: Resultado de ejecución del modelo global para K=0.3.

Comprobamos como después de dar dos rebotes tal y como esperábamos el

péndulo es alzado y mantenido en equilibrio.

Por tanto se puede concluir que la estrategia de control seguida es correcta.

Page 123: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

123

6. Conclusiones y posibles extensiones.

A continuación se destacan los principales resultados alcanzados respetando en

lo posible el orden de los temas tratados.

Se comenzó realizando un estudio del sistema hardware del péndulo invertido

sobre vehículo móvil que se encuentra en los laboratorios de la Escuela de Ingenieros de

Sevilla describiendo el funcionamiento y distintas formas de implementación de los

motores lineales sobre los que se basa dicho sistema así como del armario y panel de

control que se utiliza para su regulación.

Posteriormente se realizó una descripción de los sistemas híbridos y pudimos

llegar a dos conclusiones importantes, la primera que el uso de un modelo de sistema

híbrido para modelar nuestro sistema nos iba a aportar una reducción de complejidad

del modelo en orden, obteniendo una representación para el mismo mediante un

conjunto de modelos simples con una logística de conmutación. La segunda era que

existen muchos enfoques para el modelado, análisis y síntesis de los sistemas híbridos.

A continuación pasamos a modelar el sistema. En concreto para realizar esto se

usó el modelo del autómata híbrido continuo lineal invariante en el tiempo. Se

comprobó como el comportamiento que se genera al rebotar el péndulo contra los topes

se puede modelar perfectamente mediante un sistema híbrido en el que tendríamos una

variable discreta que habilita la actuación de una fuerza de rebote que se oponga a la

caída del péndulo cuando este se encuentra en una posición mayor a los topes. Además

para realizar el modelado se tuvo que utilizar dos modelos diferentes, uno no lineal para

cuando el péndulo se encuentra alejado de la vertical y otro lineal para cuando se

encuentra próximo a dicha vertical

En le capítulo siguiente se procedió a establecer una estrategia de control que

nos permitiera alzar el péndulo partiendo desde una de las posiciones iniciales de reposo

y mantenerlo posteriormente en equilibrio en una posición vertical. Se llegó a la

conclusión de que para conseguir este comportamiento lo más adecuado era la

utilización de un controlador híbrido formado por una combinación de una ley de

Page 124: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

124

control orientada a aumentar la energía del péndulo que actúa lejos de la posición de

equilibrio, y por una ley de control lineal que lo estabiliza cuando está cerca de él.

Para aumentar la energía del péndulo utilizamos una ley de control basada en

aumentar la velocidad angular del péndulo, para ello, el carro debía moverse en

dirección contraria al movimiento del péndulo (velocidad angular del péndulo). El

problema de utilizar una ley control como esta es que cuando el péndulo se encuentra en

reposo su velocidad angular es cero y por tanto la señal de control también. Por tanto se

llega a la conclusión de que es necesario un impulso inicial que ponga en movimiento el

péndulo.

Posteriormente para mantener el péndulo en equilibrio como tenemos un sistema

lineal para posiciones próximas a la vertical se decidió utilizar un control LQR. El

problema que surge en ese momento es que no tenemos acceso a todos los estados del

sistema por tanto para poder utilizar el control LQR debemos primeramente utilizar un

filtro de Kalman para estimar el estado Al empleo conjunto de estas dos técnicas se le

conoce como control LQG.

Por último se comprobó experimentalmente en el laboratorio si la estrategia de

control propuesta era correcta. Después del ajuste de algunos parámetros el control

funcionaba correctamente en la mayoría de las ocasiones aunque a veces se observó que

si el péndulo al producirse la conmutación en el control tenía una velocidad angular

demasiado elevada el control LQG no era capaz de controlarlo.

Como posibles extensiones de este trabajo se podrían implementar otras

estrategias de control para el alzamiento en la que no hiciera falta suministrar un

impulso inicial o que asegurara que el péndulo llegase a la posición de conmutación de

control con una velocidad determinada. Otra posible modificación sería utilizar una

transición suave en lugar de una abrupta a la hora de conmutar el control de forma que

se redujera el transitorio como resultado de las diferencias entre los valores de control

en el instante de transición de una ley a otra.

Page 125: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

125

ANEXO 1.

A.1. m-file que modela el comportamiento del péndulo.

function [sal]= final4(u,on,x);

g = 9.8; %m/s^2

lv= 0.75; %m Longitud de la varilla

l = 0.375; %m Distancia al centro de masas

mv = 1; %kg Masa del pendulo

Tm=0.01; %Tiempo de muestreo

%Coeficiente de fricción de la varilla respecto al eje

Bv=0.015;

%Momento de incercia de varilla con eje extremo

Ic=(1/12)*(mv*lv^2);

I=Ic+mv*(l^2);%kg*m^2

alfa2 =55; %constante del muelle

kr =4714.4; %costante del muelle imaginario

%Constantes para normalizar el ángulo

Norm = (pi/6)/0.0917;

Const_ang = -0.0083;

%Parámetros del sistema de segundo orden que simula al carro

delta=0.385;

omega=11.3466;

% Si la señal on es igual a 2 entonces

% nos encontramos en la zona lineal.

if(on==2)

A=[1 Tm 0 0 0;

0 1 0 0 Tm*omega^2;

0 0 1 Tm 0;

0 0 mv*g*lv*Tm/(2*I) 1-Bv*Tm/I (omega^2)*mv*lv*Tm/(2*I);

0 -Tm 0 0 1-2*delta*omega*Tm];

Page 126: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

126

B=[0;0;0;0;Tm];

xsig=A*x + B*u;

elseif (x(3) < -pi/6) % Menor de -30º

Fr = kr*(x(3)+pi/6)+alfa2*x(4);

x1 = x(1) + Tm*x(2);

x5 = (1-2*delta*omega*Tm)*x(5) + Tm*(u-x(2));

x2 = omega^2*Tm*x(5) + x(2);

a=(x2-x(2))/Tm;

x3 = x(3) + Tm*x(4);

x4 = x(4) + Tm*((mv*l/(I))*(g*sin(x(3))+a*cos(x(3))+Bv*x(4))-Fr);

xsig=[x1;x2;x3;x4;x5];

elseif (x(3) > pi/6) % Mayor de 30º

Fr = kr*(x(3)-pi/6)+alfa2*x(4);

x1 = x(1) + Tm*x(2);

x5 = (1-2*delta*omega*Tm)*x(5) + Tm*(u-x(2));

x2 = omega^2*Tm*x(5) + x(2);

a=(x2-x(2))/Tm;

x3 = x(3) + Tm*x(4);

x4 = x(4) + Tm*((mv*l/(I))*(g*sin(x(3))+a*cos(x(3))+Bv*x(4))-Fr);

xsig=[x1;x2;x3;x4;x5];

elseif (-pi/6< x(3)< -pi*10/180) % Entre -30º y -5º

Fr = 0;

x1 = x(1) + Tm*x(2);

x5 = (1-2*delta*omega*Tm)*x(5) + Tm*(u-x(2));

x2 = omega^2*Tm*x(5) + x(2);

a=(x2-x(2))/Tm;

x3 = x(3) + Tm*x(4);

x4 = x(4) + Tm*((mv*l/(I))*(g*sin(x(3))+a*cos(x(3))+Bv*x(4))-Fr);

xsig=[x1;x2;x3;x4;x5];

else (pi/6> x(3)> pi*10/180) % Entre 5º y 30º

Fr = 0;

x1 = x(1) + Tm*x(2);

Page 127: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

127

x5 = (1-2*delta*omega*Tm)*x(5) + Tm*(u-x(2));

x2 = omega^2*Tm*x(5) + x(2);

a=(x2-x(2))/Tm;

x3 = x(3) + Tm*x(4);

x4 = x(4) + Tm*((mv*l/(I))*(g*sin(x(3))+a*cos(x(3))+Bv*x(4))-Fr);

xsig=[x1;x2;x3;x4;x5];

end

xsig(3)= xsig(3)/Norm + Const_ang;

sal=[xsig];

A.2. m-file que carga el Workspace de Matlab las matrices que necesitamos y

calcula las ganancias del control LQG.

function

[s1,s2,s3,s4,s5,delta,omega,g,lv,mv]=matrizlqr(x1max,x2max,x3max,x4max

,x5max,Tm);

g = 9.8; %m/s^2

lv= 0.75; %m Longitud de la varilla

l = 0.375; %m Distancia al centro de masas

mv = 1; %kg Masa del pendulo

%Momento de inercia de la varilla

Ic=(1/12)*(mv*lv^2);

I=Ic+mv*(l^2); %kg*m^2

%Coeficiente de fricción de la varilla respecto al eje

Bv=0.015;

%Constantes del sistema de 2º orden del carro.

omega=11.3466

delta=0.385

% Últimos valores introducidos

%x1max=1

%x2max=0.5

%x3max=0.0873

Page 128: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

128

%x4max=2

%x5max=1

%Matrices que describen el sistema en su zona lineal

A=[1 Tm 0 0 0;

0 1 0 0 Tm*omega^2;

0 0 1 Tm 0;

0 0 mv*g*lv*Tm/(2*I) 1-Bv*Tm/I (omega^2)*mv*lv*Tm/(2*I);

0 -Tm 0 0 1-2*delta*omega*Tm];

B=[0;0;0;0;Tm];

C=[1 0 0 0 0;

0 1 0 0 0;

0 0 1 0 0];

%Pesos para el cálculo del control LQR

Q=[1/x1max^2 0 0 0 0;

0 1/x2max^2 0 0 0;

0 0 1/x3max^2 0 0;

0 0 0 1/x4max^2 0;

0 0 0 0 1/x5max^2];

R=1;

%Matrices para cálculo LQG

G=[0;0;0;0;0];

Qlqg=0;

Rlqg=diag([4.1446e-008,0.0313,2.3407e-006]);

%Cálculo de las ganancias

K=dlqr(A,B,Q,R);

L=dlqe(A,G,C,Qlqg,Rlqg);

s1=K;

s2=L;

s3=A;

s4=B;

s5=C;

Page 129: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

129

A.3. m-file para el cálculo de las constantes de rebote.

function[sol]=calculaconst3(Tm,tetha1,tetha2,tetha3,tetha4)

g = 9.8; %m/s^2

lv= 0.75; %m Longitud de la varilla

l = 0.375; %m

mv = 1; %kg Masa del pendulo

%Momento de inercia de la varilla

Ic=(1/12)*(mv*lv^2);

I=Ic+mv*(l^2); %kg*m^2

%Constante de fricción

Bv=0.015;

%Constantes de normalización del ángulo

Norm = (pi/6)/0.0917;

Const_ang = -0.0083;

ang(1)=(tetha1 - Const_ang)*Norm;

ang(2)=(tetha2 - Const_ang)*Norm;

ang(3)=(tetha3 - Const_ang)*Norm;

ang(4)=(tetha4 - Const_ang)*Norm;

velAng(1)=0;

for i=2:4

velAng(i)=(ang(i)-ang(i-1))/Tm;

end

K=(mv*l/(I))

b(1)=velAng(3)-velAng(2)-Tm*K*g*sin(ang(2))-Tm*K*Bv*velAng(2);

b(2)=velAng(4)-velAng(3)-Tm*K*g*sin(ang(3))-Tm*K*Bv*velAng(3);

A=[-Tm*(ang(2)-pi/6) -Tm*velAng(2);-Tm*(ang(3)-pi/6) -Tm*velAng(3)];

I=inv(A);

b=[b(1);b(2)];

sol=I*b;

Page 130: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

130

const=[sol(1);sol(2)];

A.4. m-file para simular el comportamiento del carrito.

function [sal]= carrito(u,x);

%Constantes del sistema de 2º orden

delta=0.5;

omega=10.3646;

%Tiempo de muestreo

Tm=0.01;

x1 = (1-2*delta*omega*Tm)*x(1) + Tm*(u-x(2));

x2 = omega^2*Tm*x(1) + x(2);

sal=[x1;x2];

Page 131: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

131

Bibliografía.

• John S. Bay. Fundamentals of Linear State Space Systems. WCB/McGraw-Hill,

1999.

• Chi-Tsong Chen. Linear System Theory and Design. Oxford University Press,

3rd edition,1999.

• John C. Doyle, Bruce A. Francis, and Allen Tannenbaum. Feedback control

theory. Macmillan Pub. Co., 1992.

• B. Friedland. Control System Design. McGraw-Hill, 1986.

• G.C. Goodwin, S.F. Graebe, and M.E. Salgado. Control System Design. Prentice

Hall, 2000.

• G.C. Goodwin and K.S. Sin. Adaptive Filtering Prediction and Control.

Prentice-Hall, New Jersey, 1984.

• Wilson J. Rugh. Linear System Theory. Prentice Hall, 2nd edition, 1995.

• Ricardo Sánchez Peña. Introducción a la teoría de control robusto. Asociación

Argentina de Control Automático, 1992.

• M. M. Seron, J. H. Braslavsky, and G. C. Goodwin. Fundamental Limitations in

Filtering and Control. CCES Series. Springer-Verlag, 1997.

• C.F. Van Loan. Computing integrals involving the matrix exponential. IEEE

Trans. Automat. Contr., AC-23(3):395–404, June 1978.

• D.M. Etter. Engineering Problem Solving with Matlab. Prentice-Hall.

• Antonio Moreno. Trabajando con Matlab y el System Toolbox. Ra-Ma.

Page 132: Modelado y control del péndulo invertido sobre carro ...bibing.us.es/proyectos/abreproy/11452/descargar_fichero/PFC.pdf · Modelado y control del péndulo invertido sobre carro mediante

Modelado y control del péndulo invertido sobre carro mediante sistemas híbridos._______________Autor: Fernando Bote Ortega

132

• Robert N. Bateson. Introduction to Control System Technology. Prentice-Hall.

• Stefani, Shanion, Savant, Hostetter. Design of Feedback Control Systems.

Oxford University Press.

• L.Grossman, A Nerode, A. P. Ravn and H. Rischel, editors. Hibryd Sistems.

Springer-Verlag 1993

• Favela, A. “Hybrid Automata Models in Continuous-Linear Hybrid Systems

Analysis”, Proceedings of the 1999 IEEE International Symposium on

Intelligent Control/Intelligent Systems and Semiotics, Cambridge, MA., pp. 11-

16, 1999.

.


Top Related