Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Pendulo Invertido PDF
Pendulo Invertido PDF
ndice
1. Objetivos ............................................................ 8
2. Introduccin ...................................................... 9
3. Modelado .......................................................... 27
2
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
4. Control .............................................................. 57
3
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
ndice figuras.
Figura 2.1 Representacin de un motor lineal................................................... 10
Figura 2.2 Motor lineal con plataforma mvil.................................................. 15
Figura 2.3 Armario y panel de control............................................................... 15
Figura 2.4 Pndulo invertido............................................................................... 16
Figura 2.5 Pantalla ControlDesk........................................................................ 18
Figura 2.6 Diagrama de conexionado del motor lineal..................................... 20
Figura 3.1 Modelo usado en funcin del ngulo del pndulo........................... 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 escaln............................................. 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 escaln u=0.3...................... 36
Figura 3.8 Diagrama de fuerzas que actan 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 pndulo apoyado sobre la izquierda.............................. 43
Figura 3.13 Valor del pndulo apoyado sobre la derecha................................. 43
Figura 3.14 Cada libre del pndulo hacia la izquierda.................................... 45
Figura 3.15 Cada libre del pndulo hacia la derecha....................................... 45
Figura 3.16 Zona de rebotes de la izquierda...................................................... 46
Figura 3.17 Modelo simulink del pndulo.......................................................... 49
Figura 3.18 Simulacin de cada libre del pndulo hacia la izquierda............ 50
Figura 3.19 Simulacin de la zona de rebotes izquierda................................... 50
Figura 3.20 Simulacin normalizada.................................................................. 51
Figura 3.21 Modelo del autmata hbrido del pndulo..................................... 56
Figura 4.1 Pndulo 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
5
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Figura 4.5 Variacin de la velocidad del carro ante el impulso inicial............ 63
Figura 4.6 Variacin del ngulo del pndulo 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 Seal 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 Evolucin del estado en lazo cerrado.............................................. 82
Figura 4.20 Evolucin de las ganancias.............................................................. 83
Figura 4.21 Evolucin de los estados del sistema y los estimados.................... 99
Figura 4.22 Modelo Simulink del controlador LQG......................................... 103
Figura 4.23 Bloque clculo 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 simulacin control LQR................................................ 107
Figura 4.28 Diagrama de bloques del filtro de Kalman.................................... 108
Figura 4.29 Medida del ruido de la seal de posicin........................................ 109
Figura 4.30 Medida del ruido de la seal de velocidad..................................... 110
Figura 4.31 Medida del ruido de la seal 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 simulacin del control LQG.......................................... 112
Figura 5.1 Modelo global de simulacin............................................................. 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
6
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Figura 5.5 Resultado de la simulacin global.................................................... 117
Figura 5.6 Simulacin de la seal de ngulo...................................................... 118
Figura 5.7 Modelo global para el laboratorio................................................... 119
Figura 5.8 Resultado fallido de ejecucin del modelo global........................... 120
Figura 5.9 Resultado de ejecucin del modelo global para K=0.4.................. 121
Figura 5.10 Resultado de ejecucin del modelo global para K=0.3................ 122
7
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
1. Objetivos.
El objetivo del este proyecto es realizar un estudio del pndulo invertido sobre
vehculo mvil que se encuentra implementado en los laboratorios de automtica de la
Escuela Superior de Ingenieros de Sevilla empleando un modelo de sistema hbrido que
modele su comportamiento .
8
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
2. Introduccin.
Los motores lineales presentan ventajas y lmites. Las principales ventajas son:
9
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Vida larga.
Escasa necesidad de manutencin.
Robusteza.
Extensin ilimitada. Con algunas configuraciones puede resultar bastante simple
la ampliacin del recorrido del motor, pudiendo llegar a distancias grandes como
las de las monorrales.
La fuerza de atraccin entre las dos partes del motor puede ser de 2 a 5 veces
ms grande que la fuerza horizontal de propulsin.
La temperatura del motor conlleva limitaciones al rendimiento.
El hierro que en algunos casos forma el ncleo alrededor del que son envueltas
las bobinas genera atraccin, en caso de utilizacin con imanes, tambin si el
motor no est en funcionamiento.
10
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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 electromagntica. Nmero y extensin 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 mvil.
Cuando una corriente pasa por una bobina crea un campo magntico 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
mvil del motor. En la prctica a travs del control de la corriente que circula en las
espiras, es decir del campo electromagntico, se puede obtener el motor lineal continuo
deseado.
Segn la forma:
11
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Con primario mvil o secundario mvil.
En alternada sncrono o en alternada a induccin.
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 prdidas de rendimiento a daos
irreparables, por eso muchas veces el implante necesita un sistema de refrigeracin.
El control del pndulo invertido presenta una enorme variedad de problemas que
han hecho de l uno de los sistemas concretos para el ensayo de leyes de control ms
analizados en estos ltimos tiempos. Los primeros pndulos invertidos se construyeron
en los aos 70, y an hoy, treinta aos despus, se sigue experimentando con el pndulo
invertido y tratando de analizarlo desde un punto de vista terico. Es notable que
despus de tantos aos an no se haya conseguido un estudio unitario y satisfactorio de
dicho problema.
12
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
problema del malabarista que pretende mantener un palo en la punta de un dedo; y el
problema de levantar el pndulo desde su posicin de reposo hasta la posicin en la que
se mantiene erguido hacia arriba. Este ltimo problema se conoce con su denominacin
inglesa de problema del swing up.
Por ltimo, para terminar esta seccin sobre el problema de control del pndulo
invertido, conviene resaltar que se puede considerar como un problema arquetipo de lo
que es la ingeniera. No existe un mtodo universal para resolverlo, y ante l el
ingeniero tiene que desarrollar sus facultades imaginativas y creativas, combinando
diferentes mtodos 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. Instalacin.
13
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Motor lineal 1FN3 Siemens.
Sistema ptico de medida lineal LC181 Heidenhein.
Guas de rodamiento.
Pndulo invertido.
Potencimetro VISHAY.
Armario y panel de control.
PC con tarjeta dSpace.
El primario es la parte mvil, es decir que en su interior se hallan las bobinas que
generan el campo electromagntico. Su dimensiones son 254*67*47.7 mm.
La cabeza captadora del sistema de medida LC181 est fija en la parte mvil y
impone un limite de 120 m/min porque sea garantizado un correcto funcionamiento.
14
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
15
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Esa unidad es una tarjeta que funciona de interfaz directa con el motor adems
que de unidad de regulacin. Presenta bornes para el acceso directo a salidas y entradas
digitales y analgicas. La tarjeta est conectada por un lado al mdulo 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 travs del bus RS-232 y
la otra a travs de los bornes con la tarjeta dSpace que se halla en el PC. Veremos este
aspecto ms detalladamente luego.
2.1.3.3. Potencimetro.
10m 40
m mm
16
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Como ya se ha dicho arriba el pndulo tiene como ngulo mximo y mnimo
respectivamente +pi/6 y pi/6 con respecto a su vertical ya que tiene unos topes que
impiden que pueda inclinarse ms.
Por lo que concierne el presente proyecto ese software ha sido til para la
definicin de las puertas de entrada y salida directas, de los parmetros de final de
carrera software y para la gestin de las alarmas que, una vez que se activan, inhiben el
funcionamiento del motor. Tales acciones no pueden ser efectuadas a travs del modulo
que permite la aplicacin del control, esto es, el dSpace.
17
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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 va Simulink con la
propia librera a bloques RTI (Real-Time Interface).
Figura 2.5: Pantalla del ControlDesk desde la que podemos variar los parmetros
de control.
18
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
3. Para la visualizacin en tiempo real de la seal de control.
19
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Para terminar la seal en salida del bloque DS1103DAC_C6 tiene un rango de
+/- 10 V (en realidad se utiliza slo entre 0 y 10 V) y se halla en el conector P1A
pin 10 (convertidor digital-analgico 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 seal que llega de Simulink; por ejemplo si la seal en el
modelo es de 0.2, en el pin (y por eso tambin en entrada a la SimoCom 611)
har 2 V.
20
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
difcil que una herramienta se pueda aplicar a cualquier sistema y conservar las mismas
ventajas y propiedades.
2.3.1. Introduccin.
El trmino sistema hbrido es usado para definir una clase de sistemas con
comportamientos definidos por entidades o procesos de distintas caractersticas. Estos
sistemas contienen tpicamente variables o seales que toman valores de manera
continua y variables discretas que toman valores dentro de un conjunto finito de
posibilidades.
21
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
combinan ambos aspectos. stos ltimos dan lugar a lo que se conoce como sistemas
dinmicos hbridos. Durante su operacin, siempre ser importante el poder realizar un
anlisis y evaluacin del desempeo de los procesos actuales para verificar si stos
cumplen las especificaciones de acuerdo a lo planeado.
En un extremo del espectro se encuentran los enfoques en los que se abordan los
sistemas hbridos que representan extensiones de ideas tericas 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.
22
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Tpicamente, estos enfoques son capaces de manejar dinmicas continuas
complejas y enfatizan los resultados de estabilidad. En el otro extremo del espectro,
hallamos enfoques a los sistemas hbridos que estn incorporados a los modelos y
mtodos de la ciencia computacional, que representan extensiones de las metodologas
de verificacin de los sistemas discretos a los sistemas hbridos.
Los autmatas temporizados y los autmatas hbridos han sido usados por varios
investigadores para el modelado y verificacin de los sistemas hbridos. (Alur y Dill,
1994) propusieron autmatas temporizados para modelar el comportamiento de los
sistemas de tiempo real en el tiempo.
23
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
tiempo real de las mquinas de estado finito. En (Alur et al, 1995) introdujeron el marco
de referencia de autmatas hbridos como un modelo y el lenguaje de especificacin
para sistemas hbridos.
As, el modelo del autmata hbrido est basado en una representacin explicita
tanto de las dinmicas continuas del sistema como de las discretas. Las dinmicas
continuas se representan por modelos de estados mediante ecuaciones diferenciales que
las describen. Las dinmicas discretas se representan mediante el modelo del autmata
24
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
finito, donde se observa explcitamente la lgica de conmutacin del mismo (Favela et
al., 1999).
25
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
En el anlisis del comportamiento dinmico de sistemas influenciados por la
ocurrencia de eventos discretos, hay dos importantes lneas de investigacin: la que se
basa en el modelo del autmata y la que se basa en las redes de Petri. El inters de este
trabajo se basa en la modelacin y anlisis de sistemas hbridos mediante el modelo del
autmata hbrido continuo lineal invariante en el tiempo, propuesto por (Favela et al,
1999).
26
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
3. Modelado.
3.1. Introduccin.
Para modelar este sistema vamos a utilizar un modelo de sistema hbrido. Para
obtener dicho modelo debemos seguir los siguientes pasos:
.
5. Integracin de las variables continuas y discretas: utilizaremos el
modelo del autmata hbrido para realizar la integracin de las entidades.
6. Anlisis del sistema hbrido obtenido: con el fin de asegurar que todas
las condiciones previamente establecidas se cumplan.
Variables continuas.
27
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Posicin del carro (plataforma mvil).
Velocidad del carro.
ngulo del pndulo con respecto a la vertical.
Variables discretas.
Activacin de la fuerza que simula el comportamiento de los rebotes
ya que esta fuerza nicamente acta 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 condicin.
pi/36 0 -pi/36
Modelo Modelo
Modelo lineal
pi/6 no lineal no lineal -pi/6
Modelo de Modelo de
rebotes rebotes
28
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
En la figura podemos observar como tendremos que utilizar tres modelos
diferentes para modelar el comportamiento del pndulo invertido en todas sus
posiciones adems 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
posicin del pndulo.
Para obtener el modelo del carrito utilizamos el siguiente esquema Simulink que
posteriormente cargamos en la tarjeta dSpace.
29
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Posteriormente, a partir de este esquema, iremos modificndolo y aadindole
todo lo dems por tanto lo que a continuacin vamos a explicar sobre el bloque Motor
Lineal es valido para los esquemas Simulink que iremos analizando despus de este
apartado..
30
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
bit 5 permanece a nivel bajo causando un movimiento hacia izquierda
(relacionado al bit 7). Obviamente los dos bits, que no pueden estar
simultneamente a nivel alto, sern nulos si la entrada es cero. En realidad
debido a los retrasos de conmutacin 1/0 y 0/1 en las seales de entrada a la
unidad SimoDrive 611 Universal, dichas entradas podran estar simultneamente
a nivel alto. Por ejemplo, si el motor est parado podra ocurrir que a causa de
las pequeas oscilaciones alrededor del valor 0 de la seal de salida del motor, el
controlador generara entradas de control demasiado pequeas como para causar
algn movimiento del motor (a causa de la presencia de la friccin) pero que
generaran frecuentes y rpidas conmutaciones izquierda-derecha. Puede as
ocurrir que una seal no tenga suficiente tiempo para pasar a nivel bajo antes de
que el otro conmute a nivel alto, las seales estn en ese caso ambas a nivel alto
y esto comportara una parada del motor. Para evitar ese efecto indeseado hemos
introducido una zona muerta en la lectura, si la seal de salida del motor no
alcanza amplitudes apreciables, la seal de salida del bloque es fijada a cero.
Esto, adems 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 ms adelante.
31
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
DS1103ADC_C20: convertidor analgico-digital. Este bloque convierte la seal
35
30
25
velocidad
20
15
10
-5
1 1.25 1.5 1.75 2 2.25 2.5 2.75 3 3.25 3.5
tiempo
A partir de esta grfica obtendremos los datos necesarios para obtener la funcin
de transferencia de orden dos:
n2
F (s) =
s 2 + 2 n s + n2
Las ecuaciones que utilizaremos para obtener los parmetros de la funcin de
transferencia son las siguientes:
32
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Tp =
n =
1 2
donde:
Tp = Tiempo de pico, es decir, tiempo que tarda la velocidad en alcanzar el valor
mximo que se obtiene en el sobrepico.
n = frecuencia natural de los polos.
= coeficiente de sobreoscilacin.
= = = 8.9760
Tp 0.35
8.9760
n = = = 10.3646
1 2 1 0.5 2
107.4243
F (s) =
s + 10.3646s + 107.4243
2
33
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
x x5=x/s x2=x/s2
u y
n 2
-2n
-n2
2 n n2
u = x+ x+ 2 x
s s
n2
y= x
s2
x& 2 = n2 x5
x 2 (k + 1) x 2 (k )
= n2 x5 (k )
Tm
34
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
x 2 (k + 1) = x 2 (k ) + Tm n2 x5 (k )
x2
x& 5 = u 2 n x5 n2 = u 2 n x5 x 2
2
n
x5 (k + 1) x5 (k )
= 2 n x5 (k ) x 2 (k ) + u (k )
Tm
x5 (k + 1) = (1 2Tm n ) x5 (k ) + Tm (u (k ) x 2 (k ))
A estas ecuaciones hay que aadirle otra para describir la posicin del carrito
que la obtendremos integrando la velocidad:
.
x 2 = x1
x1 (k + 1) x1 (k )
x 2 (k ) =
Tm
x1 (k + 1) = x1 (k ) + Tm x 2 (k )
x1 (k + 1) 1 Tm 0 x1 (k ) 0
x (k + 1) = 0 1 Tm n x 2 (k ) + 0 u (k )
2
2
x5 (k + 1) 0 Tm 1 2Tm n x3 (k ) Tm
x1 (k + 1) 1 0.01 0 x1 (k ) 0
x (k + 1) = 0 1 1.0742 x 2 (k ) + 0 u (k )
2
x5 (k + 1) 0 0.01 0.8964 x5 (k ) 0.01
35
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
35
30
25
velocidad
20
15
10
0
0 0.25 0.5 0.75 1 1.25 1.5 1.75 2 2.25 2.5
tiempo
36
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
3.3.2. Modelo no lineal.
Para obtener la ecuacin que describe el movimiento del pndulo, sumamos las
fuerzas perpendiculares al pndulo. Si resolvemos el sistema a lo largo de este eje nos
ahorramos un montn de lgebra. De esta forma obtenemos la siguiente ecuacin:
..
P sin( ) + N cos( ) mg sin( ) = m x cos( ) + Frv
..
Pl sin( ) + Nl cos( ) = I
37
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Combinando estas dos ltimas ecuaciones obtenemos el siguiente resultado:
.. ..
I m lg sin( ) = ml x cos( ) + Frv
I = x 2 dm
38
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Figura 3.10: Varilla con eje perpendicular por uno de sus extremos.
El momento de inercia del slido respecto de un eje que pasa por O es:
39
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
En la figura, tenemos que
I O = mi Ri2 + 2d mi xic + d 2 mi
IO = IC + d 2M
Por tanto aplicando este resultado a nuestro caso obtenemos el siguiente valor
para el momento de inercia del pndulo.
1 1
I = I C + ml 2 = mL2 + ml 2 = m(2l ) 2 + ml 2
12 12
4 2
I= ml
3
Tanto la friccin del carro con el suelo como la friccin de la varilla con el eje
vienen dadas por:
d ( xc)
Frcarro = Bc
dt
d
Fr var illa = Bv ( )
dt
.. .. .
I m lg sin( ) = ml x cos( ) + Bv
40
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
.. .. .
I = ml x cos( ) + m lg sin( ) + Bv
.
..ml .. Bv
= x cos( ) + g sin( ) +
I I
x3 (k ) = Angulo
.
x 4 (k ) = Velocidad _ angular
x3 (k + 1) = x3 (k ) + Tm x 4 (k )
x 4 (k + 1) x 4 (k ) ml
= (a(k ) cos( x3 (k )) + g sin( x3 (k ))) + Bv x4 (k )
Tm I I
Tm
x 4 (k + 1) = x 4 (k ) + (ml (a(k ) cos( x3 (k )) + g sin( x3 (k ))) + Bv x4 (k ) )
I
.
x 2 (k ) = x = Velocidad _ carrito
x 2 (k ) x 2 (k 1)
a (k ) =
Tm
41
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
3.3.3. Modelo de los rebotes.
Para simular el comportamiento del pndulo cuando llega a los topes e impacta
contra ellos, lo modelaremos mediante un muelle que aplica al pndulo una fuerza en
direccin opuesta a su movimiento, proporcional a la deformacin y a la velocidad
angular.
Fr = [Kr ( / 6) + ]
Para que este modelo se ajuste a lo que ocurre realmente es obvio que la
constante de deformacin debe ser muy grande para que as el pndulo 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 pndulo por lo que la
ecuaciones que nos quedan son las siguientes:
x3 (k + 1) = x3 (k ) + Tm x 4 (k )
Tm
x 4 (k + 1) = x 4 (k ) + (ml (a(k ) cos( x3 (k )) + g sin( x3 (k ))) + Bv x4 (k ) ) + Tm Fr
I
Fr = k r x3 (k ) + x 4 (k )
6
42
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
A continuacin vamos a intentar calcular las constantes del rebote a partir de las
grficas obtenidas en el laboratorio.
0.095
0.0925
0.09
0.0875
0.085
angulo
0.0825
0.08
0.0775
0.075
0.0725
0.07
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
-0.093
-0.0943
-0.0955
-0.0968
-0.098
-0.0993
angulo
-0.1005
-0.1017
-0.103
-0.1043
-0.1055
-0.1068
-0.108
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
43
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Aplicando en Matlab un programita para calcular la media de cada una de estas
grficas obtenemos que:
Izquierda = 0.0835
Derecha = -0.1000
Obtener la grfica del pndulo en cada libre hacia cada uno de los
extremos con la sucesin de rebotes contra los topes. Hay que decir que
para obtener las constantes utilizaremos las grficas del ngulo sin
normalizar, ya que para esta no nos es necesario la normalizacin.
Realizar un zoom sobre dicha zona de rebotes.
Obtener a partir de dichas grficas una serie de puntos que se encuentren
en la zona de > /6 < /6.
44
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
A partir de esos puntos y con los ecuaciones despejar dichas constantes
del sistema de ecuaciones y resolverlo.
0.09
0.08
0.07
0.06
0.05
angulo
0.04
0.03
0.02
0.01
-0.01
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
0.02
-0.02
-0.04
angulo
-0.06
-0.08
-0.1
-0.12
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
45
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Realizamos el zoom sobre la zona de rebotes sobre la grfica de cada libre hacia
la izquierda:
0.0835
angulo
0.06
2.5 3 3.5 4
tiempo
Ahora analizamos las ecuaciones para ver el nmero puntos que nos es necesario
obtener para despejar las constantes.
. . Tm .
(k + 1) = (k ) + ml (a(k ) cos( (k )) + g sin( (k )) ) + Bv (k ) + Tm Fr
I
46
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Al realizarse estas pruebas con el carrito completamente inmovilizado por unos
topes que se han colocado para que no afecten las fuerzas de interaccin del carro sobre
el modelo del pndulo se obtiene lo siguiente:
. . Tm .
(k + 1) = (k ) + m lg sin( (k )) + Bv (k ) + Tm Fr
I
.
Fr = k r ( (k ) + ) + (k )
6
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.
. . Tm m lg T B . .
(k + 1) = (k ) + sin( (k )) + m v (k ) Tm k r (k ) + Tm (k )
I I 6
. . Tm m lg T B . .
(k + 2) = (k + 1) + sin( (k + 1)) + m v (k + 1) Tm k r (k + 1) + Tm (k + 1)
I I 6
. (k ) (k 1)
(k ) =
Tm
. (k + 1) (k )
(k + 1) =
Tm
. (k + 2) (k + 1)
( k + 2) =
Tm
Observamos que nos hacen falta al menos cuatro puntos para poder resolver el
sistema al menos dos de ellos contenidos en la regin de los rebotes.
47
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Dichos puntos sern los siguientes:
1 = 0.0752
1 = 0.07956
1 = 0.0835
1 = 0.0854
Estos puntos han sido obtenidos de la grfica de la cada libre hacia la izquierda
que representamos en la figura 3.17.
. . Tm m lg Tm Bv .
.
T ( k ) + T ( k) ( k ) + sin( ( k )) (k )
( k + 1)
m
6
m
k I I
. = + .
r
(k + 2) T (k + 1) + T (k + 1) (k + 1) + Tm m lg sin( (k + 1)) Tm Bv (k + 1)
. .
m m
6 I I
1
. . . Tm m lg Tm Bv .
k r Tm (k ) + 6 Tm (k )
( k + 1) ( k ) sin( ( k )) + (k )
= I I
. T m lg T B
T (k + 1) + T (k + 1)
. . .
(k + 2) (k + 1) m sin( (k + 1)) + m v (k + 1)
m 6
m
I I
Realizando todo esto mediante una rutina diseada en matlab obtenemos el valor
de estas constantes:
k r = 4714.4
= 54.6
Una vez que hemos hallado estas dos constantes debemos comprobar mediante
simulacin 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.
48
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
La seal de control en este caso aunque est presente en el esquema ser cero ya
que este se encuentra desactivado ya que todava no nos interesa.
49
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Veamos cual es el resultado de la simulacin sin normalizar:
0.09
0.08
0.07
0.06
0.05
angulo
0.04
0.03
0.02
0.01
-0.01
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
0.09
0.085
0.08
angulo
0.075
0.07
0.065
50
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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:
Simulacin 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
Duracin primer rebote 0.38 sg 0.35 sg
Duracin 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 duracin del primer rebote tiene menos de un
10% de diferencia.
0.5236
angulo
0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
51
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Se comprueba como efectivamente tiende a /6 = 0.5236 por lo que el
normalizador funciona correctamente.
Los mismos resultados que hemos obtenido para la cada hacia a la izquierda se
dan cuando se realiza la cada hacia la derecha.
x1 (k + 1) = x1 (k ) + Tm x 2 (k )
x 2 (k + 1) = x 2 (k ) + Tm n2 x5 (k )
x5 (k + 1) = (1 2Tm n )x5 (k ) + Tm (u (k ) x 2 (k ) )
x3 (k + 1) = x3 (k ) + Tm x 4 (k )
Tm
x 4 (k + 1) = x 4 (k ) + (ml (a(k ) cos( x3 (k )) + g sin( x3 (k )) ) + Bv x4 (k ) )
I
52
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Observamos que la nica ecuacin que tenemos que linealizar es la velocidad
angular del pndulo ya que todas las otras ya son lineales.
sin( ) =
cos( ) = 1
Tm
x 4 (k + 1) = x 4 (k ) + (ml (a(k ) + gx3 (k ) ) + Bv x 4 (k ) )
I
T T ml T m lg
x 4 (k + 1) = 1 + m Bv + m a (k ) + m x3 ( k )
I I I
T T ml x 2 (k ) x 2 (k 1) Tm m lg
x 4 (k + 1) = 1 + m Bv + m + x3 ( k )
I I Tm I
x5 . x (k ) x 2 (k 1)
v n2 = x 2 x 2 = n2 x5 2 = n2 x5 (k )
s Tm
T ml n
2
T T m lg
x 4 (k + 1) = 1 + m Bv + m x5 (k ) + m x3 ( k )
I I I
53
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Los sistemas lineales se describen segn las siguientes ecuaciones:
_ _
x(k + 1) = A x(k ) + Bu
_ _
y (k ) = C x(k )
x1 (k + 1) 1 Tm 0 0 0 x (k ) 0
x (k + 1) 0 n Tm x (k ) 0
1
2
1 0 0
2 2
x3 (k + 1) = 0 0 1 Tm 0 x (k ) + 0 u (k )
Tm m lg Tm Tm ml n2
3
x 4 (k + 1) 0 0 1+ Bv 4 (k ) 0
x
x5 (k + 1) I I I
0 Tm 0 0 1 2 nTm x5 (k ) Tm
x1 (k )
y1 (k ) 1 0 0 0 0 x 2 (k )
y ( k ) = 0 1 0 0 0 x ( k )
2 3
y 3 (k ) 0 0 1 0 0 x 4 (k )
x5 (k )
Constante Valor
M 1 kg
L 0.375 m
G 9.8 m/s2
Tm 0.01 s
Bv 0.015
54
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
55
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
H = {X , S , E , Fr , impulso}, donde :
X = {x1 (k ), x 2 (k ), x3 (k ), x 4 (k ), x5 (k )}
S = {S1, S 2, S 3, S 4, S 5}
T = {T 1, T 2, T 3, T 4, T 5, T 6}
S1 S2 S3
Fr = 0
T1 T2
impulso impulso
Fr = 0 Fr = 0
T5
T3
</6
>/6
T4
</6 T6
S5 >/6 S4
Fr = [Kr ( / 6) + ] Fr = [Kr ( + / 6) + ]
56
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
4. Control.
1. Hacer que el pndulo comience a rebotar contra los topes hasta alcanzar una
amplitud prxima del equilibrio en posicin vertical. Problema que
afrontaremos realizando un estudio de la energa del pndulo.
Los dos subproblemas pueden ser combinados de una forma muy simple a travs
de la siguiente funcin objetivo:
C ( , k ) = ( )C ALZAMIENTO (k ) + (1 ( ) )C EQUILIBRIO (k )
donde () es una funcin que depende del valor del ngulo del pndulo con respecto a
la vertical de tal manera que () = 1 para > , y () = 0 en caso contrario.
6
57
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
11 2 2 L
E= mL + mg cos
23 2
Ahora vamos a calcular el trabajo que tendra que realizar la fuerza del carrito
para hacer pasar el pndulo desde su posicin de reposo en hasta un ngulo de .
6 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 energa es energa potencial por lo que
nos queda la siguiente ecuacin:
L L
W = E E = mg cos mg cos
6
7 6 7
2 6 2 7
L
W = mg cos cos = 0.1284 J
6
7
2 6 7
Vemos como efectivamente el trabajo tiene signo negativo lo cul nos indica que
para pasar de una posicin a otra debemos aportar energa al sistema. Hay que sealar
tambin que en estas ecuaciones hemos despreciado las prdidas de energa asociadas
al rozamiento de la varilla contra su eje.
58
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
A continuacin vamos a intentar obtener la magnitud del impulso. Para ello
supondremos que la fuerza que ejerce el carrito es constante durante la duracin del
mismo.
Considrese un cuerpo rgido 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:
7 7
W = F dr = Fsen rd
6 7
6 6
59
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Si comparamos la figura 4.1 con la figura 3.1 que nos mostraba el diagrama de
fuerzas que actan sobre el pndulo llegamos a la conclusin que el ngulo usado
para hallar la componente tangencial de la fuerza es igual al ngulo que nos mide el
desplazamiento del pndulo que dicha componente tangencial se relaciona con el
coseno y no con el seno de tal modo que lo que nos quedara es:
7 7
W = F dr = F cos rd
6 7
6 6
7
W = F r cos d = F r sen sen
6
7 7 6
6
W
0.1284
F= 6 7
= = 5.1788 N
0.75
r sen sen sen sen
7 6 2 7 6
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
F dt = mv mv
0
0 = mv
60
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
t
Ft
F dt = Ft = mv v =
0
m
5.1788 0.25
v = = 1.2947
1
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 despus con una amplitud de -1. Posteriormente al sumarlos se nos generar un
impulso cuya amplitud ser de 0.7 ya que despus lo multiplicamos por dicha ganancia.
No olvidemos que aunque la ganancia sea de 0.7 la variacin 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.
Otra precisin es que la duracin 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
61
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
despus realmente durar unos 0.25 sg como podremos comprobar en la simulacin.
Veamos la entrada del impulso:
0.8
0.6
0.4
0.2
0
u
-0.2
-0.4
-0.6
-0.8
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tiempo
Veamos a continuacin los resultado que se producen ante una entrada como
esta:
0.8
Posicin
Velocidad
0.6 Angulo
0.4
0.2
-0.2
-0.4
-0.6
-0.8
0 0.5 1 1.5 2 2.5
tiempo
62
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Analicemos detenidamente est grfica y veamos si se cumplen las
aproximaciones que hemos realizado as como los resultados que habamos obtenido.
0.8
Posicin
Velocidad
0.6 Angulo
0.4
0.2
-0.2
-0.4
-0.6
-0.8
0.15 0.2 0.25 0.3 0.35 0.4 0.45
tiempo
63
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Veamos a continuacin si el resultado del pndulo es el esperado. Nuestra
intencin era que con el impulso el pndulo pasar de la posicin de
reposo = 0.5236 a = 0.4488 . Comprobemos realizando nuevamente un zoom
6 7
sobre la figura 4.4 pero esta vez fijndonos en el ngulo:
0.6
Posicin
0.58 Velocidad
Angulo
0.56
0.54
0.52
0.5
0.48
0.46
0.44
0.42
0.4
0 0.1 0.2 0.3 0.4 0.5 0.6
tiempo
Figura 4.6: Variacin del ngulo del pndulo ante el impulso inicial.
64
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Para realizar nuestro objetivo lo que tendremos que lograr es que la energa del
pndulo vaya aumentando progresivamente. La ecuacin de la energa del pndulo era
la siguiente
11 2 2 L
E= mL + mg cos
23 2
Tm
(k + 1) = (k ) + (ml (a(k ) cos( (k )) + g sin( (k ))) + Bv (k ) )
I
65
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
signo de la velocidad angular. Para intentar compensar esa perdida de energa
intentamos ir aumentando la energa del pndulo mientras est descendiendo
para lo que le sumamos adems la componente de la aceleracin que tendr el
mismo signo que la velocidad angular.
u = K * signo( )
Por un lado tenemos la seal procedente del bloque Impulso inicial que ya
analizamos en la figura 4.2 y por otro tenemos la seal de control que obtenemos al
aplicarle a la velocidad angular del pndulo la funcin signo y multiplicarla por una
ganancia. Estas dos seales se introducen en el multipuerto y en un bloque comparador
de entradas que lo que hace es generar una seal que determina cul de las dos seales
66
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
del multipuesto se debe introducir en el carro. Veamos como es este bloque en su
interior para estudiar su funcionamiento:
El criterio de seleccin que utilizamos es que la seal que pasa es la que tiene un
mdulo mayor. Si el impulso es el mayor la salida del Relational Operator es 0 a la que
sumaramos 1 y por tanto la salida del comparador de entradas sera 1 lo que hara que
la seal del multipuerto que pasara sera la primera, es decir el impulso inicial. Cuando
la seal 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 sera 2 lo que hara que la
seal del multipuerto que pasara sera la segunda, es decir la seal de control.
0.6
0.58
0.56
0.54
0.52
ngulo
0.5
0.48
0.46
0.44
0.42
0.4
0 0.5 1 1.5 2 2.5 3
tiempo
67
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Vemos que para K=0.1 el comportamiento del pndulo prcticamente es el
mismo que cuando no ejercamos control ninguno y por tanto slo afecta el impulso
inicial.
0.8
control
ngulo
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
tiempo
Para K=0.2 vemos que en un primer momento la energa empieza a crecer para
al final se acaba imponiendo el trmino gravitatorio y la energa que se va perdiendo en
cada uno de los rebotes hace que el pndulo vuelva a la posicin de reposo.
1
control
0.8 ngulo
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
tiempo
68
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Para K=0.3 conseguimos levantarlo con dos rebotes. Vemos como el
comportamiento de la seal 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 seal de control.
1
control
0.8 ngulo
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tiempo
69
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Al igual que para la simulacin aqu se generan dos seales una que se
corresponde con el impulso inicial y otra con la seal de control propiamente dicha.
Ambas seales se generan de la misma forma que ya hemos explicado en la simulacin.
La forma en que se selecciona la seal de entrada es la misma que en la simulacin
mediante el comparador de entradas.
0.62
0.6
0.58
0.56
angulo
0.54
0.52
0.5
0.48
0.46
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
tiempo
Observando la figura vemos que tomando como ngulo lmite 0.5 nos basta para
que no nos afecte la seal de ruido. A continuacin se muestra el interior del bloque
compara ngulo:
70
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Vemos como efectivamente compara el mdulo 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 seal 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.
Por tanto para que el control est activo la seal de On/Off se debe encontrar
habilitada y la seal de Colocacin deshabilitada.
Una vez que hemos analizado el interior del controlador de alzamiento que
tenemos implementado en el laboratorio veamos lo que ocurre al aplicrselo al sistema
del carro-pndulo. Lo que haremos ser analizar el comportamiento para unas ganancias
de control de 0.3 y 0.4.
71
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
0.8
ngulo
control
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6
tiempo
0.8
ngulo
control
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
1 1.2 1.4 1.6 1.8 2
tiempo
72
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
4.3.1. Introduccin.
3. Los autovalores del observador deben elegirse ms rpidos que los del
controlador, pero, tenemos algn criterio adicional para preferir una configuracin a
otra?.
[ ]
T
J ( x(t ), u (t ) ) = x T ( )Qx( ) + u T ( ) Ru ( ) d
t
73
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
donde Q y R son matrices constantes (aunque no necesariamente) semi-definida y
definida positivas respectivamente.
74
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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].
Las transiciones posibles se representan por los arcos que conectan el estado
inicial al final a travs de los estados intermedios. El costo asociado a cada transicin se
representa con la letra J; por ejemplo, el costo de moverse del estado 3 al 5 es J35.
Como hay varias rutas alternativas del estado 1 al 8, el costo total depender de
la trayectoria elegida. La seal de control u*[k] que determina la trayectoria de menor
costo es la estrategia ptima. Como ya veremos, en sistemas de tiempo continuo, la
acumulacin de costos se representa mediante integracin, en vez de suma.
75
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Este obvio principio nos permitir resolver en forma cerrada nuestros problemas
de control ptimo. Tambin se usa en el cmputo recursivo de las soluciones ptimas en
un procedimiento llamado programacin dinmica.
.
y (t ) = v(t ) y (t )
x xB
desde el punto A al punto y en mnimo tiempo, sujeto a la restriccin:
yA B
76
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
x2 + v2 = 1
x k +1 = Ax k + Bu k , x n , u p . (4.1)
1 T 1 N 1
J i,N = x N Sx N + x kT Qx k + u kT Ru k (4.2)
2 2 k =i
J N 1, N =
2
(
1 T
x N Sx N + x TN 1Qx N + u TN 1 Ru N 1 ) (4.3)
77
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Usando (4.1), substituimos x N como una funcin de u N 1 , lo que da:
J N 1, N =
1
2
(
( Ax N 1 + Bu N 1 ) T S ( Ax N 1 + Bu N 1 ) + x TN 1Qx N 1 + u TN 1 Ru N 1 )
T J N 1, N
0=
u N 1
0 = B T S ( Ax N 1 + Bu N 1 ) + Ru N 1 (4.4)
( )
0 = R + B T SB u N 1 + B T SAx N 1
(
u *N 1 = R + B T SB )1
B T SAx N 1 (4.5)
2 J N 1, N
= R + B T SB > 0
u N2 1
u *N 1 = K N 1 x N 1
donde
(
K N 1 R + B T SB )1
B T SA (4.6)
78
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
El valor del costo mnimo J N* 1, N obtenido con u *N 1 es:
J N* 1, N =
1
2
(
( Ax N 1 BK N 1 x N 1 ) T S ( Ax N 1 BK N 1 x N 1 ) + x TN 1Qx N 1 + x TN 1 K NT 1 RK N 1 x N 1 )
J N* 1, N =
1 T
2
(
x N 1 ( A BK N 1 ) T S ( A BK N 1 ) + Q + K NT 1 RK N 1 x N 1)
1 T
J N* 1, N x N 1 S N 1 x N 1 (4.7)
2
donde definimos:
S N 1 ( A BK N 1 ) T S ( A BK N 1 ) + Q + K NT 1 RK N 1
1 T
N, no hay ninguna accin de control que tomar y J N , N = J N* , N = x N Sx N ,es decir:
2
SN = S
K N = ( R + B T S N B) 1 B T S N A
S N 1 = ( A BK N 1 ) T S N ( A BK N 1 ) + Q + K NT 1 RK N 1
Tomamos otro paso para atrs en el cmputo del control ptimo y consideremos
ahora que estamos en el paso N 2. Notemos primero de (4.2) que:
J N 2, N = J N 2, N 1 + J N 1, N
79
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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:
J N* 2, N = J N 2, N 1 + J N* 1, N
Obtenemos:
J N 2, N 1 =
2
(
1 T
x N 1 S N 1 x N 1 + x TN 2 Qx N 2 + u TN 2 Ru N 2 )
fcil ver que las expresiones son las mismas pero con N 1 en vez de N, y N 2 en vez
de N 1:
u *N 2 = K N 2 x N 2
donde
K N 2 ( R + B T S N 1 B) 1 B T S N 1 A
u k* = K k x k (4.8)
80
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
K k = ( R + B T S k +1 B) 1 B T S k +1 A (4.9)
S k = ( A BK k ) T S k +1 ( A BK k ) + Q + K kT RK k (4.10)
1 T
J k*, N = xk S k xk
2
2 1 0 2
x k +1 = x k + u k x(0) =
1 1 1 3
1 T 5 0 1 9 T 2 0
J = x10 x10 + x k x k + 2u k2
2 0 5 2 k =1 0 0.1
.
Las siguientes lneas de cdigo MATLAB computan K k y x k en lazo cerrado.
% Costo
Q=[2 0;0 0.1];R=2;S=diag([5,5]);
k=10;
% Sistema
81
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
A=[2 1;-1 1];B=[0;1];x0=[2;-3];
% Solucin de la ecuacin 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
% Simulacin del sistema realimentado
x(:,1)=x0;
for k=1:10
x(:,k+1) = A*x(:,k)-B*K(k,:)*x(:,k);
end
Figura 4.19: Evolucin del estado en lazo cerrado: line1 x1[k], line2 x2[k].
82
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
3 3
Aunque la planta a lazo abierto es inestable (autovalores en ), vemos que
2 2
el estado es estabilizado asintticamente por u k* . Notar que la planta a lazo cerrado es
inestacionaria, ya que el control lo es.
Figura 4.20: Evolucin de las ganancias K[k] =[ k1[k] , [k2[k] ] (line 1 y line 2).
.
x(t ) = Ax(t ) + Bu (t ) (9.11)
83
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
sigue los mismos pasos que el de tiempo discreto, slo que las transiciones se reducen
a incrementos infinitesimales. El costo es ahora:
tf
J ( x(t 0 ), u (t 0 ), t 0 ) =
1 T
2
1
( )
x (t f ) Sx(t f ) + x T (t )Qx(t ) + u T (t ) Ru (t ) dt
2 t0
u * (t ) = K (t ) x(t ) (4.12)
.
P (t ) = P (t ) BR 1 B T P(t ) Q P (t ) A AT P(t ) (4.14)
Esta dificultad lleva a buscar una solucin ptima estacionaria, K(t) = K, que
surge de considerar el caso de horizonte infinito t f
.
84
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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 ecuacin de Riccati permaneceran constantes en el valor del instante
.
inicial. Bajo esta suposicin, P(t) es constante y P(t ) = 0 , que lleva la ecuacin (4.14) a
la forma que se conoce como la ecuacin algebraica de Riccati (ARE):
PA + AT P + Q PBR 1 B T P = 0 (CARE)
K = ( R + B T SB) 1 B T SA
.
x(t ) = Ax(t ) + Bu (t )
85
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
(
J = x T (t )Qx(t ) + u T (t ) Ru (t ) dt )
0
.
x(t ) = ( A BK ) x(t ) (4.16)
incurriendo en un costo:
(
J = x T (t )Qx(t ) + x T (t ) KRKx (t ) dt )
0
( A BK
J = x e
T
0
)T t
(Q + K T
)
RK e ( A BK )t dt x 0
0
donde hemos definido la matriz P e
( A BK )T t
(Q + K T
)
RK e ( A BK )t dt .
0
.
Recordando el Teorema de Lyapunov, sabemos que el sistema x = ( A BK )x es
asintticamente estable si y slo si la matriz P definida en (4.17) es la nica solucin
definida positiva de la ecuacin de Lyapunov:
( A BK ) T P + P( A BK ) + Q + K T RK = 0 (4.18)
86
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Por lo tanto, para cualquier ganancia K que estabilice asintticamente el sistema,
la matriz P solucin de (4.18) dar un costo finito.
0 = ( A BR 1 B T P) T P + P( A BR 1 B T P) + Q + PBR 1 B T P
0 = AT P + PA + Q PBR 1 B T P
Esto no quiere decir que las soluciones de las ecuaciones (CARE) o (DARE)
sern nicas. Si existe una solucin nica que estabilice al sistema, entonces es la
ptima. Cabe entonces la pregunta: Cundo existir una solucin de las ecuaciones
algebraicas de Riccati, y bajo qu condiciones ser nica? La respuesta la dan los
siguientes resultados:
87
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
MATLAB, K se puede calcular con K = lqr(A,B,Q,R) (continuo) y K = dlqr(A,B,Q,R)
(discreto).
x k +1 = Ax k + Bu k + Gv k
(4.19)
y k = Cx k + k
88
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Las nuevas seales de entrada v k y k que aparecen en este modelo son
procesos aleatorios, consistentes en ruido blanco estacionario, con media cero, y no
correlacionados entre s.
[ ]
E v kT v k = V
[
E kT k = W ]
[ ]
E v kT v j = 0
[ ]
E kT j = 0, cuando k j
E [v k ] = 0
E [ k ] = 0
[ ]
E v Tj k = 0, j , k .
[ ]
E ( x 0 E [x0 ])(x 0 E [x 0 ]) S 0
T
89
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
4.3.1.11. Filtro de Kalman discreto.
Observador actual
Recordemos las ecuaciones del observador de orden completo, en este caso,
dicreto:
x k +1 = Ax k + Bu k + L( y k Cx k )
(
x k +1 = Ax k + Bu k (4.20)
( (
x k +1 = x k +1 + L( y k +1 Cx k +1 ) (4.21)
90
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
x k +1 = Ax k + Bu k + L( y k +1 C ( Ax k + Bu k ) )
(4.22)
x k +1 = ( A LCA)x k + (B LCB )u k + Ly k +1
.
x (t ) = ( A LC )x (t ) + Bu (t ) + Ly (t )
x k +1 = ( A LCA)~
~ xk
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.
x k +1 = E [Ax k + Bu k + Gv k ]
(
dado que E [v k ] = 0
(
x k +1 = Ax k + Bu k ,
91
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
( (
x k +1 = x k +1 + Lk +1 [ y k +1 Cx k +1 ] (4.23)
Criterio de optimizacin
ek = x k x k
Como ek 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
estimacin. Buscamos entonces tratar de minimizar su valor en promedio para todo el
conjunto de ruidos posibles. Definimos entonces la covarianza a posteriori:
[
S k E ek ekT ]
Cuanto menor sea la norma de la matriz S k , menor ser la variabilidad del error
de estimacin debida a ruidos, y mejor el rechazo de stos.
92
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Pretendemos determinar Lk +1 para minimizar la variabilidad del error de
estimacin:
Lk +1
[ ]
Lk +1
[ ]
Lk +1 Lk +1
[
min E [ek +1 ] = tr min E ek +1ekT+1 = min trS k +1
2
] Lk +1
(4.24)
ek +1 = x k +1 x k +1
ek +1 = Ax k + Bu k + Gv k Ax k Bu k Lk +1 [Cx k +1 + k +1 Cx k +1 ]
(
ek +1 = Ax k Ax k + Gv k Lk +1 [C [Ax k + Bu k + Gv k ] + k +1 C [Ax k + Bu k ]]
ek +1 = [A Lk +1CA]ek + [G Lk +1CG ]v k Lk +1 k +1
ek +1 = [I Lk +1C ][Aek + Gv k ] Lk +1 k +1
[
S k +1 = E [(I Lk +1C )( Aek + Gv k ) Lk +1 k +1 ][(I Lk +1C )( Aek + Gv k ) Lk +1 k +1 ]
T
]
[
S k +1 = E (I Lk +1C )( Aek + Gv k )( Aek + Gv k ) (I Lk +1C )
T T
[ ]
2 Lk +1 k +1 ekT AT + v kT G T (I Lk +1C ) + Lk +1 k +1 kT+1 LTk +1
T
]
93
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
De las hiptesis sobre las propiedades estadsticas de los ruidos vistas en 4.2.11,
tenemos que:
[ ]
E v kT v k = V
[
E kT+1 k +1 = W ] (4.26)
[
E k +1v kT = 0]
[ ] [
E k +1ekT = E k +1 ( x k x k )
T
]
(4.27)
[ ] [ ] [
E k +1ekT = E k +1 x kT E k +1 x kT = 0 ]
[ ] [
E v k ekT = E v k ( x k x k ) T ]
(4.28)
[
Ev e T
k k ] = E[v x ] E[v x ] = 0
k
T
k k
T
k
T
[ ]
S k +1 = [I Lk +1C ] AS k AT + GVG T [I Lk +1C ] + Lk +1WLTk +1
T
(4.29)
94
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
[ ] [ ] [ [
tr S k +1 = tr AS k AT + tr GVG T + tr Lk +1C AS k AT + GVG T C T LTk +1 ] ]
(4.30)
[ [
2tr Lk +1C AS k A + GVG
T T
]] + tr [L WL
k +1
T
k +1 ]
Ahora derivamos (4.30) con respecto a Lk +1 . Los dos primeros trminos dan
cero, pues no dependen de Lk +1 . Para los siguientes trminos usamos las siguientes
propiedades de la derivada de la traza de una matriz:
X
[
tr XYX T = 2 XY ]
tr [YXZ ] = Y T Z T
X
As obtenemos de (4.30)
0= tr S k +1
Lk +1
[ ] [ ]
0 = 2 Lk +1C AS k AT + GVG T C T 2 AS k AT + GVG T C T + 2 Lk +1W
[ ] [[
Lk +1 = AS k AT + GVG T C T C AS k AT + GVG T C T + W ] ]
1
(4.31)
95
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Resumimos los pasos necesarios para programar el filtro de Kalman. Partimos
del conocimiento de las propiedades estadsticas, valor esperado y varianza, de los
ruidos v k y k , y la condicin inicial x0 .
(
x k +1 = Ax k + Bu k (4.32)
[ ] [[
Lk +1 = AS k AT + GVG T C T C AS k AT + GVG T C T + W ] ]
1
(4.33)
( (
x k +1 = x k +1 + Lk +1 [ y k +1 Cx k +1 ] (4.34)
T
[ ]
S k +1 = [I Lk +1C ] AS k AT + GVG T [I Lk +1C ] + Lk +1WLTk +1
T
(4.35)
96
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
0.8146405 0.0817367 0.0021886 0.0430570
x k +1 = xk + uk + vk (4.36)
0.081767 0.8146405 0.0452456 0.0474324
. 4 2 0 1
x= x + u + v
2 4 1 1
y = [1 0]x +
97
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
W=0.025; % ruido de medicin
% 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
% Simulacin
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
98
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
4.3.1.12. Notas.
99
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Como en el caso de control ptimo LQ, tambin en el caso del filtro de Kalman
pueden calcularse soluciones estacionarias de la ecuacin diferencia (diferencial)
de Riccati que determina la matriz de covarianza. Esta solucin ser
aproximadamente ptima, y nica si y slo si AT , C T ( ) es estabilizarle, y
(A T
)
, T T detectable, donde GCG T = TT T .
tiles en MATLAB
( )
J = x kT Qx k + u kT Ru k dt
k =0
x k +1 = Ax k + Bu k
100
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
(
AT SA S AT SB R + B T SB)( ) (B
1 T
)
SA + Q = 0
(
J = x T Qx + u T Ru dt
0
)
.
x = Ax + Bu
(
PA + AT P (PB )R 1 B T P + Q = 0 )
(
x k +1 = Ax k + Bu k
(
x k +1 = x k +1 + L( y k +1 Cx k Du k )
x k +1 = Ax k + Bu k + G k
y k = Cx k + Du k + v k
101
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
[ ]
E T = Q, [ ]
E vv T = R, [ ]
E v T = N
x = Ax + Bu + L( y Cx Du )
.
x = Ax + Bu + G
[ ]
E T = Q, [ ]
E vv T = R, [ ]
E v T = N
102
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
4.3.2. Implementacin del control LQG.
Las entradas que tiene el bloque son la salida del instante k, la seal de control
del instante k y la seal de activacin 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 estimacin
completa del estado para el instante k la pone a su salida.
Para hallar el seal 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 realimentacin de estados K de tal manera que implementamos la
ley de control:
u (k + 1) = Kx(k )
103
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
1 Tm 0 0 0 0
0 1 0 0 n Tm
2
0
A = 0 0 1 Tm 0 B=0
Tm m lg T 2
Tm ml n
0 0 1 + m Bv 0
I I I Tm
0 Tm 0 0 1 2 nTm
1 0 0 0 0
C = 0 1 0 0 0
0 0 1 0 0
1 2 0 0 0 0
x1max
0 1 0 0 0
x 2 2max
1 0 1
Q= 0 0
x3 2max
0 R= 2
u max
1
0 0 0
x 4 2max
0
0 0 0 0 1 2
x5 max
Midiendo encontramos que x1max = 1.2 metros, x2max = 1 m/s. Para x3max
tendramos que tomar el ngulo mximo para el que consideraramos 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 pndulo comience a rebotar de un extremo a otro lo ms rpido posible
de forma que obtendremos la velocidad angular mxima a partir de la derivada del
ngulo con el siguiente bloque:
104
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Como podemos ver este bloque lo que se limita es a hacer la derivada de la seal
del ngulo segn la frmula:
(k + 1) (k )
(k + 1) =
Tm
10
velocidad
8 angular
ngulo
6 control
-2
-4
-6
-8
-10
1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
105
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Observando la figura podemos determinar que x4max = 5.
1.2
1.15 x5
1.1
1.05 velocidad
1
0.95
0.9
0.85
0.8
0.75
0.7
0.65
0.6
0.55
0.5
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
0 0.5 1 1.5
tiempo
Ya solamente nos falta decir que umax = 1. Por tanto los pesos quedan de la
siguiente forma:
0.6944 0 0 0 0
0 1 0 0 0
Q= 0 0 131.2 0 0 R =1
0 0 0 0.04 0
0 0 0 0 400
106
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
matrices de pesos funcionara el control LQR. Para realizarlo utilizaremos el siguiente
esquema:
0.5
posicin
velocidad
ngulo
velocidad
angular
x5
0
-0.5
-1
0 1 2 3 4 5 6 7 8 9 10
tiempo
107
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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 funcionaran
correctamente. Adems se comprueba que ninguna de las variables excede sus
mximos.
(
x k +1 = Ax k + Bu k
(
x k +1 = x k +1 + L( y k +1 Cx k Du k )
u(k) y(k)
H
+ +
B z-1 C
+
A
xe(k)
108
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
A, B y C son las matrices del sistema linealizado y L la ganancia del filtro de
Kalman . La funcin L = dlqe(A,G,C,Q,R) calcula la ganancia L del filtro de Kalman
estacionario.
[
E T = Q,] [ ]
E vv T = R, [ ]
E v T = N
1.43
1.4295
1.429
posicin
1.4285
1.428
1.4275
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
109
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
0.8
0.6
0.4
0.2
velocidad
0
-0.2
-0.4
-0.6
-0.8
-1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
0.095
0.09
0.085
ngulo
0.08
0.075
0.07
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
4.1556 10 8 0 0
R= 0 0.0313 0
0 0 2.3407 10 6
110
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Implementemos el filtro de Kalman para comprobar mediante simulacin si el
funcionamiento es correcto:
111
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
0.5
posicin
velocidad
0.4 ngulo
0.3
0.2
0.1
-0.1
-0.2
-0.3
0 1 2 3 4 5 6 7 8 9 10
tiempo
112
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
5. Resultados.
Para sincronizar el uso de los dos controladores utilizamos la seal on. sta es
generada en el relay de forma que cuando el ngulo est fuera de la zona lineal la seal
de on se encuentra a 1 y el controlador que acta sobre el sistema pndulo, 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 acta sobre el sistema es el controlador
113
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
LQG. La introduccin de esta seal on hace que tengamos que introducir unas
modificaciones en el controlador LQG diseado en el apartado anterior.
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 pndulo haya sido alzado y se encuentre
en la zona lineal. Esta sincronizacin la logramos con la variable de entrada on que
pone en marcha el funcionamiento del filtro cuando esto sucede.
114
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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,
adems la realimentacin del estado en este caso es unitaria. Todo esto hace que
mientras on se mantenga con valor 1:
xe (k + 1) = xe (k )
115
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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 ecuacin que dedujimos en el apartado 3.2
cuando analizamos el modelo del carro.
X k = X I + xk donde :
X I Condiciones iniciales.
X k +1 = X I + x k +1 x k +1 = X k +1 X I
Este es el motivo por el que en la figura 4.28 primero restamos las condiciones
iniciales y posteriormente despus del delay se las sumamos. Primero se restan las
condiciones iniciales para obtener la pequea seal que se introduce en el delay y
116
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
posteriormente para obtener el estado actual del sistema a la pequea seal le sumamos
las condiciones iniciales.
1
control
0.8 posicin
velocidad
0.6 ngulo
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 1 2 3 4 5 6 7 8
tiempo
Podemos observar como el pndulo es alzado sin violar ninguno de los lmites
de los lmites de las variables de estado , es decir, la velocidad nunca supera en mdulo
1 y la posicin en mdulo 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 pndulo.
117
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
0.6
0.5
0.4
0.3
ngulo
0.2
0.1
-0.1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
tiempo
118
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
nuestro proyecto, en el que hemos generado el layout que se observa en la figura 2.5. A
continuacin debemos cargar la aplicacin en los microprocesadores de la unidad
SimoDrive 611 y ya estar listo para ser ejecutado. Veamos el modelo simulink
utilizado en los laboratorio:
119
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
dicha introduccin se hace pasar la velocidad angular por un filtro discreto paso bajo
para intentar eliminar parte del ruido.
0.5
-0.5
velocidad
ngulo
rojo
-1 control
4 5 6 7 8 9 10
tiempo
Por tanto debemos intentar que el carro no viole esta restriccin. Para ello
sabiendo que el control LQR intenta minimizar el funcional:
1 T 1 N 1
J i,N = x N Sx N + x kT Qx k + u kT Ru k
2 2 k =i
120
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Lo que tenemos que hacer es aumentar el peso de la posicin en la matriz de
pesos Q que calculamos en el apartado 4.2.2.1, haciendo pruebas comprobamos que
para un peso de la posicin de 30 se obtiene el siguiente resultado:
0.8
0.6
0.4
0.2
-0.2
-0.4
angulo
velocidad
-0.6
posicin
-0.8
5 10 15 20
tiempo
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 pndulo se alce despus de un rebote.
Comprobemos ahora si bajando la ganancia de control de alzamiento a 0.3 y
manteniendo el impulso inicial en 0.7 tambin se consigue controlar el pndulo. Para
este caso tambin se mantendr la modificacin de la matriz de pesos que hemos
realizado anteriormente. Comprobemos cul es el resultado:
121
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
0.5
ngulo
velocidad
posicin
-0.5
8 10 12 14 16 18 20
tiempo
122
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
123
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
control orientada a aumentar la energa del pndulo que acta lejos de la posicin de
equilibrio, y por una ley de control lineal que lo estabiliza cuando est cerca de l.
Para aumentar la energa del pndulo utilizamos una ley de control basada en
aumentar la velocidad angular del pndulo, para ello, el carro deba moverse en
direccin contraria al movimiento del pndulo (velocidad angular del pndulo). El
problema de utilizar una ley control como esta es que cuando el pndulo se encuentra en
reposo su velocidad angular es cero y por tanto la seal de control tambin. Por tanto se
llega a la conclusin de que es necesario un impulso inicial que ponga en movimiento el
pndulo.
124
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
ANEXO 1.
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
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];
125
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
B=[0;0;0;0;Tm];
xsig=A*x + B*u;
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];
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];
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];
Fr = 0;
x1 = x(1) + Tm*x(2);
126
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
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
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
127
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
%x4max=2
%x5max=1
B=[0;0;0;0;Tm];
C=[1 0 0 0 0;
0 1 0 0 0;
0 0 1 0 0];
R=1;
s1=K;
s2=L;
s3=A;
s4=B;
s5=C;
128
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
A.3. m-file para el clculo 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
%Constante de friccin
Bv=0.015;
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);
I=inv(A);
b=[b(1);b(2)];
sol=I*b;
129
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
const=[sol(1);sol(2)];
%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];
130
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Bibliografa.
Chi-Tsong Chen. Linear System Theory and Design. Oxford University Press,
3rd edition,1999.
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.
C.F. Van Loan. Computing integrals involving the matrix exponential. IEEE
Trans. Automat. Contr., AC-23(3):395404, June 1978.
131
Modelado y control del pndulo invertido
sobre carro mediante sistemas hbridos._______________Autor: Fernando Bote Ortega
Robert N. Bateson. Introduction to Control System Technology. Prentice-Hall.
132